ath9k: add a missing dma cache sync on aggregation software retry
[openwrt/svn-archive/archive.git] / package / mac80211 / patches / 546-ath9k_retry_cache_sync.patch
1 --- a/drivers/net/wireless/ath/ath9k/xmit.c
2 +++ b/drivers/net/wireless/ath/ath9k/xmit.c
3 @@ -263,6 +263,7 @@ static void ath_tx_set_retry(struct ath_
4 struct sk_buff *skb)
5 {
6 struct ath_frame_info *fi = get_frame_info(skb);
7 + struct ath_buf *bf = fi->bf;
8 struct ieee80211_hdr *hdr;
9
10 TX_STAT_INC(txq->axq_qnum, a_retries);
11 @@ -271,6 +272,8 @@ static void ath_tx_set_retry(struct ath_
12
13 hdr = (struct ieee80211_hdr *)skb->data;
14 hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_RETRY);
15 + dma_sync_single_for_device(sc->dev, bf->bf_buf_addr,
16 + sizeof(*hdr), DMA_TO_DEVICE);
17 }
18
19 static struct ath_buf *ath_tx_get_buffer(struct ath_softc *sc)