Merge branch 'for-3.17/drivers' of git://git.kernel.dk/linux-block
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / sh73a0.dtsi
1 /*
2  * Device Tree Source for the SH73A0 SoC
3  *
4  * Copyright (C) 2012 Renesas Solutions Corp.
5  *
6  * This file is licensed under the terms of the GNU General Public License
7  * version 2.  This program is licensed "as is" without any warranty of any
8  * kind, whether express or implied.
9  */
10
11 /include/ "skeleton.dtsi"
12
13 #include <dt-bindings/interrupt-controller/irq.h>
14
15 / {
16         compatible = "renesas,sh73a0";
17
18         cpus {
19                 #address-cells = <1>;
20                 #size-cells = <0>;
21
22                 cpu@0 {
23                         device_type = "cpu";
24                         compatible = "arm,cortex-a9";
25                         reg = <0>;
26                 };
27                 cpu@1 {
28                         device_type = "cpu";
29                         compatible = "arm,cortex-a9";
30                         reg = <1>;
31                 };
32         };
33
34         gic: interrupt-controller@f0001000 {
35                 compatible = "arm,cortex-a9-gic";
36                 #interrupt-cells = <3>;
37                 interrupt-controller;
38                 reg = <0xf0001000 0x1000>,
39                       <0xf0000100 0x100>;
40         };
41
42         pmu {
43                 compatible = "arm,cortex-a9-pmu";
44                 interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>,
45                              <0 56 IRQ_TYPE_LEVEL_HIGH>;
46         };
47
48         irqpin0: irqpin@e6900000 {
49                 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
50                 #interrupt-cells = <2>;
51                 interrupt-controller;
52                 reg = <0xe6900000 4>,
53                         <0xe6900010 4>,
54                         <0xe6900020 1>,
55                         <0xe6900040 1>,
56                         <0xe6900060 1>;
57                 interrupt-parent = <&gic>;
58                 interrupts = <0 1 IRQ_TYPE_LEVEL_HIGH
59                               0 2 IRQ_TYPE_LEVEL_HIGH
60                               0 3 IRQ_TYPE_LEVEL_HIGH
61                               0 4 IRQ_TYPE_LEVEL_HIGH
62                               0 5 IRQ_TYPE_LEVEL_HIGH
63                               0 6 IRQ_TYPE_LEVEL_HIGH
64                               0 7 IRQ_TYPE_LEVEL_HIGH
65                               0 8 IRQ_TYPE_LEVEL_HIGH>;
66         };
67
68         irqpin1: irqpin@e6900004 {
69                 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
70                 #interrupt-cells = <2>;
71                 interrupt-controller;
72                 reg = <0xe6900004 4>,
73                         <0xe6900014 4>,
74                         <0xe6900024 1>,
75                         <0xe6900044 1>,
76                         <0xe6900064 1>;
77                 interrupt-parent = <&gic>;
78                 interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH
79                               0 10 IRQ_TYPE_LEVEL_HIGH
80                               0 11 IRQ_TYPE_LEVEL_HIGH
81                               0 12 IRQ_TYPE_LEVEL_HIGH
82                               0 13 IRQ_TYPE_LEVEL_HIGH
83                               0 14 IRQ_TYPE_LEVEL_HIGH
84                               0 15 IRQ_TYPE_LEVEL_HIGH
85                               0 16 IRQ_TYPE_LEVEL_HIGH>;
86                 control-parent;
87         };
88
89         irqpin2: irqpin@e6900008 {
90                 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
91                 #interrupt-cells = <2>;
92                 interrupt-controller;
93                 reg = <0xe6900008 4>,
94                         <0xe6900018 4>,
95                         <0xe6900028 1>,
96                         <0xe6900048 1>,
97                         <0xe6900068 1>;
98                 interrupt-parent = <&gic>;
99                 interrupts = <0 17 IRQ_TYPE_LEVEL_HIGH
100                               0 18 IRQ_TYPE_LEVEL_HIGH
101                               0 19 IRQ_TYPE_LEVEL_HIGH
102                               0 20 IRQ_TYPE_LEVEL_HIGH
103                               0 21 IRQ_TYPE_LEVEL_HIGH
104                               0 22 IRQ_TYPE_LEVEL_HIGH
105                               0 23 IRQ_TYPE_LEVEL_HIGH
106                               0 24 IRQ_TYPE_LEVEL_HIGH>;
107         };
108
109         irqpin3: irqpin@e690000c {
110                 compatible = "renesas,intc-irqpin-sh73a0", "renesas,intc-irqpin";
111                 #interrupt-cells = <2>;
112                 interrupt-controller;
113                 reg = <0xe690000c 4>,
114                         <0xe690001c 4>,
115                         <0xe690002c 1>,
116                         <0xe690004c 1>,
117                         <0xe690006c 1>;
118                 interrupt-parent = <&gic>;
119                 interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH
120                               0 26 IRQ_TYPE_LEVEL_HIGH
121                               0 27 IRQ_TYPE_LEVEL_HIGH
122                               0 28 IRQ_TYPE_LEVEL_HIGH
123                               0 29 IRQ_TYPE_LEVEL_HIGH
124                               0 30 IRQ_TYPE_LEVEL_HIGH
125                               0 31 IRQ_TYPE_LEVEL_HIGH
126                               0 32 IRQ_TYPE_LEVEL_HIGH>;
127         };
128
129         i2c0: i2c@e6820000 {
130                 #address-cells = <1>;
131                 #size-cells = <0>;
132                 compatible = "renesas,rmobile-iic";
133                 reg = <0xe6820000 0x425>;
134                 interrupt-parent = <&gic>;
135                 interrupts = <0 167 IRQ_TYPE_LEVEL_HIGH
136                               0 168 IRQ_TYPE_LEVEL_HIGH
137                               0 169 IRQ_TYPE_LEVEL_HIGH
138                               0 170 IRQ_TYPE_LEVEL_HIGH>;
139                 status = "disabled";
140         };
141
142         i2c1: i2c@e6822000 {
143                 #address-cells = <1>;
144                 #size-cells = <0>;
145                 compatible = "renesas,rmobile-iic";
146                 reg = <0xe6822000 0x425>;
147                 interrupt-parent = <&gic>;
148                 interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH
149                               0 52 IRQ_TYPE_LEVEL_HIGH
150                               0 53 IRQ_TYPE_LEVEL_HIGH
151                               0 54 IRQ_TYPE_LEVEL_HIGH>;
152                 status = "disabled";
153         };
154
155         i2c2: i2c@e6824000 {
156                 #address-cells = <1>;
157                 #size-cells = <0>;
158                 compatible = "renesas,rmobile-iic";
159                 reg = <0xe6824000 0x425>;
160                 interrupt-parent = <&gic>;
161                 interrupts = <0 171 IRQ_TYPE_LEVEL_HIGH
162                               0 172 IRQ_TYPE_LEVEL_HIGH
163                               0 173 IRQ_TYPE_LEVEL_HIGH
164                               0 174 IRQ_TYPE_LEVEL_HIGH>;
165                 status = "disabled";
166         };
167
168         i2c3: i2c@e6826000 {
169                 #address-cells = <1>;
170                 #size-cells = <0>;
171                 compatible = "renesas,rmobile-iic";
172                 reg = <0xe6826000 0x425>;
173                 interrupt-parent = <&gic>;
174                 interrupts = <0 183 IRQ_TYPE_LEVEL_HIGH
175                               0 184 IRQ_TYPE_LEVEL_HIGH
176                               0 185 IRQ_TYPE_LEVEL_HIGH
177                               0 186 IRQ_TYPE_LEVEL_HIGH>;
178                 status = "disabled";
179         };
180
181         i2c4: i2c@e6828000 {
182                 #address-cells = <1>;
183                 #size-cells = <0>;
184                 compatible = "renesas,rmobile-iic";
185                 reg = <0xe6828000 0x425>;
186                 interrupt-parent = <&gic>;
187                 interrupts = <0 187 IRQ_TYPE_LEVEL_HIGH
188                               0 188 IRQ_TYPE_LEVEL_HIGH
189                               0 189 IRQ_TYPE_LEVEL_HIGH
190                               0 190 IRQ_TYPE_LEVEL_HIGH>;
191                 status = "disabled";
192         };
193
194         mmcif: mmc@e6bd0000 {
195                 compatible = "renesas,sh-mmcif";
196                 reg = <0xe6bd0000 0x100>;
197                 interrupt-parent = <&gic>;
198                 interrupts = <0 140 IRQ_TYPE_LEVEL_HIGH
199                               0 141 IRQ_TYPE_LEVEL_HIGH>;
200                 reg-io-width = <4>;
201                 status = "disabled";
202         };
203
204         sdhi0: sd@ee100000 {
205                 compatible = "renesas,sdhi-sh73a0";
206                 reg = <0xee100000 0x100>;
207                 interrupt-parent = <&gic>;
208                 interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH
209                               0 84 IRQ_TYPE_LEVEL_HIGH
210                               0 85 IRQ_TYPE_LEVEL_HIGH>;
211                 cap-sd-highspeed;
212                 status = "disabled";
213         };
214
215         /* SDHI1 and SDHI2 have no CD pins, no need for CD IRQ */
216         sdhi1: sd@ee120000 {
217                 compatible = "renesas,sdhi-sh73a0";
218                 reg = <0xee120000 0x100>;
219                 interrupt-parent = <&gic>;
220                 interrupts = <0 88 IRQ_TYPE_LEVEL_HIGH
221                               0 89 IRQ_TYPE_LEVEL_HIGH>;
222                 toshiba,mmc-wrprotect-disable;
223                 cap-sd-highspeed;
224                 status = "disabled";
225         };
226
227         sdhi2: sd@ee140000 {
228                 compatible = "renesas,sdhi-sh73a0";
229                 reg = <0xee140000 0x100>;
230                 interrupt-parent = <&gic>;
231                 interrupts = <0 104 IRQ_TYPE_LEVEL_HIGH
232                               0 105 IRQ_TYPE_LEVEL_HIGH>;
233                 toshiba,mmc-wrprotect-disable;
234                 cap-sd-highspeed;
235                 status = "disabled";
236         };
237
238         scifa0: serial@e6c40000 {
239                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
240                 reg = <0xe6c40000 0x100>;
241                 interrupt-parent = <&gic>;
242                 interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>;
243                 status = "disabled";
244         };
245
246         scifa1: serial@e6c50000 {
247                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
248                 reg = <0xe6c50000 0x100>;
249                 interrupt-parent = <&gic>;
250                 interrupts = <0 73 IRQ_TYPE_LEVEL_HIGH>;
251                 status = "disabled";
252         };
253
254         scifa2: serial@e6c60000 {
255                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
256                 reg = <0xe6c60000 0x100>;
257                 interrupt-parent = <&gic>;
258                 interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>;
259                 status = "disabled";
260         };
261
262         scifa3: serial@e6c70000 {
263                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
264                 reg = <0xe6c70000 0x100>;
265                 interrupt-parent = <&gic>;
266                 interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>;
267                 status = "disabled";
268         };
269
270         scifa4: serial@e6c80000 {
271                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
272                 reg = <0xe6c80000 0x100>;
273                 interrupt-parent = <&gic>;
274                 interrupts = <0 78 IRQ_TYPE_LEVEL_HIGH>;
275                 status = "disabled";
276         };
277
278         scifa5: serial@e6cb0000 {
279                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
280                 reg = <0xe6cb0000 0x100>;
281                 interrupt-parent = <&gic>;
282                 interrupts = <0 79 IRQ_TYPE_LEVEL_HIGH>;
283                 status = "disabled";
284         };
285
286         scifa6: serial@e6cc0000 {
287                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
288                 reg = <0xe6cc0000 0x100>;
289                 interrupt-parent = <&gic>;
290                 interrupts = <0 156 IRQ_TYPE_LEVEL_HIGH>;
291                 status = "disabled";
292         };
293
294         scifa7: serial@e6cd0000 {
295                 compatible = "renesas,scifa-sh73a0", "renesas,scifa";
296                 reg = <0xe6cd0000 0x100>;
297                 interrupt-parent = <&gic>;
298                 interrupts = <0 143 IRQ_TYPE_LEVEL_HIGH>;
299                 status = "disabled";
300         };
301
302         scifb8: serial@e6c30000 {
303                 compatible = "renesas,scifb-sh73a0", "renesas,scifb";
304                 reg = <0xe6c30000 0x100>;
305                 interrupt-parent = <&gic>;
306                 interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
307                 status = "disabled";
308         };
309
310         pfc: pfc@e6050000 {
311                 compatible = "renesas,pfc-sh73a0";
312                 reg = <0xe6050000 0x8000>,
313                       <0xe605801c 0x1c>;
314                 gpio-controller;
315                 #gpio-cells = <2>;
316                 interrupts-extended =
317                         <&irqpin0 0 0>, <&irqpin0 1 0>, <&irqpin0 2 0>, <&irqpin0 3 0>,
318                         <&irqpin0 4 0>, <&irqpin0 5 0>, <&irqpin0 6 0>, <&irqpin0 7 0>,
319                         <&irqpin1 0 0>, <&irqpin1 1 0>, <&irqpin1 2 0>, <&irqpin1 3 0>,
320                         <&irqpin1 4 0>, <&irqpin1 5 0>, <&irqpin1 6 0>, <&irqpin1 7 0>,
321                         <&irqpin2 0 0>, <&irqpin2 1 0>, <&irqpin2 2 0>, <&irqpin2 3 0>,
322                         <&irqpin2 4 0>, <&irqpin2 5 0>, <&irqpin2 6 0>, <&irqpin2 7 0>,
323                         <&irqpin3 0 0>, <&irqpin3 1 0>, <&irqpin3 2 0>, <&irqpin3 3 0>,
324                         <&irqpin3 4 0>, <&irqpin3 5 0>, <&irqpin3 6 0>, <&irqpin3 7 0>;
325         };
326
327         sh_fsi2: sound@ec230000 {
328                 #sound-dai-cells = <1>;
329                 compatible = "renesas,sh_fsi2";
330                 reg = <0xec230000 0x400>;
331                 interrupt-parent = <&gic>;
332                 interrupts = <0 146 0x4>;
333                 status = "disabled";
334         };
335 };