Kaynağa Gözat

qcacld-3.0: Fix for 2x2 DBS capability

Fix the way DBS capability is read from FW dev cap. Also, add HW mode
request for 2x2 DBS.

Change-Id: I935a2d0f4a7eed1517a3263fb8b29838f135f91e
CRs-Fixed: 1068000
Tushnim Bhattacharyya 8 yıl önce
ebeveyn
işleme
d07dc906c7
2 değiştirilmiş dosya ile 13 ekleme ve 3 silme
  1. 11 1
      core/cds/src/cds_concurrency.c
  2. 2 2
      core/wma/src/wma_utils.c

+ 11 - 1
core/cds/src/cds_concurrency.c

@@ -5220,7 +5220,17 @@ QDF_STATUS cds_next_actions(uint32_t session_id,
 						session_id);
 		break;
 	case CDS_DBS:
-		status = cds_pdev_set_hw_mode(session_id,
+		if (wma_is_hw_dbs_2x2_capable())
+			status = cds_pdev_set_hw_mode(session_id,
+						HW_MODE_SS_2x2,
+						HW_MODE_80_MHZ,
+						HW_MODE_SS_2x2, HW_MODE_40_MHZ,
+						HW_MODE_DBS,
+						HW_MODE_AGILE_DFS_NONE,
+						HW_MODE_SBS_NONE,
+						reason);
+		else
+			status = cds_pdev_set_hw_mode(session_id,
 						HW_MODE_SS_1x1,
 						HW_MODE_80_MHZ,
 						HW_MODE_SS_1x1, HW_MODE_40_MHZ,

+ 2 - 2
core/wma/src/wma_utils.c

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2013-2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2013-2017 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -3855,7 +3855,7 @@ bool wma_is_hw_dbs_2x2_capable(void)
 	uint32_t ht_2g, ht_5g;
 	struct extended_caps *phy_caps;
 	WMI_MAC_PHY_CAPABILITIES *mac_cap;
-	uint32_t tx_chain, rx_chain, final_min_rf_chains = 0;
+	uint32_t tx_chain, rx_chain, final_min_rf_chains = 2;
 	uint32_t min_rf_chains, min_2g_rf_chains, min_5g_rf_chains;
 
 	wma = cds_get_context(QDF_MODULE_ID_WMA);