From: Pratyush Yadav
Date: Wed, 20 May 2026 12:00:10 +0000 (+0530)
Subject: media: ti: j721e-csi2rx: allocate DMA channel based on context index
X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=16fe3fc16e4b30e2f61a8668afde11d8245aae5a;p=thirdparty%2Fkernel%2Flinux.git
media: ti: j721e-csi2rx: allocate DMA channel based on context index
With multiple contexts, there needs to be a different DMA channel for
each context. Earlier, the DMA channel name was hard coded to "rx0" for
the sake of simplicity. Generate the DMA channel name based on its index
and get the channel corresponding to the context.
Signed-off-by: Pratyush Yadav
Signed-off-by: Jai Luthra
Reviewed-by: Jacopo Mondi
Reviewed-by: Laurent Pinchart
Reviewed-by: Yemike Abhilash Chandra
Reviewed-by: Tomi Valkeinen
Signed-off-by: Rishikesh Donadkar
Signed-off-by: Sakari Ailus
---
diff --git a/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c b/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
index 4adfae425f19..c781b312cea8 100644
--- a/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
+++ b/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
@@ -1036,9 +1036,11 @@ static int ti_csi2rx_init_dma(struct ti_csi2rx_ctx *ctx)
struct dma_slave_config cfg = {
.src_addr_width = DMA_SLAVE_BUSWIDTH_16_BYTES,
};
+ char name[5];
int ret;
- ctx->dma.chan = dma_request_chan(ctx->csi->dev, "rx0");
+ snprintf(name, sizeof(name), "rx%u", ctx->idx);
+ ctx->dma.chan = dma_request_chan(ctx->csi->dev, name);
if (IS_ERR(ctx->dma.chan))
return PTR_ERR(ctx->dma.chan);