162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Device Tree for ULCB + Simple Audio Card (MIXer)
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Copyright (C) 2022 Renesas Electronics Corp.
662306a36Sopenharmony_ci */
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci/*
962306a36Sopenharmony_ci * Note:
1062306a36Sopenharmony_ci * The HDMI output is ignored due to the limited number of subdevices
1162306a36Sopenharmony_ci *
1262306a36Sopenharmony_ci *	(A) CPU0 (2ch) <----> (2ch) (X) ak4613	(MIX-0)
1362306a36Sopenharmony_ci *	(B) CPU1 (2ch)  --/			(MIX-1)
1462306a36Sopenharmony_ci *
1562306a36Sopenharmony_ci *	(A) aplay   -D plughw:0,0 xxx.wav
1662306a36Sopenharmony_ci *	(B) aplay   -D plughw:0,1 xxx.wav
1762306a36Sopenharmony_ci *
1862306a36Sopenharmony_ci *	(A) arecord -D plughw:0,0 xxx.wav
1962306a36Sopenharmony_ci */
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci/ {
2262306a36Sopenharmony_ci	sound_card: sound {
2362306a36Sopenharmony_ci		#address-cells = <1>;
2462306a36Sopenharmony_ci		#size-cells = <0>;
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci		compatible = "simple-scu-audio-card";
2762306a36Sopenharmony_ci		label = "rcar-sound";
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci		simple-audio-card,prefix  = "ak4613";
3062306a36Sopenharmony_ci		simple-audio-card,routing = "ak4613 Playback", "DAI0 Playback",
3162306a36Sopenharmony_ci					    "ak4613 Playback", "DAI1 Playback",
3262306a36Sopenharmony_ci					    "DAI0 Capture",    "ak4613 Capture";
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci		simple-audio-card,dai-link@0 {
3562306a36Sopenharmony_ci			#address-cells = <1>;
3662306a36Sopenharmony_ci			#size-cells = <0>;
3762306a36Sopenharmony_ci			reg = <0>;
3862306a36Sopenharmony_ci			convert-rate = <48000>;
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci			/*
4162306a36Sopenharmony_ci			 * (A) CPU0
4262306a36Sopenharmony_ci			 */
4362306a36Sopenharmony_ci			cpu@0 {
4462306a36Sopenharmony_ci				reg = <0>;
4562306a36Sopenharmony_ci				bitclock-master;
4662306a36Sopenharmony_ci				frame-master;
4762306a36Sopenharmony_ci				sound-dai = <&rcar_sound 0>;
4862306a36Sopenharmony_ci			};
4962306a36Sopenharmony_ci			/*
5062306a36Sopenharmony_ci			 * (B) CPU1
5162306a36Sopenharmony_ci			 */
5262306a36Sopenharmony_ci			cpu@1 {
5362306a36Sopenharmony_ci				reg = <1>;
5462306a36Sopenharmony_ci				sound-dai = <&rcar_sound 1>;
5562306a36Sopenharmony_ci			};
5662306a36Sopenharmony_ci			/*
5762306a36Sopenharmony_ci			 * (X) ak4613
5862306a36Sopenharmony_ci			 */
5962306a36Sopenharmony_ci			codec {
6062306a36Sopenharmony_ci				prefix = "ak4613";
6162306a36Sopenharmony_ci				sound-dai = <&ak4613>;
6262306a36Sopenharmony_ci			};
6362306a36Sopenharmony_ci		};
6462306a36Sopenharmony_ci	};
6562306a36Sopenharmony_ci};
6662306a36Sopenharmony_ci
6762306a36Sopenharmony_ci&ak4613 {
6862306a36Sopenharmony_ci	/*
6962306a36Sopenharmony_ci	 * (X) ak4613
7062306a36Sopenharmony_ci	 */
7162306a36Sopenharmony_ci	#sound-dai-cells = <0>;
7262306a36Sopenharmony_ci};
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_ci&rcar_sound {
7562306a36Sopenharmony_ci	#sound-dai-cells = <1>;
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci	rcar_sound,dai {
7862306a36Sopenharmony_ci		/*
7962306a36Sopenharmony_ci		 * (A) CPU0
8062306a36Sopenharmony_ci		 */
8162306a36Sopenharmony_ci		dai0 {
8262306a36Sopenharmony_ci			playback = <&src1 &ctu02 &mix0 &dvc0 &ssi0>;
8362306a36Sopenharmony_ci			capture  = <&ssi1 &src0 &dvc1>;
8462306a36Sopenharmony_ci		};
8562306a36Sopenharmony_ci		/*
8662306a36Sopenharmony_ci		 * (B) CPU1
8762306a36Sopenharmony_ci		 */
8862306a36Sopenharmony_ci		dai1 {
8962306a36Sopenharmony_ci			playback = <&src2 &ctu03 &mix0 &dvc0 &ssi0>;
9062306a36Sopenharmony_ci		};
9162306a36Sopenharmony_ci	};
9262306a36Sopenharmony_ci};
93