# Re: \[PATCH\] dt-bindings: Add missing array size constraints

- From: Rob Herring \<robh@kernel.org\>
- Date: 2021-01-05 17:40:58 
- List: linux-gpio
- Page: https://ratatoskr.run/linux-gpio/2021/01/6224579
- Thread: https://ratatoskr.run/linux-devicetree/2021/01/6223579/t.md

```text
On Tue, Jan 05, 2021 at 02:04:14PM +0100, Greg Kroah-Hartman wrote:
> On Mon, Jan 04, 2021 at 04:02:53PM -0700, Rob Herring wrote:
> > DT properties which can have multiple entries need to specify what the
> > entries are and define how many entries there can be. In the case of
> > only a single entry, just 'maxItems: 1' is sufficient.
> > 
> > Add the missing entry constraints. These were found with a modified
> > meta-schema. Unfortunately, there are a few cases where the size
> > constraints are not defined such as common bindings, so the meta-schema
> > can't be part of the normal checks.
> > 
> > Cc: Jens Axboe <axboe@kernel.dk>
> > Cc: Stephen Boyd <sboyd@kernel.org>
> > Cc: Thierry Reding <redacted>
> > Cc: MyungJoo Ham <myungjoo.ham@samsung.com>
> > Cc: Chanwoo Choi <cw00.choi@samsung.com>
> > Cc: Linus Walleij <redacted>
> > Cc: Bartosz Golaszewski <redacted>
> > Cc: Jonathan Cameron <jic23@kernel.org>
> > Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
> > Cc: Thomas Gleixner <redacted>
> > Cc: Marc Zyngier <maz@kernel.org>
> > Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
> > Cc: Chen-Yu Tsai <redacted>
> > Cc: Ulf Hansson <redacted>
> > Cc: "David S. Miller" <davem@davemloft.net>
> > Cc: Jakub Kicinski <kuba@kernel.org>
> > Cc: Sebastian Reichel <sre@kernel.org>
> > Cc: Ohad Ben-Cohen <redacted>
> > Cc: Bjorn Andersson <redacted>
> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > Signed-off-by: Rob Herring <robh@kernel.org>
> 
> <snip>
> 
> > diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> > index 247ef00381ea..f76b25f7fc7a 100644
> > --- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> > +++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> > @@ -83,6 +83,7 @@ properties:
> >        Phandle of a companion.
> >  
> >    phys:
> > +    maxItems: 1
> >      description: PHY specifier for the USB PHY
> >  
> >    phy-names:
> > diff --git a/Documentation/devicetree/bindings/usb/generic-ohci.yaml b/Documentation/devicetree/bindings/usb/generic-ohci.yaml
> > index 2178bcc401bc..8e2bd61f2075 100644
> > --- a/Documentation/devicetree/bindings/usb/generic-ohci.yaml
> > +++ b/Documentation/devicetree/bindings/usb/generic-ohci.yaml
> > @@ -71,6 +71,7 @@ properties:
> >        Overrides the detected port count
> >  
> >    phys:
> > +    maxItems: 1
> >      description: PHY specifier for the USB PHY
> >  
> >    phy-names:
> > diff --git a/Documentation/devicetree/bindings/usb/ingenic,musb.yaml b/Documentation/devicetree/bindings/usb/ingenic,musb.yaml
> > index 678396eeeb78..f506225a4d57 100644
> > --- a/Documentation/devicetree/bindings/usb/ingenic,musb.yaml
> > +++ b/Documentation/devicetree/bindings/usb/ingenic,musb.yaml
> > @@ -40,7 +40,7 @@ properties:
> >        - const: mc
> >  
> >    phys:
> > -    description: PHY specifier for the USB PHY
> > +    maxItems: 1
> >  
> >    usb-role-switch:
> >      type: boolean
> 
> Any reason you dropped the description for this entry, but not the other
> ones above?

No, I should have dropped those too. I dropped cases of genericish 
descriptions on common properties. There's nothing specific to this 
binding here really.

> 
> > diff --git a/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml b/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml
> > index 388245b91a55..adce36e48bc9 100644
> > --- a/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml
> > +++ b/Documentation/devicetree/bindings/usb/ti,j721e-usb.yaml
> > @@ -15,13 +15,14 @@ properties:
> >        - const: ti,j721e-usb
> >  
> >    reg:
> > -    description: module registers
> > +    maxItems: 1
> >  
> >    power-domains:
> >      description:
> >        PM domain provider node and an args specifier containing
> >        the USB device id value. See,
> >        Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt
> > +    maxItems: 1
> >  
> >    clocks:
> >      description: Clock phandles to usb2_refclk and lpm_clk
> 
> Same here, why remove the description?

Really, the question is why keep 'description' on power-domains. Perhaps 
there's a little value in the reference to sci-pm-domain.txt, so I left 
it.

Rob
```
