diff options
author | Sujith Manoharan <c_manoha@qca.qualcomm.com> | 2014-12-18 20:03:55 -0500 |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2015-01-23 12:00:37 -0500 |
commit | 2b5b8f19fbf3b8337599db33cdf1afa84c1dde8d (patch) | |
tree | 489aa0c33cc307907b034ffa8ceab7e5d369472f | |
parent | 65400a53cf376a52a6d77b7edb11f0c46d471698 (diff) |
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>
-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 1176d919569e..1b8e75c4d2c2 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, | |||
2489 | if (sc->sc_ah->caldata) | 2489 | if (sc->sc_ah->caldata) |
2490 | set_bit(PAPRD_PACKET_SENT, &sc->sc_ah->caldata->cal_flags); | 2490 | set_bit(PAPRD_PACKET_SENT, &sc->sc_ah->caldata->cal_flags); |
2491 | 2491 | ||
2492 | if (!(tx_flags & ATH_TX_ERROR)) | 2492 | if (!(tx_flags & ATH_TX_ERROR)) { |
2493 | /* Frame was ACKed */ | 2493 | if (tx_info->flags & IEEE80211_TX_CTL_NO_ACK) |
2494 | tx_info->flags |= IEEE80211_TX_STAT_ACK; | 2494 | tx_info->flags |= IEEE80211_TX_STAT_NOACK_TRANSMITTED; |
2495 | else | ||
2496 | tx_info->flags |= IEEE80211_TX_STAT_ACK; | ||
2497 | } | ||
2495 | 2498 | ||
2496 | padpos = ieee80211_hdrlen(hdr->frame_control); | 2499 | padpos = ieee80211_hdrlen(hdr->frame_control); |
2497 | padsize = padpos & 3; | 2500 | padsize = padpos & 3; |