If there are 3 or more 5/6Ghz SCC freq, avoid filling SBS freq in
PCL as due to 3 home freq limitation, 3rd freq will always be
leading to SBS.
So add SBS freqs in PCL, only if number of SCC are 1 OR 2 with 5Ghz
MCC/SCC.
Change-Id: Ib97589df50bbacafa56766dd4b8af6d9f5d1419b
CRs-Fixed: 3178339
On Wear HL based target with keystone kernel, it generates
WLAN driver with name "qca_cld3_wlan.ko" based on macro
definition WLAN_WEAR_CHIPSET. But the driver was not loading
because of the old INI path and /dev path.
This commit modifies the INI path and /dev path based on
macro defined i.e. WLAN_WEAR_CHIPSET.
Change-Id: I6d457a3bb708de3175c40b0f2b3ba0ebde915838
CRs-Fixed: 3168115
Add concurrency conditions to reject TDLS connection if
along with BSS STA, any other iface is in connected state.
In case such as where peer directly sends TDLS setup
request and because of this supplicant does ADD peer
which is not rejected in case of concurrency.
This check is required because add_peer shouldn't be
processed if any other interface such as SAP, P2P already
have started otherwise it will result in FW crash.
Change-Id: Ied36228e033730cd337cd64612df6b4c2696ee28
CRs-Fixed: 3169912
Update doc for SBS related pcl_channel_order to make
it more clear and add doc for new pcl types.
Change-Id: I3635cc664f9a004a07956d88d7d95b02e14947a3
CRs-Fixed: 3178476
Before enabling FW features via wext or vendor command, first
sanity check if the feature is supported or not.
Change-Id: I2bb1c61a717be39185aee580085952adcc70ef8f
CRs-Fixed: 3171698
As dynamic allocation occupy cnss prealloc memory, which may
cause this prealloc pool to be exhausted.
Move dynamic memory to static.
Change-Id: Ib05c044f8c0c805148d832f54c09915ef9b4c98b
CRs-Fixed: 3174282
Add check to enable lim11hEnable flag for 6G band SAP.
The flag lim11hEnable finally enables beacon capability
spectrum management bit.
Change-Id: I7dbf52acc18a611d72aad27ef021de5ac995c561
CRs-Fixed: 3176060
Assume AP1 and AP2 are SPMK APs. For SPMK AP(s), Host
should add an entry of an AP in PMK cache table like below in
two cases only:
Case 1. When DUT successfully associated with SPMK supported AP
In this case host update “is_spmk_ap” flag in PMK
table by parsing beacon of associated AP after
successful connection.
Case 2. When DUT successfully roamed to SPMK supported AP
In this case host update “is_spmk_ap” flag in PMK
table by parsing roam sync indication event.
In case of connection with SPMK AP, Host selectively deletes PMK
entry for other SPMK supported AP(s) on basis of “is_spmk_ap”
flag and maintains only one entry for all SPMK AP(s). And host
sends the same single PMK in RSO for further roaming to SPMK AP.
Initially, DUT is connected with AP2. Then Disconnection happens with
AP2 due to NUD failure. After disconnection, the upper layer sends
flush PMK requests for AP1 and AP2. Host deletes old PMK entries for
both APs. Now upper layer sends a set PMK request for AP2. Host adds
AP2 entry in PMK cache table but host does not set "is_spmk_ap" flag
in PMK table for this entry as DUT is not connected to AP2. Now host
receives a connect request for AP1 from the upper layer. DUT
successfully associated with AP1 by performing full SAE authentication.
Host adds an entry for AP1 in the PMK cache table and sets "is_spmk_ap"
flag for AP1 but fails to delete the entry for other SPMK AP(s), here
AP2, from PMK cache table. This is because of "is_spmk_ap" flag is not
set for AP2. At this point of time below is the PMK cache table entry
for SPMK AP(s): The Host PMK cache table has two entries for two SPMK
APs.
BSSID PMK is_spmk_ap flag
AP2 PMK2 0
AP1 PMK1 1
Now FW roams to AP2 using PMK1. Host process roam sync indication for
AP2 and updates "is_spmk_ap" flag for AP2 in the PMK cache table. As
Host has a stale entry for AP2 in the PMK cache table, Host sends AP2’s
PMK (here PMK2) in RSO command which firmware will use for further
roaming but roaming fails due to invalid PMK, as target SPMK AP expects
PMK1 in reassociation request.
To handle these scenarios, FW should send PMK info of roamed AP and
host override stale entry for roamed AP (if any) with roamed AP's PMK
in PMK cache table.
Change-Id: I5e46d16a64aa05469ebc389df9b638351d02a1e0
CRs-Fixed: 3152132
If host invoke roam failed, roam request is freed from vdev when
EV_ROAM_INVOKE_FAIL is handled, can't access it after that.
Change-Id: Ia486a18a6213fce693f85e8f633d343a367ab6e2
CRs-Fixed: 3178286
Currently driver does not update NSS in legacy rate info case.
This results in incorrect NSS info in big data stats.
To address above issue, update nss in all the cases.
Change-Id: I40ddd8b22f8c4bf77fb4788e26fbd291b37d5830
CRs-Fixed: 3172829
In GO+SAP Case, SAP starts firstly, GO starts on same band
but different channel. SAP forces SCC check is done in
hdd_hostapd_sap_event_cb in the event handle of eSAP_START_BSS_EVENT.
But at the time the GO's connection entry is not added to
policy mgr list. It is added after WLAN_IF_MGR_EV_AP_START_BSS_COMPLETE
is received by SAP interface manager. SAP can't find the same
band GO's channel at this time.
Fix by move the SAP forces SCC check in SAP interface manager
after WLAN_IF_MGR_EV_AP_START_BSS_COMPLETE event is received.
Change-Id: I54663bdd887e3d591d7fd9ee7ce76572b1ef21f7
CRs-Fixed: 3176076
Allow SAP and P2P GO mode MCC in same band if
wmi_service_dual_beacon_on_single_mac_mcc_support is
supported.
Change-Id: I228916df7166c9eddb829e423222da7803e3c7d2
CRs-Fixed: 3176081
Add Support for four port concurrency support for ML
sta + p2p + p2p. PCL will be same for SAP, P2P GO and
P2P CLI, so only SAP is considered in naming convention
to avoid repetitive handling.
Change-Id: Ie66407fd79f4e7b51271da8146c681dbf303810e
CRs-Fixed: 3177300
TWT is not disabled for certain APs. Add OUIs of the
APs to configuration file.
Change-Id: I3bb2238550294b443f166920069a14fb81e6873d
CRs-Fixed: 3176212
Currently driver does not check for adapter mode when it receives
set mon chan command, which leads to unexpected behavior when it
receives set mon chan command for non monitor mode adapters.
To address above issue, add a check in driver to avoid set mon
chan command for non monitor mode adapters.
Change-Id: I04f4a0c76823beb10ebfae6489f894ba8a302627
CRs-Fixed: 3175969
PCL for next connection is same in case of existing
concuurency is 3 port with 2 connections (one sta & sap)on
5G MCC or SCC and another STA on 2G. similarly pcl will
be same for 2 connections (one sta & sap)on
2.4G MCC or SCC and another STA on 5G.So, PM_STA_SAP_SCC_5_STA_24_DBS
can be renamed to PM_STA_SAP_24_STA_5_DBS and PM_STA_SAP_SCC_24_STA_5_DBS
to PM_STA_SAP_24_STA_5_DBS to avoid separate handling for SCC/MCC.
Change-Id: I5eeb809d49586b936f214c87defe6c0790d9829c
CRs-Fixed: 3170092
Add support for QCA_WLAN_VENDOR_ATTR_TWT_SETUP_ANNOUNCE_TIMEOUT
attribute as part of TWT setup command. This attribute is used
to configure the announce timeout value (in us) in the firmware.
This timeout value is only applicable for the announced TWT. If
the timeout value is non-zero, the firmware waits up to the
timeout value to use Data frame as an announcement frame. If the
timeout value is 0, the firmware sends an explicit QoS NULL frame
as the announcement frame on SP start.
Change-Id: Idf564813487b8157f05265dc73ef7a9a1c31d9e2
CRs-Fixed: 3168235
Add PM_SCC_ON_5_CH_5G pcl type to give priority
to SCC 5G followed by rest 5G channels for next
connection.
Change-Id: Ibff48dcd145368d967fb9f39c0118f94897a72a4
CRs-Fixed: 3170031
Optimize the 3 home freq logic in policy manager and rename few
APIs indicating the action they are performing.
Change-Id: Ice92917573537d0717144690a84ea46602984ef2
CRs-Fixed: 3174550
Get stats NDO can be called from user space or CLI in a loop
and this can over flow useful driver log buffer and hence remove
dev enter log from get stats ndo callback.
Change-Id: I99a4431f810dbb738ba94b31df488a9c5b24da86
CRs-Fixed: 3176830
Currently driver initializes start completion on recovery shutdown
which leads to an issue where userspace thread does not wait when
it writes state ctrl params with below event sequence because of
which wifi on fails.
On fw down driver sets recovery in progress, on shutdown it resets
wlan_start_complete and on reinit, it sets wlan_start_complete.
Now if driver again receives fw down it sets recovery in progress and
when userspace tries to write state ctrl param this thread does not
wait here as wlan_start_comp was set in previous SSR sequence.
If driver does not block this thread, userspace tries to iface up
which fails because SSR is still in progress.
To address above issue, init start completion in fw down instead of
recovery shutdown so that driver can block the state ctrl param thread
until SSR completes, when it tries to set the params.
Change-Id: I3fe3768b1ec431620b37055d783de0201371e774
CRs-Fixed: 3176181
Acquire the policy mgr connection entry lock before
update no_of_active_sessions and call policy_mgr_decr_connection_count
API. Other thread may validate the no_of_active_sessions and
the connection list, so the two operations have to be done
in lock acquired.
Change-Id: Ibf06c7afe869ce4d582f54deae3f15dd789bdf1b
CRs-Fixed: 3175837