2023-04-15 10:08:17

by Jisheng Zhang

[permalink] [raw]
Subject: [PATCH v2 0/5] dma: don't set chancnt

I'm patching dw-axi-dmac to add more features, but I found a small
clean up point and some drivers in drivers/dma/ have the same issue,
so this series comes.

The dma framework will calculate the dma channels chancnt, setting it
is wrong.

NOTE: I leave drivers/dma/ioat/ as is, because its logic have a
heavy dependency on chancnt usage, however it's still doable.

Since v1:
- collet Acked-by tag
- fix typo

Jisheng Zhang (5):
dmaengine: dw-axi-dmac: Don't set chancnt
dmaengine: axi-dmac: Don't set chancnt
dmaengine: plx_dma: Don't set chancnt
dmaengine: hidma: Don't set chancnt
dmaengine: sprd: Don't set chancnt

drivers/dma/dma-axi-dmac.c | 1 -
drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c | 1 -
drivers/dma/plx_dma.c | 1 -
drivers/dma/qcom/hidma.c | 1 -
drivers/dma/sprd-dma.c | 1 -
5 files changed, 5 deletions(-)

--
2.39.2


2023-04-15 10:08:29

by Jisheng Zhang

[permalink] [raw]
Subject: [PATCH v2 4/5] dmaengine: hidma: Don't set chancnt

The dma framework will calculate the dma channels chancnt, setting it
ourself is wrong.

Signed-off-by: Jisheng Zhang <[email protected]>
---
drivers/dma/qcom/hidma.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/dma/qcom/hidma.c b/drivers/dma/qcom/hidma.c
index 04d1c33afc12..344525c3a32f 100644
--- a/drivers/dma/qcom/hidma.c
+++ b/drivers/dma/qcom/hidma.c
@@ -214,7 +214,6 @@ static int hidma_chan_init(struct hidma_dev *dmadev, u32 dma_sig)

spin_lock_init(&mchan->lock);
list_add_tail(&mchan->chan.device_node, &ddev->channels);
- dmadev->ddev.chancnt++;
return 0;
}

--
2.39.2