Re: [PATCH] dt-bindings: clock: Convert fixed-clock binding to json-schema

From: Stephen Boyd
Date: Fri Jan 11 2019 - 17:43:17 EST


Quoting Rob Herring (2019-01-11 12:49:04)
> On Fri, Jan 11, 2019 at 12:54 PM Stephen Boyd <sboyd@xxxxxxxxxx> wrote:
> >
> > Quoting Rob Herring (2019-01-11 10:27:48)
> > > On Fri, Jan 11, 2019 at 11:44 AM Stephen Boyd <sboyd@xxxxxxxxxx> wrote:
> > > >
> > > > Any pointer to the full schema?
> > >
> > > https://github.com/robherring/yaml-bindings/blob/master/schemas/
> > >
> > > And the clock schema in particular:
> > > https://github.com/robherring/yaml-bindings/blob/master/schemas/clock.yaml
> >
> > Awesome. Thanks for the pointers! Is the clock schema posted to the list
> > somewhere?
>
> No. Happy to post things, but I'm struggling to find anyone that cares.

Ok. I can review that document too if you post it to the list.

>
> > > > Why does title have a full stop?
> > >
> > > Because it was there in the original. My script to extract just takes
> > > the first line of alphanumeric text.
> >
> > Ok. I think it would be good to treat them like commit subjects that
> > don't have the full stop either, so if the script is able to drop the
> > full stop it would be great.
>
> I can just write a meta-schema to enforce that. :)

Sounds good.

>
> Yes, the meta-schema enforces this at least to the extent there is a
> meta-schema defined for a standard property. Even if not something for
> a specific property, we limit things to a subset of json-schema
> keywords. Also, you also can't define something contradicting a core
> schema (e.g. { reg: { type: string } }), but that wouldn't be found
> until you check actual DTs.
>
> The meta-schema check is run with:
> make dt_binding_check
>
> This is all documented in Documentation/devicetree/writing-schema.md.
>

Ok I'll read that document now. Would be cool if the build robots (and
myself) can somehow run the dt_binding_check on a single YAML file so we
can quickly validate the binding. Maybe even make C=2 or C=1 do that?

If the robots can then complain if the single file fails to build it
will save us tons of time. I just tried to run it but it seems to only
care about running on all the YAML files.