RE: [EXT] Re: [PATCH v8 05/10] dt-bindings: usb: ci-hdrc-usb2-imx: add restrictions for reg, interrupts, clock and clock-names properties

From: Xu Yang
Date: Tue Mar 12 2024 - 23:26:47 EST



>
> On Wed, Mar 13, 2024 at 02:48:00AM +0000, Xu Yang wrote:
> >
> > >
> > > On Tue, Mar 12, 2024 at 05:16:58PM +0800, Xu Yang wrote:
> > > > Add restrictions for reg, interrupts, clock and clock-names properties
> > > > for imx Socs.
> > > >
> > > > Signed-off-by: Xu Yang <xu.yang_2@xxxxxxx>
> > > >
> > > > ---
> > > > Changes in v4:
> > > > - new patch since v3's discussion
> > > > - split the reg, interrupts, clock and clock-names properties into
> > > > common part and device-specific
> > > > Changes in v5:
> > > > - keep common property unchanged
> > > > - make if-then more readable
> > > > - remove non imx part
> > > > Changes in v6:
> > > > - new patch based on ci-hdrc-usb2-imx.yaml
> > > > Changes in v7:
> > > > - no changes
> > > > Changes in v8:
> > > > - remove if:else:if:else:if:else block
> > > > ---
> > > > .../bindings/usb/chipidea,usb2-imx.yaml | 80 +++++++++++++++++++
> > > > 1 file changed, 80 insertions(+)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml
> > > b/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml
> > > > index cdbb224e9f68..fb1c378dfe88 100644
> > > > --- a/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml
> > > > +++ b/Documentation/devicetree/bindings/usb/chipidea,usb2-imx.yaml
> > > > @@ -49,6 +49,12 @@ properties:
> > > > - const: fsl,imx6ul-usb
> > > > - const: fsl,imx27-usb
> > > >
> > > > + reg:
> > > > + maxItems: 1
> > > > +
> > > > + interrupts:
> > > > + maxItems: 1
> > > > +
> > > > clocks:
> > > > minItems: 1
> > > > maxItems: 3
> > > > @@ -144,6 +150,80 @@ allOf:
> > > > - const: idle
> > > > - const: active
> > > >
> > > > + # imx27 Soc needs three clocks
> > > > + - if:
> > > > + properties:
> > > > + compatible:
> > > > + const: fsl,imx27-usb
> > > > + then:
> > > > + properties:
> > > > + clocks:
> > > > + minItems: 3
> > > > + maxItems: 3
> > >
> > > The max is already 3, so drop maxItems.
> >
> > Okay.
> >
> > >
> > > > + clock-names:
> > > > + items:
> > > > + - const: ipg
> > > > + - const: ahb
> > > > + - const: per
> > > > +
> > > > + # imx25 and imx35 Soc need three clocks
> > > > + - if:
> > > > + properties:
> > > > + compatible:
> > > > + contains:
> > > > + enum:
> > > > + - fsl,imx25-usb
> > > > + - fsl,imx35-usb
> > > > + then:
> > > > + properties:
> > > > + clocks:
> > > > + minItems: 3
> > > > + maxItems: 3
> > >
> > > Same here.
> >
> > Okay.
> >
> > >
> > > > + clock-names:
> > > > + items:
> > > > + - const: ipg
> > > > + - const: ahb
> > > > + - const: per
> > > > +
> > > > + # imx7d Soc need one clock
> > > > + - if:
> > > > + properties:
> > > > + compatible:
> > > > + items:
> > > > + - const: fsl,imx7d-usb
> > > > + - const: fsl,imx27-usb
> > > > + then:
> > > > + properties:
> > > > + clocks:
> > > > + maxItems: 1
> > > > + clock-names:
> > > > + maxItems: 1
> > >
> > > What's the name?
> >
> > Can I not specify the name since the macro definition for USB
> > controller clock in clock.h is recognizable and the driver doesn't
> > get this clock by name rather index?
>
> If clock-names is not required for fsl,imx7d-usb,
>
> clock-names: false

Set it to false make sense to me.

>
> If driver use index to get clock, why need clock-names at other platform?
> I supposed these should be the same for all chips.

Yes, they are same. I add clock-names because some dts already have
clock-names in the usb node.
If I set it to false, I should remove clock-names from these platforms in
next version.

Thanks,
Xu Yang