浏览代码

qcacld-3.0: Reset CAC state if another AP is not on 5GHz

In case of DBS, two AP can operate on different band together.
Current logic of resetting CAC state in sap_clear_global_dfs_param
function assumes that if two APs are up state then it must be SCC
scenario and resulting in dropping of tx packets if stop follwed by
start operation is performed on AP on DFS channel.

This change reset CAC state as part of stop AP if another AP is
operating on 2.4GHz in case of DBS operation.

Change-Id: I3f71606bf610d45184a0fa81d2b9d9a6c11f72e8
CRs-Fixed: 2509808
Nirav Shah 5 年之前
父节点
当前提交
4474439d4c
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      core/sap/src/sap_fsm.c

+ 3 - 1
core/sap/src/sap_fsm.c

@@ -1069,8 +1069,10 @@ sap_find_valid_concurrent_session(mac_handle_t mac_handle)
 static QDF_STATUS sap_clear_global_dfs_param(mac_handle_t mac_handle)
 {
 	struct mac_context *mac_ctx = MAC_CONTEXT(mac_handle);
+	struct sap_context *sap_ctx;
 
-	if (sap_find_valid_concurrent_session(mac_handle)) {
+	sap_ctx = sap_find_valid_concurrent_session(mac_handle);
+	if (sap_ctx && WLAN_REG_IS_5GHZ_CH(sap_ctx->channel)) {
 		QDF_TRACE(QDF_MODULE_ID_SAP, QDF_TRACE_LEVEL_DEBUG,
 			  "conc session exists, no need to clear dfs struct");
 		return QDF_STATUS_SUCCESS;