arm64: dts: renesas: ulcb/kf: Use multi Component sound

+-- ULCB -------------------+
	|+--------+       +--------+|
	||    SSI0| <---> |ak4613  ||
	||    SSI1| <---> |        ||
	||        |       +--------+|
	||        |       +--------+|
	||    SSI2| <---> |HDMI    ||
	||        |       +--------+|
	||    SSI3| <--+            |
	||    SSI4| <-+|            |
	|+--------+   ||            |
	+-------------||------------+
	+-- Kingfisher -------------+
	|             ||  +--------+|
	|             |+->|pcm3168a||
	|             +-->|        ||
	|                 +--------+|
	+---------------------------+

On UCLB/KF, we intuitively think we want to handle these as "2 Sound
Cards":

	card0,0: 1st sound of ULCB (SSI0 - ak4613)
	card0,1: 2nd sound of ULCB (SSI2 - HDMI)
	card1,0: 1st sound of KF   (SSI3 - pcm3168a)
	    ^ ^

However, because of ASoC Component vs. Card framework limitations, we
needed to handle this as "1 big Sound Card":

	card0,0: 1st sound of ULCB/KF (SSI0 - ak4613)
	card0,1: 2nd sound of ULCB/KF (SSI2 - HDMI)
	card0,2: 3rd sound of ULCB/KF (SSI3 - pcm3168a)
	    ^ ^

Now ASoC supports multi Component, which allows us to handle "2 Sound
Cards" such as "ULCB Sound Card" and "Kingfisher Sound Card", all
ULCB/KF Audio dtsi can be updated.

Note that this changes the Sound Card specification method from
userland, especially for Kingfisher Sound.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/87fs382yhk.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
This commit is contained in:
Kuninori Morimoto 2023-09-20 23:53:12 +00:00 committed by Geert Uytterhoeven
parent 98537eb77d
commit d70be079c3
12 changed files with 270 additions and 231 deletions

View File

@ -21,14 +21,14 @@
/ {
sound_card: sound {
compatible = "audio-graph-scu-card";
label = "rcar-sound";
label = "snd-ulcb-mix";
routing = "ak4613 Playback", "DAI0 Playback",
"ak4613 Playback", "DAI1 Playback",
"DAI0 Capture", "ak4613 Capture";
dais = <&rsnd_port0 /* (A) CPU0 */
&rsnd_port1 /* (B) CPU1 */
dais = <&snd_ulcb1 /* (A) CPU0 */
&snd_ulcb2 /* (B) CPU1 */
>;
};
};
@ -58,14 +58,18 @@
};
&rcar_sound {
ports {
#address-cells = <1>;
#size-cells = <0>;
ports@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
/*
* (A) CPU0
*/
rsnd_port0: port@0 {
snd_ulcb1: port@0 {
reg = <0>;
rsnd_for_ak4613_1: endpoint {
remote-endpoint = <&ak4613_ep1>;
@ -78,7 +82,7 @@
/*
* (B) CPU1
*/
rsnd_port1: port@1 {
snd_ulcb2: port@1 {
reg = <1>;
rsnd_for_ak4613_2: endpoint {
remote-endpoint = <&ak4613_ep2>;

View File

@ -18,10 +18,10 @@
/ {
sound_card: sound {
compatible = "audio-graph-card";
label = "rcar-sound";
label = "snd-ulcb";
dais = <&rsnd_port0 /* (A) CPU0 <-> ak4613 */
&rsnd_port1 /* (B) CPU1 -> HDMI */
dais = <&snd_ulcb1 /* (A) CPU0 <-> ak4613 */
&snd_ulcb2 /* (B) CPU1 -> HDMI */
>;
};
};
@ -53,10 +53,15 @@
};
&rcar_sound {
ports {
#address-cells = <1>;
#size-cells = <0>;
ports@0 {
#address-cells = <1>;
#size-cells = <0>;
rsnd_port0: port@0 {
reg = <0>;
snd_ulcb1: port@0 {
/*
* (A) CPU0 <-> ak4613
*/
@ -69,7 +74,7 @@
capture = <&ssi1>, <&src1>, <&dvc1>;
};
};
rsnd_port1: port@1 {
snd_ulcb2: port@1 {
/*
* (B) CPU1 -> HDMI
*/

View File

@ -20,13 +20,12 @@
/ {
sound_card: sound {
compatible = "audio-graph-card2";
label = "rcar-sound";
label = "snd-ulcb-mix";
routing = "ak4613 Playback", "DAI0 Playback",
"ak4613 Playback", "DAI1 Playback",
"DAI0 Capture", "ak4613 Capture";
/delete-property/ dais;
links = <&fe_a /* (A) CPU0 */
&fe_b /* (B) CPU1 */
&be_x /* (X) ak4613 */
@ -50,14 +49,12 @@
};
ports@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
/*
* BE
* (X) ak4613
*/
be_x: port@0 { reg = <0>; be_x_ep: endpoint { remote-endpoint = <&ak4613_x_ep>; }; };
be_x: port { be_x_ep: endpoint { remote-endpoint = <&ak4613_x_ep>; }; };
};
};
};
@ -78,9 +75,13 @@
};
&rcar_sound {
ports {
#address-cells = <1>;
#size-cells = <0>;
ports@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
/*
* (A) CPU0

View File

@ -20,7 +20,7 @@
compatible = "audio-graph-card2";
/delete-property/ dais;
links = <&rsnd_port0 /* (A) CPU0 <-> ak4613 */
&rsnd_port1 /* (B) CPU1 -> HDMI */
links = <&snd_ulcb1 /* (A) CPU0 <-> ak4613 */
&snd_ulcb2 /* (B) CPU1 -> HDMI */
>;
};

View File

@ -19,32 +19,31 @@
*
* (A) aplay -D plughw:0,0 xxx.wav (MIX-0)
* (B) aplay -D plughw:0,1 xxx.wav (MIX-1)
* (C) aplay -D plughw:0,2 xxx.wav (TDM-0)
* (D) aplay -D plughw:0,3 xxx.wav (TDM-1)
* (E) aplay -D plughw:0,4 xxx.wav (TDM-2)
* (F) aplay -D plughw:0,5 xxx.wav (TDM-3)
* (C) aplay -D plughw:1,0 xxx.wav (TDM-0)
* (D) aplay -D plughw:1,1 xxx.wav (TDM-1)
* (E) aplay -D plughw:1,2 xxx.wav (TDM-2)
* (F) aplay -D plughw:1,3 xxx.wav (TDM-3)
*
* (A) arecord -D plughw:0,0 xxx.wav
* (G) arecord -D plughw:0,6 xxx.wav
* (G) arecord -D plughw:1,4 xxx.wav
*/
/ {
sound_card_kf: expand-sound {
compatible = "audio-graph-scu-card";
label = "snd-kf-split";
&sound_card {
routing = "ak4613 Playback", "DAI0 Playback",
"ak4613 Playback", "DAI1 Playback",
"DAI0 Capture", "ak4613 Capture",
"pcm3168a Playback", "DAI2 Playback",
"pcm3168a Playback", "DAI3 Playback",
"pcm3168a Playback", "DAI4 Playback",
"pcm3168a Playback", "DAI5 Playback";
routing = "pcm3168a Playback", "DAI2 Playback",
"pcm3168a Playback", "DAI3 Playback",
"pcm3168a Playback", "DAI4 Playback",
"pcm3168a Playback", "DAI5 Playback";
dais = <&rsnd_port0 /* (A) CPU0 */
&rsnd_port1 /* (B) CPU1 */
&rsnd_port2 /* (C) CPU2 */
&rsnd_port3 /* (D) CPU3 */
&rsnd_port4 /* (E) CPU4 */
&rsnd_port5 /* (F) CPU5 */
&rsnd_port6 /* (G) GPU6 */
>;
dais = <&snd_kf1 /* (C) CPU2 */
&snd_kf2 /* (D) CPU3 */
&snd_kf3 /* (E) CPU4 */
&snd_kf4 /* (F) CPU5 */
&snd_kf5 /* (G) GPU6 */
>;
};
};
&pcm3168a {
@ -103,13 +102,15 @@
};
&rcar_sound {
ports {
/* rsnd_port0-1 are defined in ulcb.dtsi */
ports@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
/*
* (C) CPU2
*/
rsnd_port2: port@2 {
snd_kf1: port@2 {
reg = <2>;
rsnd_for_pcm3168a_play1: endpoint {
remote-endpoint = <&pcm3168a_endpoint_p1>;
@ -121,7 +122,7 @@
/*
* (D) CPU3
*/
rsnd_port3: port@3 {
snd_kf2: port@3 {
reg = <3>;
rsnd_for_pcm3168a_play2: endpoint {
remote-endpoint = <&pcm3168a_endpoint_p2>;
@ -133,7 +134,7 @@
/*
* (E) CPU4
*/
rsnd_port4: port@4 {
snd_kf3: port@4 {
reg = <4>;
rsnd_for_pcm3168a_play3: endpoint {
remote-endpoint = <&pcm3168a_endpoint_p3>;
@ -145,7 +146,7 @@
/*
* (F) CPU5
*/
rsnd_port5: port@5 {
snd_kf4: port@5 {
reg = <5>;
rsnd_for_pcm3168a_play4: endpoint {
remote-endpoint = <&pcm3168a_endpoint_p4>;
@ -157,7 +158,7 @@
/*
* (G) CPU6
*/
rsnd_port6: port@6 {
snd_kf5: port@6 {
reg = <6>;
rsnd_for_pcm3168a_capture: endpoint {
remote-endpoint = <&pcm3168a_endpoint_c>;

View File

@ -13,18 +13,20 @@
*
* (A) aplay -D plughw:0,0 xxx.wav
* (B) aplay -D plughw:0,1 xxx.wav
* (C) aplay -D plughw:0,2 xxx.wav
* (C) aplay -D plughw:1,0 xxx.wav
*
* (A) arecord -D plughw:0,0 xxx.wav
* (D) arecord -D plughw:0,3 xxx.wav
* (D) arecord -D plughw:1,1 xxx.wav
*/
/ {
sound_card_kf: expand-sound {
compatible = "audio-graph-card";
label = "snd-kf";
&sound_card {
dais = <&rsnd_port0 /* (A) CPU0 <-> ak4613 */
&rsnd_port1 /* (B) CPU1 -> HDMI */
&rsnd_port2 /* (C) CPU2 -> PCM3168A-p */
&rsnd_port3 /* (D) CPU3 <- PCM3168A-c */
dais = <&snd_kf1 /* (C) CPU2 -> PCM3168A-p */
&snd_kf2 /* (D) CPU3 <- PCM3168A-c */
>;
};
};
&pcm3168a {
@ -56,12 +58,15 @@
};
&rcar_sound {
ports {
/* rsnd_port0/1 are defined in ulcb.dtsi */
ports@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
/*
* (C) CPU2 -> PCM3168A-p
*/
rsnd_port2: port@2 {
snd_kf1: port@2 {
reg = <2>;
rsnd_for_pcm3168a_play: endpoint {
remote-endpoint = <&pcm3168a_endpoint_p>;
@ -74,7 +79,7 @@
/*
* (D) CPU3 <- PCM3168A-c
*/
rsnd_port3: port@3 {
snd_kf2: port@3 {
reg = <3>;
rsnd_for_pcm3168a_capture: endpoint {
remote-endpoint = <&pcm3168a_endpoint_c>;

View File

@ -19,61 +19,65 @@
*
* (A) aplay -D plughw:0,0 xxx.wav (MIX-0)
* (B) aplay -D plughw:0,1 xxx.wav (MIX-1)
* (C) aplay -D plughw:0,2 xxx.wav (TDM-0)
* (D) aplay -D plughw:0,3 xxx.wav (TDM-1)
* (E) aplay -D plughw:0,4 xxx.wav (TDM-2)
* (F) aplay -D plughw:0,5 xxx.wav (TDM-3)
* (C) aplay -D plughw:1,0 xxx.wav (TDM-0)
* (D) aplay -D plughw:1,1 xxx.wav (TDM-1)
* (E) aplay -D plughw:1,2 xxx.wav (TDM-2)
* (F) aplay -D plughw:1,3 xxx.wav (TDM-3)
*
* (A) arecord -D plughw:0,0 xxx.wav
* (G) arecord -D plughw:0,6 xxx.wav
* (G) arecord -D plughw:1,4 xxx.wav
*/
&sound_card {
routing = "ak4613 Playback", "DAI0 Playback",
"ak4613 Playback", "DAI1 Playback",
"DAI0 Capture", "ak4613 Capture",
"pcm3168a Playback", "DAI2 Playback",
"pcm3168a Playback", "DAI3 Playback",
"pcm3168a Playback", "DAI4 Playback",
"pcm3168a Playback", "DAI5 Playback",
"DAI6 Capture", "pcm3168a Capture";
/ {
sound_card_kf: expand-sound {
compatible = "audio-graph-card2";
label = "snd-kf-split";
/delete-property/ dais;
links = <&fe_a /* (A) CPU0 */
&fe_b /* (B) CPU1 */
&fe_c /* (C) CPU2 */
&fe_d /* (D) CPU3 */
&fe_e /* (E) CPU4 */
&fe_f /* (F) CPU5 */
&rsnd_g /* (G) CPU6 */
&be_x /* (X) ak4613 */
&be_y /* (Y) PCM3168A-p */
>;
routing = "pcm3168a Playback", "DAI2 Playback",
"pcm3168a Playback", "DAI3 Playback",
"pcm3168a Playback", "DAI4 Playback",
"pcm3168a Playback", "DAI5 Playback",
"DAI6 Capture", "pcm3168a Capture";
dpcm {
ports@0 {
/*
* FE
*
* (A)/(B) are defined on ulcb
* (C) CPU2
* (D) CPU3
* (E) CPU4
* (F) CPU5
*/
fe_c: port@2 { reg = <2>; fe_c_ep: endpoint { remote-endpoint = <&rsnd_c_ep>; }; };
fe_d: port@3 { reg = <3>; fe_d_ep: endpoint { remote-endpoint = <&rsnd_d_ep>; }; };
fe_e: port@4 { reg = <4>; fe_e_ep: endpoint { remote-endpoint = <&rsnd_e_ep>; }; };
fe_f: port@5 { reg = <5>; fe_f_ep: endpoint { remote-endpoint = <&rsnd_f_ep>; }; };
};
links = <&fe_c /* (C) CPU2 */
&fe_d /* (D) CPU3 */
&fe_e /* (E) CPU4 */
&fe_f /* (F) CPU5 */
&rsnd_g /* (G) CPU6 */
&be_y /* (Y) PCM3168A-p */
>;
ports@1 {
/*
* BE
*
* (X) is defined on ulcb
* (Y) PCM3168A-p
*/
be_y: port@1 { reg = <1>; be_y_ep: endpoint { remote-endpoint = <&pcm3168a_y_ep>; }; };
dpcm {
#address-cells = <1>;
#size-cells = <0>;
ports@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
/*
* FE
*
* (C) CPU2
* (D) CPU3
* (E) CPU4
* (F) CPU5
*/
fe_c: port@2 { reg = <2>; fe_c_ep: endpoint { remote-endpoint = <&rsnd_c_ep>; }; };
fe_d: port@3 { reg = <3>; fe_d_ep: endpoint { remote-endpoint = <&rsnd_d_ep>; }; };
fe_e: port@4 { reg = <4>; fe_e_ep: endpoint { remote-endpoint = <&rsnd_e_ep>; }; };
fe_f: port@5 { reg = <5>; fe_f_ep: endpoint { remote-endpoint = <&rsnd_f_ep>; }; };
};
ports@1 {
reg = <1>;
/*
* BE
*
* (Y) PCM3168A-p
*/
be_y: port { be_y_ep: endpoint { remote-endpoint = <&pcm3168a_y_ep>; }; };
};
};
};
};
@ -111,8 +115,10 @@
};
&rcar_sound {
ports {
/* (A)/(B) are defined in ulcb.dtsi */
ports@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
/*
* (C) CPU2

View File

@ -13,18 +13,18 @@
*
* (A) aplay -D plughw:0,0 xxx.wav
* (B) aplay -D plughw:0,1 xxx.wav
* (C) aplay -D plughw:0,2 xxx.wav
* (C) aplay -D plughw:1,0 xxx.wav
*
* (A) arecord -D plughw:0,0 xxx.wav
* (D) arecord -D plughw:0,3 xxx.wav
* (D) arecord -D plughw:1,1 xxx.wav
*/
#include "ulcb-kf-audio-graph-card.dtsi"
&sound_card {
&sound_card_kf {
compatible = "audio-graph-card2";
/delete-property/ dais;
links = <&rsnd_port0 /* (A) CPU0 <-> ak4613 */
&rsnd_port1 /* (B) CPU1 -> HDMI */
&rsnd_port2 /* (C) CPU2 -> PCM3168A-p */
&rsnd_port3 /* (D) CPU3 <- PCM3168A-c */
links = <&snd_kf1 /* (C) CPU2 -> PCM3168A-p */
&snd_kf2 /* (D) CPU3 <- PCM3168A-c */
>;
};

View File

@ -19,89 +19,92 @@
*
* (A) aplay -D plughw:0,0 xxx.wav (MIX-0)
* (B) aplay -D plughw:0,1 xxx.wav (MIX-1)
* (C) aplay -D plughw:0,2 xxx.wav (TDM-0)
* (D) aplay -D plughw:0,3 xxx.wav (TDM-1)
* (E) aplay -D plughw:0,4 xxx.wav (TDM-2)
* (F) aplay -D plughw:0,5 xxx.wav (TDM-3)
* (C) aplay -D plughw:1,0 xxx.wav (TDM-0)
* (D) aplay -D plughw:1,1 xxx.wav (TDM-1)
* (E) aplay -D plughw:1,2 xxx.wav (TDM-2)
* (F) aplay -D plughw:1,3 xxx.wav (TDM-3)
*
* (A) arecord -D plughw:0,0 xxx.wav
* (G) arecord -D plughw:0,6 xxx.wav
* (G) arecord -D plughw:1,4 xxx.wav
*/
&sound_card {
simple-audio-card,routing = "ak4613 Playback", "DAI0 Playback",
"ak4613 Playback", "DAI1 Playback",
"DAI0 Capture", "ak4613 Capture",
"pcm3168a Playback", "DAI2 Playback",
"pcm3168a Playback", "DAI3 Playback",
"pcm3168a Playback", "DAI4 Playback",
"pcm3168a Playback", "DAI5 Playback";
/* dai-link@0 is defined in ulcb.dtsi */
simple-audio-card,dai-link@1 {
/ {
sound_card_kf: expand-sound {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
convert-channels = <8>; /* to 8ch TDM */
/*
* (C) CPU2
*/
cpu@0 {
compatible = "simple-scu-audio-card";
label = "snd-kf-split";
simple-audio-card,routing = "pcm3168a Playback", "DAI2 Playback",
"pcm3168a Playback", "DAI3 Playback",
"pcm3168a Playback", "DAI4 Playback",
"pcm3168a Playback", "DAI5 Playback";
simple-audio-card,dai-link@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
bitclock-master;
frame-master;
sound-dai = <&rcar_sound 2>;
convert-channels = <8>; /* to 8ch TDM */
/*
* (C) CPU2
*/
cpu@0 {
reg = <0>;
bitclock-master;
frame-master;
sound-dai = <&rcar_sound 2>;
};
/*
* (D) CPU3
*/
cpu@1 {
reg = <1>;
sound-dai = <&rcar_sound 3>;
};
/*
* (E) CPU4
*/
cpu@2 {
reg = <2>;
sound-dai = <&rcar_sound 4>;
};
/*
* (F) CPU5
*/
cpu@3 {
reg = <3>;
sound-dai = <&rcar_sound 5>;
};
/*
* (Y) PCM3168A-p
*/
codec {
prefix = "pcm3168a";
mclk-fs = <512>;
sound-dai = <&pcm3168a 0>;
};
};
/*
* (D) CPU3
*/
cpu@1 {
simple-audio-card,dai-link@1 {
reg = <1>;
sound-dai = <&rcar_sound 3>;
};
/*
* (E) CPU4
*/
cpu@2 {
reg = <2>;
sound-dai = <&rcar_sound 4>;
};
/*
* (F) CPU5
*/
cpu@3 {
reg = <3>;
sound-dai = <&rcar_sound 5>;
};
/*
* (Y) PCM3168A-p
*/
codec {
prefix = "pcm3168a";
mclk-fs = <512>;
sound-dai = <&pcm3168a 0>;
};
};
simple-audio-card,dai-link@2 {
reg = <2>;
/*
* (G) CPU6
*/
cpu {
bitclock-master;
frame-master;
sound-dai = <&rcar_sound 6>;
};
/*
* (Z) PCM3168A-c
*/
codec {
prefix = "pcm3168a";
mclk-fs = <512>;
sound-dai = <&pcm3168a 1>;
/*
* (G) CPU6
*/
cpu {
bitclock-master;
frame-master;
sound-dai = <&rcar_sound 6>;
};
/*
* (Z) PCM3168A-c
*/
codec {
prefix = "pcm3168a";
mclk-fs = <512>;
sound-dai = <&pcm3168a 1>;
};
};
};
};
@ -115,7 +118,8 @@
};
&rcar_sound {
rcar_sound,dai {
rcar_sound,dai@1 {
reg = <1>;
/* dai0-1 are defined in ulcb.dtsi */

View File

@ -13,45 +13,51 @@
*
* (A) aplay -D plughw:0,0 xxx.wav
* (B) aplay -D plughw:0,1 xxx.wav
* (C) aplay -D plughw:0,2 xxx.wav
* (C) aplay -D plughw:1,0 xxx.wav
*
* (A) arecord -D plughw:0,0 xxx.wav
* (D) arecord -D plughw:0,3 xxx.wav
* (D) arecord -D plughw:1,1 xxx.wav
*/
&sound_card {
/* dai-link@0/1 are defined in ulcb.dtsi */
/ {
sound_card_kf: expand-sound {
compatible = "simple-audio-card";
label = "snd-kf";
/*
* (C) CPU2 -> PCM3168A-p
*/
simple-audio-card,dai-link@2 {
reg = <2>;
cpu {
bitclock-master;
frame-master;
dai-tdm-slot-num = <8>;
sound-dai = <&rcar_sound 2>;
#address-cells = <1>;
#size-cells = <0>;
/*
* (C) CPU2 -> PCM3168A-p
*/
simple-audio-card,dai-link@0 {
reg = <0>;
cpu {
bitclock-master;
frame-master;
dai-tdm-slot-num = <8>;
sound-dai = <&rcar_sound 2>;
};
codec {
mclk-fs = <512>;
sound-dai = <&pcm3168a 0>;
};
};
codec {
mclk-fs = <512>;
sound-dai = <&pcm3168a 0>;
};
};
/*
* (D) CPU3 <- PCM3168A-c
*/
simple-audio-card,dai-link@3 {
reg = <3>;
cpu {
bitclock-master;
frame-master;
dai-tdm-slot-num = <6>;
sound-dai = <&rcar_sound 3>;
};
codec {
mclk-fs = <512>;
sound-dai = <&pcm3168a 1>;
/*
* (D) CPU3 <- PCM3168A-c
*/
simple-audio-card,dai-link@1 {
reg = <1>;
cpu {
bitclock-master;
frame-master;
dai-tdm-slot-num = <6>;
sound-dai = <&rcar_sound 3>;
};
codec {
mclk-fs = <512>;
sound-dai = <&pcm3168a 1>;
};
};
};
};
@ -65,9 +71,8 @@
};
&rcar_sound {
rcar_sound,dai {
/* dai0-1 are defined in ulcb.dtsi */
rcar_sound,dai@1 {
reg = <1>;
/*
* (C) CPU2 -> PCM3168A-p

View File

@ -24,7 +24,7 @@
#size-cells = <0>;
compatible = "simple-scu-audio-card";
label = "rcar-sound";
label = "snd-ulcb-mix";
simple-audio-card,prefix = "ak4613";
simple-audio-card,routing = "ak4613 Playback", "DAI0 Playback",
@ -72,9 +72,13 @@
};
&rcar_sound {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <1>;
rcar_sound,dai {
rcar_sound,dai@0 {
reg = <0>;
/*
* (A) CPU0
*/

View File

@ -18,7 +18,7 @@
/ {
sound_card: sound {
compatible = "simple-audio-card";
label = "rcar-sound";
label = "snd-ulcb";
#address-cells = <1>;
#size-cells = <0>;
@ -69,9 +69,13 @@
};
&rcar_sound {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <1>;
rcar_sound,dai {
rcar_sound,dai@0 {
reg = <0>;
/*
* (A) CPU0 <-> ak4613
*/