[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGb2v65hGBVyhnok79fn9bgdXXeLHVZ0uUobqxaVU75Lh5-BCg@mail.gmail.com>
Date: Thu, 25 Jan 2024 22:31:55 +0800
From: Chen-Yu Tsai <wens@...nel.org>
To: Conor Dooley <conor@...nel.org>
Cc: Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>, Conor Dooley <conor+dt@...nel.org>,
Jernej Skrabec <jernej.skrabec@...il.com>, Samuel Holland <samuel@...lland.org>,
Liam Girdwood <lgirdwood@...il.com>, Mark Brown <broonie@...nel.org>,
Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.com>, Vinod Koul <vkoul@...nel.org>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-sunxi@...ts.linux.dev, linux-sound@...r.kernel.org,
dmaengine@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 4/7] dt-bindings: dma: allwinner,sun50i-a64-dma: Add
compatible for H616
On Tue, Jan 23, 2024 at 2:18 AM Conor Dooley <conor@...nel.org> wrote:
>
> On Tue, Jan 23, 2024 at 01:05:15AM +0800, Chen-Yu Tsai wrote:
> > From: Chen-Yu Tsai <wens@...e.org>
> >
> > The DMA controllers found on the H616 and H618 are the same as the one
> > found on the H6. The only difference is the DMA endpoint (DRQ) layout.
> >
> > Since the number of channels and endpoints are described with additional
> > generic properties, just add a new H616-specific compatible string and
> > fallback to the H6 one.
> >
> > Signed-off-by: Chen-Yu Tsai <wens@...e.org>
> > ---
> > .../bindings/dma/allwinner,sun50i-a64-dma.yaml | 15 +++++++++++----
> > 1 file changed, 11 insertions(+), 4 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/dma/allwinner,sun50i-a64-dma.yaml b/Documentation/devicetree/bindings/dma/allwinner,sun50i-a64-dma.yaml
> > index ec2d7a789ffe..e5693be378bd 100644
> > --- a/Documentation/devicetree/bindings/dma/allwinner,sun50i-a64-dma.yaml
> > +++ b/Documentation/devicetree/bindings/dma/allwinner,sun50i-a64-dma.yaml
> > @@ -28,6 +28,9 @@ properties:
> > - items:
> > - const: allwinner,sun8i-r40-dma
> > - const: allwinner,sun50i-a64-dma
> > + - items:
> > + - const: allwinner,sun50i-h616-dma
> > + - const: allwinner,sun50i-h6-dma
> >
> > reg:
> > maxItems: 1
> > @@ -59,10 +62,14 @@ required:
> > if:
> > properties:
> > compatible:
> > - enum:
> > - - allwinner,sun20i-d1-dma
> > - - allwinner,sun50i-a100-dma
> > - - allwinner,sun50i-h6-dma
> > + oneOf:
> > + - enum:
> > + - allwinner,sun20i-d1-dma
> > + - allwinner,sun50i-a100-dma
> > + - allwinner,sun50i-h6-dma
> > + - items:
> > + - const: allwinner,sun50i-h616-dma
> > + - const: allwinner,sun50i-h6-dma
>
> Instead of introducing this complexity, could you instead use "contains"
> here? Unless I am missing soemthing, you can achieve the same thing here
> with:
> |if:
> | properties:
> | compatible:
> | constains:
> | enum:
> | - allwinner,sun20i-d1-dma
> | - allwinner,sun50i-a100-dma
> | - allwinner,sun50i-h6-dma
Thank you for the reminder. I had a vague impression that something
simpler worked, but couldn't remember what exactly.
ChenYu
Powered by blists - more mailing lists