]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: st: add ltdc support on stm32mp235
authorRaphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Tue, 10 Feb 2026 10:03:56 +0000 (11:03 +0100)
committerAlexandre Torgue <alexandre.torgue@foss.st.com>
Wed, 25 Mar 2026 16:37:47 +0000 (17:37 +0100)
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>
Link: https://lore.kernel.org/r/20260210-display-v2-3-0592bd514958@foss.st.com
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
arch/arm64/boot/dts/st/stm32mp231.dtsi
arch/arm64/boot/dts/st/stm32mp235.dtsi

index 03c71a403f138d3232c346c996120cd5863916fd..8afd175b9e1c57836a08e77220a3673cca3554b5 100644 (file)
                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>;
index 2719c088dd594ba90f683d8809b54fecf471ba40..ae98f503529f0a2473f250b4d9195820135ee1bc 100644 (file)
@@ -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";