From: Simon Horman <horms@verge.net.au>
To: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Cc: Rob Herring <robh+dt@kernel.org>,
Geert Uytterhoeven <geert+renesas@glider.be>,
Mark Rutland <mark.rutland@arm.com>,
Magnus Damm <magnus.damm@gmail.com>,
linux-renesas-soc@vger.kernel.org, devicetree@vger.kernel.org,
Chris Paterson <Chris.Paterson2@renesas.com>,
Biju Das <biju.das@bp.renesas.com>
Subject: Re: [PATCH 07/17] arm64: dts: renesas: r8a774c0: Add audio support
Date: Mon, 17 Dec 2018 11:21:31 +0100 [thread overview]
Message-ID: <20181217102127.x5wn4hhvv3sr3pvt@verge.net.au> (raw)
In-Reply-To: <1544780260-27590-8-git-send-email-fabrizio.castro@bp.renesas.com>
On Fri, Dec 14, 2018 at 09:37:30AM +0000, Fabrizio Castro wrote:
> Add sound support for the RZ/G2E SoC (a.k.a. R8A774C0).
>
> This work is based on similar work done on the R8A77990 SoC
> by Yoshihiro Kaneko <ykaneko0929@gmail.com>.
>
> Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
> ---
> arch/arm64/boot/dts/renesas/r8a774c0.dtsi | 241 ++++++++++++++++++++++++++++++
> 1 file changed, 241 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/renesas/r8a774c0.dtsi b/arch/arm64/boot/dts/renesas/r8a774c0.dtsi
> index 9bd66b1..35b27b8 100644
> --- a/arch/arm64/boot/dts/renesas/r8a774c0.dtsi
> +++ b/arch/arm64/boot/dts/renesas/r8a774c0.dtsi
> @@ -917,6 +917,247 @@
> status = "disabled";
> };
>
> + rcar_sound: sound@ec500000 {
> + /*
> + * #sound-dai-cells is required
> + *
> + * Single DAI : #sound-dai-cells = <0>; <&rcar_sound>;
> + * Multi DAI : #sound-dai-cells = <1>; <&rcar_sound N>;
> + */
> + /*
> + * #clock-cells is required for audio_clkout0/1/2/3
> + *
> + * clkout : #clock-cells = <0>; <&rcar_sound>;
> + * clkout0/1/2/3: #clock-cells = <1>; <&rcar_sound N>;
> + */
> + compatible = "renesas,rcar_sound-r8a774c0",
> + "renesas,rcar_sound-gen3";
> + reg = <0 0xec500000 0 0x1000>, /* SCU */
> + <0 0xec5a0000 0 0x100>, /* ADG */
> + <0 0xec540000 0 0x1000>, /* SSIU */
> + <0 0xec541000 0 0x280>, /* SSI */
> + <0 0xec760000 0 0x200>; /* Audio DMAC peri peri*/
> + reg-names = "scu", "adg", "ssiu", "ssi", "audmapp";
> +
> + clocks = <&cpg CPG_MOD 1005>,
> + <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>,
> + <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>,
> + <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>,
> + <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>,
> + <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>,
> + <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>,
> + <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>,
> + <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>,
> + <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>,
> + <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>,
> + <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
> + <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
> + <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>,
> + <&audio_clk_a>, <&audio_clk_b>,
> + <&audio_clk_c>,
> + <&cpg CPG_CORE R8A774C0_CLK_ZA2>;
> + clock-names = "ssi-all",
> + "ssi.9", "ssi.8", "ssi.7", "ssi.6",
> + "ssi.5", "ssi.4", "ssi.3", "ssi.2",
> + "ssi.1", "ssi.0",
> + "src.9", "src.8", "src.7", "src.6",
> + "src.5", "src.4", "src.3", "src.2",
> + "src.1", "src.0",
> + "mix.1", "mix.0",
> + "ctu.1", "ctu.0",
> + "dvc.0", "dvc.1",
> + "clk_a", "clk_b", "clk_c", "clk_i";
> + power-domains = <&sysc R8A774C0_PD_ALWAYS_ON>;
> + resets = <&cpg 1005>,
> + <&cpg 1006>, <&cpg 1007>,
> + <&cpg 1008>, <&cpg 1009>,
> + <&cpg 1010>, <&cpg 1011>,
> + <&cpg 1012>, <&cpg 1013>,
> + <&cpg 1014>, <&cpg 1015>;
> + reset-names = "ssi-all",
> + "ssi.9", "ssi.8", "ssi.7", "ssi.6",
> + "ssi.5", "ssi.4", "ssi.3", "ssi.2",
> + "ssi.1", "ssi.0";
> + status = "disabled";
> +
> + rcar_sound,dvc {
> + dvc0: dvc-0 {
> + dmas = <&audma0 0xbc>;
> + dma-names = "tx";
> + };
> + dvc1: dvc-1 {
> + dmas = <&audma0 0xbe>;
> + dma-names = "tx";
> + };
> + };
> +
> + rcar_sound,mix {
> + mix0: mix-0 { };
> + mix1: mix-1 { };
> + };
> +
> + rcar_sound,ctu {
> + ctu00: ctu-0 { };
> + ctu01: ctu-1 { };
> + ctu02: ctu-2 { };
> + ctu03: ctu-3 { };
> + ctu10: ctu-4 { };
> + ctu11: ctu-5 { };
> + ctu12: ctu-6 { };
> + ctu13: ctu-7 { };
> + };
> +
> + rcar_sound,src {
> + src0: src-0 {
> + interrupts = <GIC_SPI 352 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x85>, <&audma0 0x9a>;
> + dma-names = "rx", "tx";
> + };
I am a little confused here as the table i48.4 of User's Manual: Hardware
v0.61 lists DMAR 0x85 and 0x9a as being unavailable on RZ/G2E. Likewise for
other DMARs used below. And likewise for the R-Car E3 but in that case the
documentation is corrected by an Errata dated 24th Aug 2018. Is it safe to
assume that the RZ/G2E documentation is in error in this regards?
Other than the above this patch looks good to me.
> + src1: src-1 {
> + interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x87>, <&audma0 0x9c>;
> + dma-names = "rx", "tx";
> + };
> + src2: src-2 {
> + interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x89>, <&audma0 0x9e>;
> + dma-names = "rx", "tx";
> + };
> + src3: src-3 {
> + interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x8b>, <&audma0 0xa0>;
> + dma-names = "rx", "tx";
> + };
> + src4: src-4 {
> + interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x8d>, <&audma0 0xb0>;
> + dma-names = "rx", "tx";
> + };
> + src5: src-5 {
> + interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x8f>, <&audma0 0xb2>;
> + dma-names = "rx", "tx";
> + };
> + src6: src-6 {
> + interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x91>, <&audma0 0xb4>;
> + dma-names = "rx", "tx";
> + };
> + src7: src-7 {
> + interrupts = <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x93>, <&audma0 0xb6>;
> + dma-names = "rx", "tx";
> + };
> + src8: src-8 {
> + interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x95>, <&audma0 0xb8>;
> + dma-names = "rx", "tx";
> + };
> + src9: src-9 {
> + interrupts = <GIC_SPI 361 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x97>, <&audma0 0xba>;
> + dma-names = "rx", "tx";
> + };
> + };
> +
> + rcar_sound,ssi {
> + ssi0: ssi-0 {
> + interrupts = <GIC_SPI 370 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x01>, <&audma0 0x02>,
> + <&audma0 0x15>, <&audma0 0x16>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi1: ssi-1 {
> + interrupts = <GIC_SPI 371 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x03>, <&audma0 0x04>,
> + <&audma0 0x49>, <&audma0 0x4a>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi2: ssi-2 {
> + interrupts = <GIC_SPI 372 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x05>, <&audma0 0x06>,
> + <&audma0 0x63>, <&audma0 0x64>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi3: ssi-3 {
> + interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x07>, <&audma0 0x08>,
> + <&audma0 0x6f>, <&audma0 0x70>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi4: ssi-4 {
> + interrupts = <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x09>, <&audma0 0x0a>,
> + <&audma0 0x71>, <&audma0 0x72>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi5: ssi-5 {
> + interrupts = <GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x0b>, <&audma0 0x0c>,
> + <&audma0 0x73>, <&audma0 0x74>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi6: ssi-6 {
> + interrupts = <GIC_SPI 376 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x0d>, <&audma0 0x0e>,
> + <&audma0 0x75>, <&audma0 0x76>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi7: ssi-7 {
> + interrupts = <GIC_SPI 377 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x0f>, <&audma0 0x10>,
> + <&audma0 0x79>, <&audma0 0x7a>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi8: ssi-8 {
> + interrupts = <GIC_SPI 378 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x11>, <&audma0 0x12>,
> + <&audma0 0x7b>, <&audma0 0x7c>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + ssi9: ssi-9 {
> + interrupts = <GIC_SPI 379 IRQ_TYPE_LEVEL_HIGH>;
> + dmas = <&audma0 0x13>, <&audma0 0x14>,
> + <&audma0 0x7d>, <&audma0 0x7e>;
> + dma-names = "rx", "tx", "rxu", "txu";
> + };
> + };
> + };
> +
> + audma0: dma-controller@ec700000 {
> + compatible = "renesas,dmac-r8a774c0",
> + "renesas,rcar-dmac";
> + reg = <0 0xec700000 0 0x10000>;
> + interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH
> + GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>;
> + interrupt-names = "error",
> + "ch0", "ch1", "ch2", "ch3",
> + "ch4", "ch5", "ch6", "ch7",
> + "ch8", "ch9", "ch10", "ch11",
> + "ch12", "ch13", "ch14", "ch15";
> + clocks = <&cpg CPG_MOD 502>;
> + clock-names = "fck";
> + power-domains = <&sysc R8A774C0_PD_ALWAYS_ON>;
> + resets = <&cpg 502>;
> + #dma-cells = <1>;
> + dma-channels = <16>;
> + };
> +
> sdhi0: sd@ee100000 {
> compatible = "renesas,sdhi-r8a774c0",
> "renesas,rcar-gen3-sdhi";
> --
> 2.7.4
>
next prev parent reply other threads:[~2018-12-17 10:21 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-14 9:37 [PATCH 00/17] Add more support for the RZ/G2E Fabrizio Castro
2018-12-14 9:37 ` [PATCH 01/17] arm64: dts: renesas: r8a774c0: Add SDHI nodes Fabrizio Castro
2018-12-16 20:18 ` Simon Horman
2018-12-17 16:10 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 02/17] arm64: dts: renesas: r8a774c0: Add I2C and IIC-DVFS support Fabrizio Castro
2018-12-16 20:17 ` Simon Horman
2018-12-17 11:24 ` Fabrizio Castro
2018-12-17 11:50 ` Simon Horman
2018-12-17 12:19 ` Fabrizio Castro
2018-12-17 16:12 ` Geert Uytterhoeven
2018-12-17 16:17 ` Fabrizio Castro
2018-12-14 9:37 ` [PATCH 03/17] arm64: dts: renesas: r8a774c0: Add IPMMU device nodes Fabrizio Castro
2018-12-16 20:32 ` Simon Horman
2018-12-17 16:12 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 04/17] arm64: dts: renesas: r8a774c0: Add CAN nodes Fabrizio Castro
2018-12-16 20:39 ` Simon Horman
2018-12-17 16:13 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 05/17] arm64: dts: renesas: r8a774c0: Add thermal support Fabrizio Castro
2018-12-16 20:43 ` Simon Horman
2018-12-17 16:13 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 06/17] arm64: dts: renesas: r8a774c0: Add MSIOF nodes Fabrizio Castro
2018-12-16 20:51 ` Simon Horman
2018-12-17 16:14 ` Geert Uytterhoeven
2018-12-17 16:26 ` Sergei Shtylyov
2018-12-17 16:36 ` Fabrizio Castro
2018-12-17 16:46 ` Sergei Shtylyov
2018-12-14 9:37 ` [PATCH 07/17] arm64: dts: renesas: r8a774c0: Add audio support Fabrizio Castro
2018-12-17 10:21 ` Simon Horman [this message]
2018-12-17 11:38 ` Fabrizio Castro
2018-12-17 11:48 ` Simon Horman
2018-12-14 9:37 ` [PATCH 08/17] arm64: dts: renesas: r8a774c0: Add PWM support Fabrizio Castro
2018-12-17 10:25 ` Simon Horman
2018-12-17 16:14 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 09/17] arm64: dts: renesas: r8a774c0: Add display output support Fabrizio Castro
2018-12-17 10:44 ` Simon Horman
2018-12-14 9:37 ` [PATCH 10/17] arm64: dts: renesas: r8a774c0: Add USB2.0 phy and host device nodes Fabrizio Castro
2018-12-17 10:48 ` Simon Horman
2018-12-17 16:15 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 11/17] arm64: dts: renesas: r8a774c0: Add USB-DMAC and HSUSB " Fabrizio Castro
2018-12-17 10:54 ` Simon Horman
2018-12-17 12:17 ` Fabrizio Castro
2018-12-17 12:42 ` Simon Horman
2018-12-17 16:17 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 12/17] arm64: dts: renesas: r8a774c0: Add USB3.0 " Fabrizio Castro
2018-12-17 10:57 ` Simon Horman
2018-12-17 16:17 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 13/17] arm64: dts: renesas: r8a774c0: Connect RZ/G2E SYS-DMAC to IPMMU Fabrizio Castro
2018-12-17 11:03 ` Simon Horman
2018-12-17 16:18 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 14/17] arm64: dts: renesas: r8a774c0: Connect RZ/G2E AVB " Fabrizio Castro
2018-12-17 11:03 ` Simon Horman
2018-12-17 16:19 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 15/17] arm64: dts: renesas: r8a774c0: Connect RZ/G2E Audio-DMAC " Fabrizio Castro
2018-12-17 11:03 ` Simon Horman
2018-12-17 16:19 ` Geert Uytterhoeven
2018-12-14 9:37 ` [PATCH 16/17] arm64: dts: renesas: r8a774c0: Add PCIe device node Fabrizio Castro
2018-12-17 11:12 ` Simon Horman
2018-12-14 9:37 ` [PATCH 17/17] arm64: dts: renesas: r8a774c0: Add VIN and CSI-2 device nodes Fabrizio Castro
2018-12-17 11:18 ` Simon Horman
2018-12-18 10:55 ` [PATCH 00/17] Add more support for the RZ/G2E Simon Horman
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=20181217102127.x5wn4hhvv3sr3pvt@verge.net.au \
--to=horms@verge.net.au \
--cc=Chris.Paterson2@renesas.com \
--cc=biju.das@bp.renesas.com \
--cc=devicetree@vger.kernel.org \
--cc=fabrizio.castro@bp.renesas.com \
--cc=geert+renesas@glider.be \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=magnus.damm@gmail.com \
--cc=mark.rutland@arm.com \
--cc=robh+dt@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;
as well as URLs for NNTP newsgroup(s).