ARM: dts: msm8974-FP2: Introduce gpio-keys nodes
authorLuca Weiss <luca@z3ntu.xyz>
Wed, 11 Oct 2017 11:02:26 +0000 (13:02 +0200)
committerAndy Gross <andy.gross@linaro.org>
Wed, 11 Oct 2017 20:52:48 +0000 (15:52 -0500)
This introduces the gpio-keys nodes for keys of the FP2 and the
associated pinctrl state.

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
arch/arm/boot/dts/qcom-msm8974-fairphone-fp2.dts

index 79a5aa8b856a81a62b1635018adf897183fb745a..9332c6e9c535de34a067caa95adefe63fd3a1614 100644 (file)
@@ -1,6 +1,10 @@
 #include "qcom-msm8974.dtsi"
 #include "qcom-pm8841.dtsi"
 #include "qcom-pm8941.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
+
 
 / {
        model = "Fairphone 2";
        chosen {
                stdout-path = "serial0:115200n8";
        };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+               input-name = "gpio-keys";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&gpio_keys_pin_a>;
+
+               camera-snapshot {
+                       label = "camera_snapshot";
+                       gpios = <&pm8941_gpios 1 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_CAMERA>;
+                       wakeup-source;
+                       debounce-interval = <15>;
+               };
+
+               volume-down {
+                       label = "volume_down";
+                       gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_VOLUMEDOWN>;
+                       wakeup-source;
+                       debounce-interval = <15>;
+               };
+
+               volume-up {
+                       label = "volume_up";
+                       gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_VOLUMEUP>;
+                       wakeup-source;
+                       debounce-interval = <15>;
+               };
+       };
 };
 
 &soc {
                status = "ok";
        };
 };
+
+&spmi_bus {
+       pm8941@0 {
+               gpios@c000 {
+                       gpio_keys_pin_a: gpio-keys-active {
+                               pins = "gpio1", "gpio2", "gpio5";
+                               function = "normal";
+
+                               bias-pull-up;
+                               power-source = <PM8941_GPIO_S3>;
+                       };
+               };
+       };
+};