diff options
author | Felix Fietkau <nbd@openwrt.org> | 2014-10-25 11:19:29 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-10-27 14:16:18 -0400 |
commit | 70e535ed00290ed415ccfb200695ea30b6af51e5 (patch) | |
tree | 91e2d01d1ab50c535743f1d1d0ed3977d2e232b7 /drivers/net/wireless/ath/ath9k/debug.c | |
parent | 3b580144725ba6adc034713fe243e69c0f63dd05 (diff) |
ath9k: clean up debugfs print of reset causes
Reduce code duplication
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/debug.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/debug.c | 48 |
1 files changed, 21 insertions, 27 deletions
diff --git a/drivers/net/wireless/ath/ath9k/debug.c b/drivers/net/wireless/ath/ath9k/debug.c index 46f20a309b5f..cf4a98b98cf3 100644 --- a/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c | |||
@@ -852,36 +852,30 @@ static ssize_t read_file_reset(struct file *file, char __user *user_buf, | |||
852 | size_t count, loff_t *ppos) | 852 | size_t count, loff_t *ppos) |
853 | { | 853 | { |
854 | struct ath_softc *sc = file->private_data; | 854 | struct ath_softc *sc = file->private_data; |
855 | static const char * const reset_cause[__RESET_TYPE_MAX] = { | ||
856 | [RESET_TYPE_BB_HANG] = "Baseband Hang", | ||
857 | [RESET_TYPE_BB_WATCHDOG] = "Baseband Watchdog", | ||
858 | [RESET_TYPE_FATAL_INT] = "Fatal HW Error", | ||
859 | [RESET_TYPE_TX_ERROR] = "TX HW error", | ||
860 | [RESET_TYPE_TX_GTT] = "Transmit timeout", | ||
861 | [RESET_TYPE_TX_HANG] = "TX Path Hang", | ||
862 | [RESET_TYPE_PLL_HANG] = "PLL RX Hang", | ||
863 | [RESET_TYPE_MAC_HANG] = "MAC Hang", | ||
864 | [RESET_TYPE_BEACON_STUCK] = "Stuck Beacon", | ||
865 | [RESET_TYPE_MCI] = "MCI Reset", | ||
866 | }; | ||
855 | char buf[512]; | 867 | char buf[512]; |
856 | unsigned int len = 0; | 868 | unsigned int len = 0; |
869 | int i; | ||
857 | 870 | ||
858 | len += scnprintf(buf + len, sizeof(buf) - len, | 871 | for (i = 0; i < ARRAY_SIZE(reset_cause); i++) { |
859 | "%17s: %2d\n", "Baseband Hang", | 872 | if (!reset_cause[i]) |
860 | sc->debug.stats.reset[RESET_TYPE_BB_HANG]); | 873 | continue; |
861 | len += scnprintf(buf + len, sizeof(buf) - len, | 874 | |
862 | "%17s: %2d\n", "Baseband Watchdog", | 875 | len += scnprintf(buf + len, sizeof(buf) - len, |
863 | sc->debug.stats.reset[RESET_TYPE_BB_WATCHDOG]); | 876 | "%17s: %2d\n", reset_cause[i], |
864 | len += scnprintf(buf + len, sizeof(buf) - len, | 877 | sc->debug.stats.reset[i]); |
865 | "%17s: %2d\n", "Fatal HW Error", | 878 | } |
866 | sc->debug.stats.reset[RESET_TYPE_FATAL_INT]); | ||
867 | len += scnprintf(buf + len, sizeof(buf) - len, | ||
868 | "%17s: %2d\n", "TX HW error", | ||
869 | sc->debug.stats.reset[RESET_TYPE_TX_ERROR]); | ||
870 | len += scnprintf(buf + len, sizeof(buf) - len, | ||
871 | "%17s: %2d\n", "TX Path Hang", | ||
872 | sc->debug.stats.reset[RESET_TYPE_TX_HANG]); | ||
873 | len += scnprintf(buf + len, sizeof(buf) - len, | ||
874 | "%17s: %2d\n", "PLL RX Hang", | ||
875 | sc->debug.stats.reset[RESET_TYPE_PLL_HANG]); | ||
876 | len += scnprintf(buf + len, sizeof(buf) - len, | ||
877 | "%17s: %2d\n", "MAC Hang", | ||
878 | sc->debug.stats.reset[RESET_TYPE_MAC_HANG]); | ||
879 | len += scnprintf(buf + len, sizeof(buf) - len, | ||
880 | "%17s: %2d\n", "Stuck Beacon", | ||
881 | sc->debug.stats.reset[RESET_TYPE_BEACON_STUCK]); | ||
882 | len += scnprintf(buf + len, sizeof(buf) - len, | ||
883 | "%17s: %2d\n", "MCI Reset", | ||
884 | sc->debug.stats.reset[RESET_TYPE_MCI]); | ||
885 | 879 | ||
886 | if (len > sizeof(buf)) | 880 | if (len > sizeof(buf)) |
887 | len = sizeof(buf); | 881 | len = sizeof(buf); |