xref: /freebsd/sys/contrib/device-tree/src/arm64/renesas/ulcb-simple-audio-card-mix+split.dtsi (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1cb7aa33aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2cb7aa33aSEmmanuel Vadot/*
3cb7aa33aSEmmanuel Vadot * Device Tree for ULCB + Simple Audio Card (MIXer)
4cb7aa33aSEmmanuel Vadot *
5cb7aa33aSEmmanuel Vadot * Copyright (C) 2022 Renesas Electronics Corp.
6cb7aa33aSEmmanuel Vadot */
7cb7aa33aSEmmanuel Vadot
8cb7aa33aSEmmanuel Vadot/*
9cb7aa33aSEmmanuel Vadot * Note:
10cb7aa33aSEmmanuel Vadot * The HDMI output is ignored due to the limited number of subdevices
11cb7aa33aSEmmanuel Vadot *
12cb7aa33aSEmmanuel Vadot *	(A) CPU0 (2ch) <----> (2ch) (X) ak4613	(MIX-0)
13cb7aa33aSEmmanuel Vadot *	(B) CPU1 (2ch)  --/			(MIX-1)
14cb7aa33aSEmmanuel Vadot *
15cb7aa33aSEmmanuel Vadot *	(A) aplay   -D plughw:0,0 xxx.wav
16cb7aa33aSEmmanuel Vadot *	(B) aplay   -D plughw:0,1 xxx.wav
17cb7aa33aSEmmanuel Vadot *
18cb7aa33aSEmmanuel Vadot *	(A) arecord -D plughw:0,0 xxx.wav
19cb7aa33aSEmmanuel Vadot */
20cb7aa33aSEmmanuel Vadot
21cb7aa33aSEmmanuel Vadot/ {
22cb7aa33aSEmmanuel Vadot	sound_card: sound {
23cb7aa33aSEmmanuel Vadot		#address-cells = <1>;
24cb7aa33aSEmmanuel Vadot		#size-cells = <0>;
25cb7aa33aSEmmanuel Vadot
26cb7aa33aSEmmanuel Vadot		compatible = "simple-scu-audio-card";
27*84943d6fSEmmanuel Vadot		label = "snd-ulcb-mix";
28cb7aa33aSEmmanuel Vadot
29cb7aa33aSEmmanuel Vadot		simple-audio-card,prefix  = "ak4613";
30cb7aa33aSEmmanuel Vadot		simple-audio-card,routing = "ak4613 Playback", "DAI0 Playback",
31cb7aa33aSEmmanuel Vadot					    "ak4613 Playback", "DAI1 Playback",
32cb7aa33aSEmmanuel Vadot					    "DAI0 Capture",    "ak4613 Capture";
33cb7aa33aSEmmanuel Vadot
34cb7aa33aSEmmanuel Vadot		simple-audio-card,dai-link@0 {
35cb7aa33aSEmmanuel Vadot			#address-cells = <1>;
36cb7aa33aSEmmanuel Vadot			#size-cells = <0>;
37cb7aa33aSEmmanuel Vadot			reg = <0>;
38cb7aa33aSEmmanuel Vadot			convert-rate = <48000>;
39cb7aa33aSEmmanuel Vadot
40cb7aa33aSEmmanuel Vadot			/*
41cb7aa33aSEmmanuel Vadot			 * (A) CPU0
42cb7aa33aSEmmanuel Vadot			 */
43cb7aa33aSEmmanuel Vadot			cpu@0 {
44cb7aa33aSEmmanuel Vadot				reg = <0>;
45cb7aa33aSEmmanuel Vadot				bitclock-master;
46cb7aa33aSEmmanuel Vadot				frame-master;
47cb7aa33aSEmmanuel Vadot				sound-dai = <&rcar_sound 0>;
48cb7aa33aSEmmanuel Vadot			};
49cb7aa33aSEmmanuel Vadot			/*
50cb7aa33aSEmmanuel Vadot			 * (B) CPU1
51cb7aa33aSEmmanuel Vadot			 */
52cb7aa33aSEmmanuel Vadot			cpu@1 {
53cb7aa33aSEmmanuel Vadot				reg = <1>;
54cb7aa33aSEmmanuel Vadot				sound-dai = <&rcar_sound 1>;
55cb7aa33aSEmmanuel Vadot			};
56cb7aa33aSEmmanuel Vadot			/*
57cb7aa33aSEmmanuel Vadot			 * (X) ak4613
58cb7aa33aSEmmanuel Vadot			 */
59cb7aa33aSEmmanuel Vadot			codec {
60cb7aa33aSEmmanuel Vadot				prefix = "ak4613";
61cb7aa33aSEmmanuel Vadot				sound-dai = <&ak4613>;
62cb7aa33aSEmmanuel Vadot			};
63cb7aa33aSEmmanuel Vadot		};
64cb7aa33aSEmmanuel Vadot	};
65cb7aa33aSEmmanuel Vadot};
66cb7aa33aSEmmanuel Vadot
67cb7aa33aSEmmanuel Vadot&ak4613 {
68cb7aa33aSEmmanuel Vadot	/*
69cb7aa33aSEmmanuel Vadot	 * (X) ak4613
70cb7aa33aSEmmanuel Vadot	 */
71cb7aa33aSEmmanuel Vadot	#sound-dai-cells = <0>;
72cb7aa33aSEmmanuel Vadot};
73cb7aa33aSEmmanuel Vadot
74cb7aa33aSEmmanuel Vadot&rcar_sound {
75*84943d6fSEmmanuel Vadot	#address-cells = <1>;
76*84943d6fSEmmanuel Vadot	#size-cells = <0>;
77cb7aa33aSEmmanuel Vadot	#sound-dai-cells = <1>;
78cb7aa33aSEmmanuel Vadot
79*84943d6fSEmmanuel Vadot	rcar_sound,dai@0 {
80*84943d6fSEmmanuel Vadot		reg = <0>;
81*84943d6fSEmmanuel Vadot
82cb7aa33aSEmmanuel Vadot		/*
83cb7aa33aSEmmanuel Vadot		 * (A) CPU0
84cb7aa33aSEmmanuel Vadot		 */
85cb7aa33aSEmmanuel Vadot		dai0 {
86cb7aa33aSEmmanuel Vadot			playback = <&src1 &ctu02 &mix0 &dvc0 &ssi0>;
87cb7aa33aSEmmanuel Vadot			capture  = <&ssi1 &src0 &dvc1>;
88cb7aa33aSEmmanuel Vadot		};
89cb7aa33aSEmmanuel Vadot		/*
90cb7aa33aSEmmanuel Vadot		 * (B) CPU1
91cb7aa33aSEmmanuel Vadot		 */
92cb7aa33aSEmmanuel Vadot		dai1 {
93cb7aa33aSEmmanuel Vadot			playback = <&src2 &ctu03 &mix0 &dvc0 &ssi0>;
94cb7aa33aSEmmanuel Vadot		};
95cb7aa33aSEmmanuel Vadot	};
96cb7aa33aSEmmanuel Vadot};
97