Re: [PATCH v2] dt-bindings: dma: Convert hisilicon,k3-dma-1.0 to DT schema
From: Rob Herring
Date: Fri Oct 02 2026 - 10:34:34 EST
On Wed, Sep 30, 2026 at 03:30:50PM -0400, Frank Li wrote:
> On Mon, Sep 28, 2026 at 07:44:46AM -0500, Rob Herring (Arm) wrote:
> > Convert the hisilicon,k3-dma-1.0 binding to DT schema format.
> >
> > Add dma-channel-mask, dma-no-cci, dma-type and interrupt-names
> > properties which were not documented.
> >
> > The "hisilicon,hisi-pcm-asp-dma-1.0" doesn't have clocks, so make it
> > optional.
> >
> > Assisted-by: LLM
> > Signed-off-by: Rob Herring (Arm) <robh@xxxxxxxxxx>
> > ---
> > v2:
> > - Fix example node name to 'dma-controller'
> > ---
> > .../bindings/dma/hisilicon,k3-dma-1.0.yaml | 87 +++++++++++++++++++
> > .../devicetree/bindings/dma/k3dma.txt | 47 ----------
> > 2 files changed, 87 insertions(+), 47 deletions(-)
> > create mode 100644 Documentation/devicetree/bindings/dma/hisilicon,k3-dma-1.0.yaml
> > delete mode 100644 Documentation/devicetree/bindings/dma/k3dma.txt
> >
> > diff --git a/Documentation/devicetree/bindings/dma/hisilicon,k3-dma-1.0.yaml b/Documentation/devicetree/bindings/dma/hisilicon,k3-dma-1.0.yaml
> > new file mode 100644
> > index 000000000000..e60f2a572272
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/dma/hisilicon,k3-dma-1.0.yaml
> > @@ -0,0 +1,87 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/dma/hisilicon,k3-dma-1.0.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Hisilicon K3 DMA controller
> > +
> > +maintainers:
> > + - Wei Xu <xuwei5@xxxxxxxxxxxxx>
> > +
> > +properties:
> > + compatible:
> > + items:
> > + - enum:
> > + - hisilicon,k3-dma-1.0
> > + - hisilicon,hisi-pcm-asp-dma-1.0
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + clocks:
> > + maxItems: 1
> > +
> > + interrupts:
> > + maxItems: 1
> > +
> > + '#dma-cells':
> > + const: 1
> > +
> > + dma-channels:
> > + description: Number of physical DMA channels supported.
> > + maximum: 32
> > +
> > + dma-requests:
> > + description: Number of virtual DMA request lines supported.
> > + maximum: 32
> > +
> > + dma-channel-mask:
> > + description: Bitmask of usable DMA channels.
> > +
> > + dma-no-cci:
> > + type: boolean
> > + description: DMA is not coherent with the CCI.
> > +
> > + dma-type:
> > + $ref: /schemas/types.yaml#/definitions/string
> > + description: SoC-specific DMA type name.
> > + enum:
> > + - hi3660_dma
> > + - hi6220_dma
> > +
> > + interrupt-names:
> > + maxItems: 1
>
> It'd better move interrupt-names after interrupts property.
Yes, but more importantly the name needs to be defined.
> > +
> > +required:
> > + - compatible
> > + - reg
> > + - interrupts
> > + - '#dma-cells'
> > + - dma-channels
> > + - dma-requests
> > +
> > +allOf:
> > + - $ref: dma-controller.yaml#
> > + - if:
> > + properties:
> > + compatible:
> > + contains:
> > + const: hisilicon,k3-dma-1.0
> > + then:
> > + required:
> > + - clocks
> > +
> > +additionalProperties: false
>
> there are $ref, should be unevaluatedProperties?
No, because every property used has constraints here.
Rob