Hi Conor, conor@xxxxxxxxxx wrote on Wed, 21 Aug 2024 16:29:42 +0100: > On Wed, Aug 21, 2024 at 09:41:50AM +0200, Miquel Raynal wrote: > > > > > > + Represents the channels of the ADC. > > > > > > + > > > > > > + properties: > > > > > > + reg: > > > > > > + description: | > > > > > > + The channel number. It can have up to 3 channels numbered from 0 to 2. > > > > > > + items: > > > > > > + - minimum: 0 > > > > > > + maximum: 2 > > > > > > > > > > Is this sufficient to limit the number of channels to 3? Aren't you relying > > > > > on the unique unit addresses warning in dtc to limit it, rather than > > > > > actually limiting with min/maxItems? > > > > > > > > > It seems like I can't use min/maxItems on this property. I think that it is > > > > using size-cells + address-cells to deduce that the number of items should > > > > be equal to 1. > > > > Looking at dt-schema, I couldn't personally understand from where did > > the error messages reported by Thomas came from. There are clear > > I think the complaints are on a more meta level than that. He provided > an items list > properties: > reg: > maxItems: 1 > items: > - minimum: 0 > maximum: 2 > but this list only has one entry as there's one -. The first complaint > from dt_binding_check is that having maxItems is not needed with an > items list, because the items list contains the maximum number of > elements. > > The second one comes from cell.yaml: > https://github.com/devicetree-org/dt-schema/blob/main/dtschema/meta-schemas/cell.yaml > > It either allows a single item, with maxItems: 1 or multiple items, in > which case maxitems must be greater than 1. That's where the "anyOf > conditonal failed" and "1 is less than the minimum of 2" stuff comes > from. > > I hope that helps? Ah yeah, makes sense. Thanks a lot for your feedback! Miquèl