Merge tag 'libata-5.14-2021-07-30' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / freescale / fsl-ls1088a.dtsi
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Device Tree Include file for NXP Layerscape-1088A family SoC.
4  *
5  * Copyright 2017-2020 NXP
6  *
7  * Harninder Rai <harninder.rai@nxp.com>
8  *
9  */
10 #include <dt-bindings/clock/fsl,qoriq-clockgen.h>
11 #include <dt-bindings/interrupt-controller/arm-gic.h>
12 #include <dt-bindings/thermal/thermal.h>
13
14 / {
15         compatible = "fsl,ls1088a";
16         interrupt-parent = <&gic>;
17         #address-cells = <2>;
18         #size-cells = <2>;
19
20         aliases {
21                 crypto = &crypto;
22                 rtc1 = &ftm_alarm0;
23         };
24
25         cpus {
26                 #address-cells = <1>;
27                 #size-cells = <0>;
28
29                 /* We have 2 clusters having 4 Cortex-A53 cores each */
30                 cpu0: cpu@0 {
31                         device_type = "cpu";
32                         compatible = "arm,cortex-a53";
33                         reg = <0x0>;
34                         clocks = <&clockgen QORIQ_CLK_CMUX 0>;
35                         cpu-idle-states = <&CPU_PH20>;
36                         #cooling-cells = <2>;
37                 };
38
39                 cpu1: cpu@1 {
40                         device_type = "cpu";
41                         compatible = "arm,cortex-a53";
42                         reg = <0x1>;
43                         clocks = <&clockgen QORIQ_CLK_CMUX 0>;
44                         cpu-idle-states = <&CPU_PH20>;
45                         #cooling-cells = <2>;
46                 };
47
48                 cpu2: cpu@2 {
49                         device_type = "cpu";
50                         compatible = "arm,cortex-a53";
51                         reg = <0x2>;
52                         clocks = <&clockgen QORIQ_CLK_CMUX 0>;
53                         cpu-idle-states = <&CPU_PH20>;
54                         #cooling-cells = <2>;
55                 };
56
57                 cpu3: cpu@3 {
58                         device_type = "cpu";
59                         compatible = "arm,cortex-a53";
60                         reg = <0x3>;
61                         clocks = <&clockgen QORIQ_CLK_CMUX 0>;
62                         cpu-idle-states = <&CPU_PH20>;
63                         #cooling-cells = <2>;
64                 };
65
66                 cpu4: cpu@100 {
67                         device_type = "cpu";
68                         compatible = "arm,cortex-a53";
69                         reg = <0x100>;
70                         clocks = <&clockgen QORIQ_CLK_CMUX 1>;
71                         cpu-idle-states = <&CPU_PH20>;
72                         #cooling-cells = <2>;
73                 };
74
75                 cpu5: cpu@101 {
76                         device_type = "cpu";
77                         compatible = "arm,cortex-a53";
78                         reg = <0x101>;
79                         clocks = <&clockgen QORIQ_CLK_CMUX 1>;
80                         cpu-idle-states = <&CPU_PH20>;
81                         #cooling-cells = <2>;
82                 };
83
84                 cpu6: cpu@102 {
85                         device_type = "cpu";
86                         compatible = "arm,cortex-a53";
87                         reg = <0x102>;
88                         clocks = <&clockgen QORIQ_CLK_CMUX 1>;
89                         cpu-idle-states = <&CPU_PH20>;
90                         #cooling-cells = <2>;
91                 };
92
93                 cpu7: cpu@103 {
94                         device_type = "cpu";
95                         compatible = "arm,cortex-a53";
96                         reg = <0x103>;
97                         clocks = <&clockgen QORIQ_CLK_CMUX 1>;
98                         cpu-idle-states = <&CPU_PH20>;
99                         #cooling-cells = <2>;
100                 };
101
102                 CPU_PH20: cpu-ph20 {
103                         compatible = "arm,idle-state";
104                         idle-state-name = "PH20";
105                         arm,psci-suspend-param = <0x0>;
106                         entry-latency-us = <1000>;
107                         exit-latency-us = <1000>;
108                         min-residency-us = <3000>;
109                 };
110         };
111
112         gic: interrupt-controller@6000000 {
113                 compatible = "arm,gic-v3";
114                 #interrupt-cells = <3>;
115                 interrupt-controller;
116                 reg = <0x0 0x06000000 0 0x10000>, /* GIC Dist */
117                       <0x0 0x06100000 0 0x100000>, /* GICR(RD_base+SGI_base)*/
118                       <0x0 0x0c0c0000 0 0x2000>, /* GICC */
119                       <0x0 0x0c0d0000 0 0x1000>, /* GICH */
120                       <0x0 0x0c0e0000 0 0x20000>; /* GICV */
121                 interrupts = <1 9 IRQ_TYPE_LEVEL_HIGH>;
122                 #address-cells = <2>;
123                 #size-cells = <2>;
124                 ranges;
125
126                 its: gic-its@6020000 {
127                         compatible = "arm,gic-v3-its";
128                         msi-controller;
129                         reg = <0x0 0x6020000 0 0x20000>;
130                 };
131         };
132
133         thermal-zones {
134                 core-cluster {
135                         polling-delay-passive = <1000>;
136                         polling-delay = <5000>;
137                         thermal-sensors = <&tmu 0>;
138
139                         trips {
140                                 core_cluster_alert: core-cluster-alert {
141                                         temperature = <85000>;
142                                         hysteresis = <2000>;
143                                         type = "passive";
144                                 };
145
146                                 core-cluster-crit {
147                                         temperature = <95000>;
148                                         hysteresis = <2000>;
149                                         type = "critical";
150                                 };
151                         };
152
153                         cooling-maps {
154                                 map0 {
155                                         trip = <&core_cluster_alert>;
156                                         cooling-device =
157                                                 <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
158                                                 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
159                                                 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
160                                                 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
161                                                 <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
162                                                 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
163                                                 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
164                                                 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
165                                 };
166                         };
167                 };
168
169                 soc {
170                         polling-delay-passive = <1000>;
171                         polling-delay = <5000>;
172                         thermal-sensors = <&tmu 1>;
173
174                         trips {
175                                 soc-crit {
176                                         temperature = <95000>;
177                                         hysteresis = <2000>;
178                                         type = "critical";
179                                 };
180                         };
181                 };
182         };
183
184         timer {
185                 compatible = "arm,armv8-timer";
186                 interrupts = <1 13 IRQ_TYPE_LEVEL_LOW>,/* Physical Secure PPI */
187                              <1 14 IRQ_TYPE_LEVEL_LOW>,/* Physical Non-Secure PPI */
188                              <1 11 IRQ_TYPE_LEVEL_LOW>,/* Virtual PPI */
189                              <1 10 IRQ_TYPE_LEVEL_LOW>;/* Hypervisor PPI */
190         };
191
192         psci {
193                 compatible = "arm,psci-0.2";
194                 method = "smc";
195         };
196
197         sysclk: sysclk {
198                 compatible = "fixed-clock";
199                 #clock-cells = <0>;
200                 clock-frequency = <100000000>;
201                 clock-output-names = "sysclk";
202         };
203
204         soc {
205                 compatible = "simple-bus";
206                 #address-cells = <2>;
207                 #size-cells = <2>;
208                 ranges;
209                 dma-ranges = <0x0 0x0 0x0 0x0 0x10000 0x00000000>;
210
211                 clockgen: clocking@1300000 {
212                         compatible = "fsl,ls1088a-clockgen";
213                         reg = <0 0x1300000 0 0xa0000>;
214                         #clock-cells = <2>;
215                         clocks = <&sysclk>;
216                 };
217
218                 dcfg: dcfg@1e00000 {
219                         compatible = "fsl,ls1088a-dcfg", "syscon";
220                         reg = <0x0 0x1e00000 0x0 0x10000>;
221                         little-endian;
222                 };
223
224                 isc: syscon@1f70000 {
225                         compatible = "fsl,ls1088a-isc", "syscon";
226                         reg = <0x0 0x1f70000 0x0 0x10000>;
227                         little-endian;
228                         #address-cells = <1>;
229                         #size-cells = <1>;
230                         ranges = <0x0 0x0 0x1f70000 0x10000>;
231
232                         extirq: interrupt-controller@14 {
233                                 compatible = "fsl,ls1088a-extirq";
234                                 #interrupt-cells = <2>;
235                                 #address-cells = <0>;
236                                 interrupt-controller;
237                                 reg = <0x14 4>;
238                                 interrupt-map =
239                                         <0 0 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
240                                         <1 0 &gic GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
241                                         <2 0 &gic GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
242                                         <3 0 &gic GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
243                                         <4 0 &gic GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
244                                         <5 0 &gic GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
245                                         <6 0 &gic GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
246                                         <7 0 &gic GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
247                                         <8 0 &gic GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
248                                         <9 0 &gic GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
249                                         <10 0 &gic GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
250                                         <11 0 &gic GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
251                                 interrupt-map-mask = <0xffffffff 0x0>;
252                         };
253                 };
254
255                 tmu: tmu@1f80000 {
256                         compatible = "fsl,qoriq-tmu";
257                         reg = <0x0 0x1f80000 0x0 0x10000>;
258                         interrupts = <0 23 0x4>;
259                         fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x70062>;
260                         fsl,tmu-calibration =
261                                 /* Calibration data group 1 */
262                                 <0x00000000 0x00000023
263                                 0x00000001 0x0000002a
264                                 0x00000002 0x00000030
265                                 0x00000003 0x00000037
266                                 0x00000004 0x0000003d
267                                 0x00000005 0x00000044
268                                 0x00000006 0x0000004a
269                                 0x00000007 0x00000051
270                                 0x00000008 0x00000057
271                                 0x00000009 0x0000005e
272                                 0x0000000a 0x00000064
273                                 0x0000000b 0x0000006b
274                                 /* Calibration data group 2 */
275                                 0x00010000 0x00000022
276                                 0x00010001 0x0000002a
277                                 0x00010002 0x00000032
278                                 0x00010003 0x0000003a
279                                 0x00010004 0x00000042
280                                 0x00010005 0x0000004a
281                                 0x00010006 0x00000052
282                                 0x00010007 0x0000005a
283                                 0x00010008 0x00000062
284                                 0x00010009 0x0000006a
285                                 /* Calibration data group 3 */
286                                 0x00020000 0x00000021
287                                 0x00020001 0x0000002b
288                                 0x00020002 0x00000035
289                                 0x00020003 0x00000040
290                                 0x00020004 0x0000004a
291                                 0x00020005 0x00000054
292                                 0x00020006 0x0000005e
293                                 /* Calibration data group 4 */
294                                 0x00030000 0x00000010
295                                 0x00030001 0x0000001c
296                                 0x00030002 0x00000027
297                                 0x00030003 0x00000032
298                                 0x00030004 0x0000003e
299                                 0x00030005 0x00000049
300                                 0x00030006 0x00000054
301                                 0x00030007 0x00000060>;
302                         little-endian;
303                         #thermal-sensor-cells = <1>;
304                 };
305
306                 dspi: spi@2100000 {
307                         compatible = "fsl,ls1088a-dspi",
308                                      "fsl,ls1021a-v1.0-dspi";
309                         #address-cells = <1>;
310                         #size-cells = <0>;
311                         reg = <0x0 0x2100000 0x0 0x10000>;
312                         interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
313                         clock-names = "dspi";
314                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
315                                             QORIQ_CLK_PLL_DIV(2)>;
316                         spi-num-chipselects = <6>;
317                         status = "disabled";
318                 };
319
320                 duart0: serial@21c0500 {
321                         compatible = "fsl,ns16550", "ns16550a";
322                         reg = <0x0 0x21c0500 0x0 0x100>;
323                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
324                                             QORIQ_CLK_PLL_DIV(4)>;
325                         interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
326                         status = "disabled";
327                 };
328
329                 duart1: serial@21c0600 {
330                         compatible = "fsl,ns16550", "ns16550a";
331                         reg = <0x0 0x21c0600 0x0 0x100>;
332                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
333                                             QORIQ_CLK_PLL_DIV(4)>;
334                         interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
335                         status = "disabled";
336                 };
337
338                 gpio0: gpio@2300000 {
339                         compatible = "fsl,ls1088a-gpio", "fsl,qoriq-gpio";
340                         reg = <0x0 0x2300000 0x0 0x10000>;
341                         interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
342                         little-endian;
343                         gpio-controller;
344                         #gpio-cells = <2>;
345                         interrupt-controller;
346                         #interrupt-cells = <2>;
347                 };
348
349                 gpio1: gpio@2310000 {
350                         compatible = "fsl,ls1088a-gpio", "fsl,qoriq-gpio";
351                         reg = <0x0 0x2310000 0x0 0x10000>;
352                         interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
353                         little-endian;
354                         gpio-controller;
355                         #gpio-cells = <2>;
356                         interrupt-controller;
357                         #interrupt-cells = <2>;
358                 };
359
360                 gpio2: gpio@2320000 {
361                         compatible = "fsl,ls1088a-gpio", "fsl,qoriq-gpio";
362                         reg = <0x0 0x2320000 0x0 0x10000>;
363                         interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
364                         little-endian;
365                         gpio-controller;
366                         #gpio-cells = <2>;
367                         interrupt-controller;
368                         #interrupt-cells = <2>;
369                 };
370
371                 gpio3: gpio@2330000 {
372                         compatible = "fsl,ls1088a-gpio", "fsl,qoriq-gpio";
373                         reg = <0x0 0x2330000 0x0 0x10000>;
374                         interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
375                         little-endian;
376                         gpio-controller;
377                         #gpio-cells = <2>;
378                         interrupt-controller;
379                         #interrupt-cells = <2>;
380                 };
381
382                 ifc: ifc@2240000 {
383                         compatible = "fsl,ifc", "simple-bus";
384                         reg = <0x0 0x2240000 0x0 0x20000>;
385                         interrupts = <0 21 IRQ_TYPE_LEVEL_HIGH>;
386                         little-endian;
387                         #address-cells = <2>;
388                         #size-cells = <1>;
389                         status = "disabled";
390                 };
391
392                 i2c0: i2c@2000000 {
393                         compatible = "fsl,vf610-i2c";
394                         #address-cells = <1>;
395                         #size-cells = <0>;
396                         reg = <0x0 0x2000000 0x0 0x10000>;
397                         interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
398                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
399                                             QORIQ_CLK_PLL_DIV(8)>;
400                         status = "disabled";
401                 };
402
403                 i2c1: i2c@2010000 {
404                         compatible = "fsl,vf610-i2c";
405                         #address-cells = <1>;
406                         #size-cells = <0>;
407                         reg = <0x0 0x2010000 0x0 0x10000>;
408                         interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
409                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
410                                             QORIQ_CLK_PLL_DIV(8)>;
411                         status = "disabled";
412                 };
413
414                 i2c2: i2c@2020000 {
415                         compatible = "fsl,vf610-i2c";
416                         #address-cells = <1>;
417                         #size-cells = <0>;
418                         reg = <0x0 0x2020000 0x0 0x10000>;
419                         interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>;
420                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
421                                             QORIQ_CLK_PLL_DIV(8)>;
422                         status = "disabled";
423                 };
424
425                 i2c3: i2c@2030000 {
426                         compatible = "fsl,vf610-i2c";
427                         #address-cells = <1>;
428                         #size-cells = <0>;
429                         reg = <0x0 0x2030000 0x0 0x10000>;
430                         interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>;
431                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
432                                             QORIQ_CLK_PLL_DIV(8)>;
433                         status = "disabled";
434                 };
435
436                 qspi: spi@20c0000 {
437                         compatible = "fsl,ls2080a-qspi";
438                         #address-cells = <1>;
439                         #size-cells = <0>;
440                         reg = <0x0 0x20c0000 0x0 0x10000>,
441                               <0x0 0x20000000 0x0 0x10000000>;
442                         reg-names = "QuadSPI", "QuadSPI-memory";
443                         interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
444                         clock-names = "qspi_en", "qspi";
445                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
446                                             QORIQ_CLK_PLL_DIV(4)>,
447                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
448                                             QORIQ_CLK_PLL_DIV(4)>;
449                         status = "disabled";
450                 };
451
452                 esdhc: esdhc@2140000 {
453                         compatible = "fsl,ls1088a-esdhc", "fsl,esdhc";
454                         reg = <0x0 0x2140000 0x0 0x10000>;
455                         interrupts = <0 28 0x4>; /* Level high type */
456                         clock-frequency = <0>;
457                         clocks = <&clockgen QORIQ_CLK_HWACCEL 1>;
458                         voltage-ranges = <1800 1800 3300 3300>;
459                         sdhci,auto-cmd12;
460                         little-endian;
461                         bus-width = <4>;
462                         status = "disabled";
463                 };
464
465                 usb0: usb@3100000 {
466                         compatible = "snps,dwc3";
467                         reg = <0x0 0x3100000 0x0 0x10000>;
468                         interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
469                         dr_mode = "host";
470                         snps,quirk-frame-length-adjustment = <0x20>;
471                         snps,dis_rxdet_inp3_quirk;
472                         snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
473                         status = "disabled";
474                 };
475
476                 usb1: usb@3110000 {
477                         compatible = "snps,dwc3";
478                         reg = <0x0 0x3110000 0x0 0x10000>;
479                         interrupts = <0 81 IRQ_TYPE_LEVEL_HIGH>;
480                         dr_mode = "host";
481                         snps,quirk-frame-length-adjustment = <0x20>;
482                         snps,dis_rxdet_inp3_quirk;
483                         status = "disabled";
484                 };
485
486                 sata: sata@3200000 {
487                         compatible = "fsl,ls1088a-ahci";
488                         reg = <0x0 0x3200000 0x0 0x10000>,
489                                 <0x7 0x100520 0x0 0x4>;
490                         reg-names = "ahci", "sata-ecc";
491                         interrupts = <0 133 IRQ_TYPE_LEVEL_HIGH>;
492                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
493                                             QORIQ_CLK_PLL_DIV(4)>;
494                         dma-coherent;
495                         status = "disabled";
496                 };
497
498                 crypto: crypto@8000000 {
499                         compatible = "fsl,sec-v5.0", "fsl,sec-v4.0";
500                         fsl,sec-era = <8>;
501                         #address-cells = <1>;
502                         #size-cells = <1>;
503                         ranges = <0x0 0x00 0x8000000 0x100000>;
504                         reg = <0x00 0x8000000 0x0 0x100000>;
505                         interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
506                         dma-coherent;
507
508                         sec_jr0: jr@10000 {
509                                 compatible = "fsl,sec-v5.0-job-ring",
510                                              "fsl,sec-v4.0-job-ring";
511                                 reg        = <0x10000 0x10000>;
512                                 interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
513                         };
514
515                         sec_jr1: jr@20000 {
516                                 compatible = "fsl,sec-v5.0-job-ring",
517                                              "fsl,sec-v4.0-job-ring";
518                                 reg        = <0x20000 0x10000>;
519                                 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
520                         };
521
522                         sec_jr2: jr@30000 {
523                                 compatible = "fsl,sec-v5.0-job-ring",
524                                              "fsl,sec-v4.0-job-ring";
525                                 reg        = <0x30000 0x10000>;
526                                 interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
527                         };
528
529                         sec_jr3: jr@40000 {
530                                 compatible = "fsl,sec-v5.0-job-ring",
531                                              "fsl,sec-v4.0-job-ring";
532                                 reg        = <0x40000 0x10000>;
533                                 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
534                         };
535                 };
536
537                 pcie1: pcie@3400000 {
538                         compatible = "fsl,ls1088a-pcie";
539                         reg = <0x00 0x03400000 0x0 0x00100000>, /* controller registers */
540                               <0x20 0x00000000 0x0 0x00002000>; /* configuration space */
541                         reg-names = "regs", "config";
542                         interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
543                         interrupt-names = "aer";
544                         #address-cells = <3>;
545                         #size-cells = <2>;
546                         device_type = "pci";
547                         dma-coherent;
548                         num-viewport = <256>;
549                         bus-range = <0x0 0xff>;
550                         ranges = <0x81000000 0x0 0x00000000 0x20 0x00010000 0x0 0x00010000   /* downstream I/O */
551                                   0x82000000 0x0 0x40000000 0x20 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
552                         msi-parent = <&its>;
553                         #interrupt-cells = <1>;
554                         interrupt-map-mask = <0 0 0 7>;
555                         interrupt-map = <0000 0 0 1 &gic 0 0 0 109 IRQ_TYPE_LEVEL_HIGH>,
556                                         <0000 0 0 2 &gic 0 0 0 110 IRQ_TYPE_LEVEL_HIGH>,
557                                         <0000 0 0 3 &gic 0 0 0 111 IRQ_TYPE_LEVEL_HIGH>,
558                                         <0000 0 0 4 &gic 0 0 0 112 IRQ_TYPE_LEVEL_HIGH>;
559                         iommu-map = <0 &smmu 0 1>; /* Fixed-up by bootloader */
560                         status = "disabled";
561                 };
562
563                 pcie_ep1: pcie-ep@3400000 {
564                         compatible = "fsl,ls1088a-pcie-ep", "fsl,ls-pcie-ep";
565                         reg = <0x00 0x03400000 0x0 0x00100000>,
566                               <0x20 0x00000000 0x8 0x00000000>;
567                         reg-names = "regs", "addr_space";
568                         num-ib-windows = <24>;
569                         num-ob-windows = <256>;
570                         max-functions = /bits/ 8 <2>;
571                         status = "disabled";
572                 };
573
574                 pcie2: pcie@3500000 {
575                         compatible = "fsl,ls1088a-pcie";
576                         reg = <0x00 0x03500000 0x0 0x00100000>, /* controller registers */
577                               <0x28 0x00000000 0x0 0x00002000>; /* configuration space */
578                         reg-names = "regs", "config";
579                         interrupts = <0 113 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
580                         interrupt-names = "aer";
581                         #address-cells = <3>;
582                         #size-cells = <2>;
583                         device_type = "pci";
584                         dma-coherent;
585                         num-viewport = <6>;
586                         bus-range = <0x0 0xff>;
587                         ranges = <0x81000000 0x0 0x00000000 0x28 0x00010000 0x0 0x00010000   /* downstream I/O */
588                                   0x82000000 0x0 0x40000000 0x28 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
589                         msi-parent = <&its>;
590                         #interrupt-cells = <1>;
591                         interrupt-map-mask = <0 0 0 7>;
592                         interrupt-map = <0000 0 0 1 &gic 0 0 0 114 IRQ_TYPE_LEVEL_HIGH>,
593                                         <0000 0 0 2 &gic 0 0 0 115 IRQ_TYPE_LEVEL_HIGH>,
594                                         <0000 0 0 3 &gic 0 0 0 116 IRQ_TYPE_LEVEL_HIGH>,
595                                         <0000 0 0 4 &gic 0 0 0 117 IRQ_TYPE_LEVEL_HIGH>;
596                         iommu-map = <0 &smmu 0 1>; /* Fixed-up by bootloader */
597                         status = "disabled";
598                 };
599
600                 pcie_ep2: pcie-ep@3500000 {
601                         compatible = "fsl,ls1088a-pcie-ep", "fsl,ls-pcie-ep";
602                         reg = <0x00 0x03500000 0x0 0x00100000>,
603                               <0x28 0x00000000 0x8 0x00000000>;
604                         reg-names = "regs", "addr_space";
605                         num-ib-windows = <6>;
606                         num-ob-windows = <6>;
607                         status = "disabled";
608                 };
609
610                 pcie3: pcie@3600000 {
611                         compatible = "fsl,ls1088a-pcie";
612                         reg = <0x00 0x03600000 0x0 0x00100000>, /* controller registers */
613                               <0x30 0x00000000 0x0 0x00002000>; /* configuration space */
614                         reg-names = "regs", "config";
615                         interrupts = <0 118 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
616                         interrupt-names = "aer";
617                         #address-cells = <3>;
618                         #size-cells = <2>;
619                         device_type = "pci";
620                         dma-coherent;
621                         num-viewport = <6>;
622                         bus-range = <0x0 0xff>;
623                         ranges = <0x81000000 0x0 0x00000000 0x30 0x00010000 0x0 0x00010000   /* downstream I/O */
624                                   0x82000000 0x0 0x40000000 0x30 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
625                         msi-parent = <&its>;
626                         #interrupt-cells = <1>;
627                         interrupt-map-mask = <0 0 0 7>;
628                         interrupt-map = <0000 0 0 1 &gic 0 0 0 119 IRQ_TYPE_LEVEL_HIGH>,
629                                         <0000 0 0 2 &gic 0 0 0 120 IRQ_TYPE_LEVEL_HIGH>,
630                                         <0000 0 0 3 &gic 0 0 0 121 IRQ_TYPE_LEVEL_HIGH>,
631                                         <0000 0 0 4 &gic 0 0 0 122 IRQ_TYPE_LEVEL_HIGH>;
632                         iommu-map = <0 &smmu 0 1>; /* Fixed-up by bootloader */
633                         status = "disabled";
634                 };
635
636                 pcie_ep3: pcie-ep@3600000 {
637                         compatible = "fsl,ls1088a-pcie-ep", "fsl,ls-pcie-ep";
638                         reg = <0x00 0x03600000 0x0 0x00100000>,
639                               <0x30 0x00000000 0x8 0x00000000>;
640                         reg-names = "regs", "addr_space";
641                         num-ib-windows = <6>;
642                         num-ob-windows = <6>;
643                         status = "disabled";
644                 };
645
646                 smmu: iommu@5000000 {
647                         compatible = "arm,mmu-500";
648                         reg = <0 0x5000000 0 0x800000>;
649                         #iommu-cells = <1>;
650                         stream-match-mask = <0x7C00>;
651                         #global-interrupts = <12>;
652                                      // global secure fault
653                         interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
654                                      // combined secure
655                                      <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
656                                      // global non-secure fault
657                                      <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
658                                      // combined non-secure
659                                      <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
660                                      // performance counter interrupts 0-7
661                                      <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
662                                      <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
663                                      <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>,
664                                      <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>,
665                                      <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
666                                      <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
667                                      <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,
668                                      <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
669                                      // per context interrupt, 64 interrupts
670                                      <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
671                                      <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
672                                      <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
673                                      <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
674                                      <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>,
675                                      <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>,
676                                      <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>,
677                                      <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
678                                      <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
679                                      <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
680                                      <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>,
681                                      <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
682                                      <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
683                                      <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>,
684                                      <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
685                                      <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
686                                      <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
687                                      <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
688                                      <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
689                                      <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
690                                      <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>,
691                                      <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>,
692                                      <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
693                                      <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>,
694                                      <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
695                                      <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>,
696                                      <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>,
697                                      <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>,
698                                      <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>,
699                                      <GIC_SPI 175 IRQ_TYPE_LEVEL_HIGH>,
700                                      <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
701                                      <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>,
702                                      <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
703                                      <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>,
704                                      <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>,
705                                      <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
706                                      <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
707                                      <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
708                                      <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
709                                      <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
710                                      <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
711                                      <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
712                                      <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
713                                      <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
714                                      <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
715                                      <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
716                                      <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
717                                      <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>,
718                                      <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>,
719                                      <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>,
720                                      <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
721                                      <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
722                                      <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
723                                      <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
724                                      <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
725                                      <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>,
726                                      <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
727                                      <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
728                                      <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
729                                      <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>,
730                                      <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
731                                      <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
732                                      <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
733                                      <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
734                 };
735
736                 console@8340020 {
737                         compatible = "fsl,dpaa2-console";
738                         reg = <0x00000000 0x08340020 0 0x2>;
739                 };
740
741                 ptp-timer@8b95000 {
742                         compatible = "fsl,dpaa2-ptp";
743                         reg = <0x0 0x8b95000 0x0 0x100>;
744                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
745                                             QORIQ_CLK_PLL_DIV(1)>;
746                         little-endian;
747                         fsl,extts-fifo;
748                 };
749
750                 emdio1: mdio@8b96000 {
751                         compatible = "fsl,fman-memac-mdio";
752                         reg = <0x0 0x8b96000 0x0 0x1000>;
753                         little-endian;
754                         #address-cells = <1>;
755                         #size-cells = <0>;
756                         status = "disabled";
757                 };
758
759                 emdio2: mdio@8b97000 {
760                         compatible = "fsl,fman-memac-mdio";
761                         reg = <0x0 0x8b97000 0x0 0x1000>;
762                         little-endian;
763                         #address-cells = <1>;
764                         #size-cells = <0>;
765                         status = "disabled";
766                 };
767
768                 pcs_mdio2: mdio@8c0b000 {
769                         compatible = "fsl,fman-memac-mdio";
770                         reg = <0x0 0x8c0b000 0x0 0x1000>;
771                         little-endian;
772                         #address-cells = <1>;
773                         #size-cells = <0>;
774                         status = "disabled";
775
776                         pcs2: ethernet-phy@0 {
777                                 reg = <0>;
778                         };
779                 };
780
781                 pcs_mdio3: mdio@8c0f000 {
782                         compatible = "fsl,fman-memac-mdio";
783                         reg = <0x0 0x8c0f000 0x0 0x1000>;
784                         little-endian;
785                         #address-cells = <1>;
786                         #size-cells = <0>;
787                         status = "disabled";
788
789                         pcs3_0: ethernet-phy@0 {
790                                 reg = <0>;
791                         };
792
793                         pcs3_1: ethernet-phy@1 {
794                                 reg = <1>;
795                         };
796
797                         pcs3_2: ethernet-phy@2 {
798                                 reg = <2>;
799                         };
800
801                         pcs3_3: ethernet-phy@3 {
802                                 reg = <3>;
803                         };
804                 };
805
806                 pcs_mdio7: mdio@8c1f000 {
807                         compatible = "fsl,fman-memac-mdio";
808                         reg = <0x0 0x8c1f000 0x0 0x1000>;
809                         little-endian;
810                         #address-cells = <1>;
811                         #size-cells = <0>;
812                         status = "disabled";
813
814                         pcs7_0: ethernet-phy@0 {
815                                 reg = <0>;
816                         };
817
818                         pcs7_1: ethernet-phy@1 {
819                                 reg = <1>;
820                         };
821
822                         pcs7_2: ethernet-phy@2 {
823                                 reg = <2>;
824                         };
825
826                         pcs7_3: ethernet-phy@3 {
827                                 reg = <3>;
828                         };
829                 };
830
831                 cluster1_core0_watchdog: wdt@c000000 {
832                         compatible = "arm,sp805-wdt", "arm,primecell";
833                         reg = <0x0 0xc000000 0x0 0x1000>;
834                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
835                                             QORIQ_CLK_PLL_DIV(16)>,
836                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
837                                             QORIQ_CLK_PLL_DIV(16)>;
838                         clock-names = "wdog_clk", "apb_pclk";
839                 };
840
841                 cluster1_core1_watchdog: wdt@c010000 {
842                         compatible = "arm,sp805-wdt", "arm,primecell";
843                         reg = <0x0 0xc010000 0x0 0x1000>;
844                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
845                                             QORIQ_CLK_PLL_DIV(16)>,
846                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
847                                             QORIQ_CLK_PLL_DIV(16)>;
848                         clock-names = "wdog_clk", "apb_pclk";
849                 };
850
851                 cluster1_core2_watchdog: wdt@c020000 {
852                         compatible = "arm,sp805-wdt", "arm,primecell";
853                         reg = <0x0 0xc020000 0x0 0x1000>;
854                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
855                                             QORIQ_CLK_PLL_DIV(16)>,
856                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
857                                             QORIQ_CLK_PLL_DIV(16)>;
858                         clock-names = "wdog_clk", "apb_pclk";
859                 };
860
861                 cluster1_core3_watchdog: wdt@c030000 {
862                         compatible = "arm,sp805-wdt", "arm,primecell";
863                         reg = <0x0 0xc030000 0x0 0x1000>;
864                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
865                                             QORIQ_CLK_PLL_DIV(16)>,
866                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
867                                             QORIQ_CLK_PLL_DIV(16)>;
868                         clock-names = "wdog_clk", "apb_pclk";
869                 };
870
871                 cluster2_core0_watchdog: wdt@c100000 {
872                         compatible = "arm,sp805-wdt", "arm,primecell";
873                         reg = <0x0 0xc100000 0x0 0x1000>;
874                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
875                                             QORIQ_CLK_PLL_DIV(16)>,
876                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
877                                             QORIQ_CLK_PLL_DIV(16)>;
878                         clock-names = "wdog_clk", "apb_pclk";
879                 };
880
881                 cluster2_core1_watchdog: wdt@c110000 {
882                         compatible = "arm,sp805-wdt", "arm,primecell";
883                         reg = <0x0 0xc110000 0x0 0x1000>;
884                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
885                                             QORIQ_CLK_PLL_DIV(16)>,
886                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
887                                             QORIQ_CLK_PLL_DIV(16)>;
888                         clock-names = "wdog_clk", "apb_pclk";
889                 };
890
891                 cluster2_core2_watchdog: wdt@c120000 {
892                         compatible = "arm,sp805-wdt", "arm,primecell";
893                         reg = <0x0 0xc120000 0x0 0x1000>;
894                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
895                                             QORIQ_CLK_PLL_DIV(16)>,
896                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
897                                             QORIQ_CLK_PLL_DIV(16)>;
898                         clock-names = "wdog_clk", "apb_pclk";
899                 };
900
901                 cluster2_core3_watchdog: wdt@c130000 {
902                         compatible = "arm,sp805-wdt", "arm,primecell";
903                         reg = <0x0 0xc130000 0x0 0x1000>;
904                         clocks = <&clockgen QORIQ_CLK_PLATFORM_PLL
905                                             QORIQ_CLK_PLL_DIV(16)>,
906                                  <&clockgen QORIQ_CLK_PLATFORM_PLL
907                                             QORIQ_CLK_PLL_DIV(16)>;
908                         clock-names = "wdog_clk", "apb_pclk";
909                 };
910
911                 fsl_mc: fsl-mc@80c000000 {
912                         compatible = "fsl,qoriq-mc";
913                         reg = <0x00000008 0x0c000000 0 0x40>,    /* MC portal base */
914                               <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
915                         msi-parent = <&its>;
916                         iommu-map = <0 &smmu 0 0>;      /* This is fixed-up by u-boot */
917                         dma-coherent;
918                         #address-cells = <3>;
919                         #size-cells = <1>;
920
921                         /*
922                          * Region type 0x0 - MC portals
923                          * Region type 0x1 - QBMAN portals
924                          */
925                         ranges = <0x0 0x0 0x0 0x8 0x0c000000 0x4000000
926                                   0x1 0x0 0x0 0x8 0x18000000 0x8000000>;
927
928                         dpmacs {
929                                 #address-cells = <1>;
930                                 #size-cells = <0>;
931
932                                 dpmac1: ethernet@1 {
933                                         compatible = "fsl,qoriq-mc-dpmac";
934                                         reg = <1>;
935                                 };
936
937                                 dpmac2: ethernet@2 {
938                                         compatible = "fsl,qoriq-mc-dpmac";
939                                         reg = <2>;
940                                 };
941
942                                 dpmac3: ethernet@3 {
943                                         compatible = "fsl,qoriq-mc-dpmac";
944                                         reg = <3>;
945                                 };
946
947                                 dpmac4: ethernet@4 {
948                                         compatible = "fsl,qoriq-mc-dpmac";
949                                         reg = <4>;
950                                 };
951
952                                 dpmac5: ethernet@5 {
953                                         compatible = "fsl,qoriq-mc-dpmac";
954                                         reg = <5>;
955                                 };
956
957                                 dpmac6: ethernet@6 {
958                                         compatible = "fsl,qoriq-mc-dpmac";
959                                         reg = <6>;
960                                 };
961
962                                 dpmac7: ethernet@7 {
963                                         compatible = "fsl,qoriq-mc-dpmac";
964                                         reg = <7>;
965                                 };
966
967                                 dpmac8: ethernet@8 {
968                                         compatible = "fsl,qoriq-mc-dpmac";
969                                         reg = <8>;
970                                 };
971
972                                 dpmac9: ethernet@9 {
973                                         compatible = "fsl,qoriq-mc-dpmac";
974                                         reg = <9>;
975                                 };
976
977                                 dpmac10: ethernet@a {
978                                         compatible = "fsl,qoriq-mc-dpmac";
979                                         reg = <0xa>;
980                                 };
981                         };
982                 };
983
984                 rcpm: power-controller@1e34040 {
985                         compatible = "fsl,ls1088a-rcpm", "fsl,qoriq-rcpm-2.1+";
986                         reg = <0x0 0x1e34040 0x0 0x18>;
987                         #fsl,rcpm-wakeup-cells = <6>;
988                         little-endian;
989                 };
990
991                 ftm_alarm0: timer@2800000 {
992                         compatible = "fsl,ls1088a-ftm-alarm";
993                         reg = <0x0 0x2800000 0x0 0x10000>;
994                         fsl,rcpm-wakeup = <&rcpm 0x0 0x0 0x0 0x0 0x4000 0x0>;
995                         interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
996                 };
997         };
998
999         firmware {
1000                 optee {
1001                         compatible = "linaro,optee-tz";
1002                         method = "smc";
1003                 };
1004         };
1005 };