Skip to contentSkip to conversation

arm64: dts: qcom: sc8280xp-crd: add support for volume-up key

PATCH Applied Johan Hovold 4 participants 5 messages Mar 7, 2025 – Mar 17, 2025

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 arm64: dts: qcom: sc8280xp-crd: add support for volume-up key

Add support for the keypad volume-up key on the debug extension board.

This is useful to have when testing PMIC interrupt handling, and the key can also be used to wake up from deep suspend states (CX shutdown).

---
 arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
arch/arm64/boot/dts/qcom/sc8280xp-crd.dts +22 -0
index 75adaa19d1c3..8badf7f49b95 100644
@@ -37,6 +37,20 @@ chosen {
 		stdout-path = "serial0:115200n8";
 	};
 
+	gpio-keys {
+		compatible = "gpio-keys";
+
+		pinctrl-0 = <&kypd_vol_up_n>;
+		pinctrl-names = "default";
+
+		key-vol-up {
+			label = "volume_up";
+			gpios = <&pmc8280_1_gpios 6 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_VOLUMEUP>;
+			wakeup-source;
+		};
+	};
+
 	pmic-glink {
 		compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink";
 
@@ -885,6 +899,14 @@ edp_bl_reg_en: edp-bl-reg-en-state {
 		function = "normal";
 	};
 
+	kypd_vol_up_n: kypd-vol-up-n-state {
+		pins = "gpio6";
+		function = "normal";
+		power-source = <0>; /* 3.3 V */
+		bias-pull-up;
+		input-enable;
+	};
+
 	misc_3p3_reg_en: misc-3p3-reg-en-state {
 		pins = "gpio2";
 		function = "normal";
Signature · 1 line
2.45.3
#1 lore raw
Quoted 6 lines · Johan Hovold

Add support for the keypad volume-up key on the debug extension board.

This is useful to have when testing PMIC interrupt handling, and the key can also be used to wake up from deep suspend states (CX shutdown).

I'm lukewarm about this since there is no "actual" button for that. Does the power button not work here?

If systemd induces a shutdown, try setting

HandlePowerKey=ignore

in /etc/systemd/logind.conf

Konrad

#2 lore raw
Quoted 9 lines · Konrad Dybcio
Quoted 6 lines · Johan Hovold

Add support for the keypad volume-up key on the debug extension board.

This is useful to have when testing PMIC interrupt handling, and the key can also be used to wake up from deep suspend states (CX shutdown).

I'm lukewarm about this since there is no "actual" button for that.

There is certainly a physical button on the debug board. And the UEFI firmware also supports it (e.g. it can be used in GRUB).

Quoted 1 line

Does the power button not work here?

For wake up, yes, but not for testing PMIC GPIO interrupts.

Quoted 5 lines

If systemd induces a shutdown, try setting

HandlePowerKey=ignore

in /etc/systemd/logind.conf

I'm aware of that, but the volume key can be used without updating user space (possibly also for CI testing if that signal can be controlled remotely like the power button).

Johan

Reviewed-by
#3 lore raw
Quoted 20 lines · Johan Hovold
Quoted 9 lines · Konrad Dybcio
Quoted 6 lines · Johan Hovold

Add support for the keypad volume-up key on the debug extension board.

This is useful to have when testing PMIC interrupt handling, and the key can also be used to wake up from deep suspend states (CX shutdown).

I'm lukewarm about this since there is no "actual" button for that.

There is certainly a physical button on the debug board. And the UEFI firmware also supports it (e.g. it can be used in GRUB).

Quoted 1 line

Does the power button not work here?

For wake up, yes, but not for testing PMIC GPIO interrupts.

Quoted 2 lines

If systemd induces a shutdown, try setting

Quoted 7 lines
Quoted 3 lines

HandlePowerKey=ignore

in /etc/systemd/logind.conf

I'm aware of that, but the volume key can be used without updating user space (possibly also for CI testing if that signal can be controlled remotely like the power button).

Alright, I see

Konrad

maintainer Applied
#4 lore raw
In reply to Johan Hovold
Quoted 6 lines · Johan Hovold

Add support for the keypad volume-up key on the debug extension board.

This is useful to have when testing PMIC interrupt handling, and the key can also be used to wake up from deep suspend states (CX shutdown).

Applied, thanks!

[1/1] arm64: dts: qcom: sc8280xp-crd: add support for volume-up key

      commit: 3529d9536105b78d9756ef81722554a7f9e3c6b0

Best regards,

Signature · 1 line
Bjorn Andersson <[email protected]>