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