diff options
author | Adrian Schmutzler <freifunk@adrianschmutzler.de> | 2020-07-08 20:48:57 +0200 |
---|---|---|
committer | Adrian Schmutzler <freifunk@adrianschmutzler.de> | 2020-07-21 12:02:35 +0200 |
commit | 5e86877f36b0d95127dcef8ed3abf78ecd78061d (patch) | |
tree | ff1f24a55cb01619a940cfab58da95bad0d9ea7a /target/linux | |
parent | 42dc5c2a3fb680c481200ce8da5a772af83428f6 (diff) | |
download | upstream-5e86877f36b0d95127dcef8ed3abf78ecd78061d.tar.gz upstream-5e86877f36b0d95127dcef8ed3abf78ecd78061d.tar.bz2 upstream-5e86877f36b0d95127dcef8ed3abf78ecd78061d.zip |
ath79: correctly define WiFi switch for TL-WR841ND v8
The TL-WR841ND v8 feature a WiFi switch instead of a button.
This adds the corresponding input-type to prevent booting into
failsafe regularly.
This has been defined correctly in ar71xx, but was overlooked
when migrating to ath79. In contrast, the TL-WR842ND v2, which
has the key set up as switch in ar71xx, actually has a button.
The TL-MR3420 v2 has a button as well and is set up correctly
for both targets. (Information based on TP-Link user guide)
Note:
While looking into this, I found that support PR for TL-MR3420 v2
switched reset button to ACTIVE_HIGH. However, the other two
device still use ACTIVE_LOW. This seems strange, but I cannot
verify it lacking the affected devices.
Fixes: FS#2733
Fixes: 9601d94138de ("add support for TP-Link TL-WR841N/ND v8")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Diffstat (limited to 'target/linux')
-rw-r--r-- | target/linux/ath79/dts/ar9341_tplink.dtsi | 11 | ||||
-rw-r--r-- | target/linux/ath79/dts/ar9341_tplink_tl-mr3420-v2.dts | 23 | ||||
-rw-r--r-- | target/linux/ath79/dts/ar9341_tplink_tl-wr841-v8.dts | 24 | ||||
-rw-r--r-- | target/linux/ath79/dts/ar9341_tplink_tl-wr842n-v2.dts | 27 |
4 files changed, 51 insertions, 34 deletions
diff --git a/target/linux/ath79/dts/ar9341_tplink.dtsi b/target/linux/ath79/dts/ar9341_tplink.dtsi index 6bd7c3409b..c96dbe1918 100644 --- a/target/linux/ath79/dts/ar9341_tplink.dtsi +++ b/target/linux/ath79/dts/ar9341_tplink.dtsi @@ -15,17 +15,6 @@ label-mac-device = &wmac; }; - keys: keys { - compatible = "gpio-keys"; - - rfkill { - label = "WiFi"; - linux,code = <KEY_RFKILL>; - gpios = <&gpio 16 GPIO_ACTIVE_HIGH>; - debounce-interval = <60>; - }; - }; - leds: leds { compatible = "gpio-leds"; diff --git a/target/linux/ath79/dts/ar9341_tplink_tl-mr3420-v2.dts b/target/linux/ath79/dts/ar9341_tplink_tl-mr3420-v2.dts index f864381520..e6cf6ef863 100644 --- a/target/linux/ath79/dts/ar9341_tplink_tl-mr3420-v2.dts +++ b/target/linux/ath79/dts/ar9341_tplink_tl-mr3420-v2.dts @@ -6,14 +6,23 @@ / { model = "TP-Link TL-MR3420 v2"; compatible = "tplink,tl-mr3420-v2", "qca,ar9341"; -}; -&keys { - reset { - label = "Reset"; - linux,code = <KEY_RESTART>; - gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; - debounce-interval = <60>; + keys { + compatible = "gpio-keys"; + + rfkill { + label = "WiFi"; + linux,code = <KEY_RFKILL>; + gpios = <&gpio 16 GPIO_ACTIVE_HIGH>; + debounce-interval = <60>; + }; + + reset { + label = "Reset/WPS"; + linux,code = <KEY_RESTART>; + gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; + debounce-interval = <60>; + }; }; }; diff --git a/target/linux/ath79/dts/ar9341_tplink_tl-wr841-v8.dts b/target/linux/ath79/dts/ar9341_tplink_tl-wr841-v8.dts index 3577e4994f..95a047c6d4 100644 --- a/target/linux/ath79/dts/ar9341_tplink_tl-wr841-v8.dts +++ b/target/linux/ath79/dts/ar9341_tplink_tl-wr841-v8.dts @@ -6,14 +6,24 @@ / { model = "TP-Link TL-WR841N/ND v8"; compatible = "tplink,tl-wr841-v8", "qca,ar9341"; -}; -&keys { - reset { - label = "Reset"; - linux,code = <KEY_RESTART>; - gpios = <&gpio 17 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; + keys { + compatible = "gpio-keys"; + + rfkill { + label = "WiFi"; + linux,code = <KEY_RFKILL>; + linux,input-type = <EV_SW>; + gpios = <&gpio 16 GPIO_ACTIVE_HIGH>; + debounce-interval = <60>; + }; + + reset { + label = "Reset"; + linux,code = <KEY_RESTART>; + gpios = <&gpio 17 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; }; }; diff --git a/target/linux/ath79/dts/ar9341_tplink_tl-wr842n-v2.dts b/target/linux/ath79/dts/ar9341_tplink_tl-wr842n-v2.dts index d9b0ee86f5..4df0feae98 100644 --- a/target/linux/ath79/dts/ar9341_tplink_tl-wr842n-v2.dts +++ b/target/linux/ath79/dts/ar9341_tplink_tl-wr842n-v2.dts @@ -7,6 +7,24 @@ model = "TP-Link TL-WR842N/ND v2"; compatible = "tplink,tl-wr842n-v2", "qca,ar9341"; + keys { + compatible = "gpio-keys"; + + rfkill { + label = "WiFi"; + linux,code = <KEY_RFKILL>; + gpios = <&gpio 16 GPIO_ACTIVE_HIGH>; + debounce-interval = <60>; + }; + + reset { + label = "Reset"; + linux,code = <KEY_RESTART>; + gpios = <&gpio 17 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + gpio-export { compatible = "gpio-export"; @@ -18,15 +36,6 @@ }; }; -&keys { - reset { - label = "Reset"; - linux,code = <KEY_RESTART>; - gpios = <&gpio 17 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; -}; - &leds { usb { label = "tp-link:green:usb"; |