]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: qcom: msm8916-longcheer-l8910: Add touchscreen
authorJonathan Albrieux <jonathan.albrieux@gmail.com>
Fri, 19 Sep 2025 14:49:32 +0000 (16:49 +0200)
committerBjorn Andersson <andersson@kernel.org>
Mon, 27 Oct 2025 15:48:31 +0000 (10:48 -0500)
The BQ Aquaris X5 (Longcheer L8910) has a Himax HX852x-ES touchscreen,
which can now be described with the bindings recently added to linux-next.
Add it to the device tree to allow using the touchscreen.

Signed-off-by: Jonathan Albrieux <jonathan.albrieux@gmail.com>
Co-developed-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250919-msm8916-l8910-touchscreen-v1-1-c46e56ec0a3b@gerhold.net
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/msm8916-longcheer-l8910.dts

index 887764dc55b21a5892510f822004b054eb65fa0a..93d5ea279cff1eaf929d2bf0673e02819225d88a 100644 (file)
                };
        };
 
+       reg_ts_vcca: regulator-vcca-ts {
+               compatible = "regulator-fixed";
+               regulator-name = "regulator-vcca-ts";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+
+               gpio = <&tlmm 78 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-0 = <&ts_vcca_default>;
+               pinctrl-names = "default";
+       };
+
        usb_id: usb-id {
                compatible = "linux,extcon-usb-gpio";
                id-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>;
        };
 };
 
+&blsp_i2c5 {
+       status = "okay";
+
+       touchscreen@48 {
+               compatible = "himax,hx8527e", "himax,hx852es";
+               reg = <0x48>;
+
+               interrupts-extended = <&tlmm 13 IRQ_TYPE_LEVEL_LOW>;
+               reset-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>;
+               vcca-supply = <&reg_ts_vcca>;
+               vccd-supply = <&pm8916_l6>;
+
+               pinctrl-0 = <&ts_int_reset_default>;
+               pinctrl-names = "default";
+
+               linux,keycodes = <KEY_BACK KEY_HOMEPAGE KEY_APPSELECT>;
+       };
+};
+
 &blsp_uart2 {
        status = "okay";
        pinctrl-0 = <&blsp_uart2_console_default>;
                bias-disable;
        };
 
+       ts_int_reset_default: ts-int-reset-default-state {
+               pins = "gpio12", "gpio13";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-disable;
+       };
+
+       ts_vcca_default: ts-vcca-default-state {
+               pins = "gpio78";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-disable;
+       };
+
        usb_id_default: usb-id-default-state {
                pins = "gpio110";
                function = "gpio";