ARM: dts: qcom: msm8960: expressatt: Add coreriver,tc360-touchkey

Add the tc360 touchkey. It's unknown if this is the actual model of the
touchkey, as downstream doesn't mention a variant, but this works.

Link:
https://github.com/LineageOS/android_kernel_samsung_d2/blob/stable/cm-12.0-YNG4N/drivers/input/keyboard/cypress_touchkey_236/Makefile#L5

Assisted-by: Claude:claude-opus-4.6
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Rudraksha Gupta <guptarud@gmail.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://github.com/LineageOS/android_kernel_samsung_d2/blob/stable/cm-12.0-YNG4N/drivers/input/keyboard/cypress_touchkey_236/Makefile#L5
Link: https://lore.kernel.org/r/20260527-expressatt-touchkey-v2-1-049dca41fc3a@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
Rudraksha Gupta 2026-05-27 19:13:41 -07:00 committed by Bjorn Andersson
parent 28236bb8f5
commit 346e9112f3

View File

@ -52,6 +52,40 @@ key-volume-down {
linux,code = <KEY_VOLUMEDOWN>;
};
};
touchkey_enable: touchkey-enable {
compatible = "regulator-fixed";
regulator-name = "touchkey_enable";
gpio = <&tlmm 51 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-boot-on;
};
i2c-gpio-touchkey {
compatible = "i2c-gpio";
#address-cells = <1>;
#size-cells = <0>;
sda-gpios = <&tlmm 71 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
scl-gpios = <&tlmm 72 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
pinctrl-0 = <&touchkey_i2c_pins>;
pinctrl-names = "default";
i2c-gpio,delay-us = <2>;
touchkey@20 {
compatible = "coreriver,tc360-touchkey";
reg = <0x20>;
interrupts-extended = <&tlmm 52 IRQ_TYPE_EDGE_FALLING>;
pinctrl-0 = <&touchkey_irq_pin>;
pinctrl-names = "default";
vddio-supply = <&touchkey_enable>;
vdd-supply = <&pm8921_l29>;
vcc-supply = <&pm8921_l29>;
linux,keycodes = <KEY_MENU KEY_BACK>;
};
};
};
&gsbi2 {
@ -198,6 +232,20 @@ firmware-pins {
bias-disable;
};
};
touchkey_i2c_pins: touchkey-i2c-state {
pins = "gpio71", "gpio72";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
touchkey_irq_pin: touchkey-irq-state {
pins = "gpio52";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
};
&pm8921 {
@ -420,6 +468,12 @@ pm8921_l25: l25 {
bias-pull-down;
};
pm8921_l29: l29 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
bias-pull-down;
};
/* Low Voltage Switch */
pm8921_lvs1: lvs1 {
bias-pull-down;