From 4c1d7787d460cd0798eb01a42c6a8a7fc96e2999 Mon Sep 17 00:00:00 2001 From: Alan Luck Date: Sat, 25 Feb 2023 22:17:37 -0800 Subject: [PATCH] ipq806x: Add buttons to OnHub These are the factory reset button (external) and "developer mode" button (hidden inside the case (ASUS) or under a screw in the base (TP-Link)) found on the TP-Link and ASUS OnHub devices. Signed-off-by: Alan Luck [Brian: add description; factor out for both ASUS and TP-Link; use existing pinmux definitions; add keycode for dev button] Signed-off-by: Brian Norris --- .../arch/arm/boot/dts/qcom-ipq8064-onhub.dtsi | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/target/linux/ipq806x/files-5.15/arch/arm/boot/dts/qcom-ipq8064-onhub.dtsi b/target/linux/ipq806x/files-5.15/arch/arm/boot/dts/qcom-ipq8064-onhub.dtsi index 25ba71da00..549c462026 100644 --- a/target/linux/ipq806x/files-5.15/arch/arm/boot/dts/qcom-ipq8064-onhub.dtsi +++ b/target/linux/ipq806x/files-5.15/arch/arm/boot/dts/qcom-ipq8064-onhub.dtsi @@ -5,6 +5,7 @@ #include "qcom-ipq8064-smb208.dtsi" #include +#include #include / { @@ -30,6 +31,28 @@ }; }; + keys { + compatible = "gpio-keys"; + pinctrl-0 = <&button_pins>; + pinctrl-names = "default"; + + reset { + label = "reset"; + gpios = <&qcom_pinmux 16 GPIO_ACTIVE_LOW>; + linux,code = ; + debounce-interval = <60>; + wakeup-source; + }; + + dev { + label = "dev"; + gpios = <&qcom_pinmux 15 GPIO_ACTIVE_LOW>; + linux,code = ; + debounce-interval = <60>; + wakeup-source; + }; + }; + mdio: mdio { compatible = "virtual,mdio-gpio"; #address-cells = <1>; @@ -227,12 +250,17 @@ pins = "gpio17"; output-low; }; + }; + + button_pins: button_pins { recovery { pins = "gpio16"; + function = "gpio"; bias-none; }; developer { pins = "gpio15"; + function = "gpio"; bias-none; }; }; -- 2.30.2