From: Jérôme de Bretagne <[email protected]>

Configure gpio6 to serve as volume down and gpio9 as volume up to enable
the volume up/down keys located at the top of the screen.

Signed-off-by: Jérôme de Bretagne <[email protected]>
---
 .../boot/dts/qcom/sc8280xp-microsoft-arcata.dts    | 42 ++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-arcata.dts 
b/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-arcata.dts
index 
2a6f0c9de7c85a4f0659237846b0430a0b021a40..a300069b5960dbba28601c418951869c94b63938
 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-arcata.dts
+++ b/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-arcata.dts
@@ -6,6 +6,7 @@
 /dts-v1/;
 
 #include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/gpio-keys.h>
 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 
 #include "sc8280xp.dtsi"
@@ -56,6 +57,31 @@ backlight: backlight {
                pinctrl-names = "default";
        };
 
+       gpio-keys {
+               compatible = "gpio-keys";
+
+               pinctrl-0 = <&vol_down_n>, <&vol_up_n>;
+               pinctrl-names = "default";
+
+               key-vol-down {
+                       label = "Volume Down";
+                       gpios = <&pmc8280_1_gpios 6 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_VOLUMEDOWN>;
+                       debounce-interval = <15>;
+                       linux,can-disable;
+                       wakeup-source;
+               };
+
+               key-vol-up {
+                       label = "Volume Up";
+                       gpios = <&pmc8280_1_gpios 9 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_VOLUMEUP>;
+                       debounce-interval = <15>;
+                       linux,can-disable;
+                       wakeup-source;
+               };
+       };
+
        pmic-glink {
                compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink";
 
@@ -939,6 +965,22 @@ edp_bl_en: edp-bl-en-state {
                pins = "gpio8";
                function = "normal";
        };
+
+       vol_down_n: vol-down-n-state {
+               pins = "gpio6";
+               function = "normal";
+               power-source = <1>;
+               input-enable;
+               bias-pull-up;
+       };
+
+       vol_up_n: vol-up-n-state {
+               pins = "gpio9";
+               function = "normal";
+               power-source = <1>;
+               input-enable;
+               bias-pull-up;
+       };
 };
 
 &pmc8280_2_gpios {

-- 
2.47.3


Reply via email to