Commit Graph

2839 Commits

Author SHA1 Message Date
Asutosh Mohapatra
7c4982851d qcacld-3.0: Keep SAP, P2P GO channel list modifications in separate APIs
Currently some channel list modifications for SAP and P2P GO mode
are present in policy_mgr_get_channel_list, whereas separate APIs for
SAP and P2P GO specific channel list modification are present, hence
keep all the mode specific channel list modifications in respective
APIs.

Change-Id: I393fbad12f29c761c1158fc5eb4ba0ebd6a660b6
CRs-Fixed: 3321108
2022-12-28 11:43:48 -08:00
Jeff Johnson
139cf10b44 qcacld-3.0: Fix Packet Capture Documentation
The kernel-doc script identified a multitude of documentation issues
in components/pkt_capture, so fix them.

Change-Id: I9fc7922978cbfacf3f8a733561dd0f94c6cea3b4
CRs-Fixed: 3359684
2022-12-27 21:14:10 -08:00
Jeff Johnson
f62fc6e253 qcacld-3.0: Fix OCB Documentation
The kernel-doc script identified a few documentation issues in
components/ocb, so fix them.

Change-Id: I3ddb0c4d556f459bdd15f9ae9110ae7f0bc30b2b
CRs-Fixed: 3359569
2022-12-27 19:09:43 -08:00
Jeff Johnson
a24656423c qcacld-3.0: Fix P2P Documentation
The kernel-doc script identified a few documentation issues in
components/p2p, so fix them.

Change-Id: I24e612e8976e721281a6ede4afefd20de0622599
CRs-Fixed: 3359593
2022-12-27 19:09:38 -08:00
Jeff Johnson
116c817bb8 qcacld-3.0: Fix NAN Documentation
The kernel-doc script identified a multitude of documentation issues
in components/nan, so fix them.

Change-Id: Ibec4c381da3088f704264d04f756d82d20613c46
CRs-Fixed: 3359549
2022-12-27 19:09:33 -08:00
Jeff Johnson
cb647fd309 qcacld-3.0: Fix MLME documentation
The kernel-doc script identified multiple documentation issues in
components/mlme, so fix them.

Change-Id: I1fdcdcc7e43c8945044d22aeeca7b2f1b8bec6f7
CRs-Fixed: 3358666
2022-12-27 19:09:28 -08:00
Jeff Johnson
cd872653aa qcacld-3.0: Fix FTM Time Sync documentation
The kernel-doc script identified two documentation issues in
components/ftm_time_sync, so fix them.

Change-Id: Iebcd1837bd80e26db6a4a5fe78d046d57f762670
CRs-Fixed: 3357062
2022-12-27 17:07:02 -08:00
Jeff Johnson
4c8a8fbb1e qcacld-3.0: Fix Firmware Offload documentation
The kernel-doc script identified a multitude of documentation issues
in components/fw_offload, so fix them.

Change-Id: I9c5b3f561d74ac433bd7f8c47cab737af9af3ecb
CRs-Fixed: 3357050
2022-12-27 17:06:57 -08:00
Jianmin Zhu
3b23980d6b qcacld-3.0: avoid zero mld addr when update mac after roaming
For legacy STA like wlan1, has no MLD addr, can't copy it after roaming,
or vdev self MAC becomes 0.

Change-Id: Ia5d1f01d9101bfaba275cc879a14f2b8c6426d3b
CRs-Fixed: 3366012
2022-12-26 17:47:23 -08:00
Divyajyothi Goparaju
611a226bbf qcacld-3.0: Optimize bmiss vdev set param command frequency
Currently host sends bmiss set param commands
separately to firmware.
Combine bmiss set params send to WMI to reduce
number of transactions.
Also replace target wmi vdev params with host wmi
vdev params to fix existing broken layering
violation.

Change-Id: I5867ee76f68abf462becafc1f5f80c422c239f4b
CRs-Fixed: 3333237
2022-12-26 05:52:04 -08:00
Divyajyothi Goparaju
ee4ca3b005 qcacld-3.0: Optimize pdev set param command frequency
Currently wlan_mlme_configure_chain_mask API sends many
pdev set param commands separately to firmware.

Combine all pdev set params of wlan_mlme_configure_chain_mask
send to WMI to reduce number of transactions.
Also replace target wmi pdev params with host wmi
pdev params to fix existing broken layering
violation.

Change-Id: If0b7bce9a7c87d0f07e7a9f1d2cd80139f027308
CRs-Fixed: 3151438
2022-12-26 05:51:59 -08:00
Jingxiang Ge
bf0462e93e qcacld-3.0: clear rate info in mlme priv for non-support rates
When update rate info to vdev mlme_priv, if in current assocrsp
there is no extend rate or mcs rate, need to clear such info.
otherwise such info is still last connection information.
the link rate will display wrongly, test step as:
1 connect with 11g AP
2 config AP to 11b, then connect manually
3 link speed will be wrong on sta side

if extend rate or mcs rate is not present, clear ext_opr_rate_set
and mcs_rate_set.

Change-Id: I8ff1b5804dbbe463d6949d0431079174446c64ad
CRs-Fixed: 3356077
2022-12-26 03:23:34 -08:00
Vijay Raj
724b68644c qcacld-3.0: Make XGAP wakable
XGAP power save event need host actions and notifying
the userspace.

Register for XGAP events to wake up host.

Change-Id: Ic58837580a35bd27ac5e87fc5debbd4f4d5b9b6b
CRs-Fixed: 3272421
2022-12-26 03:23:24 -08:00
Jyoti Kumari
7ae11c336b qcacld-3.0: Populate edca_pifs_param ie for 6 GHz channel
For LL SAP, populate edca_pifs_param ie in beacon for 6 GHz
channel.

Change-Id: Ic0e85d2dd5864bc4aa6d6a169eae06213f573f0a
CRs-Fixed: 3359474
2022-12-26 03:23:01 -08:00
Zhiwei Yang
977a545222 qcacld-3.0: Fix compile error when WLAN_FEATURE_11BE_MLO disable
Fix implicit declaration compile error when enable WLAN_FEATURE_11BE
and disable WLAN_FEATURE_11BE_MLO.

Change-Id: I688589bef74eaed0baf2a865268cc3ba5cd88873
CRs-Fixed: 3352992
2022-12-22 07:03:59 -08:00
Jeff Johnson
f019813875 qcacld-3.0: Fix Datapath Component Documentation
The kernel-doc script identified some documentation issues in
components/dp, so fix them.

Change-Id: Ic6297d80cda845287e7a472add244c489afd253b
CRs-Fixed: 3362039
2022-12-21 17:59:52 -08:00
Srinivas Dasari
2057769edd qcacld-3.0: Allocate sufficient mem for scan entry and bss desc of link
When STA roams to an MLO AP, non-assoc link might be superior
in features compared to assoc link and the per-STA profile
info may carry corresponding IEs. These IEs are extracted
and added to IE list of link probe response while generating
it. So, the link probe response generated from assoc link
probe response might be of more size than assoc link probe
rsp. Allocate buffer for the scan entry to be added to scan db
and bss descriptor to accommodate all of the IEs got generated
as part of link probe rsp generation.
Allocate MAX_MGMT_MPDU_LEN bytes for IEs as the max frame size
that can be received from AP is MAX_MGMT_MPDU_LEN bytes.
Same is applicable for link scan entry addition to scan db in
case of initial connection.

Change-Id: I2c2bb79176984a98034c071389c60ee4f649fd74
CRs-Fixed: 3359087
2022-12-21 15:56:22 -08:00
Jeff Johnson
9a425bdb12 qcacld-3.0: Fix DISA documentation
The kernel-doc script identified a few documentation issues in
components/disa, so fix them.

Change-Id: I211fac8d786a64023f9ba2038d5849c418c38159
CRs-Fixed: 3356921
2022-12-20 14:18:51 -08:00
Jianmin Zhu
c7369d8419 qcacld-3.0: Fix DFS issue when puncture enabled
If some 20M sub channels are disabled for puncture, bonded freq state will
become CHANNEL_STATE_DISABLE, while CHANNEL_STATE_DFS is expected if
DFS freq is included to pass CHAN_DFS_CFREQ2 to F/W by vdev start wmi cmd.
the check also happens in several other places.

To fix it, use API wlan_reg_get_5g_bonded_channel_state_for_pwrmode to
replace wlan_reg_get_5g_bonded_channel_state_for_freq and
wlan_reg_get_bonded_channel_state_for_freq.
set is_create_punc_bitmap of ch param as true, then bonded freq
state will become CHANNEL_STATE_DFS after
reg_update_5g_bonded_channel_state_punc_for_pwrmode called.

Change-Id: I3e5214e9e09ac2a959f6fa7d641173a80a3980a7
CRs-Fixed: 3360820
2022-12-20 14:18:45 -08:00
Surya Prakash Sivaraj
00330805e3 qcacld-3.0: Enhance KEK/KCK debugs
Enhance KEK/KCK debugs in the roam sync
event path.

Change-Id: If226899949fa0ca35ef5a3ac5a45d41e14a2d2f0
CRs-Fixed: 3362806
2022-12-18 23:21:47 -08:00
Liangwei Dong
59418f4b1f qcacld-3.0: Reject bssid in deny or reject list for roam invoke
Allow roam invoke on bssid in monitor list but reject bssid in
deny or reject list.

Change-Id: I639f30e194fdb3f5521e0483a7b8151d48134450
CRs-Fixed: 3359171
2022-12-16 16:59:37 -08:00
Srinivas Dasari
f3438c702a qcacld-3.0: Fetch link freq based on link mac addr from roam sync
Currently, link frequency is fetched from roam sync indication
based on vdev_id. But the vdev_id is of assoc link in OWE/1x
cases(where link vdev would be down as part of roam sync handling)
but it would of non-assoc link in case of other modes
like SAE/WPA2/.. So current fetching of frequency based vdev_id
may give invalid frequency in SAE case as non-assoc link vdev_id
is passed.
Fetch the frequency based on link mac addr to avoid such failures.

Change-Id: I0a5748ac351473d85b21f2da8d8f124715c4d595
CRs-Fixed: 3358448
2022-12-14 23:15:18 -08:00
Divyajyothi Goparaju
017f34dd8d qcacld-3.0: configure valid range of value for aliasing INI
There are two different names with different range of
value for aliasing INI's.
So, it should pick the valid range of value wrt INI
name.

Change-Id: I58d4797a0fa598a1e44349c8954dac3378f1a751
CRs-Fixed: 3352412
2022-12-14 02:02:52 -08:00
Jianmin Zhu
6a88b4a711 qcacld-3.0: Update vdev self mac address after roaming
When roam from legacy to MLO/SLO, need change vdev self mac to link addr.
When roam from MLO/SLO to legacy,  need change vdev self mac to mld/net
addr.

Change-Id: Ife17fd0a79a9f067eb72ac510dbf437b6d3649d8
CRs-Fixed: 3351027
2022-12-14 00:02:18 -08:00
Sheenam Monga
ac14a3912b qcacld-3.0: Send async event to userspace for NAN concurrency
As part of Spatial Reuse, host has to send SR Suspend and resume
events based on concurrency which is not sent in case of NAN
concurrency.

Fix is to send SR Suspend in case NAN comes up and any STA that
supports SR is already present because SR is not supported in
case of NAN concurrency. Similarly during NAN disable check
if any other vdev apart from NAN is sharing mac with STA that
supports SR and SR support on same mac is disabled then don't
send SR resume event as there is already a concurrent vdev that
will take care of SR Suspend event otherwise send SR Resume event.

Change-Id: I56a9b455dd0166bc3997f8306992e46da759e992
CRs-Fixed: 3339713
2022-12-13 17:24:16 -08:00
Roopavathi Lingampalli
fcb513f88f qcacld-3.0: Add Component APIs for required ucfg APIs in DP component
When component dependent functions calling from higher
modules or any other components, it uses ucfg APIs pattern.
Calling ucfg dependent APIs is acceptable for higher modules
like HDD, OSIF but for another components like DP to avoid
using ucfg APIs here, implementing component APIs for existing
ucfg APIs to other components like MLME, TDLS, Pkt capture in
DP component module.

Change-Id: Ib8857eeca6a88810d7875312ff6dc14ffb60bc70
CRs-Fixed: 3351486
2022-12-13 14:06:07 -08:00
Srikanth Marepalli
b73718cf7d qcacld-3.0: Introduce ini to configure roam RSSI diff for 6 GHz AP
This is applicable only when the roaming happens from 2.4 GHz/5 GHz
to 6 GHz AP.
The value is used to check if the 6 GHz AP to which we are roaming
(from 2.4 GHz/ 5 GHz) is better than current AP in terms of RSSI.
This checking is disabled if the value is set to zero.

Change-Id: I77f1183e1fd704dfa153841e669a20c9e75d0fe7
CRs-Fixed: 3353346
2022-12-12 15:38:42 -08:00
Jyoti Kumari
af62331dd8 qcacld-3.0: Add WMI interface to configure EDCA/PIFS param
Add WMI interface(WMI_VDEV_SET_TWT_EDCA_PARAMS_CMDID) to
configure EDCA/PIFS param for LL SAP.

This configuration depends on edca_param_type.
If edca_param_type is 0 then host will configure EDCA param and
send it to firmware via WMI interface.
If edca_param_type is 1 then host will configure PIFS param and
send it to firmware via WMI interface.

Change-Id: I09f49474c0a698257d06aa4f1a17b56aae735fa5
CRs-Fixed: 3349447
2022-12-12 11:49:17 -08:00
Yeshwanth Sriram Guntuka
46fdb5e45b qcacld-3.0: IOMMU map and unmap direct link mem regions
IOMMU map and unmap memory regions related to direct link
into LPASS SMMU context bank for LPASS to access that memory
in direct link use cases.

Change-Id: I4414ad1f480a639ee2d8a0677326624cd959b2b4
CRs-Fixed: 3356587
2022-12-12 09:54:38 -08:00
Surya Prakash Sivaraj
e1ce015186 qcacld-3.0: Extend KEK and KCK lengths
For GTK offload functionality, currently only 16bytes of
KEK and KCK are being copied from the userspace.

In latest kernel, kek length and kck length are sent to the
host driver as part of set_rekey_data command. Therefore,
use this length to copy the kek, kck params in host driver.

Change-Id: Idef0247aaab22022a84898eca6eb2f010ca1bf1f
CRs-Fixed: 3345506
2022-12-11 16:57:51 -08:00
Jianmin Zhu
61c100819e qcacld-3.0: Fix wrong SAE tx addr issue in WoW mode
In WoW mode, roam auth event may comes before roam start event, so CM
isn't in ROAMING state at that time, can't assume ROAMING state.

Change-Id: Ibf868db1ca0f9863d4beae4c83227cf04fe55adb
CRs-Fixed: 3357115
2022-12-09 19:09:48 -08:00
Roopavathi Lingampalli
fe456edd03 qcacld-3.0: Fix Rx thread suspend error in DP component
Rx thread suspend fail error not handled properly, fix this
by adding proper error case.

Change-Id: Ia46eda8736c47f3015c36a6fa915fbc73a802062
CRs-Fixed: 3356655
2022-12-09 11:51:36 -08:00
Pragaspathi Thilagaraj
258e6ac52f qcacld-3.0: Fix the wrong event id specified for wow wakeup
In wow_get_wmi_eventid(), the reason to event id mapping fills
the wrong command id (WMI_ROAM_PREAUTH_STATUS_CMDID) instead of
the event WMI_ROAM_PREAUTH_START_EVENTID and.
Since the event WMI_ROAM_PREAUTH_START_EVENTID will not be
piggybacked, remove the reason WOW_ROAM_PREAUTH_START_EVENT from
wow_get_wmi_eventid api. Fix the documentation of setting the
WOW_ROAM_PREAUTH_START_EVENT bit in pmo wow bitmap.
Fix invalid event id mapping for WMI_TDLS_PEER_EVENTID also in
wow_get_wmi_eventid().

Change-Id: Ifd08dc94cda22d9de662ef15b74cb19571007052
CRs-Fixed: 3355578
2022-12-09 11:51:30 -08:00
Surya Prakash Sivaraj
2095242876 qcacld-3.0: Increase PMK max length to 64bytes
For SAE-EXT-KEY AKM with group-21 pwe, the PMK
length is 64bytes. Therefore, increase the max
size of the PMK to 64bytes in host to facilitate
PMK storage and PMK offloads.

Change-Id: I777a31acd56073d6a0312c47d95fe7d155b06fc6
CRs-Fixed: 3353102
2022-12-09 09:35:17 -08:00
Vijay Raj
f101354847 qcacld-3.0: Add FW support for AKM 24
Add FW support for AKM 24

Change-Id: I067c7f2a4eabe680fdd38e78cb5ffbd8ad306ad3
CRs-Fixed: 3301709
2022-12-09 07:31:59 -08:00
vijaraj
d607d5e5e8 qcacld-3.0: Add support for AKM suite 24
Add support for AKM suite 24

Change-Id: I4b5be990a0f2d2aa481374486a5790970cc04592
CRs-Fixed: 3299864
2022-12-09 07:31:54 -08:00
Jeff Johnson
7c1e0f0759 qcacld-3.0: Fix wlan_dp_priv.h documentation
The kernel-doc script identified some documentation issues in
wlan_dp_priv.h, so fix them.

Change-Id: I38bc7293d4ef7b34bbc40930b2c1e4daaff4a13b
CRs-Fixed: 3352263
2022-12-09 05:05:26 -08:00
abhinav kumar
9988950c6d qcacld-3.0: Abort roam invoke if BSSID is present in reject list
Driver adds a BSSID to the reject list due to multiple
DE authentication triggers from associated AP. If DUT tries the
FASTREASSOC command for the same BSSID multiple times, the host
triggers disconnection to handle roaming failure, and this results
in DUT losing the current connection.

To keep the current connection DUT should not trigger a roaming
event if the BSSID is already added to the reject list in the
host.

The fix is to add logic to avoid the FASTREASSOC trigger command
for AP(s) present in the reject list of HOST.

Change-Id: I315da12b3f93d5d9d67396a5dd9e12fa2be5fda0
CRs-Fixed: 3328847
2022-12-08 11:00:43 -08:00
Will Huang
1ad545d3d7 qcacld-3.0: Add SAP channel auto selection DCS callbacks with AFC
Add channel tx max power factor to existing ACS channel weight logic,
so if AFC available can automatically select Standard Power channel
which has higher 6 GHz tx power and better performance.

Add SAP best channel selection callback when AFC triggered DCS,
DCS module will invoke this callback and dynamic switch to best
channel/bandwidth if possible.

Change-Id: I300057c2b11d0b818f4e20ba51d6ab9b82f6a3ff
CRs-Fixed: 3204199
2022-12-08 07:40:20 -08:00
Srikanth Marepalli
f6ae09b410 qcacld-3.0: Add vendor attribute to include 6 GHz in roam full scan
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This would include the 6 GHz PSC
frequencies by default.
This attribute allow that behavior to be modified to include PSCs only
if 6 GHz use has been detected in the environment.

Change-Id: I6dc380419f14b920737fd87cd9a487c28364563b
CRs-Fixed: 3351697
2022-12-08 02:48:30 -08:00
Liangwei Dong
f327b00ab4 qcacld-3.0: Fix potential out of memory access
Check num_ml_sta valid or not from API policy_mgr_get_ml_sta_info
result.

Change-Id: Id53764004110d21e34a8f059e8448d059737a9f6
CRs-Fixed: 3354411
2022-12-07 19:36:44 -08:00
Liangwei Dong
cdd8a34bc0 qcacld-3.0: Update hw mode index for hw mode transition event
When vdev_mac_entry is NULL, update the hw mode index as well
to avoid mismatch between host and target.

Change-Id: I67bd91af8c72dcc468c128e266e7074308de04c0
CRs-Fixed: 3342565
2022-12-07 11:58:11 -08:00
Jeff Johnson
dc0cfa5342 qcacld-3.0: Fix CoAP documentation
The kernel-doc script identified several documentation issues in
components/coap, so fix them.

Change-Id: Iec06bb65071e4d9b1ee8787da84e66ba4ffb0028
CRs-Fixed: 3352334
2022-12-07 09:46:47 -08:00
Amruta Kulkarni
63583f71ac qcacld-3.0: Validate T2LM IE
Adds support to parse and validate T2LM IE,
based on tid to link mapping pick the
association link for MLO connection.

Change-Id: I8ea23ff10f2a637148686f1e2194fd8cc1f4fb90
CRs-Fixed: 3344675
2022-12-07 02:23:58 -08:00
Abhishek Singh
21fd53081b qcacld-3.0: remove unused API policy_mgr_pdev_get_pcl
Remove unused API policy_mgr_pdev_get_pcl

Change-Id: I8b0bc201f30482867023a8d938bedc9322f808a2
CRs-Fixed: 3352669
2022-12-07 02:23:53 -08:00
Aravind Kishore Sukla
d73ef71ceb qcacld-3.0: Rate limit P2P OTA logs
P2P OTA rx frame indications are logged in info level.
This causes excessive logs to kernel logging when peer
sends multiple frames back to back. Rate limit the logs
to avoid excessive logs to kernel logging.

Change-Id: Ia97aef1490b8dbb759c27ba60c48c93ad7831497
CRs-Fixed: 3352880
2022-12-07 00:20:09 -08:00
Srinivas Dasari
49ea4902ae qcacld-3.0: Reset the RSO SM of MLO link upon roam abort
Roam sync may get aborted on link vdev due to multiple reasons.
Link scan entry being not available at host is one such case.
del_sta response of BSS gets dropped due to stale link-RSO state
and results in disconnect timeout.
Reset the RSO state machine of link vdev when roaming is aborted
to allow cleanup the vdev in next disconnect.

Change-Id: Ie584c5b7ccae989cf2ce64e85da26d1b3526f1e0
CRs-Fixed: 3352543
2022-12-06 22:19:24 -08:00
Roopavathi Lingampalli
b81f52931c qcacld-3.0: Add Rx thread feature support for Dp component
Add Rx thread and Rx refill thread support for
DP componentization.

Change-Id: I2c0a0f7780280a0c2304f026d2580a81123de312
CRs-Fixed: 3316814
2022-12-06 07:35:08 -08:00
Rahul Gusain
f4dcdbd94b qcacld-3.0: Out of bound access while fetching disabled ml links
Host driver tries to fetch info of disabled ML links from
pm_disabled_ml_links by passing arrays to fill vdev_id_list,
freq_list and ml_idx list. Disabled + enabled links together can't be
more than MAX_NUMBER_OF_CONC_CONNECTIONS from functionality perspective.
But static analyzer tool complains that there are chances for out of
bound access of the given arrays while filling the indexes. Add checks to
avoid any such possible out bound access.

Change-Id: Icff77f9700c782f05e10c1d0aee8e1f238b0cc94
CRs-Fixed: 3344532
2022-12-05 22:01:53 -08:00
Srikanth Marepalli
15bbff508e qcacld-3.0: Add vendor attribute to optimize roam full scan
User can include/exclude the frequencies in roam full scan that
were already scanned by the previous partial scan, using the new
vendor attribute introduced as part of roam vendor command.
Host sends the configured value to firmware.
As per current implementation of roam scan, if there are no APs
found during partial scan, immediately a full scan will be
initiated as a fallback. This includes all channels that were
already scanned as part of partial scan.
This attribute controls the optimization, to exclude all channels
which are already scanned as part of partial scan.

Change-Id: Icd6381b4daadcfe32dabda131ae92e2e32f07f1d
CRs-Fixed: 3343657
2022-12-05 11:11:58 -08:00