NR_CPUS may be configured as 512 by CONFIG_NR_CPUS. Then uint8_t
is not a proper variable type to do for operation.
Change uint8_t to unsigned int to avoid dead loop.
Change-Id: Ie159bcf09e190c635c1105ccd551fb3c601cc5a2
CRs-Fixed: 3338268
Currently probe request is sent every 200ms during join timeout
this can lead to 16+ probe req, send during join time.
Change logic to send max 5 probe req during join time,
if candidate freq can lead to MCC concurrency scenario.
Change-Id: I7956771e2cf6724754f59c6db5b07fb45426ae41
CRs-Fixed: 3338329
In lim_process_pasn_delete_all_peers, wma handler and vdev pointer
are dereferencing without check, may be points to NULL.
Add check to avoid NULL dereferencing.
Change-Id: I9bd047051d05ccd9709e228c37003079ec7e2732
CRs-Fixed: 3327338
Check for NULL pointer when accessing STA node from Hash Table
struct sDphHashNode.
Change-Id: Icec382526f0397c3ccb048120967aee0a8285d7e
CRs-Fixed: 3337661
With the recent change in feature set information related
to 11kv version info, host driver needs to update the
feature set version info as well.
With this change, update the feature set version info.
Change-Id: I50a4df5769cd702eda5d1bc69ac9aad07d87269a
CRs-Fixed: 3334882
Fix two compile issues:
1. wlan_hdd_transport_mode_cfg defined not used if
enhance CFR not enabled.
2. incompatible types for hdd_objmgr_get_vdev_by_user
function.
Change-Id: If52fe33f9181f6e66d0c1af3c02a71a9df175281
CRs-Fixed: 3338995
Add 4 static cfg items for AFC feature:
CFG_AFC_REG_NO_ACTION, CFG_6GHZ_SP_POWER_MODE_SUPP,
CFG_AFC_TIMER_CHECK_DIS, CFG_AFC_REQ_ID_CHECK_DIS.
Add APIs to pass these settings to psoc private of regulatory
component.
Change-Id: I61114fb7bf7d84f939265629bde78813b6295e39
CRs-Fixed: 3153987
Don't allow SR (Spatial Reuse) command for NON-SR AP
i.e if NON-SRG disallowed and SRG info is not advertised
by connected AP.
Change-Id: Ida0ff3945adf1256f45f72af97a724bd0b91a96a
CRs-Fixed: 3336945
Userspace may send RSNXE also in connect request irrespective
of the connecting AP capabilities to allow the driver to chose
best candidate based on score. But the chosen candidate may not
support the RSNXE feature and may not advertise RSNXE in
beacon/probe response. Station is not supposed to include the
RSNX IE in assoc request in such cases as legacy APs may misbehave
due to the new IE. It's observed that few legacy APs which don't
support the RSNXE reject the connection at EAPOL stage.
AKM values are same for WPA and WPA2 mode, but WPA versions are
different. So, currently, host driver strips the RSNXE for WPA2
mode only as it checks for valid RSN profile before strip the RSN
which is valid for WPA2 and WAP3 only.
So, to strip the RSNXE for WPA mode also, avoid the RSN profile
check.
Change-Id: I5055ef4c03e390b9c453fe81a77365bb4ef34e9f
CRs-Fixed: 3336640
Currently, our host logic is "If an STA connection is in
progress in another adapter, driver disconnects the STA and
completes the SAP operation (start BSS or stop BSS)". This
is due to below reasons:
In the old kernel version and for STA+SAP concurrency support
from GUI, the first STA connection gets triggered and while it
is in progress, SAP start/stop also comes up. Once STA association
is successful, the STA connect event is sent to the kernel which
gets queued in the kernel workqueue and the supplicant won't
process M1 received from AP and send M2 until this NL80211_CONNECT
event is received. Workqueue is not scheduled as RTNL lock is
already taken by hostapd thread which has issued start_bss/stop_bss
command to the driver. The driver cannot complete start_bss/stop_bss
as the pending command at the head of the SME command pending list
is hw_mode_update for STA session which cannot be processed as SME
is in WAITforKey state for STA interface. The start_bss/stop_bss
command for SAP interface is queued behind the hw_mode_update
command and so it cannot be processed until hw_mode_update command
is processed. This is causing a deadlock so disconnect the STA
interface first if a connection or key exchange is in progress and
then start or stop the SAP interface.
As part of connection mgr changes, removed dependency on WAITforKey
state in serialization, and h/w mode also is not sent immediately
after the STA connection, So no possibility of the above deadlock
scenario.
The fix is to avoid disconnection on the STA interface during the
start or stop of the SAP interface.
Change-Id: Iad3ada091e505007cc6901a461be3b88fc051f4e
CRs-Fixed: 3339784
When STA is connected to an 11ax AP, driver issues a scan request(OBSS)
to firmware with certain periodicity(it's 120 seconds currently).
Firmware shall do a scan for every 120 seconds irrespective of the
device activity. This causes data glitches throughout the scan duration
when data is going on a concurrent interface.
It's observed that the OBSS scan interrupts NDP data traffic from NDP
applications and causes glitches in file sharing/music sharing use cases.
Configure the OBSS scan periodicity with a larger value(1200 seconds) to
mitigate the glitches when first NDP forms. Reconfigure the original
scan duration(120 seconds) once all NDPs tear down.
Change-Id: Ie0c8228ff3b26f8d9a091909c710928e7ae2a787
CRs-Fixed: 3323193
Memory is allocated for ft_pending_assoc_ind in
csr_roam_chk_lnk_assoc_ind() for SAP/GO mode when AKM is
FT_RSN_PSK. This gets saved in ft_pending_assoc_ind_list
when ASSOC_IND is sent to HDD and the same would be used
later by ft_update/ft_cleanup APIs in success scenarios.
But if it fails to add the node for ft_pending_assoc_ind
in the list due to some reason (e.g. csr_roam_call_callback()
returns a failure), the buffer is not freed at all and results
in a memleak.
Free the buffer if csr_roam_call_callback() returns a failure.
Change-Id: Id8998f4905ac58fdc2ab101c9b1ea0870c31f44c
CRs-Fixed: 3339084
Currently before sending a scan done completion is sent to the kernel
the driver checks its internal iface_device_opened flag to make sure
only during the iff_up the driver sends the scan done to userspace.
Whenever a scan is ongoing & interface down is received in the other
context driver aborts the current scan and sends the scan done to
the userspace, This scan is not sent to the userspace because
driver internal flag iface_device_opened is reset 1st resulting in
dropping of the scan request which subsequently fails all the following
scan requests.
Hence reset the driver internal flag once all scan done is notified
and vdev is destroyed.
Change-Id: I764dd0521a25cc8b25c4b38b50ae2ed75b3b1860
CRs-Fixed: 3338151
Disable CFR/EPPING/NAN/more_tx_desc/OEM DATA and
RSSI_MONITOR/APF/P2P_DEBUG/P2P_LISTEN/SPECTAL_SCAN
Update wlan_hdd_debugfs_offload.c for APF compile error.
Change-Id: I8ede890b0b821cec5f03f2ede535f34d8883638d
CRs-Fixed: 3332742
In 11be capable configuration, for connection attempt
to MLO AP from non-MLO type vdev, downgrade to 11ax
mode association for that vdev.
User can still connect in ML mode from MLO type vdev.
Change-Id: I1e7cf940a778a20f2f4d5d24283ffb6aae52781b
CRs-Fixed: 3312163
Currently host driver does not support dynamic NSS update for
SAP. Based on new requirement update NSS for SAP.
To achieve this requirement, add a logic to update the NSS and
restart the SAP with the updated NSS based on the ini.
Change-Id: Ie770b1103ba4050c48cd4ba3674a5e0d89c86fdf
CRs-Fixed: 3307308
Add support for new QCA vendor attribute to configure
the periodic sounding for Tx beamformer functionality.
Change-Id: Ibd83e33ceed589dff6efaeb1cb085b4a5424d0dc
CRs-Fixed: 3329239
On client connection, send the client's MLD address, assoc response IEs
and the link_id of SAP on which the new client is added.
For non-MLO capable clients the MLD is sent as NULL address
On ML client disconnection, use MLD address of the client as argument
to cfg80211_del_sta().
For non-MLO client disconnection, use the legacy address of the client
as argument to cfg80211_del_sta().
Change-Id: I43cb8e688251b6118932e1ae88f7abdf53dd54a0
CRs-Fixed: 3324216
Currently host Sents WMI command to Fw to read tsf_id and mac_id
but in cases where there is change in mac_id after vdev start,
new tsf_id and mac_id is not updated in host to read from correct
scratch register. Which results in reading tsf value from wrong
scratch registers.
To fix the issue Fw will sent the WMI_VDEV_TSF_REPORT_EVENT directly
to host with updated mac_id and tsf_id. Make changes to update
tsf_id and mac_id from the direct event received.
Change-Id: I0b98022d1e91e1c7bcf85853c3f14a36ef0f2f7b
CRs-Fixed: 3334879
Currently general PM delay is 500 ms. If fw sends wow wakeup with reason
code WOW_REASON_LOCAL_DATA_UC_DROP host wakes up, 500 ms after the
transactions again runtime suspend takes effect. Every time FW sends wow
wake there will be a small delay induced. It is noticed that large
frames are getting dropped for continuous wow wakeup events.
To address this issue increase PM delay to 1200 ms if fw sends
wow wake for reason WOW_REASON_LOCAL_DATA_UC_DROP and again
revert it back to 500 ms on next WoW enter.
Change-Id: I57bafc5ae8a633f1f685201ceb5936b59c985148
CRs-Fixed: 3330844
For ML SAP configured in OWE, on ML client connection
send the MLD address and SAP's link id on which connection
is made.
For legacy clients or non-ML SAP don't need to send this info.
Change-Id: I04de6d172f7b5ddff22fc49123626510f23b21fd
CRs-Fixed: 3323808