Commit b092529e authored by Peng Ma's avatar Peng Ma Committed by Vinod Koul
Browse files

dmaengine: fsl-qdma: Add qDMA controller driver for Layerscape SoCs



NXP Queue DMA controller(qDMA) on Layerscape SoCs supports channel
virtuallization by allowing DMA jobs to be enqueued into different
command queues.

Signed-off-by: default avatarWen He <wen.he_1@nxp.com>
Signed-off-by: default avatarJiaheng Fan <jiaheng.fan@nxp.com>
Signed-off-by: default avatarPeng Ma <peng.ma@nxp.com>
Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
parent a1ff82a9
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -218,6 +218,20 @@ config FSL_EDMA
	  multiplexing capability for DMA request sources(slot).
	  This module can be found on Freescale Vybrid and LS-1 SoCs.

config FSL_QDMA
       tristate "NXP Layerscape qDMA engine support"
       depends on ARM || ARM64
       select DMA_ENGINE
       select DMA_VIRTUAL_CHANNELS
       select DMA_ENGINE_RAID
       select ASYNC_TX_ENABLE_CHANNEL_SWITCH
       help
         Support the NXP Layerscape qDMA engine with command queue and legacy mode.
         Channel virtualization is supported through enqueuing of DMA jobs to,
         or dequeuing DMA jobs from, different work queues.
         This module can be found on NXP Layerscape SoCs.
	  The qdma driver only work on  SoCs with a DPAA hardware block.

config FSL_RAID
        tristate "Freescale RAID engine Support"
        depends on FSL_SOC && !ASYNC_TX_ENABLE_CHANNEL_SWITCH
+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ obj-$(CONFIG_EP93XX_DMA) += ep93xx_dma.o
obj-$(CONFIG_FSL_DMA) += fsldma.o
obj-$(CONFIG_FSL_EDMA) += fsl-edma.o fsl-edma-common.o
obj-$(CONFIG_MCF_EDMA) += mcf-edma.o fsl-edma-common.o
obj-$(CONFIG_FSL_QDMA) += fsl-qdma.o
obj-$(CONFIG_FSL_RAID) += fsl_raid.o
obj-$(CONFIG_HSU_DMA) += hsu/
obj-$(CONFIG_IMG_MDC_DMA) += img-mdc-dma.o

drivers/dma/fsl-qdma.c

0 → 100644
+1258 −0

File added.

Preview size limit exceeded, changes collapsed.