2024-05-06 14:51:10

by Yannick FERTRE

[permalink] [raw]
Subject: [PATCH] ARM: dts: stm32: add goodix touchscreen on stm32mp135f-dk

Touchscreen reset needs to be configured
via the pinctrl not the driver (a pull-down resistor
has been soldered onto the reset line which forces
the touchscreen to reset state).
Interrupt line must have a pull-down resistor
in order to freeze the i2c address at 0x5D.

Signed-off-by: Yannick Fertre <[email protected]>
---
arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi | 22 +++++++++++++++++++++
arch/arm/boot/dts/st/stm32mp135f-dk.dts | 14 +++++++++++++
2 files changed, 36 insertions(+)

diff --git a/arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi b/arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi
index 32c5d8a1e06a..21861cae21d9 100644
--- a/arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi
+++ b/arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi
@@ -13,6 +13,28 @@ pins {
};
};

+ goodix_pins_a: goodix-0 {
+ /*
+ * touchscreen reset needs to be configured
+ * via the pinctrl not the driver (a pull-down resistor
+ * has been soldered onto the reset line which forces
+ * the touchscreen to reset state).
+ */
+ pins1 {
+ pinmux = <STM32_PINMUX('H', 2, GPIO)>;
+ output-high;
+ bias-pull-up;
+ };
+ /*
+ * Interrupt line must have a pull-down resistor
+ * in order to freeze the i2c address at 0x5D
+ */
+ pins2 {
+ pinmux = <STM32_PINMUX('F', 5, GPIO)>;
+ bias-pull-down;
+ };
+ };
+
i2c1_pins_a: i2c1-0 {
pins {
pinmux = <STM32_PINMUX('D', 12, AF5)>, /* I2C1_SCL */
diff --git a/arch/arm/boot/dts/st/stm32mp135f-dk.dts b/arch/arm/boot/dts/st/stm32mp135f-dk.dts
index 567e53ad285f..5e8ee2d4648a 100644
--- a/arch/arm/boot/dts/st/stm32mp135f-dk.dts
+++ b/arch/arm/boot/dts/st/stm32mp135f-dk.dts
@@ -201,6 +201,20 @@ &i2c5 {
/* spare dmas for other usage */
/delete-property/dmas;
/delete-property/dma-names;
+
+ goodix: goodix-ts@5d {
+ compatible = "goodix,gt911";
+ reg = <0x5d>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&goodix_pins_a>;
+ interrupt-parent = <&gpiof>;
+ interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
+ AVDD28-supply = <&scmi_v3v3_sw>;
+ VDDIO-supply = <&scmi_v3v3_sw>;
+ touchscreen-size-x = <480>;
+ touchscreen-size-y = <272>;
+ status = "okay" ;
+ };
};

&iwdg2 {
--
2.34.1



2024-06-05 08:39:07

by Alexandre TORGUE

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: stm32: add goodix touchscreen on stm32mp135f-dk

Hi Yannick

On 5/6/24 16:49, Yannick Fertre wrote:
> Touchscreen reset needs to be configured
> via the pinctrl not the driver (a pull-down resistor
> has been soldered onto the reset line which forces
> the touchscreen to reset state).
> Interrupt line must have a pull-down resistor
> in order to freeze the i2c address at 0x5D.
>
> Signed-off-by: Yannick Fertre <[email protected]>
> ---
> arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi | 22 +++++++++++++++++++++
> arch/arm/boot/dts/st/stm32mp135f-dk.dts | 14 +++++++++++++
> 2 files changed, 36 insertions(+)
>

Applied on stm32-next.

Cheers!
alex