RE: [PATCH 5/5] arm64: dts: renesas: r9a08g046l48-smarc: Enable audio
From: Biju Das
Date: Wed May 27 2026 - 13:08:41 EST
Hi Geert,
Thanks for the feedback.
> -----Original Message-----
> From: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> Sent: 27 May 2026 17:26
> Subject: Re: [PATCH 5/5] arm64: dts: renesas: r9a08g046l48-smarc: Enable audio
>
> Hi Biju,
>
> On Tue, 5 May 2026 at 14:37, Biju <biju.das.au@xxxxxxxxx> wrote:
> > From: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> >
> > Enable audio on RZ/G3L SMARC EVK by linking SSI0 with DA7212 audio CODEC.
> > The SSI0 signals are multiplexed with SD2 and are selected by a switch
> > SW_SD2_EN#. Add regulator nodes regulator-{1p8v,3p3v} to SoM DTSI for
> > reuse with eMMC.
> >
> > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
>
> Thanks for your patch!
>
> > --- a/arch/arm64/boot/dts/renesas/r9a08g046l48-smarc.dts
> > +++ b/arch/arm64/boot/dts/renesas/r9a08g046l48-smarc.dts
> > @@ -9,6 +9,7 @@
> >
> > /* Switch selection settings */
> > #define RZ_BOOT_MODE3 0
> > +#define SW_SD2_EN 0
> > #define SW_DPI_EN 0
> > #define SW_GPIO4 0
> > #define SW_I3C_EN 0
> > @@ -38,6 +39,32 @@ aliases {
> > i2c3 = &i2c3;
> > serial3 = &scif0;
> > };
> > +
> > +#if !SW_SD2_EN
>
> "&& !SW_I3C_EN"...
OK.
>
> > + snd_rzg3l: sound {
> > + compatible = "simple-audio-card";
> > + simple-audio-card,name = "snd_rzg3l";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + ssi_link_play: simple-audio-card,dai-link@0 {
> > + reg = <0>;
> > + format = "i2s";
> > + bitclock-master = <&cpu_dai>;
> > + frame-master = <&cpu_dai>;
> > + mclk-fs = <256>;
> > +
> > + cpu_dai: cpu {
> > + sound-dai = <&ssi0>;
> > + };
> > +
> > + codec_dai: codec {
> > + sound-dai = <&da7212>;
>
> ... as i2c3 where da7212 resides is protected by !SW_I3C_EN.
>
> > + clocks = <&versa3 1>;
> > + };
> > + };
> > + };
> > +#endif
> > };
> >
> > &i2c2 {
> > @@ -53,6 +80,27 @@ &i2c3 {
> > pinctrl-names = "default";
> >
> > status = "okay";
> > +
> > + da7212: codec@1a {
> > + compatible = "dlg,da7212";
> > + reg = <0x1a>;
> > +
> > + clocks = <&versa3 1>;
> > + clock-names = "mclk";
> > +
> > + #sound-dai-cells = <0>;
> > +
> > + dlg,micbias1-lvl = <2500>;
> > + dlg,micbias2-lvl = <2500>;
> > + dlg,dmic-data-sel = "lrise_rfall";
> > + dlg,dmic-samplephase = "between_clkedge";
> > + dlg,dmic-clkrate = <3000000>;
> > +
> > + VDDA-supply = <®_1p8v>;
> > + VDDSP-supply = <®_3p3v>;
> > + VDDMIC-supply = <®_3p3v>;
> > + VDDIO-supply = <®_1p8v>;
> > + };
> > };
> > #endif
>
> > @@ -85,9 +138,28 @@ scif0_pins: scif0 {
> > pins = "SCIF0_TXD", "SCIF0_RXD";
> > power-source = <1800>;
> > };
> > +
> > + ssi0_pins: ssi0 {
> > + pinmux = <RZG3L_PORT_PINMUX(H, 1, 9)>, /* SSIF0_BCK */
> > + <RZG3L_PORT_PINMUX(H, 2, 9)>, /* SSIF0_RCK */
> > + <RZG3L_PORT_PINMUX(H, 3, 9)>, /* SSIF0_TXD */
> > + <RZG3L_PORT_PINMUX(H, 0, 9)>; /* SSIF0_RXD */
>
> Please sort by pin.
Will fix this in next version.
Cheers,
Biju
>
> > + };
> > };
> >
> > &scif0 {
> > pinctrl-0 = <&scif0_pins>;
> > pinctrl-names = "default";
> > };
>
> The rest LGTM.
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
>
> In personal conversations with technical people, I call myself a hacker. But when I'm talking to
> journalists I just say "programmer" or something like that.
> -- Linus Torvalds