arm64: tegra: Add gpio-keys on Jetson Xavier
authorThierry Reding <treding@nvidia.com>
Wed, 28 Nov 2018 17:19:57 +0000 (18:19 +0100)
committerThierry Reding <treding@nvidia.com>
Mon, 3 Dec 2018 15:31:35 +0000 (16:31 +0100)
The power and force recovery buttons found on Jetson Xavier are hooked
up to two Tegra GPIOs. The power button can also function as a wake-up
source.

Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts

index 2223b2b..2749370 100644 (file)
@@ -1,6 +1,9 @@
 // SPDX-License-Identifier: GPL-2.0
 /dts-v1/;
 
+#include <dt-bindings/input/linux-event-codes.h>
+#include <dt-bindings/input/gpio-keys.h>
+
 #include "tegra194-p2888.dtsi"
 
 / {
                #cooling-cells = <2>;
        };
 
+       gpio-keys {
+               compatible = "gpio-keys";
+
+               force-recovery {
+                       label = "Force Recovery";
+                       gpios = <&gpio TEGRA194_MAIN_GPIO(G, 0)
+                                      GPIO_ACTIVE_LOW>;
+                       linux,input-type = <EV_KEY>;
+                       linux,code = <BTN_1>;
+                       debounce-interval = <10>;
+               };
+
+               power {
+                       label = "Power";
+                       gpios = <&gpio_aon TEGRA194_AON_GPIO(EE, 4)
+                                          GPIO_ACTIVE_LOW>;
+                       linux,input-type = <EV_KEY>;
+                       linux,code = <KEY_POWER>;
+                       debounce-interval = <10>;
+                       wakeup-event-action = <EV_ACT_ASSERTED>;
+                       wakeup-source;
+               };
+       };
+
        thermal-zones {
                cpu {
                        polling-delay = <0>;