qcacld-3.0: Fix 2.4 GHz ACS SAP started on STA 5 GHz indoor channel

Add ACS band check for indoor STA+SAP force SCC logic.
If SAP ACS band only support 2.4 GHz channels, do not move
to 5 GHz STA indoor channel for SCC.

Change-Id: I330dee9c35d2955cedc2b802a5bfb4d13ecb5d4c
CRs-Fixed: 3263428
This commit is contained in:
Liangwei Dong
2022-08-10 15:56:06 +08:00
committed by Madan Koyyalamudi
parent 54b6512c70
commit a212fe8e12

View File

@@ -4394,6 +4394,14 @@ void policy_mgr_check_scc_sbs_channel(struct wlan_objmgr_psoc *psoc,
NULL, NULL)))
sbs_mlo_present = true;
if (pm_ctx->hdd_cbacks.wlan_get_sap_acs_band) {
status = pm_ctx->hdd_cbacks.wlan_get_sap_acs_band(psoc,
vdev_id,
&acs_band);
if (QDF_IS_STATUS_SUCCESS(status))
policy_mgr_debug("acs_band: %d", acs_band);
}
/*
* Different band, this also mean that there is no other interface on
* on same band as csr_check_concurrent_channel_overlap
@@ -4419,7 +4427,9 @@ void policy_mgr_check_scc_sbs_channel(struct wlan_objmgr_psoc *psoc,
((wlan_reg_is_freq_indoor(pm_ctx->pdev, sap_ch_freq) &&
WLAN_REG_IS_24GHZ_CH_FREQ(*intf_ch_freq)) ||
(wlan_reg_is_freq_indoor(pm_ctx->pdev, *intf_ch_freq) &&
WLAN_REG_IS_24GHZ_CH_FREQ(sap_ch_freq)))) {
WLAN_REG_IS_24GHZ_CH_FREQ(sap_ch_freq) &&
!(acs_band == QCA_ACS_MODE_IEEE80211B ||
acs_band == QCA_ACS_MODE_IEEE80211G)))) {
status = policy_mgr_get_sap_mandatory_channel(
psoc, sap_ch_freq,
intf_ch_freq, vdev_id);
@@ -4492,14 +4502,6 @@ sbs_check:
!policy_mgr_get_ap_6ghz_capable(psoc, vdev_id, NULL))
allow_6ghz = false;
if (pm_ctx->hdd_cbacks.wlan_get_sap_acs_band) {
status = pm_ctx->hdd_cbacks.wlan_get_sap_acs_band(psoc,
vdev_id,
&acs_band);
if (QDF_IS_STATUS_SUCCESS(status))
policy_mgr_debug("acs_band: %d", acs_band);
}
qdf_mutex_acquire(&pm_ctx->qdf_conc_list_lock);
/*
* For SAP restart case SAP entry might be present in table,