Re: [PATCH v2 3/3] arm64: dts: qcom: sm6125-xiaomi-laurel-sprout: Add Focaltech FT3518 touchscreen
From: Konrad Dybcio
Date: Wed Jan 14 2026 - 04:36:27 EST
On 1/14/26 10:31 AM, Yedaya Katsman via B4 Relay wrote:
> From: Yedaya Katsman <yedaya.ka@xxxxxxxxx>
>
> Add device tree node for the Focaltech FT3518 touchscreen on
> Xiaomi Mi A3 (laurel-sprout).
>
> Enable qupv3_id_0 and i2c2 bus that the touchscreen is on.
>
> Co-developed-by: Kamil Gołda <kamil.golda@xxxxxxxxxxxxxx>
> Signed-off-by: Kamil Gołda <kamil.golda@xxxxxxxxxxxxxx>
> Signed-off-by: Yedaya Katsman <yedaya.ka@xxxxxxxxx>
> ---
> .../boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts | 34 ++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> index 994fb0412fcbdf5466f87a325c48b697a37b514b..97feed708d3b6483eab72cfb0ae39be6f5ae3a11 100644
> --- a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts
> @@ -119,6 +119,18 @@ active-config0 {
> };
> };
> };
> +
> + ts_vdd_supply: ts-vdd-supply {
> + compatible = "regulator-fixed";
> + regulator-name = "ts_vdd_supply";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> +
> + gpio = <&tlmm 83 GPIO_ACTIVE_HIGH>;
> + enable-active-high;
> +
> + startup-delay-us = <70000>;
> + };
> };
>
> &hsusb_phy1 {
> @@ -411,3 +423,25 @@ &usb3 {
> &usb3_dwc3 {
> extcon = <&extcon_usb>;
> };
> +
> +&qupv3_id_0 {
> + status = "okay";
> +};
> +
> +&i2c2 {
Please sort the label references alphabetically
> + status = "okay";
> +
> + touchscreen@38 {
> + compatible = "focaltech,ft3518";
> + reg = <0x38>;
> + interrupt-parent = <&tlmm>;
> + interrupts = <88 IRQ_TYPE_EDGE_FALLING>;
interrupts-extended = <&tlmm 88 IRQ_TYPE_EDGE_FALLING>;
> +
> + vcc-supply = <&ts_vdd_supply>;
> +
> + reset-gpios = <&tlmm 87 GPIO_ACTIVE_LOW>;
You reference gpio83 (vdd en), 88 (interrupt) and 87 (reset), please add
a configuration for them under the TLMM node to ensure they're always in
a predictable state
You can probably find it in the downstream kernel, otherwise boot up a
downstream build and check /sys/kernel/debug/gpios
Konrad