devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] dma: mmp_pdma: Add SpacemiT K1 SoC support with 64-bit addressing
@ 2025-06-11 12:57 Guodong Xu
  2025-06-11 12:57 ` [PATCH 1/8] dt-bindings: dma: marvell,mmp-dma: Add SpacemiT PDMA compatibility Guodong Xu
                   ` (7 more replies)
  0 siblings, 8 replies; 30+ messages in thread
From: Guodong Xu @ 2025-06-11 12:57 UTC (permalink / raw)
  To: vkoul, robh, krzk+dt, conor+dt, dlan, paul.walmsley, palmer, aou,
	alex, p.zabel, drew, emil.renner.berthing, inochiama,
	geert+renesas, tglx, hal.feng, joel, duje.mihanovic
  Cc: guodong, elder, dmaengine, devicetree, linux-kernel, linux-riscv,
	spacemit

This series extends the existing MMP PDMA driver to support SpacemiT PDMA
controllers with 64-bit addressing capabilities, as used in the K1 SoC.

The SpacemiT K1 SoC contains a PDMA controller that is largely compatible
with the existing Marvell MMP PDMA, but adds support for 64-bit physical
addressing through Long Physical Address Extension (LPAE) mode. This
requires programming additional high address registers (DDADRH, DSADRH,
DTADRH) and enabling the DCSR_LPAEEN control bit.

The implementation maintains full backward compatibility with existing
32-bit Marvell platforms while adding the necessary infrastructure for
64-bit address handling through a flexible configuration-based approach.

Key features added:
- 64-bit DMA address support via LPAE mode
- Platform-specific operation abstractions (mmp_pdma_ops)
- Optional clock and reset controller support for modern SoCs
- Device tree integration for SpacemiT K1 SoC and Banana Pi F3 board

Testing:
This patchset has been tested on SpacemiT K1-based Banana Pi F3 hardware
to ensure the PDMA controller operates correctly with 64-bit addressing.
Existing functionality on 32-bit platforms remains unchanged.

This patchset is based on [spacemit/for-next]
  base: https://github.com/spacemit-com/linux for-next
Plus the reset controller driver, posted by Alex Elder (v10):
https://lore.kernel.org/all/20250513215345.3631593-1-elder@riscstar.com/

Guodong Xu (8):
  dt-bindings: dma: marvell,mmp-dma: Add SpacemiT PDMA compatibility
  dma: mmp_pdma: Add optional clock support
  dma: mmp_pdma: Add optional reset controller support
  dma: mmp_pdma: Add SpacemiT PDMA support with 64-bit addressing
  riscv: dts: spacemit: Add dma bus and PDMA node for K1 SoC
  riscv: dts: spacemit: Enable PDMA0 controller on Banana Pi F3
  dma: Kconfig: MMP_PDMA: Add support for ARCH_SPACEMIT
  riscv: defconfig: Enable MMP_PDMA support for SpacemiT K1 SoC

 .../bindings/dma/marvell,mmp-dma.yaml         |  17 ++
 .../boot/dts/spacemit/k1-bananapi-f3.dts      |   4 +
 arch/riscv/boot/dts/spacemit/k1.dtsi          | 234 ++++++++--------
 arch/riscv/configs/defconfig                  |   3 +-
 drivers/dma/Kconfig                           |   2 +-
 drivers/dma/mmp_pdma.c                        | 249 +++++++++++++++---
 6 files changed, 370 insertions(+), 139 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2025-06-19  2:38 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-11 12:57 [PATCH 0/8] dma: mmp_pdma: Add SpacemiT K1 SoC support with 64-bit addressing Guodong Xu
2025-06-11 12:57 ` [PATCH 1/8] dt-bindings: dma: marvell,mmp-dma: Add SpacemiT PDMA compatibility Guodong Xu
2025-06-11 16:27   ` Conor Dooley
2025-06-12  0:03     ` Yixun Lan
2025-06-12  1:48       ` Guodong Xu
2025-06-12  1:44     ` Guodong Xu
2025-06-11 12:57 ` [PATCH 2/8] dma: mmp_pdma: Add optional clock support Guodong Xu
2025-06-17  6:00   ` Vinod Koul
2025-06-19  2:29     ` Guodong Xu
2025-06-11 12:57 ` [PATCH 3/8] dma: mmp_pdma: Add optional reset controller support Guodong Xu
2025-06-11 12:57 ` [PATCH 4/8] dma: mmp_pdma: Add SpacemiT PDMA support with 64-bit addressing Guodong Xu
2025-06-17  6:02   ` Vinod Koul
2025-06-19  2:37     ` Guodong Xu
2025-06-11 12:57 ` [PATCH 5/8] riscv: dts: spacemit: Add dma bus and PDMA node for K1 SoC Guodong Xu
2025-06-13  3:06   ` Vivian Wang
2025-06-13 13:22     ` Yixun Lan
2025-06-14  3:33       ` Guodong Xu
2025-06-13 14:15     ` Ze Huang
2025-06-14  2:53     ` Guodong Xu
2025-06-14  8:37       ` Vivian Wang
2025-06-11 12:57 ` [PATCH 6/8] riscv: dts: spacemit: Enable PDMA0 controller on Banana Pi F3 Guodong Xu
2025-06-11 13:57   ` Yixun Lan
2025-06-11 14:32     ` Guodong Xu
2025-06-11 15:02       ` Yixun Lan
2025-06-12  8:00         ` Guodong Xu
2025-06-11 12:57 ` [PATCH 7/8] dma: Kconfig: MMP_PDMA: Add support for ARCH_SPACEMIT Guodong Xu
2025-06-11 13:51   ` Yixun Lan
2025-06-11 14:40     ` Guodong Xu
2025-06-11 12:57 ` [PATCH 8/8] riscv: defconfig: Enable MMP_PDMA support for SpacemiT K1 SoC Guodong Xu
2025-06-11 13:48   ` Yixun Lan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).