diff options
author | adrian <adrian@FreeBSD.org> | 2012-11-03 04:53:44 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2012-11-03 04:53:44 +0000 |
commit | 87c36b9b3e9601fb483fab2c599276adbdabf746 (patch) | |
tree | 4ca9d1b19b6f49f3ce102769b208399d71150730 | |
parent | 20c3c08700dcc0fe1e8581051372bc778d209a58 (diff) | |
download | FreeBSD-src-87c36b9b3e9601fb483fab2c599276adbdabf746.zip FreeBSD-src-87c36b9b3e9601fb483fab2c599276adbdabf746.tar.gz |
Add a debug method to dump the EDMA TX status descriptor contents out.
This requires some HAL API changes to be useful, as there's no way
right now to pull out the TX status descriptor contents.
-rw-r--r-- | sys/dev/ath/if_ath_debug.c | 12 | ||||
-rw-r--r-- | sys/dev/ath/if_ath_debug.h | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/sys/dev/ath/if_ath_debug.c b/sys/dev/ath/if_ath_debug.c index 9a01e64..7d620dd 100644 --- a/sys/dev/ath/if_ath_debug.c +++ b/sys/dev/ath/if_ath_debug.c @@ -247,4 +247,16 @@ ath_printtxbuf(struct ath_softc *sc, const struct ath_buf *first_bf, ath_printtxbuf_legacy(sc, first_bf, qnum, ix, done); } +void +ath_printtxstatbuf(struct ath_softc *sc, const struct ath_buf *first_bf, + const uint32_t *ds, u_int qnum, u_int ix, int done) +{ + + printf("Q%u[%3u] ", qnum, ix); + printf(" %08x %08x %08x %08x %08x %08x\n", + ds[0], ds[1], ds[2], ds[3], ds[4], ds[5]); + printf(" %08x %08x %08x %08x %08x\n", + ds[6], ds[7], ds[8], ds[9], ds[10]); +} + #endif /* ATH_DEBUG */ diff --git a/sys/dev/ath/if_ath_debug.h b/sys/dev/ath/if_ath_debug.h index 1a591e4..b7b5a78 100644 --- a/sys/dev/ath/if_ath_debug.h +++ b/sys/dev/ath/if_ath_debug.h @@ -105,6 +105,8 @@ extern void ath_printrxbuf(struct ath_softc *, const struct ath_buf *bf, u_int ix, int); extern void ath_printtxbuf(struct ath_softc *, const struct ath_buf *bf, u_int qnum, u_int ix, int done); +extern void ath_printtxstatbuf(struct ath_softc *sc, const struct ath_buf *bf, + const uint32_t *ds, u_int qnum, u_int ix, int done); #else /* ATH_DEBUG */ #define ATH_KTR(_sc, _km, _kf, ...) do { } while (0) |