[PATCH v4 0/2] Add DMA ACK signal routing for RZ/V2H family

John Madieu posted 2 patches 2 weeks ago
drivers/dma/sh/rz-dmac.c                  | 69 +++++++++++++++++++++++
drivers/irqchip/irq-renesas-rzv2h.c       | 40 +++++++++++++
include/linux/irqchip/irq-renesas-rzv2h.h |  5 ++
3 files changed, 114 insertions(+)
[PATCH v4 0/2] Add DMA ACK signal routing for RZ/V2H family
Posted by John Madieu 2 weeks ago
Some peripherals on RZ/V2H, RZ/V2N, and RZ/G3E SoCs require explicit
DMA ACK signal routing through the ICU for level-based DMA handshaking.

Rather than encoding the ACK signal number as a second DMA specifier
cell, derive it in-driver from the MID/RID request number using
arithmetic formulas based on ICU Table 4.6-28 (3 linear peripheral
groups). It must also be noted that DMA ack register is located in
the ICU block


This series adds:
  - ICU driver extension to register/deregister DMA ACK signals
    (DMA ACK register is located in the ICU block)
  - rz-dmac driver support for ACK signal routing via MID/RID lookup,
    including restore on system resume

Note: patch 2/2 depends on [1], Claudiu Beznea's rz-dmac series, which
this revision is rebased on top of.

Changes:

v4:
 - Rebased on top of Claudiu Beznea's updated rz-dmac series [1],
   which is now the dependency for patch 2/2 (v3 depended on the
   earlier posting of the same series).
 - patch 2/2: in the rebased base, rz_dmac_resume() already
   re-programs the DMA request routing, so the patch now adds only
   the rz_dmac_set_dma_ack_no() call in rz_dmac_resume() to restore
   the ACK routing on resume. v3 added both the request and the ACK
   call there. No other code changes.
 - patch 1/2: unchanged.
 - Link to v3 at [3].

v3:
 - Splitout from v2 [2] into DMA-specific series 
 - No code change

v2:
 - Drop DMA ACK second cell from DT specifier
 - Derive ACK signal number in-driver from MID/RID using arithmetic
   formulas per ICU Table 4.6-28 (3 linear peripheral groups)

[1] https://lore.kernel.org/all/20260512121219.216159-1-claudiu.beznea.uj@bp.renesas.com/
[2] https://lore.kernel.org/all/20260402090524.9137-1-john.madieu.xa@bp.renesas.com/
[3] https://lore.kernel.org/all/20260402162212.12016-1-john.madieu.xa@bp.renesas.com/

John Madieu (2):
  irqchip/renesas-rzv2h: Add DMA ACK signal routing support
  dma: sh: rz-dmac: Add DMA ACK signal routing support

 drivers/dma/sh/rz-dmac.c                  | 69 +++++++++++++++++++++++
 drivers/irqchip/irq-renesas-rzv2h.c       | 40 +++++++++++++
 include/linux/irqchip/irq-renesas-rzv2h.h |  5 ++
 3 files changed, 114 insertions(+)


base-commit: 0337d5cbd9d27c9a0b418aa7da92ae20e59fcc7e
-- 
2.25.1
Re: [PATCH v4 0/2] Add DMA ACK signal routing for RZ/V2H family
Posted by Vinod Koul 10 hours ago
On Mon, 25 May 2026 11:07:48 +0000, John Madieu wrote:
> Some peripherals on RZ/V2H, RZ/V2N, and RZ/G3E SoCs require explicit
> DMA ACK signal routing through the ICU for level-based DMA handshaking.
> 
> Rather than encoding the ACK signal number as a second DMA specifier
> cell, derive it in-driver from the MID/RID request number using
> arithmetic formulas based on ICU Table 4.6-28 (3 linear peripheral
> groups). It must also be noted that DMA ack register is located in
> the ICU block
> 
> [...]

Applied, thanks!

[1/2] irqchip/renesas-rzv2h: Add DMA ACK signal routing support
      commit: 5d596b9139f59ce412f41283baadaf809936eaf4
[2/2] dma: sh: rz-dmac: Add DMA ACK signal routing support
      commit: c0a207898fca8cbb4fad0da1e950d477b6afbf64

Best regards,
-- 
~Vinod