Browse Source

qcacld-3.0: Enable debug address marking only for 64 bit DMA address system

Limit the detection of non posted rx buffers from FW only to
64 bit DMA address system. For systems, where IPA has 32 bit
DMA address limitation, this debug feature should be disabled.

CRs-Fixed: 2010583
Change-Id: I9a26d0a423acedb068d99f39929029182f7c6fa1
Poddar, Siddarth 8 years ago
parent
commit
d63954e481
2 changed files with 9 additions and 3 deletions
  1. 6 0
      Kbuild
  2. 3 3
      core/dp/htt/htt_rx.c

+ 6 - 0
Kbuild

@@ -2024,6 +2024,9 @@ CONFIG_HELIUMPLUS := y
 CONFIG_64BIT_PADDR := y
 CONFIG_FEATURE_TSO := y
 CONFIG_FEATURE_TSO_DEBUG := y
+ifeq ($(CONFIG_ARCH_MSM8998), y)
+CONFIG_ENABLE_DEBUG_ADDRESS_MARKING := y
+endif
 ifeq ($(CONFIG_HELIUMPLUS),y)
 CDEFINES += -DHELIUMPLUS
 CDEFINES += -DAR900B
@@ -2033,6 +2036,9 @@ endif
 endif
 endif
 
+ifeq ($(CONFIG_ENABLE_DEBUG_ADDRESS_MARKING),y)
+CDEFINES += -DENABLE_DEBUG_ADDRESS_MARKING
+endif
 ifeq ($(CONFIG_FEATURE_TSO),y)
 CDEFINES += -DFEATURE_TSO
 endif

+ 3 - 3
core/dp/htt/htt_rx.c

@@ -349,7 +349,7 @@ htt_rx_msdu_first_msdu_flag_ll(htt_pdev_handle pdev, void *msdu_desc)
 static qdf_dma_addr_t
 htt_rx_paddr_mark_high_bits(qdf_dma_addr_t paddr)
 {
-#ifdef HELIUMPLUS_PADDR64
+#ifdef ENABLE_DEBUG_ADDRESS_MARKING
 	if (sizeof(qdf_dma_addr_t) > 4) {
 		/* clear high bits, leave lower 37 bits (paddr) */
 		paddr &= 0x01FFFFFFFFF;
@@ -376,7 +376,7 @@ static inline qdf_dma_addr_t htt_paddr_trim_to_37(qdf_dma_addr_t paddr)
 }
 #endif /* HTT_PADDR64 */
 
-#ifdef HELIUMPLUS_PADDR64
+#ifdef ENABLE_DEBUG_ADDRESS_MARKING
 static qdf_dma_addr_t
 htt_rx_paddr_unmark_high_bits(qdf_dma_addr_t paddr)
 {
@@ -426,7 +426,7 @@ htt_rx_in_ord_paddr_get(uint32_t *u32p)
 {
 	return HTT_RX_IN_ORD_PADDR_IND_PADDR_GET(*u32p);
 }
-#endif /* HELIUMPLUS_PADDR64 */
+#endif /* ENABLE_DEBUG_ADDRESS_MARKING */
 #endif /* CONFIG_HL_SUPPORT*/
 
 /* full_reorder_offload case: this function is called with lock held */