summaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-11-07 19:41:07 +0000
committerFelix Fietkau <nbd@openwrt.org>2014-11-07 19:41:07 +0000
commit740c755805810f7179891099bae984436f20ff56 (patch)
treea7ecfe2ea1bef247c584adce22f49301b08fd957 /package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch
parent82e2aeb59952899bd0dbcf728d2e2788570a2561 (diff)
downloadmaster-31e0f0ae-740c755805810f7179891099bae984436f20ff56.tar.gz
master-31e0f0ae-740c755805810f7179891099bae984436f20ff56.tar.bz2
master-31e0f0ae-740c755805810f7179891099bae984436f20ff56.zip
mac80211: update to wireless-testing 2014-11-04
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43210
Diffstat (limited to 'package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch')
-rw-r--r--package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch81
1 files changed, 0 insertions, 81 deletions
diff --git a/package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch b/package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch
deleted file mode 100644
index f7185b0d74..0000000000
--- a/package/kernel/mac80211/patches/334-ath9k-allow-disabling-bands-via-platform-data.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From: Felix Fietkau <nbd@openwrt.org>
-Date: Sat, 18 Oct 2014 18:27:23 +0200
-Subject: [PATCH] ath9k: allow disabling bands via platform data
-
-Some devices have multiple bands enables in the EEPROM data, even though
-they are only calibrated for one. Allow platform data to disable
-unsupported bands.
-
-Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
-Signed-off-by: Felix Fietkau <nbd@openwrt.org>
----
-
---- a/drivers/net/wireless/ath/ath9k/hw.c
-+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -2344,17 +2344,25 @@ int ath9k_hw_fill_cap_info(struct ath_hw
- }
-
- eeval = ah->eep_ops->get_eeprom(ah, EEP_OP_MODE);
-- if ((eeval & (AR5416_OPFLAGS_11G | AR5416_OPFLAGS_11A)) == 0) {
-- ath_err(common,
-- "no band has been marked as supported in EEPROM\n");
-- return -EINVAL;
-+
-+ if (eeval & AR5416_OPFLAGS_11A) {
-+ if (ah->disable_5ghz)
-+ ath_warn(common, "disabling 5GHz band\n");
-+ else
-+ pCap->hw_caps |= ATH9K_HW_CAP_5GHZ;
- }
-
-- if (eeval & AR5416_OPFLAGS_11A)
-- pCap->hw_caps |= ATH9K_HW_CAP_5GHZ;
-+ if (eeval & AR5416_OPFLAGS_11G) {
-+ if (ah->disable_2ghz)
-+ ath_warn(common, "disabling 2GHz band\n");
-+ else
-+ pCap->hw_caps |= ATH9K_HW_CAP_2GHZ;
-+ }
-
-- if (eeval & AR5416_OPFLAGS_11G)
-- pCap->hw_caps |= ATH9K_HW_CAP_2GHZ;
-+ if ((pCap->hw_caps & (ATH9K_HW_CAP_2GHZ | ATH9K_HW_CAP_5GHZ)) == 0) {
-+ ath_err(common, "both bands are disabled\n");
-+ return -EINVAL;
-+ }
-
- if (AR_SREV_9485(ah) ||
- AR_SREV_9285(ah) ||
---- a/drivers/net/wireless/ath/ath9k/hw.h
-+++ b/drivers/net/wireless/ath/ath9k/hw.h
-@@ -930,6 +930,8 @@ struct ath_hw {
- bool is_clk_25mhz;
- int (*get_mac_revision)(void);
- int (*external_reset)(void);
-+ bool disable_2ghz;
-+ bool disable_5ghz;
-
- const struct firmware *eeprom_blob;
-
---- a/drivers/net/wireless/ath/ath9k/init.c
-+++ b/drivers/net/wireless/ath/ath9k/init.c
-@@ -531,6 +531,8 @@ static int ath9k_init_softc(u16 devid, s
- ah->is_clk_25mhz = pdata->is_clk_25mhz;
- ah->get_mac_revision = pdata->get_mac_revision;
- ah->external_reset = pdata->external_reset;
-+ ah->disable_2ghz = pdata->disable_2ghz;
-+ ah->disable_5ghz = pdata->disable_5ghz;
- if (!pdata->endian_check)
- ah->ah_flags |= AH_NO_EEP_SWAP;
- }
---- a/include/linux/ath9k_platform.h
-+++ b/include/linux/ath9k_platform.h
-@@ -34,6 +34,8 @@ struct ath9k_platform_data {
- bool endian_check;
- bool is_clk_25mhz;
- bool tx_gain_buffalo;
-+ bool disable_2ghz;
-+ bool disable_5ghz;
-
- int (*get_mac_revision)(void);
- int (*external_reset)(void);