From 448b9b67e15b85994562a2e585028c0595148a98 Mon Sep 17 00:00:00 2001 From: Martin Blumenstingl Date: Sat, 26 Nov 2016 01:01:14 +0100 Subject: [PATCH 1/1] kernel: mac80211: disable ath9k bands via device tree These properties allow overriding the settings from the EEPROM which indicate whether a band is enabled or not. Setting this property is only needed when the RF circuit does not support the 2.4GHz or 5GHz band while it is enabled nevertheless in the EEPROM. These patches will be replaced with a future upstream version which will introduces an ieee80211 device tree property to disable bands. Signed-off-by: Martin Blumenstingl --- .../557-ath9k-disable-bands-via-dt.patch | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 package/kernel/mac80211/patches/557-ath9k-disable-bands-via-dt.patch diff --git a/package/kernel/mac80211/patches/557-ath9k-disable-bands-via-dt.patch b/package/kernel/mac80211/patches/557-ath9k-disable-bands-via-dt.patch new file mode 100644 index 0000000000..ae447ce1f5 --- /dev/null +++ b/package/kernel/mac80211/patches/557-ath9k-disable-bands-via-dt.patch @@ -0,0 +1,32 @@ +--- a/Documentation/devicetree/bindings/net/wireless/qca,ath9k.txt ++++ b/Documentation/devicetree/bindings/net/wireless/qca,ath9k.txt +@@ -34,6 +34,14 @@ Optional properties: + ath9k wireless chip (in this case the calibration / + EEPROM data will be loaded from userspace using the + kernel firmware loader). ++- qca,disable-2ghz: Overrides the settings from the EEPROM and disables the ++ 2.4GHz band. Setting this property is only needed ++ when the RF circuit does not support the 2.4GHz band ++ while it is enabled nevertheless in the EEPROM. ++- qca,disable-5ghz: Overrides the settings from the EEPROM and disables the ++ 5GHz band. Setting this property is only needed when ++ the RF circuit does not support the 5GHz band while ++ it is enabled nevertheless in the EEPROM. + - mac-address: See ethernet.txt in the parent directory + - local-mac-address: See ethernet.txt in the parent directory + +--- a/drivers/net/wireless/ath/ath9k/init.c ++++ b/drivers/net/wireless/ath/ath9k/init.c +@@ -571,6 +571,12 @@ static int ath9k_of_init(struct ath_soft + + ath_dbg(common, CONFIG, "parsing configuration from OF node\n"); + ++ if (of_property_read_bool(np, "qca,disable-2ghz")) ++ ah->disable_2ghz = true; ++ ++ if (of_property_read_bool(np, "qca,disable-5ghz")) ++ ah->disable_5ghz = true; ++ + if (of_property_read_bool(np, "qca,no-eeprom")) { + /* ath9k-eeprom--.bin */ + scnprintf(eeprom_name, sizeof(eeprom_name), -- 2.30.2