summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkash Patel <akashp@codeaurora.org>2014-09-11 19:46:38 -0700
committerAkash Patel <akashp@codeaurora.org>2014-09-11 19:46:38 -0700
commitf4d67659e9bfd7839fdfe335dad8b7de16243b03 (patch)
treebfa7e4c645d6a782b0d879147f3f2fcd666a3a0d
parent46cc3ba890759792f542e7f6b7dbcc52d579e3c9 (diff)
parent16d18528ad99fc2639977ac2d4c895b370c7e5b2 (diff)
Release 1.0.0.189A QCACLD WLAN Driver
Merge remote-tracking branch 'origin/caf/caf-wlan/master' into HEAD * origin/caf/caf-wlan/master: Cafstaging Release 1.0.0.189A qcacld: When DMA mapping/un-mapping the Rx buffers, use DMA_BIDIRECTIONAL Change-Id: I66fc19399b7f31ade34e3e1d793c09c0bfa77375
-rw-r--r--CORE/CLD_TXRX/HTT/htt_rx.c38
-rw-r--r--CORE/MAC/inc/qwlan_version.h3
2 files changed, 36 insertions, 5 deletions
diff --git a/CORE/CLD_TXRX/HTT/htt_rx.c b/CORE/CLD_TXRX/HTT/htt_rx.c
index b28457aaf425..950193de166a 100644
--- a/CORE/CLD_TXRX/HTT/htt_rx.c
+++ b/CORE/CLD_TXRX/HTT/htt_rx.c
@@ -264,7 +264,11 @@ htt_rx_ring_fill_n(struct htt_pdev_t *pdev, int num)
headroom = adf_nbuf_data(rx_netbuf) - (u_int8_t *) rx_desc;
adf_nbuf_push_head(rx_netbuf, headroom);
+#ifdef DEBUG_DMA_DONE
+ status = adf_nbuf_map(pdev->osdev, rx_netbuf, ADF_OS_DMA_BIDIRECTIONAL);
+#else
status = adf_nbuf_map(pdev->osdev, rx_netbuf, ADF_OS_DMA_FROM_DEVICE);
+#endif
if (status != A_STATUS_OK) {
adf_nbuf_free(rx_netbuf);
goto fail;
@@ -274,7 +278,12 @@ htt_rx_ring_fill_n(struct htt_pdev_t *pdev, int num)
if(adf_os_unlikely(
htt_rx_hash_list_insert(pdev, paddr, rx_netbuf))) {
adf_os_print("%s: hash insert failed!\n", __FUNCTION__);
+#ifdef DEBUG_DMA_DONE
+ adf_nbuf_unmap(pdev->osdev, rx_netbuf,
+ ADF_OS_DMA_BIDIRECTIONAL);
+#else
adf_nbuf_unmap(pdev->osdev, rx_netbuf, ADF_OS_DMA_FROM_DEVICE);
+#endif
adf_nbuf_free(rx_netbuf);
goto fail;
}
@@ -330,9 +339,15 @@ htt_rx_detach(struct htt_pdev_t *pdev)
int sw_rd_idx = pdev->rx_ring.sw_rd_idx.msdu_payld;
while (sw_rd_idx != *(pdev->rx_ring.alloc_idx.vaddr)) {
- adf_nbuf_unmap(
- pdev->osdev, pdev->rx_ring.buf.netbufs_ring[sw_rd_idx],
- ADF_OS_DMA_FROM_DEVICE);
+#ifdef DEBUG_DMA_DONE
+ adf_nbuf_unmap(
+ pdev->osdev, pdev->rx_ring.buf.netbufs_ring[sw_rd_idx],
+ ADF_OS_DMA_BIDIRECTIONAL);
+#else
+ adf_nbuf_unmap(
+ pdev->osdev, pdev->rx_ring.buf.netbufs_ring[sw_rd_idx],
+ ADF_OS_DMA_FROM_DEVICE);
+#endif
adf_nbuf_free(pdev->rx_ring.buf.netbufs_ring[sw_rd_idx]);
sw_rd_idx++;
sw_rd_idx &= pdev->rx_ring.size_mask;
@@ -902,7 +917,11 @@ htt_rx_amsdu_pop_ll(
* so the unmap will unmap the entire buffer.
*/
adf_nbuf_set_pktlen(msdu, HTT_RX_BUF_SIZE);
+#ifdef DEBUG_DMA_DONE
+ adf_nbuf_unmap(pdev->osdev, msdu, ADF_OS_DMA_BIDIRECTIONAL);
+#else
adf_nbuf_unmap(pdev->osdev, msdu, ADF_OS_DMA_FROM_DEVICE);
+#endif
/* cache consistency has been taken care of by the adf_nbuf_unmap */
@@ -1177,7 +1196,11 @@ htt_rx_offload_msdu_pop_ll(
/* Fake read mpdu_desc to keep desc ptr in sync */
htt_rx_mpdu_desc_list_next(pdev, NULL);
adf_nbuf_set_pktlen(buf, HTT_RX_BUF_SIZE);
+#ifdef DEBUG_DMA_DONE
+ adf_nbuf_unmap(pdev->osdev, buf, ADF_OS_DMA_BIDIRECTIONAL);
+#else
adf_nbuf_unmap(pdev->osdev, buf, ADF_OS_DMA_FROM_DEVICE);
+#endif
msdu_hdr = (u_int32_t *)adf_nbuf_data(buf);
/* First dword */
@@ -1221,8 +1244,11 @@ htt_rx_offload_paddr_msdu_pop_ll(
return 0;
}
adf_nbuf_set_pktlen(buf, HTT_RX_BUF_SIZE);
+#ifdef DEBUG_DMA_DONE
+ adf_nbuf_unmap(pdev->osdev, buf, ADF_OS_DMA_BIDIRECTIONAL);
+#else
adf_nbuf_unmap(pdev->osdev, buf, ADF_OS_DMA_FROM_DEVICE);
-
+#endif
msdu_hdr = (u_int32_t *)adf_nbuf_data(buf);
/* First dword */
@@ -1309,7 +1335,11 @@ htt_rx_amsdu_rx_in_order_pop_ll(
* so the unmap will unmap the entire buffer.
*/
adf_nbuf_set_pktlen(msdu, HTT_RX_BUF_SIZE);
+#ifdef DEBUG_DMA_DONE
+ adf_nbuf_unmap(pdev->osdev, msdu, ADF_OS_DMA_BIDIRECTIONAL);
+#else
adf_nbuf_unmap(pdev->osdev, msdu, ADF_OS_DMA_FROM_DEVICE);
+#endif
/* cache consistency has been taken care of by the adf_nbuf_unmap */
diff --git a/CORE/MAC/inc/qwlan_version.h b/CORE/MAC/inc/qwlan_version.h
index 870d63f56e18..d7f5f8116104 100644
--- a/CORE/MAC/inc/qwlan_version.h
+++ b/CORE/MAC/inc/qwlan_version.h
@@ -44,7 +44,8 @@ BRIEF DESCRIPTION:
#define QWLAN_VERSION_EXTRA ""
#define QWLAN_VERSION_BUILD 189
-#define QWLAN_VERSIONSTR "1.0.0.189"
+#define QWLAN_VERSIONSTR "1.0.0.189A"
+
#define AR6320_REV1_VERSION 0x5000000
#define AR6320_REV1_1_VERSION 0x5000001