aboutsummaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/555-ath9k-allow-to-disable-bands-via-platform-data.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/mac80211/patches/555-ath9k-allow-to-disable-bands-via-platform-data.patch')
-rw-r--r--package/mac80211/patches/555-ath9k-allow-to-disable-bands-via-platform-data.patch70
1 files changed, 0 insertions, 70 deletions
diff --git a/package/mac80211/patches/555-ath9k-allow-to-disable-bands-via-platform-data.patch b/package/mac80211/patches/555-ath9k-allow-to-disable-bands-via-platform-data.patch
deleted file mode 100644
index fc0243162f..0000000000
--- a/package/mac80211/patches/555-ath9k-allow-to-disable-bands-via-platform-data.patch
+++ /dev/null
@@ -1,70 +0,0 @@
---- a/include/linux/ath9k_platform.h
-+++ b/include/linux/ath9k_platform.h
-@@ -33,6 +33,9 @@ struct ath9k_platform_data {
-
- bool endian_check;
- bool is_clk_25mhz;
-+ bool disable_2ghz;
-+ bool disable_5ghz;
-+
- int (*get_mac_revision)(void);
- int (*external_reset)(void);
-
---- a/drivers/net/wireless/ath/ath9k/hw.c
-+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -2448,17 +2448,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
-@@ -940,6 +940,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
-@@ -592,6 +592,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;
- }