Commit cc9c378a authored by Sujith's avatar Sujith Committed by John W. Linville

ath9k: Fix queue handling

The TX queues have to be stopped during an
internal reset. Not handling this would result
in packet loss - fix this.
Signed-off-by: default avatarSujith <Sujith.Manoharan@atheros.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 285f2dda
...@@ -944,6 +944,8 @@ int ath_reset(struct ath_softc *sc, bool retry_tx) ...@@ -944,6 +944,8 @@ int ath_reset(struct ath_softc *sc, bool retry_tx)
/* Stop ANI */ /* Stop ANI */
del_timer_sync(&common->ani.timer); del_timer_sync(&common->ani.timer);
ieee80211_stop_queues(hw);
ath9k_hw_set_interrupts(ah, 0); ath9k_hw_set_interrupts(ah, 0);
ath_drain_all_txq(sc, retry_tx); ath_drain_all_txq(sc, retry_tx);
ath_stoprecv(sc); ath_stoprecv(sc);
...@@ -985,6 +987,8 @@ int ath_reset(struct ath_softc *sc, bool retry_tx) ...@@ -985,6 +987,8 @@ int ath_reset(struct ath_softc *sc, bool retry_tx)
} }
} }
ieee80211_wake_queues(hw);
/* Start ANI */ /* Start ANI */
ath_start_ani(common); ath_start_ani(common);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment