aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuis R. Rodriguez <lrodriguez@atheros.com>2010-04-15 17:39:30 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-04-16 15:43:46 -0400
commita9616f417eb0e529023c44dac61420f3df39d8f7 (patch)
treee657de64834ab59e5b5b71f96b4f54f4a37438ff
parent994089db034059f4b545ddef9fab466091894071 (diff)
ath9k: add RXLP and RXHP to debugfs counters
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/ath/ath9k/debug.c22
-rw-r--r--drivers/net/wireless/ath/ath9k/debug.h4
2 files changed, 22 insertions, 4 deletions
diff --git a/drivers/net/wireless/ath/ath9k/debug.c b/drivers/net/wireless/ath/ath9k/debug.c
index b22d46509b67..ab59e2ec18c6 100644
--- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -179,8 +179,15 @@ void ath_debug_stat_interrupt(struct ath_softc *sc, enum ath9k_int status)
179{ 179{
180 if (status) 180 if (status)
181 sc->debug.stats.istats.total++; 181 sc->debug.stats.istats.total++;
182 if (status & ATH9K_INT_RX) 182 if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_EDMA) {
183 sc->debug.stats.istats.rxok++; 183 if (status & ATH9K_INT_RXLP)
184 sc->debug.stats.istats.rxlp++;
185 if (status & ATH9K_INT_RXHP)
186 sc->debug.stats.istats.rxhp++;
187 } else {
188 if (status & ATH9K_INT_RX)
189 sc->debug.stats.istats.rxok++;
190 }
184 if (status & ATH9K_INT_RXEOL) 191 if (status & ATH9K_INT_RXEOL)
185 sc->debug.stats.istats.rxeol++; 192 sc->debug.stats.istats.rxeol++;
186 if (status & ATH9K_INT_RXORN) 193 if (status & ATH9K_INT_RXORN)
@@ -222,8 +229,15 @@ static ssize_t read_file_interrupt(struct file *file, char __user *user_buf,
222 char buf[512]; 229 char buf[512];
223 unsigned int len = 0; 230 unsigned int len = 0;
224 231
225 len += snprintf(buf + len, sizeof(buf) - len, 232 if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_EDMA) {
226 "%8s: %10u\n", "RX", sc->debug.stats.istats.rxok); 233 len += snprintf(buf + len, sizeof(buf) - len,
234 "%8s: %10u\n", "RXLP", sc->debug.stats.istats.rxlp);
235 len += snprintf(buf + len, sizeof(buf) - len,
236 "%8s: %10u\n", "RXHP", sc->debug.stats.istats.rxhp);
237 } else {
238 len += snprintf(buf + len, sizeof(buf) - len,
239 "%8s: %10u\n", "RX", sc->debug.stats.istats.rxok);
240 }
227 len += snprintf(buf + len, sizeof(buf) - len, 241 len += snprintf(buf + len, sizeof(buf) - len,
228 "%8s: %10u\n", "RXEOL", sc->debug.stats.istats.rxeol); 242 "%8s: %10u\n", "RXEOL", sc->debug.stats.istats.rxeol);
229 len += snprintf(buf + len, sizeof(buf) - len, 243 len += snprintf(buf + len, sizeof(buf) - len,
diff --git a/drivers/net/wireless/ath/ath9k/debug.h b/drivers/net/wireless/ath/ath9k/debug.h
index b2af9de755e6..c545960e7ec5 100644
--- a/drivers/net/wireless/ath/ath9k/debug.h
+++ b/drivers/net/wireless/ath/ath9k/debug.h
@@ -35,6 +35,8 @@ struct ath_buf;
35 * struct ath_interrupt_stats - Contains statistics about interrupts 35 * struct ath_interrupt_stats - Contains statistics about interrupts
36 * @total: Total no. of interrupts generated so far 36 * @total: Total no. of interrupts generated so far
37 * @rxok: RX with no errors 37 * @rxok: RX with no errors
38 * @rxlp: RX with low priority RX
39 * @rxhp: RX with high priority, uapsd only
38 * @rxeol: RX with no more RXDESC available 40 * @rxeol: RX with no more RXDESC available
39 * @rxorn: RX FIFO overrun 41 * @rxorn: RX FIFO overrun
40 * @txok: TX completed at the requested rate 42 * @txok: TX completed at the requested rate
@@ -55,6 +57,8 @@ struct ath_buf;
55struct ath_interrupt_stats { 57struct ath_interrupt_stats {
56 u32 total; 58 u32 total;
57 u32 rxok; 59 u32 rxok;
60 u32 rxlp;
61 u32 rxhp;
58 u32 rxeol; 62 u32 rxeol;
59 u32 rxorn; 63 u32 rxorn;
60 u32 txok; 64 u32 txok;