Re: [PATCH v3 01/10] ASoC: dt-bindings: renesas,fsi: add support multiple clocks

From: Krzysztof Kozlowski

Date: Fri May 15 2026 - 02:46:47 EST


On Sun, May 10, 2026 at 03:42:54PM +0700, phucduc.bui@xxxxxxxxx wrote:
> From: bui duc phuc <phucduc.bui@xxxxxxxxx>
>
> The FSI on r8a7740 requires the SPU bus/bridge clock to be enabled before
> accessing its registers. Without this clock, any register access leads to

But why are you adding all these clocks to sh73a0 as well?

> a system hang as the FSI block sits behind the SPU bus.
> Update the binding to support multiple clocks to properly describe the
> hardware clock tree, including:
> - SPU bus/bridge clock (spu) for register access.
> - CPG DIV6 clocks (icka/b) as functional clock parents.

You do not need to add parents of clocks.

> - FSI internal dividers (diva/b) for audio clock generation.

Internal dividers do not have representation. They are internal.

> - External clock inputs (xcka/b) provided by the board.
>
> Suggested-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> Signed-off-by: bui duc phuc <phucduc.bui@xxxxxxxxx>
> ---
> .../bindings/sound/renesas,fsi.yaml | 27 ++++++++++++++++++-
> 1 file changed, 26 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/sound/renesas,fsi.yaml b/Documentation/devicetree/bindings/sound/renesas,fsi.yaml
> index df91991699a7..c50e7115b21a 100644
> --- a/Documentation/devicetree/bindings/sound/renesas,fsi.yaml
> +++ b/Documentation/devicetree/bindings/sound/renesas,fsi.yaml
> @@ -38,7 +38,32 @@ properties:
> maxItems: 1
>
> clocks:
> - maxItems: 1
> + minItems: 1
> + items:
> + - description: Main FSI module clock
> + - description: |
> + SPU bus/bridge clock. On R8A7740, this clock must be enabled to allow
> + register access as the FSI block is connected behind the SPU bus.
> + - description: CPG DIV6 functional clocks for FSI port A
> + - description: CPG DIV6 functional clocks for FSI port B
> + - description: Internal FSI dividers for port A used for audio clock generation
> + - description: Internal FSI dividers for port B used for audio clock generation
> + - description: External clock inputs for FSI port A provided by the board
> + - description: External clock inputs for FSI port B provided by the board
> +
> + clock-names:
> + minItems: 1
> + maxItems: 8
> + items:
> + enum:

This cannot be flexible.

> + - fck # Main FSI module clock
> + - spu # optional SPU bus/bridge clock
> + - icka # optional CPG DIV6 functional clocks for FSI port A
> + - ickb # optional CPG DIV6 functional clocks for FSI port B
> + - diva # optional Internal FSI dividers for port A used for audio clock generation
> + - divb # optional Internal FSI dividers for port B used for audio clock generation
> + - xcka # optional External clock inputs for FSI port A provided by the board
> + - xckb # optional External clock inputs for FSI port B provided by the board

Best regards,
Krzysztof