[PATCH] dmaengine: imx-sdma: Set DMA channel to be private
Kai-Heng Feng
kai.heng.feng at canonical.com
Mon Feb 6 20:57:45 PST 2023
If async-tx is loaded before device drivers that requires imx-sdma, the
dmaengine_get() routine from async-tx grabs all non-private channels,
so devices that require DMA fail to work.
So mark imx-sdma with DMA_PRIVATE to avoid such situation.
Signed-off-by: Kai-Heng Feng <kai.heng.feng at canonical.com>
---
drivers/dma/imx-sdma.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
index b926abe4fa43a..b86cdab5c2683 100644
--- a/drivers/dma/imx-sdma.c
+++ b/drivers/dma/imx-sdma.c
@@ -2234,6 +2234,7 @@ static int sdma_probe(struct platform_device *pdev)
dma_cap_set(DMA_SLAVE, sdma->dma_device.cap_mask);
dma_cap_set(DMA_CYCLIC, sdma->dma_device.cap_mask);
dma_cap_set(DMA_MEMCPY, sdma->dma_device.cap_mask);
+ dma_cap_set(DMA_PRIVATE, sdma->dma_device.cap_mask);
INIT_LIST_HEAD(&sdma->dma_device.channels);
/* Initialize channel parameters */
--
2.34.1
More information about the linux-arm-kernel
mailing list