aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/ath/ath9k/xmit.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index 859aa4ab0769..f63f6a944d62 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -2279,6 +2279,17 @@ void ath_tx_edma_tasklet(struct ath_softc *sc)
2279 2279
2280 txok = !(txs.ts_status & ATH9K_TXERR_MASK); 2280 txok = !(txs.ts_status & ATH9K_TXERR_MASK);
2281 2281
2282 /*
2283 * Make sure null func frame is acked before configuring
2284 * hw into ps mode.
2285 */
2286 if (bf->bf_isnullfunc && txok) {
2287 if ((sc->ps_flags & PS_ENABLED))
2288 ath9k_enable_ps(sc);
2289 else
2290 sc->ps_flags |= PS_NULLFUNC_COMPLETED;
2291 }
2292
2282 if (!bf_isampdu(bf)) { 2293 if (!bf_isampdu(bf)) {
2283 bf->bf_retries = txs.ts_longretry; 2294 bf->bf_retries = txs.ts_longretry;
2284 if (txs.ts_status & ATH9K_TXERR_XRETRY) 2295 if (txs.ts_status & ATH9K_TXERR_XRETRY)