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: 9601d94138 ("add support for TP-Link TL-WR841N/ND v8")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
Adrian Schmutzler 2020-07-08 20:48:57 +02:00
parent 42dc5c2a3f
commit 5e86877f36
4 changed files with 51 additions and 34 deletions

View File

@ -15,17 +15,6 @@
label-mac-device = &wmac; 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 { leds: leds {
compatible = "gpio-leds"; compatible = "gpio-leds";

View File

@ -6,16 +6,25 @@
/ { / {
model = "TP-Link TL-MR3420 v2"; model = "TP-Link TL-MR3420 v2";
compatible = "tplink,tl-mr3420-v2", "qca,ar9341"; compatible = "tplink,tl-mr3420-v2", "qca,ar9341";
keys {
compatible = "gpio-keys";
rfkill {
label = "WiFi";
linux,code = <KEY_RFKILL>;
gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
debounce-interval = <60>;
}; };
&keys {
reset { reset {
label = "Reset"; label = "Reset/WPS";
linux,code = <KEY_RESTART>; linux,code = <KEY_RESTART>;
gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
debounce-interval = <60>; debounce-interval = <60>;
}; };
}; };
};
&leds { &leds {
usb { usb {

View File

@ -6,9 +6,18 @@
/ { / {
model = "TP-Link TL-WR841N/ND v8"; model = "TP-Link TL-WR841N/ND v8";
compatible = "tplink,tl-wr841-v8", "qca,ar9341"; compatible = "tplink,tl-wr841-v8", "qca,ar9341";
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>;
}; };
&keys {
reset { reset {
label = "Reset"; label = "Reset";
linux,code = <KEY_RESTART>; linux,code = <KEY_RESTART>;
@ -16,6 +25,7 @@
debounce-interval = <60>; debounce-interval = <60>;
}; };
}; };
};
&spi { &spi {
num-cs = <1>; num-cs = <1>;

View File

@ -7,6 +7,24 @@
model = "TP-Link TL-WR842N/ND v2"; model = "TP-Link TL-WR842N/ND v2";
compatible = "tplink,tl-wr842n-v2", "qca,ar9341"; 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 { gpio-export {
compatible = "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 { &leds {
usb { usb {
label = "tp-link:green:usb"; label = "tp-link:green:usb";