diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/recv.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/recv.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c index 9c166f3804ab..fe73fc50082a 100644 --- a/drivers/net/wireless/ath/ath9k/recv.c +++ b/drivers/net/wireless/ath/ath9k/recv.c | |||
@@ -268,6 +268,7 @@ static int ath_rx_edma_init(struct ath_softc *sc, int nbufs) | |||
268 | bf->bf_buf_addr))) { | 268 | bf->bf_buf_addr))) { |
269 | dev_kfree_skb_any(skb); | 269 | dev_kfree_skb_any(skb); |
270 | bf->bf_mpdu = NULL; | 270 | bf->bf_mpdu = NULL; |
271 | bf->bf_buf_addr = 0; | ||
271 | ath_print(common, ATH_DBG_FATAL, | 272 | ath_print(common, ATH_DBG_FATAL, |
272 | "dma_mapping_error() on RX init\n"); | 273 | "dma_mapping_error() on RX init\n"); |
273 | error = -ENOMEM; | 274 | error = -ENOMEM; |
@@ -358,12 +359,12 @@ int ath_rx_init(struct ath_softc *sc, int nbufs) | |||
358 | bf->bf_buf_addr))) { | 359 | bf->bf_buf_addr))) { |
359 | dev_kfree_skb_any(skb); | 360 | dev_kfree_skb_any(skb); |
360 | bf->bf_mpdu = NULL; | 361 | bf->bf_mpdu = NULL; |
362 | bf->bf_buf_addr = 0; | ||
361 | ath_print(common, ATH_DBG_FATAL, | 363 | ath_print(common, ATH_DBG_FATAL, |
362 | "dma_mapping_error() on RX init\n"); | 364 | "dma_mapping_error() on RX init\n"); |
363 | error = -ENOMEM; | 365 | error = -ENOMEM; |
364 | goto err; | 366 | goto err; |
365 | } | 367 | } |
366 | bf->bf_dmacontext = bf->bf_buf_addr; | ||
367 | } | 368 | } |
368 | sc->rx.rxlink = NULL; | 369 | sc->rx.rxlink = NULL; |
369 | } | 370 | } |
@@ -393,6 +394,8 @@ void ath_rx_cleanup(struct ath_softc *sc) | |||
393 | common->rx_bufsize, | 394 | common->rx_bufsize, |
394 | DMA_FROM_DEVICE); | 395 | DMA_FROM_DEVICE); |
395 | dev_kfree_skb(skb); | 396 | dev_kfree_skb(skb); |
397 | bf->bf_buf_addr = 0; | ||
398 | bf->bf_mpdu = NULL; | ||
396 | } | 399 | } |
397 | } | 400 | } |
398 | 401 | ||
@@ -430,8 +433,7 @@ u32 ath_calcrxfilter(struct ath_softc *sc) | |||
430 | | ATH9K_RX_FILTER_UCAST | ATH9K_RX_FILTER_BCAST | 433 | | ATH9K_RX_FILTER_UCAST | ATH9K_RX_FILTER_BCAST |
431 | | ATH9K_RX_FILTER_MCAST; | 434 | | ATH9K_RX_FILTER_MCAST; |
432 | 435 | ||
433 | /* If not a STA, enable processing of Probe Requests */ | 436 | if (sc->rx.rxfilter & FIF_PROBE_REQ) |
434 | if (sc->sc_ah->opmode != NL80211_IFTYPE_STATION) | ||
435 | rfilt |= ATH9K_RX_FILTER_PROBEREQ; | 437 | rfilt |= ATH9K_RX_FILTER_PROBEREQ; |
436 | 438 | ||
437 | /* | 439 | /* |
@@ -1735,12 +1737,12 @@ int ath_rx_tasklet(struct ath_softc *sc, int flush, bool hp) | |||
1735 | bf->bf_buf_addr))) { | 1737 | bf->bf_buf_addr))) { |
1736 | dev_kfree_skb_any(requeue_skb); | 1738 | dev_kfree_skb_any(requeue_skb); |
1737 | bf->bf_mpdu = NULL; | 1739 | bf->bf_mpdu = NULL; |
1740 | bf->bf_buf_addr = 0; | ||
1738 | ath_print(common, ATH_DBG_FATAL, | 1741 | ath_print(common, ATH_DBG_FATAL, |
1739 | "dma_mapping_error() on RX\n"); | 1742 | "dma_mapping_error() on RX\n"); |
1740 | ath_rx_send_to_mac80211(hw, sc, skb, rxs); | 1743 | ath_rx_send_to_mac80211(hw, sc, skb, rxs); |
1741 | break; | 1744 | break; |
1742 | } | 1745 | } |
1743 | bf->bf_dmacontext = bf->bf_buf_addr; | ||
1744 | 1746 | ||
1745 | /* | 1747 | /* |
1746 | * change the default rx antenna if rx diversity chooses the | 1748 | * change the default rx antenna if rx diversity chooses the |