Re: [PATCH v5 01/11] ASoC: dt-bindings: renesas,fsi: add support multiple clocks
From: Bui Duc Phuc
Date: Tue Jun 09 2026 - 04:17:01 EST
Hi Krzysztof,
Thank you for your reviews.
> > + properties:
> > + clock-names:
> > + minItems: 2
> > + uniqueItems: true
>
> You don't need this, it's by default.
>
Could you clarify which part you are referring to?
Are you referring to the "uniqueItems: true" property or another
constraint in this block?
> > + items:
> > + - const: fck
> > + - const: spu
> > + - enum: [icka, ickb, diva, divb, xcka, xckb]
> > + - enum: [icka, ickb, diva, divb, xcka, xckb]
> > + - enum: [icka, ickb, diva, divb, xcka, xckb]
> > + - enum: [icka, ickb, diva, divb, xcka, xckb]
> > + - enum: [icka, ickb, diva, divb, xcka, xckb]
> > + - enum: [icka, ickb, diva, divb, xcka, xckb]
>
> Are all optional in the board design? I cannot find answers to that in
> commit msg, but it is important - you need to explain WHY you are doing
> this and WHY such different way.
>
For r8a7740, "fck" and "spu" are required. The SPU clock must be enabled
to access the FSI registers because the FSI block is located behind the
SPU bus.
The remaining clocks (icka/b, diva/b and xcka/b) are not always required.
Their presence depends on the clock topology used by each FSI port.
In the previous discussion I described the supported clock configurations:
https://lore.kernel.org/all/CAABR9nEhOTz1-0NmCMTbz=-+782Pto0yovSQhBXrXqhLwMg80Q@xxxxxxxxxxxxxx/
The hardware supports several valid configurations, for example:
- FSIA/FSIB slave: only fck and spu are needed.
- FSI master using an internal clock: ickx and divx are used.
- FSI master using an external clock: ickx and xckx are used.
Therefore, while fck and spu are mandatory on r8a7740, the other clocks
depend on the selected master/slave configuration and clock source, so
not all of them are expected to be present in every DT.
Best regards,
Phuc