arm64: dts: qcom: sc8280xp-x13s: Add LID switch
authorBjorn Andersson <bjorn.andersson@linaro.org>
Sat, 30 Jul 2022 19:36:17 +0000 (12:36 -0700)
committerBjorn Andersson <andersson@kernel.org>
Thu, 10 Nov 2022 04:17:55 +0000 (22:17 -0600)
Add gpio-keys for exposing the LID switch state.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Tested-by: Steev Klimaszewski <steev@kali.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20220730193617.1688563-1-bjorn.andersson@linaro.org
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts

index cf0076d7e798c36df7130b0c2547be46ced08523..02083342bfca187d2649d9463833e7b37c2a0b66 100644 (file)
@@ -10,6 +10,8 @@
 #include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
 #include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
 #include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h>
+#include <dt-bindings/input/gpio-keys.h>
+#include <dt-bindings/input/input.h>
 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 
 #include "sc8280xp.dtsi"
                };
        };
 
+       gpio-keys {
+               compatible = "gpio-keys";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&hall_int_n_default>;
+
+               switch-lid {
+                       gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
+                       linux,input-type = <EV_SW>;
+                       linux,code = <SW_LID>;
+                       wakeup-source;
+                       wakeup-event-action = <EV_ACT_DEASSERTED>;
+               };
+       };
+
        vreg_edp_bl: regulator-edp-bl {
                compatible = "regulator-fixed";
 
 &tlmm {
        gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
 
+       hall_int_n_default: hall-int-n-state {
+               pins = "gpio107";
+               function = "gpio";
+               input-enable;
+               bias-disable;
+       };
+
        kybd_default: kybd-default-state {
                disable-pins {
                        pins = "gpio102";