Abhinav Kumar b473f03317 qcacld-3.0: Fix race between disconnection and RSO stop
Assume in case of STA + STA, where STA1 is on 2G band
and STA2 is on 5G band.

While switching STA1 to STA2, hdd_reg_set_band issue
disconnect, in order to change band (say 2G to 5G) and
start processing roam scan offload request to make sure
roaming gets enable on only one STA at a time.

eWNI_SME_DISASSOC_REQ and eWNI_SME_ROAM_SCAN_OFFLOAD_REQ
msg get posted to lim back to back through a single thread.

HOST starts processing DISASSOC_REQ first and waits for
tx_completion ACK for disassoc frame. Ideally, Host should
process eWNI_SME_ROAM_SCAN_OFFLOAD_REQ before getting ACK
for disassoc frame.

In case if DUT immediately gets disassoc ACK, DUT complete
disassoc req and then gets chance to process SCAN_OFFLOAD req.
Once DUT enters into Disconnection state, HOST never sends
RSO stop command to FW and leads to assert in fw.

Fix is to synchronize eWNI_SME_DISASSOC_REQ and
eWNI_SME_ROAM_SCAN_OFFLOAD_REQ command to make sure RSO stop
gets process first followed by Disconnection/deauth.

Change-Id: I4b29dda44729f5eddd82fec0b0e52a656d5cae37
CRs-Fixed: 2657305
2020-04-09 09:46:12 -07:00
2020-03-19 20:41:40 -07:00

This is CNSS WLAN Host Driver for products starting from iHelium
Description
No description provided
Readme 184 MiB
Languages
C 98.7%
C++ 0.9%
Makefile 0.3%
Starlark 0.1%