From 00e90dda3895c43de09fabd25e323faf5cb799e1 Mon Sep 17 00:00:00 2001 From: Bala Venkatesh Date: Fri, 1 Mar 2019 17:50:50 +0530 Subject: [PATCH] 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 --- .../policy_mgr/src/wlan_policy_mgr_action.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/components/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c b/components/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c index a1937d747b..786f42b5c1 100644 --- a/components/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c +++ b/components/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c @@ -1432,6 +1432,7 @@ static bool policy_mgr_valid_sta_channel_check(struct wlan_objmgr_psoc *psoc, uint8_t sta_channel) { struct policy_mgr_psoc_priv_obj *pm_ctx; + bool sta_sap_scc_on_dfs_chan; pm_ctx = policy_mgr_get_context(psoc); if (!pm_ctx) { @@ -1439,8 +1440,16 @@ static bool policy_mgr_valid_sta_channel_check(struct wlan_objmgr_psoc *psoc, 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) && - (!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) || !policy_mgr_is_safe_channel(psoc, sta_channel)) { if (policy_mgr_is_hw_dbs_capable(psoc))