Message ID | 1580362048-28455-2-git-send-email-hayashi.kunihiko@socionext.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | dmaengine: Add UniPhier XDMAC driver | expand |
On Thu, Jan 30, 2020 at 02:27:27PM +0900, Kunihiko Hayashi wrote: > Add devicetree binding documentation for external DMA controller > implemented on Socionext UniPhier SoCs. > > Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > --- > .../bindings/dma/socionext,uniphier-xdmac.yaml | 57 ++++++++++++++++++++++ > 1 file changed, 57 insertions(+) > create mode 100644 Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml > > diff --git a/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml b/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml > new file mode 100644 > index 00000000..32abf18 > --- /dev/null > +++ b/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml > @@ -0,0 +1,57 @@ > +# SPDX-License-Identifier: GPL-2.0 Dual license new bindings: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/dma/socionext,uniphier-xdmac.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Socionext UniPhier external DMA controller > + > +description: | > + This describes the devicetree bindings for an external DMA engine to perform > + memory-to-memory or peripheral-to-memory data transfer capable of supporting > + 16 channels, implemented in Socionext UniPhier SoCs. > + > +maintainers: > + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > + > +allOf: > + - $ref: "dma-controller.yaml#" > + > +properties: > + compatible: > + items: > + - const: socionext,uniphier-xdmac You can drop 'items' for a single item. > + > + reg: > + minItems: 1 > + maxItems: 2 You need to say what each entry is: items: - description: ... - description: ... > + > + interrupts: > + maxItems: 1 > + > + "#dma-cells": > + const: 2 > + description: | > + DMA request from clients consists of 2 cells: > + 1. Channel index > + 2. Transfer request factor number, If no transfer factor, use 0. > + The number is SoC-specific, and this should be specified with > + relation to the device to use the DMA controller. > + > +required: > + - compatible > + - reg > + - interrupts > + - "#dma-cells" Add: additionalProperties: false > + > +examples: > + - | > + xdmac: dma-controller@5fc10000 { > + compatible = "socionext,uniphier-xdmac"; > + reg = <0x5fc10000 0x1000>, <0x5fc20000 0x800>; > + interrupts = <0 188 4>; > + #dma-cells = <2>; > + dma-channels = <16>; Not documented. You need at least 'dma-channels: true' to indicate you're using this. But you should be able to have some constraints such as 'maximum: 16'. Rob
Hi Rob, Thank you for reviewing. Your comments are helpful as I'm not familiar with the new bindings yet. On Thu, 6 Feb 2020 17:54:58 +0000 <robh@kernel.org> wrote: > On Thu, Jan 30, 2020 at 02:27:27PM +0900, Kunihiko Hayashi wrote: > > Add devicetree binding documentation for external DMA controller > > implemented on Socionext UniPhier SoCs. > > > > Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > > --- > > .../bindings/dma/socionext,uniphier-xdmac.yaml | 57 ++++++++++++++++++++++ > > 1 file changed, 57 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml > > > > diff --git a/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml b/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml > > new file mode 100644 > > index 00000000..32abf18 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml > > @@ -0,0 +1,57 @@ > > +# SPDX-License-Identifier: GPL-2.0 > > Dual license new bindings: > > (GPL-2.0-only OR BSD-2-Clause) I'll replace with it. > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/dma/socionext,uniphier-xdmac.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Socionext UniPhier external DMA controller > > + > > +description: | > > + This describes the devicetree bindings for an external DMA engine to perform > > + memory-to-memory or peripheral-to-memory data transfer capable of supporting > > + 16 channels, implemented in Socionext UniPhier SoCs. > > + > > +maintainers: > > + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > > + > > +allOf: > > + - $ref: "dma-controller.yaml#" > > + > > +properties: > > + compatible: > > + items: > > + - const: socionext,uniphier-xdmac > > You can drop 'items' for a single item. I see. I found some documents didn't have expression for a compatible string. > > + > > + reg: > > + minItems: 1 > > + maxItems: 2 > > You need to say what each entry is: > > items: > - description: ... > - description: ... Surely there must be descriotions here. > > + > > + interrupts: > > + maxItems: 1 > > + > > + "#dma-cells": > > + const: 2 > > + description: | > > + DMA request from clients consists of 2 cells: > > + 1. Channel index > > + 2. Transfer request factor number, If no transfer factor, use 0. > > + The number is SoC-specific, and this should be specified with > > + relation to the device to use the DMA controller. > > + > > +required: > > + - compatible > > + - reg > > + - interrupts > > + - "#dma-cells" > > Add: > > additionalProperties: false I'll add it. > > + > > +examples: > > + - | > > + xdmac: dma-controller@5fc10000 { > > + compatible = "socionext,uniphier-xdmac"; > > + reg = <0x5fc10000 0x1000>, <0x5fc20000 0x800>; > > + interrupts = <0 188 4>; > > + #dma-cells = <2>; > > + dma-channels = <16>; > > Not documented. You need at least 'dma-channels: true' to indicate > you're using this. But you should be able to have some constraints such > as 'maximum: 16'. I forgot to document 'dma-channels'. I'll add it. Thank you, --- Best Regards, Kunihiko Hayashi
diff --git a/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml b/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml new file mode 100644 index 00000000..32abf18 --- /dev/null +++ b/Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml @@ -0,0 +1,57 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/dma/socionext,uniphier-xdmac.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Socionext UniPhier external DMA controller + +description: | + This describes the devicetree bindings for an external DMA engine to perform + memory-to-memory or peripheral-to-memory data transfer capable of supporting + 16 channels, implemented in Socionext UniPhier SoCs. + +maintainers: + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> + +allOf: + - $ref: "dma-controller.yaml#" + +properties: + compatible: + items: + - const: socionext,uniphier-xdmac + + reg: + minItems: 1 + maxItems: 2 + + interrupts: + maxItems: 1 + + "#dma-cells": + const: 2 + description: | + DMA request from clients consists of 2 cells: + 1. Channel index + 2. Transfer request factor number, If no transfer factor, use 0. + The number is SoC-specific, and this should be specified with + relation to the device to use the DMA controller. + +required: + - compatible + - reg + - interrupts + - "#dma-cells" + +examples: + - | + xdmac: dma-controller@5fc10000 { + compatible = "socionext,uniphier-xdmac"; + reg = <0x5fc10000 0x1000>, <0x5fc20000 0x800>; + interrupts = <0 188 4>; + #dma-cells = <2>; + dma-channels = <16>; + }; + +...
Add devicetree binding documentation for external DMA controller implemented on Socionext UniPhier SoCs. Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> --- .../bindings/dma/socionext,uniphier-xdmac.yaml | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 Documentation/devicetree/bindings/dma/socionext,uniphier-xdmac.yaml