ソースを参照

qcacmn: Fix TX completion configurations

Currently when OPT_WIFI_DP is enabled, dp_tx_get_queue()
sets the ring_id always to one ring. This could potentially
affect the Tx data rates. This change is to ensure
all the Tx data rings are used.

Change-Id: Ib1ecf7f36f6967c0edf947d6310d6ae7caf43e5b
CRs-Fixed: 3577829
Namita Nair 1 年間 前
コミット
f06f5e0791
1 ファイル変更5 行追加1 行削除
  1. 5 1
      dp/wifi3.0/dp_tx.h

+ 5 - 1
dp/wifi3.0/dp_tx.h

@@ -37,6 +37,9 @@
 #endif
 #include <qdf_pkt_add_timestamp.h>
 #include "dp_ipa.h"
+#ifdef IPA_OFFLOAD
+#include <wlan_ipa_obj_mgmt_api.h>
+#endif
 
 #define DP_INVALID_VDEV_ID 0xFF
 
@@ -989,7 +992,8 @@ static inline void dp_tx_get_queue(struct dp_vdev *vdev,
 {
 	/* get flow id */
 	queue->desc_pool_id = DP_TX_GET_DESC_POOL_ID(vdev);
-	if (vdev->pdev->soc->wlan_cfg_ctx->ipa_enabled)
+	if (vdev->pdev->soc->wlan_cfg_ctx->ipa_enabled &&
+	    !ipa_config_is_opt_wifi_dp_enabled())
 		queue->ring_id = DP_TX_GET_RING_ID(vdev);
 	else
 		queue->ring_id = (qdf_nbuf_get_queue_mapping(nbuf) %