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