نمودار کامیت

605 کامیت‌ها

مولف SHA1 پیام تاریخ
Surya Prakash Sivaraj
12056db6c3 qcacld-3.0: Handle RSO for dual sta roam not supported case
Currently, even if dual sta roam support is not present, RSO
is being enabled for both the STA connections. This leads to
asserts in firmware.

To fix, do not initialize RSO state machine for the second STA
connection, if RSO is enabled for the first STA.

CRs-Fixed: 3612478
Change-Id: I9b7698770dd05139f6323846d78e931db58ce4a8
2023-09-21 08:35:34 -07:00
Vijay Raj
94f55718b5 qcacld-3.0: Add frequency to peer for Connectivity Logging
Introduce support to add frequency to peer in
order to enable Connectivity diag logging for
datapath related events

Change-Id: I634ddc0206530f1039a37fd60643877b2fdf7e87
CRs-Fixed: 3596250
2023-09-20 23:59:12 -07:00
Vijay Raj
95cc423b9d qcacld-3.0: Add support for T2LM request/response event for logging
Add support for T2LM request/response event for
connectivity logging.

For T2LM request/response band, token, status, tx_status and
is_rx parameter are logged for the event.

Change-Id: I5d65c99896ec26b67b763679b105036975a938d5
CRs-Fixed: 3607151
2023-09-18 15:31:50 -07:00
Aravind Kishore Sukla
0042f5db0e qcacld-3.0: Add check for rf_test_mode to connect in MLO open mode
Add check for rf_test_mode to connect in MLO open mode

Change-Id: I41a62c56a42d2e734e6baae35c57bd1f3317f3ad
CRs-Fixed: 3611148
2023-09-18 15:31:25 -07:00
Aasir Rasheed
8f0dc327a9 qcacld-3.0: Prevent key install before receiving from userspace
Currently, host receive the key in one thread
while simultaneously installing keys in a scheduler thread.

This change aims to resolve the synchronization issue by allowing key
installation only in one thread.

Change-Id: Ia2429db2a48eadf00574eaec99fb0c47f39c6d42
CRs-Fixed: 3609681
2023-09-17 09:03:42 -07:00
Pragaspathi Thilagaraj
9894e86760 qcacld-3.0: Send RSO stop for assoc vdev during link switch start
When link switch happens internal disconnect sequence happens on
that vdev, but RSO stop is not sent for assoc vdev during below
scenario:
1. Disconnect gets triggered from userspace when VDEV-0 is in
middle of link switch.
2. At the time of the disconnect, vdev-1 is assoc vdev and vdev-0
is link vdev.
3. For the disconnect request, first disconnect serialization is
posted for assoc vdev(0) and then for link vdev(1).
4. After the serialization is posted, link switch connection
succeeds and vdev-0 again becomes assoc vdev and vdev-1 becomes
link.
5. Now, serialization posted in #4 gets dequeued and assoc vdev
gets cleaned up first.
6. Link vdev-1 gets cleaned up next, and it posts RSO STOP for
assoc vdev and waits for response. However, vdev-0 is already
cleaned up.
7. Therefore, vdev-1 gets stuck in wait-for-rso-stop response
and leads to active command timeout.

RSO start for this assoc vdev will be sent after link switch
is complete when keys are installed.

So send RSO stop for assoc vdev during link switch start

Change-Id: I5563dacef6610fc7039b1d05798edf4b6364eebd
CRs-Fixed: 3612704
2023-09-17 02:35:18 -07:00
Surya Prakash Sivaraj
8005c96788 qcacld-3.0: Cache standby link beacon during 3link roam
If FW roams with 3-links, assoc beacon and link beacons
are sent by the firmware in roam sync frame event.
However, driver parses the per-sta link info of the
assoc beacon and caches the individual per-link probe
responses only if the link beacon is not present.

Therefore, in 3-link roaming cases, if both assoc link
ML probe response(assoc link + one partner link) and link
probe/beacon are received, then the per-sta profile present
in the ML assoc link probe is not saved to the scan cache
and this leads to bss retrieval failures.

To fix this, parse per-sta profile and generate individual
probe responses directly from the roam sync frame event for
both link and assoc beacon/ML probe responses. This caches
all the partner links individually.

Also, set the assoc state for the standby link bss after the
completion of roam sync processing on assoc vdev. This prevents
the age out of the standby link scan entry.

Change-Id: Ib349aedb826d5037c6015434557d909477e87e5a
CRs-Fixed: 3613058
2023-09-14 01:33:15 -07:00
Jyoti Kumari
00a4ef030d qcacld-3.0: Get sorted ACS channel list
Get sorted ACS channel list to select channels for ll_lt_sap

Change-Id: Id653136321a22ec091c5b4fe167911f8ea1d4b38
CRs-Fixed: 3567422
2023-09-14 01:33:07 -07:00
Srikanth Marepalli
96216f5fe6 qcacld-3.0: Send the user configured MFP state in RSO command
Currently the user configured MFP state that comes from the
userspace in connect request is not handled or processed.
Instead the RSN caps from assoc IE of connect request is inter-
sected with AP RSN caps and sent to Firmware using RSO command.
This RSN caps is used in FW in selecting a roam candidate, which
was causing the cross AKM (eg:SAE -> PSK) roam fail.
Hence, use the user configured MFP value in sending the RSN caps
to Firmware.

CRs-Fixed: 3604149
Change-Id: Ibf2d7bfba6cd17a98b9e4b1c8c468046ab2e7e62
2023-09-13 14:19:25 -07:00
Rahul Gusain
59b19dff23 qcacld-3.0: Code refractor for ML debug id
Currently, in some API such as
"wlan_cfg80211_tdls_add_peer_mlo", when driver gets vdev, it is
MLO vdev, so it uses WLAN_MLO_MGR_ID ID, but when it tries to put
the vdev, since disconnection happens and mlo flag is cleared,
so it uses WLAN_OSIF_TDLS_ID ID which is non-ML vdev.
This causes release of vdev reference from different id for which
it never takes reference and result in crash.

To fix this, use same debug id throughout function. For that,
generalize the get_ml_vdev API by passing the debug id as
argument to the function.

Change-Id: I903185ec9b64cc67cc2e0c595ba88b7b0ca8ded2
CRs-Fixed: 3603012
2023-09-13 14:19:19 -07:00
Gururaj Pandurangi
faeed38706 qcacld-3.0: Reset BTM abridge flag for Cert cases
For BTM certification cases, FW is unable to roam to
testbed AP BSS due to scoring logic. Reset the BTM
abridge flag that is used to enable FW to select
candidates based on score.

Change-Id: I29b6e1b5dea969263eb263103c6d2c10d5047f20
CRs-Fixed: 3591574
2023-09-12 14:40:12 -07:00
Vijay Raj
454a96b1bd qcacld-3.0: Add support for MLO specific data for RRM logging
Add support to add band info for Neighbor report request,
Neighbor request response, Beacon report request and
Beacon report response logging for MLO usecase.

Band info will indicate the band of the link involved
in MLO connection.

Change-Id: I758be63f085be46244f727a842806fb27660e8dd
CRs-Fixed: 3583958
2023-09-11 07:02:14 -07:00
Vijay Raj
2ee8079a6b qcacld-3.0: Add support for MLO setup event logging
Introduce support for MLO setup event for connectivity
logging.

For MLO setup event bssid, band, link_id and status
are sent as part of logging.

Change-Id: Idd16b4ec7eeb245a5ce99b383bd40f169f579ebc
CRs-Fixed: 3605678
2023-09-09 19:31:43 -07:00
Vijay Raj
d2132108e7 qcacld-3.0: Add support for MLO specific data for BTM logging
Add support to add band info for BTM Query, BTM request
and BTM response logging for MLO usecase.

Band info will indicate the band of the link involved
in MLO conenection.

Change-Id: I5ba9fff874da52aa36af6ced97f065d9976665e2
CRs-Fixed: 3583657
2023-09-09 03:36:12 -07:00
Gururaj Pandurangi
f30be587ea qcacld-3.0: Offload BTM to FW even with RSO disable
For certain cert cases, roaming is disabled through
CAPI. Supplicant sends RSO disable to Host and the Host
disables BTM offload as well as part of roam disable.
But, for cases like load balancing, Firmware has the
logic to handle BTM requests with disassociation
imminent bit set to 1, by sending an event to Host to
trigger a T2LM request action frame rather than a BTM
response. Thus, set BTM offload bit even when roaming
is disabled to allow FW to handle BTM request frames
instead of supplicant.

Change-Id: Iaa0cbbce62dbb76518880ef2470d6d0819c501db
CRs-Fixed: 3590733
2023-09-09 03:35:53 -07:00
Vijay Raj
873554a96c qcacld-3.0: Modify Roam Scan start and Roam candidate info logging
Modify the api cm_roam_trigger_info_event() in order to add
band info for Roam scan diag logging for MLO usecase.

Modify the api cm_roam_candidate_info_event() to indicate
MLO connection during Roam candidate logging.

Change-Id: Ib42e8362ee091716110c2aa3513a6f6b5653681f
CRs-Fixed: 3582383
2023-09-08 04:10:23 -07:00
Vinod Kumar Pirla
46288c20e1 qcacld-3.0: Defer SB disconnect if link switch in progress
Link switch request received on assoc VDEV(V0) and to process it
MLO manager will change this to link VDEV and another VDEV(V1) to
assoc VDEV. If AP sends deauth while link switch is in progress
then it will gets serialized first on partner VDEV (V0 - which is
the VDEV on which link switch is in progress) and then on
assoc VDEV(V1).

Upon link switch completion MLO manager will restore the VDEV
flags to original state and disconnect queued to serialization
will be activated and it first processes assoc VDEV(V0) as
when it is queued to serialization flags are not restored.

As part of disconnect complete on assoc VDEV(V0) kernel is notified
and this leads to framework sending set MAC address. Though assoc
VDEV(V0) is disconnected, partner VDEV (V1) is still not in INIT
state. So sending set MAC address while in non-INIT state will lead
to FW assert.

Defer any SB disconnects while link switch in progress, MLO manager
will queue these disconnects when link switch is completed and flags
are properly restored so that assoc VDEV is not serialized first.

Change-Id: Idd8afbdc74177eda429256b4761512e0d1caa949
CRs-Fixed: 3601964
2023-09-08 04:09:58 -07:00
Vinod Kumar Pirla
f3e27022c3 qcacld-3.0: Enhance set link for nlink connection
Existing code for sending set link request to FW will
get VDEV list from MLO manager and sets the VDEV's
MAC address matching userspace request to active and
non-matching as inactive. However for three link
connection this misses the third link which doesn't
have any VDEV so userspace control for this link is
not available.

Enhance the logic to allow userspace to send MAC addr
of the standby link to manage link active/inactive.

Change-Id: Iba5d976349917b1b4f7146381cb0f49218cf4ed8
CRs-Fixed: 3600291
2023-09-08 04:09:50 -07:00
Vijay Raj
4eb27f1d6a qcacld-3.0: Add MLO support for MGMT event logging
Introduce MLO support for Management event logging.

Add band info to indicate the bands of the link
requested for setup during Association/Disassociation
request frame.

Modify bssid info to send only the bssid of the AP
associated to the frame exchange link.

Add MLD mac address support during Association/disassociation
event logs.

Change-Id: I84e53a486ae5ae3f4f2f3f9c42658e1392e64b13
CRs-Fixed: 3603786
2023-09-08 04:09:44 -07:00
Chunquan Luo
f1aabdebab qcacld-3.0: Update Roaming AP BSSID to user space
Currently, roam stats don't cache Roam AP BSSID and don't update
to user space.
If roam successful, save R_AP and P_AP, if roam failed, save P_AP
and save C_AP if exist, then update to user space.

CRs-Fixed: 3580957
Change-Id: Ib0048c34701a7750f9261ba5cbd1bc65eb41582c
2023-09-08 04:09:32 -07:00
Gururaj Pandurangi
f510c0f98f qcacld-3.0: Clear the T2LM info received from assoc response
In certain conditions, AP can send T2LM IE in assoc response
frame. Clear this T2LM mapping information during
disconnection to avoid run to run variations.

Change-Id: Iace0e615481c143bb22dcda1d9f97deb15f44009
CRs-Fixed: 3591466
2023-09-08 04:09:25 -07:00
Pragaspathi Thilagaraj
ca252bd78b qcacld-3.0: Update link_id and vdev_id to link info context
After roaming to 3 Link MLO AP, the link info context is updated
based on link id, but this will cause issue if roamed AP has
different link ids.

So reset the link info context upon roaming and update the link_id
and vdev_id for all the links.

Change-Id: I6e88ed623fa6d068fe7a5ec572cfa132ec72ea6a
CRs-Fixed: 3603945
2023-09-08 04:09:13 -07:00
Aravind Kishore Sukla
0d61022ac6 qcacld-3.0: Add comments for the change fixed
Add comments for the fix added to validate security
for 11be connection and Reject partner link based on
security check.

Change-Id: I1b8d5e91e0e07c6c311b8c6ca6427c3fabd6b219
CRs-Fixed: 3605255
2023-09-05 15:13:35 -07:00
Srinivas Dasari
db9052a4e7 qcacld-3.0: Add support for 320 MHz SAP + concurrent STA roaming
Check if the roamed channels lead to DBS/SBS with existing
320 MHz SAP after handling roam sync indication.

Change-Id: I3c816378f93b505c59da7aa9c4cfcc6352f5dbb3
CRs-Fixed: 3601348
2023-09-04 22:35:16 -07:00
Ashish Kumar Dhanotiya
a0ad067df0 qcacld-3.0: Add support for audio transport switch vendor command
Based on the new requirement, add support for vendor command
to switch the audio transport bearer.

Change-Id: I1d3b74c18976b0927ebba228b73af5a10cc67391
CRs-Fixed: 3582788
2023-09-04 18:34:20 -07:00
Liangwei Dong
84250fda26 qcacld-3.0: Disable force SCC check for link switch disconnection
If disconnection event is for link switch, do not trigger SAP
force SCC check. And if link switch is in progress, skip
the force SCC workqueue.
And if link is in middle of switching, do not run link force logic.

Change-Id: I4a8bf59ff16dca2caf560eb36e1bc58f7d6a919b
CRs-Fixed: 3590814
2023-09-01 21:01:00 -07:00
Amruta Kulkarni
dd4b6d0ea6 qcacld-3.0: Add null check for mlo sta context
Currently mlo sta context is accessed without null
check in mlo api's.

Add null check for mlo sta context in mlo_check_if_all_links_up
and mlo_check_if_all_vdev_up api's.

CRs-Fixed: 3601823
Change-Id: Iea3f1daf1d9aef40efdff21a02e8a3c23494bfad
2023-08-31 11:00:14 -07:00
Amruta Kulkarni
fc51b6ff4f qcacld-3.0: T2LM timer changes
Code changes to run the T2LM timer in FW instead of host.

Change-Id: Ic66da9e0311121d2ae23c600c97f225c56aa215f
CRs-Fixed: 3595388
2023-08-31 11:00:07 -07:00
Pragaspathi Thilagaraj
6da3613393 qcacld-3.0: Update self mac address from roam sync indication
After roaming to 3 link AP, update the MLO manager with the
self link address received from the roam synch indication.

Change-Id: I6258abe7bb9e140307c30fee8701ef12a618d9f1
CRs-Fixed: 3591487
2023-08-30 01:37:23 -07:00
Pragaspathi Thilagaraj
455e268ee3 qcacld-3.0: Skip RSO updates during link switch
When link switch is in progress, the assoc vdev mlo link flags
get toggled and the flag is reset to actual value once the link
switch is complete.

During this time, if concurrent SAP channel switch happens, then
the RSO init/start happens on link vdev. This causes invalid
sequence of state changes on assoc vdev & roam commands get
sent on link vdev.

So avoid any RSO state changes on MLO vdev when link switch is
in progress.

Change-Id: I46af3ee511e2156ce1be032852aebdb18d4c7c02
CRs-Fixed: 3588178
2023-08-22 11:06:53 -07:00
Deeksha Gupta
8903d71a2b qcacld-3.0: Handle T2LM mapping validation for standby link
Currently, if AP is sending T2LM action frame with standby
link mapping then STA host is rejecting the T2LM mapping and
sending status as WLAN_T2LM_RESP_TYPE_DENIED_TID_TO_LINK_MAPPING
to AP.

Fix is, STA handles T2Lm mapping if AP sends on standby link.

Change-Id: I8492fbaff7bffb32afa142bb11767e6202137cf5
CRs-Fixed: 3589843
2023-08-22 08:07:51 -07:00
Aravind Kishore Sukla
30cac76709 qcacld-3.0: Reject partner link based on security check
For multi link connection there might be the case where
rsnxe of the AP is not present on the link vdev.
This causes the link vdev alone to downgrade to 11ax
mode and assoc vdev is in 11be dot11 mode.
So for vdev with ML peer, the dot11mode is 11ax,
which causes abnormal firmware behavior.

Reject the partner link that doesn’t pass the security
check and validate the next available partner link.
if none of the partner link passes the security check,
proceed connection with single link.

Change-Id: I07239f06e2fa166cb472e1f24d66b44929d58cbf
CRs-Fixed: 3583522
2023-08-21 10:57:42 -07:00
Pragaspathi Thilagaraj
94762fd248 qcacld-3.0: Enable TDLS on link vdev after roaming
After roaming TDLS is enabled only on associated vdev and
it remains disabled on link vdev. This causes TDLS peer
update to be sent with TDLS disabled on that vdev.

Enable TDLS on link vdev after roaming.

Change-Id: I7fe42ea2eebe02ae282965cfa6116f1e35de4490
CRs-Fixed: 3583163
2023-08-11 19:23:33 -07:00
Pragaspathi Thilagaraj
9bbeb71bf3 qcacld-3.0: Clear current connected ML AP keys upon roaming
Clear the current connected ML AP keys for all the links
including standby links after roaming to new AP.

Change-Id: I9cc548ba21648d1a1c123d15d1c8524dba141ea5
CRs-Fixed: 3581733
2023-08-11 14:59:05 -07:00
Pragaspathi Thilagaraj
e25cd1cafb qcacld-3.0: Allow 3 link roam sync based on fw capability
Currently while processing roam synch indication event, the
setup links info is filled for WLAN_UMAC_MLO_MAX_VDEVS(2). But
with 3 Link MLO support, it will reject the roam synch
indication event.
So allow 3 Link roam synch based on fw capability and ini
intersection for number of links supported. Use
wlan_mlme_get_sta_mlo_conn_max_num() API to get max allowed
links for connection.

Also replace array length declaration for setup_links having
WLAN_UMAC_MLO_MAX_VDEVS and use WLAN_MAX_ML_BSS_LINKS instead.

Change-Id: I1982e50f5036ba4eacbab50044444a7238cd1073
CRs-Fixed: 3573066
2023-08-11 14:58:54 -07:00
Amruta Kulkarni
ecf1fa04c5 qcacld-3.0: Add frame length in T2LM api
Pass frame length in t2lm api's and
add boundary check while parsing.

Change-Id: Id48cd77710e6f0ea922e2dea989dc599dc9325c5
CRs-Fixed: 3579186
2023-08-11 04:35:13 -07:00
Pragaspathi Thilagaraj
46a19eb3f7 qcacld-3.0: Add support to handle WMI_ROAM_SYNCH_KEY_EVENTID
Register event handler for WMI_ROAM_SYNCH_KEY_EVENTID.

Store the roamed AP keys for all links in crypto module
Add CM function pointers to iterate and store the parsed
keys for each link.

Change-Id: Icee5eeea23724a7d69cf895023e75e856d88a685
CRs-Fixed: 3577927
2023-08-11 04:35:08 -07:00
Pragaspathi Thilagaraj
72c6ae5928 qcacld-3.0: Don't enable roaming till vdev is up during link switch
During link switch, as part of the disconnect sequence, roaming
is enabled on the other connected vdev and this causes RSO start
to be sent before vdev up is sent on that vdev. This causes
abnormal firmware behavior.

So don't send enable roaming till the vdev is up in case of link
switch. RSO start will be sent as part of the install key sequence.

Change-Id: Ib9fe520ec3d2b5c91fdba192934418e235082a31
CRs-Fixed: 3581618
2023-08-11 01:23:54 -07:00
Amruta Kulkarni
b37953bc1c qcacld-3.0: Add check for valid t2lm ie direction
When validating t2lm ie, check if the direction is valid.

Change-Id: I5eaa5e67653960647ebb65a57690692dd95ad6f3
CRs-Fixed: 3575491
2023-08-10 18:22:06 -07:00
Liangwei Dong
6db9e28a32 qcacld-3.0: Fix wrong bitmap to update inactive link
Use link bitmap to update inactive link bitmap instead of
link id in Roam indication.

Change-Id: Ibdffbf7a4ab06f34affb0f4b1876c9dbbe95c395
CRs-Fixed: 3583587
2023-08-10 05:13:03 -07:00
Jianmin Zhu
af2244d20a qcacld-3.0: Avoid MLO RSO start before link vdev up
For mlo initial connect, vdev0 connected first, when received assoc rsp,
then up vdev0 at last trigger vdev1 connect, set wlan_connected_links
bitmap for vdev1.

For owe 1x roaming, vdev1 link is set up on host side, when handle roam
sync, we need stop RSO first to finish EAPOL, then trigger vdev1 connect,
set wlan_connected_links bitmap for vdev1.

Above design has race condition issue:
vdev0 becomes up (T1) before set wlan_connected_links bitmap for vdev1
(T2), if enable RSO for vdev0 happens between T1 and T2 for some reason
like vdev2 connect/disconnect, mlo_check_if_all_vdev_up return true, so
mlo vdev0 RSO is enabled in F/W before vdev1 up, which is unexpected.

Fix proposal for both initial connect and roaming:
For mlo initial connect, vdev0 connected first, when received assoc rsp,
we know whether other links need set up, can set wlan_connected_links
bitmap at that time, then up vdev0, at last trigger vdev1 connect.

For owe 1x roaming, vdev1 link is set up on host side, when handle roam
sync, we need stop RSO first to finish EAPOL, then set
wlan_connected_links bitmap for vdev1, at last trigger vdev1 connect.

Change-Id: I9abe48dbf7781be80ab5ec99ec42e6324a676283
CRs-Fixed: 3576584
2023-08-08 18:38:37 -07:00
Liangwei Dong
334ee752ef qcacld-3.0: Check nlink service bit enabled
Check wmi_service_n_link_mlo_support bit enabled for
API ml_is_nlink_service_supported.

Change-Id: I0f2a3cb55f84549ac064c43d8b0a2f00738a0ddd
CRs-Fixed: 3572844
2023-08-08 18:38:32 -07:00
Liangwei Dong
4615224b77 qcacld-3.0: Add link switch notifier for concurrency check
Add link switch notifier callback to check concurrency
allow or disallow for link switch request.
If the target link is force inactive, disallow the link switch
to it.

Change-Id: Iac8b443c85bbf7c4b714b62e8f3d0968a3ad6226
CRs-Fixed: 3579454
2023-08-08 15:26:49 -07:00
Liangwei Dong
0d56659ab1 qcacld-3.0: Skip link switch disconnect/connect event
If disconnect/connect is for link switch, do not notify
the link switch disconnect and connect event to link force
handler. That is not ML STA connection down. After link
switch connect completion, driver will re-evaluate the
link force state.

Change-Id: Id7463fa9ba80c4cf150ca069c297e226e8208010
CRs-Fixed: 3567072
2023-08-08 15:26:43 -07:00
Amruta Kulkarni
3bc1dd9b5f qcacld-3.0: Add check for T2LM direction
Check if t2lm direction is valid before accessing the t2lm structure.

Change-Id: I3a92999f7cb9c84190c67e41564feec03dae56cb
CRs-Fixed: 3578829
2023-08-08 06:10:34 -07:00
Pragaspathi Thilagaraj
bd699c287b qcacld-3.0: Modify mlo supported bands based on roam_band_bitmap
roam_band_bitmap is updated based on the vendor command from
userspace, when NCHO band configuration is received.
Update the MLO support_link_band sent to firmware as part of the
RSO commands to intersect the user configured roam_band_bitmap
value.
This will restrict the firmware to advertise only those bands
sent in the WMI_ROAM_MLO_CONFIG_CMDID command, and firmware
will advertise only links corresponding to the configured
bands in the reassociation request.

WMI_ROAM_MLO_CONFIG_CMDID will be sent when
QCA_ATTR_ROAM_CONTROL_BAND_MASK attribute is received in roaming
subcmd: QCA_WLAN_VENDOR_ROAMING_SUBCMD_CONTROL_SET as part of
NCHO set band, since RSO stop, followed by start is sent during
set band to update PCL to firmware

Change-Id: Iba34411956bdb09502623bac9a51fb4663c632a8
CRs-Fixed: 3580693
2023-08-07 05:06:46 -07:00
Liangwei Dong
20b3165adb qcacld-3.0: Add link removal flag in link info
At present, the link removal flag is in vdev object, but vdev may
repurpose to other link, the link removal flag has to be in link
info struct.
Add link removal flag in link info data struct and remove
it from vdev struct.

Change-Id: I6116e89f2bb065979f4e405ef0fac386abebcf17
CRs-Fixed: 3572836
2023-08-04 06:53:18 -07:00
Liangwei Dong
675a0cf799 qcacld-3.0: Don't force inactive link if no left active vdev
If no active vdev links are left after force inactive for concurrency,
then do not send the force command. Add standby link check for this.
Add handle special 3 Ports case to force inactive potential MCC ML STA
link.

Change-Id: If35c19b554bd1a4725c3498f9228e0273a031b6c
CRs-Fixed: 3572829
2023-08-04 06:53:06 -07:00
Vinod Kumar Pirla
863127e879 qcacld-3.0: Enhancements for link switch disconnect
For link switch disconnect do not send the deauth/disassoc frame
OTA and avoid flow pool unmap as to avoid flushing the memory
allocated for the packets sent OTA for which status is not yet
received.

Once the status is received DP flushes them via the
non-transitioning link.

Change-Id: If2ec024f19730f6ebebf0428f912bfa8dbbddea9
CRs-Fixed: 3557779
2023-08-02 04:53:31 -07:00
Srinivas Girigowda
25fd32eab3 qcacld-3.0: Allow connected monitor and legacy STA connection
If the connected monitor is configured and then legacy STA is trying to
associate to Access point, check is enforced to reject the connection
request if STA + Monitor concurrency is in place.

Legacy STA + monitor mode is not allowed, whereas Legacy STA +
connected monitor should be allowed.

Hence, Fix this issue by checking for STA + Monitor mode concurrency
only if local_packet_capture (Connected monitor) is not enabled.

Change-Id: Ia4fc74ab2ec91e6d66ebba23614268173da1e7bb
CRs-Fixed: 3574577
2023-08-01 20:28:21 -07:00