xref: /linux/arch/arm64/boot/dts/renesas/ulcb-kf-simple-audio-card.dtsi (revision d6296cb65320be16dbf20f2fd584ddc25f3437cd)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree for ULCB + Kingfisher + Simple Audio Card
4 *
5 * Copyright (C) 2022 Renesas Electronics Corp.
6 */
7
8/*
9 *	(A) CPU0 <----> ak4613
10 *	(B) CPU1  ----> HDMI
11 *	(C) CPU2  ----> PCM3168A-p
12 *	(D) CPU3 <----  PCM3168A-c
13 *
14 *	(A) aplay   -D plughw:0,0 xxx.wav
15 *	(B) aplay   -D plughw:0,1 xxx.wav
16 *	(C) aplay   -D plughw:0,2 xxx.wav
17 *
18 *	(A) arecord -D plughw:0,0 xxx.wav
19 *	(D) arecord -D plughw:0,3 xxx.wav
20 */
21
22&sound_card {
23	/* dai-link@0/1 are defined in ulcb.dtsi */
24
25	/*
26	 * (C) CPU2 -> PCM3168A-p
27	 */
28	simple-audio-card,dai-link@2 {
29		reg = <2>;
30		cpu {
31			bitclock-master;
32			frame-master;
33			dai-tdm-slot-num = <8>;
34			sound-dai = <&rcar_sound 2>;
35		};
36		codec {
37			mclk-fs = <512>;
38			sound-dai = <&pcm3168a 0>;
39		};
40	};
41	/*
42	 * (D) CPU3 <- PCM3168A-c
43	 */
44	simple-audio-card,dai-link@3 {
45		reg = <3>;
46		cpu {
47			bitclock-master;
48			frame-master;
49			dai-tdm-slot-num = <6>;
50			sound-dai = <&rcar_sound 3>;
51		};
52		codec {
53			mclk-fs = <512>;
54			sound-dai = <&pcm3168a 1>;
55		};
56	};
57};
58
59&pcm3168a {
60	/*
61	 * (C) CPU2 -> PCM3168A-p
62	 * (D) CPU3 <- PCM3168A-c
63	 */
64	#sound-dai-cells = <1>;
65};
66
67&rcar_sound {
68
69	rcar_sound,dai {
70		/* dai0-1 are defined in ulcb.dtsi */
71
72		/*
73		 * (C) CPU2 -> PCM3168A-p
74		 */
75		dai2 {
76			playback = <&ssi3>;
77		};
78		/*
79		 * (D) CPU3 <- PCM3168A-c
80		 */
81		dai3 {
82			capture = <&ssi4>;
83		};
84	};
85};
86