Revīziju grafs

542 Revīzijas

Autors SHA1 Ziņojums Datums
Amruta Kulkarni
0e0878c654 qcacld-3.0: Parse T2LM IE in Association Response
Add support to parse t2lm ie from association response frame
and store in mlo dev context. Once all links are up
the t2lm configuration will be applied.

CRs-Fixed: 3449605
Change-Id: Icd1f3c9bbdfbe1c2a8bfe119d92d6e686e21a7fd
2023-05-24 21:39:49 -07:00
Srinivas Dasari
6c5a645cbe qcacld-3.0: Fetch freq from roam_sync ind for non-11BE platforms
Currently, mlo_roam_get_link_freq_from_mac_addr() returns 0 for
non-11BE platforms. Valid freq is present in roam_sync indication
and return the same.

Change-Id: I7156adadae9303257bf96e91e4cb8b5d11706104
CRs-Fixed: 3502610
2023-05-23 19:53:39 -07:00
Bing Sun
b1586c23fb qcacld-3.0: Do not release vdev reference if vdev is NULL
In wlan_cm_get_associated_ch_width, if vdev is NULL, which means
reference is not gotten. do not call wlan_objmgr_vdev_release_ref.
Otherwise there is QDF ASSERT.

Change-Id: Id1cc2be3869ad555ebeb1c91a4b5f75d499e70ac
CRs-Fixed: 3503877
2023-05-22 20:14:55 -07:00
Bing Sun
8fae636f18 qcacld-3.0: Fix OWE MLO roaming
When roaming from OWE SLO to OWE MLO, host considers it as SLO roaming,
although FW sends both assoc link and partner link information to host.

Currently host adds partner link to sta_ctx->wlan_connected_links in
mlo_roam_update_connected_links, since it already receives partner
link information from FW. Then RSO fails to translate to stop state in
cm_fw_roam_complete because partner link is not up.

To make RSO state translation work, host need add partner link to
sta_ctx->wlan_connected_links when partner link connection is
triggered, which is mlo_roam_prepare_and_send_link_connect_req.
Do not add partner link to sta_ctx->wlan_connected_links in
mlo_roam_update_connected_links.

When roaming from OWE MLO to OWE MLO, host triggers disconnection in
partner link, which should not enable roaming in connected STA.

Change-Id: I99938a0805d60287eb2714e5d271579ac2fb4aeb
CRs-Fixed: 3498822
2023-05-22 18:29:41 -07:00
abhinav kumar
5e17372c8c qcacld-3.0: Post disconnection DUT should connect in max BW
Scenarios are:
    1. Connect to AP in HE80/HE160
    2. Set the bandwidth to 20 MHz (SET_MAX_BANDWIDTH 1)
    3. Disconnect from AP
    4. Reconnect to AP.
    5. AP should be connected to the max bandwidth.

To fix this, host should update channel bandwidth to
the max supported bandwidth on disconnection.

Change-Id: I139d082ca4e4950d760f1da074dbcc021fb8a9e1
CRs-Fixed: 3491677
2023-05-18 09:36:26 -07:00
Amruta Kulkarni
282ef0220d qcacld-3.0: Fixes in populate T2LM frame and clear negotiation
1. While populating t2lm ie use dynamic memory allocation
instead of static and free after usage.

2. If AP rejects T2LM action req frame, sends status code
anything other than 0(success) or 134(preferred mapping),
clear ongoing negotiation.

Change-Id: I50fbf34f3e95bbeaf13c2e1a74374b22837dffa8
CRs-Fixed: 3496677
2023-05-16 09:15:50 -07:00
Srikanth Marepalli
ccc0cee97d qcacld-3.0: Send the 6 GHz channel in WMI_ROAM_CHAN_LIST
When the Intra band INI is enabled and the STA connected in 6 GHz
band the channel count and frequency are not sent in the
WMI_ROAM_CHAN_LIST command as the band is not defined or unknown.
As a result of this DUT is unable to trigger partial roam scan in
the current connected 6 GHz channel and does a full roam scan.

Add the 6 GHz band check in the Intra band enabled case.

Change-Id: I765c233d1e6bf71cab186041ebd7df2293be6f05
CRs-Fixed: 3469197
2023-05-14 13:37:24 -07:00
abhinav kumar
6f8d32955c qcacld-3.0: Update roam scan freq list on connection failure
Host sends roam scan offload channel list via WMI_ROAM_CHAN_LIST
to FW after a successful connection.

The host creates a ROAM_SCAN_CHAN list with BSSID entries present
in the scan database. If the connection to an AP fails due to
Auth/Join/Assoc timeout, Host removes the AP entry from the Scan
database, assuming it’s not reachable (to avoid reconnecting to the
AP as it's not responding). Due to this, FW does not include the
frequency(s), for which the connection failed, in roam scan.

Fix is to store the frequency(s) of all the candidates to which the
driver tried connection in the rso config during connect resp failure
and use the same list to update the roam channel list on the top of
entries present in scan db.

Change-Id: I7a4bb3961a64fcf987cb6f2be87b6475363d500a
CRs-Fixed: 3486154
2023-05-11 09:00:22 -07:00
Srikanth Marepalli
59bf42fbdb qcacld-3.0: Notify TDLS disable to FW only after deleting the peers
With the commit(Ic425cc065a29bbc444531f523eaccb14014ae47a) driver
enqueues the TDLS peer deletion as part of roam sync indication
and then enqueues the TDLS disable notify to firmware. But before
this driver is processing the TDLS enable notify which is part of
add_sta and then the TDLS disable is getting processed and
notified to firmware, which results in disabling the TDLS after
roam.
The correct sequence during roam should be delete the TDLS peers,
followed by TDLS disable notify to FW and then TDLS enable notify
to FW.
Driver already take care of deleting the TDLS peers as part roam
sync indication callback. This change calls the TDLS disable
notify API only after deleting the TDLS peers during roam.

Change-Id: I58ef78852290c95e6709e6aa1b0671916322625f
CRs-Fixed: 3486585
2023-05-11 06:31:07 -07:00
chunquan luo
cae0b75f8b qcacld-3.0: Change roam background scan abort log
Roam background scan abort, driver print roam result
failed, but current ap is still connected.
Change roam abort background scan log instead of fail.

Change-Id: Ia10f010e8c353b12bdbbe0407c8e3d30b1ea45c2
CRs-Fixed: 3469290
2023-05-09 19:26:55 -07:00
Abhishek Singh
6d513e3e0d qcacld-3.0: Fix cm req accessed outside cm req or CM lock
Caller of wlan_cm_get_rnr, uses the cm request data without
lock.

Fix it by passing a local memory to wlan_cm_get_rnr to get
a copied data to use.

Change-Id: I574de5391dd02c1603e7c9c4b79b58d45e6e7739
CRs-Fixed: 3483870
2023-05-09 13:33:23 -07:00
Amruta Kulkarni
86e9bf96dd qcacld-3.0: Add support for t2lm send action req frame
Add support to handle mlo link disable event and
send t2lm action frame.

Change-Id: I0b620c17fbb89b89d4d03cd55b1a6f41d28d6c2b
CRs-Fixed: 3470960
2023-05-09 01:48:21 -07:00
Amruta Kulkarni
8e9674f1a0 qcacld-3.0: Send roam invoke request if no scan candidate found
For ML-AP, if fastreassoc command is received and scan
candidate is not found in host scan db.
Host will still send roam invoke request to FW, FW will
perform scan.

Change-Id: I8157cf396e3e0c19607d990307e07d31e879a2d4
CRs-Fixed: 3474257
2023-05-08 06:42:58 -07:00
Amruta Kulkarni
24a9f574fb qcacld-3.0: Clear previous peer level t2lm negotiation
When handling T2LM action request frame, clear the previous
ml peer level t2lm negotiation before applying new tid mapping
to FW.

Change-Id: Ie7f7a28fb7cf886778cd697605352c4ff47d18fd
CRs-Fixed: 3487089
2023-05-08 04:07:26 -07:00
Vijay Raj
fb8e6d4f3e qcacld-3.0: Remove unused legacy logging for BTM event
Diag logging is used for connectivity logging of
BTM event.

Remove unused legacy connectivity logging mechanism for
BTM events.

Change-Id: I65dc5fe5f071fd74eeed2433894a238318ce76ab
CRs-Fixed: 3470401
2023-05-05 01:56:23 -07:00
Vijay Raj
07156c60b8 qcacld-3.0: Remove legacy roam connectivity logging mechanism
Diag logging is used for connectivity logging of roam
candidate event and roam roam result event.

Remove unused legacy connectivity logging mechanism for
roam candidate and roam result events.

Change-Id: I826107fc764abdeec7408dbb6c52e580d1fe32f4
CRs-Fixed: 3470206
2023-05-05 01:56:17 -07:00
Jyoti Kumari
a551e66960 qcacld-3.0: Check whether vdev supports mlo cap or not
Scenario: There is dual sta present in HBS mode in DUT where one
sta is on wlan0 interface and it has 11be capability, so it has
formed ML connection with ML AP. The another STA is present on
wlan1 interface and this STA also supports 11be capability. But
as per current design, host supports 11be with MLO. It doesn't
support 11be alone. Also 11be with MLO is supported only in wlan0
interface. So for another connection which are present in wlan1
interface, even if it supports 11be host will downgrade to 11ax
and form connection.
During the formation of second connection, host will sends peer
create command(WMI_PEER_CREATE_CMDID) to firmware. Before sending
this command, host checks only eht cap in cm_create_bss_peer()
and fills the mld_mac addr. Because of that, DP assumes that
there is an ML connection and it creates MLD peer on wlan1
interface. Due to this, it causes ping failure on wlan1 interface
as the ICMP response might be coming on incorrect peer and it's
getting dropped.

As part of fix, check whether vdev is mlo supported or
not in cm_set_peer_mld_info()

Change-Id: Ieed67aa2735d200a140f9e771d791b3b9308a0f9
CRs-Fixed: 3474874
2023-05-04 11:34:42 -07:00
abhinav kumar
076551fd20 qcacld-3.0: Update subband CCA busy info to HDD
In case of wide band scan request, FW sends subband CCA busy info
to host via a new tlv wmi_cca_busy_subband_info added in existing
event WMI_CHAN_INFO_EVENTID.

Fix is to store CCA busy info coming from FW to HDD context.

Change-Id: Ic4b439ed1c270badbe265dc8543dc6d6a1612fab
CRs-Fixed: 3469467
2023-05-03 04:57:43 -07:00
Vijay Raj
a2cce9674c qcacld-3.0: Remove unused legacy logging for Roam scan events
Diag logging is used for connectivity logging of roam scan
start event and roam roam scan done event.

Remove unused legacy connectivity logging mechanism for
roam scan start and roam scan done event.

Change-Id: Icaebf0486081508e56937ee13bb8d4d33a342d79
CRs-Fixed: 3470140
2023-05-01 12:09:30 -07:00
Amruta Kulkarni
adef8d5e58 qcacld-3.0: Stop t2lm timer during disconnection
Add support to stop t2lm timer during sta disconnection
and clear t2lm mapping.

Change-Id: I59e724331eda8b67fd1405031bdb00d12805ad09
CRs-Fixed: 3479496
2023-04-29 07:18:10 -07:00
Jianmin Zhu
eb33a28d70 qcacld-3.0: Check vdev up instead of connected when chang RSO
When roaming happens, vdev CM changes from CONNECTED to ROAMING first,
vdev still keeps up, then RSO becomes ROAMING_IN_PROG later,
so need permit RSO cmd during CM ROAMING state.

Change-Id: If4902dcff6b8b4f169fb43da4a889b09e1c2875d
CRs-Fixed: 3482158
2023-04-28 17:39:21 -07:00
Jianmin Zhu
d3bd22dfe0 qcacld-3.0: Abort RSO enable for not all mlo links up
While mlo wlan0 sta connecting with vdev0 up and vdev1 not up yet, wlan1
vdev2 disconnected, enabled roaming on other connected sta, then vdev0 RSO
enabled before vdev1 up, mlme session for vdev1 wasn't created in F/W. When
roaming happened, vdev1 peer wasn't deleted, F/W asserted.

To fix it, for mlo sta, follow legacy sta,  if not all of requested links
are up, abort RSO operation except deinit on it.

Change-Id: I7026614ab91cf0a603c97e962433dc5139b210dd
CRs-Fixed: 3471655
2023-04-27 17:13:43 -07:00
Vinod Kumar Pirla
c72b4146c6 qcacld-3.0: Use ML BSS peer MLD address for PMKSA operation
If PMKID present in AP expires, AP rejects the PMKID based association.
Current design is to clear the cache using BSSID/MAC address of link
in such cases to let a fresh SAE authentication to happen.
But host driver stores PMKSA with MLD address for ML BSS.
Adapt to the same and update PMKSA cache clear APIs to use
MLD address instead of link address.

Use the API which gives ML BSS peer's MLD address for
MLO VDEV or else legacy address for non MLO VDEV to remove
the correct entry in PMKSA cache based on association.

Change-Id: I4af9814e377737eef4a54fdf15db9f6bac38d954
CRs-Fixed: 3433723
2023-04-26 18:24:38 -07:00
Deeksha Gupta
e3f3adbce6 qcacld-3.0: Add support to get Async tid to link response info
Add the following fixes to get Async TID to link map info:
1. Add APIs to register and unregister the T2LM callback.
2. Add HDD callbacks.
3. Send T2LM info, when receiving TID-to-link mapping response
   from the associated AP MLD.

Change-Id: Ia98605b3244b24cc3cac41d2decf22ff6aa82f88
CRs-Fixed: 3431518
2023-04-26 08:23:53 -07:00
David Oladunjoye
a89ab838b2 qcacld-3.0: r-TWT related changes
Need to add support for rTWT feature in host. Host needs to define rTWT
ini, and set rTWT bit in EHT Cap. rTWT ini will allow users to
enable/disable rTWT feature. We define rTWT ini and function to get ini
value. EHT Cap  will advertise rTWT support to peer. To populate EHT Cap
we must validate rTWT is supported in driver. To do this, we check rTWT
and bTWT params.

Changes are as follows.
1) Define rTWT ini
2) Get rTWT ini value
3) Get rTWT support
4) Set rTWT bit in EHT Cap

Change-Id: Id5676c6b7c3d4f48a0010f2e9ae369d9dfa710e9
CRs-Fixed: 3446652
2023-04-19 22:12:00 -07:00
abhinav kumar
38a0fbbf01 qcacld-3.0: Save initial connection ch width in mlme
To process get_cu_for_each_subbw request from upper layer,
host needs to trigger scan for initial connection ch width
on every get_cu request.

Change-Id: I2bbf20c9207f46983b14dcd95bf81f32cfd7c060
CRs-Fixed: 3466958
2023-04-19 20:16:07 -07:00
Gururaj Pandurangi
bc5b48f9de qcacld-3.0: Add fixes for peer-level T2LM negotiation
Add the following fixes in case of peer-level tid-to-link
mapping negotiation.
1) Copy peer-level mapping to wlan_prev_t2lm_negotiated_info
from wlan_t2lm_onging_negotiation_info after negotiation
is completed as the former structure is used for mapping
reference.
2) Currently, the Host sends peer-level negotiated mapping
to FW, followed by an action frame response to the AP.
Reverse this order to align with the design flow.

Change-Id: I0e0db95c539cfd9aee27b481683e3e807a1f712e
CRs-Fixed: 3423125
2023-04-19 10:36:31 -07:00
Amruta Kulkarni
7eca35c643 qcacld-3.0: Handle t2lm action response frame
Add support to handle t2lm action response frame.

Change-Id: Ia7072d3050f6ee6eb078233c6129e532144740f4
CRs-Fixed: 3468073
2023-04-19 00:01:33 -07:00
Srinivas Dasari
a87a7cde2a qcacld-3.0: Extract all link probe rsps from ML probe rsp
Firmware sends beacon/probe response of the roam candidate to host
through roam_frame_event when it chooses a candidate which needs
SAE authentication to be performed. This is needed as the host
checks if corresponding scan entry is present in the scan db
before starting SAE authentication trigger.
But in MLO roaming case, firmware might send ML probe response
and the scan entry corresponds to re-assoc link might be present
in the per STA profile of the ML probe response.
So, extract all per-STA profiles and add them to scan db.

Also, use this API to extract and add the link specific
ML probe responses for the ML probe response received
in roam sync indication if extraction via roam info fails due
to some reason(currently it may fail if fw roams to a link but
got ML probe rsp from other link as link_info is not
present roam info).

Change-Id: I6c67927732a54568dfe618bdecaca8f37515e203
CRs-Fixed: 3454834
2023-04-17 04:34:57 -07:00
Srikanth Marepalli
6feba28f2a qcacld-3.0: Delete TDLS peers before sending TDLS disable to FW
As part of commit(Id680d0f6193740b24e78115ac7dc7be26e28acff)
during roam driver notify the TDLS STA about disconnection.
During this driver sends the TDLS disable command to Firmware
without deleting the TDLS peers. As a result of this in FW the
TDLS delete instance is called and TDLS handle is marked as NULL.
And later in driver the TDLS peers are getting deleted and now
the teardown update command is sent to Firmware. But in FW as
the TDLS handle is already NULL, it has asserted and crashed.

Fix is to delete the TDLS peers in driver and update the teardown
to Firmware and then send the TDLS disable command to Firmware.

Change-Id: Ic425cc065a29bbc444531f523eaccb14014ae47a
CRs-Fixed: 3455117
2023-04-14 23:40:26 -07:00
David Oladunjoye
866d289758 qcacld-3.0: Add stub implementation when TWT is not enabled
Add stub implementation when TWT is not enabled.

Change-Id: I70230f1534a746effdcc5f9635af9d3ebe2926d6
CRs-Fixed: 3466514
2023-04-14 23:40:21 -07:00
Srinivas Dasari
6f89438a64 qcacld-3.0: Clear assoc vdev MLO flag upon roaming to non-MLO AP
Currently, MLO vdev flag is not cleared even when STA roams to a
legacy AP from an ML AP. This causes sending invalid info to
kernel as the os_if APIs still treat the connection as MLO
connection though STA roams to an ML AP.
Clear the assoc vdev MLO flag to avoid this.

Change-Id: Iaf013aebd1fe794202abdeeaa6b5db14987b6103
CRs-Fixed: 3466501
2023-04-14 04:39:39 -07:00
Amruta Kulkarni
8ffbb6dd25 qcacld-3.0: Handle T2LM teardown action frame
When a T2LM teardown action frame is received clear the
previously negotiated peer level t2lm mapping and update
FW with established mapping if valid or default mapping
applies.

Change-Id: I7951c76fe3d6c1bf231300675f2b954ff7697b39
CRs-Fixed: 3420421
2023-04-12 03:20:00 -07:00
Srinivas Dasari
12c760b99b qcacld-3.0: Don't clear MLO vdev flags while cleanup the link
Currently, MLO flags are cleared before issuing disconnect on
the link vdev when DUT roams to a single link ML-AP. But these
flags get cleared as part of disconnect handler and not supposed
to be cleared anywhere else.
Clearing these flags before issuing disconnect on link causes
sending disconnect done indication to kernel as the flags
got cleared, which make the vdev as non-MLO. This race condition
is possible when a disconnect is queued from userspace on
link vdev while one disconnect gets processed on it(due to
single link roaming).

Change-Id: I8206c1b8197bf26ad852eafb631c8585bc749846
CRs-Fixed: 3439175
2023-04-12 03:19:55 -07:00
Jianmin Zhu
9228383500 qcacld-3.0: Wait HO_FAIL event when roam sync failed
Host received deauth and roam sync back-to-back after WoW, sent vdev
RSO_DISABLE before RSO_STATUS event, F/W assert.
1. Host received deauth event, limSmeState went out of link est state, sent
async event of cm_send_sb_disconnect_req.
2. Host received and handled roam_sync, CM_RSO: vdev0:
[ROAM_RSO_ENABLED(2)] --> [ROAM_SYNCH_IN_PROG(5)], roam sync failed since
not in link est state.
3. Host aborted roaming, ent back to CM-VDEV-0: CONNECTED, removed roaming
cmd from serialization queue.
4. Host sent RSO stop to F/W.
5. Host handled cm_send_sb_disconnect_req, dropped RSO stop during roam
sync, called cm_disconnect_continue_after_rso_stop without waiting for
RSO_STATUS event.
6. Host sent vdev RSO_DISABLE and vdev stop before received RSO_STATUS
event, F/W asserted.

To fix it, if host roam sync failed, need wait for HO_FAIL event and handle
it before handling other cmd, can't remove roaming cmd from assoc vdev
serialization queue to unblock other pending cmd before handling
HO_FAIL, just send assoc link RSO stop to F/W one time with
REASON_ROAM_SYNCH_FAILED, then wait for 2 events: FW_ROAM_EVT RSO status
and HO_FAIL. then handle HO_FAIL, at last remove roaming cmd, unblock other
cmd and trigger disconnect.

Change-Id: I03dd3ed21007ee67613c2d90b5567348c240f375
CRs-Fixed: 3445233
2023-04-10 20:48:40 -07:00
chunquan luo
6bb8117d77 qcacld-3.0: Roam trigger log optimize
Reserve log like "[18:11:32.086000] [ROAM_TRIGGER]: VDEV[0]"
for common roam and special roam.

Some customers are used to get log from serial port, reserve
this log can better support debug.

Change-Id: I79565c87cfcf42ae5de3d6895c27666d2676370b
CRs-Fixed: 3451003
2023-04-10 03:07:45 -07:00
Surya Prakash Sivaraj
90e60e7e05 qcacld-3.0: Rename and cleanup wlan_cm_set_offload_ssid()
Rename wlan_cm_set_offload_ssid() to
wlan_cm_update_offload_ssid_from_candidate().

Also, add separate APIs for get and set roam_offload_bssid.

Change-Id: I64d6661a265aeafde7c09fa59bc94cf7a49baf0b
CRs-Fixed: 3445337
2023-04-05 02:04:07 -07:00
Srinivas Dasari
8765c8c3b8 qcacld-3.0: Cache scan entries of all OWE links
Currently, OWE assoc link scan entry is cached post roam success
but link scan entry is not cached. This causes join failure while
non-assoc link tries to get connected post assoc link roam.
So, cache scan entries of all links while processing first link
itself to avoid these failures.
This also fixes adding scan entry properly for non-MLO OWE
cases as well.

Change-Id: I3188f98f2682acceaae28f226e6c8abe0c81fff9
CRs-Fixed: 3437632
2023-04-04 16:30:20 -07:00
Srinivas Dasari
b11049f6ad qcacld-3.0: Fetch link of a peer from src mac addr of probe rsp
Currently, when ML probe response is received in non-assoc link
channel, right link_id is not passed to the link_probe rsp
generation API as it loops through all available per STA profiles.
It fails when probe rsp received link id is given as corresponding
per STA profile is not present in the probe rsp.
Skip calling the ML probe rsp generation API for
the link id on which it's received.

Change-Id: Ib636c6d5909b7f2760c7e57ec4f14f8ed060a910
CRs-Fixed: 3428521
2023-04-04 14:40:47 -07:00
chunquan luo
4261a44358 qcacld-3.0: Clear roam buffer data before write
Since we fill roam information into a ring buffer, when ready to
write a buffer, we need clear the dirty data first.

Change-Id: I94dac785803f15451df816c303f8a594ee688ff7
CRs-Fixed: 3437152
2023-04-01 07:06:13 -07:00
Amruta Kulkarni
dea51e434d qcacld-3.0: Fix for disconnect after roam abort
In roam invoke scenarios, if FW fails to roam
it will send roam invoke failure.
Until roam invoke failure is received FW is trying
to roam.
Currently if FW aborts roam, host will trigger
disconnect and rso stop is sent due to this FW
is unable to retry roaming.

Fix is to not trigger disconnect at roam abort
and wait until FW sends roam invoke failure.
To handle this store roam invoke params in rso cfg.

Change-Id: I32eeda70ef9f4d8a049fec53053f9e0c6eb36e51
CRs-Fixed: 3433320
2023-03-31 06:06:05 -07:00
Rahul Gusain
64f4ef5843 qcacld-3.0: Use MLD address for auth frames in SAE ML roaming
SAE authentication happens with MLD address rather than link
addresses as it's common authentication for all links in an ML
connection. But OTA exchange of authentication frames happens
with a chosen link address from available links.
As userspace takes care of the SAE authentication, host driver
has to replace the rx SAE auth frame SA with peer MLD and DA with
self MLD address. Similarly for tx SAE auth frames, replace self
SA with link address and DA with peer link address.

Current change is to support the same for roaming case. Fetch the
MLD from scan cache corresponds to link address provided in roam
auth event and replace as mentioned above.

Change-Id: Ide15caa122f78301391b5ea891e2e6eaf4af8974
CRs-Fixed: 3441483
2023-03-30 09:00:55 -07:00
David Oladunjoye
73687ef87e qcacld-3.0: Replace obsolete TWT function
Obsolete TWT functions are still called in driver. As part of
removal, Remove these functions and use component function.

Change-Id: I9f8b4186753ec9d446399be9e1cfc03a63a17391
CRs-Fixed: 3294868
2023-03-29 19:55:06 -07:00
David Oladunjoye
10141185b3 qcacld-3.0: Add static inline headers for twt
Implement static inline function when TWT is not enabled.

Change-Id: I671495be9e5b0828b154826757382806eb500310
CRs-Fixed: 3285179
2023-03-29 19:55:01 -07:00
Jianmin Zhu
79c8fc615d qcacld-3.0: Fix wrong self mac in pe session after roam to legacy
When roam from mlo to legacy, self mac need change from link addr to
interface addr.
When roam from legacy to mlo, self mac need change from interface addr
to link addr.
Self mac in vdev is updated by mlo_roam_update_vdev_macaddr already,
self mac in pe session need update too.

Remove useless self_mac in roam_offload_synch_ind.

Change-Id: I7bdfe35d5a219cb2c0eba30a4995babc8ac6199a
CRs-Fixed: 3442785
2023-03-29 11:29:18 -07:00
chunquan luo
39dd13c819 qcacld-3.0: Add flag to filter special vendor roam log
Since special vendor roam log is not need for common roam,
add flag to filter the log.

Change-Id: I5eb47f68048a48f817037e5e98d3e7fe51ee6565
CRs-Fixed: 3437627
2023-03-29 09:45:08 -07:00
Vijay Raj
72dfd6a38f qcacld-3.0: Add events to modify Beacon miss disconnection logging
Disconnection is logged even if keepalive indication is
sent to host after firmware sending final beacon miss
event.

Add two new roam failure reason code to indicate roam
failure and send final beacon miss.

ROAM_FAIL_REASON_NO_AP_FOUND_AND_FINAL_BMISS_SENT: Indicate
roam failure when no ap is found and final beacon miss
is sent.

ROAM_FAIL_REASON_NO_CAND_AP_FOUND_AND_FINAL_BMISS_SENT:
Indicate roam failure when no candidate ap is found and
final beacon miss is sent.

Change-Id: I6d7a6034f8be5388dd35dd3c05fecfd40a8d888d
CRs-Fixed: 3437060
2023-03-27 23:37:08 -07:00
Surya Prakash Sivaraj
83299d06fc qcacld-3.0: Add support for AKM25
Add support for FT-SAE-EXT-KEY AKM.

Change-Id: Ia013a81f67d204fed486ab130b3480654703f59c
CRs-Fixed: 3406625
2023-03-27 11:20:51 -07:00
Surya Prakash Sivaraj
d24935c6f4 qcacld-3.0: Set proper SSID in the external auth req
In SAE roam offload case, the SSID of the candidate is
retrieved from the roam candidate frame, and this SSID
is sent to the userspace for initiating SAE authentication.

However, if roam candidate frame is an MBSS beacon and the
candidate BSSID is present in non-tx profile, still the
SSID from tx profile is sent to the userspace, which leads
to authentication failure.

To fix this:
a) Save the BSSID in addition to the SSID during the roam
candidate frame extraction.
b) During roam auth offload event, get the SSID from the
scan cache only if the existing BSSID cache(filled in #a)
doesn't match with the BSSID received in roam offload event.

This would prevent the time expensive scan table lookup
operation for non-MBSSID cases.

Change-Id: Ib8cc0408cba7ccfc8c2b3e2d657f7b40f8a4d421
CRs-Fixed: 3437698
2023-03-25 19:09:05 -07:00
Amruta Kulkarni
2514a9e8bd qcacld-3.0: Add roaming source and bssid check before issuing disconnect
When fast reassoc command is received with bssid
and channel frequency set to zero, if no candidate
found, STA DUT should disconnect.
Currently STA is disconnecting from current AP but
the also when FW aborts roam.

To fix this add additional check for roaming source and bssid.

Change-Id: I6ee3f5cea6ef3976b9cc5549ab113e4af30484d7
CRs-Fixed: 3441770
2023-03-25 16:07:12 -07:00