apm821xx: wndr4700: interrupt-driven gpio-keys
authorChristian Lamparter <chunkeey@gmail.com>
Sun, 26 May 2019 14:36:10 +0000 (16:36 +0200)
committerChristian Lamparter <chunkeey@gmail.com>
Fri, 31 May 2019 08:30:03 +0000 (10:30 +0200)
This patch fixes the active_low setting and
converts all of the physical keys on the wndr4700
to utilize the interrupt-driven gpio-keys driver
over the polled version.

The sdcard-insertion hack has been removed since the
block-subsystem will now be polling the device instead.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
target/linux/apm821xx/dts/netgear-wndr4700.dts

index 0f1e97a921d7a075c010f6dd6a57a5a9f849ebea..24d5c33f9061a49d993d2403228a3928391c796f 100644 (file)
 };
 
 &POB0 {
+
        keys {
-               compatible = "gpio-keys-polled";
-               #interrupt-cells = <2>;
-               autorepeat;
-               poll-interval = <60>;   /* 3 * 20 = 60ms */
+               compatible = "gpio-keys";
 
                reset {
                        label = "Reset button";
+                       gpios = <&GPIO0 15 GPIO_ACTIVE_LOW>;
                        linux,code = <KEY_RESTART>;
-                       gpios = <&GPIO0 15 GPIO_ACTIVE_HIGH>;
                        interrupt-parent = <&UIC1>;
                        interrupts = <0x14 IRQ_TYPE_EDGE_FALLING>;
                };
 
                backup_hd {
                        label = "Backup HD button";
-                       gpios = <&GPIO0 19 GPIO_ACTIVE_HIGH>;
+                       gpios = <&GPIO0 19 GPIO_ACTIVE_LOW>;
                        linux,code = <BTN_0>;
                        interrupt-parent = <&UIC1>;
                        interrupts = <0x1e IRQ_TYPE_EDGE_FALLING>;
 
                rfkill {
                        label = "RFKILL button";
-                       gpios = <&GPIO0 20 GPIO_ACTIVE_HIGH>;
+                       gpios = <&GPIO0 20 GPIO_ACTIVE_LOW>;
                        linux,code = <KEY_RFKILL>;
                        interrupt-parent = <&UIC1>;
                        interrupts = <0x1f IRQ_TYPE_EDGE_FALLING>;
 
                wps {
                        label = "WPS button";
-                       gpios = <&GPIO0 23 GPIO_ACTIVE_HIGH>;
+                       gpios = <&GPIO0 23 GPIO_ACTIVE_LOW>;
                        linux,code = <KEY_WPS_BUTTON>;
                        interrupt-parent = <&UIC2>;
                        interrupts = <0x19 IRQ_TYPE_EDGE_FALLING>;
                };
-
-               sdcard {
-                       label = "SDCard inserted";
-                       gpios = <&GPIO0 7 GPIO_ACTIVE_LOW>;
-                       linux,code = <BTN_1>;
-               };
        };
 
        leds {