162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Device Tree for ULCB + Audio Graph Card
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Copyright (C) 2022 Renesas Electronics Corp.
662306a36Sopenharmony_ci */
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci/*
962306a36Sopenharmony_ci *	(A) CPU0 <-----> ak4613
1062306a36Sopenharmony_ci *	(B) CPU1  -----> HDMI
1162306a36Sopenharmony_ci *
1262306a36Sopenharmony_ci *	(A) aplay   -D plughw:0,0 xxx.wav
1362306a36Sopenharmony_ci *	(B) aplay   -D plughw:0,1 xxx.wav
1462306a36Sopenharmony_ci *
1562306a36Sopenharmony_ci *	(A) arecord -D plughw:0,0 xxx.wav
1662306a36Sopenharmony_ci */
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci/ {
1962306a36Sopenharmony_ci	sound_card: sound {
2062306a36Sopenharmony_ci		compatible = "audio-graph-card";
2162306a36Sopenharmony_ci		label = "rcar-sound";
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci		dais = <&rsnd_port0 /* (A) CPU0 <-> ak4613 */
2462306a36Sopenharmony_ci			&rsnd_port1 /* (B) CPU1  -> HDMI   */
2562306a36Sopenharmony_ci		>;
2662306a36Sopenharmony_ci	};
2762306a36Sopenharmony_ci};
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci&ak4613 {
3062306a36Sopenharmony_ci	#sound-dai-cells = <0>;
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci	port {
3362306a36Sopenharmony_ci		/*
3462306a36Sopenharmony_ci		 * (A) CPU0 <-> ak4613
3562306a36Sopenharmony_ci		 */
3662306a36Sopenharmony_ci		ak4613_endpoint: endpoint {
3762306a36Sopenharmony_ci			remote-endpoint = <&rsnd_for_ak4613>;
3862306a36Sopenharmony_ci		};
3962306a36Sopenharmony_ci	};
4062306a36Sopenharmony_ci};
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci&hdmi0 {
4362306a36Sopenharmony_ci	ports {
4462306a36Sopenharmony_ci		port@2 {
4562306a36Sopenharmony_ci			/*
4662306a36Sopenharmony_ci			 * (B) CPU1 -> HDMI
4762306a36Sopenharmony_ci			 */
4862306a36Sopenharmony_ci			dw_hdmi0_snd_in: endpoint {
4962306a36Sopenharmony_ci				remote-endpoint = <&rsnd_for_hdmi>;
5062306a36Sopenharmony_ci			};
5162306a36Sopenharmony_ci		};
5262306a36Sopenharmony_ci	};
5362306a36Sopenharmony_ci};
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci&rcar_sound {
5662306a36Sopenharmony_ci	ports {
5762306a36Sopenharmony_ci		#address-cells = <1>;
5862306a36Sopenharmony_ci		#size-cells = <0>;
5962306a36Sopenharmony_ci		rsnd_port0: port@0 {
6062306a36Sopenharmony_ci			/*
6162306a36Sopenharmony_ci			 * (A) CPU0 <-> ak4613
6262306a36Sopenharmony_ci			 */
6362306a36Sopenharmony_ci			reg = <0>;
6462306a36Sopenharmony_ci			rsnd_for_ak4613: endpoint {
6562306a36Sopenharmony_ci				remote-endpoint = <&ak4613_endpoint>;
6662306a36Sopenharmony_ci				bitclock-master;
6762306a36Sopenharmony_ci				frame-master;
6862306a36Sopenharmony_ci				playback = <&ssi0>, <&src0>, <&dvc0>;
6962306a36Sopenharmony_ci				capture  = <&ssi1>, <&src1>, <&dvc1>;
7062306a36Sopenharmony_ci			};
7162306a36Sopenharmony_ci		};
7262306a36Sopenharmony_ci		rsnd_port1: port@1 {
7362306a36Sopenharmony_ci			/*
7462306a36Sopenharmony_ci			 * (B) CPU1 -> HDMI
7562306a36Sopenharmony_ci			 */
7662306a36Sopenharmony_ci			reg = <1>;
7762306a36Sopenharmony_ci			rsnd_for_hdmi: endpoint {
7862306a36Sopenharmony_ci				remote-endpoint = <&dw_hdmi0_snd_in>;
7962306a36Sopenharmony_ci				bitclock-master;
8062306a36Sopenharmony_ci				frame-master;
8162306a36Sopenharmony_ci				playback = <&ssi2>;
8262306a36Sopenharmony_ci			};
8362306a36Sopenharmony_ci		};
8462306a36Sopenharmony_ci	};
8562306a36Sopenharmony_ci};
86