On 03/02/2023 02:22, Kuninori Morimoto wrote: > > From: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > > R-Car Gen4 is not compatible with Gen3, this patch adjusts > to R-Car Gen4. > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> > --- > The "required" with if - then - else on "rcar_sound,ssi" is > always match to "then" even though it is checking "renesas,rcar_sound-gen4" or not. > Why ?? Is it my fault ?? > > .../bindings/sound/renesas,rsnd.yaml | 62 ++++++++++++++----- > 1 file changed, 46 insertions(+), 16 deletions(-) > > diff --git a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml > index d106de00c6b2..9a88b1c34e72 100644 > --- a/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml > +++ b/Documentation/devicetree/bindings/sound/renesas,rsnd.yaml > @@ -106,7 +106,9 @@ properties: > items: > oneOf: > - const: ssi-all > + - const: clkin > - pattern: '^ssi\.[0-9]$' > + - pattern: '^ssiu\.[0-9]$' > - pattern: '^src\.[0-9]$' > - pattern: '^mix\.[0-1]$' > - pattern: '^ctu\.[0-1]$' > @@ -254,10 +256,20 @@ properties: > no-busif: > description: BUSIF is not used when [mem -> SSI] via DMA case > $ref: /schemas/types.yaml#/definitions/flag > - required: > - - interrupts > - - dmas > - - dma-names > + allOf: > + - if: > + properties: > + compatible: > + contains: > + const: renesas,rcar_sound-gen4 > + then: > + required: > + - interrupts > + else: > + required: > + - interrupts This does not make sense - you just require it always. > + - dmas > + - dma-names > additionalProperties: false > > # For DAI base > @@ -307,18 +319,36 @@ allOf: > - ssi > - adg > else: > - properties: > - reg: > - maxItems: 5 > - reg-names: > - maxItems: 5 > - items: > - enum: > - - scu > - - adg > - - ssiu > - - ssi > - - audmapp > + if: Please do not embed if within another if, unless strictly necessary. It gets unmanageable. > + properties: > + compatible: > + contains: > + const: renesas,rcar_sound-gen4 > + then: > + properties: > + reg: minItems > + maxItems: 4 > + reg-names: > + maxItems: 4 Drop > + items: > + enum: > + - adg > + - ssiu > + - ssi > + - sdmc > + else: > + properties: > + reg: minItems > + maxItems: 5 > + reg-names: > + maxItems: 5 Drop Best regards, Krzysztof