Re: [PATCH V4] dt-bindings: soc: imx: Add binding doc for spba bus

From: Rob Herring
Date: Wed Nov 18 2020 - 09:58:18 EST


On Wed, Nov 18, 2020 at 6:13 AM Adam Ford <aford173@xxxxxxxxx> wrote:
>
> On Thu, Nov 12, 2020 at 7:52 AM Rob Herring <robh@xxxxxxxxxx> wrote:
> >
> > On Thu, Nov 12, 2020 at 5:44 AM Adam Ford <aford173@xxxxxxxxx> wrote:
> > >
> > > On Wed, Nov 11, 2020 at 2:18 PM Rob Herring <robh@xxxxxxxxxx> wrote:
> > > >
> > > > On Wed, 11 Nov 2020 09:25:23 -0600, Adam Ford wrote:
> > > > > Add binding doc for fsl,spba-bus.
> > > > >
> > > > > Signed-off-by: Adam Ford <aford173@xxxxxxxxx>
> > > > > ---
> > > > > make dt_binding_check showed no errors if I did this right.
> > > > >
> > > > > V4: Remove an accidental makefile change
> > > > > Move type:object under additional properties
> > > > >
> > > > > V3: Rebase sample from aips-bus example
> > > > > Split off from series adding i.MX8M Nano functions to reduce noise
> > > > >
> > > > > V2: Attempted to update yaml from feedback
> > > > >
> > > >
> > > >
> > > > My bot found errors running 'make dt_binding_check' on your patch:
> > > >
> > > > yamllint warnings/errors:
> > > >
> > > > dtschema/dtc warnings/errors:
> > > > /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/bus/fsl,spba-bus.example.dt.yaml: bus@30000000: reg: [[805306368, 1048576]] is not of type 'object'
> > > > From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/bus/fsl,spba-bus.yaml
> > > >
> > >
> > > Rob,
> > >
> > > Can you give me a pointer on what this message is saying? I don't
> > > undertsand the YAML language, and I cannot get my machine to generate
> > > the same messages you're seeing.
> >
> > 'reg' is not documented, so it's defaulting to the schema in
> > 'additionalProperties' which says anything else has to be a node
> > (which is an 'object' in json-schema).
> >
> > > >
> > > > See https://patchwork.ozlabs.org/patch/1398351
> > > >
> > > > The base for the patch is generally the last rc1. Any dependencies
> > > > should be noted.
> > > >
> > > > If you already ran 'make dt_binding_check' and didn't see the above
> > > > error(s), then make sure 'yamllint' is installed and dt-schema is up to
> > > > date:
> > > >
> > > > pip3 install dtschema --upgrade
> > >
> > > I have installed yamllint, and I have run the above line, but when I
> > > run make dt_binding_check it fails to finish script even before I add
> > > this new binding. If I revert the Makefile back to before the
> > > implementation of yamllint, it works, but doesn't show the error.
> > > When I restore the Makefile, it runs but it doesn't show the error.
> > > Once I do a make clean, and run the dt_binding_check again, it fails
> > > to finish with the following error
> > >
> > > make[1]: *** [Documentation/devicetree/bindings/Makefile:59:
> > > Documentation/devicetree/bindings/processed-schema-examples.json]
> > > Error 123
> > >
> > > It appears as if the processed-schema-examples.json is not generated at all.
> > >
> > > When I revert back to the older makefile, it appears that file is
> > > generated, but when I restore the makefile to the current version and
> > > run it again, it doesn't show the dtschema warnings/errors you see.
> > > I am guessing it's because the processed-schema-examples.json isn't
> > > being generated correctly after I run make clean.
> > >
> > > Do you have any ideas what might be missing from my build machine?
> >
> > What tree? v5.10-rc3 landed some changes that shouldn't have gone in
> > and broke dt_binding_check. In any case, you can use 'make -k' to work
> > around any unrelated failure.
>
> Rob,
>
> I went and pulled a clean copy of 5.10-RC1 and did "make
> dt_binding_check -k" without adding my patch or modifying the branch
> in any way.

Oh right, since it's 1 rule now, -k isn't going to help. Use -rc2
which has fixes needed. Or comment out running yamllint in
.../bindings/Makefile

I'm going to change it to ignore yamllint errors.

>
> After a bunch of DTEX, then starts to give feedback from various yaml
> files like wrong intendentation, etc. I can give you a larger log
> dump if you want.
>
> Then I get the error message again:
> ./Documentation/devicetree/bindings/mmc/arasan,sdhci.yaml:35:15:
> [warning] wrong indentation: expected 16 but found 14 (indentation)
> ./Documentation/devicetree/bindings/mmc/arasan,sdhci.yaml:38:15:
> [warning] wrong indentation: expected 16 but found 14 (indentation)
> ./Documentation/devicetree/bindings/eeprom/at25.yaml:84:8: [warning]
> wrong indentation: expected 6 but found 7 (indentation)
> ./Documentation/devicetree/bindings/eeprom/at25.yaml:90:8: [warning]
> wrong indentation: expected 6 but found 7 (indentation)
> make[1]: *** [Documentation/devicetree/bindings/Makefile:59:
> Documentation/devicetree/bindings/processed-schema-examples.json]
> Error 123
> make[1]: Target '__build' not remade because of errors.
> make: *** [Makefile:1364: dt_binding_check] Error 2
>
> It appears that
> Documentation/devicetree/bindings/processed-schema-examples.json was
> not generated.
>
> I went through the writing-schema.rst file to see what/if anything I
> am missing, but as far as I can tell, I have everything installed.
> I did " pip3 install
> git+https://github.com/devicetree-org/dt-schema.git@master"; and "
> "apt-get install libyaml-dev"
>
> I am running Ubuntu 20.04 if that helps.
>
> thanks for any suggestions you might have.
>
> adam
>
> >
> > Rob