On Tue, Jun 11, 2024 at 04:23:00PM -0700, Elliot Berman wrote: > On Tue, Jun 11, 2024 at 02:40:01PM -0600, Rob Herring wrote: > > On Tue, Jun 11, 2024 at 08:35:13AM -0700, Elliot Berman wrote: > > > PSCI reboot mode will map a mode name to multiple magic values instead > > > of just one. Convert the mode-.* property to an array. Users of the > > > reboot-mode schema will need to specify the maxItems of the mode-.* > > > properties. Existing users will all be 1. > > > > > > Signed-off-by: Elliot Berman <quic_eberman@xxxxxxxxxxx> > > > --- > > > .../devicetree/bindings/power/reset/nvmem-reboot-mode.yaml | 5 +++++ > > > Documentation/devicetree/bindings/power/reset/qcom,pon.yaml | 8 ++++++++ > > > Documentation/devicetree/bindings/power/reset/reboot-mode.yaml | 4 ++-- > > > .../devicetree/bindings/power/reset/syscon-reboot-mode.yaml | 5 +++++ > > > 4 files changed, 20 insertions(+), 2 deletions(-) > > > > > > diff --git a/Documentation/devicetree/bindings/power/reset/nvmem-reboot-mode.yaml b/Documentation/devicetree/bindings/power/reset/nvmem-reboot-mode.yaml > > > index 627f8a6078c2..9b9bbc0f29e7 100644 > > > --- a/Documentation/devicetree/bindings/power/reset/nvmem-reboot-mode.yaml > > > +++ b/Documentation/devicetree/bindings/power/reset/nvmem-reboot-mode.yaml > > > @@ -31,6 +31,11 @@ properties: > > > allOf: > > > - $ref: reboot-mode.yaml# > > > > > > +patternProperties: > > > + "^mode-.*$": > > > + items: > > > + maxItems: 1 > > > > Drop 'items'. Otherwise, you are defining constraints of a matrix. > > > > If I do this, I also have to add $ref: .../uint32-array as well so > the property can be picked up as an array type. Let me know if this isn't > right, otherwise I'll send out a fixed version in a few days. Ah, I suppose the tools get confused with what to do here. That's an issue I'm working on addressing. The issue is everything is a matrix because without other information for a property we don't know how to decode them. But with the schemas being fairly complete now and the move away from DTB->YAML decoding, we can decode properties to the right type. One issue to switch over is places where this 'everything is a matrix' crept into schemas. I've been fixing these. The above is an example of this. So for now, just drop 'items'. It won't enforce anything, but once we switch over it will. Rob