mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK
@ 2026-02-10 10:03 Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 1/9] arm64: dts: st: add i2c2 pins for stm32mp25 Raphael Gallais-Pou
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

This series aims to add and enable sufficient LVDS display support for
STM32MP257F-DK and STM32MP235F-DK boards.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
Changes in v2:
- Added support for STM32MP235F-DK. A second series would have dependant
  to the v1 of this series due to the pinctrl.  Better send it though
  one push to reduce dependencies.
- Link to v1:
https://lore.kernel.org/r/20260205-master-v1-0-fe6399aa3aab@foss.st.com/

---
Raphael Gallais-Pou (9):
      arm64: dts: st: add i2c2 pins for stm32mp25
      arm64: dts: st: add ltdc support on stm32mp231
      arm64: dts: st: add ltdc support on stm32mp235
      arm64: dts: st: add lvds support on stm32mp235
      arm64: dts: st: add clock-cells to syscfg node on stm32mp231
      arm64: dts: st: describe power supplies for stm32mp235f-dk board
      arm64: dts: st: enable display support on stm32mp235f-dk board
      arm64: dts: st: describe power supplies for stm32mp257f-dk board
      arm64: dts: st: enable display support on stm32mp257f-dk board

 arch/arm64/boot/dts/st/stm32mp231.dtsi        |  19 +++++
 arch/arm64/boot/dts/st/stm32mp235.dtsi        |  18 ++++
 arch/arm64/boot/dts/st/stm32mp235f-dk.dts     | 117 +++++++++++++++++++++++++
 arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi |  17 ++++
 arch/arm64/boot/dts/st/stm32mp257f-dk.dts     | 118 ++++++++++++++++++++++++++
 5 files changed, 289 insertions(+)
---
base-commit: 05f7e89ab9731565d8a62e3b5d1ec206485eeb0b
change-id: 20260209-display-516c2cedc734

Best regards,
-- 
Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 1/9] arm64: dts: st: add i2c2 pins for stm32mp25
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
@ 2026-02-10 10:03 ` Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 2/9] arm64: dts: st: add ltdc support on stm32mp231 Raphael Gallais-Pou
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Add the i2c2 pins used on several boards.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi b/arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi
index c34cd33cd855fb28b65a39b59b49e089345ce9a6..2f853f3fae6d84756300f19da32d6cb0297d9e20 100644
--- a/arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi
@@ -212,6 +212,23 @@ pins {
 		};
 	};
 
+	i2c2_pins_b: i2c2-1 {
+		pins {
+			pinmux = <STM32_PINMUX('F', 2, AF9)>, /* I2C2_SCL */
+				 <STM32_PINMUX('F', 0, AF9)>; /* I2C2_SDA */
+			bias-disable;
+			drive-open-drain;
+			slew-rate = <0>;
+		};
+	};
+
+	i2c2_sleep_pins_b: i2c2-sleep-1 {
+		pins {
+			pinmux = <STM32_PINMUX('F', 2, ANALOG)>, /* I2C2_SCL */
+				 <STM32_PINMUX('F', 0, ANALOG)>; /* I2C2_SDA */
+		};
+	};
+
 	ospi_port1_clk_pins_a: ospi-port1-clk-0 {
 		pins {
 			pinmux = <STM32_PINMUX('D', 0, AF10)>; /* OSPI1_CLK */

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 2/9] arm64: dts: st: add ltdc support on stm32mp231
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 1/9] arm64: dts: st: add i2c2 pins for stm32mp25 Raphael Gallais-Pou
@ 2026-02-10 10:03 ` Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 3/9] arm64: dts: st: add ltdc support on stm32mp235 Raphael Gallais-Pou
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

The LCD-TFT Display Controller (LTDC) handles display composition,
scaling and rotation.  It provides a parallel digital RGB flow to be
used by display interfaces.

Add the LTDC node.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp231.dtsi | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp231.dtsi b/arch/arm64/boot/dts/st/stm32mp231.dtsi
index 88e214d395ab7af53e2707dbc2dfc6b3d000a798..a6840882f512b132b69b917ccbc6cfd4a502a481 100644
--- a/arch/arm64/boot/dts/st/stm32mp231.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp231.dtsi
@@ -1178,6 +1178,18 @@ exti2: interrupt-controller@46230000 {
 				<&intc GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>;	/* EXTI_70 */
 		};
 
+		ltdc: display-controller@48010000 {
+			compatible = "st,stm32mp251-ltdc";
+			reg = <0x48010000 0x400>;
+			interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
+				<GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&rcc CK_KER_LTDC>, <&rcc CK_BUS_LTDC>;
+			clock-names = "lcd", "bus";
+			resets = <&rcc LTDC_R>;
+			access-controllers = <&rifsc 80>;
+			status = "disabled";
+		};
+
 		intc: interrupt-controller@4ac10000 {
 			compatible = "arm,gic-400";
 			reg = <0x4ac10000 0x1000>,

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 3/9] arm64: dts: st: add ltdc support on stm32mp235
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 1/9] arm64: dts: st: add i2c2 pins for stm32mp25 Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 2/9] arm64: dts: st: add ltdc support on stm32mp231 Raphael Gallais-Pou
@ 2026-02-10 10:03 ` Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 4/9] arm64: dts: st: add lvds " Raphael Gallais-Pou
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Add the LTDC node for stm32mp235 SoC and handle its loopback clocks.

ck_ker_ltdc has the CLK_SET_RATE_PARENT flag.  While having this flag is
semantically correct, it for now leads to an improper setting of the
clock rate.  The ck_ker_ltdc parent clock is the flexgen 27, which does
not support changing rates yet.  To overcome this issue, a fixed clock
can be used for the kernel clock.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp231.dtsi | 6 ++++++
 arch/arm64/boot/dts/st/stm32mp235.dtsi | 6 ++++++
 2 files changed, 12 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp231.dtsi b/arch/arm64/boot/dts/st/stm32mp231.dtsi
index a6840882f512b132b69b917ccbc6cfd4a502a481..05055bc523850282a2e2b217b180930b39231189 100644
--- a/arch/arm64/boot/dts/st/stm32mp231.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp231.dtsi
@@ -45,6 +45,12 @@ clk_dsi_txbyte: clock-0 {
 		clock-frequency = <0>;
 	};
 
+	clk_flexgen_27_fixed: clk-54000000 {
+		#clock-cells = <0>;
+		compatible = "fixed-clock";
+		clock-frequency = <54000000>;
+	};
+
 	clk_rcbsec: clk-64000000 {
 		compatible = "fixed-clock";
 		#clock-cells = <0>;
diff --git a/arch/arm64/boot/dts/st/stm32mp235.dtsi b/arch/arm64/boot/dts/st/stm32mp235.dtsi
index 2719c088dd594ba90f683d8809b54fecf471ba40..ae98f503529f0a2473f250b4d9195820135ee1bc 100644
--- a/arch/arm64/boot/dts/st/stm32mp235.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp235.dtsi
@@ -5,6 +5,12 @@
  */
 #include "stm32mp233.dtsi"
 
+&ltdc {
+	compatible = "st,stm32mp255-ltdc";
+	clocks = <&clk_flexgen_27_fixed>, <&rcc CK_BUS_LTDC>, <&syscfg>, <&lvds>;
+	clock-names = "lcd", "bus", "ref", "lvds";
+};
+
 &rifsc {
 	vdec: vdec@480d0000 {
 		compatible = "st,stm32mp25-vdec";

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 4/9] arm64: dts: st: add lvds support on stm32mp235
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (2 preceding siblings ...)
  2026-02-10 10:03 ` [PATCH v2 3/9] arm64: dts: st: add ltdc support on stm32mp235 Raphael Gallais-Pou
@ 2026-02-10 10:03 ` Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 5/9] arm64: dts: st: add clock-cells to syscfg node on stm32mp231 Raphael Gallais-Pou
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

The LVDS is used on STM32MP2 as a display interface.

Add the LVDS node.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp235.dtsi | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp235.dtsi b/arch/arm64/boot/dts/st/stm32mp235.dtsi
index ae98f503529f0a2473f250b4d9195820135ee1bc..7a87c344a4fe3c5c6af154721d4229eb330d4cb8 100644
--- a/arch/arm64/boot/dts/st/stm32mp235.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp235.dtsi
@@ -12,6 +12,18 @@ &ltdc {
 };
 
 &rifsc {
+	lvds: lvds@48060000 {
+		compatible = "st,stm32mp255-lvds", "st,stm32mp25-lvds";
+		reg = <0x48060000 0x2000>;
+		#clock-cells = <0>;
+		clocks = <&rcc CK_BUS_LVDS>, <&rcc CK_KER_LVDSPHY>;
+		clock-names = "pclk", "ref";
+		resets = <&rcc LVDS_R>;
+		access-controllers = <&rifsc 84>;
+		power-domains = <&cluster_pd>;
+		status = "disabled";
+	};
+
 	vdec: vdec@480d0000 {
 		compatible = "st,stm32mp25-vdec";
 		reg = <0x480d0000 0x3c8>;

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 5/9] arm64: dts: st: add clock-cells to syscfg node on stm32mp231
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (3 preceding siblings ...)
  2026-02-10 10:03 ` [PATCH v2 4/9] arm64: dts: st: add lvds " Raphael Gallais-Pou
@ 2026-02-10 10:03 ` Raphael Gallais-Pou
  2026-02-10 10:03 ` [PATCH v2 6/9] arm64: dts: st: describe power supplies for stm32mp235f-dk board Raphael Gallais-Pou
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Make the syscfg node a clock provider so clock consumers can reach child
clocks through device-tree.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp231.dtsi | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp231.dtsi b/arch/arm64/boot/dts/st/stm32mp231.dtsi
index 05055bc523850282a2e2b217b180930b39231189..74df739d8f8cdc82922cad9993486b97c50d9084 100644
--- a/arch/arm64/boot/dts/st/stm32mp231.dtsi
+++ b/arch/arm64/boot/dts/st/stm32mp231.dtsi
@@ -961,6 +961,7 @@ exti1: interrupt-controller@44220000 {
 		syscfg: syscon@44230000 {
 			compatible = "st,stm32mp23-syscfg", "syscon";
 			reg = <0x44230000 0x10000>;
+			#clock-cells = <0>;
 		};
 
 		pinctrl: pinctrl@44240000 {

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 6/9] arm64: dts: st: describe power supplies for stm32mp235f-dk board
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (4 preceding siblings ...)
  2026-02-10 10:03 ` [PATCH v2 5/9] arm64: dts: st: add clock-cells to syscfg node on stm32mp231 Raphael Gallais-Pou
@ 2026-02-10 10:03 ` Raphael Gallais-Pou
  2026-02-10 10:04 ` [PATCH v2 7/9] arm64: dts: st: enable display support on " Raphael Gallais-Pou
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:03 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Describe power supplies for stm32mp235f-dk board.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp235f-dk.dts | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp235f-dk.dts b/arch/arm64/boot/dts/st/stm32mp235f-dk.dts
index c3e68806822365ab9ec7ccee2eba73a117a8c331..0c7874885381da73b9274078f3efb9f0b042504f 100644
--- a/arch/arm64/boot/dts/st/stm32mp235f-dk.dts
+++ b/arch/arm64/boot/dts/st/stm32mp235f-dk.dts
@@ -105,6 +105,34 @@ scmi_vddio1: regulator@0 {
 		regulator-min-microvolt = <1800000>;
 		regulator-max-microvolt = <3300000>;
 	};
+	scmi_vddcore: regulator@11 {
+		reg = <VOLTD_SCMI_STPMIC2_BUCK2>;
+		regulator-name = "vddcore";
+	};
+	scmi_v1v8: regulator@14 {
+		reg = <VOLTD_SCMI_STPMIC2_BUCK5>;
+		regulator-name = "v1v8";
+	};
+	scmi_v3v3: regulator@16 {
+		reg = <VOLTD_SCMI_STPMIC2_BUCK7>;
+		regulator-name = "v3v3";
+	};
+	scmi_vdd_emmc: regulator@18 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO2>;
+		regulator-name = "vdd_emmc";
+	};
+	scmi_vdd3v3_usb: regulator@20 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO4>;
+		regulator-name = "vdd3v3_usb";
+	};
+	scmi_v5v_hdmi: regulator@21 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO5>;
+		regulator-name = "v5v_hdmi";
+	};
+	scmi_v5v_vconn: regulator@22 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO6>;
+		regulator-name = "v5v_vconn";
+	};
 	scmi_vdd_sdcard: regulator@23 {
 		reg = <VOLTD_SCMI_STPMIC2_LDO7>;
 		regulator-name = "vdd_sdcard";

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 7/9] arm64: dts: st: enable display support on stm32mp235f-dk board
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (5 preceding siblings ...)
  2026-02-10 10:03 ` [PATCH v2 6/9] arm64: dts: st: describe power supplies for stm32mp235f-dk board Raphael Gallais-Pou
@ 2026-02-10 10:04 ` Raphael Gallais-Pou
  2026-02-10 10:04 ` [PATCH v2 8/9] arm64: dts: st: describe power supplies for stm32mp257f-dk board Raphael Gallais-Pou
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:04 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Enable the following IPs on stm32mp235f-dk in order to get display:
   * LTDC
   * LVDS
   * WSVGA LVDS panel (1024x600)
   * Panel LVDS backlight as GPIO backlight
   * ILI2511 i2c touchscreen

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp235f-dk.dts | 89 +++++++++++++++++++++++++++++++
 1 file changed, 89 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp235f-dk.dts b/arch/arm64/boot/dts/st/stm32mp235f-dk.dts
index 0c7874885381da73b9274078f3efb9f0b042504f..3581892f827cfc43c93050110d438628301c5c99 100644
--- a/arch/arm64/boot/dts/st/stm32mp235f-dk.dts
+++ b/arch/arm64/boot/dts/st/stm32mp235f-dk.dts
@@ -60,6 +60,42 @@ memory@80000000 {
 		reg = <0x0 0x80000000 0x0 0x80000000>;
 	};
 
+	panel_lvds: display {
+		compatible = "edt,etml0700z9ndha", "panel-lvds";
+		enable-gpios = <&gpioi 4 GPIO_ACTIVE_HIGH>;
+		backlight = <&panel_lvds_backlight>;
+		power-supply = <&scmi_v3v3>;
+		width-mm = <156>;
+		height-mm = <92>;
+		data-mapping = "vesa-24";
+		status = "okay";
+
+		panel-timing {
+			clock-frequency = <54000000>;
+			hactive = <1024>;
+			vactive = <600>;
+			hfront-porch = <150>;
+			hback-porch = <150>;
+			hsync-len = <21>;
+			vfront-porch = <24>;
+			vback-porch = <24>;
+			vsync-len = <21>;
+		};
+
+		port {
+			lvds_panel_in: endpoint {
+				remote-endpoint = <&lvds_out0>;
+			};
+		};
+	};
+
+	panel_lvds_backlight: backlight {
+		compatible = "gpio-backlight";
+		gpios = <&gpioi 4 GPIO_ACTIVE_HIGH>;
+		default-on;
+		status = "okay";
+	};
+
 	reserved-memory {
 		#address-cells = <2>;
 		#size-cells = <2>;
@@ -100,6 +136,59 @@ phy1_eth1: ethernet-phy@1 {
 	};
 };
 
+&i2c2 {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&i2c2_pins_b>;
+	pinctrl-1 = <&i2c2_sleep_pins_b>;
+	i2c-scl-rising-time-ns = <108>;
+	i2c-scl-falling-time-ns = <12>;
+	clock-frequency = <400000>;
+	status = "okay";
+	/* spare dmas for other usage */
+	/delete-property/dmas;
+	/delete-property/dma-names;
+
+	ili2511: ili2511@41 {
+		compatible = "ilitek,ili251x";
+		reg = <0x41>;
+		interrupt-parent = <&gpioi>;
+		interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
+		reset-gpios = <&gpioi 0 GPIO_ACTIVE_LOW>;
+		status = "okay";
+	};
+};
+
+&ltdc {
+	status = "okay";
+	port {
+		ltdc_ep0_out: endpoint {
+			remote-endpoint = <&lvds_in>;
+		};
+	};
+};
+
+&lvds {
+	status = "okay";
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		port@0 {
+			reg = <0>;
+			lvds_in: endpoint {
+				remote-endpoint = <&ltdc_ep0_out>;
+			};
+		};
+
+		port@1 {
+			reg = <1>;
+			lvds_out0: endpoint {
+				remote-endpoint = <&lvds_panel_in>;
+			};
+		};
+	};
+};
+
 &scmi_regu {
 	scmi_vddio1: regulator@0 {
 		regulator-min-microvolt = <1800000>;

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 8/9] arm64: dts: st: describe power supplies for stm32mp257f-dk board
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (6 preceding siblings ...)
  2026-02-10 10:04 ` [PATCH v2 7/9] arm64: dts: st: enable display support on " Raphael Gallais-Pou
@ 2026-02-10 10:04 ` Raphael Gallais-Pou
  2026-02-10 10:04 ` [PATCH v2 9/9] arm64: dts: st: enable display support on " Raphael Gallais-Pou
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:04 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Describe power supplies for stm32mp257f-dk board.

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp257f-dk.dts | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp257f-dk.dts b/arch/arm64/boot/dts/st/stm32mp257f-dk.dts
index e718d888ce21b6f124331543c09c1e66e6304964..4e45562ceb3dabb19eca3340337b364f63508215 100644
--- a/arch/arm64/boot/dts/st/stm32mp257f-dk.dts
+++ b/arch/arm64/boot/dts/st/stm32mp257f-dk.dts
@@ -105,6 +105,34 @@ scmi_vddio1: regulator@0 {
 		regulator-min-microvolt = <1800000>;
 		regulator-max-microvolt = <3300000>;
 	};
+	scmi_vddcore: regulator@11 {
+		reg = <VOLTD_SCMI_STPMIC2_BUCK2>;
+		regulator-name = "vddcore";
+	};
+	scmi_v1v8: regulator@14 {
+		reg = <VOLTD_SCMI_STPMIC2_BUCK5>;
+		regulator-name = "v1v8";
+	};
+	scmi_v3v3: regulator@16 {
+		reg = <VOLTD_SCMI_STPMIC2_BUCK7>;
+		regulator-name = "v3v3";
+	};
+	scmi_vdd_emmc: regulator@18 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO2>;
+		regulator-name = "vdd_emmc";
+	};
+	scmi_vdd3v3_usb: regulator@20 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO4>;
+		regulator-name = "vdd3v3_usb";
+	};
+	scmi_v5v_hdmi: regulator@21 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO5>;
+		regulator-name = "v5v_hdmi";
+	};
+	scmi_v5v_vconn: regulator@22 {
+		reg = <VOLTD_SCMI_STPMIC2_LDO6>;
+		regulator-name = "v5v_vconn";
+	};
 	scmi_vdd_sdcard: regulator@23 {
 		reg = <VOLTD_SCMI_STPMIC2_LDO7>;
 		regulator-name = "vdd_sdcard";

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 9/9] arm64: dts: st: enable display support on stm32mp257f-dk board
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (7 preceding siblings ...)
  2026-02-10 10:04 ` [PATCH v2 8/9] arm64: dts: st: describe power supplies for stm32mp257f-dk board Raphael Gallais-Pou
@ 2026-02-10 10:04 ` Raphael Gallais-Pou
  2026-03-05 13:06 ` [Linux-stm32] [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
  2026-03-25 14:45 ` Alexandre TORGUE
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-02-10 10:04 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Enable the following IPs on stm32mp257f-dk in order to get display:
   * LTDC
   * LVDS
   * WSVGA LVDS panel (1024x600)
   * Panel LVDS backlight as GPIO backlight
   * ILI2511 i2c touchscreen

Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
---
 arch/arm64/boot/dts/st/stm32mp257f-dk.dts | 90 +++++++++++++++++++++++++++++++
 1 file changed, 90 insertions(+)

diff --git a/arch/arm64/boot/dts/st/stm32mp257f-dk.dts b/arch/arm64/boot/dts/st/stm32mp257f-dk.dts
index 4e45562ceb3dabb19eca3340337b364f63508215..b60c13614cfb9207b8b541ee8bde4ae9aab937a8 100644
--- a/arch/arm64/boot/dts/st/stm32mp257f-dk.dts
+++ b/arch/arm64/boot/dts/st/stm32mp257f-dk.dts
@@ -55,6 +55,43 @@ led-blue {
 		};
 	};
 
+	panel_lvds: display {
+		compatible = "edt,etml0700z9ndha", "panel-lvds";
+		enable-gpios = <&gpioi 4 GPIO_ACTIVE_HIGH>;
+		backlight = <&panel_lvds_backlight>;
+		power-supply = <&scmi_v3v3>;
+		width-mm = <156>;
+		height-mm = <92>;
+		data-mapping = "vesa-24";
+		status = "okay";
+
+		panel-timing {
+			clock-frequency = <54000000>;
+			hactive = <1024>;
+			vactive = <600>;
+			hfront-porch = <150>;
+			hback-porch = <150>;
+			hsync-len = <21>;
+			vfront-porch = <24>;
+			vback-porch = <24>;
+			vsync-len = <21>;
+		};
+
+		port {
+			lvds_panel_in: endpoint {
+				remote-endpoint = <&lvds_out0>;
+			};
+		};
+	};
+
+	panel_lvds_backlight: backlight {
+		compatible = "gpio-backlight";
+		gpios = <&gpioi 4 GPIO_ACTIVE_HIGH>;
+		default-on;
+		status = "okay";
+	};
+
+
 	memory@80000000 {
 		device_type = "memory";
 		reg = <0x0 0x80000000 0x1 0x0>;
@@ -100,6 +137,59 @@ phy1_eth1: ethernet-phy@1 {
 	};
 };
 
+&i2c2 {
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&i2c2_pins_b>;
+	pinctrl-1 = <&i2c2_sleep_pins_b>;
+	i2c-scl-rising-time-ns = <108>;
+	i2c-scl-falling-time-ns = <12>;
+	clock-frequency = <400000>;
+	status = "okay";
+	/* spare dmas for other usage */
+	/delete-property/dmas;
+	/delete-property/dma-names;
+
+	ili2511: ili2511@41 {
+		compatible = "ilitek,ili251x";
+		reg = <0x41>;
+		interrupt-parent = <&gpioi>;
+		interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
+		reset-gpios = <&gpioi 0 GPIO_ACTIVE_LOW>;
+		status = "okay";
+	};
+};
+
+&ltdc {
+	status = "okay";
+	port {
+		ltdc_ep0_out: endpoint {
+			remote-endpoint = <&lvds_in>;
+		};
+	};
+};
+
+&lvds {
+	status = "okay";
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		port@0 {
+			reg = <0>;
+			lvds_in: endpoint {
+				remote-endpoint = <&ltdc_ep0_out>;
+			};
+		};
+
+		port@1 {
+			reg = <1>;
+			lvds_out0: endpoint {
+				remote-endpoint = <&lvds_panel_in>;
+			};
+		};
+	};
+};
+
 &scmi_regu {
 	scmi_vddio1: regulator@0 {
 		regulator-min-microvolt = <1800000>;

-- 
2.43.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [Linux-stm32] [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (8 preceding siblings ...)
  2026-02-10 10:04 ` [PATCH v2 9/9] arm64: dts: st: enable display support on " Raphael Gallais-Pou
@ 2026-03-05 13:06 ` Raphael Gallais-Pou
  2026-03-25 14:45 ` Alexandre TORGUE
  10 siblings, 0 replies; 12+ messages in thread
From: Raphael Gallais-Pou @ 2026-03-05 13:06 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Maxime Coquelin,
	Alexandre Torgue, Christophe Roullier
  Cc: devicetree, Yannick Fertre, linux-kernel,
	Raphaël Gallais-Pou, linux-stm32, linux-arm-kernel



On 2/10/26 11:03, Raphael Gallais-Pou wrote:
> This series aims to add and enable sufficient LVDS display support for
> STM32MP257F-DK and STM32MP235F-DK boards.
>
> Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
> ---

Hi, 

Gentle ping regarding this series. I have not received any feedbacks from it in
a month.

Thanks for your time, 
Best regards, 
Raphaël
> Changes in v2:
> - Added support for STM32MP235F-DK. A second series would have dependant
>   to the v1 of this series due to the pinctrl.  Better send it though
>   one push to reduce dependencies.
> - Link to v1:
> https://lore.kernel.org/r/20260205-master-v1-0-fe6399aa3aab@foss.st.com/
>
> ---
> Raphael Gallais-Pou (9):
>       arm64: dts: st: add i2c2 pins for stm32mp25
>       arm64: dts: st: add ltdc support on stm32mp231
>       arm64: dts: st: add ltdc support on stm32mp235
>       arm64: dts: st: add lvds support on stm32mp235
>       arm64: dts: st: add clock-cells to syscfg node on stm32mp231
>       arm64: dts: st: describe power supplies for stm32mp235f-dk board
>       arm64: dts: st: enable display support on stm32mp235f-dk board
>       arm64: dts: st: describe power supplies for stm32mp257f-dk board
>       arm64: dts: st: enable display support on stm32mp257f-dk board
>
>  arch/arm64/boot/dts/st/stm32mp231.dtsi        |  19 +++++
>  arch/arm64/boot/dts/st/stm32mp235.dtsi        |  18 ++++
>  arch/arm64/boot/dts/st/stm32mp235f-dk.dts     | 117 +++++++++++++++++++++++++
>  arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi |  17 ++++
>  arch/arm64/boot/dts/st/stm32mp257f-dk.dts     | 118 ++++++++++++++++++++++++++
>  5 files changed, 289 insertions(+)
> ---
> base-commit: 05f7e89ab9731565d8a62e3b5d1ec206485eeb0b
> change-id: 20260209-display-516c2cedc734
>
> Best regards,


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK
  2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
                   ` (9 preceding siblings ...)
  2026-03-05 13:06 ` [Linux-stm32] [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
@ 2026-03-25 14:45 ` Alexandre TORGUE
  10 siblings, 0 replies; 12+ messages in thread
From: Alexandre TORGUE @ 2026-03-25 14:45 UTC (permalink / raw)
  To: Raphael Gallais-Pou, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Maxime Coquelin, Christophe Roullier
  Cc: Philippe Cornu, Yannick Fertre, Raphaël Gallais-Pou,
	devicetree, linux-stm32, linux-arm-kernel, linux-kernel

Hello Raph

On 2/10/26 11:03, Raphael Gallais-Pou wrote:
> This series aims to add and enable sufficient LVDS display support for
> STM32MP257F-DK and STM32MP235F-DK boards.
> 
> Signed-off-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
> ---
> Changes in v2:
> - Added support for STM32MP235F-DK. A second series would have dependant
>    to the v1 of this series due to the pinctrl.  Better send it though
>    one push to reduce dependencies.
> - Link to v1:
> https://lore.kernel.org/r/20260205-master-v1-0-fe6399aa3aab@foss.st.com/
> 
> ---
> Raphael Gallais-Pou (9):
>        arm64: dts: st: add i2c2 pins for stm32mp25
>        arm64: dts: st: add ltdc support on stm32mp231
>        arm64: dts: st: add ltdc support on stm32mp235
>        arm64: dts: st: add lvds support on stm32mp235
>        arm64: dts: st: add clock-cells to syscfg node on stm32mp231
>        arm64: dts: st: describe power supplies for stm32mp235f-dk board
>        arm64: dts: st: enable display support on stm32mp235f-dk board
>        arm64: dts: st: describe power supplies for stm32mp257f-dk board
>        arm64: dts: st: enable display support on stm32mp257f-dk board
> 
>   arch/arm64/boot/dts/st/stm32mp231.dtsi        |  19 +++++
>   arch/arm64/boot/dts/st/stm32mp235.dtsi        |  18 ++++
>   arch/arm64/boot/dts/st/stm32mp235f-dk.dts     | 117 +++++++++++++++++++++++++
>   arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi |  17 ++++
>   arch/arm64/boot/dts/st/stm32mp257f-dk.dts     | 118 ++++++++++++++++++++++++++
>   5 files changed, 289 insertions(+)
> ---
> base-commit: 05f7e89ab9731565d8a62e3b5d1ec206485eeb0b
> change-id: 20260209-display-516c2cedc734
> 
> Best regards,

Series applied on stm32-next.

Thanks
Alex

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2026-03-25 14:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-02-10 10:03 [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
2026-02-10 10:03 ` [PATCH v2 1/9] arm64: dts: st: add i2c2 pins for stm32mp25 Raphael Gallais-Pou
2026-02-10 10:03 ` [PATCH v2 2/9] arm64: dts: st: add ltdc support on stm32mp231 Raphael Gallais-Pou
2026-02-10 10:03 ` [PATCH v2 3/9] arm64: dts: st: add ltdc support on stm32mp235 Raphael Gallais-Pou
2026-02-10 10:03 ` [PATCH v2 4/9] arm64: dts: st: add lvds " Raphael Gallais-Pou
2026-02-10 10:03 ` [PATCH v2 5/9] arm64: dts: st: add clock-cells to syscfg node on stm32mp231 Raphael Gallais-Pou
2026-02-10 10:03 ` [PATCH v2 6/9] arm64: dts: st: describe power supplies for stm32mp235f-dk board Raphael Gallais-Pou
2026-02-10 10:04 ` [PATCH v2 7/9] arm64: dts: st: enable display support on " Raphael Gallais-Pou
2026-02-10 10:04 ` [PATCH v2 8/9] arm64: dts: st: describe power supplies for stm32mp257f-dk board Raphael Gallais-Pou
2026-02-10 10:04 ` [PATCH v2 9/9] arm64: dts: st: enable display support on " Raphael Gallais-Pou
2026-03-05 13:06 ` [Linux-stm32] [PATCH v2 0/9] Enable display support for STM32MP257F-DK and STM32MP235F-DK Raphael Gallais-Pou
2026-03-25 14:45 ` Alexandre TORGUE

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®