1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-02 21:01:31 +02:00
openwrt-xburst/package/mac80211/patches/570-ath9k_tx_stop_failure_debug.patch
nbd 4669033c14 mac80211: update to wireless-testing 2011-09-14
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@28245 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-09-15 17:55:16 +00:00

28 lines
831 B
Diff

--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -1512,7 +1512,8 @@ bool ath_drain_all_txq(struct ath_softc
struct ath_hw *ah = sc->sc_ah;
struct ath_common *common = ath9k_hw_common(sc->sc_ah);
struct ath_txq *txq;
- int i, npend = 0;
+ int i;
+ u32 npend = 0;
if (sc->sc_flags & SC_OP_INVALID)
return true;
@@ -1524,11 +1525,12 @@ bool ath_drain_all_txq(struct ath_softc
if (!ATH_TXQ_SETUP(sc, i))
continue;
- npend += ath9k_hw_numtxpending(ah, sc->tx.txq[i].axq_qnum);
+ if (ath9k_hw_numtxpending(ah, sc->tx.txq[i].axq_qnum))
+ npend |= BIT(i);
}
if (npend)
- ath_err(common, "Failed to stop TX DMA!\n");
+ ath_err(common, "Failed to stop TX DMA, queues=%08x!\n", npend);
for (i = 0; i < ATH9K_NUM_TX_QUEUES; i++) {
if (!ATH_TXQ_SETUP(sc, i))