aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath9k
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/ath9k')
-rw-r--r--drivers/net/wireless/ath9k/xmit.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/drivers/net/wireless/ath9k/xmit.c b/drivers/net/wireless/ath9k/xmit.c
index 5e6e5cf9b67f..c9ead1ba88da 100644
--- a/drivers/net/wireless/ath9k/xmit.c
+++ b/drivers/net/wireless/ath9k/xmit.c
@@ -877,12 +877,6 @@ static u32 ath_txq_depth(struct ath_softc *sc, int qnum)
877 return sc->tx.txq[qnum].axq_depth; 877 return sc->tx.txq[qnum].axq_depth;
878} 878}
879 879
880static void ath_tx_stopdma(struct ath_softc *sc, struct ath_txq *txq)
881{
882 struct ath_hal *ah = sc->sc_ah;
883 (void) ath9k_hw_stoptxdma(ah, txq->axq_qnum);
884}
885
886static void ath_get_beaconconfig(struct ath_softc *sc, int if_id, 880static void ath_get_beaconconfig(struct ath_softc *sc, int if_id,
887 struct ath_beacon_config *conf) 881 struct ath_beacon_config *conf)
888{ 882{
@@ -899,15 +893,17 @@ static void ath_get_beaconconfig(struct ath_softc *sc, int if_id,
899static void ath_drain_txdataq(struct ath_softc *sc, bool retry_tx) 893static void ath_drain_txdataq(struct ath_softc *sc, bool retry_tx)
900{ 894{
901 struct ath_hal *ah = sc->sc_ah; 895 struct ath_hal *ah = sc->sc_ah;
896 struct ath_txq *txq;
902 int i, npend = 0; 897 int i, npend = 0;
903 898
904 if (!(sc->sc_flags & SC_OP_INVALID)) { 899 if (sc->sc_flags & SC_OP_INVALID)
905 for (i = 0; i < ATH9K_NUM_TX_QUEUES; i++) { 900 return;
906 if (ATH_TXQ_SETUP(sc, i)) { 901
907 ath_tx_stopdma(sc, &sc->tx.txq[i]); 902 for (i = 0; i < ATH9K_NUM_TX_QUEUES; i++) {
908 npend += ath9k_hw_numtxpending(ah, 903 if (ATH_TXQ_SETUP(sc, i)) {
909 sc->tx.txq[i].axq_qnum); 904 txq = &sc->tx.txq[i];
910 } 905 ath9k_hw_stoptxdma(ah, txq->axq_qnum);
906 npend += ath9k_hw_numtxpending(ah, txq->axq_qnum);
911 } 907 }
912 } 908 }
913 909