Эх сурвалжийг харах

ath9k: move spectral scan support under a separate config symbol

At the moment, spectral scan support, and with it RELAY, is always enabled
with ATH9K[_HTC]_DEBUGFS. Spectral scan support is currently the only user
of RELAY in ath9k, and it unconditionally reserves a relay channel.

Having debugfs support in ath9k is often useful even on very small embedded
routers, where we'd rather like to avoid the code size and RAM usage of the
relay support.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Matthias Schiffer 7 жил өмнө
parent
commit
9df7ddc3ed

+ 10 - 4
drivers/net/wireless/ath/ath9k/Kconfig

@@ -61,13 +61,12 @@ config ATH9K_DEBUGFS
 	depends on ATH9K && DEBUG_FS
 	depends on ATH9K && DEBUG_FS
 	select MAC80211_DEBUGFS
 	select MAC80211_DEBUGFS
 	select ATH9K_COMMON_DEBUG
 	select ATH9K_COMMON_DEBUG
-	select RELAY
 	---help---
 	---help---
 	  Say Y, if you need access to ath9k's statistics for
 	  Say Y, if you need access to ath9k's statistics for
 	  interrupts, rate control, etc.
 	  interrupts, rate control, etc.
 
 
-	  Also required for changing debug message flags at run time.
-	  As well as access to the FFT/spectral data and TX99.
+	  Also required for changing debug message flags at run time and for
+	  TX99.
 
 
 config ATH9K_STATION_STATISTICS
 config ATH9K_STATION_STATISTICS
 	bool "Detailed station statistics"
 	bool "Detailed station statistics"
@@ -177,7 +176,6 @@ config ATH9K_HTC_DEBUGFS
 	bool "Atheros ath9k_htc debugging"
 	bool "Atheros ath9k_htc debugging"
 	depends on ATH9K_HTC && DEBUG_FS
 	depends on ATH9K_HTC && DEBUG_FS
 	select ATH9K_COMMON_DEBUG
 	select ATH9K_COMMON_DEBUG
-	select RELAY
 	---help---
 	---help---
 	  Say Y, if you need access to ath9k_htc's statistics.
 	  Say Y, if you need access to ath9k_htc's statistics.
 	  As well as access to the FFT/spectral data.
 	  As well as access to the FFT/spectral data.
@@ -192,3 +190,11 @@ config ATH9K_HWRNG
 
 
 	  Say Y, feeds the entropy directly from the WiFi driver to the input
 	  Say Y, feeds the entropy directly from the WiFi driver to the input
 	  pool.
 	  pool.
+
+config ATH9K_COMMON_SPECTRAL
+	bool "Atheros ath9k/ath9k_htc spectral scan support"
+	depends on ATH9K_DEBUGFS || ATH9K_HTC_DEBUGFS
+	select RELAY
+	default n
+	---help---
+	  Say Y to enable access to the FFT/spectral data via debugfs.

+ 2 - 2
drivers/net/wireless/ath/ath9k/Makefile

@@ -62,8 +62,8 @@ ath9k_common-y:=	common.o \
 			common-init.o \
 			common-init.o \
 			common-beacon.o \
 			common-beacon.o \
 
 
-ath9k_common-$(CONFIG_ATH9K_COMMON_DEBUG) += common-debug.o \
-					     common-spectral.o
+ath9k_common-$(CONFIG_ATH9K_COMMON_DEBUG) += common-debug.o
+ath9k_common-$(CONFIG_ATH9K_COMMON_SPECTRAL) += common-spectral.o
 
 
 ath9k_htc-y +=	htc_hst.o \
 ath9k_htc-y +=	htc_hst.o \
 		hif_usb.o \
 		hif_usb.o \

+ 2 - 2
drivers/net/wireless/ath/ath9k/common-spectral.h

@@ -151,7 +151,7 @@ static inline u8 spectral_bitmap_weight(u8 *bins)
 	return bins[0] & 0x3f;
 	return bins[0] & 0x3f;
 }
 }
 
 
-#ifdef CONFIG_ATH9K_COMMON_DEBUG
+#ifdef CONFIG_ATH9K_COMMON_SPECTRAL
 void ath9k_cmn_spectral_init_debug(struct ath_spec_scan_priv *spec_priv, struct dentry *debugfs_phy);
 void ath9k_cmn_spectral_init_debug(struct ath_spec_scan_priv *spec_priv, struct dentry *debugfs_phy);
 void ath9k_cmn_spectral_deinit_debug(struct ath_spec_scan_priv *spec_priv);
 void ath9k_cmn_spectral_deinit_debug(struct ath_spec_scan_priv *spec_priv);
 
 
@@ -183,6 +183,6 @@ static inline int ath_cmn_process_fft(struct ath_spec_scan_priv *spec_priv,
 {
 {
 	return 0;
 	return 0;
 }
 }
-#endif /* CONFIG_ATH9K_COMMON_DEBUG */
+#endif /* CONFIG_ATH9K_COMMON_SPECTRAL */
 
 
 #endif /* SPECTRAL_H */
 #endif /* SPECTRAL_H */