Re: [PATCH] dt-bindings: Drop more redundant 'maxItems/minItems' in if/then schemas

From: Ulf Hansson
Date: Tue Jun 07 2022 - 06:43:26 EST


On Tue, 7 Jun 2022 at 00:51, Rob Herring <robh@xxxxxxxxxx> wrote:
>
> Another round from new cases in 5.19-rc of removing redundant
> minItems/maxItems when 'items' list is specified. This time it is in
> if/then schemas as the meta-schema was failing to check this case.
>
> If a property has an 'items' list, then a 'minItems' or 'maxItems' with the
> same size as the list is redundant and can be dropped. Note that is DT
> schema specific behavior and not standard json-schema behavior. The tooling
> will fixup the final schema adding any unspecified minItems/maxItems.
>
> Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

Acked-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

Kind regards
Uffe

> ---
> .../bindings/memory-controllers/nvidia,tegra186-mc.yaml | 3 ---
> Documentation/devicetree/bindings/mmc/marvell,xenon-sdhci.yaml | 1 -
> .../devicetree/bindings/watchdog/allwinner,sun4i-a10-wdt.yaml | 1 -
> 3 files changed, 5 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml
> index c7cfa6c2cd81..935d63d181d9 100644
> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml
> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra186-mc.yaml
> @@ -150,7 +150,6 @@ allOf:
> description: 5 memory controller channels and 1 for stream-id registers
>
> reg-names:
> - maxItems: 6
> items:
> - const: sid
> - const: broadcast
> @@ -170,7 +169,6 @@ allOf:
> description: 17 memory controller channels and 1 for stream-id registers
>
> reg-names:
> - minItems: 18
> items:
> - const: sid
> - const: broadcast
> @@ -202,7 +200,6 @@ allOf:
> description: 17 memory controller channels and 1 for stream-id registers
>
> reg-names:
> - minItems: 18
> items:
> - const: sid
> - const: broadcast
> diff --git a/Documentation/devicetree/bindings/mmc/marvell,xenon-sdhci.yaml b/Documentation/devicetree/bindings/mmc/marvell,xenon-sdhci.yaml
> index c79639e9027e..7a2b22dd6d05 100644
> --- a/Documentation/devicetree/bindings/mmc/marvell,xenon-sdhci.yaml
> +++ b/Documentation/devicetree/bindings/mmc/marvell,xenon-sdhci.yaml
> @@ -145,7 +145,6 @@ allOf:
> items:
> - description: Xenon IP registers
> - description: Armada 3700 SoC PHY PAD Voltage Control register
> - minItems: 2
>
> marvell,pad-type:
> $ref: /schemas/types.yaml#/definitions/string
> diff --git a/Documentation/devicetree/bindings/watchdog/allwinner,sun4i-a10-wdt.yaml b/Documentation/devicetree/bindings/watchdog/allwinner,sun4i-a10-wdt.yaml
> index cbcf19f51411..ed6c1ca80dcc 100644
> --- a/Documentation/devicetree/bindings/watchdog/allwinner,sun4i-a10-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/allwinner,sun4i-a10-wdt.yaml
> @@ -64,7 +64,6 @@ if:
> then:
> properties:
> clocks:
> - minItems: 2
> items:
> - description: High-frequency oscillator input, divided internally
> - description: Low-frequency oscillator input
> --
> 2.34.1
>