1Renesas R-Car sound
2
3Required properties:
4- compatible			: "renesas,rcar_sound-gen1" if generation1
5				  "renesas,rcar_sound-gen2" if generation2
6- reg				: Should contain the register physical address.
7				  required register is
8				   SRU/ADG/SSI      if generation1
9				   SRU/ADG/SSIU/SSI if generation2
10- rcar_sound,ssi		: Should contain SSI feature.
11				  The number of SSI subnode should be same as HW.
12				  see below for detail.
13- rcar_sound,src		: Should contain SRC feature.
14				  The number of SRC subnode should be same as HW.
15				  see below for detail.
16- rcar_sound,dvc		: Should contain DVC feature.
17				  The number of DVC subnode should be same as HW.
18				  see below for detail.
19- rcar_sound,dai		: DAI contents.
20				  The number of DAI subnode should be same as HW.
21				  see below for detail.
22
23SSI subnode properties:
24- interrupts			: Should contain SSI interrupt for PIO transfer
25- shared-pin			: if shared clock pin
26- pio-transfer			: use PIO transfer mode
27- no-busif			: BUSIF is not ussed when [mem -> SSI] via DMA case
28
29SRC subnode properties:
30no properties at this point
31
32DAI subnode properties:
33- playback			: list of playback modules
34- capture			: list of capture  modules
35
36Example:
37
38rcar_sound: rcar_sound@0xffd90000 {
39	#sound-dai-cells = <1>;
40	compatible = "renesas,rcar_sound-gen2";
41	reg =	<0 0xec500000 0 0x1000>, /* SCU */
42		<0 0xec5a0000 0 0x100>,  /* ADG */
43		<0 0xec540000 0 0x1000>, /* SSIU */
44		<0 0xec541000 0 0x1280>; /* SSI */
45
46	rcar_sound,dvc {
47		dvc0: dvc@0 { };
48		dvc1: dvc@1 { };
49	};
50
51	rcar_sound,src {
52		src0: src@0 { };
53		src1: src@1 { };
54		src2: src@2 { };
55		src3: src@3 { };
56		src4: src@4 { };
57		src5: src@5 { };
58		src6: src@6 { };
59		src7: src@7 { };
60		src8: src@8 { };
61		src9: src@9 { };
62	};
63
64	rcar_sound,ssi {
65		ssi0: ssi@0 {
66			interrupts = <0 370 IRQ_TYPE_LEVEL_HIGH>;
67		};
68		ssi1: ssi@1 {
69			interrupts = <0 371 IRQ_TYPE_LEVEL_HIGH>;
70		};
71		ssi2: ssi@2 {
72			interrupts = <0 372 IRQ_TYPE_LEVEL_HIGH>;
73		};
74		ssi3: ssi@3 {
75			interrupts = <0 373 IRQ_TYPE_LEVEL_HIGH>;
76		};
77		ssi4: ssi@4 {
78			interrupts = <0 374 IRQ_TYPE_LEVEL_HIGH>;
79		};
80		ssi5: ssi@5 {
81			interrupts = <0 375 IRQ_TYPE_LEVEL_HIGH>;
82		};
83		ssi6: ssi@6 {
84			interrupts = <0 376 IRQ_TYPE_LEVEL_HIGH>;
85		};
86		ssi7: ssi@7 {
87			interrupts = <0 377 IRQ_TYPE_LEVEL_HIGH>;
88		};
89		ssi8: ssi@8 {
90			interrupts = <0 378 IRQ_TYPE_LEVEL_HIGH>;
91		};
92		ssi9: ssi@9 {
93			interrupts = <0 379 IRQ_TYPE_LEVEL_HIGH>;
94		};
95	};
96
97	rcar_sound,dai {
98		dai0 {
99			playback = <&ssi5 &src5>;
100			capture  = <&ssi6>;
101		};
102		dai1 {
103			playback = <&ssi3>;
104		};
105		dai2 {
106			capture  = <&ssi4>;
107		};
108		dai3 {
109			playback = <&ssi7>;
110		};
111		dai4 {
112			capture  = <&ssi8>;
113		};
114	};
115};
116