Commit | Line | Data |
---|---|---|
90e8e50f KM |
1 | Renesas R-Car sound |
2 | ||
3 | Required 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 | |
8bab0dd5 KM |
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. | |
34cb6123 KM |
16 | - rcar_sound,dvc : Should contain DVC feature. |
17 | The number of DVC subnode should be same as HW. | |
18 | see below for detail. | |
8bab0dd5 KM |
19 | - rcar_sound,dai : DAI contents. |
20 | The number of DAI subnode should be same as HW. | |
21 | see below for detail. | |
90e8e50f KM |
22 | |
23 | SSI subnode properties: | |
24 | - interrupts : Should contain SSI interrupt for PIO transfer | |
25 | - shared-pin : if shared clock pin | |
199e7688 | 26 | - pio-transfer : use PIO transfer mode |
d9288d0b | 27 | - no-busif : BUSIF is not ussed when [mem -> SSI] via DMA case |
90e8e50f | 28 | |
8bab0dd5 KM |
29 | SRC subnode properties: |
30 | no properties at this point | |
31 | ||
90e8e50f KM |
32 | DAI subnode properties: |
33 | - playback : list of playback modules | |
34 | - capture : list of capture modules | |
35 | ||
36 | Example: | |
37 | ||
38 | rcar_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 | ||
34cb6123 KM |
46 | rcar_sound,dvc { |
47 | dvc0: dvc@0 { }; | |
48 | dvc1: dvc@1 { }; | |
49 | }; | |
50 | ||
90e8e50f KM |
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 | }; |