Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / powerpc / boot / dts / fsl / t2081si-post.dtsi
1 /*
2  * T2081 Silicon/SoC Device Tree Source (post include)
3  *
4  * Copyright 2013 - 2014 Freescale Semiconductor Inc.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions are met:
8  *     * Redistributions of source code must retain the above copyright
9  *       notice, this list of conditions and the following disclaimer.
10  *     * Redistributions in binary form must reproduce the above copyright
11  *       notice, this list of conditions and the following disclaimer in the
12  *       documentation and/or other materials provided with the distribution.
13  *     * Neither the name of Freescale Semiconductor nor the
14  *       names of its contributors may be used to endorse or promote products
15  *       derived from this software without specific prior written permission.
16  *
17  *
18  * ALTERNATIVELY, this software may be distributed under the terms of the
19  * GNU General Public License ("GPL") as published by the Free Software
20  * Foundation, either version 2 of that License or (at your option) any
21  * later version.
22  *
23  * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor "AS IS" AND ANY
24  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26  * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
27  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
30  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33  */
34
35 &bman_fbpr {
36         compatible = "fsl,bman-fbpr";
37         alloc-ranges = <0 0 0x10000 0>;
38 };
39
40 &ifc {
41         #address-cells = <2>;
42         #size-cells = <1>;
43         compatible = "fsl,ifc", "simple-bus";
44         interrupts = <25 2 0 0>;
45 };
46
47 /* controller at 0x240000 */
48 &pci0 {
49         compatible = "fsl,t2080-pcie", "fsl,qoriq-pcie-v3.0", "fsl,qoriq-pcie";
50         device_type = "pci";
51         #size-cells = <2>;
52         #address-cells = <3>;
53         bus-range = <0x0 0xff>;
54         interrupts = <20 2 0 0>;
55         fsl,iommu-parent = <&pamu0>;
56         pcie@0 {
57                 reg = <0 0 0 0 0>;
58                 #interrupt-cells = <1>;
59                 #size-cells = <2>;
60                 #address-cells = <3>;
61                 device_type = "pci";
62                 interrupts = <20 2 0 0>;
63                 interrupt-map-mask = <0xf800 0 0 7>;
64                 interrupt-map = <
65                         /* IDSEL 0x0 */
66                         0000 0 0 1 &mpic 40 1 0 0
67                         0000 0 0 2 &mpic 1 1 0 0
68                         0000 0 0 3 &mpic 2 1 0 0
69                         0000 0 0 4 &mpic 3 1 0 0
70                 >;
71         };
72 };
73
74 /* controller at 0x250000 */
75 &pci1 {
76         compatible = "fsl,t2080-pcie", "fsl,qoriq-pcie-v3.0", "fsl,qoriq-pcie";
77         device_type = "pci";
78         #size-cells = <2>;
79         #address-cells = <3>;
80         bus-range = <0 0xff>;
81         interrupts = <21 2 0 0>;
82         fsl,iommu-parent = <&pamu0>;
83         pcie@0 {
84                 reg = <0 0 0 0 0>;
85                 #interrupt-cells = <1>;
86                 #size-cells = <2>;
87                 #address-cells = <3>;
88                 device_type = "pci";
89                 interrupts = <21 2 0 0>;
90                 interrupt-map-mask = <0xf800 0 0 7>;
91                 interrupt-map = <
92                         /* IDSEL 0x0 */
93                         0000 0 0 1 &mpic 41 1 0 0
94                         0000 0 0 2 &mpic 5 1 0 0
95                         0000 0 0 3 &mpic 6 1 0 0
96                         0000 0 0 4 &mpic 7 1 0 0
97                 >;
98         };
99 };
100
101 /* controller at 0x260000 */
102 &pci2 {
103         compatible = "fsl,t2080-pcie", "fsl,qoriq-pcie-v3.0", "fsl,qoriq-pcie";
104         device_type = "pci";
105         #size-cells = <2>;
106         #address-cells = <3>;
107         bus-range = <0x0 0xff>;
108         interrupts = <22 2 0 0>;
109         fsl,iommu-parent = <&pamu0>;
110         pcie@0 {
111                 reg = <0 0 0 0 0>;
112                 #interrupt-cells = <1>;
113                 #size-cells = <2>;
114                 #address-cells = <3>;
115                 device_type = "pci";
116                 interrupts = <22 2 0 0>;
117                 interrupt-map-mask = <0xf800 0 0 7>;
118                 interrupt-map = <
119                         /* IDSEL 0x0 */
120                         0000 0 0 1 &mpic 42 1 0 0
121                         0000 0 0 2 &mpic 9 1 0 0
122                         0000 0 0 3 &mpic 10 1 0 0
123                         0000 0 0 4 &mpic 11 1 0 0
124                 >;
125         };
126 };
127
128 /* controller at 0x270000 */
129 &pci3 {
130         compatible = "fsl,t2080-pcie", "fsl,qoriq-pcie-v3.0", "fsl,qoriq-pcie";
131         device_type = "pci";
132         #size-cells = <2>;
133         #address-cells = <3>;
134         bus-range = <0x0 0xff>;
135         interrupts = <23 2 0 0>;
136         fsl,iommu-parent = <&pamu0>;
137         pcie@0 {
138                 reg = <0 0 0 0 0>;
139                 #interrupt-cells = <1>;
140                 #size-cells = <2>;
141                 #address-cells = <3>;
142                 device_type = "pci";
143                 interrupts = <23 2 0 0>;
144                 interrupt-map-mask = <0xf800 0 0 7>;
145                 interrupt-map = <
146                         /* IDSEL 0x0 */
147                         0000 0 0 1 &mpic 43 1 0 0
148                         0000 0 0 2 &mpic 0 1 0 0
149                         0000 0 0 3 &mpic 4 1 0 0
150                         0000 0 0 4 &mpic 8 1 0 0
151                 >;
152         };
153 };
154
155 &dcsr {
156         #address-cells = <1>;
157         #size-cells = <1>;
158         compatible = "fsl,dcsr", "simple-bus";
159
160         dcsr-epu@0 {
161                 compatible = "fsl,t2080-dcsr-epu", "fsl,dcsr-epu";
162                 interrupts = <52 2 0 0
163                               84 2 0 0
164                               85 2 0 0
165                               94 2 0 0
166                               95 2 0 0>;
167                 reg = <0x0 0x1000>;
168         };
169         dcsr-npc {
170                 compatible = "fsl,t2080-dcsr-cnpc", "fsl,dcsr-cnpc";
171                 reg = <0x1000 0x1000 0x1002000 0x10000>;
172         };
173         dcsr-nxc@2000 {
174                 compatible = "fsl,dcsr-nxc";
175                 reg = <0x2000 0x1000>;
176         };
177         dcsr-corenet {
178                 compatible = "fsl,dcsr-corenet";
179                 reg = <0x8000 0x1000 0x1A000 0x1000>;
180         };
181         dcsr-ocn@11000 {
182                 compatible = "fsl,t2080-dcsr-ocn", "fsl,dcsr-ocn";
183                 reg = <0x11000 0x1000>;
184         };
185         dcsr-ddr@12000 {
186                 compatible = "fsl,dcsr-ddr";
187                 dev-handle = <&ddr1>;
188                 reg = <0x12000 0x1000>;
189         };
190         dcsr-nal@18000 {
191                 compatible = "fsl,t2080-dcsr-nal", "fsl,dcsr-nal";
192                 reg = <0x18000 0x1000>;
193         };
194         dcsr-rcpm@22000 {
195                 compatible = "fsl,t2080-dcsr-rcpm", "fsl,dcsr-rcpm";
196                 reg = <0x22000 0x1000>;
197         };
198         dcsr-snpc@30000 {
199                 compatible = "fsl,t2080-dcsr-snpc", "fsl,dcsr-snpc";
200                 reg = <0x30000 0x1000 0x1022000 0x10000>;
201         };
202         dcsr-snpc@31000 {
203                 compatible = "fsl,t2080-dcsr-snpc", "fsl,dcsr-snpc";
204                 reg = <0x31000 0x1000 0x1042000 0x10000>;
205         };
206         dcsr-snpc@32000 {
207                 compatible = "fsl,t2080-dcsr-snpc", "fsl,dcsr-snpc";
208                 reg = <0x32000 0x1000 0x1062000 0x10000>;
209         };
210         dcsr-cpu-sb-proxy@100000 {
211                 compatible = "fsl,dcsr-e6500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
212                 cpu-handle = <&cpu0>;
213                 reg = <0x100000 0x1000 0x101000 0x1000>;
214         };
215         dcsr-cpu-sb-proxy@108000 {
216                 compatible = "fsl,dcsr-e6500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
217                 cpu-handle = <&cpu1>;
218                 reg = <0x108000 0x1000 0x109000 0x1000>;
219         };
220         dcsr-cpu-sb-proxy@110000 {
221                 compatible = "fsl,dcsr-e6500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
222                 cpu-handle = <&cpu2>;
223                 reg = <0x110000 0x1000 0x111000 0x1000>;
224         };
225         dcsr-cpu-sb-proxy@118000 {
226                 compatible = "fsl,dcsr-e6500-sb-proxy", "fsl,dcsr-cpu-sb-proxy";
227                 cpu-handle = <&cpu3>;
228                 reg = <0x118000 0x1000 0x119000 0x1000>;
229         };
230 };
231
232 &bportals {
233         #address-cells = <0x1>;
234         #size-cells = <0x1>;
235         compatible = "simple-bus";
236
237         bman-portal@0 {
238                 compatible = "fsl,bman-portal";
239                 reg = <0x0 0x4000>, <0x1000000 0x1000>;
240                 interrupts = <105 2 0 0>;
241         };
242         bman-portal@4000 {
243                 compatible = "fsl,bman-portal";
244                 reg = <0x4000 0x4000>, <0x1001000 0x1000>;
245                 interrupts = <107 2 0 0>;
246         };
247         bman-portal@8000 {
248                 compatible = "fsl,bman-portal";
249                 reg = <0x8000 0x4000>, <0x1002000 0x1000>;
250                 interrupts = <109 2 0 0>;
251         };
252         bman-portal@c000 {
253                 compatible = "fsl,bman-portal";
254                 reg = <0xc000 0x4000>, <0x1003000 0x1000>;
255                 interrupts = <111 2 0 0>;
256         };
257         bman-portal@10000 {
258                 compatible = "fsl,bman-portal";
259                 reg = <0x10000 0x4000>, <0x1004000 0x1000>;
260                 interrupts = <113 2 0 0>;
261         };
262         bman-portal@14000 {
263                 compatible = "fsl,bman-portal";
264                 reg = <0x14000 0x4000>, <0x1005000 0x1000>;
265                 interrupts = <115 2 0 0>;
266         };
267         bman-portal@18000 {
268                 compatible = "fsl,bman-portal";
269                 reg = <0x18000 0x4000>, <0x1006000 0x1000>;
270                 interrupts = <117 2 0 0>;
271         };
272         bman-portal@1c000 {
273                 compatible = "fsl,bman-portal";
274                 reg = <0x1c000 0x4000>, <0x1007000 0x1000>;
275                 interrupts = <119 2 0 0>;
276         };
277         bman-portal@20000 {
278                 compatible = "fsl,bman-portal";
279                 reg = <0x20000 0x4000>, <0x1008000 0x1000>;
280                 interrupts = <121 2 0 0>;
281         };
282         bman-portal@24000 {
283                 compatible = "fsl,bman-portal";
284                 reg = <0x24000 0x4000>, <0x1009000 0x1000>;
285                 interrupts = <123 2 0 0>;
286         };
287         bman-portal@28000 {
288                 compatible = "fsl,bman-portal";
289                 reg = <0x28000 0x4000>, <0x100a000 0x1000>;
290                 interrupts = <125 2 0 0>;
291         };
292         bman-portal@2c000 {
293                 compatible = "fsl,bman-portal";
294                 reg = <0x2c000 0x4000>, <0x100b000 0x1000>;
295                 interrupts = <127 2 0 0>;
296         };
297         bman-portal@30000 {
298                 compatible = "fsl,bman-portal";
299                 reg = <0x30000 0x4000>, <0x100c000 0x1000>;
300                 interrupts = <129 2 0 0>;
301         };
302         bman-portal@34000 {
303                 compatible = "fsl,bman-portal";
304                 reg = <0x34000 0x4000>, <0x100d000 0x1000>;
305                 interrupts = <131 2 0 0>;
306         };
307         bman-portal@38000 {
308                 compatible = "fsl,bman-portal";
309                 reg = <0x38000 0x4000>, <0x100e000 0x1000>;
310                 interrupts = <133 2 0 0>;
311         };
312         bman-portal@3c000 {
313                 compatible = "fsl,bman-portal";
314                 reg = <0x3c000 0x4000>, <0x100f000 0x1000>;
315                 interrupts = <135 2 0 0>;
316         };
317         bman-portal@40000 {
318                 compatible = "fsl,bman-portal";
319                 reg = <0x40000 0x4000>, <0x1010000 0x1000>;
320                 interrupts = <137 2 0 0>;
321         };
322         bman-portal@44000 {
323                 compatible = "fsl,bman-portal";
324                 reg = <0x44000 0x4000>, <0x1011000 0x1000>;
325                 interrupts = <139 2 0 0>;
326         };
327 };
328
329 &soc {
330         #address-cells = <1>;
331         #size-cells = <1>;
332         device_type = "soc";
333         compatible = "simple-bus";
334
335         soc-sram-error {
336                 compatible = "fsl,soc-sram-error";
337                 interrupts = <16 2 1 29>;
338         };
339
340         corenet-law@0 {
341                 compatible = "fsl,corenet-law";
342                 reg = <0x0 0x1000>;
343                 fsl,num-laws = <32>;
344         };
345
346         ddr1: memory-controller@8000 {
347                 compatible = "fsl,qoriq-memory-controller-v4.7",
348                                 "fsl,qoriq-memory-controller";
349                 reg = <0x8000 0x1000>;
350                 interrupts = <16 2 1 23>;
351         };
352
353         cpc: l3-cache-controller@10000 {
354                 compatible = "fsl,t2080-l3-cache-controller", "cache";
355                 reg = <0x10000 0x1000
356                        0x11000 0x1000
357                        0x12000 0x1000>;
358                 interrupts = <16 2 1 27
359                               16 2 1 26
360                               16 2 1 25>;
361         };
362
363         corenet-cf@18000 {
364                 compatible = "fsl,corenet2-cf", "fsl,corenet-cf";
365                 reg = <0x18000 0x1000>;
366                 interrupts = <16 2 1 31>;
367                 fsl,ccf-num-csdids = <32>;
368                 fsl,ccf-num-snoopids = <32>;
369         };
370
371         iommu@20000 {
372                 compatible = "fsl,pamu-v1.0", "fsl,pamu";
373                 reg = <0x20000 0x3000>;
374                 fsl,portid-mapping = <0x8000>;
375                 ranges = <0 0x20000 0x3000>;
376                 #address-cells = <1>;
377                 #size-cells = <1>;
378                 interrupts = <
379                         24 2 0 0
380                         16 2 1 30>;
381
382                 pamu0: pamu@0 {
383                         reg = <0 0x1000>;
384                         fsl,primary-cache-geometry = <32 1>;
385                         fsl,secondary-cache-geometry = <128 2>;
386                 };
387
388                 pamu1: pamu@1000 {
389                         reg = <0x1000 0x1000>;
390                         fsl,primary-cache-geometry = <32 1>;
391                         fsl,secondary-cache-geometry = <128 2>;
392                 };
393
394                 pamu2: pamu@2000 {
395                         reg = <0x2000 0x1000>;
396                         fsl,primary-cache-geometry = <32 1>;
397                         fsl,secondary-cache-geometry = <128 2>;
398                 };
399         };
400
401 /include/ "qoriq-mpic4.3.dtsi"
402
403         guts: global-utilities@e0000 {
404                 compatible = "fsl,t2080-device-config", "fsl,qoriq-device-config-2.0";
405                 reg = <0xe0000 0xe00>;
406                 fsl,has-rstcr;
407                 fsl,liodn-bits = <12>;
408         };
409
410 /include/ "qoriq-clockgen2.dtsi"
411         global-utilities@e1000 {
412                 compatible = "fsl,t2080-clockgen", "fsl,qoriq-clockgen-2.0";
413
414                 mux0: mux0@0 {
415                         #clock-cells = <0>;
416                         reg = <0x0 4>;
417                         compatible = "fsl,qoriq-core-mux-2.0";
418                         clocks = <&pll0 0>, <&pll0 1>, <&pll0 2>,
419                                  <&pll1 0>, <&pll1 1>, <&pll1 2>;
420                         clock-names = "pll0", "pll0-div2", "pll1-div4",
421                                 "pll1", "pll1-div2", "pll1-div4";
422                         clock-output-names = "cmux0";
423                 };
424
425                 mux1: mux1@20 {
426                         #clock-cells = <0>;
427                         reg = <0x20 4>;
428                         compatible = "fsl,qoriq-core-mux-2.0";
429                         clocks = <&pll0 0>, <&pll0 1>, <&pll0 2>,
430                                  <&pll1 0>, <&pll1 1>, <&pll1 2>;
431                         clock-names = "pll0", "pll0-div2", "pll1-div4",
432                                 "pll1", "pll1-div2", "pll1-div4";
433                         clock-output-names = "cmux1";
434                 };
435         };
436
437         rcpm: global-utilities@e2000 {
438                 compatible = "fsl,t2080-rcpm", "fsl,qoriq-rcpm-2.0";
439                 reg = <0xe2000 0x1000>;
440         };
441
442         sfp: sfp@e8000 {
443                 compatible = "fsl,t2080-sfp";
444                 reg = <0xe8000 0x1000>;
445         };
446
447         serdes: serdes@ea000 {
448                 compatible = "fsl,t2080-serdes";
449                 reg = <0xea000 0x4000>;
450         };
451
452 /include/ "elo3-dma-0.dtsi"
453         dma@100300 {
454                 fsl,iommu-parent = <&pamu0>;
455                 fsl,liodn-reg = <&guts 0x580>; /* DMA1LIODNR */
456         };
457 /include/ "elo3-dma-1.dtsi"
458         dma@101300 {
459                 fsl,iommu-parent = <&pamu0>;
460                 fsl,liodn-reg = <&guts 0x584>; /* DMA2LIODNR */
461         };
462 /include/ "elo3-dma-2.dtsi"
463         dma@102300 {
464                 fsl,iommu-parent = <&pamu0>;
465                 fsl,liodn-reg = <&guts 0x588>; /* DMA3LIODNR */
466         };
467
468 /include/ "qoriq-espi-0.dtsi"
469         spi@110000 {
470                 fsl,espi-num-chipselects = <4>;
471         };
472
473 /include/ "qoriq-esdhc-0.dtsi"
474         sdhc@114000 {
475                 compatible = "fsl,t2080-esdhc", "fsl,esdhc";
476                 fsl,iommu-parent = <&pamu1>;
477                 fsl,liodn-reg = <&guts 0x530>; /* SDMMCLIODNR */
478                 sdhci,auto-cmd12;
479         };
480 /include/ "qoriq-i2c-0.dtsi"
481 /include/ "qoriq-i2c-1.dtsi"
482 /include/ "qoriq-duart-0.dtsi"
483 /include/ "qoriq-duart-1.dtsi"
484 /include/ "qoriq-gpio-0.dtsi"
485 /include/ "qoriq-gpio-1.dtsi"
486 /include/ "qoriq-gpio-2.dtsi"
487 /include/ "qoriq-gpio-3.dtsi"
488 /include/ "qoriq-usb2-mph-0.dtsi"
489         usb0: usb@210000 {
490                 compatible = "fsl-usb2-mph-v2.5", "fsl-usb2-mph";
491                 fsl,iommu-parent = <&pamu1>;
492                 fsl,liodn-reg = <&guts 0x520>; /* USB1LIODNR */
493                 phy_type = "utmi";
494                 port0;
495         };
496 /include/ "qoriq-usb2-dr-0.dtsi"
497         usb1: usb@211000 {
498                 compatible = "fsl-usb2-dr-v2.5", "fsl-usb2-dr";
499                 fsl,iommu-parent = <&pamu1>;
500                 fsl,liodn-reg = <&guts 0x524>; /* USB1LIODNR */
501                 dr_mode = "host";
502                 phy_type = "utmi";
503         };
504 /include/ "qoriq-sec5.2-0.dtsi"
505 /include/ "qoriq-bman1.dtsi"
506
507         L2_1: l2-cache-controller@c20000 {
508                 /* Cluster 0 L2 cache */
509                 compatible = "fsl,t2080-l2-cache-controller";
510                 reg = <0xc20000 0x40000>;
511                 next-level-cache = <&cpc>;
512         };
513 };