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