]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
dmaengine: mmp_pdma: Add operations structure for controller abstraction
authorGuodong Xu <guodong@riscstar.com>
Fri, 22 Aug 2025 03:06:30 +0000 (11:06 +0800)
committerVinod Koul <vkoul@kernel.org>
Tue, 2 Sep 2025 07:07:42 +0000 (12:37 +0530)
commit35e40bf761fcb24b1355d6a8d48b5b10683fe1a3
tree28047b4ed097da4ea386608483c9b1e5d378fa92
parentfc72462bc6107b8babda05cad5bf8f7daf8bec20
dmaengine: mmp_pdma: Add operations structure for controller abstraction

Introduce mmp_pdma_ops structure to abstract 32-bit addressing operations
and enable support for different controller variants. This prepares for
adding 64-bit addressing support.

The ops structure includes:
- Hardware register operations (read/write DDADR, DSADR, DTADR)
- Descriptor memory operations (manipulate descriptor structs)
- Controller configuration (run bits, DMA mask)

Convert existing 32-bit operations to use the new abstraction layer
while maintaining backward compatibility.

Cc: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Guodong Xu <guodong@riscstar.com>
Link: https://lore.kernel.org/r/20250822-working_dma_0701_v2-v5-4-f5c0eda734cc@riscstar.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/mmp_pdma.c