aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/xmit.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/xmit.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/xmit.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index 9b17108adc7c..b053058ae5ea 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -294,7 +294,6 @@ static struct ath_buf* ath_clone_txbuf(struct ath_softc *sc, struct ath_buf *bf)
294 tbf->bf_buf_addr = bf->bf_buf_addr; 294 tbf->bf_buf_addr = bf->bf_buf_addr;
295 memcpy(tbf->bf_desc, bf->bf_desc, sc->sc_ah->caps.tx_desc_len); 295 memcpy(tbf->bf_desc, bf->bf_desc, sc->sc_ah->caps.tx_desc_len);
296 tbf->bf_state = bf->bf_state; 296 tbf->bf_state = bf->bf_state;
297 tbf->bf_dmacontext = bf->bf_dmacontext;
298 297
299 return tbf; 298 return tbf;
300} 299}
@@ -1640,17 +1639,15 @@ static int ath_tx_setup_buffer(struct ieee80211_hw *hw, struct ath_buf *bf,
1640 1639
1641 bf->bf_mpdu = skb; 1640 bf->bf_mpdu = skb;
1642 1641
1643 bf->bf_dmacontext = dma_map_single(sc->dev, skb->data, 1642 bf->bf_buf_addr = dma_map_single(sc->dev, skb->data,
1644 skb->len, DMA_TO_DEVICE); 1643 skb->len, DMA_TO_DEVICE);
1645 if (unlikely(dma_mapping_error(sc->dev, bf->bf_dmacontext))) { 1644 if (unlikely(dma_mapping_error(sc->dev, bf->bf_buf_addr))) {
1646 bf->bf_mpdu = NULL; 1645 bf->bf_mpdu = NULL;
1647 ath_print(ath9k_hw_common(sc->sc_ah), ATH_DBG_FATAL, 1646 ath_print(ath9k_hw_common(sc->sc_ah), ATH_DBG_FATAL,
1648 "dma_mapping_error() on TX\n"); 1647 "dma_mapping_error() on TX\n");
1649 return -ENOMEM; 1648 return -ENOMEM;
1650 } 1649 }
1651 1650
1652 bf->bf_buf_addr = bf->bf_dmacontext;
1653
1654 bf->bf_tx_aborted = false; 1651 bf->bf_tx_aborted = false;
1655 1652
1656 return 0; 1653 return 0;
@@ -1914,7 +1911,7 @@ static void ath_tx_complete_buf(struct ath_softc *sc, struct ath_buf *bf,
1914 tx_flags |= ATH_TX_XRETRY; 1911 tx_flags |= ATH_TX_XRETRY;
1915 } 1912 }
1916 1913
1917 dma_unmap_single(sc->dev, bf->bf_dmacontext, skb->len, DMA_TO_DEVICE); 1914 dma_unmap_single(sc->dev, bf->bf_buf_addr, skb->len, DMA_TO_DEVICE);
1918 1915
1919 if (bf->bf_state.bfs_paprd) { 1916 if (bf->bf_state.bfs_paprd) {
1920 if (time_after(jiffies, 1917 if (time_after(jiffies,