diff mbox series

arm64: dts: qcom: c630: Expose LID events

Message ID 20201125060838.165576-1-bjorn.andersson@linaro.org
State Accepted
Commit 71b83b74cca3f6b583b7c343896be3922ea80466
Headers show
Series arm64: dts: qcom: c630: Expose LID events | expand

Commit Message

Bjorn Andersson Nov. 25, 2020, 6:08 a.m. UTC
The LID state can be read from GPIO 124 and the "tablet mode" from GPIO
95, expose these to the system using gpio-keys and mark the falling edge
of the LID state as a wakeup-source - to wake the system from suspend.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>

---
 .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 39 +++++++++++++++++++
 1 file changed, 39 insertions(+)

-- 
2.29.2

Comments

Shawn Guo Nov. 30, 2020, 6:20 a.m. UTC | #1
On Wed, Nov 25, 2020 at 12:08:38AM -0600, Bjorn Andersson wrote:
> The LID state can be read from GPIO 124 and the "tablet mode" from GPIO
> 95, expose these to the system using gpio-keys and mark the falling edge
> of the LID state as a wakeup-source - to wake the system from suspend.
> 
> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>

Acked-by: Shawn Guo <shawn.guo@linaro.org>
Steev Klimaszewski Nov. 30, 2020, 4:19 p.m. UTC | #2
On 11/25/20 12:08 AM, Bjorn Andersson wrote:
> The LID state can be read from GPIO 124 and the "tablet mode" from GPIO

> 95, expose these to the system using gpio-keys and mark the falling edge

> of the LID state as a wakeup-source - to wake the system from suspend.

>

> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>

> ---

>  .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 39 +++++++++++++++++++

>  1 file changed, 39 insertions(+)

>

> diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts

> index bb314973eb0c..f956dbf664c1 100644

> --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts

> +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts

> @@ -8,6 +8,8 @@

>  /dts-v1/;

>  

>  #include <dt-bindings/gpio/gpio.h>

> +#include <dt-bindings/input/gpio-keys.h>

> +#include <dt-bindings/input/input.h>

>  #include <dt-bindings/regulator/qcom,rpmh-regulator.h>

>  #include <dt-bindings/sound/qcom,q6afe.h>

>  #include <dt-bindings/sound/qcom,q6asm.h>

> @@ -21,6 +23,27 @@ / {

>  	aliases {

>  		hsuart0 = &uart6;

>  	};

> +

> +	gpio-keys {

> +		compatible = "gpio-keys";

> +

> +		pinctrl-names = "default";

> +		pinctrl-0 = <&lid_pin_active>, <&mode_pin_active>;

> +

> +		lid {

> +			gpios = <&tlmm 124 GPIO_ACTIVE_HIGH>;

> +			linux,input-type = <EV_SW>;

> +			linux,code = <SW_LID>;

> +			wakeup-source;

> +			wakeup-event-action = <EV_ACT_DEASSERTED>;

> +		};

> +

> +		mode {

> +			gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;

> +			linux,input-type = <EV_SW>;

> +			linux,code = <SW_TABLET_MODE>;

> +		};

> +	};

>  };

>  

>  &adsp_pas {

> @@ -466,6 +489,22 @@ wcd_intr_default: wcd_intr_default {

>  		bias-pull-down;

>  		drive-strength = <2>;

>  	};

> +

> +	lid_pin_active: lid-pin {

> +		pins = "gpio124";

> +		function = "gpio";

> +

> +		input-enable;

> +		bias-disable;

> +	};

> +

> +	mode_pin_active: mode-pin {

> +		pins = "gpio95";

> +		function = "gpio";

> +

> +		input-enable;

> +		bias-disable;

> +	};

>  };

>  

>  &uart6 {



Tested-by: Steev Klimaszewski <steev@kali.org>
patchwork-bot+linux-arm-msm@kernel.org Nov. 30, 2020, 7 p.m. UTC | #3
Hello:

This patch was applied to qcom/linux.git (refs/heads/for-next):

On Wed, 25 Nov 2020 00:08:38 -0600 you wrote:
> The LID state can be read from GPIO 124 and the "tablet mode" from GPIO

> 95, expose these to the system using gpio-keys and mark the falling edge

> of the LID state as a wakeup-source - to wake the system from suspend.

> 

> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>

> ---

>  .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 39 +++++++++++++++++++

>  1 file changed, 39 insertions(+)


Here is the summary with links:
  - arm64: dts: qcom: c630: Expose LID events
    https://git.kernel.org/qcom/c/71b83b74cca3

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
index bb314973eb0c..f956dbf664c1 100644
--- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
+++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
@@ -8,6 +8,8 @@ 
 /dts-v1/;
 
 #include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/gpio-keys.h>
+#include <dt-bindings/input/input.h>
 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 #include <dt-bindings/sound/qcom,q6afe.h>
 #include <dt-bindings/sound/qcom,q6asm.h>
@@ -21,6 +23,27 @@  / {
 	aliases {
 		hsuart0 = &uart6;
 	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&lid_pin_active>, <&mode_pin_active>;
+
+		lid {
+			gpios = <&tlmm 124 GPIO_ACTIVE_HIGH>;
+			linux,input-type = <EV_SW>;
+			linux,code = <SW_LID>;
+			wakeup-source;
+			wakeup-event-action = <EV_ACT_DEASSERTED>;
+		};
+
+		mode {
+			gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
+			linux,input-type = <EV_SW>;
+			linux,code = <SW_TABLET_MODE>;
+		};
+	};
 };
 
 &adsp_pas {
@@ -466,6 +489,22 @@  wcd_intr_default: wcd_intr_default {
 		bias-pull-down;
 		drive-strength = <2>;
 	};
+
+	lid_pin_active: lid-pin {
+		pins = "gpio124";
+		function = "gpio";
+
+		input-enable;
+		bias-disable;
+	};
+
+	mode_pin_active: mode-pin {
+		pins = "gpio95";
+		function = "gpio";
+
+		input-enable;
+		bias-disable;
+	};
 };
 
 &uart6 {