summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPoddar, Siddarth <siddpodd@codeaurora.org>2017-02-24 15:37:49 +0530
committerqcabuildsw <qcabuildsw@localhost>2017-03-01 23:17:23 -0800
commit3f6e7d1f2ebae0b68adb2bf3e67e763f13fcdaac (patch)
treefd275a29ed78a60be72fafc17bb8d8873a993517
parentd09ff9ecc653fb61694787516bff7d4c44033c05 (diff)
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
-rw-r--r--Kbuild6
-rw-r--r--core/dp/htt/htt_rx.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/Kbuild b/Kbuild
index cd5adc81e5a7..af5fd8e9913f 100644
--- a/Kbuild
+++ b/Kbuild
@@ -1565,6 +1565,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_PADDR64
CDEFINES += -DHELIUMPLUS
@@ -1575,6 +1578,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
diff --git a/core/dp/htt/htt_rx.c b/core/dp/htt/htt_rx.c
index 7128d6c82fdf..c80ec89a56b6 100644
--- a/core/dp/htt/htt_rx.c
+++ b/core/dp/htt/htt_rx.c
@@ -350,7 +350,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;
@@ -361,7 +361,7 @@ htt_rx_paddr_mark_high_bits(qdf_dma_addr_t paddr)
return paddr;
}
-#ifdef HELIUMPLUS_PADDR64
+#ifdef ENABLE_DEBUG_ADDRESS_MARKING
static qdf_dma_addr_t
htt_rx_paddr_unmark_high_bits(qdf_dma_addr_t paddr)
{
@@ -411,7 +411,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 */
/* full_reorder_offload case: this function is called with lock held */
static int htt_rx_ring_fill_n(struct htt_pdev_t *pdev, int num)