2022-07-23 19:05:51

by Lin, Meng-Bo

[permalink] [raw]
Subject: [PATCH v6 4/5] arm64: dts: qcom: msm8916-samsung-e2015: Add touchkey

On the Samsung Galaxy E5 and E7 the touch key is supplied by a single
fixed regulator (enabled via GPIO 97) that supplies both MCU and LED.
Add it to the device tree.

Signed-off-by: Lin, Meng-Bo <[email protected]>
---
.../qcom/msm8916-samsung-e2015-common.dtsi | 26 +++++++++++++++++++
.../dts/qcom/msm8916-samsung-grandmax.dts | 4 +++
2 files changed, 30 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi b/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi
index 3677fd81b6c1..3b56892a05d2 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-e2015-common.dtsi
@@ -26,6 +26,19 @@ vibrator: vibrator {
pinctrl-names = "default";
pinctrl-0 = <&motor_en_default>;
};
+
+ reg_touch_key: regulator-touch-key {
+ compatible = "regulator-fixed";
+ regulator-name = "touch_key";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+
+ gpio = <&msmgpio 97 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&tkey_en_default>;
+ };
};

&blsp_i2c2 {
@@ -36,6 +49,11 @@ &blsp_i2c2 {
/delete-node/ magnetometer@12;
};

+&touchkey {
+ vcc-supply = <&reg_touch_key>;
+ vdd-supply = <&reg_touch_key>;
+};
+
&msmgpio {
motor_en_default: motor-en-default {
pins = "gpio76";
@@ -44,4 +62,12 @@ motor_en_default: motor-en-default {
drive-strength = <2>;
bias-disable;
};
+
+ tkey_en_default: tkey-en-default {
+ pins = "gpio97";
+ function = "gpio";
+
+ drive-strength = <2>;
+ bias-disable;
+ };
};
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts
index 74c07a970317..cbb012d02a35 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-grandmax.dts
@@ -41,6 +41,10 @@ &vibrator {
enable-gpios = <&msmgpio 72 GPIO_ACTIVE_HIGH>;
};

+&reg_touch_key {
+ status = "disabled";
+};
+
&msmgpio {
gpio_leds_default: gpio-led-default {
pins = "gpio60";
--
2.30.2