Currently if driver load/unload is in progress or driver is
loaded and mode change to FTM mode is issued from the sys
path, memory leakage occurs during driver unload.
To address this issue, don't change mode if driver is already
loaded or load/unload is in progress.
Change-Id: I09cacaf11d516c62de1a9699547eb01476afdc1f
CRs-Fixed: 3349217
Clean up code for sme_get_empty_scan_refresh_period_global() and
sme_get_neighbor_scan_refresh_period() apis
and replace it with ucfg api.
Change-Id: Iaa511024467f45dc408da3db202b25f9b5276453
CRs-Fixed: 3335898
Clean up code for sme_get_roam_opportunistic_scan_threshold_diff() and
sme_get_roam_scan_home_away_time() apis and replace it with ucfg api.
Change-Id: I7de3bf3faff990cbf667cb8106044a33f16f3a46
CRs-Fixed: 3335898
Clean up code for sme_get_wes_mode(), sme_get_is_lfr_feature_enabled()
and sme_get_is_ft_feature_enabled() apis and
replace it with ucfg api.
Change-Id: I7715ba361264fcb2c0c93d8d073813538347dd31
CRs-Fixed: 3335898
Clean up code for sme_get_neighbor_scan_max_chan_time() and
sme_get_neighbor_scan_max_chan_time() apis and replace it with ucfg api.
Change-Id: I8a9de18f22e352ed8c64f415fd0455f64227a857
CRs-Fixed: 3335898
Clean up code for sme_get_roam_rssi_diff() and
sme_get_is_ese_feature_enabled() apis and replace it with ucfg api.
Change-Id: I226efbcf8ecd44b08684a3e17e2db987c169946d
CRs-Fixed: 3335898
Clean up code for sme_get_empty_scan_refresh_period() and
sme_get_neighbor_scan_min_chan_time() apis and
replace it with ucfg api.
Change-Id: I372fcbcf4f96af2c642a5fe93c0f8e2ce98174ea
CRs-Fixed: 3335898
Clean up the code for sme_get_neighbor_lookup_rssi_threshold() and
sme_get_roam_rescan_rssi_diff() apis and
replace it with ucfg api.
Change-Id: Idc7503eaa316d68dc05aba8345970ace7bc8ad45
CRs-Fixed: 3335898
Clean up code for sme_get_valid_channels() and
sme_get_roam_intra_band() apis and
replace it with ucfg api.
Change-Id: Ic2f07e2193186d1e1ac81f6e5909417c10ab9c89
CRs-Fixed: 3335898
Adds support to parse and save t2lm ie from beacon or
probe response in t2lm database
Change-Id: Ieea735200ab0ae120c01b632687a82ca972459dc
CRs-Fixed: 3337174
Currently, host hardcodes link_id value to 0 and sends to user space
hence getting multiple call traces as the 0th bit of valid links
is not set.
To address this issue send link_id extracted from beacon data to
user space.
Change-Id: I522518eed418b502e2a806ef18743290e465e827
CRs-Fixed: 3338480
If sta connect to an AP at 5 GHz DFS channel, P2P-GO open and would
scc on the same channel. We don't expect filter out the DFS channel
from PCL list.
Change-Id: Idd8707d7aea908d17d720b54c0228a131cf17fcd
CRs-Fixed: 3345700
The mandatory channel policy was created for STA + SAP 2 vdev concurrency
case. For MLO STA (2+5/6) + SAP 3 vdev concurrency case, use general
force SCC logic until the requirement is updated in this case.
Change-Id: Ifca16824d53f272adc5b6ff763c1b4cc08af6a2f
CRs-Fixed: 3347722
The kernel-doc script identified documentation issues in the hdd
layer, so fix the ones in the "inc" folder.
Change-Id: I0fda8ea1ce929ad5e0cc54f86a9de5a46b3f7d38
CRs-Fixed: 3346527
Rename wlan_hdd_cfg80211_spectral_scam_get_config() to replace
incorrect term "scam" with "scan". In addition, clean up existing
documentation issues.
Change-Id: I1d7f11e274bcb0e1e09e8292b75554d256a5c6fd
CRs-Fixed: 3344908
The kernel-doc script identified documentation issues in the hdd
layer, so fix the ones in the "src" folder.
Change-Id: I20307c4c7e02163a13a79dfd4fcf8fc734a4b230
CRs-Fixed: 3343791
The kernel-doc script identified a large number of documentation
issues in lim_session.h, so fix them.
Note that many members of struct pe_session did not have existing
documentation, so for now these just have the tags. Hopefully these
can be updated to add proper documentation in the future.
Change-Id: I2053b87b62fa992e654e292b534a9a12d4e6d767
CRs-Fixed: 3346625
When same NAN commands are issued back to back, serialization
module rejects the commands when there is a command present
in the pending queue. But the memory allocated for the NAN buffer
is not freed in such failure cases.
Free the NAN buffer in such failure cases to avoid memleaks.
Change-Id: I1d1f9c077d4b6239f4400d9b3ed185e63e471b56
CRs-Fixed: 3341229
To avoid assignment before null check for vdev.
First check null vdev and then assign operational
mode value.
Change-Id: Ifbff1f79f04d51dddf6a6c1aec27793389516045
CRs-Fixed: 3340858
The uninitialized peer might be used directly if device mode is SAP mode
and the link_vdev is not mlo vdev in the wlan_hdd_add_key_all_mlo_vdev.
Init the peer to NULL before checking the each link_vdev to address this
potential issue.
Change-Id: Ifbf2b68a030fada8a2a1b1cacf5d2a6ef703befe
CRs-Fixed: 3344320
Currently, if SR (Spatial Reuse) is supported by AP and then
STA roams to another AP then host needs to parse SR IE and
send events to userspace and commands to Fw based on below
scenarios:
i.) Roamed AP doesn't support SR: If roamed AP doesn't support
SR then async event with SR disable is required to be sent to
userspace.
ii.) Roamed AP supports SR: If roamed AP supports SR then below
validations are required.
a.) existing thresholds are in range of roamed AP: Send SR enable
command to FW with previous thresholds , as FW disables SR during
roaming.
b.) existing thresholds are not in range of roamed AP: then decision
will be based on whether threshold is provided during SR enable command
or not. If threshold is provided along with SR enable command then send
disable to userspace and in other case update thresholds as per roamed
AP , send async event to userspace with new configured values and send
enable command to fw with new thresholds.
Change-Id: I0c39de349c0f723d49d510c6e8ba09dcb98c6d17
CRs-Fixed: 3316985
Fix 'defined but not used' compile issue for some
sysfs functions if CONFIG_WLAN_SYSFS not set.
Change-Id: If067afe95ae98355e92a5b914bdce34b3c7c2342
CRs-Fixed: 3345060
Potential NULL pointer dereference of wma pointer in
wma_pasn_peer_delete_all_complete() API.
Add validation of wma pointer before passing it to the
wma_resume_vdev_delete() API.
Change-Id: I9ccb7baa0dba4cb6bbb4a16fd90ee7e2aafde1c5
CRs-Fixed: 3340866
Add edca_param_type ini to configure edca or pifs param for
LL SAP.
If edca_param_type is 0 then set edca param or
if edca_param_type is 1 then set pifs param.
Based on this ini, host configures either edca or pifs param
and send it to firmware and earbud via OTA frames.
Change-Id: I46a5efea4f516b145d04d8b8ad79c5d47ceb7f89
CRs-Fixed: 3344875
Currently, the driver uses the current capability to check
if it supports 40 MHz instead of self-cap, so once it
switches to 20 MHz it cannot switch back to 40 MHz again.
To fix check self capability to determine if the bandwidth
switch can be allowed in HT-only mode.
Change-Id: I4bfe893d1c745c82d96d763f92a635d1f6d7d8ce
CRs-Fixed: 3341954
Update the regulatory info to cfg80211 as well
if some channel information to be changed
by QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_EXT.
Change-Id: Ie485e9e2a57a04921e32d5f029b3c9535970186f
CRs-Fixed: 3335527
The length calculations in __wlan_hdd_cfg80211_get_wifi_info() are
not accounting for netlink attribute padding.
To fix it, use nla_total_size() to determine the size for attribute.
Change-Id: Ia6a632d32c59af0fac30f19e38f23b2955a0f8f6
CRs-Fixed: 3345051
When dual sta connected as SBS mode instead of dbs mode, driver didn't set
pcl per vdev, so dual sta had same PCL in firmware, MCC may happened after
roaming.
Fix:
1. Host pass roaming MCC disallow flag to F/W by checking primary vdev id.
2. For platform SBS supported, when doing dbs or sbs, send PCL from table
to F/W directly, allow SCC and SBS<->DBS roaming, don't limit to intra
band, only avoid mcc case if no primary vdev.
3. Use policy_mgr_concurrent_sta_on_different_mac to replace
policy_mgr_concurrent_sta_doing_dbs, add logic to consider SBS when set
PCL to F/W.
4. Change dual sta PCL table to remove mcc channels.
5. When STA channel switch, also update PCL to F/W.
6. For roaming case, do vdev level PCL update for all sta after connection
update in policy mgr, or wrong PCL is got.
Change-Id: I631c84c96da2bba4011b69e4c076db174205c874
CRs-Fixed: 3336768
When the SSR and interface down happen in parallel,
the driver rejects the interface down since the
recovery is in progress. Kernel ignores the -EAGAIN
request from the driver and as part of NET_DOWN notification
in cfg80211_netdown_notifer the kernel invokes the
___cfg80211_scan_done to free the scan request.
As part of the driver recovery, the driver also tries to
invoke the scan done on the scan request which is already freed
by kernel resulting in invalid access, so check the driver state
and send the scan done indication to kernel.
Change-Id: I7aa9286e32c407af88fe7be301b825506140d5a3
CRs-Fixed: 3345420
While SAP doing CSA, NAN enabled, SAP tries to do CSA to force SCC with
NAN in scheduler thread, since last CSA in progress, scheduler thread is
blocked to wait last CSA finished, CSA timer can't be handled in scheduler
thread any more, last CSA can't finish, deadlock happens until timeout.
To fix it, let SAP force scc with NAN logic run in work thread instead of
scheduler thread.
Change-Id: Icb774ffcfc70f279ba3b18b3c5cd4a169180e99b
CRs-Fixed: 3344905