Currently during get_ch_info dot11 mode is fetched from mlme_cfg
and used to calculate phy mode without any band validation which
may cause errorneous behaviour in below cases due to invalid band
and dot11 mode combination:
a.) Band 2g and dot11 mode 11a
b.) Band 5g and dot11 mode 11g
c.) Band 5g and dot11 mode 11g_only
c.) Band 5g and dot11 mode 11b
Fix is to update modes in case mlme_cfg mode and frequency combination
is invalid.
Change-Id: I6390677cb196ebec3695d73cfe1e67086a67a8c0
CRs-Fixed: 2802679
This reverts commit "Change-Id: 5859acc0d6938feaf52516fcc5c18f0bdcab14ab".
Above change is not required on this branch as the issue fixed
with above change is not present on this branch.
And because of the above change there is an issue of priority
inversion between disconnect stats and deauth/disassoc commands.
disconnect stats command should always execute before deauth/disassoc
commands so that peer stats can be retrieved before peer gets
deleted. with current implementation where both the commands have
high priority disconnect stats command will execute first if there
is no active command in the active queue else deauth/disassoc
command will be queued before the disconnect stats command and
if there are multiple clients connected to SAP and all gets
disconnect at the same time, disconnect stats command for all
the clients will be there in the serialization queue, because of
which serialization queue gets full and no other command can be
added to serialization queue.
To address above issue change the priority of the deauth/disassoc
commands so that disconnect stats always gets chance to execute
first.
Change-Id: I7041ddfcb195da5a9e203feb5bbb36e645141630
CRs-Fixed: 2808528
Since new rso ROAM_OFFLOAD_V1 path is enabled, remove
the old rso path code for hdd/sme/lim related files.
Change-Id: I9bb470cb2af0cc940f9c5dd70942eac0cdd83eb5
CRs-Fixed: 2809268
Currently IPSec packets encapsulated in UDP packets
are aggregated via FISA. This is leading to unwanted
behvaior of certain special packets (hearbeat etc)
being aggregated along with other normal packets of
a flow, thereby leading to use-case disruption.
Fix this by not aggregating IPSec packets.
Change-Id: Ieada556e7e3ef67d2c7a8e8ba4d7197c7660be0c
CRs-Fixed: 2783629
Since new rso ROAM_OFFLOAD_V1 path is enabled, remove
the old rso path code for cm/wmi roam related files.
Change-Id: Iec350f032c3e037204f560199d4a6e258ac02688
CRs-Fixed: 2810145
Roaming between different PMF option APs has following issues:
1. Roaming between Optional -> Disabled -> Optional
When STA roam to optional, PMF is set to False from STA in reassoc
request and all management pkt not secured.
2. Roaming between Required -> Disabled -> Required
STA not able to find candidate AP when tried to roam to AP with PMF
Required.
Root cause: When LFR3 roam happens, vdev_crypto_params will be reset
including rsn_caps 11w PMF, if new AP hasn't enabled PMF, vdev rsn_caps
11w PMF is disabled too, and passed to F/W. Then F/W think DUT STA
doesn'tsupport PMF, then failed to roam to AP with PMF Required and
enabled.
Fix:
Get self-capability of 11w PMF from connected profile and pass to F/W in
WMI_ROAM_SCAN_MODE by wmi_fill_rso_tlvs after roaming.
Move target_if_cm_roam_fill_11w_params to csr_cm_roam_fill_11w_params,
put protocol part to csr connection manager.
Change-Id: I543799385ec8c0ec7afdf64e2310c24758305095
CRs-Fixed: 2807454
Add a vendor command to report statistics to userspace
for clear channel assessment.
Change-Id: I5c8ddc14f6661d2af7e4f3a9e1c9c844fd4cd16d
CRs-Fixed: 2773536
Memory is created for the mlme legacy pointer during the create
of the mlme legacy priv object. This allocated memory doesn't get
free when an error condition which leads to device crash.
To avoid this problem memory should be freed before returning from
the error condition.
Change-Id: I8aaaf7bf17cf38f70135e5ff00db429c34aff2d8
CRs-Fixed: 2803896
In 2.4 Ghz, if peer is advertising MCS10/11 in 11ax and doesn't
support LDPC coding then STA downgrades to 11ac but if AP doesn't
advetise MCS 10&11 and LDPC bit is not supported, then STA treats
LDPC as optional in 11ax and would not downgrade to 11ac from 11ax.
Change-Id: I80b4c6615469c21020ed8d671c2d9ec94bd600b4
CRs-Fixed: 2810347
Since new rso ROAM_OFFLOAD_V1 path is enabled, remove
the old rso path code for csr related files.
Change-Id: I6527630951ca1c291e027e7ecdb3f9bf4b0a72b3
CRs-Fixed: 2808325
Steps to reproduce:
1. AP-AP setup on channel 48 in SCC mode.
2. Indicate channel avoid including channel 48.
Observed Results:
Channel avoidance not happened, AP-AP still in channel 48.
Expected Results:
Channel avoidance, AP-AP moved to another safe channel.
Root cause: When channel 48 became unsafe, tried to switch AP1 to safe
channel 36, but failed for AP2 in different channel of same MAC,
wlan_sap_validate_channel_switch return false.
Fix: When CSA for unsafe channel, since get pcl by
policy_mgr_get_pcl_for_vdev_id, scc channel is considered already,
set force to switch channel as true, ignore more SCC/MCC check by
wlan_sap_validate_channel_switch.
Change-Id: I95544d069e5cf3b289e78592f81e0e6496b72801
CRs-Fixed: 2773925
For wow or active offload mode, FW will re-inject some RX frames
to REO with reo_destination_indication 1 (REO2SW1) to REO entrance
ring, but the original reo_destination_indication in RX buffer pkt_tlv
is 6 (REO2FW) or other flow steering value (>=16), then REO2SW ring
mismatch will happen that break FISA function in host.
Bypass FISA if reo_destination_indication mismatch between REO ring
descriptor and pkt TLVS.
Change-Id: I8736b8a96513c2e49fe41fb460f81cb0ef01ed01
CRs-Fixed: 2807461
Add connect and disconnect function call from hdd to osif for
connection manager to enable the connect and disconnect flow for the
connection manager.
Change-Id: I1504410cd431aedf04b58e93d9eeff34040b32a1
CRs-Fixed: 2804230
Use separate hang reason for case that lack of credit after suspend.
Meanwhile add hang buf offset check to avoid overflow.
Change-Id: Ic794d02672cd663598da66b9e75924c41b5ef0e8
CRs-Fixed: 2801343
SAP cannot be turned back on, if SAP is turned off during the
Pre-CAC. Because in __wlan_hdd_del_virtual_intf(), cleanup of SAP
is not done.
To avoid this issue cleanup SAP interface also in this scenario.
Change-Id: I12240c22a2b40c2a1fc8a46ff197023abf36631a
CRs-Fixed: 2803454
CAC timer is only created for non-offloaded CAC case, but in some
cleanup functions, CAC timer is stopped/destroyed without checking CAC
offload flag.
Change-Id: If8422afac2389e134769a762aa87cb7969eef9ec
CRs-Fixed: 2807650
Initialize osif callbacks to connection manager and add
legacy callbacks to osif and initialize these legacy callbacks
for connection manager.
Change-Id: I27b3ccf61fdac0ceee938264320feb1331460ba2
CRs-Fixed: 2797475
Since new rso ROAM_OFFLOAD_V1 path is enabled, remove
the old rso path code for wma layer related files.
Change-Id: Ie4639a6f04877aa41046706118936560200162a6
CRs-Fixed: 2808064
Enable pld_smmu_unmap support for ICNSS2 Adrestea targets.
This is needed to enable SMMU-S1 geometry support.
Change-Id: I8aa612810cc468269fa5c633276f9b3ba8135542
CRs-Fixed: 2808041
In FT roam when the CSR lookup fails then the PMK details from
the roam sync indication will be updated to Session/PMK cache.
This will result in having multiple PMK cache entries for the
same MDID.
This fix is to avoid updating the Session/PMK cache in case of
FT roam and maintain a Single PMK cache that was set during the
set_pmksa.
Change-Id: Ie803a9816dece79c6d71e9963e11c6ec424306eb
CRs-Fixed: 2798720
In FT-SuiteB when STA connects to AP1 then PMK1 gets cached. And
then STA disconnects from AP1 and connects to AP2 then PMK2
gets cached. Now if STA roams to AP1 then FW uses PMK2 from mlme
session to create the PMKID. But the corresponding RSO command
from driver sends the PMK1 to FW and the same gets updated in
mlme session of FW. This results in failure of next roams, as the
invalid PMKID gets created using PMK1.
This fix helps in deleting the old/stale PMK cache entries that
are under the same mobility domain as of the newly added entry in
case of all the FT connections except FT-SAE.
Change-Id: Id960e955f8669e19e950c1edc38a9f0a715292b7
CRs-Fixed: 2798713
In FT-SAE when STA connects to AP1 then PMK1 gets cached. And
then STA disconnects from AP1 and connects to AP2 then PMK2
gets cached. Now if STA roams to AP1 then FW uses PMK2 from mlme
session to create the PMKID. But the corresponding RSO command
from driver sends the PMK1 to FW and the same gets updated in
mlme session of FW. This results in failure of next roams, as the
invalid PMKID gets created using PMK1.
This fix helps in deleting the old/stale PMK cache entries that
are under the same mobility domain as of the newly added entry in
case of the FT-SAE connection.
Change-Id: If71b22dbf9200b820c8dd8c9fd0183af5bfcb0f6
CRs-Fixed: 2740532
Currently, when channel list is changed. It updates
the channel list to fw first and then disconnect the
sta. This causes race condition to roam to invalid
channel.
To resolve this, disconnect the sta and then update
channel list.
Change-Id: I12d8098ee6acececc8a574d2b15f5c4774c07936
CRs-Fixed: 2806706
Move the logic to get HT and VHT caps in LIM from CSR also store
VHT and HT caps in vdev mlme instead of csr session.
Change-Id: I29b8e836a79a4a9eda5088c0eb2e0bf48d616de2
CRs-Fixed: 2807209
In the scenario where IPA UC ready work is processed after
wlan_ipa_uc_ol_deinit, triggered as part of idle shutdown,
there is a possibility for NULL wbm srng pointer derefernce
when setting the tx doorbell address.
Fix is to avoid scheduling UC op work when deinit is in
progress.
Change-Id: Ifa0908912b77f45b7d93c5f9c2f5aaf9e17685c5
CRs-Fixed: 2807218
Disable IPA when second SAP is turned on only if NAPI support
is enabled for IPA path.
Change-Id: Id30714156a959ed940d0480cb0e0d8db467c821f
CRs-Fixed: 2807158
FTM mode does not create vdev. So in order to add support for the
unit test command in FTM mode, set vdev of the adapter to 0 and create
a new funciton that handles the command called in FTM mode and does
not check for a valid vdev.
Change-Id: I5b71765dc4c6eb8025aa60726e4105f8ff30f634
CRs-Fixed: 2805415