Графік комітів

334 Коміти

Автор SHA1 Повідомлення Дата
Surya Prakash Raajen
6438a661f5 qcacmn: Export wlan_mlo_peer_deauth_init as symbol
Add support to export wlan_mlo_peer_deauth_init as
symbol.

Change-Id: I384f47cf72ae30c7cddc9b1c52c1745c2f8e447c
CRs-Fixed: 3498865
2023-05-22 07:06:34 -07:00
Bing Sun
2d2f50fbf0 qcacmn: Consider vdev_id also along with link id for connected bitmap
When STA roams from SLO to SLO, only vdev 0 should be set as connected
link, while vdev 1 should not be set as connected link.

Currently vdev 1 is set as connected link incorrectly because its link
id is 0 which is the same with the link id from roam sync event.

link id is not a unique parameter. All are 0 by default.
vdev id should be used because it is a unique parameter.

Change-Id: I097b6f672c4656bfa2892f102e50998065463516
CRs-Fixed: 3497124
2023-05-21 11:38:57 -07:00
Guru Pratap Sharma
998426711a qcacmn: Add qualifier flags in link preference structure
Add qualifier flags in link preference structure which represent
bit is set for TLT or preferred link

Change-Id: I85a5fee0a804f6803fa52b5052bbcf635a613025
CRs-Fixed: 3482281
2023-05-18 14:23:09 -07:00
Shashikala Prabhu
528a63c3ce qcacmn: Decrement num vdevs in the MLD on vdev detach
Decrement number of vdevs in the MLD on vdev detach.

Change-Id: I9040ac46d60e2e8738f6b3eaf46db6b72bad729c
CRs-Fixed: 3483554
2023-05-17 08:35:07 -07:00
Jhalak Naik
d563641c08 qcacmn: Add support for handling MLO TSF sync capability
Add APIs to init the TSF sync capability based on
WMI_SERVICE_MLO_TSF_SYNC service bit sent from FW,
per ML group.

Change-Id: I5dad3fef7ebfa2af330b95d45cac3bef862f46f0
CRs-Fixed: 3491364
2023-05-16 11:43:24 -07:00
Bing Sun
84d654cc7c qcacmn: Initialize local variable before using it
Do not use API to do variable initialization job.
Otherwise there is built error in some platform.

Change-Id: I489057a2753bf7bf091e87b902efa833ea90ece9
CRs-Fixed: 3471557
2023-05-14 22:57:48 -07:00
Surya Prakash Raajen
0fcbe55b8d qcacmn: Drop multiple teardown if already in teardown
Drop multiple teardown requests if mlo group is already in
teardwown phase

Change-Id: Id07ed50c2845b69c79bf6ccc4a6436eab8898532
CRs-Fixed: 3458369
2023-05-14 13:37:58 -07:00
Surya Prakash Raajen
cb01519700 qcacmn: Trigger UMAC reset with mode1 SSR teardown
Add support to trigger UMAC reset with mode1 teardown request
for mode1 target recovery SSR.

Change-Id: Ib2d1679162a2084488081c76f6753287a6e4d5c4
CRs-Fixed: 3458369
2023-05-14 13:37:48 -07:00
Srinivas Pitla
ca2acbe6bc qcacmn: Implement reassoc framework
This change processes Duplicate Assoc req from MLO Station
This would reuse old link peers and populate assoc req IEs.

This will fail, if Assoc link is not same as previous,
and number of links are not same as previous assoc req
processing.

Change-Id: I6a8c412b0bc484e8eb64ca794e54e080c391f7f8
CRs-Fixed: 3465223
2023-05-14 11:07:41 -07:00
Himanshu Batra
25e0531edd qcacmn: Add fix to validate disconnect req for MLO STA
In case of MLO, to avoid race between ongoing connect and a new
disconnect, add fix to validate disconnect req for MLO STA

Change-Id: I4b27a06103ffce637738b1894c3bdcf46533043c
CRs-Fixed: 3493915
2023-05-14 11:07:21 -07:00
Krishna Rao
4f26b0e43f qcacmn: Allow modification of ML Reconfig delete timer
Allow modification of ML Reconfig AP remove delete timer at non-AP MLD
even if the AP removal is already in progress. The standard does not
currently provide for modification of the delete timer countdown at AP
MLD. However, if the AP MLD does carry out such a modification in
scenarios such as those given below, the non-AP MLD would be out of
sync with the AP MLD. Hence, we allow this modification.

Scenarios:
- At our AP MLD, if non-Tx VAP removal is ongoing, and subsequently
removal of its Tx VAP is requested with Delete Timer smaller than that
of non-Tx VAP, then non-Tx VAP's Delete Timer gets overridden with
that of the Tx VAP (this is due to an existing standards limitation
which doesn't allow change of Tx VAP role).
- There could sometimes be an issue with AP MLD due to which it might
incorrectly prolong the countdown by some margin in situations such as
an intervening CSA operation, etc.
- Some future 802.11be draft change may (or may not) allow
modification of the delete timer. (We may not guarantee
interoperability between an AP MLD implementing a future draft and a
non-AP MLD implementing the current draft, but the current
implementation change contributes towards best-effort
interoperability).

Change-Id: I6abc7565a5822bb7206c873716f1e3fc6a04416e
CRs-Fixed: 3466313
2023-05-12 23:09:09 -07:00
Amruta Kulkarni
c16aa9d544 qcacmn: Add handling for mlo link disable event
Add code changes to handle new wmi_mlo_link_disable_event
Extract the wmi event params and store in host defined
structure.

Change-Id: I6893bfa4da7b27f4a9b1ce2936057bb3576a317c
CRs-Fixed: 3458680
2023-05-09 01:48:41 -07:00
Gururaj Pandurangi
a11201af17 qcacmn: Clear peer-level negotiated T2LM mapping
Clear the peer-level tid-to-link mapping and set
direction to invalid if-
1) Host receives updated T2LM info through
critical update.
2) There are two T2LM elements received in beacons
and mapping switch time expires for first mapping.
Apply the second mapping.
3) There is a single T2LM element and its mapping
switch time expires. Apply default mapping.

Also, initialize peer-level mapping structure
when a new peer is created.

Change-Id: I1d06ec5f2f5aa398724213a3be08b6588f78c9b0
CRs-Fixed: 3435329
2023-05-04 13:50:11 -07:00
Srinivas Pitla
aff0f6c15a qcacmn: Fix ML peer use after free access
This change fixes accessing of ML peer after it is freed

Change-Id: I0bf02d4996b6db3bd4d5720f0e177bd8bf56868f
CRs-Fixed: 3474594
2023-05-03 18:53:45 -07:00
Amruta Kulkarni
586ea4f8b0 qcacmn: Fix to not send T2LM info multiple times
Currently host is sending t2lm info to firmware multiple
times when mapping switch time expires.
Fix is to check if new beacon/prb response has updated
mapping before sending the t2lm information.

Change-Id: I10182652bf77ede2dd94bedbc1c3a76a6bc3a7ff
CRs-Fixed: 3438997
2023-05-02 17:59:05 -07:00
Venkateswara Swamy Bandaru
ad2d3b59e7 qcacmn: Add EPCS related related files
Create wlan_mlo_epcs.h and wlan_mlo_epcs.c files for EPCS
feature.

Change-Id: I49774a5b3124fef0848308a3101d099efd449e8c
CRs-Fixed: 3476996
2023-04-29 01:38:19 -07:00
Deeksha Gupta
5bb13e5887 qcacmn: Add changes to notify userspace whenever T2LM updates
From the driver, call wlan_mlo_dev_t2lm_notify_link_update()
API whenever there is a link update happens using T2LM.

Change-Id: I51be6eafcb558bcf54919bead8c93227c33be194
CRs-Fixed: 3431540
2023-04-26 08:24:10 -07:00
D Harilakshmi
eea6497c2c Revert "qcacmn: Add support for handling MLO TSF sync capability"
This reverts Change-Id:	Ie8ca48f8f6065f02eefaea85ad967e32d09787fc

Change-Id: I3cdd1a5748189811222fb5ba18d8dcb9a740c253
CRs-Fixed: 3470139
2023-04-25 12:06:23 -07:00
D Harilakshmi
16ee9380a1 Revert "qcacmn: Initialize local variable before using it"
This reverts Change-Id: I1cf105adb72f890f167343d491fff832a2e16729

Change-Id: I62a0bd51dba6dbbad52bc6e9b87c2a898ba65828
CRs-Fixed: 3471557
2023-04-25 01:49:27 -07:00
Linux Build Service Account
09f783fa3f Merge "qcacmn: Initialize local variable before using it" 2023-04-21 12:47:51 -07:00
Linux Build Service Account
70cae165fc Merge "qcacmn: Add support for handling MLO TSF sync capability" 2023-04-21 09:15:34 -07:00
SHIVAM KUMAR
54e48589ba qcacmn: Update the T2LM status code as 2 bytes
In the T2LM context status code was used as 1 byte.
As per ieee802.11 spec, Status code value is 2 bytes.
Hence, add the changes in T2LM code to use the status
code as 2 bytes.

CRs-Fixed: 3464786
Change-Id: I4dd54d8a12f3bb1ca493ee0e9b1ec20b3590d97b
2023-04-20 11:34:14 -07:00
Guru Pratap Sharma
42a7f2f1b4 qcacmn: Adding and parsing of bandwidth indication element
Adding and parsing of bandwidth indication element sub IE

Change-Id: I20fca6ecf370d5d20f0e6e8e4f873bf57da3d181
CRs-Fixed: 3464120
2023-04-20 00:15:51 -07:00
Bing Sun
54c039bf07 qcacmn: Initialize local variable before using it
Do not use API to do variable initialization job.
Otherwise there is built error in some platform.

Change-Id: I1cf105adb72f890f167343d491fff832a2e16729
CRs-Fixed: 3471557
2023-04-20 09:14:10 +08:00
Jhalak Naik
7acca67784 qcacmn: Add support for handling MLO TSF sync capability
Add APIs to init the TSF sync capability based on
WMI_SERVICE_MLO_TSF_SYNC service bit sent from FW,
per ML group.

Change-Id: Ie8ca48f8f6065f02eefaea85ad967e32d09787fc
CRs-Fixed: 3470139
2023-04-19 15:10:17 +05:30
Gururaj Pandurangi
1958f62e8a qcacmn: Add new wrapper API to send peer-level T2LM
Add a new wrapper API to send peer-level negotiated
tid-to-link mapping to FW as the existing API to send
the mapping received from the beacon/probe response
uses ML dev context whereas the new API uses ML peer
context.

Change-Id: Ifada5600e9524585c69847f332ed0280fd316813
CRs-Fixed: 3423127
2023-04-18 20:04:44 -07:00
Deeksha Gupta
28f7114375 qcacmn: Add new APIs to get t2lm info from vdev or peer obj
Add new APIs to get t2lm info from vdev or peer obj

Change-Id: Id1d3bf9ec88cb14574803ac952304a3103397799
CRs-Fixed: 3431479
2023-04-18 20:04:33 -07:00
Shreedhar Parande
9ec10780d7 qcacmn: Fix primary UMAC configuration for bridge peer
Use primary UMAC derivation logic for bridge peer case.

Rename mlo_get_primary_umac_vdev() to
mlo_get_link_vdev_from_psoc_id()

CRs-Fixed: 3454734
Change-Id: Ic732cc6e85b6d9f0d7bc8cea041642164952e304
2023-04-18 12:10:54 -07:00
Srinivas Pitla
4d1ebd3402 qcacmn: Fix duplicate allocation for aid mgr
For MBSSID, aid mgr is allocated twice in
few corner cases of VAP create.

This change adds check, if aid mgr is allocated
by legacy code in vap create, aid mgr allocation
would be skipped

Change-Id: Ie44fab12badb5c9487ce3de333376e1885e727d0
CRs-Fixed: 3461883
2023-04-13 13:59:24 -07:00
Santosh Anbu
be9367e046 qcacmn: Avoid deadlock between ML AP VDEVs bring up
1. Start response is received for vdev-0 and continues processing
mlo_sync_complete for partner vdevs holding ap_ctx lock and waiting
on vdev_sm lock of partner vdev
2. During which one of the partner vdev completes CAC_WAIT and continues
processing mlo_sync_complete holding vdev_sm lock and
waiting on ap_ctx lock. This scenario is resulting in RCU_STALL.

The last vdev in MLD to receive start response is responsible for
dispatching MLO_SYNC_COMPLETE event all the partner vdevs and then to self
If vdev_up_bmap is set, then return.

Change-Id: I5ae7146eeba5154331f442f9987593044bde76b4
CRs-Fixed: 3457019
2023-04-13 13:59:13 -07:00
Himanshu Batra
1611ebc3f4 qcacmn: Add API to get primary link id from ML peer
Add API to get primary link id from ML peer

Change-Id: I530cfad70067cea1e8907bc9d409331091f89f85
CRs-Fixed: 3455058
2023-04-10 03:08:11 -07:00
Rohan Dutta
4600a3b873 qcacmn: skip a radio as primary-umac in MLO
Allow user configuration options to skip a radio as
primary-umac in multi-link operation.

Change-Id: Ic7c8dd5c1cf7855f4fb762daf9ace7cb82e02cac
CRs-Fixed: 3437922
2023-04-06 08:55:47 -07:00
Neha Bisht
9197d3b898 qcacmn: Update primary_umac_psoc_id field for new primary TQM peer
Update primary_umac_psoc_id field for new primary TQM peer

Change-Id: I397069a97ef0741b4c069302e59f4b9a2c005089
CRs-Fixed: 3451704
2023-04-05 02:04:33 -07:00
Chaithanya Garrepalli
7b4de01928 qcacmn: Change invalid ml_group_id and chip_id values
Change invalid ml_group_id and chip_id to 255 (uint8_t max)

Change-Id: I609aee14c7e6874bc78ddec3130a5a1226fc2af5
CRs-Fixed: 3443177
2023-04-04 16:30:46 -07:00
Kiran Venkatappa
bd5b5ef599 qcacmn: Handle mlo setup soc down from detach path
mlo setup soc down indication can be called from soc_stop and detach
path. Add logic to handle multiple calls by ignoring down if the state
is already cleaned up.

Change-Id: I6f5c11cc30f38423661063d2834a5b4efa088a49
CRs-Fixed: 3450300
2023-04-04 14:41:16 -07:00
Amruta Kulkarni
d325372a5c qcacmn: Fix to remove mutex warnings
Mutex cannot be acquired or released from
interrupt context.
To fix the warning in log, do not acquire
or release log in while stopping t2lm timer

Change-Id: Ie1e885b162a22e327d3260fecbd71153b947e11b
CRs-Fixed: 3444779
2023-04-04 06:44:21 -07:00
Aasir Rasheed
ca023bedc9 qcacmn: Register MLO get link state event handlers
Register and unregister the MLO get link state WMI event handler.

Change-Id: I7ac0a20949cc435907e433c279f14fd792415824
CRs-Fixed: 3432102
2023-04-01 09:15:27 -07:00
Uraj Sasan
ab8cf64ef0 qcacmn: Connect if pri_umac & assoc link are same
Some devices in WDS station mode have limitation when connected
in 3 LINK MLD association where the Primary umac selected and assoc
link should be same. Make sure to have a sanity check before
going for association in such cases.

If the primary umac and assoc links are set to be different then
the connection will be rejected.

Change-Id: If56461a140d4685ba279b1babe04709d919d1650
CRs-Fixed: 3443733
2023-03-30 23:15:34 -07:00
Krunalsinh Padhar
6f685b0907 qcacmn: send assoc resp only once for multilink
Do not send assoc response from wlan_mlo_peer_create for
multilink MLO connection. This makes sure that assoc resp
is invoked only once.

Change-Id: Id1acf20bd5e3e3beb16e0dc3073676c421825ae6
CRs-Fixed: 3443511
2023-03-30 18:30:29 -07:00
Shreedhar Parande
3bdf816735 qcacmn: Add VDEV up check before deriving bridge peer PSOC
If VDEV state is not up, skip such VDEVs for creating
bridge peer.

CRs-Fixed: 3439647
Change-Id: Ibd5eaff197ed0ce984915fc197bcd33b6e674e37
2023-03-30 10:44:02 -07:00
Srinivas Pitla
3edff068ab qcacmn: Primary TQM changes
1) select lower bw vdev link as primary umac for first station
2) Added support to increase group size to distribute stations
   on all PSOCs

Change-Id: Ic6762fbe8e6bc5feef70ddaaa118af121d38a1f4
CRs-Fixed: 3366442
2023-03-29 05:23:29 -07:00
Neha Bisht
1cfaea506b qcacmn: Move PTQM update API to appropriate file
Move PTQM update API to appropriate file

Change-Id: Ibc7c346beebd468913363ca6532ddaf8ada4704d
CRs-Fixed: 3438694
2023-03-25 22:03:05 -07:00
Paul Zhang
2859ea85d1 qcacmn: Add flag WLAN_VDEV_FEXT2_MLO_STA_TDLS
Add a flag WLAN_VDEV_FEXT2_MLO_STA_TDLS to mark whether
the vdev is used for TDLS or not.
It can use these API:
wlan_vdev_mlme_feat_ext2_cap_set(vdev, WLAN_VDEV_FEXT2_MLO_STA_TDLS);
wlan_vdev_mlme_feat_ext2_cap_clear(vdev, WLAN_VDEV_FEXT2_MLO_STA_TDLS);
tdls_vdev = mlo_get_tdls_link_vdev().

Change-Id: I89c50ad5321013993e798ebb5549c5015ac18969
CRs-Fixed: 3435963
2023-03-25 05:32:51 -07:00
Surya Prakash Raajen
3b2a716195 qcacmn: Detach dp soc and mlo ctx in soc down sequence
Detach dp soc and mlo ctx in mlo soc down sequence,
to remove the dependency with link teardown event

Change-Id: I2dc2f64398904a7c57f579029297d11d887979c4
CRs-Fixed: 3390199
2023-03-23 00:14:40 -07:00
sandhu
55435d303a qcacmn: Add WMI_SERVICE_11BE_TDLS_SUPPORT
1\ Add BE tdls fw support bit.
2\ Add link force reason per wmi changes

Change-Id: I0c297b0ea337d4060ac339c89679ec6059afc89f
CRs-Fixed: 3435979
2023-03-22 12:14:32 -07:00
Shwetha G K
40931af2b3 qcacmn: t2lm draft 3.0 changes
Changes to incorporate link mapping size in t2lm control
field of t2lm ie per draft 3.0

CRs-Fixed: 3431897
Change-Id: I61834258e6348b6483a86eb9e9217e3d5997c2c9
2023-03-22 07:33:20 -07:00
Uraj Sasan
975f28b2fc qcacmn: Limit Max number of assoc links for AP-MLD
Limit the AP-MLD association links to 3 currently.
More than 3 links will not be supported currently
for association.

Change-Id: I3cd6acda27d2f538172673a8d573367d77ee00b5
CRs-Fixed: 3435787
2023-03-21 17:33:05 -07:00
Balaganapathy Palanisamy
ca53ea9c0c qcacmn: Export MLO peer APIs
Export MLO peer APIs
wlan_mlo_peer_get_assoc_peer
wlan_mlo_get_mlpeer_by_mld_mac

Change-Id: I4d71cf0ad2214f63f0b4c2be6a63f33fd407d1bf
CRs-Fixed: 3437752
2023-03-21 07:51:02 -07:00
Srinivas Pitla
68a9eec276 qcacmn: Prevent ML peer creation with duplicate MLD address
This change searches for ML Peer across all MLDs, if ML peer
is found in other MLDs, it will reject MLO peer creation
and rejects association

Change-Id: Ifcb150615d840f536d92734e2ef4f86080f5bb6b
CRs-Fixed: 3425900
2023-03-20 00:23:46 -07:00
Vinay Adella
c847ddd958 qcacmn: Clear partner link state before starting to connect
This is needed in case the STA is configured with more MLO links
than the AP. It will make sure only links that the AP allows
are in use in the STA MLO as well.
Also check for mlo flag on vdev before sending link connect and
updating partner bitmap.

CRs-Fixed: 3423668
Change-Id: Iceec3cf7e8dc7e5bc0a29c56b990faef4f741158
2023-03-19 22:53:08 -07:00