4d2d66dbda5d6a2e0a41c6691fed286b7062918a
[cascardo/linux.git] / arch / arm / boot / dts / exynos5250.dtsi
1 /*
2  * SAMSUNG EXYNOS5250 SoC device tree source
3  *
4  * Copyright (c) 2012 Samsung Electronics Co., Ltd.
5  *              http://www.samsung.com
6  *
7  * SAMSUNG EXYNOS5250 SoC device nodes are listed in this file.
8  * EXYNOS5250 based board files can include this file and provide
9  * values for board specfic bindings.
10  *
11  * Note: This file does not include device nodes for all the controllers in
12  * EXYNOS5250 SoC. As device tree coverage for EXYNOS5250 increases,
13  * additional nodes can be added to this file.
14  *
15  * This program is free software; you can redistribute it and/or modify
16  * it under the terms of the GNU General Public License version 2 as
17  * published by the Free Software Foundation.
18 */
19
20 /include/ "skeleton.dtsi"
21
22 / {
23         compatible = "samsung,exynos5250";
24         interrupt-parent = <&gic>;
25
26         aliases {
27                 mshc0 = &mshc_0;
28                 mshc1 = &mshc_1;
29                 mshc2 = &mshc_2;
30                 mshc3 = &mshc_3;
31                 sysmmu2 = &sysmmu_2;
32                 sysmmu3 = &sysmmu_3;
33                 sysmmu4 = &sysmmu_4;
34                 sysmmu27 = &sysmmu_27;
35                 sysmmu28 = &sysmmu_28;
36                 sysmmu23 = &sysmmu_23;
37                 sysmmu24 = &sysmmu_24;
38                 sysmmu25 = &sysmmu_25;
39                 sysmmu26 = &sysmmu_26;
40                 gsc0 = &gsc_0;
41                 gsc1 = &gsc_1;
42                 gsc2 = &gsc_2;
43                 gsc3 = &gsc_3;
44                 i2s0 = &i2s_0;
45         };
46
47         gic:interrupt-controller@10481000 {
48                 compatible = "arm,cortex-a9-gic";
49                 #interrupt-cells = <3>;
50                 #address-cells = <0>;
51                 #size-cells = <0>;
52                 interrupt-controller;
53                 reg = <0x10481000 0x1000>, <0x10482000 0x2000>;
54         };
55
56         combiner:interrupt-controller@10440000 {
57                 compatible = "samsung,exynos4210-combiner";
58                 #interrupt-cells = <2>;
59                 interrupt-controller;
60                 samsung,combiner-nr = <32>;
61                 reg = <0x10440000 0x1000>;
62                 interrupts = <0 0 0>, <0 1 0>, <0 2 0>, <0 3 0>,
63                              <0 4 0>, <0 5 0>, <0 6 0>, <0 7 0>,
64                              <0 8 0>, <0 9 0>, <0 10 0>, <0 11 0>,
65                              <0 12 0>, <0 13 0>, <0 14 0>, <0 15 0>,
66                              <0 16 0>, <0 17 0>, <0 18 0>, <0 19 0>,
67                              <0 20 0>, <0 21 0>, <0 22 0>, <0 23 0>,
68                              <0 24 0>, <0 25 0>, <0 26 0>, <0 27 0>,
69                              <0 28 0>, <0 29 0>, <0 30 0>, <0 31 0>;
70         };
71
72         wakeup_eint: interrupt-controller@11400000 {
73                 compatible = "samsung,exynos5210-wakeup-eint";
74                 reg = <0x11400000 0x1000>;
75                 interrupt-controller;
76                 #interrupt-cells = <2>;
77                 interrupt-parent = <&wakeup_map>;
78                 interrupts = <0x0 0>, <0x1 0>, <0x2 0>, <0x3 0>,
79                              <0x4 0>, <0x5 0>, <0x6 0>, <0x7 0>,
80                              <0x8 0>, <0x9 0>, <0xa 0>, <0xb 0>,
81                              <0xc 0>, <0xd 0>, <0xe 0>, <0xf 0>,
82                              <0x10 0>;
83
84                 wakeup_map: interrupt-map {
85                         compatible = "samsung,exynos5210-wakeup-eint-map";
86                         #interrupt-cells = <2>;
87                         #address-cells = <0>;
88                         #size-cells = <0>;
89                         interrupt-map = <0x0 0 &combiner 23 0>,
90                                         <0x1 0 &combiner 24 0>,
91                                         <0x2 0 &combiner 25 0>,
92                                         <0x3 0 &combiner 25 1>,
93                                         <0x4 0 &combiner 26 0>,
94                                         <0x5 0 &combiner 26 1>,
95                                         <0x6 0 &combiner 27 0>,
96                                         <0x7 0 &combiner 27 1>,
97                                         <0x8 0 &combiner 28 0>,
98                                         <0x9 0 &combiner 28 1>,
99                                         <0xa 0 &combiner 29 0>,
100                                         <0xb 0 &combiner 29 1>,
101                                         <0xc 0 &combiner 30 0>,
102                                         <0xd 0 &combiner 30 1>,
103                                         <0xe 0 &combiner 31 0>,
104                                         <0xf 0 &combiner 31 1>,
105                                         <0x10 0 &gic 0 32 0>;
106                 };
107         };
108
109         watchdog {
110                 compatible = "samsung,s3c2410-wdt";
111                 reg = <0x101D0000 0x100>;
112                 interrupts = <0 42 0>;
113         };
114
115         mfc {
116                 compatible = "samsung,s5p-mfc-v6";
117                 reg = <0x11000000 0x10000>;
118                 interrupts = <0 96 0>;
119                 sysmmu_l = <&sysmmu_3>;
120                 sysmmu_r = <&sysmmu_4>;
121         };
122
123         ohci {
124                 compatible = "samsung,exynos-ohci";
125                 reg = <0x12120000 0x100>;
126                 interrupts = <0 71 0>;
127         };
128
129         ehci {
130                 compatible = "samsung,exynos-ehci";
131                 reg = <0x12110000 0x100>;
132                 interrupts = <0 71 0>;
133         };
134
135         xhci {
136                 compatible = "samsung,exynos-xhci";
137                 reg = <0x12000000 0x10000>;
138                 interrupts = <0 72 0>;
139         };
140
141         rtc {
142                 compatible = "samsung,s3c6410-rtc";
143                 reg = <0x101E0000 0x100>;
144                 interrupts = <0 43 0>, <0 44 0>;
145         };
146
147         serial@12C00000 {
148                 compatible = "samsung,exynos4210-uart";
149                 reg = <0x12C00000 0x100>;
150                 interrupts = <0 51 0>;
151         };
152
153         serial@12C10000 {
154                 compatible = "samsung,exynos4210-uart";
155                 reg = <0x12C10000 0x100>;
156                 interrupts = <0 52 0>;
157         };
158
159         serial@12C20000 {
160                 compatible = "samsung,exynos4210-uart";
161                 reg = <0x12C20000 0x100>;
162                 interrupts = <0 53 0>;
163         };
164
165         serial@12C30000 {
166                 compatible = "samsung,exynos4210-uart";
167                 reg = <0x12C30000 0x100>;
168                 interrupts = <0 54 0>;
169         };
170
171         i2c@12C60000 {
172                 compatible = "samsung,s3c2440-i2c";
173                 reg = <0x12C60000 0x100>;
174                 interrupts = <0 56 0>;
175         };
176
177         i2c@12C70000 {
178                 compatible = "samsung,s3c2440-i2c";
179                 reg = <0x12C70000 0x100>;
180                 interrupts = <0 57 0>;
181         };
182
183         i2c@12C80000 {
184                 compatible = "samsung,s3c2440-i2c";
185                 reg = <0x12C80000 0x100>;
186                 interrupts = <0 58 0>;
187         };
188
189         i2c@12C90000 {
190                 compatible = "samsung,s3c2440-i2c";
191                 reg = <0x12C90000 0x100>;
192                 interrupts = <0 59 0>;
193         };
194
195         i2c@12CA0000 {
196                 compatible = "samsung,s3c2440-i2c";
197                 reg = <0x12CA0000 0x100>;
198                 interrupts = <0 60 0>;
199         };
200
201         i2c@12CB0000 {
202                 compatible = "samsung,s3c2440-i2c";
203                 reg = <0x12CB0000 0x100>;
204                 interrupts = <0 61 0>;
205         };
206
207         i2c@12CC0000 {
208                 compatible = "samsung,s3c2440-i2c";
209                 reg = <0x12CC0000 0x100>;
210                 interrupts = <0 62 0>;
211         };
212
213         i2c@12CD0000 {
214                 compatible = "samsung,s3c2440-i2c";
215                 reg = <0x12CD0000 0x100>;
216                 interrupts = <0 63 0>;
217         };
218
219         i2c@12CE0000 {
220                 compatible = "samsung,s3c2440-hdmiphy-i2c";
221                 reg = <0x12CE0000 0x1000>;
222                 interrupts = <0 64 0>;
223         };
224
225         sysmmu_2: sysmmu@0x10A60000 {
226                 compatible = "samsung,s5p-sysmmu";
227                 reg = <0x10A60000 0x100>;
228                 interrupts = <24 5>;
229                 interrupt-parent = <&combiner>;
230         };
231
232         sysmmu_3: sysmmu@0x11210000 {
233                 compatible = "samsung,s5p-sysmmu";
234                 reg = <0x11210000 0x100>;
235                 interrupts = <8 5>;
236                 interrupt-parent = <&combiner>;
237         };
238
239         sysmmu_4: sysmmu@0x11200000 {
240                 compatible = "samsung,s5p-sysmmu";
241                 reg = <0x11200000 0x100>;
242                 interrupts = <6 2>;
243                 interrupt-parent = <&combiner>;
244         };
245
246         sysmmu_27: sysmmu@0x14640000 {
247                 compatible = "samsung,s5p-sysmmu";
248                 reg = <0x14640000 0x100>;
249                 interrupts = <3 2>;
250                 interrupt-parent = <&combiner>;
251         };
252
253         sysmmu_28: sysmmu@0x14650000 {
254                 compatible = "samsung,s5p-sysmmu";
255                 reg = <0x14650000 0x100>;
256                 interrupts = <7 4>;
257                 interrupt-parent = <&combiner>;
258         };
259
260         sysmmu_23: sysmmu@0x13E80000 {
261                 compatible = "samsung,s5p-sysmmu";
262                 reg = <0x13E80000 0x100>;
263                 interrupts = <2 0>;
264                 interrupt-parent = <&combiner>;
265         };
266
267         sysmmu_24: sysmmu@0x13E90000 {
268                 compatible = "samsung,s5p-sysmmu";
269                 reg = <0x13E90000 0x100>;
270                 interrupts = <2 2>;
271                 interrupt-parent = <&combiner>;
272         };
273
274         sysmmu_25: sysmmu@0x13EA0000 {
275                 compatible = "samsung,s5p-sysmmu";
276                 reg = <0x13EA0000 0x100>;
277                 interrupts = <2 4>;
278                 interrupt-parent = <&combiner>;
279         };
280
281         sysmmu_26: sysmmu@0x13EB0000 {
282                 compatible = "samsung,s5p-sysmmu";
283                 reg = <0x13EB0000 0x100>;
284                 interrupts = <2 6>;
285                 interrupt-parent = <&combiner>;
286         };
287
288         mshc_0: dwmmc0@12200000 {
289                 compatible = "synopsis,dw-mshc-exynos5250";
290                 reg = <0x12200000 0x1000>;
291                 interrupts = <0 75 0>;
292         };
293
294         mshc_1: dwmmc1@12210000 {
295                 compatible = "synopsis,dw-mshc-exynos5250";
296                 reg = <0x12210000 0x1000>;
297                 interrupts = <0 76 0>;
298         };
299
300         mshc_2: dwmmc2@12220000 {
301                 compatible = "synopsis,dw-mshc-exynos5250";
302                 reg = <0x12220000 0x1000>;
303                 interrupts = <0 77 0>;
304         };
305
306         mshc_3: dwmmc3@12230000 {
307                 compatible = "synopsis,dw-mshc-exynos5250";
308                 reg = <0x12230000 0x1000>;
309                 interrupts = <0 78 0>;
310         };
311
312         i2s_0: i2s@03830000 {
313                 compatible = "samsung,i2s";
314                 reg = <0x03830000 0x100>;
315                 tx-dma-channel-secondary = <&pdma0 8>;
316                 tx-dma-channel = <&pdma0 10>;
317                 rx-dma-channel = <&pdma0 9>;
318         };
319
320         amba {
321                 #address-cells = <1>;
322                 #size-cells = <1>;
323                 compatible = "arm,amba-bus";
324                 interrupt-parent = <&gic>;
325                 ranges;
326
327                 pdma0: pdma@121A0000 {
328                         compatible = "arm,pl330", "arm,primecell";
329                         reg = <0x121A0000 0x1000>;
330                         interrupts = <0 34 0>;
331                 };
332
333                 pdma1: pdma@121B0000 {
334                         compatible = "arm,pl330", "arm,primecell";
335                         reg = <0x121B0000 0x1000>;
336                         interrupts = <0 35 0>;
337                 };
338
339                 mdma0: mdma@10800000 {
340                         compatible = "arm,pl330", "arm,primecell";
341                         reg = <0x10800000 0x1000>;
342                         interrupts = <0 33 0>;
343                 };
344
345                 mdma1: mdma@11C10000 {
346                         compatible = "arm,pl330", "arm,primecell";
347                         reg = <0x11C10000 0x1000>;
348                         interrupts = <0 124 0>;
349                 };
350         };
351
352         gpio-controllers {
353                 #address-cells = <1>;
354                 #size-cells = <1>;
355                 gpio-controller;
356                 ranges;
357
358                 gpa0: gpio-controller@11400000 {
359                         compatible = "samsung,exynos4-gpio";
360                         reg = <0x11400000 0x20>;
361                         #gpio-cells = <4>;
362                 };
363
364                 gpa1: gpio-controller@11400020 {
365                         compatible = "samsung,exynos4-gpio";
366                         reg = <0x11400020 0x20>;
367                         #gpio-cells = <4>;
368                 };
369
370                 gpa2: gpio-controller@11400040 {
371                         compatible = "samsung,exynos4-gpio";
372                         reg = <0x11400040 0x20>;
373                         #gpio-cells = <4>;
374                 };
375
376                 gpb0: gpio-controller@11400060 {
377                         compatible = "samsung,exynos4-gpio";
378                         reg = <0x11400060 0x20>;
379                         #gpio-cells = <4>;
380                 };
381
382                 gpb1: gpio-controller@11400080 {
383                         compatible = "samsung,exynos4-gpio";
384                         reg = <0x11400080 0x20>;
385                         #gpio-cells = <4>;
386                 };
387
388                 gpb2: gpio-controller@114000A0 {
389                         compatible = "samsung,exynos4-gpio";
390                         reg = <0x114000A0 0x20>;
391                         #gpio-cells = <4>;
392                 };
393
394                 gpb3: gpio-controller@114000C0 {
395                         compatible = "samsung,exynos4-gpio";
396                         reg = <0x114000C0 0x20>;
397                         #gpio-cells = <4>;
398                 };
399
400                 gpc0: gpio-controller@114000E0 {
401                         compatible = "samsung,exynos4-gpio";
402                         reg = <0x114000E0 0x20>;
403                         #gpio-cells = <4>;
404                 };
405
406                 gpc1: gpio-controller@11400100 {
407                         compatible = "samsung,exynos4-gpio";
408                         reg = <0x11400100 0x20>;
409                         #gpio-cells = <4>;
410                 };
411
412                 gpc2: gpio-controller@11400120 {
413                         compatible = "samsung,exynos4-gpio";
414                         reg = <0x11400120 0x20>;
415                         #gpio-cells = <4>;
416                 };
417
418                 gpc3: gpio-controller@11400140 {
419                         compatible = "samsung,exynos4-gpio";
420                         reg = <0x11400140 0x20>;
421                         #gpio-cells = <4>;
422                 };
423
424                 gpc4: gpio-controller@114002E0 {
425                         compatible = "samsung,exynos4-gpio";
426                         reg = <0x114002E0 0x20>;
427                         #gpio-cells = <4>;
428                 };
429
430                 gpd0: gpio-controller@11400160 {
431                         compatible = "samsung,exynos4-gpio";
432                         reg = <0x11400160 0x20>;
433                         #gpio-cells = <4>;
434                 };
435
436                 gpd1: gpio-controller@11400180 {
437                         compatible = "samsung,exynos4-gpio";
438                         reg = <0x11400180 0x20>;
439                         #gpio-cells = <4>;
440                 };
441
442                 gpy0: gpio-controller@114001A0 {
443                         compatible = "samsung,exynos4-gpio";
444                         reg = <0x114001A0 0x20>;
445                         #gpio-cells = <4>;
446                 };
447
448                 gpy1: gpio-controller@114001C0 {
449                         compatible = "samsung,exynos4-gpio";
450                         reg = <0x114001C0 0x20>;
451                         #gpio-cells = <4>;
452                 };
453
454                 gpy2: gpio-controller@114001E0 {
455                         compatible = "samsung,exynos4-gpio";
456                         reg = <0x114001E0 0x20>;
457                         #gpio-cells = <4>;
458                 };
459
460                 gpy3: gpio-controller@11400200 {
461                         compatible = "samsung,exynos4-gpio";
462                         reg = <0x11400200 0x20>;
463                         #gpio-cells = <4>;
464                 };
465
466                 gpy4: gpio-controller@11400220 {
467                         compatible = "samsung,exynos4-gpio";
468                         reg = <0x11400220 0x20>;
469                         #gpio-cells = <4>;
470                 };
471
472                 gpy5: gpio-controller@11400240 {
473                         compatible = "samsung,exynos4-gpio";
474                         reg = <0x11400240 0x20>;
475                         #gpio-cells = <4>;
476                 };
477
478                 gpy6: gpio-controller@11400260 {
479                         compatible = "samsung,exynos4-gpio";
480                         reg = <0x11400260 0x20>;
481                         #gpio-cells = <4>;
482                 };
483
484                 gpx0: gpio-controller@11400C00 {
485                         compatible = "samsung,exynos4-gpio";
486                         reg = <0x11400C00 0x20>;
487                         #gpio-cells = <4>;
488                 };
489
490                 gpx1: gpio-controller@11400C20 {
491                         compatible = "samsung,exynos4-gpio";
492                         reg = <0x11400C20 0x20>;
493                         #gpio-cells = <4>;
494                 };
495
496                 gpx2: gpio-controller@11400C40 {
497                         compatible = "samsung,exynos4-gpio";
498                         reg = <0x11400C40 0x20>;
499                         #gpio-cells = <4>;
500                 };
501
502                 gpx3: gpio-controller@11400C60 {
503                         compatible = "samsung,exynos4-gpio";
504                         reg = <0x11400C60 0x20>;
505                         #gpio-cells = <4>;
506                 };
507
508                 gpe0: gpio-controller@13400000 {
509                         compatible = "samsung,exynos4-gpio";
510                         reg = <0x13400000 0x20>;
511                         #gpio-cells = <4>;
512                 };
513
514                 gpe1: gpio-controller@13400020 {
515                         compatible = "samsung,exynos4-gpio";
516                         reg = <0x13400020 0x20>;
517                         #gpio-cells = <4>;
518                 };
519
520                 gpf0: gpio-controller@13400040 {
521                         compatible = "samsung,exynos4-gpio";
522                         reg = <0x13400040 0x20>;
523                         #gpio-cells = <4>;
524                 };
525
526                 gpf1: gpio-controller@13400060 {
527                         compatible = "samsung,exynos4-gpio";
528                         reg = <0x13400060 0x20>;
529                         #gpio-cells = <4>;
530                 };
531
532                 gpg0: gpio-controller@13400080 {
533                         compatible = "samsung,exynos4-gpio";
534                         reg = <0x13400080 0x20>;
535                         #gpio-cells = <4>;
536                 };
537
538                 gpg1: gpio-controller@134000A0 {
539                         compatible = "samsung,exynos4-gpio";
540                         reg = <0x134000A0 0x20>;
541                         #gpio-cells = <4>;
542                 };
543
544                 gpg2: gpio-controller@134000C0 {
545                         compatible = "samsung,exynos4-gpio";
546                         reg = <0x134000C0 0x20>;
547                         #gpio-cells = <4>;
548                 };
549
550                 gph0: gpio-controller@134000E0 {
551                         compatible = "samsung,exynos4-gpio";
552                         reg = <0x134000E0 0x20>;
553                         #gpio-cells = <4>;
554                 };
555
556                 gph1: gpio-controller@13400100 {
557                         compatible = "samsung,exynos4-gpio";
558                         reg = <0x13400100 0x20>;
559                         #gpio-cells = <4>;
560                 };
561
562                 gpv0: gpio-controller@10D10000 {
563                         compatible = "samsung,exynos4-gpio";
564                         reg = <0x10D10000 0x20>;
565                         #gpio-cells = <4>;
566                 };
567
568                 gpv1: gpio-controller@10D10020 {
569                         compatible = "samsung,exynos4-gpio";
570                         reg = <0x10D10020 0x20>;
571                         #gpio-cells = <4>;
572                 };
573
574                 gpv2: gpio-controller@10D10040 {
575                         compatible = "samsung,exynos4-gpio";
576                         reg = <0x10D10060 0x20>;
577                         #gpio-cells = <4>;
578                 };
579
580                 gpv3: gpio-controller@10D10060 {
581                         compatible = "samsung,exynos4-gpio";
582                         reg = <0x10D10080 0x20>;
583                         #gpio-cells = <4>;
584                 };
585
586                 gpv4: gpio-controller@10D10080 {
587                         compatible = "samsung,exynos4-gpio";
588                         reg = <0x10D100C0 0x20>;
589                         #gpio-cells = <4>;
590                 };
591
592                 gpz: gpio-controller@03860000 {
593                         compatible = "samsung,exynos4-gpio";
594                         reg = <0x03860000 0x20>;
595                         #gpio-cells = <4>;
596                 };
597         };
598
599         fimd {
600                 compatible = "samsung,exynos5-fb";
601                 interrupt-parent = <&combiner>;
602                 reg = <0x14400000 0x40000>;
603                 interrupts = <18 4>, <18 5>, <18 6>;
604                 sysmmu = <&sysmmu_27>;
605         };
606
607         mipi {
608                 compatible = "samsung,exynos5-mipi";
609                 reg = <0x14500000 0x10000>;
610                 interrupts = <0 82 0>;
611         };
612
613         gsc_0:  gsc@0x13e00000 {
614                 compatible = "samsung,exynos-gsc";
615                 reg = <0x13e00000 0x1000>;
616                 interrupts = <0 85 0>;
617                 sysmmu = <&sysmmu_23>;
618         };
619
620         gsc_1:  gsc@0x13e10000 {
621                 compatible = "samsung,exynos-gsc";
622                 reg = <0x13e10000 0x1000>;
623                 interrupts = <0 86 0>;
624                 sysmmu = <&sysmmu_24>;
625         };
626
627         gsc_2:  gsc@0x13e20000 {
628                 compatible = "samsung,exynos-gsc";
629                 reg = <0x13e20000 0x1000>;
630                 interrupts = <0 87 0>;
631                 sysmmu = <&sysmmu_25>;
632         };
633
634         gsc_3:  gsc@0x13e30000 {
635                 compatible = "samsung,exynos-gsc";
636                 reg = <0x13e30000 0x1000>;
637                 interrupts = <0 88 0>;
638                 sysmmu = <&sysmmu_26>;
639         };
640
641         g2d {
642                 compatible = "samsung,s5p-g2d";
643                 reg = <0x10850000 0x400>;
644                 interrupts = <0 91 0>;
645         };
646
647         hdmi {
648                 compatible = "samsung,exynos5-hdmi";
649                 reg = <0x14530000 0x100000>;
650                 interrupts = <0 95 0>, <5 0>;
651                 interrupt-parent = <&wakeup_eint>;
652         };
653
654         mixer {
655                 compatible = "samsung,s5p-mixer";
656                 reg = <0x14450000 0x10000>;
657                 interrupts = <0 94 0>;
658                 sysmmu = <&sysmmu_28>;
659         };
660
661         sromc-bus {
662                 compatible = "samsung,exynos-sromc-bus", "simple-bus";
663
664                 #address-cells = <2>;
665                 #size-cells = <1>;
666                 ranges = < 0 0 0x04000000 0x20000
667                            1 0 0x05000000 0x20000
668                            2 0 0x06000000 0x20000
669                            3 0 0x07000000 0x20000>;
670         };
671 };