Thread (22 messages) 22 messages, 3 authors, 2020-02-27

Re: [PATCH 12/13] dt-bindings: arm: Add Calxeda system registers json-schema binding

From: Rob Herring <robh@kernel.org>
Date: 2020-02-27 14:44:40
Also in: linux-devicetree, lkml

On Wed, Feb 26, 2020 at 6:12 PM André Przywara [off-list ref] wrote:
On 26/02/2020 21:57, Rob Herring wrote:

Hi Rob,

thanks for giving it a try!
quoted
On Wed, 26 Feb 2020 18:09:00 +0000, Andre Przywara wrote:
quoted
The Calxeda system registers are a collection of MMIO register
controlling several more general aspects of the SoC.
Beside for some power management tasks this node is also somewhat
abused as the container for the clock nodes.

Add a binding in DT schema format using json-schema.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
 .../bindings/arm/calxeda/hb-sregs.yaml        | 47 +++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/arm/calxeda/hb-sregs.yaml
My bot found errors running 'make dt_binding_check' on your patch:

warning: no schema found in file: Documentation/devicetree/bindings/arm/calxeda/hb-sregs.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/calxeda/hb-sregs.yaml: ignoring, error in schema: properties: clocks
Documentation/devicetree/bindings/display/simple-framebuffer.example.dts:21.16-37.11: Warning (chosen_node_is_root): /example-0/chosen: chosen node must be at root node
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/calxeda/hb-sregs.yaml: properties:clocks: {'type': 'object'} is not valid under any of the given schemas (Possible causes of the failure):
      /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/arm/calxeda/hb-sregs.yaml: properties:clocks: 'maxItems' is a required property

Documentation/devicetree/bindings/Makefile:12: recipe for target 'Documentation/devicetree/bindings/arm/calxeda/hb-sregs.example.dts' failed
make[1]: *** [Documentation/devicetree/bindings/arm/calxeda/hb-sregs.example.dts] Error 1
Makefile:1263: recipe for target 'dt_binding_check' failed
make: *** [dt_binding_check] Error 2

See https://patchwork.ozlabs.org/patch/1245261
Please check and re-submit.
Ah, right, I forgot that I actually fixed dt-schema:

It seems like we can cope with "clocks" being just a node name in
schema/clock/clock.yaml [1], but not in meta-schemas/clocks.yaml [2].

I added a similar anyOf ... to the meta-schemas entry, which seems to
fix it for me.

Can you confirm that this is a bug in dt-schema and this is the proper
fix or am I doing something wrong (I have only a smattering in
dt-schema/json)?
Yeah, that's right. Though ideally we'd avoid names that are used as
both properties and nodes, but this one is kind of widely used.

Can you submit a GH pull req with the fix (use the devicetree-org one,
not my tree).

Rob

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help