Browse Source

qcacmn: Remove IPA related HAL srng ring id macro

Direct link refill ring HTT setup fails due to srng
ring id mismatch. IPA uses a max of two RXDMA_BUF
rings but the hal srng ring id has a max of 3 RXDMA
ring ids which is causing the ring id mismatch for
direct link refill ring.

The fix is to remove the addition IPA related hal srng
ring id and move the macros appropriately to make
it consistent for both IPA enabled and disabled
cases.

Change-Id: Ieb4bbf646f5f0360e4013ae3e235cc7368087731
CRs-Fixed: 3523851
Yeshwanth Sriram Guntuka 2 years ago
parent
commit
778c29b6ce
2 changed files with 6 additions and 12 deletions
  1. 2 6
      dp/wifi3.0/dp_htt.c
  2. 4 6
      hal/wifi3.0/hal_internal.h

+ 2 - 6
dp/wifi3.0/dp_htt.c

@@ -646,13 +646,13 @@ int htt_srng_setup(struct htt_soc *soc, int mac_id,
 			htt_ring_type = HTT_SW_TO_SW_RING;
 #ifdef IPA_OFFLOAD
 		} else if (srng_params.ring_id ==
-		    (HAL_SRNG_WMAC1_SW2RXDMA0_BUF2 +
+		    (HAL_SRNG_WMAC1_SW2RXDMA0_BUF1 +
 		    (lmac_id * HAL_MAX_RINGS_PER_LMAC))) {
 			htt_ring_id = HTT_HOST2_TO_FW_RXBUF_RING;
 			htt_ring_type = HTT_SW_TO_SW_RING;
 #ifdef IPA_WDI3_VLAN_SUPPORT
 		} else if (srng_params.ring_id ==
-		    (HAL_SRNG_WMAC1_SW2RXDMA0_BUF3 +
+		    (HAL_SRNG_WMAC1_SW2RXDMA0_BUF2 +
 		    (lmac_id * HAL_MAX_RINGS_PER_LMAC))) {
 			htt_ring_id = HTT_HOST3_TO_FW_RXBUF_RING;
 			htt_ring_type = HTT_SW_TO_SW_RING;
@@ -666,11 +666,7 @@ int htt_srng_setup(struct htt_soc *soc, int mac_id,
 			htt_ring_type = HTT_SW_TO_HW_RING;
 #endif
 		} else if (srng_params.ring_id ==
-#ifdef IPA_OFFLOAD
-			 (HAL_SRNG_WMAC1_SW2RXDMA0_BUF1 +
-#else
 			 (HAL_SRNG_WMAC1_SW2RXDMA1_BUF +
-#endif
 			(lmac_id * HAL_MAX_RINGS_PER_LMAC))) {
 			htt_ring_id = HTT_RXDMA_HOST_BUF_RING;
 			htt_ring_type = HTT_SW_TO_HW_RING;

+ 4 - 6
hal/wifi3.0/hal_internal.h

@@ -286,14 +286,13 @@ enum hal_srng_ring_id {
 	/* LMAC rings - The following set will be replicated for each LMAC */
 	HAL_SRNG_LMAC1_ID_START = 184,
 	HAL_SRNG_WMAC1_SW2RXDMA0_BUF0 = HAL_SRNG_LMAC1_ID_START,
+	HAL_SRNG_WMAC1_SW2RXDMA1_BUF,
 #ifdef IPA_OFFLOAD
 	HAL_SRNG_WMAC1_SW2RXDMA0_BUF1,
-	HAL_SRNG_WMAC1_SW2RXDMA0_BUF2,
 #ifdef IPA_WDI3_VLAN_SUPPORT
-	HAL_SRNG_WMAC1_SW2RXDMA0_BUF3,
+	HAL_SRNG_WMAC1_SW2RXDMA0_BUF2,
 #endif
 #endif
-	HAL_SRNG_WMAC1_SW2RXDMA1_BUF,
 #ifdef FEATURE_DIRECT_LINK
 	HAL_SRNG_WMAC1_RX_DIRECT_LINK_SW_REFILL_RING,
 #endif
@@ -323,14 +322,13 @@ enum hal_srng_ring_id {
 enum hal_srng_ring_id {
 	HAL_SRNG_LMAC1_ID_START,
 	HAL_SRNG_WMAC1_SW2RXDMA0_BUF0 = HAL_SRNG_LMAC1_ID_START,
+	HAL_SRNG_WMAC1_SW2RXDMA1_BUF,
 #ifdef IPA_OFFLOAD
 	HAL_SRNG_WMAC1_SW2RXDMA0_BUF1,
-	HAL_SRNG_WMAC1_SW2RXDMA0_BUF2,
 #ifdef IPA_WDI3_VLAN_SUPPORT
-	HAL_SRNG_WMAC1_SW2RXDMA0_BUF3,
+	HAL_SRNG_WMAC1_SW2RXDMA0_BUF2,
 #endif
 #endif
-	HAL_SRNG_WMAC1_SW2RXDMA1_BUF,
 #ifdef FEATURE_DIRECT_LINK
 	HAL_SRNG_WMAC1_RX_DIRECT_LINK_SW_REFILL_RING,
 #endif