On 22-04-2025 9:43 p.m., Konrad Dybcio wrote:
On 4/19/25 11:08 AM, Luca Weiss wrote:
From: Adam Honse <calcprogramm...@gmail.com>
Add support for the touchkeys on the Samsung Galaxy Note 3 (hlte).
Signed-off-by: Adam Honse <calcprogramm...@gmail.com>
---
Signed-off-by: Luca Weiss <l...@lucaweiss.eu>
---
.../boot/dts/qcom/qcom-msm8974-samsung-hlte.dts | 45 ++++++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8974-samsung-hlte.dts
b/arch/arm/boot/dts/qcom/qcom-msm8974-samsung-hlte.dts
index
903bb4d125135771504281df50aa11c9b6576a28..17d3e319941b8fd0363af600d93fc10127e4ab21
100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8974-samsung-hlte.dts
+++ b/arch/arm/boot/dts/qcom/qcom-msm8974-samsung-hlte.dts
@@ -50,6 +50,34 @@ key-volume-up {
};
};
+ i2c-gpio-touchkey {
'i2c'?
From what I can tell, there's a few more i2c-gpio "busses" on this
device, like most Samsung devices
https://github.com/LineageOS/android_kernel_samsung_msm8974/blob/lineage-18.1/arch/arm/boot/dts/msm8974/msm8974-sec-hlte-r09.dtsi#L109-L132
So I'd keep the name to not conflict with future with these other ones.
+ compatible = "i2c-gpio";
+
+ sda-gpios = <&tlmm 95 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ scl-gpios = <&tlmm 96 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+
+ pinctrl-0 = <&i2c_touchkey_pins>;
+ pinctrl-names = "default";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ touchkey@20 {
+ compatible = "cypress,midas-touchkey";
+ reg = <0x20>;
+
+ interrupts-extended = <&pm8941_gpios 29
IRQ_TYPE_EDGE_FALLING>;
+
+ pinctrl-0 = <&touchkey_pin>;
+ pinctrl-names = "default";
+
+ vcc-supply = <&pm8941_lvs3>;
+ vdd-supply = <&pm8941_l13>;
+
+ linux,keycodes = <KEY_APPSELECT KEY_BACK>;
+ };
+ };
+
touch_ldo: regulator-touch {
compatible = "regulator-fixed";
regulator-name = "touch-ldo";
@@ -149,6 +177,14 @@ touch_ldo_pin: touchscreen-ldo-state {
power-source = <PM8941_GPIO_S3>;
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
};
+
+ touchkey_pin: touchkey-int-state {
+ pins = "gpio29";
+ function = "normal";
+ bias-disable;
+ input-enable;
+ power-source = <PM8941_GPIO_S3>;
+ };
};
&remoteproc_adsp {
@@ -332,6 +368,9 @@ pm8941_l24: l24 {
regulator-min-microvolt = <3075000>;
regulator-max-microvolt = <3075000>;
};
+
+ pm8941_lvs1: lvs1 {};
LVS1 is unused by anything here - it's probably good to define it, so
that the driver picks it up and regulator_ignore_unused is aware of it
Yes, did you mean here to put the addition of lvs1 into a separate commit?
Regards
Luca
Konrad