Thread (12 messages) 12 messages, 4 authors, 2020-02-29

Re: [PATCH 2/3] dt-bindings: gpio: Convert UniPhier GPIO to json-schema

From: Rob Herring <robh@kernel.org>
Date: 2020-02-24 14:52:06
Also in: linux-devicetree, linux-gpio, lkml

On Fri, Feb 21, 2020 at 11:33 PM Masahiro Yamada [off-list ref] wrote:
Hi Rob,

On Sat, Feb 22, 2020 at 12:32 AM Rob Herring [off-list ref] wrote:
quoted
On Fri, 21 Feb 2020 11:10:01 +0900, Masahiro Yamada wrote:
quoted
Convert the UniPhier GPIO controller binding to DT schema format.

I omitted the 'gpio-ranges' property because it is defined in the
dt-schema project (/schemas/gpio/gpio.yaml).

As of writing, the 'gpio-ranges-group-names' is not defined in that
file despite it is a common property described in
Documentation/devicetree/bindings/gpio/gpio.txt
So, I defined it in this schema.

Signed-off-by: Masahiro Yamada <redacted>
---

I have a question about the range about 'ngpio'.

  ngpios:
    minimum: 0
    maximum: 512

The 'ngpio' property is already defined as 'uint32' in the dt-schema tool:
https://github.com/robherring/dt-schema/blob/master/schemas/gpio/gpio.yaml#L20

'uint32' is unsigned, so 'minimum: 0' looks too obvious.

I cannot omit the minimum because minimum and maximum depend on each other.
I just put a sensible number, 512, in maximum.

If this range is entirely unneeded, I will delete it.
This property is generally for when you can have some number less
than a maximum number implied by the compatible string.

If there is really no max (e.g. 2^32 - 1 is valid), then just do
'ngpios: true'

What does ': true' mean?
It's a schema that always passes validation. It's purpose here is just
to say you are using this common property for this binding.
If it is documented somewhere,
could you point me to the reference?
https://github.com/devicetree-org/dt-schema/blob/master/schemas/gpio/gpio.yaml
Even if I remove the 'ngpio' entirely
from my dt-schema, the 'ngpio' is checked
correctly.
Yes, if you change it to a string value for example, it should fail.
(Only if DT_SCHEMA_FILES is not set without my kbuild changes)

You should also add 'additionalProperties: false' at the top level of
your schema and then it will also fail if you don't list ngpios in
properties.

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