Re: [PATCH v3 1/3] dt-bindings: dma: snps,dw-axi-dmac: constrain minItems/maxItems of resets for JH7110 DMA

From: Rob Herring
Date: Tue Feb 28 2023 - 10:38:12 EST


On Mon, Feb 27, 2023 at 09:10:40PM +0800, Walker Chen wrote:
> The DMA controller needs two reset items to work properly on JH7110 SoC,
> so there is need to change the maxItems' value to 2 and add minItems
> whose value is equal to 1. Other platforms do not have this constraint.
>
> Signed-off-by: Walker Chen <walker.chen@xxxxxxxxxxxxxxxx>
> ---
> .../bindings/dma/snps,dw-axi-dmac.yaml | 25 ++++++++++++++++---
> 1 file changed, 21 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/dma/snps,dw-axi-dmac.yaml b/Documentation/devicetree/bindings/dma/snps,dw-axi-dmac.yaml
> index ad107a4d3b33..4ed0a6b7ca69 100644
> --- a/Documentation/devicetree/bindings/dma/snps,dw-axi-dmac.yaml
> +++ b/Documentation/devicetree/bindings/dma/snps,dw-axi-dmac.yaml
> @@ -12,14 +12,12 @@ maintainers:
> description:
> Synopsys DesignWare AXI DMA Controller DT Binding
>
> -allOf:
> - - $ref: "dma-controller.yaml#"
> -
> properties:
> compatible:
> enum:
> - snps,axi-dma-1.01a
> - intel,kmb-axi-dma
> + - starfive,jh7110-axi-dma
>
> reg:
> minItems: 1
> @@ -58,7 +56,8 @@ properties:
> maximum: 8
>
> resets:
> - maxItems: 1
> + minItems: 1
> + maxItems: 2
>
> snps,dma-masters:
> description: |
> @@ -109,6 +108,24 @@ required:
> - snps,priority
> - snps,block-size
>
> +allOf:
> + - $ref: "dma-controller.yaml#"
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - starfive,jh7110-axi-dma
> + then:
> + properties:
> + resets:
> + minItems: 1
> + maxItems: 2

A given platform should not have a variable number of resets. This also
does nothing because you just duplicated the top-level constraints. If
you have 2, then you want just 'minItems: 2'.

Rob