[PATCH v2 3/9] arm64: dts: st: add ltdc support on stm32mp235

Raphael Gallais-Pou raphael.gallais-pou at foss.st.com
Tue Feb 10 02:03:56 PST 2026


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 at 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 at 480d0000 {
 		compatible = "st,stm32mp25-vdec";

-- 
2.43.0




More information about the linux-arm-kernel mailing list