diff options
| author | Akash Patel <akashp@codeaurora.org> | 2014-09-11 19:46:38 -0700 |
|---|---|---|
| committer | Akash Patel <akashp@codeaurora.org> | 2014-09-11 19:46:38 -0700 |
| commit | f4d67659e9bfd7839fdfe335dad8b7de16243b03 (patch) | |
| tree | bfa7e4c645d6a782b0d879147f3f2fcd666a3a0d | |
| parent | 46cc3ba890759792f542e7f6b7dbcc52d579e3c9 (diff) | |
| parent | 16d18528ad99fc2639977ac2d4c895b370c7e5b2 (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.c | 38 | ||||
| -rw-r--r-- | CORE/MAC/inc/qwlan_version.h | 3 |
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 |
