On 2024/10/14 03:24, Heiko Stuebner wrote:
The TS433 has 3 buttons, power and copy in the front as well as a reset
pinhole button on the back. The power-button is connected to the embedded
controller while the other two buttons are just gpio connected.

Add the gpio-keys definition for the two buttons we can handle right now.

Tested-by: Uwe Kleine-König <[email protected]>
Signed-off-by: Heiko Stuebner <[email protected]>
Link: https://lore.kernel.org/r/[email protected]

[ upstream commit: 9b682d31b24f1f70b5b4d0618095d46e0722b9d8 ]

(cherry picked from commit f0b858c751382ee9faf18f9b19b0817c6b50ac1c)
Reviewed-by: Kever Yang <[email protected]>

Thanks,
- Kever
---
  .../src/arm64/rockchip/rk3568-qnap-ts433.dts  | 29 +++++++++++++++++++
  1 file changed, 29 insertions(+)

diff --git a/dts/upstream/src/arm64/rockchip/rk3568-qnap-ts433.dts 
b/dts/upstream/src/arm64/rockchip/rk3568-qnap-ts433.dts
index 34fc31ea9a3..9f964b6f411 100644
--- a/dts/upstream/src/arm64/rockchip/rk3568-qnap-ts433.dts
+++ b/dts/upstream/src/arm64/rockchip/rk3568-qnap-ts433.dts
@@ -6,6 +6,7 @@
/dts-v1/; +#include <dt-bindings/input/input.h>
  #include <dt-bindings/leds/common.h>
  #include <dt-bindings/gpio/gpio.h>
  #include "rk3568.dtsi"
@@ -24,6 +25,24 @@
                stdout-path = "serial2:115200n8";
        };
+ keys {
+               compatible = "gpio-keys";
+               pinctrl-0 = <&copy_button_pin>, <&reset_button_pin>;
+               pinctrl-names = "default";
+
+               key-copy {
+                       label = "copy";
+                       gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_COPY>;
+               };
+
+               key-reset {
+                       label = "reset";
+                       gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
+               };
+       };
+
        leds {
                compatible = "gpio-leds";
@@ -202,6 +221,16 @@
  };
&pinctrl {
+       keys {
+               copy_button_pin: copy-button-pin {
+                       rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>;
+               };
+
+               reset_button_pin: reset-button-pin {
+                       rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>;
+               };
+       };
+
        leds {
                hdd1_led_pin: hdd1-led-pin {
                        rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_up>;

Reply via email to