Debugging changes!

* That lock isn't actually held during reset - just the whole TX/RX path
  is paused.  So, remove the assertion.

* Log the TX queue status - how many hardware frames are active in the
  MAC and whether the queue is active.
This commit is contained in:
adrian 2013-04-29 07:28:29 +00:00
parent ccddbf9365
commit 5586a04308

View File

@ -4466,10 +4466,12 @@ ath_tx_stopdma(struct ath_softc *sc, struct ath_txq *txq)
struct ath_hal *ah = sc->sc_ah;
DPRINTF(sc, ATH_DEBUG_RESET,
"%s: tx queue [%u] %p, flags 0x%08x, link %p\n",
"%s: tx queue [%u] %p, active=%d, hwpending=%d, flags 0x%08x, link %p\n",
__func__,
txq->axq_qnum,
(caddr_t)(uintptr_t) ath_hal_gettxbuf(ah, txq->axq_qnum),
(int) (!! ath_hal_txqenabled(ah, txq->axq_qnum)),
(int) ath_hal_numtxpending(ah, txq->axq_qnum),
txq->axq_flags,
txq->axq_link);
(void) ath_hal_stoptxdma(ah, txq->axq_qnum);
@ -4511,8 +4513,6 @@ ath_tx_dump(struct ath_softc *sc, struct ath_txq *txq)
if (! (sc->sc_debug & ATH_DEBUG_RESET))
return;
ATH_TX_LOCK_ASSERT(sc);
device_printf(sc->sc_dev, "%s: Q%d: begin\n",
__func__, txq->axq_qnum);
TAILQ_FOREACH(bf, &txq->axq_q, bf_list) {