[PATCH] dt-bindings: pinctrl: pinctrl-single: Define a max count for "pinctrl-single,gpio-range"
Rob Herring (Arm)
robh at kernel.org
Tue Jun 18 11:34:24 PDT 2024
On Tue, 18 Jun 2024 11:51:02 -0500, Nishanth Menon wrote:
> "pinctrl-single,gpio-range" allows us to define a dis-contiguous
> range of pinctrl registers that can have different mux settings for
> GPIO mode of operation. However, the maxItems seem to be set to 1 in
> processed schema for some reason. This is incorrect. For example:
> arch/arm64/boot/dts/hisilicon/hi6220.dtsi and others have more than
> one dis-contiguous range.
>
> Arbitrarily define a max 100 count to override the defaults.
>
> Signed-off-by: Nishanth Menon <nm at ti.com>
> ---
> I am not sure if I should call this RFC or not.. and if this is even the
> right solution.. I am on 2024.05 dt-schema for this check.
>
> I noticed this when adding gpio-ranges for am62p platform:
> https://gist.github.com/nmenon/7019cd2f24be47997640df5db60a7544
>
> It is possible that this is a bug in dt-schema, but I have'nt been able
> to track it down either.
>
> behavior seen is the following:
> pinctrl-single,gpio-range = <&mcu_pmx_range 0 21 7>;
> generates no warning
> However,
> pinctrl-single,gpio-range = <&mcu_pmx_range 0 21 7>, <&mcu_pmx_range 32 2 7>;
>
> generates "is too long" warning.
>
>
> Documentation/devicetree/bindings/pinctrl/pinctrl-single.yaml | 1 +
> 1 file changed, 1 insertion(+)
>
My bot found errors running 'make dt_binding_check' on your patch:
yamllint warnings/errors:
dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pinctrl/pinctrl-single.yaml: properties:pinctrl-single,gpio-range: {'description': 'Optional list of pin base, nr pins & gpio function', '$ref': '/schemas/types.yaml#/definitions/phandle-array', 'maxItems': 100, 'items': [{'items': [{'description': 'phandle of a gpio-range node'}, {'description': 'pin base'}, {'description': 'number of pins'}, {'description': 'gpio function'}]}]} should not be valid under {'required': ['maxItems']}
hint: "maxItems" is not needed with an "items" list
from schema $id: http://devicetree.org/meta-schemas/items.yaml#
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20240618165102.2380159-1-nm@ti.com
The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.
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
Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
More information about the linux-arm-kernel
mailing list