Преглед изворни кода

qcacld-3.0: Add a check to allow DBS concurrency

If gEnableMCCMode is disabled then STA connection is rejected by
driver if it is second connection and creating a 2-port combination.
STA should work as the selected AP is operating on otherband thereby
creating a DBS concurrent scenario.

Change-Id: Ia1f4f8dbf927a872ada72fb15d646a0a0e323e36
CRs-Fixed: 2400546
Rachit Kankane пре 6 година
родитељ
комит
997e373da8
1 измењених фајлова са 12 додато и 4 уклоњено
  1. 12 4
      core/sme/src/csr/csr_api_roam.c

+ 12 - 4
core/sme/src/csr/csr_api_roam.c

@@ -5025,15 +5025,23 @@ static bool csr_roam_select_bss(struct mac_context *mac_ctx,
 			conc_channel = csr_get_concurrent_operation_channel(
 					mac_ctx);
 			sme_debug("csr Conc Channel: %d", conc_channel);
-			if ((conc_channel) && (conc_channel ==
-				result->BssDescriptor.channelId)) {
+
+			if (conc_channel) {
+				if ((conc_channel ==
+				   result->BssDescriptor.channelId) ||
+				   (policy_mgr_is_hw_dbs_capable(mac_ctx->psoc)
+				   && !WLAN_REG_IS_SAME_BAND_CHANNELS(
+				   conc_channel,
+				   result->BssDescriptor.channelId))) {
 				/*
 				 * make this 0 because we do not want the below
 				 * check to pass as we don't want to connect on
 				 * other channel
 				 */
-				sme_debug("Conc chnl match: %d", conc_channel);
-				conc_channel = 0;
+					sme_debug("Conc chnl match: %d",
+								conc_channel);
+					conc_channel = 0;
+				}
 			}
 		}