aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShengjiu Wang <[email protected]>2024-03-29 10:34:42 -0400
committerVinod Koul <[email protected]>2024-04-07 16:49:25 +0530
commit288109387becd8abadca5c063c70a07ae0dd7716 (patch)
tree8dea706f4bb9961df28af21dca239f9f3280ad77
parent802ef223101fec83d92e045f89000b228904a580 (diff)
dmaengine: imx-sdma: Support 24bit/3bytes for sg mode
Update 3bytes buswidth that is supported by sdma. Signed-off-by: Shengjiu Wang <[email protected]> Signed-off-by: Vipul Kumar <[email protected]> Signed-off-by: Srikanth Krishnakar <[email protected]> Acked-by: Robin Gong <[email protected]> Reviewed-by: Joy Zou <[email protected]> Reviewed-by: Daniel Baluta <[email protected]> Signed-off-by: Frank Li <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]>
-rw-r--r--drivers/dma/imx-sdma.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c
index 4f1a9d1b152d..6be4c1e44126 100644
--- a/drivers/dma/imx-sdma.c
+++ b/drivers/dma/imx-sdma.c
@@ -176,6 +176,7 @@
#define SDMA_DMA_BUSWIDTHS (BIT(DMA_SLAVE_BUSWIDTH_1_BYTE) | \
BIT(DMA_SLAVE_BUSWIDTH_2_BYTES) | \
+ BIT(DMA_SLAVE_BUSWIDTH_3_BYTES) | \
BIT(DMA_SLAVE_BUSWIDTH_4_BYTES))
#define SDMA_DMA_DIRECTIONS (BIT(DMA_DEV_TO_MEM) | \
@@ -1658,6 +1659,9 @@ static struct dma_async_tx_descriptor *sdma_prep_slave_sg(
if (count & 3 || sg->dma_address & 3)
goto err_bd_out;
break;
+ case DMA_SLAVE_BUSWIDTH_3_BYTES:
+ bd->mode.command = 3;
+ break;
case DMA_SLAVE_BUSWIDTH_2_BYTES:
bd->mode.command = 2;
if (count & 1 || sg->dma_address & 1)