qcacld-3.0: Don't block NAN+NDI+STA concurrency for non-dbs

When a new connection is about to come up, host checks if current
concurrency combination including the new connection is allowed or
not based on the HW capability.
Firmware manages NAN + NDI by dividing up slots. Connection on NDI
is re-negotiable and therefore a 3rd connection with the same MAC
is possible.

Change-Id: I63e39c5cd4945cd308e475c1e03f676336c4e7c1
CRs-Fixed: 2841457
This commit is contained in:
Abhishek Ambure 2021-01-13 18:29:02 +05:30 • committed by snandini
commit b7c5961308

View file

@ -2823,17 +2823,8 @@ bool policy_mgr_allow_new_home_channel(
QDF_MCC_TO_SCC_SWITCH_FORCE_PREFERRED_WITHOUT_DISCONNECTION)
) && (pm_conc_connection_list[0].mac ==
pm_conc_connection_list[1].mac)) {
if (!policy_mgr_is_hw_dbs_capable(psoc) &&
policy_mgr_is_interband_mcc_supported(psoc)) {
if (ch_freq !=
pm_conc_connection_list[0].freq &&
ch_freq !=
pm_conc_connection_list[1].freq) {
policy_mgr_rl_debug("don't allow 3rd home channel on same MAC");
status = false;
}
} else if ((pm_conc_connection_list[0].mode ==
PM_NAN_DISC_MODE &&
if ((pm_conc_connection_list[0].mode ==
PM_NAN_DISC_MODE &&
pm_conc_connection_list[1].mode ==
PM_NDI_MODE) ||
(pm_conc_connection_list[0].mode ==
@ -2847,6 +2838,15 @@ bool policy_mgr_allow_new_home_channel(
* same MAC is possible.
*/
status = true;
} else if (!policy_mgr_is_hw_dbs_capable(psoc) &&
policy_mgr_is_interband_mcc_supported(psoc)) {
if (ch_freq !=
pm_conc_connection_list[0].freq &&
ch_freq !=
pm_conc_connection_list[1].freq) {
policy_mgr_rl_debug("don't allow 3rd home channel on same MAC");
status = false;
}
} else if (((WLAN_REG_IS_24GHZ_CH_FREQ(ch_freq)) &&
(WLAN_REG_IS_24GHZ_CH_FREQ
(pm_conc_connection_list[0].freq)) &&