Re: [PATCH v2 2/5] dt-bindings: arm: stm32: Add clock-controller sub-node to STM32MP2 SYSCFG

From: Krzysztof Kozlowski

Date: Fri Nov 13 2026 - 07:12:41 EST


On Tue, Nov 10, 2026 at 02:10:22PM +0100, Gabriel Fernandez wrote:
> The SYSCFG of the STM32MP23x and STM32MP25x SoCs is described as the
> provider of the LTDC pixel clock, but the inputs of this mux (LTDC
> kernel clock, LVDS PHY pixel clock and DSI PHY byte lane clock) can't
> be described by the "clocks" property of the SYSCFG node: the SYSCFG is

Not true, you can.

> a syscon, whose first clock is taken as the clock of its registers and
> enabled around each register access.

That's a driver problem, fix drivers.

>
> Add a clock-controller sub-node to describe the mux with its own clock
> inputs. It is required on STM32MP23x and STM32MP25x and not allowed on
> the other SoCs.
>
> Deprecate the '#clock-cells' property of the SYSCFG node, which is no
> longer required. No driver ever registered a clock on the SYSCFG node,
> so this doesn't change anything for existing devicetrees.
>
> Signed-off-by: Gabriel Fernandez <gabriel.fernandez@xxxxxxxxxxx>
> ---
> .../devicetree/bindings/arm/stm32/st,stm32-syscon.yaml | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/arm/stm32/st,stm32-syscon.yaml b/Documentation/devicetree/bindings/arm/stm32/st,stm32-syscon.yaml
> index a559f8b03b84..13c02844a91f 100644
> --- a/Documentation/devicetree/bindings/arm/stm32/st,stm32-syscon.yaml
> +++ b/Documentation/devicetree/bindings/arm/stm32/st,stm32-syscon.yaml
> @@ -38,6 +38,10 @@ properties:
>
> "#clock-cells":
> const: 0
> + deprecated: true
> + description:
> + The LTDC pixel clock multiplexer is described by the clock-controller
> + sub-node.
>
> "#address-cells":
> const: 1
> @@ -45,6 +49,10 @@ properties:
> "#size-cells":
> const: 1
>
> + clock-controller:
> + type: object
> + $ref: /schemas/clock/st,stm32mp25-syscfg-clk.yaml#
> +
> patternProperties:
> "^phy@2[48]00$":

As you can easily see, each child needs addressing. This is one more
argument why this is a fake device split, done only to match your driver
limitation. Please fix your drivers.

Best regards,
Krzysztof