Add eDMAv3 support for S32G2/S32G3 SoCs
From: | Larisa Grigore <larisa.grigore-AT-oss.nxp.com> | |
To: | Frank Li <Frank.Li-AT-nxp.com>, Vinod Koul <vkoul-AT-kernel.org>, Rob Herring <robh-AT-kernel.org>, Krzysztof Kozlowski <krzk+dt-AT-kernel.org>, Conor Dooley <conor+dt-AT-kernel.org>, Peng Fan <peng.fan-AT-nxp.com> | |
Subject: | [PATCH v2 0/6] Add eDMAv3 support for S32G2/S32G3 SoCs | |
Date: | Thu, 19 Dec 2024 11:18:40 +0200 | |
Message-ID: | <20241219092045.1161182-1-larisa.grigore@oss.nxp.com> | |
Cc: | imx-AT-lists.linux.dev, dmaengine-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, s32-AT-nxp.com, Christophe Lizzi <clizzi-AT-redhat.com>, Alberto Ruiz <aruizrui-AT-redhat.com>, Enric Balletbo <eballetb-AT-redhat.com>, Larisa Grigore <larisa.grigore-AT-oss.nxp.com> | |
Archive-link: | Article |
S32G2 and S32G3 SoCs share the eDMAv3 module with i.MX SoCs, with some hardware integration particularities. S32G2/S32G3 includes two system eDMA instances based on v3 version, each of them integrated with 2 DMAMUX blocks. Another particularity of these SoCs is that the interrupts are shared between channels as follows: - 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 Larisa Grigore (6): dmaengine: fsl-edma: select of_dma_xlate based on the dmamuxs presence dmaengine: fsl-edma: remove FSL_EDMA_DRV_SPLIT_REG check when parsing muxbase dt-bindings: dma: fsl-edma: add nxp,s32g2-edma compatible string dmaengine: fsl-edma: add support for S32G based platforms dmaengine: fsl-edma: read/write multiple registers in cyclic transactions upstream: add eDMAv3 support for S32G2/S32G3 SoCs .../devicetree/bindings/dma/fsl,edma.yaml | 34 +++ drivers/dma/fsl-edma-common.c | 36 +++- drivers/dma/fsl-edma-common.h | 3 + drivers/dma/fsl-edma-main.c | 115 +++++++++- outgoing/description | 12 ++ outgoing/v2-0000-cover-letter.patch | 42 ++++ ...-edma-select-of_dma_xlate-based-on-t.patch | 39 ++++ ...-edma-remove-FSL_EDMA_DRV_SPLIT_REG-.patch | 35 +++ ...-edma-move-eDMAv2-related-registers-.patch | 199 +++++++++++++++++ ...-edma-add-eDMAv3-registers-to-edma_r.patch | 104 +++++++++ ...ma-fsl-edma-add-nxp-s32g2-edma-compa.patch | 83 ++++++++ ...-edma-add-support-for-S32G-based-pla.patch | 200 ++++++++++++++++++ ...-edma-wait-until-no-hardware-request.patch | 68 ++++++ ...-edma-read-write-multiple-registers-.patch | 90 ++++++++ 14 files changed, 1045 insertions(+), 15 deletions(-) create mode 100644 outgoing/description create mode 100644 outgoing/v2-0000-cover-letter.patch create mode 100644 outgoing/v2-0001-dmaengine-fsl-edma-select-of_dma_xlate-based-on-t.patch create mode 100644 outgoing/v2-0002-dmaengine-fsl-edma-remove-FSL_EDMA_DRV_SPLIT_REG-.patch create mode 100644 outgoing/v2-0003-dmaengine-fsl-edma-move-eDMAv2-related-registers-.patch create mode 100644 outgoing/v2-0004-dmaengine-fsl-edma-add-eDMAv3-registers-to-edma_r.patch create mode 100644 outgoing/v2-0005-dt-bindings-dma-fsl-edma-add-nxp-s32g2-edma-compa.patch create mode 100644 outgoing/v2-0006-dmaengine-fsl-edma-add-support-for-S32G-based-pla.patch create mode 100644 outgoing/v2-0007-dmaengine-fsl-edma-wait-until-no-hardware-request.patch create mode 100644 outgoing/v2-0008-dmaengine-fsl-edma-read-write-multiple-registers-.patch -- 2.47.0