aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-07-08 20:48:57 +0200
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-07-21 12:02:35 +0200
commit5e86877f36b0d95127dcef8ed3abf78ecd78061d (patch)
treeff1f24a55cb01619a940cfab58da95bad0d9ea7a /target/linux
parent42dc5c2a3fb680c481200ce8da5a772af83428f6 (diff)
downloadupstream-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.dtsi11
-rw-r--r--target/linux/ath79/dts/ar9341_tplink_tl-mr3420-v2.dts23
-rw-r--r--target/linux/ath79/dts/ar9341_tplink_tl-wr841-v8.dts24
-rw-r--r--target/linux/ath79/dts/ar9341_tplink_tl-wr842n-v2.dts27
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";