Add new files for connect/roam logging. Add changes to
initialize the logging buffer.
Make changes to support enqueue/dequeue log.
Define enums for MAIN_TAG, Sub TAG, category.
Add structure definitions for logging buffer.
Change-Id: I1d283fcf464da90d4f5533214d480ddda156ec27
CRs-Fixed: 3013486
Fix possible memory leak while updating dual sta connect channel list
in wlan_cm_dual_sta_roam_update_connect_channels.
Change-Id: I39dc05e485a0f00189978a38fa927a6ec4bd0086
CRs-Fixed: 3035192
Print channel list which is allowed for connection for the
second STA when dual sta roaming in is enabled in
wlan_cm_dual_sta_roam_update_connect_channels to enhance
debug log.
Change-Id: I4e16f101b60dc9d34d6193adcfe72ec173c5467a
CRs-Fixed: 3000235
Currently, firmware can roam between owe security SSID's
even though open SSID is different for both of the AP's.
This commit adds support to restrict roaming between the
same OWE profile AP's which means if the device needs to
roam then target AP's open SSID and owe SSID should match
with current AP.
Change-Id: Ib59127a90cab9ee6626b018d581edbf76ad89856
CRs-Fixed: 3025667
Send additional roam trigger TLV for BTC in
WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID
command, to support a new roaming trigger
"WMI_ROAM_TRIGGER_REASON_BTC".
Change-Id: Ib767bd6bcf005c187b0fb58986ad287fe8753c1b
CRs-Fixed: 3009788
To support BTC roaming, add a definition of BTC roam trigger
reason in ini roam_triggers. It goes to fw via roam_enable
trigger command (WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID)
Change-Id: I231a72ed98a74fb1b5ced12da7c3932af12d485d
CRs-Fixed: 3009787
When the connect request is pending on MLME and NB disconnect comes,
driver will wait for previous connect finish to process the disconnect
request. This delay the disconnect and may cause framework ANR.
Add code to fire the timeout event of active timers in various MLME
state. This will abort the connect request and get disconnect done fast.
Change-Id: I19cc03108c966c8f1efc0a554dfc59123dfe37f1
CRs-Fixed: 3026311
The PER default low rate thresholds configured is 20Mbps. This
will cause PER roam scan always after the 25 secs PER monitor
window since the 11b rates are lower than 20Mbps.
So disable PER roam when the connection/roaming to peer is with
cckm/OFDM rates to avoid frequent roam scans.
Change-Id: Iaae469804547c0f0682b66de3609b5cda4b4b577
CRs-Fixed: 2984973
OEM-SS sends ROAMBAND attribute via the vendor command
QCA_WLAN_VENDOR_ROAMING_SUBCMD_CONTROL_SET to host to
get current roam band value in the host.
Fix is to process ROAMBAND attribute and send roam band
value to upper layer.
Change-Id: I56b208d00b40d4d3e6d3658d23fa1073f6fe1146
CRs-Fixed: 3009753
Filter roam scan channel list or frequency list as per the
band received from upper layer via attribute
QCA_WLAN_VENDOR_ATTR_SETBAND_MASK and
QCA_WLAN_VENDOR_ATTR_ROAMBAND_MASK.
Change-Id: I4820bfc487949d8445f215a4779dd671925d001f
CRs-Fixed: 3009758
Whenever host Receives vendor command for SETROAMBAND, Host should
set PCL list as per roam band to fw so that FW can use updated pcl
list for further roaming.
Change-Id: I2f48833801b75f25aaf37ea479867b19477ceecb
CRs-Fixed: 3009751
Process the BAND_MASK attribute which comes to the
host via the QCA_WLAN_VENDOR_ROAMING_SUBCMD_CONTROL_SET
vendor command. Save the value of this band mask into
the RSO configuration structure.
Change-Id: I57ecc10912a38207ef478b38cf3add3c584dd2f4
CRs-Fixed: 3009749
When getting rnr IE information, instead of getting rnr pointer through
input parameter, we can just return rnr pointer.
Change-Id: I7215451d34164d40d6404d0a426f1cc30a143e15
CRs-Fixed: 3025191
This change removes the "delete pmksa on BMISS" logic in commit
I5d8ec9e9d4f8a44178b113d370799fe2bc0373fb.
Will handle the issue in new commit by OUI checking of AP.
Change-Id: I871999f8c473afdc75b774210044fc059fcd07b0
CRs-Fixed: 3021068
Currently, wmi_roam_pmkid_request_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I3fad4e4d7ceeb85c632723e161809bf980d5375f
CRs-Fixed: 3014248
Currently, wmi_roam_auth_offload_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I128db23077d423c5e5ecf27636bc3af35cbbc58f
CRs-Fixed: 3010419
In roam invoke request, if bssid is same as connected
bssid use connected frequency.
Change-Id: I0e205ffab002b80021bf6a615e4cfc0a723f0ba5
CRs-Fixed: 3022351
Populate assoc assoc link id in ML IE of an assoc request from
scan cache entry
Change-Id: I82b2b68f45411b1588c76ddd7ce9d21a93d972f3
CRs-Fixed: 3013684
-Extract new wmi struct added as part of MLO roaming
changes.
- Send EHT and MLO weightage percentage to FW via
WMI_ROAM_AP_PROFILE.
Change-Id: I6b3f1f62ef6ea323cd1b75f63a5c63c38b000f1f
CRs-Fixed: 3010039
Currently, wmi_roam_stats_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I5e336b01e1a2183e49b3e6eeb125c7c9fd0fd73c
CRs-Fixed: 3003125
When driver gets rrm request it tries to get country from beacon IE
and if country is not present in beacon IE it sets the current
country information from regulatory and does not sets the op class
which is not the right way.
If AP does not send country in beacon IE, driver should set
GLOBAL_OP_CLASS for rrm request.
Change-Id: I4797d03f38817ac580f3bfea08f1939dad4da5d1
CRs-Fixed: 2996921
For roam scanning, "specific channels list" is preferred over
"preferred channel list". Hence if user configured specific channels
then return invalid for ADDROAMSCANCHANNLES command.
Change-Id: I858eef5c990cedb4b12c21c1a00f34ff6b819849
CRs-Fixed: 3014609
Add 320MHz support in cm so that connection info can reflect
correct 11BE 320MHz bandwidth.
Change-Id: I44772472bf9e64af0e47ad71ca7d29d1ff90daed
CRs-Fixed: 3009311
The RRM request may have different country code with DUT internal
regdb configure, use country code from beacon IE if it is present,
otherwise use internal country code to verify op class of neighbor
report channel list.
CRs-Fixed: 2997474
Change-Id: I35a62d9791f08d26dd8a892739612eb422805523
When firmware sends Roam synch indication, driver changes the
roam offload state to ROAM_INIT and after set key completion is
received, RSO start will be sent. But if EAP/EAPOL fails and
disconnection is triggered then deinit command is sent without
setting roam scan mode to 0 with RSO stop command.
So change roam offload state to RSO_STOPPED if auth status is
connected in roam synch indication.
Change-Id: If8f56ce48500f6848fa917854b6252f8deb67c01
CRs-Fixed: 3005697
Populate mlo IE for assoc req with inheritance mode.
populate base rate, extend rate, capability, extend capability
and HT/VHT/HE/EHT capability based on mac context.
Change-Id: I5e1c350a9c5f23a63d11c6d4b5cdbf0422dd53e0
CRs-Fixed: 3000895
In case of STA + STA concurrency, enable roaming on
another interface only if STA + STA concurrency is in
DBS.
Add sanity for SCC concurrency also along with MCC
concurrency in cm_roam_switch_to_init.
Change-Id: I8787828b4b950c355e9bf70af58aad7779de3e9f
CRs-Fixed: 3001723
MLO sta needs mld mac and assoc link information to create bss peer
Get mld address and assoc link info from connection manager and pass
it to bss peer creation
Change-Id: Ie04d4eb01f1a039f068b32b6c53aa3e65c919518
CRs-Fixed: 2987483
Host driver enables hi-rssi roam trigger when STA roams to 6Ghz
AP. But hi-rssi trigger should be enabled only for 2.4Ghz AP
else it will cause frequent roams even though connected to
good candidate AP.
Disable hi-rssi roam when roamed to 6Ghz band AP.
Change-Id: I2ea2d06634963c1190aa1ca0d466b0873e36fbfe
CRs-Fixed: 3001090
Currently, wmi_roam_scan_chan_list_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I8f59f9ebfe1bbdc7ef37ccc1f10178fe8128e912
CRs-Fixed: 2990376
Currently, wmi_vdev_disconnect_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I2486cc3f63c4b35305b60ac55cd0a622c7185323
CRs-Fixed: 2990373
Currently, wmi_roam_blacklist_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I41d2ef6c228acd8f86f24107c02d11f1a8ac6dea
CRs-Fixed: 2990369
Currently, wmi_roam_event_id data is extracted and processing is
also done in wma. This is not inline with component model where
target_if takes care of data extraction and handover the extracted
data to corresponding component(connection mgr in this case).
Add changes to support the same. As the legacy CSR/LIM is not
yet converged, have a wrapper from connection mgr to wma to call
these legacy APIs.
Change-Id: I0e22bbccfe21200b90771a01f9ee7454f4ecb119
CRs-Fixed: 2990355
In ROAM DONE event handling, policy mgr restart sap is not invoked after
updating the connection info and hw mode info thus not restarting the sap
after roam sync
To solve this, adding policy manager check after updating the policy
manager connection table.
Change-Id: Ifb8a5eecb98c05166986052ccc32422dbbe3bef7
CRs-Fixed: 2991721
In cm_roam_switch_to_init(), vdev returned from the api
wlan_objmgr_get_vdev_by_id_from_psoc_debug() could be NULL.
Vdev is dereferenced without NULL check.
Validate vdev against NULL before dereference.
Change-Id: I42ff6943e568f16b78290a3310a8999d26c15af9
CRs-Fixed: 2996914
Add support to enable the "FT over DS" via
QCA_WLAN_VENDOR_ATTR_CONFIG_FT_OVER_DS vendor config
command.
This configuration helps the firmware to support
“FT over DS” instead of “FT over Air”
Change-Id: I493bf15f83bc39135aaeefa9d8ef328f0fc0cda3
CRs-Fixed: 2968680
During FT-EAP roaming after session timeout if the FTIE received
in the EAPOL of full EAP is improper, the supplicant would
disconnect the AP with the reason FTIE mismatch.
During this disconnection supplicant flushes all the existing PMK
cache entries and eventually the framework would add these cache
entries again (apparently, the current entry would be with the
older PMK). On this addition to the driver, there is no connected
profile and thus no MDID is associated to this PMKSA entry(AP1-PMK1).
Further, on the fresh (Full EAP) connection to the AP2 with the
same MDID, a new cache entry gets added and thus MDID from the
connected profile gets associated with the PMKSA cache entry. At
this point of time, there are two PMKSA cache entries (AP1-PMK1
without MDID and AP2-PMK2 with MDID).
Adding further, if the incorrect PMK (without MDID / stale entry)
i.e. PMK1 is given to the firmware on the RSO command for the
specific BSSID (here AP1) during roam, further roams shall be
calculated with this PMK1 and result in to the invalid pmkid
issue.
Thus, avoid this situation by removing that stale PMKSA entry in
the driver and this entry can be deleted only when it is associated
with the MDID. Driver on the new pmksa addition shall check for the
matching pmksa cache entry with the MDID and delete the earlier ones.
To associate the MDID, this commit checks for the same from the scan
entry of the BSSID, if there is no connected profile for the same
(this happened when the framework has added the cache entry when in
the disconnected state).
Change-Id: If81d66059173dda8d7a2940ca10dc96ef16e125c
CRs-Fixed: 2972115
Fils info is stored per vdev. In RSO scan mode command, in FILS
TLV, the next ERP sequence number to be used in the next FILS
connection is sent to firmware and is filled from the vdev fils
info. But after roam sych event is received, the erp sequence
number is not updated in the vdev fils info, causing FILS roaming
failure.
Update the fils erp sequence number to vdev fils info after
roaming.
Change-Id: Ibc624d9c4b0fc535c430881d3033169b002c8419
CRs-Fixed: 2988113
When HO failure happens or roam synch failure happens due to
north bound disconnect being already processed, host
transitions to RSO STOP-> Roam Deinit as part of the disconnect.
But after this roam abort is done, which tries to reset the
state to ROAM enabled. This causes roam init to be sent
immediately and in STA + STA scenario where STA2 roaming
is also enabled, it causes fw to go to invalid state
as STA 1 vdev is deleted.
Allow roam abort to transition to RSO Enabled only in
Roam Synch in progress state or Roam in progress state
and not in RSO deinit state.
Change-Id: I1f07d4a3068f719b8d05e111bc8d45626c6a2468
CRs-Fixed: 2969507
For STA+STA case, if disconnect is started on one vdev,
roaming is getting disabled on other vdev to fix this
skip updating RSO state.
Change-Id: If527555c3ea3d50516be3a743bb03914b3a2359f
CRs-Fixed: 2981648
Add partner links information in join request to proceed for ML
connection in best links selected in ML scoring.
Change-Id: I463264d9c78f3ab061d54a3245b15174d0940910
CRs-Fixed: 2961881
With connection manager enabled, the send IE request is
not sent after connection.
Add support to send set IE request after connection is
successful in connection manger.
Change-Id: I2f30eb67ba295e0ca416ccb40e12a376e0d7a47e
CRs-Fixed: 2976734