diff options
Diffstat (limited to 'package/mac80211/patches/404-ath9k-create-a-common-debugfs_root-for-all-device-i.patch')
-rw-r--r-- | package/mac80211/patches/404-ath9k-create-a-common-debugfs_root-for-all-device-i.patch | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/package/mac80211/patches/404-ath9k-create-a-common-debugfs_root-for-all-device-i.patch b/package/mac80211/patches/404-ath9k-create-a-common-debugfs_root-for-all-device-i.patch deleted file mode 100644 index bace6b5992..0000000000 --- a/package/mac80211/patches/404-ath9k-create-a-common-debugfs_root-for-all-device-i.patch +++ /dev/null @@ -1,141 +0,0 @@ -From 8f94fb99b3f88aeff95743633afcc88147b7a475 Mon Sep 17 00:00:00 2001 -From: Gabor Juhos <juhosg@openwrt.org> -Date: Thu, 5 Mar 2009 15:07:10 +0100 -Subject: [PATCH] ath9k: create a common debugfs_root for all device instances - -The driver are trying to create an 'ath9k' directory in debugfs for each -device currently. If there are more than one device in the system, the -second try will always fail. - -Changes-licensed-under: ISC - -Signed-off-by: Gabor Juhos <juhosg@openwrt.org> -Signed-off-by: Imre Kaloz <kaloz@openwrt.org> ---- - drivers/net/wireless/ath9k/debug.c | 24 ++++++++++++++++++------ - drivers/net/wireless/ath9k/debug.h | 12 +++++++++++- - drivers/net/wireless/ath9k/main.c | 13 ++++++++++++- - 3 files changed, 41 insertions(+), 8 deletions(-) - ---- a/drivers/net/wireless/ath9k/debug.c -+++ b/drivers/net/wireless/ath9k/debug.c -@@ -19,6 +19,8 @@ - static unsigned int ath9k_debug = DBG_DEFAULT; - module_param_named(debug, ath9k_debug, uint, 0); - -+static struct dentry *ath9k_debugfs_root; -+ - void DPRINTF(struct ath_softc *sc, int dbg_mask, const char *fmt, ...) - { - if (!sc) -@@ -491,12 +493,8 @@ int ath9k_init_debug(struct ath_softc *s - { - sc->debug.debug_mask = ath9k_debug; - -- sc->debug.debugfs_root = debugfs_create_dir(KBUILD_MODNAME, NULL); -- if (!sc->debug.debugfs_root) -- goto err; -- - sc->debug.debugfs_phy = debugfs_create_dir(wiphy_name(sc->hw->wiphy), -- sc->debug.debugfs_root); -+ ath9k_debugfs_root); - if (!sc->debug.debugfs_phy) - goto err; - -@@ -538,5 +536,19 @@ void ath9k_exit_debug(struct ath_softc * - debugfs_remove(sc->debug.debugfs_interrupt); - debugfs_remove(sc->debug.debugfs_dma); - debugfs_remove(sc->debug.debugfs_phy); -- debugfs_remove(sc->debug.debugfs_root); -+} -+ -+int ath9k_debug_create_root(void) -+{ -+ ath9k_debugfs_root = debugfs_create_dir(KBUILD_MODNAME, NULL); -+ if (!ath9k_debugfs_root) -+ return -ENOENT; -+ -+ return 0; -+} -+ -+void ath9k_debug_remove_root(void) -+{ -+ debugfs_remove(ath9k_debugfs_root); -+ ath9k_debugfs_root = NULL; - } ---- a/drivers/net/wireless/ath9k/debug.h -+++ b/drivers/net/wireless/ath9k/debug.h -@@ -102,7 +102,6 @@ struct ath_stats { - - struct ath9k_debug { - int debug_mask; -- struct dentry *debugfs_root; - struct dentry *debugfs_phy; - struct dentry *debugfs_dma; - struct dentry *debugfs_interrupt; -@@ -114,6 +113,8 @@ struct ath9k_debug { - void DPRINTF(struct ath_softc *sc, int dbg_mask, const char *fmt, ...); - int ath9k_init_debug(struct ath_softc *sc); - void ath9k_exit_debug(struct ath_softc *sc); -+int ath9k_debug_create_root(void); -+void ath9k_debug_remove_root(void); - void ath_debug_stat_interrupt(struct ath_softc *sc, enum ath9k_int status); - void ath_debug_stat_rc(struct ath_softc *sc, struct sk_buff *skb); - void ath_debug_stat_retries(struct ath_softc *sc, int rix, -@@ -135,6 +136,15 @@ static inline void ath9k_exit_debug(stru - { - } - -+static inline int ath9k_debug_create_root(void) -+{ -+ return 0; -+} -+ -+static inline void ath9k_debug_remove_root(void) -+{ -+} -+ - static inline void ath_debug_stat_interrupt(struct ath_softc *sc, - enum ath9k_int status) - { ---- a/drivers/net/wireless/ath9k/main.c -+++ b/drivers/net/wireless/ath9k/main.c -@@ -2864,12 +2864,20 @@ static int __init ath9k_init(void) - goto err_out; - } - -+ error = ath9k_debug_create_root(); -+ if (error) { -+ printk(KERN_ERR -+ "ath9k: Unable to create debugfs root: %d\n", -+ error); -+ goto err_rate_unregister; -+ } -+ - error = ath_pci_init(); - if (error < 0) { - printk(KERN_ERR - "ath9k: No PCI devices found, driver not installed.\n"); - error = -ENODEV; -- goto err_rate_unregister; -+ goto err_remove_root; - } - - error = ath_ahb_init(); -@@ -2883,6 +2891,8 @@ static int __init ath9k_init(void) - err_pci_exit: - ath_pci_exit(); - -+ err_remove_root: -+ ath9k_debug_remove_root(); - err_rate_unregister: - ath_rate_control_unregister(); - err_out: -@@ -2894,6 +2904,7 @@ static void __exit ath9k_exit(void) - { - ath_ahb_exit(); - ath_pci_exit(); -+ ath9k_debug_remove_root(); - ath_rate_control_unregister(); - printk(KERN_INFO "%s: Driver unloaded\n", dev_info); - } |