qcacld-3.0: Allow SAP to move from one DFS channel to another DFS

Allow the SAP to move from DFS channel to another DFS channel in
STA+SAP SCC concurrency scenario.

Change-Id: Ie2091bbdd758ed7f3bef1757ff42bbe5034fe908
CRs-Fixed: 2408892
This commit is contained in:
Bala Venkatesh
2019-03-01 17:50:50 +05:30
committed by nshrivas
parent 82bcd76a11
commit 00e90dda38

View File

@@ -1432,6 +1432,7 @@ static bool policy_mgr_valid_sta_channel_check(struct wlan_objmgr_psoc *psoc,
uint8_t sta_channel) uint8_t sta_channel)
{ {
struct policy_mgr_psoc_priv_obj *pm_ctx; struct policy_mgr_psoc_priv_obj *pm_ctx;
bool sta_sap_scc_on_dfs_chan;
pm_ctx = policy_mgr_get_context(psoc); pm_ctx = policy_mgr_get_context(psoc);
if (!pm_ctx) { if (!pm_ctx) {
@@ -1439,8 +1440,16 @@ static bool policy_mgr_valid_sta_channel_check(struct wlan_objmgr_psoc *psoc,
return false; return false;
} }
sta_sap_scc_on_dfs_chan =
policy_mgr_is_sta_sap_scc_allowed_on_dfs_chan(psoc);
if (wlan_reg_is_dfs_ch(pm_ctx->pdev, sta_channel) &&
sta_sap_scc_on_dfs_chan) {
policy_mgr_debug("STA, SAP SCC is allowed on DFS chan %u",
sta_channel);
return true;
}
if ((wlan_reg_is_dfs_ch(pm_ctx->pdev, sta_channel) && if ((wlan_reg_is_dfs_ch(pm_ctx->pdev, sta_channel) &&
(!policy_mgr_is_sta_sap_scc_allowed_on_dfs_chan(psoc))) || !sta_sap_scc_on_dfs_chan) ||
wlan_reg_is_passive_or_disable_ch(pm_ctx->pdev, sta_channel) || wlan_reg_is_passive_or_disable_ch(pm_ctx->pdev, sta_channel) ||
!policy_mgr_is_safe_channel(psoc, sta_channel)) { !policy_mgr_is_safe_channel(psoc, sta_channel)) {
if (policy_mgr_is_hw_dbs_capable(psoc)) if (policy_mgr_is_hw_dbs_capable(psoc))