Avoid sme lock from connect/disconnect callback as the callback
already takes connection manager or sme lock.
Change-Id: Ifd5499f6756be7208d350afaae6cf637e7d69349
CRs-Fixed: 2870854
Add RSO lock and use it to send RSO commands. Also
avoid calling the cm_disconnect API while holding
SME global lock to avoid race.
Change-Id: I588a56f4c96d137d3283b2dc57274de069ecb4ab
CRs-Fixed: 2870603
Re-write TPE IE populating code. For 6ghz AP, there can be multiple
TPE IEs.The TPE IE can be of type PSD or non-psd.
Change-Id: I029d4826cbc73abb382d885260c355217b2cc6b4
CRs-Fixed: 2863009
issue step:
1 first connect with mcs_12_13 supported ap
2 switch to connect with non support mcs_12_13 ap
the linkspeed for 2nd ap will be wrong as it is leverage
1st ap's sta info in vdev_mlme_obj.
Fix is reinit mcs_12_13 in vdev_mlme_obj for each connection.
no matter if it is 11ax AP.
Change-Id: I7f6ceb2543be1df324f57183758872e6d807d8f9
CRs-Fixed: 2868617
In Dual station case, reassociate to AP which is connected on other
vdev is not supported, and will get roam invoke failure from target.
Disallow the bssid reassocaite by checking the connected vdev.
Change-Id: I4533cf8b633cec9ddebff946248dbacf8eab169d
CRs-Fixed: 2868221
Kernel maintains bss with old channel, if inform beacon before
channel switching, kernel will create new bss. And kernel will
unlink the “new” bss when process channel switch event, that could
being used by other component. Driver can avoid “new” bss creation
by removing the wlan_hdd_cfg80211_update_bss_db call before
indication the channel switch to kernel.
The kernel bss updating will happen in following beacon rx from
ap.
Change-Id: I4f1405cd3c8533bafcbd2fc0a290864cddd1e634
CRs-Fixed: 2868341
When TWT teardown is received, driver sets the twt setup done
flag to false and clears the TWT dialog id/state for the TWT
session irrespective of the teardown status sent by firmware.
This causes TWT session deletion even if ack is not received for
TWT teardown frame or internal error due to which TWT teardown
frame was not sent over air.
Don't clear the TWT sesson if teardown failure due to internal
error or no ack is received for TWT frame.
Change-Id: I7d5cf423c3cd0d4be9bb2ff0b238a3fa069783cf
CRs-Fixed: 2866195
A possible out-of-bound read can happen in the hdd function
wlan_hdd_get_sap_obss. To fix it, pass the proper length.
Change-Id: I698f71314e0e164cc729942294dcabb37d362245
CRs-Fixed: 2851927
Currently MIC verification is not proper for fragmented packets,
fix MIC verification for helium family.
Change-Id: Iac95c579287bafedf6521b38f2c628fd08cca72d
CRs-Fixed: 2869483
Update the channel info in the tx_status from policy manager for
packet capture mode.
Change-Id: Id237a0ee3d102b60c2cd9d47f2febb4538f29e2f
CRs-Fixed: 2869411
Some of the members in pld_soc_info structure is not assigned by
platform API's. To avoid uninitialized value access by calling
function initialize pld_soc_info to default value.
Change-Id: I4b6816bf72ebb518b1b8af529763c2f8a8edb38d
CRs-Fixed: 2858219
Currently the reference count variable used to detect the net device
reference leaks is not atomic. Because of this, the reference count
updation may not be reliable in multi thread scenario.
To address this, make the net_dev_hold_ref_count increment and
decrement as atomic.
Change-Id: Ifa87177164e87880d0c6d71fb40ca03a3919519e
CRs-Fixed: 2868029
Add support to parse the BSS max idle period IE and configure
the idle period to FW if it is present in assoc response frame.
Change-Id: I144f2b1789775461a5df702dee72d0f73b9023cf
CRs-Fixed: 2788542
It's needed to update deficient_desc count when the deficient pools
are replenished, otherwise, when there are multiple interfaces and
do intetfaces on/off stress test, it's possible some interfaces will
run out of system tx pool descriptors when do ol_tx_flow_pool_resize,
and other interface can't get any available tx descriptors.
Change-Id: I07ded6c7f39637f6f2734edac5add8fef7bb8cf3
CRs-Fixed: 2857659
For SAP, country IE takes different input for 6ghz channels.
for 6 ghz, we need to add operating class triplet also. So, before
the sub-band triplet, operating class triplet needs to be added.
Change-Id: I43d37d0f23276dbe7fed35d8c2251d9e15b16fa9
CRs-fixed: 2862999
Use is wps/osen from the connect req/rsp, instead of parsing
the assoc ie and deciding the value.
Change-Id: I628c8aab22d1e842219b8d38fd025299d91cc68f
CRs-Fixed: 2868657
Driver doesn't clear the stored dialog id for TWT session when
TWT setup returns failure. This causes subsequent TWT sessions
to fail.
Reset the TWT session state and clear the dialog id for the
failed TWT setup to allow the next TWT setup commands.
Change-Id: I2f0ccb7a07ef49011b01d7336389d6ce56315fe9
CRs-Fixed: 2865240
User uses SETROAMMODE command to enable/disable Legacy Fast Roaming.
Host processes SETROAMMODE and sets ini config value as per user
request and doesn't update RSO state in driver and doesn't update
RSO state change to FW. Due to this, runtime LFR config doesn't
take effect in FW and host RSO state machine.
Hence update RSO state in host and FW while processing SETROAMMODE
command.
Change-Id: I73d865468e5538566f1e0d0240d77916eb445440
CRs-Fixed: 2867697
Decouple BW monitor from WDI3_STATS_UPDATE and add as a
separate feature flag WDI3_STATS_BW_MONITOR.
Change-Id: I77fb5658d995daceaada6a7d64f669da706ead9c
CRs-Fixed: 2868582
Enable the RX_DESC_MULTI_PAGE_ALLOC for qca6390_defconfig to enable the
memory allocation of RX descriptors using multiple pages instead of large
contiguous memory to fix potential memory allocation failure when system
is in the heavy memory fragmentation.
Change-Id: I611850374dce62f8c326b16f95cc162fec32c5e3
CRs-Fixed: 2852534
Update the session he capabilities when SAP switches to new
channel and if new channel band or channel width is different from
current session channel info.
Change-Id: I1a91864eb6f26189c37b2dc715e6b6d7fb950458
CRs-Fixed: 2863366
Host needs to send down sap and go client connected mode d3 wow
feature support and hence save the default config which will be
send later down to FW via WMI INIT CMD.
Change-Id: I71ff3155e30ea03c63045473ad256dc14026f5fd
CRs-Fixed: 2866617
The current get params logic sends wake_interval_us
without converting to multiples of TU. Correct it to
send the get status wake interval in multiples of TU to the
userspace
Change-Id: Ib583581287f9440e438ef3296ea48ef1148ae083
CRs-Fixed: 2862651
with recent commit 203218df88
("qcacld-3.0: Set sme power stats response cb and context to NULL")
fix in the error condition the sme global lock is not getting released
resulting in the mc thread being struck.
Release the sme global lock in the error condition.
Change-Id: I6235a632c6b74c48374d4584eb727bf9ffe296a8
CRs-Fixed: 2867358
When SAP operated in channel 36 with 160Mhz, the primary channel
36 is non-dfs and existing checking dfs will drop the radar event
if the radar detected on channel 52. Change policy mgr API to
check the dfs flags instead of primary channel state.
Change-Id: Ie2f242182b8df30e5d1875e278c5ebffa2e7cafd
CRs-Fixed: 2865173
The QCA_WLAN_VENDOR_ATTR_TWT_SETUP_WAKE_INTVL_MANTISSA attribute
should be specified in multiples of TU. Correct the logic to
multiply it by 1024 to get wake interval mantissa in microseconds.
Change-Id: I2c6eb3ca5541b97cffbe0de44351571839fa00e6
CRs-Fixed: 2862107