From f0d9e712e459332ec527802f7eaca104c47b14c2 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Sat, 18 Oct 2014 17:38:59 +0000 Subject: mac80211: update to 2014-10-08 Signed-off-by: Felix Fietkau SVN-Revision: 42952 --- ...9k-clean-up-debugfs-print-of-reset-causes.patch | 69 ++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 package/kernel/mac80211/patches/329-ath9k-clean-up-debugfs-print-of-reset-causes.patch (limited to 'package/kernel/mac80211/patches/329-ath9k-clean-up-debugfs-print-of-reset-causes.patch') diff --git a/package/kernel/mac80211/patches/329-ath9k-clean-up-debugfs-print-of-reset-causes.patch b/package/kernel/mac80211/patches/329-ath9k-clean-up-debugfs-print-of-reset-causes.patch new file mode 100644 index 0000000000..0f01a3ae24 --- /dev/null +++ b/package/kernel/mac80211/patches/329-ath9k-clean-up-debugfs-print-of-reset-causes.patch @@ -0,0 +1,69 @@ +From: Felix Fietkau +Date: Sat, 18 Oct 2014 13:36:41 +0200 +Subject: [PATCH] ath9k: clean up debugfs print of reset causes + +Reduce code duplication + +Signed-off-by: Felix Fietkau +--- + +--- 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 fi + size_t count, loff_t *ppos) + { + struct ath_softc *sc = file->private_data; ++ static const char * const reset_cause[__RESET_TYPE_MAX] = { ++ [RESET_TYPE_BB_HANG] = "Baseband Hang", ++ [RESET_TYPE_BB_WATCHDOG] = "Baseband Watchdog", ++ [RESET_TYPE_FATAL_INT] = "Fatal HW Error", ++ [RESET_TYPE_TX_ERROR] = "TX HW error", ++ [RESET_TYPE_TX_GTT] = "Transmit timeout", ++ [RESET_TYPE_TX_HANG] = "TX Path Hang", ++ [RESET_TYPE_PLL_HANG] = "PLL RX Hang", ++ [RESET_TYPE_MAC_HANG] = "MAC Hang", ++ [RESET_TYPE_BEACON_STUCK] = "Stuck Beacon", ++ [RESET_TYPE_MCI] = "MCI Reset", ++ }; + char buf[512]; + unsigned int len = 0; ++ int i; + +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "Baseband Hang", +- sc->debug.stats.reset[RESET_TYPE_BB_HANG]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "Baseband Watchdog", +- sc->debug.stats.reset[RESET_TYPE_BB_WATCHDOG]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "Fatal HW Error", +- sc->debug.stats.reset[RESET_TYPE_FATAL_INT]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "TX HW error", +- sc->debug.stats.reset[RESET_TYPE_TX_ERROR]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "TX Path Hang", +- sc->debug.stats.reset[RESET_TYPE_TX_HANG]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "PLL RX Hang", +- sc->debug.stats.reset[RESET_TYPE_PLL_HANG]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "MAC Hang", +- sc->debug.stats.reset[RESET_TYPE_MAC_HANG]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "Stuck Beacon", +- sc->debug.stats.reset[RESET_TYPE_BEACON_STUCK]); +- len += scnprintf(buf + len, sizeof(buf) - len, +- "%17s: %2d\n", "MCI Reset", +- sc->debug.stats.reset[RESET_TYPE_MCI]); ++ for (i = 0; i < ARRAY_SIZE(reset_cause); i++) { ++ if (!reset_cause[i]) ++ continue; ++ ++ len += scnprintf(buf + len, sizeof(buf) - len, ++ "%17s: %2d\n", reset_cause[i], ++ sc->debug.stats.reset[i]); ++ } + + if (len > sizeof(buf)) + len = sizeof(buf); -- cgit v1.2.3