1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Device Tree Include file for Freescale Layerscape-1046A family SoC. 4 * 5 * Copyright 2016 Freescale Semiconductor, Inc. 6 * Copyright 2018 NXP 7 * 8 * Mingkai Hu <mingkai.hu@nxp.com> 9 */ 10 11#include <dt-bindings/interrupt-controller/arm-gic.h> 12#include <dt-bindings/thermal/thermal.h> 13 14/ { 15 compatible = "fsl,ls1046a"; 16 interrupt-parent = <&gic>; 17 #address-cells = <2>; 18 #size-cells = <2>; 19 20 aliases { 21 crypto = &crypto; 22 fman0 = &fman0; 23 ethernet0 = &enet0; 24 ethernet1 = &enet1; 25 ethernet2 = &enet2; 26 ethernet3 = &enet3; 27 ethernet4 = &enet4; 28 ethernet5 = &enet5; 29 ethernet6 = &enet6; 30 ethernet7 = &enet7; 31 }; 32 33 cpus { 34 #address-cells = <1>; 35 #size-cells = <0>; 36 37 cpu0: cpu@0 { 38 device_type = "cpu"; 39 compatible = "arm,cortex-a72"; 40 reg = <0x0>; 41 clocks = <&clockgen 1 0>; 42 next-level-cache = <&l2>; 43 cpu-idle-states = <&CPU_PH20>; 44 #cooling-cells = <2>; 45 }; 46 47 cpu1: cpu@1 { 48 device_type = "cpu"; 49 compatible = "arm,cortex-a72"; 50 reg = <0x1>; 51 clocks = <&clockgen 1 0>; 52 next-level-cache = <&l2>; 53 cpu-idle-states = <&CPU_PH20>; 54 #cooling-cells = <2>; 55 }; 56 57 cpu2: cpu@2 { 58 device_type = "cpu"; 59 compatible = "arm,cortex-a72"; 60 reg = <0x2>; 61 clocks = <&clockgen 1 0>; 62 next-level-cache = <&l2>; 63 cpu-idle-states = <&CPU_PH20>; 64 #cooling-cells = <2>; 65 }; 66 67 cpu3: cpu@3 { 68 device_type = "cpu"; 69 compatible = "arm,cortex-a72"; 70 reg = <0x3>; 71 clocks = <&clockgen 1 0>; 72 next-level-cache = <&l2>; 73 cpu-idle-states = <&CPU_PH20>; 74 #cooling-cells = <2>; 75 }; 76 77 l2: l2-cache { 78 compatible = "cache"; 79 }; 80 }; 81 82 idle-states { 83 /* 84 * PSCI node is not added default, U-boot will add missing 85 * parts if it determines to use PSCI. 86 */ 87 entry-method = "psci"; 88 89 CPU_PH20: cpu-ph20 { 90 compatible = "arm,idle-state"; 91 idle-state-name = "PH20"; 92 arm,psci-suspend-param = <0x0>; 93 entry-latency-us = <1000>; 94 exit-latency-us = <1000>; 95 min-residency-us = <3000>; 96 }; 97 }; 98 99 memory@80000000 { 100 device_type = "memory"; 101 /* Real size will be filled by bootloader */ 102 reg = <0x0 0x80000000 0x0 0x0>; 103 }; 104 105 sysclk: sysclk { 106 compatible = "fixed-clock"; 107 #clock-cells = <0>; 108 clock-frequency = <100000000>; 109 clock-output-names = "sysclk"; 110 }; 111 112 reboot { 113 compatible ="syscon-reboot"; 114 regmap = <&dcfg>; 115 offset = <0xb0>; 116 mask = <0x02>; 117 }; 118 119 thermal-zones { 120 cpu_thermal: cpu-thermal { 121 polling-delay-passive = <1000>; 122 polling-delay = <5000>; 123 thermal-sensors = <&tmu 3>; 124 125 trips { 126 cpu_alert: cpu-alert { 127 temperature = <85000>; 128 hysteresis = <2000>; 129 type = "passive"; 130 }; 131 132 cpu_crit: cpu-crit { 133 temperature = <95000>; 134 hysteresis = <2000>; 135 type = "critical"; 136 }; 137 }; 138 139 cooling-maps { 140 map0 { 141 trip = <&cpu_alert>; 142 cooling-device = 143 <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 144 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 145 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 146 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 147 }; 148 }; 149 }; 150 }; 151 152 timer { 153 compatible = "arm,armv8-timer"; 154 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(0xf) | 155 IRQ_TYPE_LEVEL_LOW)>, 156 <GIC_PPI 14 (GIC_CPU_MASK_RAW(0xf) | 157 IRQ_TYPE_LEVEL_LOW)>, 158 <GIC_PPI 11 (GIC_CPU_MASK_RAW(0xf) | 159 IRQ_TYPE_LEVEL_LOW)>, 160 <GIC_PPI 10 (GIC_CPU_MASK_RAW(0xf) | 161 IRQ_TYPE_LEVEL_LOW)>; 162 }; 163 164 pmu { 165 compatible = "arm,cortex-a72-pmu"; 166 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 167 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>, 168 <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>, 169 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 170 interrupt-affinity = <&cpu0>, 171 <&cpu1>, 172 <&cpu2>, 173 <&cpu3>; 174 }; 175 176 gic: interrupt-controller@1400000 { 177 compatible = "arm,gic-400"; 178 #interrupt-cells = <3>; 179 interrupt-controller; 180 reg = <0x0 0x1410000 0 0x10000>, /* GICD */ 181 <0x0 0x1420000 0 0x20000>, /* GICC */ 182 <0x0 0x1440000 0 0x20000>, /* GICH */ 183 <0x0 0x1460000 0 0x20000>; /* GICV */ 184 interrupts = <GIC_PPI 9 (GIC_CPU_MASK_RAW(0xf) | 185 IRQ_TYPE_LEVEL_LOW)>; 186 }; 187 188 soc: soc { 189 compatible = "simple-bus"; 190 #address-cells = <2>; 191 #size-cells = <2>; 192 ranges; 193 194 ddr: memory-controller@1080000 { 195 compatible = "fsl,qoriq-memory-controller"; 196 reg = <0x0 0x1080000 0x0 0x1000>; 197 interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>; 198 big-endian; 199 }; 200 201 ifc: ifc@1530000 { 202 compatible = "fsl,ifc", "simple-bus"; 203 reg = <0x0 0x1530000 0x0 0x10000>; 204 interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 205 status = "disabled"; 206 }; 207 208 qspi: spi@1550000 { 209 compatible = "fsl,ls1021a-qspi"; 210 #address-cells = <1>; 211 #size-cells = <0>; 212 reg = <0x0 0x1550000 0x0 0x10000>, 213 <0x0 0x40000000 0x0 0x10000000>; 214 reg-names = "QuadSPI", "QuadSPI-memory"; 215 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 216 clock-names = "qspi_en", "qspi"; 217 clocks = <&clockgen 4 1>, <&clockgen 4 1>; 218 big-endian; 219 fsl,qspi-has-second-chip; 220 status = "disabled"; 221 }; 222 223 esdhc: esdhc@1560000 { 224 compatible = "fsl,ls1046a-esdhc", "fsl,esdhc"; 225 reg = <0x0 0x1560000 0x0 0x10000>; 226 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 227 clocks = <&clockgen 2 1>; 228 voltage-ranges = <1800 1800 3300 3300>; 229 sdhci,auto-cmd12; 230 big-endian; 231 bus-width = <4>; 232 }; 233 234 scfg: scfg@1570000 { 235 compatible = "fsl,ls1046a-scfg", "syscon"; 236 reg = <0x0 0x1570000 0x0 0x10000>; 237 big-endian; 238 }; 239 240 crypto: crypto@1700000 { 241 compatible = "fsl,sec-v5.4", "fsl,sec-v5.0", 242 "fsl,sec-v4.0"; 243 fsl,sec-era = <8>; 244 #address-cells = <1>; 245 #size-cells = <1>; 246 ranges = <0x0 0x00 0x1700000 0x100000>; 247 reg = <0x00 0x1700000 0x0 0x100000>; 248 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 249 250 sec_jr0: jr@10000 { 251 compatible = "fsl,sec-v5.4-job-ring", 252 "fsl,sec-v5.0-job-ring", 253 "fsl,sec-v4.0-job-ring"; 254 reg = <0x10000 0x10000>; 255 interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 256 }; 257 258 sec_jr1: jr@20000 { 259 compatible = "fsl,sec-v5.4-job-ring", 260 "fsl,sec-v5.0-job-ring", 261 "fsl,sec-v4.0-job-ring"; 262 reg = <0x20000 0x10000>; 263 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 264 }; 265 266 sec_jr2: jr@30000 { 267 compatible = "fsl,sec-v5.4-job-ring", 268 "fsl,sec-v5.0-job-ring", 269 "fsl,sec-v4.0-job-ring"; 270 reg = <0x30000 0x10000>; 271 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 272 }; 273 274 sec_jr3: jr@40000 { 275 compatible = "fsl,sec-v5.4-job-ring", 276 "fsl,sec-v5.0-job-ring", 277 "fsl,sec-v4.0-job-ring"; 278 reg = <0x40000 0x10000>; 279 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 280 }; 281 }; 282 283 qman: qman@1880000 { 284 compatible = "fsl,qman"; 285 reg = <0x0 0x1880000 0x0 0x10000>; 286 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 287 memory-region = <&qman_fqd &qman_pfdr>; 288 289 }; 290 291 bman: bman@1890000 { 292 compatible = "fsl,bman"; 293 reg = <0x0 0x1890000 0x0 0x10000>; 294 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 295 memory-region = <&bman_fbpr>; 296 297 }; 298 299 qportals: qman-portals@500000000 { 300 ranges = <0x0 0x5 0x00000000 0x8000000>; 301 }; 302 303 bportals: bman-portals@508000000 { 304 ranges = <0x0 0x5 0x08000000 0x8000000>; 305 }; 306 307 dcfg: dcfg@1ee0000 { 308 compatible = "fsl,ls1046a-dcfg", "syscon"; 309 reg = <0x0 0x1ee0000 0x0 0x10000>; 310 big-endian; 311 }; 312 313 clockgen: clocking@1ee1000 { 314 compatible = "fsl,ls1046a-clockgen"; 315 reg = <0x0 0x1ee1000 0x0 0x1000>; 316 #clock-cells = <2>; 317 clocks = <&sysclk>; 318 }; 319 320 tmu: tmu@1f00000 { 321 compatible = "fsl,qoriq-tmu"; 322 reg = <0x0 0x1f00000 0x0 0x10000>; 323 interrupts = <0 33 0x4>; 324 fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>; 325 fsl,tmu-calibration = 326 /* Calibration data group 1 */ 327 <0x00000000 0x00000026 328 0x00000001 0x0000002d 329 0x00000002 0x00000032 330 0x00000003 0x00000039 331 0x00000004 0x0000003f 332 0x00000005 0x00000046 333 0x00000006 0x0000004d 334 0x00000007 0x00000054 335 0x00000008 0x0000005a 336 0x00000009 0x00000061 337 0x0000000a 0x0000006a 338 0x0000000b 0x00000071 339 /* Calibration data group 2 */ 340 0x00010000 0x00000025 341 0x00010001 0x0000002c 342 0x00010002 0x00000035 343 0x00010003 0x0000003d 344 0x00010004 0x00000045 345 0x00010005 0x0000004e 346 0x00010006 0x00000057 347 0x00010007 0x00000061 348 0x00010008 0x0000006b 349 0x00010009 0x00000076 350 /* Calibration data group 3 */ 351 0x00020000 0x00000029 352 0x00020001 0x00000033 353 0x00020002 0x0000003d 354 0x00020003 0x00000049 355 0x00020004 0x00000056 356 0x00020005 0x00000061 357 0x00020006 0x0000006d 358 /* Calibration data group 4 */ 359 0x00030000 0x00000021 360 0x00030001 0x0000002a 361 0x00030002 0x0000003c 362 0x00030003 0x0000004e>; 363 big-endian; 364 #thermal-sensor-cells = <1>; 365 }; 366 367 dspi: spi@2100000 { 368 compatible = "fsl,ls1021a-v1.0-dspi"; 369 #address-cells = <1>; 370 #size-cells = <0>; 371 reg = <0x0 0x2100000 0x0 0x10000>; 372 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 373 clock-names = "dspi"; 374 clocks = <&clockgen 4 1>; 375 spi-num-chipselects = <5>; 376 big-endian; 377 status = "disabled"; 378 }; 379 380 i2c0: i2c@2180000 { 381 compatible = "fsl,vf610-i2c"; 382 #address-cells = <1>; 383 #size-cells = <0>; 384 reg = <0x0 0x2180000 0x0 0x10000>; 385 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>; 386 clocks = <&clockgen 4 1>; 387 dmas = <&edma0 1 39>, 388 <&edma0 1 38>; 389 dma-names = "tx", "rx"; 390 status = "disabled"; 391 }; 392 393 i2c1: i2c@2190000 { 394 compatible = "fsl,vf610-i2c"; 395 #address-cells = <1>; 396 #size-cells = <0>; 397 reg = <0x0 0x2190000 0x0 0x10000>; 398 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; 399 clocks = <&clockgen 4 1>; 400 status = "disabled"; 401 }; 402 403 i2c2: i2c@21a0000 { 404 compatible = "fsl,vf610-i2c"; 405 #address-cells = <1>; 406 #size-cells = <0>; 407 reg = <0x0 0x21a0000 0x0 0x10000>; 408 interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>; 409 clocks = <&clockgen 4 1>; 410 status = "disabled"; 411 }; 412 413 i2c3: i2c@21b0000 { 414 compatible = "fsl,vf610-i2c"; 415 #address-cells = <1>; 416 #size-cells = <0>; 417 reg = <0x0 0x21b0000 0x0 0x10000>; 418 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 419 clocks = <&clockgen 4 1>; 420 status = "disabled"; 421 }; 422 423 duart0: serial@21c0500 { 424 compatible = "fsl,ns16550", "ns16550a"; 425 reg = <0x00 0x21c0500 0x0 0x100>; 426 interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 427 clocks = <&clockgen 4 1>; 428 status = "disabled"; 429 }; 430 431 duart1: serial@21c0600 { 432 compatible = "fsl,ns16550", "ns16550a"; 433 reg = <0x00 0x21c0600 0x0 0x100>; 434 interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>; 435 clocks = <&clockgen 4 1>; 436 status = "disabled"; 437 }; 438 439 duart2: serial@21d0500 { 440 compatible = "fsl,ns16550", "ns16550a"; 441 reg = <0x0 0x21d0500 0x0 0x100>; 442 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 443 clocks = <&clockgen 4 1>; 444 status = "disabled"; 445 }; 446 447 duart3: serial@21d0600 { 448 compatible = "fsl,ns16550", "ns16550a"; 449 reg = <0x0 0x21d0600 0x0 0x100>; 450 interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 451 clocks = <&clockgen 4 1>; 452 status = "disabled"; 453 }; 454 455 gpio0: gpio@2300000 { 456 compatible = "fsl,qoriq-gpio"; 457 reg = <0x0 0x2300000 0x0 0x10000>; 458 interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; 459 gpio-controller; 460 #gpio-cells = <2>; 461 interrupt-controller; 462 #interrupt-cells = <2>; 463 }; 464 465 gpio1: gpio@2310000 { 466 compatible = "fsl,qoriq-gpio"; 467 reg = <0x0 0x2310000 0x0 0x10000>; 468 interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 469 gpio-controller; 470 #gpio-cells = <2>; 471 interrupt-controller; 472 #interrupt-cells = <2>; 473 }; 474 475 gpio2: gpio@2320000 { 476 compatible = "fsl,qoriq-gpio"; 477 reg = <0x0 0x2320000 0x0 0x10000>; 478 interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>; 479 gpio-controller; 480 #gpio-cells = <2>; 481 interrupt-controller; 482 #interrupt-cells = <2>; 483 }; 484 485 gpio3: gpio@2330000 { 486 compatible = "fsl,qoriq-gpio"; 487 reg = <0x0 0x2330000 0x0 0x10000>; 488 interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 489 gpio-controller; 490 #gpio-cells = <2>; 491 interrupt-controller; 492 #interrupt-cells = <2>; 493 }; 494 495 lpuart0: serial@2950000 { 496 compatible = "fsl,ls1021a-lpuart"; 497 reg = <0x0 0x2950000 0x0 0x1000>; 498 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 499 clocks = <&clockgen 4 0>; 500 clock-names = "ipg"; 501 status = "disabled"; 502 }; 503 504 lpuart1: serial@2960000 { 505 compatible = "fsl,ls1021a-lpuart"; 506 reg = <0x0 0x2960000 0x0 0x1000>; 507 interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 508 clocks = <&clockgen 4 1>; 509 clock-names = "ipg"; 510 status = "disabled"; 511 }; 512 513 lpuart2: serial@2970000 { 514 compatible = "fsl,ls1021a-lpuart"; 515 reg = <0x0 0x2970000 0x0 0x1000>; 516 interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 517 clocks = <&clockgen 4 1>; 518 clock-names = "ipg"; 519 status = "disabled"; 520 }; 521 522 lpuart3: serial@2980000 { 523 compatible = "fsl,ls1021a-lpuart"; 524 reg = <0x0 0x2980000 0x0 0x1000>; 525 interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 526 clocks = <&clockgen 4 1>; 527 clock-names = "ipg"; 528 status = "disabled"; 529 }; 530 531 lpuart4: serial@2990000 { 532 compatible = "fsl,ls1021a-lpuart"; 533 reg = <0x0 0x2990000 0x0 0x1000>; 534 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 535 clocks = <&clockgen 4 1>; 536 clock-names = "ipg"; 537 status = "disabled"; 538 }; 539 540 lpuart5: serial@29a0000 { 541 compatible = "fsl,ls1021a-lpuart"; 542 reg = <0x0 0x29a0000 0x0 0x1000>; 543 interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; 544 clocks = <&clockgen 4 1>; 545 clock-names = "ipg"; 546 status = "disabled"; 547 }; 548 549 wdog0: watchdog@2ad0000 { 550 compatible = "fsl,imx21-wdt"; 551 reg = <0x0 0x2ad0000 0x0 0x10000>; 552 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 553 clocks = <&clockgen 4 1>; 554 big-endian; 555 }; 556 557 edma0: edma@2c00000 { 558 #dma-cells = <2>; 559 compatible = "fsl,vf610-edma"; 560 reg = <0x0 0x2c00000 0x0 0x10000>, 561 <0x0 0x2c10000 0x0 0x10000>, 562 <0x0 0x2c20000 0x0 0x10000>; 563 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, 564 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 565 interrupt-names = "edma-tx", "edma-err"; 566 dma-channels = <32>; 567 big-endian; 568 clock-names = "dmamux0", "dmamux1"; 569 clocks = <&clockgen 4 1>, 570 <&clockgen 4 1>; 571 }; 572 573 usb0: usb@2f00000 { 574 compatible = "snps,dwc3"; 575 reg = <0x0 0x2f00000 0x0 0x10000>; 576 interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 577 dr_mode = "host"; 578 snps,quirk-frame-length-adjustment = <0x20>; 579 snps,dis_rxdet_inp3_quirk; 580 snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; 581 }; 582 583 usb1: usb@3000000 { 584 compatible = "snps,dwc3"; 585 reg = <0x0 0x3000000 0x0 0x10000>; 586 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; 587 dr_mode = "host"; 588 snps,quirk-frame-length-adjustment = <0x20>; 589 snps,dis_rxdet_inp3_quirk; 590 snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; 591 }; 592 593 usb2: usb@3100000 { 594 compatible = "snps,dwc3"; 595 reg = <0x0 0x3100000 0x0 0x10000>; 596 interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 597 dr_mode = "host"; 598 snps,quirk-frame-length-adjustment = <0x20>; 599 snps,dis_rxdet_inp3_quirk; 600 snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; 601 }; 602 603 sata: sata@3200000 { 604 compatible = "fsl,ls1046a-ahci"; 605 reg = <0x0 0x3200000 0x0 0x10000>, 606 <0x0 0x20140520 0x0 0x4>; 607 reg-names = "ahci", "sata-ecc"; 608 interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 609 clocks = <&clockgen 4 1>; 610 }; 611 612 msi1: msi-controller@1580000 { 613 compatible = "fsl,ls1046a-msi"; 614 msi-controller; 615 reg = <0x0 0x1580000 0x0 0x10000>; 616 interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, 617 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, 618 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 619 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; 620 }; 621 622 msi2: msi-controller@1590000 { 623 compatible = "fsl,ls1046a-msi"; 624 msi-controller; 625 reg = <0x0 0x1590000 0x0 0x10000>; 626 interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>, 627 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, 628 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, 629 <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 630 }; 631 632 msi3: msi-controller@15a0000 { 633 compatible = "fsl,ls1046a-msi"; 634 msi-controller; 635 reg = <0x0 0x15a0000 0x0 0x10000>; 636 interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 637 <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>, 638 <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>, 639 <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>; 640 }; 641 642 pcie@3400000 { 643 compatible = "fsl,ls1046a-pcie"; 644 reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */ 645 0x40 0x00000000 0x0 0x00002000>; /* configuration space */ 646 reg-names = "regs", "config"; 647 interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ 648 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; /* PME interrupt */ 649 interrupt-names = "aer", "pme"; 650 #address-cells = <3>; 651 #size-cells = <2>; 652 device_type = "pci"; 653 dma-coherent; 654 num-lanes = <4>; 655 num-viewport = <8>; 656 bus-range = <0x0 0xff>; 657 ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000 /* downstream I/O */ 658 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */ 659 msi-parent = <&msi1>, <&msi2>, <&msi3>; 660 #interrupt-cells = <1>; 661 interrupt-map-mask = <0 0 0 7>; 662 interrupt-map = <0000 0 0 1 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 663 <0000 0 0 2 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 664 <0000 0 0 3 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, 665 <0000 0 0 4 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 666 status = "disabled"; 667 }; 668 669 pcie_ep@3400000 { 670 compatible = "fsl,ls1046a-pcie-ep","fsl,ls-pcie-ep"; 671 reg = <0x00 0x03400000 0x0 0x00100000 672 0x40 0x00000000 0x8 0x00000000>; 673 reg-names = "regs", "addr_space"; 674 num-ib-windows = <6>; 675 num-ob-windows = <8>; 676 num-lanes = <2>; 677 status = "disabled"; 678 }; 679 680 pcie@3500000 { 681 compatible = "fsl,ls1046a-pcie"; 682 reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */ 683 0x48 0x00000000 0x0 0x00002000>; /* configuration space */ 684 reg-names = "regs", "config"; 685 interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ 686 <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; /* PME interrupt */ 687 interrupt-names = "aer", "pme"; 688 #address-cells = <3>; 689 #size-cells = <2>; 690 device_type = "pci"; 691 dma-coherent; 692 num-lanes = <2>; 693 num-viewport = <8>; 694 bus-range = <0x0 0xff>; 695 ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000 /* downstream I/O */ 696 0x82000000 0x0 0x40000000 0x48 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */ 697 msi-parent = <&msi2>, <&msi3>, <&msi1>; 698 #interrupt-cells = <1>; 699 interrupt-map-mask = <0 0 0 7>; 700 interrupt-map = <0000 0 0 1 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 701 <0000 0 0 2 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 702 <0000 0 0 3 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, 703 <0000 0 0 4 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 704 status = "disabled"; 705 }; 706 707 pcie_ep@3500000 { 708 compatible = "fsl,ls1046a-pcie-ep","fsl,ls-pcie-ep"; 709 reg = <0x00 0x03500000 0x0 0x00100000 710 0x48 0x00000000 0x8 0x00000000>; 711 reg-names = "regs", "addr_space"; 712 num-ib-windows = <6>; 713 num-ob-windows = <8>; 714 num-lanes = <2>; 715 status = "disabled"; 716 }; 717 718 pcie@3600000 { 719 compatible = "fsl,ls1046a-pcie"; 720 reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */ 721 0x50 0x00000000 0x0 0x00002000>; /* configuration space */ 722 reg-names = "regs", "config"; 723 interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ 724 <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>; /* PME interrupt */ 725 interrupt-names = "aer", "pme"; 726 #address-cells = <3>; 727 #size-cells = <2>; 728 device_type = "pci"; 729 dma-coherent; 730 num-lanes = <2>; 731 num-viewport = <8>; 732 bus-range = <0x0 0xff>; 733 ranges = <0x81000000 0x0 0x00000000 0x50 0x00010000 0x0 0x00010000 /* downstream I/O */ 734 0x82000000 0x0 0x40000000 0x50 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */ 735 msi-parent = <&msi3>, <&msi1>, <&msi2>; 736 #interrupt-cells = <1>; 737 interrupt-map-mask = <0 0 0 7>; 738 interrupt-map = <0000 0 0 1 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 739 <0000 0 0 2 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 740 <0000 0 0 3 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 741 <0000 0 0 4 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>; 742 status = "disabled"; 743 }; 744 745 pcie_ep@3600000 { 746 compatible = "fsl,ls1046a-pcie-ep", "fsl,ls-pcie-ep"; 747 reg = <0x00 0x03600000 0x0 0x00100000 748 0x50 0x00000000 0x8 0x00000000>; 749 reg-names = "regs", "addr_space"; 750 num-ib-windows = <6>; 751 num-ob-windows = <8>; 752 num-lanes = <2>; 753 status = "disabled"; 754 }; 755 756 qdma: dma-controller@8380000 { 757 compatible = "fsl,ls1046a-qdma", "fsl,ls1021a-qdma"; 758 reg = <0x0 0x8380000 0x0 0x1000>, /* Controller regs */ 759 <0x0 0x8390000 0x0 0x10000>, /* Status regs */ 760 <0x0 0x83a0000 0x0 0x40000>; /* Block regs */ 761 interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 762 <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 763 <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 764 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 765 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 766 interrupt-names = "qdma-error", "qdma-queue0", 767 "qdma-queue1", "qdma-queue2", "qdma-queue3"; 768 dma-channels = <8>; 769 block-number = <1>; 770 block-offset = <0x10000>; 771 fsl,dma-queues = <2>; 772 status-sizes = <64>; 773 queue-sizes = <64 64>; 774 big-endian; 775 }; 776 }; 777 778 reserved-memory { 779 #address-cells = <2>; 780 #size-cells = <2>; 781 ranges; 782 783 bman_fbpr: bman-fbpr { 784 compatible = "shared-dma-pool"; 785 size = <0 0x1000000>; 786 alignment = <0 0x1000000>; 787 no-map; 788 }; 789 790 qman_fqd: qman-fqd { 791 compatible = "shared-dma-pool"; 792 size = <0 0x800000>; 793 alignment = <0 0x800000>; 794 no-map; 795 }; 796 797 qman_pfdr: qman-pfdr { 798 compatible = "shared-dma-pool"; 799 size = <0 0x2000000>; 800 alignment = <0 0x2000000>; 801 no-map; 802 }; 803 }; 804 805 firmware { 806 optee { 807 compatible = "linaro,optee-tz"; 808 method = "smc"; 809 }; 810 }; 811}; 812 813#include "qoriq-qman-portals.dtsi" 814#include "qoriq-bman-portals.dtsi" 815