From: Guodong Xu <guodong@riscstar.com>
To: vkoul@kernel.org, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, dlan@gentoo.org, paul.walmsley@sifive.com,
palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr,
p.zabel@pengutronix.de, drew@pdp7.com,
emil.renner.berthing@canonical.com, inochiama@gmail.com,
geert+renesas@glider.be, tglx@linutronix.de,
hal.feng@starfivetech.com, joel@jms.id.au,
duje.mihanovic@skole.hr
Cc: guodong@riscstar.com, elder@riscstar.com,
dmaengine@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org,
spacemit@lists.linux.dev
Subject: [PATCH 0/8] dma: mmp_pdma: Add SpacemiT K1 SoC support with 64-bit addressing
Date: Wed, 11 Jun 2025 20:57:15 +0800 [thread overview]
Message-ID: <20250611125723.181711-1-guodong@riscstar.com> (raw)
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
next reply other threads:[~2025-06-11 12:59 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-11 12:57 Guodong Xu [this message]
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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250611125723.181711-1-guodong@riscstar.com \
--to=guodong@riscstar.com \
--cc=alex@ghiti.fr \
--cc=aou@eecs.berkeley.edu \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlan@gentoo.org \
--cc=dmaengine@vger.kernel.org \
--cc=drew@pdp7.com \
--cc=duje.mihanovic@skole.hr \
--cc=elder@riscstar.com \
--cc=emil.renner.berthing@canonical.com \
--cc=geert+renesas@glider.be \
--cc=hal.feng@starfivetech.com \
--cc=inochiama@gmail.com \
--cc=joel@jms.id.au \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=p.zabel@pengutronix.de \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=robh@kernel.org \
--cc=spacemit@lists.linux.dev \
--cc=tglx@linutronix.de \
--cc=vkoul@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox