diff options
author | Sujith Manoharan <c_manoha@qca.qualcomm.com> | 2014-12-19 01:03:55 (GMT) |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2015-01-23 17:00:37 (GMT) |
commit | 2b5b8f19fbf3b8337599db33cdf1afa84c1dde8d (patch) | |
tree | 489aa0c33cc307907b034ffa8ceab7e5d369472f /drivers/net/wireless/ath/ath9k/xmit.c | |
parent | 65400a53cf376a52a6d77b7edb11f0c46d471698 (diff) | |
download | linux-2b5b8f19fbf3b8337599db33cdf1afa84c1dde8d.tar.xz |
ath9k: Fix no-ack frame status
Check if the frame has been completed without any
error and use IEEE80211_TX_STAT_NOACK_TRANSMITTED to
indicate successful transmission of no-ack frames.
Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/xmit.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/xmit.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c index 1176d91..1b8e75c 100644 --- a/drivers/net/wireless/ath/ath9k/xmit.c +++ b/drivers/net/wireless/ath/ath9k/xmit.c @@ -2489,9 +2489,12 @@ static void ath_tx_complete(struct ath_softc *sc, struct sk_buff *skb, if (sc->sc_ah->caldata) set_bit(PAPRD_PACKET_SENT, &sc->sc_ah->caldata->cal_flags); - if (!(tx_flags & ATH_TX_ERROR)) - /* Frame was ACKed */ - tx_info->flags |= IEEE80211_TX_STAT_ACK; + if (!(tx_flags & ATH_TX_ERROR)) { + if (tx_info->flags & IEEE80211_TX_CTL_NO_ACK) + tx_info->flags |= IEEE80211_TX_STAT_NOACK_TRANSMITTED; + else + tx_info->flags |= IEEE80211_TX_STAT_ACK; + } padpos = ieee80211_hdrlen(hdr->frame_control); padsize = padpos & 3; |