Message ID | 20241219102415.1208328-4-larisa.grigore@oss.nxp.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Add eDMAv3 support for S32G2/S32G3 SoCs | expand |
On Thu, Dec 19, 2024 at 12:24:12PM +0200, Larisa Grigore wrote: > Introduce the compatible strings 'nxp,s32g2-edma' and 'nxp,s32g3-edma' to > enable the support for the eDMAv3 present on S32G2/S32G3 platforms. > > The S32G2/S32G3 eDMA architecture features 32 DMA channels. Each of the > two eDMA instances is integrated with two DMAMUX blocks. > > Another particularity of these SoCs is that the interrupts are shared > between channels in the following way: > - DMA Channels 0-15 share the 'tx-0-15' interrupt > - DMA Channels 16-31 share the 'tx-16-31' interrupt > - all channels share the 'err' interrupt > > Signed-off-by: Larisa Grigore <larisa.grigore@oss.nxp.com> > Reviewed-by: Frank Li <Frank.Li@nxp.com> > --- > .../devicetree/bindings/dma/fsl,edma.yaml | 34 +++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/Documentation/devicetree/bindings/dma/fsl,edma.yaml b/Documentation/devicetree/bindings/dma/fsl,edma.yaml > index d54140f18d34..4f925469533e 100644 > --- a/Documentation/devicetree/bindings/dma/fsl,edma.yaml > +++ b/Documentation/devicetree/bindings/dma/fsl,edma.yaml > @@ -26,9 +26,13 @@ properties: > - fsl,imx93-edma3 > - fsl,imx93-edma4 > - fsl,imx95-edma5 > + - nxp,s32g2-edma > - items: > - const: fsl,ls1028a-edma > - const: fsl,vf610-edma > + - items: > + - const: nxp,s32g3-edma > + - const: nxp,s32g2-edma > > reg: > minItems: 1 > @@ -221,6 +225,36 @@ allOf: > properties: > power-domains: false > > + - if: > + properties: > + compatible: > + contains: > + const: nxp,s32g2-edma Your property ordering below is a bit odd, but it matches what exists currently so Acked-by: Conor Dooley <conor.dooley@microchip.com> Cheers, Conor. > + then: > + properties: > + clocks: > + minItems: 2 > + maxItems: 2 > + clock-names: > + items: > + - const: dmamux0 > + - const: dmamux1 > + interrupts: > + minItems: 3 > + maxItems: 3 > + interrupt-names: > + items: > + - const: tx-0-15 > + - const: tx-16-31 > + - const: err > + reg: > + minItems: 3 > + maxItems: 3 > + "#dma-cells": > + const: 2 > + dma-channels: > + const: 32 > + > unevaluatedProperties: false > > examples: > -- > 2.47.0 >
diff --git a/Documentation/devicetree/bindings/dma/fsl,edma.yaml b/Documentation/devicetree/bindings/dma/fsl,edma.yaml index d54140f18d34..4f925469533e 100644 --- a/Documentation/devicetree/bindings/dma/fsl,edma.yaml +++ b/Documentation/devicetree/bindings/dma/fsl,edma.yaml @@ -26,9 +26,13 @@ properties: - fsl,imx93-edma3 - fsl,imx93-edma4 - fsl,imx95-edma5 + - nxp,s32g2-edma - items: - const: fsl,ls1028a-edma - const: fsl,vf610-edma + - items: + - const: nxp,s32g3-edma + - const: nxp,s32g2-edma reg: minItems: 1 @@ -221,6 +225,36 @@ allOf: properties: power-domains: false + - if: + properties: + compatible: + contains: + const: nxp,s32g2-edma + then: + properties: + clocks: + minItems: 2 + maxItems: 2 + clock-names: + items: + - const: dmamux0 + - const: dmamux1 + interrupts: + minItems: 3 + maxItems: 3 + interrupt-names: + items: + - const: tx-0-15 + - const: tx-16-31 + - const: err + reg: + minItems: 3 + maxItems: 3 + "#dma-cells": + const: 2 + dma-channels: + const: 32 + unevaluatedProperties: false examples: