[PATCH 00/22] ASoC: rsnd: Add audio support for the Renesas RZ/G3E SoC

John Madieu posted 22 patches 2 weeks, 3 days ago
There is a newer version of this series
.../bindings/clock/renesas,rzv2h-cpg.yaml     |  10 +
.../bindings/dma/renesas,rz-dmac.yaml         |  28 +-
.../bindings/sound/renesas,rsnd.yaml          | 169 +++++-
arch/arm64/boot/dts/renesas/r9a09g047.dtsi    | 543 +++++++++++++++++-
.../boot/dts/renesas/r9a09g047e57-smarc.dts   | 114 ++++
arch/arm64/boot/dts/renesas/r9a09g056.dtsi    |  27 +-
arch/arm64/boot/dts/renesas/r9a09g057.dtsi    |  27 +-
.../boot/dts/renesas/rzg3e-smarc-som.dtsi     |  44 ++
drivers/clk/renesas/r9a09g047-cpg.c           | 130 ++++-
drivers/dma/sh/rz-dmac.c                      |  40 +-
drivers/irqchip/irq-renesas-rzv2h.c           |  36 ++
include/linux/irqchip/irq-renesas-rzv2h.h     |   5 +
sound/soc/renesas/rcar/adg.c                  | 117 +++-
sound/soc/renesas/rcar/cmd.c                  |   2 +-
sound/soc/renesas/rcar/core.c                 | 128 ++++-
sound/soc/renesas/rcar/ctu.c                  |   2 +-
sound/soc/renesas/rcar/dma.c                  | 173 ++++--
sound/soc/renesas/rcar/dvc.c                  |   2 +-
sound/soc/renesas/rcar/gen.c                  | 184 ++++++
sound/soc/renesas/rcar/mix.c                  |   2 +-
sound/soc/renesas/rcar/rsnd.h                 |  39 ++
sound/soc/renesas/rcar/src.c                  |  45 +-
sound/soc/renesas/rcar/ssi.c                  |  40 +-
sound/soc/renesas/rcar/ssiu.c                 |  49 +-
24 files changed, 1855 insertions(+), 101 deletions(-)
[PATCH 00/22] ASoC: rsnd: Add audio support for the Renesas RZ/G3E SoC
Posted by John Madieu 2 weeks, 3 days ago
This series adds audio support for the Renesas RZ/G3E SoC and enables
it on the SMARC EVK board with the Dialog DA7212 codec.

The RZ/G3E audio subsystem is based on R-Car Sound IP but has several
differences requiring dedicated handling:
  - SSI operates exclusively in BUSIF mode (no PIO)
  - 2 BUSIF channels per SSI instead of 4/8 on R-Car
  - Different register offsets for SCU, ADG, SSIU, and SSI
  - Per-SSI ADG and SSIF supply clocks
  - DMA ACK signal routing through ICU

This series includes:
  - Clock driver support for audio clocks and resets
  - DT bindings update for DMA ACK signal field
  - IRQ chip extension for DMA ACK signal routing
  - RZ-DMAC driver updates for ACK signal support
  - R-Car Sound driver updates for RZ/G3E support
  - System suspend/resume support
  - Device tree nodes for RZ/G3E SMARC EVK

Note: patch 06/22 depends on [1]. As this patch will propably be routed
through the DMA tree independently, the rest of the series can be reviewed
and the remaining patches applied without this dependency being resolved
first.

Audio configuration on SMARC EVK:
  - Codec: Dialog DA7212 on I2C1
  - Playback: SSI3 -> SRC1 -> DVC1
  - Capture: SSI4 -> SRC0 -> DVC0
  - MCLK: 12.288MHz from Versa3 clock generator
  - Format: I2S, RZ/G3E Sound as clock master
  - SSI4 shares clock pins with SSI3 (shared-pin)

Tested on RZ/G3E SMARC EVK with:
  - Playback to headphone output
  - Capture from line-in (AUX) input and/or Mic
  - Full duplex operation
  - System suspend/resume

[1] https://lore.kernel.org/all/20260126103155.2644586-1-claudiu.beznea.uj@bp.renesas.com/

John Madieu (22):
  dt-bindings: clock: renesas: Add audio clock inputs for RZ/V2H family
  arm64: dts: renesas: rzv2h: Add audio clock inputs
  clk: renesas: r9a09g047: Add audio clock and reset support
  dt-bindings: dma: renesas,rz-dmac: Document optional DMA ACK cell
  irqchip/renesas-rzv2h: Add DMA ACK signal routing support
  dma: sh: rz-dmac: Add DMA ACK signal routing support
  ASoC: dt-bindings: renesas,rsnd: Add RZ/G3E support
  ASoC: rsnd: Add reset controller support to rsnd_mod
  ASoC: rsnd: Add RZ/G3E SoC probing and register map
  ASoC: rsnd: Add DMA support infrastructure for RZ/G3E
  ASoC: rsnd: ssui: Add RZ/G3E SSIU BUSIF support
  ASoC: rsnd: Update SSI for RZ/G3E support
  ASoC: rsnd: Add ADG reset support for RZ/G3E
  ASoC: rsnd: adg: Add per-SSI ADG and SSIF supply clock management
  ASoC: rsnd: src: Add SRC reset and clock support for RZ/G3E
  ASoC: rsnd: Export module getters for PM support
  ASoC: rsnd: Add system suspend/resume support
  arm64: dts: renesas: r9a09g047: Add R-Car Sound support
  arm64: dts: renesas: rzg3e-smarc-som: Add Versa3 clock generator
  arm64: dts: renesas: rzg3e-smarc-som: Add I2C1 support
  arm64: dts: renesas: rzg3e-smarc-som: add audio pinmux definitions
  arm64: dts: renesas: r9a09g047e57-smarc: add DA7212 audio codec
    support

 .../bindings/clock/renesas,rzv2h-cpg.yaml     |  10 +
 .../bindings/dma/renesas,rz-dmac.yaml         |  28 +-
 .../bindings/sound/renesas,rsnd.yaml          | 169 +++++-
 arch/arm64/boot/dts/renesas/r9a09g047.dtsi    | 543 +++++++++++++++++-
 .../boot/dts/renesas/r9a09g047e57-smarc.dts   | 114 ++++
 arch/arm64/boot/dts/renesas/r9a09g056.dtsi    |  27 +-
 arch/arm64/boot/dts/renesas/r9a09g057.dtsi    |  27 +-
 .../boot/dts/renesas/rzg3e-smarc-som.dtsi     |  44 ++
 drivers/clk/renesas/r9a09g047-cpg.c           | 130 ++++-
 drivers/dma/sh/rz-dmac.c                      |  40 +-
 drivers/irqchip/irq-renesas-rzv2h.c           |  36 ++
 include/linux/irqchip/irq-renesas-rzv2h.h     |   5 +
 sound/soc/renesas/rcar/adg.c                  | 117 +++-
 sound/soc/renesas/rcar/cmd.c                  |   2 +-
 sound/soc/renesas/rcar/core.c                 | 128 ++++-
 sound/soc/renesas/rcar/ctu.c                  |   2 +-
 sound/soc/renesas/rcar/dma.c                  | 173 ++++--
 sound/soc/renesas/rcar/dvc.c                  |   2 +-
 sound/soc/renesas/rcar/gen.c                  | 184 ++++++
 sound/soc/renesas/rcar/mix.c                  |   2 +-
 sound/soc/renesas/rcar/rsnd.h                 |  39 ++
 sound/soc/renesas/rcar/src.c                  |  45 +-
 sound/soc/renesas/rcar/ssi.c                  |  40 +-
 sound/soc/renesas/rcar/ssiu.c                 |  49 +-
 24 files changed, 1855 insertions(+), 101 deletions(-)

-- 
2.25.1
Re: [PATCH 00/22] ASoC: rsnd: Add audio support for the Renesas RZ/G3E SoC
Posted by Mark Brown 2 weeks, 3 days ago
On Thu, Mar 19, 2026 at 04:53:12PM +0100, John Madieu wrote:

> This series includes:
>   - Clock driver support for audio clocks and resets
>   - DT bindings update for DMA ACK signal field
>   - IRQ chip extension for DMA ACK signal routing
>   - RZ-DMAC driver updates for ACK signal support
>   - R-Car Sound driver updates for RZ/G3E support
>   - System suspend/resume support
>   - Device tree nodes for RZ/G3E SMARC EVK

Are there any non-runtime dependencies between the various patches here?
It's a fairly large series touching multiple subsystems, we'll need to
work out how it gets merged.  It looks to be mainly ASoC but perhaps the
other subsystem changes are independent and can just go via their tree?