[PATCH v3 4/8] dmaengine: mmp_pdma: Add operations structure for controller abstraction

Guodong Xu guodong at riscstar.com
Tue Aug 12 02:23:02 PDT 2025


Hi, Vinod

Just a gentle reminder on this patch series. I've incorporated your
feedback from v1 by splitting the work into two independent patches:
 - this patch: [PATCH v3 4/8] dmaengine: mmp_pdma: Add operations structure
                              for controller abstraction
 - next patch: [PATCH v3 5/8] dmaengine: mmp_pdma: Add SpacemiT K1 PDMA
                              support with 64-bit addressing

Could you please take another look when you have a moment?

Thank you very much.

BR,
Guodong Xu

On Mon, Jul 14, 2025 at 5:40 PM Guodong Xu <guodong at riscstar.com> wrote:
>
> 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.
>
> Signed-off-by: Guodong Xu <guodong at riscstar.com>
> ---
> v3: No change.
> v2: New patch, introduce mmp_pdma_ops for 32-bit addressing operations.
> ---
>  drivers/dma/mmp_pdma.c | 187 +++++++++++++++++++++++++++++++++++++++++--------
>  1 file changed, 156 insertions(+), 31 deletions(-)
>



More information about the linux-riscv mailing list