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

From: Adam Ford
Date: Wed Nov 18 2020 - 07:14:19 EST


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.

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