Browse Source

qcacmn: Fix SAP-SAP concurrency when they are on single band

Currently SAP-SAP concurrency on same band support is indicated through
WMI service bit wmi_service_dual_beacon_on_single_mac_scc_support and
wmi_service_dual_beacon_on_single_mac_mcc_support. If SCC is supported,
channel of desirable SAP is checked against current available SAP
interfaces. If channel is different, the desirable SAP is disallowed.
Issue is that on DBS capable platforms, this will prevent second SAP
from doing DBS.

Fix is to check if desirable channel is equal to current SAP interfaces.
If equal, SAP-SAP SCC will be allowed. Otherwise fall back to DBS checks
and SCC/MCC on single band will be rejected if above two service bits
check failed or not supported.

Change-Id: I4bfbe5804003797e087bd0234b999cfe1eb4290a
CRs-Fixed: 2297756
jiad 6 years ago
parent
commit
5b4fb31cd0
1 changed files with 3 additions and 4 deletions
  1. 3 4
      umac/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c

+ 3 - 4
umac/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c

@@ -3069,13 +3069,12 @@ bool policy_mgr_allow_sap_go_concurrency(struct wlan_objmgr_psoc *psoc,
 					    pm_conc_connection_list[id].chan;
 					if (((con_mode == PM_SAP_MODE) ||
 					     (con_mode == PM_P2P_GO_MODE)) &&
-					    (channel != con_chan)) {
-						policy_mgr_debug("Scc is supported, but first SAP and second SAP are not in same channel, So don't allow second SAP interface");
-						return false;
+					    (channel == con_chan)) {
+						policy_mgr_debug("Scc is supported, allow second SAP interface");
+						return true;
 					}
 				}
 			}
-			return true;
 		}
 		if (!policy_mgr_is_hw_dbs_capable(psoc)) {
 			policy_mgr_debug("DBS is not supported, mcc and scc are not supported too, don't allow second SAP interface");