ath79: change WPS to Wifi button on TL-WPA8630P v2
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sun, 16 Aug 2020 00:07:14 +0000 (02:07 +0200)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Mon, 17 Aug 2020 13:25:51 +0000 (15:25 +0200)
Both TL-WPA8630(P) v1 and v2 feature a button labelled "WiFi".
While this is implemented as KEY_RFKILL for v1 in ar71xx and ath79,
the v2 sets it up as WPS button.

According to the manual, the behavior in OEM firmware is:
"Press and hold the button for 1 second to copy wireless settings
from the main router to the extender. Go to Wi-Fi Clone for more
information. Press and hold the button for at least 5 seconds to
turn the wireless function on or off."

Consequently, and since this is historic behavior on v1 in OpenWrt,
we set this button to KEY_RFKILL on both revisions.

Fixes: ab74def0db93 ("ath79: add support for TP-Link TL-WPA8630P v2")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/ath79/dts/qca9563_tplink_tl-wpa8630-v1.dts
target/linux/ath79/dts/qca9563_tplink_tl-wpa8630.dtsi
target/linux/ath79/dts/qca9563_tplink_tl-wpa8630p-v2.dtsi

index 8912e2fc7c211c956e8d5c4f20b42b42c9b67f36..0dd14896f0d3159f1981b2cc8e14381284d23be6 100644 (file)
        };
 };
 
-&keys {
-       wifi {
-               label = "WiFi button";
-               linux,code = <KEY_RFKILL>;
-               gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
-               debounce-interval = <60>;
-       };
-};
-
 &partitions {
        uboot: partition@0 {
                label = "u-boot";
index 68b455c66a18aca747243d094453d451d6687113..1f16f9a6174859221dc20d7c31144ef95a48b62b 100644 (file)
@@ -13,7 +13,7 @@
                led-upgrade = &led_power;
        };
 
-       keys: keys {
+       keys {
                compatible = "gpio-keys";
 
                reset {
                        gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
                        debounce-interval = <60>;
                };
+
+               wifi {
+                       label = "WiFi button";
+                       linux,code = <KEY_RFKILL>;
+                       gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
+                       debounce-interval = <60>;
+               };
        };
 
        leds {
index 97eeb45d6572570fc29e7a9be01dce951d7afded..2389fe9734c46eaf79a651b4fa28a6ca25e09be2 100644 (file)
        };
 };
 
-&keys {
-       wps {
-               label = "WPS button";
-               linux,code = <KEY_WPS_BUTTON>;
-               gpios = <&gpio 8 GPIO_ACTIVE_LOW>;
-               debounce-interval = <60>;
-       };
-};
-
 &partitions {
        partition@0 {
                label = "factory-uboot";