qcacld-3.0: Allow CSA to DFS channel only if PCL list has it

Currently, PCL returns all 5 GHz channel and SCC channel for SAP
when an ML-STA is present. But this may lead to a case
where the CSA request might be for a DFS channel which needs CAC.

This needs a dedicated mac and ML-STA can't move to MLMR in such
cases. When firmware attempts to move STA to MLMR from MLSR,
firmware asserts as the other mac is occupied by DFS SAP for
CAC operation.
So, allow CSA to a DFS channel only if the channel is present in
PCL list as it covers the supported channel list anyway. Fix
policy mgr table entries also by allowing SCC channels only.

Change-Id: I079fa6beea97fcd7c926ad4bd2bf928a0442d146
CRs-Fixed: 3484572
This commit is contained in:
Srinivas Dasari
2023-05-05 19:49:43 +05:30
committed by Rahul Choudhary
parent 874fc8ea91
commit db403bc9de
6 changed files with 39 additions and 15 deletions

View File

@@ -890,7 +890,8 @@ QDF_STATUS if_mgr_validate_candidate(struct wlan_objmgr_vdev *vdev,
*/
if (!wlan_vdev_mlme_is_mlo_link_vdev(vdev) &&
!policy_mgr_is_concurrency_allowed(psoc, mode, chan_freq,
HW_MODE_20_MHZ, conc_ext_flags)) {
HW_MODE_20_MHZ, conc_ext_flags,
NULL)) {
ifmgr_info("Concurrency not allowed for this channel freq %d bssid "QDF_MAC_ADDR_FMT", selecting next",
chan_freq,
QDF_MAC_ADDR_REF(bssid_arg.peer_addr.bytes));