diff --git a/components/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c b/components/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c index 030dc0845b..db9b6621ee 100644 --- a/components/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c +++ b/components/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c @@ -4456,8 +4456,10 @@ bool policy_mgr_is_restart_sap_required(struct wlan_objmgr_psoc *psoc, connection[i].in_use && (connection[i].mode == PM_STA_MODE || connection[i].mode == PM_P2P_CLIENT_MODE); - is_same_mac = connection[i].mac == mac && - connection[i].freq != freq; + + is_same_mac = connection[i].freq != freq && + (connection[i].mac == mac || + !policy_mgr_is_hw_dbs_capable(psoc)); if (is_sta_p2p_cli && is_same_mac) { restart_required = true; diff --git a/core/sme/src/csr/csr_util.c b/core/sme/src/csr/csr_util.c index 5e6d31886e..e00c48d106 100644 --- a/core/sme/src/csr/csr_util.c +++ b/core/sme/src/csr/csr_util.c @@ -1077,7 +1077,7 @@ uint16_t csr_check_concurrent_channel_overlap(struct mac_context *mac_ctx, sme_debug("intf_ch:%d sap_ch:%d cc_switch_mode:%d, dbs:%d", intf_ch_freq, sap_ch_freq, cc_switch_mode, - policy_mgr_is_dbs_enable(mac_ctx->psoc)); + policy_mgr_is_hw_dbs_capable(mac_ctx->psoc)); if (intf_ch_freq && sap_ch_freq != intf_ch_freq && !policy_mgr_is_force_scc(mac_ctx->psoc)) { @@ -1102,7 +1102,7 @@ uint16_t csr_check_concurrent_channel_overlap(struct mac_context *mac_ctx, sap_ch_freq <= wlan_reg_ch_to_freq(CHAN_ENUM_2484)) || (intf_ch_freq > wlan_reg_ch_to_freq(CHAN_ENUM_2484) && sap_ch_freq > wlan_reg_ch_to_freq(CHAN_ENUM_2484)))) { - if (policy_mgr_is_dbs_enable(mac_ctx->psoc) || + if (policy_mgr_is_hw_dbs_capable(mac_ctx->psoc) || cc_switch_mode == QDF_MCC_TO_SCC_WITH_PREFERRED_BAND) intf_ch_freq = 0; @@ -1167,7 +1167,6 @@ uint8_t csr_get_connected_infra(struct mac_context *mac_ctx) return connected_session; } - bool csr_is_concurrent_session_running(struct mac_context *mac) { uint32_t sessionId, noOfCocurrentSession = 0;