Re: [PATCH 2/4] dt-bindings: display: Add ABT Y030XX067A panel bindings

From: Sam Ravnborg
Date: Sat Dec 05 2020 - 14:56:37 EST


Hi Paul

> > > >> >> +
> > > >> >> +maintainers:
> > > >> >> + - Paul Cercueil <paul@xxxxxxxxxxxxxxx>
> > > >> >> +
> > > >> >> +allOf:
> > > >> >> + - $ref: panel-common.yaml#
> > > >> >> +
> > > >> >> +properties:
> > > >> >> + compatible:
> > > >> >> + const: abt,y030xx067a
> > > >> >> +
> > > >> >> + backlight: true
> > > >> >> + port: true
> > > >> >> + power-supply: true
> > > >> >> + reg: true
> > > >> >> + reset-gpios: true
> > > >> >
> > > >> > The binding is missing:
> > > >> > required:
> > > >> > - compatible
> > > >> > - reg
> > > >> > - power-supply
> > > >> > - reset-gpios
> > > >> > - ...
> > > >> >
> > > >> > additionalProperties: false
> > > >> >
> > > >> > So r-b only with these added.
> > > >>
> > > >> Stupid mistake, sorry about that.
> > > >>
> > > >> I'll V2.
> > > >
> > > > I don't have any V2 in my inbox, but looks like it is in
> > > linux-next
> > > > now:
> > >
> > > Yes, Sam told me on IRC I could fix it while applying and avoid the
> > > V2.
> > >
> > > > /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/display/panel/abt,y030xx067a.example.dt.yaml:
> > > > panel@0: 'spi-max-frequency' does not match any of the regexes:
> > > > 'pinctrl-[0-9]+'
> > > > From schema:
> > > > /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/display/panel/abt,y030xx067a.yaml
> > >
> > > "make dt_binding_check
> > > DT_SCHEMA_FILES=Documentation/devicetree/bindings/display/panel/abt,y030xx067a.yaml"
> > > doesn't complain here :(
> >
> > Even if you do 'touch
> > Documentation/devicetree/bindings/display/panel/abt,y030xx067a.yaml'
> > or do a clean build?
> >
> > I can't think of any kernel or dt-schema changes which would explain
> > the difference. This is purely related to 'additionalProperties:
> > false'.
>
> Ok, I see it now.
> Should I use 'unevaluatedProperties: false' instead?

Yes, the issue here is that you add a number of spi properties to the
binding. And you cannot or at least shall not, list them all in this
binding.
So when evaluating the binding the spi-max-frequency should be allowed,
and when a full DT file is checked the tools will catch it there is a
binding that is not known - as you tell it with "unevaluatedProperties:
false" that all prperties must be known.

Sam