1*bb7c7e71SDivin Raj/* 2*bb7c7e71SDivin Raj * Copyright (c) 2024, Arm Limited. All rights reserved. 3*bb7c7e71SDivin Raj * 4*bb7c7e71SDivin Raj * SPDX-License-Identifier: BSD-3-Clause 5*bb7c7e71SDivin Raj */ 6*bb7c7e71SDivin Raj 7*bb7c7e71SDivin Raj/dts-v1/; 8*bb7c7e71SDivin Raj 9*bb7c7e71SDivin Raj#include <dt-bindings/interrupt-controller/arm-gic.h> 10*bb7c7e71SDivin Raj 11*bb7c7e71SDivin Raj/ { 12*bb7c7e71SDivin Raj model = "RD-1 AE"; 13*bb7c7e71SDivin Raj compatible = "arm,rd1ae", "arm,neoverse"; 14*bb7c7e71SDivin Raj interrupt-parent = <&gic>; 15*bb7c7e71SDivin Raj #address-cells = <2>; 16*bb7c7e71SDivin Raj #size-cells = <2>; 17*bb7c7e71SDivin Raj 18*bb7c7e71SDivin Raj chosen { 19*bb7c7e71SDivin Raj stdout-path = &soc_serial0; 20*bb7c7e71SDivin Raj }; 21*bb7c7e71SDivin Raj 22*bb7c7e71SDivin Raj cpus { 23*bb7c7e71SDivin Raj #address-cells = <2>; 24*bb7c7e71SDivin Raj #size-cells = <0>; 25*bb7c7e71SDivin Raj 26*bb7c7e71SDivin Raj cpu0: cpu@0 { 27*bb7c7e71SDivin Raj device_type = "cpu"; 28*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 29*bb7c7e71SDivin Raj reg = <0x0 0x0>; 30*bb7c7e71SDivin Raj enable-method = "psci"; 31*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 32*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 33*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 34*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 35*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 36*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 37*bb7c7e71SDivin Raj }; 38*bb7c7e71SDivin Raj cpu1: cpu@10000 { 39*bb7c7e71SDivin Raj device_type = "cpu"; 40*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 41*bb7c7e71SDivin Raj reg = <0x0 0x10000>; 42*bb7c7e71SDivin Raj enable-method = "psci"; 43*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 44*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 45*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 46*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 47*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 48*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 49*bb7c7e71SDivin Raj }; 50*bb7c7e71SDivin Raj cpu2: cpu@20000 { 51*bb7c7e71SDivin Raj device_type = "cpu"; 52*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 53*bb7c7e71SDivin Raj reg = <0x0 0x20000>; 54*bb7c7e71SDivin Raj enable-method = "psci"; 55*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 56*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 57*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 58*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 59*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 60*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 61*bb7c7e71SDivin Raj }; 62*bb7c7e71SDivin Raj cpu3: cpu@30000 { 63*bb7c7e71SDivin Raj device_type = "cpu"; 64*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 65*bb7c7e71SDivin Raj reg = <0x0 0x30000>; 66*bb7c7e71SDivin Raj enable-method = "psci"; 67*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 68*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 69*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 70*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 71*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 72*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 73*bb7c7e71SDivin Raj }; 74*bb7c7e71SDivin Raj cpu4: cpu@40000 { 75*bb7c7e71SDivin Raj device_type = "cpu"; 76*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 77*bb7c7e71SDivin Raj reg = <0x0 0x40000>; 78*bb7c7e71SDivin Raj enable-method = "psci"; 79*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 80*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 81*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 82*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 83*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 84*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 85*bb7c7e71SDivin Raj }; 86*bb7c7e71SDivin Raj cpu5: cpu@50000 { 87*bb7c7e71SDivin Raj device_type = "cpu"; 88*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 89*bb7c7e71SDivin Raj reg = <0x0 0x50000>; 90*bb7c7e71SDivin Raj enable-method = "psci"; 91*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 92*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 93*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 94*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 95*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 96*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 97*bb7c7e71SDivin Raj }; 98*bb7c7e71SDivin Raj cpu6: cpu@60000 { 99*bb7c7e71SDivin Raj device_type = "cpu"; 100*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 101*bb7c7e71SDivin Raj reg = <0x0 0x60000>; 102*bb7c7e71SDivin Raj enable-method = "psci"; 103*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 104*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 105*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 106*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 107*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 108*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 109*bb7c7e71SDivin Raj }; 110*bb7c7e71SDivin Raj cpu7: cpu@70000 { 111*bb7c7e71SDivin Raj device_type = "cpu"; 112*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 113*bb7c7e71SDivin Raj reg = <0x0 0x70000>; 114*bb7c7e71SDivin Raj enable-method = "psci"; 115*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 116*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 117*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 118*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 119*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 120*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 121*bb7c7e71SDivin Raj }; 122*bb7c7e71SDivin Raj cpu8: cpu@80000 { 123*bb7c7e71SDivin Raj device_type = "cpu"; 124*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 125*bb7c7e71SDivin Raj reg = <0x0 0x80000>; 126*bb7c7e71SDivin Raj enable-method = "psci"; 127*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 128*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 129*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 130*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 131*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 132*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 133*bb7c7e71SDivin Raj }; 134*bb7c7e71SDivin Raj cpu9: cpu@90000 { 135*bb7c7e71SDivin Raj device_type = "cpu"; 136*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 137*bb7c7e71SDivin Raj reg = <0x0 0x90000>; 138*bb7c7e71SDivin Raj enable-method = "psci"; 139*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 140*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 141*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 142*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 143*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 144*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 145*bb7c7e71SDivin Raj }; 146*bb7c7e71SDivin Raj cpu10: cpu@a0000 { 147*bb7c7e71SDivin Raj device_type = "cpu"; 148*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 149*bb7c7e71SDivin Raj reg = <0x0 0xa0000>; 150*bb7c7e71SDivin Raj enable-method = "psci"; 151*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 152*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 153*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 154*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 155*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 156*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 157*bb7c7e71SDivin Raj }; 158*bb7c7e71SDivin Raj cpu11: cpu@b0000 { 159*bb7c7e71SDivin Raj device_type = "cpu"; 160*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 161*bb7c7e71SDivin Raj reg = <0x0 0xb0000>; 162*bb7c7e71SDivin Raj enable-method = "psci"; 163*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 164*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 165*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 166*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 167*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 168*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 169*bb7c7e71SDivin Raj }; 170*bb7c7e71SDivin Raj cpu12: cpu@c0000 { 171*bb7c7e71SDivin Raj device_type = "cpu"; 172*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 173*bb7c7e71SDivin Raj reg = <0x0 0xc0000>; 174*bb7c7e71SDivin Raj enable-method = "psci"; 175*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 176*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 177*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 178*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 179*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 180*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 181*bb7c7e71SDivin Raj }; 182*bb7c7e71SDivin Raj cpu13: cpu@d0000 { 183*bb7c7e71SDivin Raj device_type = "cpu"; 184*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 185*bb7c7e71SDivin Raj reg = <0x0 0xd0000>; 186*bb7c7e71SDivin Raj enable-method = "psci"; 187*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 188*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 189*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 190*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 191*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 192*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 193*bb7c7e71SDivin Raj }; 194*bb7c7e71SDivin Raj cpu14: cpu@e0000 { 195*bb7c7e71SDivin Raj device_type = "cpu"; 196*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 197*bb7c7e71SDivin Raj reg = <0x0 0xe0000>; 198*bb7c7e71SDivin Raj enable-method = "psci"; 199*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 200*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 201*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 202*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 203*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 204*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 205*bb7c7e71SDivin Raj }; 206*bb7c7e71SDivin Raj cpu15: cpu@f0000 { 207*bb7c7e71SDivin Raj device_type = "cpu"; 208*bb7c7e71SDivin Raj compatible = "arm,neoverse-v3"; 209*bb7c7e71SDivin Raj reg = <0x0 0xf0000>; 210*bb7c7e71SDivin Raj enable-method = "psci"; 211*bb7c7e71SDivin Raj i-cache-size = <0x10000>; 212*bb7c7e71SDivin Raj i-cache-line-size = <0x40>; 213*bb7c7e71SDivin Raj i-cache-sets = <0x100>; 214*bb7c7e71SDivin Raj d-cache-size = <0x10000>; 215*bb7c7e71SDivin Raj d-cache-line-size = <0x40>; 216*bb7c7e71SDivin Raj d-cache-sets = <0x100>; 217*bb7c7e71SDivin Raj }; 218*bb7c7e71SDivin Raj }; 219*bb7c7e71SDivin Raj 220*bb7c7e71SDivin Raj memory@80000000 { 221*bb7c7e71SDivin Raj device_type = "memory"; 222*bb7c7e71SDivin Raj /* 223*bb7c7e71SDivin Raj * 0x7fc0 0000 - 0x7fff ffff : BL32 224*bb7c7e71SDivin Raj * 0x7fbf 0000 - 0x7fbf ffff : FFA_SHARED_MM_BUF 225*bb7c7e71SDivin Raj */ 226*bb7c7e71SDivin Raj reg = <0x00000000 0x80000000 0 0x7fbf0000>, 227*bb7c7e71SDivin Raj <0x00000080 0x80000000 0 0x80000000>; 228*bb7c7e71SDivin Raj }; 229*bb7c7e71SDivin Raj 230*bb7c7e71SDivin Raj timer { 231*bb7c7e71SDivin Raj compatible = "arm,armv8-timer"; 232*bb7c7e71SDivin Raj interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, 233*bb7c7e71SDivin Raj <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, 234*bb7c7e71SDivin Raj <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, 235*bb7c7e71SDivin Raj <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; 236*bb7c7e71SDivin Raj }; 237*bb7c7e71SDivin Raj 238*bb7c7e71SDivin Raj soc_clk24mhz: clk24mhz { 239*bb7c7e71SDivin Raj compatible = "fixed-clock"; 240*bb7c7e71SDivin Raj #clock-cells = <0>; 241*bb7c7e71SDivin Raj clock-frequency = <24000000>; 242*bb7c7e71SDivin Raj clock-output-names = "refclk24mhz"; 243*bb7c7e71SDivin Raj }; 244*bb7c7e71SDivin Raj 245*bb7c7e71SDivin Raj soc_refclk1mhz: refclk1mhz { 246*bb7c7e71SDivin Raj compatible = "fixed-clock"; 247*bb7c7e71SDivin Raj #clock-cells = <0>; 248*bb7c7e71SDivin Raj clock-frequency = <1000000>; 249*bb7c7e71SDivin Raj clock-output-names = "refclk1mhz"; 250*bb7c7e71SDivin Raj }; 251*bb7c7e71SDivin Raj 252*bb7c7e71SDivin Raj soc { 253*bb7c7e71SDivin Raj compatible = "simple-bus"; 254*bb7c7e71SDivin Raj #address-cells = <2>; 255*bb7c7e71SDivin Raj #size-cells = <2>; 256*bb7c7e71SDivin Raj ranges; 257*bb7c7e71SDivin Raj 258*bb7c7e71SDivin Raj gic: interrupt-controller@30000000 { 259*bb7c7e71SDivin Raj compatible = "arm,gic-v3"; 260*bb7c7e71SDivin Raj reg = <0x0 0x30000000 0 0x10000>, // GICD 261*bb7c7e71SDivin Raj <0x0 0x301c0000 0 0x8000000>; // GICR 262*bb7c7e71SDivin Raj #interrupt-cells = <3>; 263*bb7c7e71SDivin Raj #address-cells = <2>; 264*bb7c7e71SDivin Raj #size-cells = <2>; 265*bb7c7e71SDivin Raj ranges; 266*bb7c7e71SDivin Raj interrupt-controller; 267*bb7c7e71SDivin Raj interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 268*bb7c7e71SDivin Raj 269*bb7c7e71SDivin Raj its1: msi-controller@30040000 { 270*bb7c7e71SDivin Raj compatible = "arm,gic-v3-its"; 271*bb7c7e71SDivin Raj reg = <0x0 0x30040000 0x0 0x40000>; 272*bb7c7e71SDivin Raj msi-controller; 273*bb7c7e71SDivin Raj #msi-cells = <1>; 274*bb7c7e71SDivin Raj }; 275*bb7c7e71SDivin Raj its2: msi-controller@30080000 { 276*bb7c7e71SDivin Raj compatible = "arm,gic-v3-its"; 277*bb7c7e71SDivin Raj reg = <0x0 0x30080000 0x0 0x40000>; 278*bb7c7e71SDivin Raj msi-controller; 279*bb7c7e71SDivin Raj #msi-cells = <1>; 280*bb7c7e71SDivin Raj }; 281*bb7c7e71SDivin Raj its3: msi-controller@300c0000 { 282*bb7c7e71SDivin Raj compatible = "arm,gic-v3-its"; 283*bb7c7e71SDivin Raj reg = <0x0 0x300c0000 0x0 0x40000>; 284*bb7c7e71SDivin Raj msi-controller; 285*bb7c7e71SDivin Raj #msi-cells = <1>; 286*bb7c7e71SDivin Raj }; 287*bb7c7e71SDivin Raj its4: msi-controller@30100000 { 288*bb7c7e71SDivin Raj compatible = "arm,gic-v3-its"; 289*bb7c7e71SDivin Raj reg = <0x0 0x30100000 0x0 0x40000>; 290*bb7c7e71SDivin Raj msi-controller; 291*bb7c7e71SDivin Raj #msi-cells = <1>; 292*bb7c7e71SDivin Raj }; 293*bb7c7e71SDivin Raj its5: msi-controller@30140000 { 294*bb7c7e71SDivin Raj compatible = "arm,gic-v3-its"; 295*bb7c7e71SDivin Raj reg = <0x0 0x30140000 0x0 0x40000>; 296*bb7c7e71SDivin Raj msi-controller; 297*bb7c7e71SDivin Raj #msi-cells = <1>; 298*bb7c7e71SDivin Raj }; 299*bb7c7e71SDivin Raj its6: msi-controller@30180000 { 300*bb7c7e71SDivin Raj compatible = "arm,gic-v3-its"; 301*bb7c7e71SDivin Raj reg = <0x0 0x30180000 0x0 0x40000>; 302*bb7c7e71SDivin Raj msi-controller; 303*bb7c7e71SDivin Raj #msi-cells = <1>; 304*bb7c7e71SDivin Raj }; 305*bb7c7e71SDivin Raj }; 306*bb7c7e71SDivin Raj 307*bb7c7e71SDivin Raj soc_serial0: serial@2a400000 { 308*bb7c7e71SDivin Raj compatible = "arm,pl011", "arm,primecell"; 309*bb7c7e71SDivin Raj reg = <0x0 0x2a400000 0x0 0x10000>; 310*bb7c7e71SDivin Raj interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 311*bb7c7e71SDivin Raj clocks = <&soc_clk24mhz>, <&soc_clk24mhz>; 312*bb7c7e71SDivin Raj clock-names = "uartclk", "apb_pclk"; 313*bb7c7e71SDivin Raj }; 314*bb7c7e71SDivin Raj 315*bb7c7e71SDivin Raj watchdog@2a440000 { 316*bb7c7e71SDivin Raj compatible = "arm,sbsa-gwdt"; 317*bb7c7e71SDivin Raj reg = <0x0 0x2a440000 0 0x1000>, 318*bb7c7e71SDivin Raj <0x0 0x2a450000 0 0x1000>; 319*bb7c7e71SDivin Raj interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 320*bb7c7e71SDivin Raj }; 321*bb7c7e71SDivin Raj 322*bb7c7e71SDivin Raj rtc@c170000 { 323*bb7c7e71SDivin Raj compatible = "arm,pl031", "arm,primecell"; 324*bb7c7e71SDivin Raj reg = <0x0 0x0c170000 0x0 0x10000>; 325*bb7c7e71SDivin Raj interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>; 326*bb7c7e71SDivin Raj clocks = <&soc_clk24mhz>; 327*bb7c7e71SDivin Raj clock-names = "apb_pclk"; 328*bb7c7e71SDivin Raj }; 329*bb7c7e71SDivin Raj 330*bb7c7e71SDivin Raj virtio-net@c150000 { 331*bb7c7e71SDivin Raj compatible = "virtio,mmio"; 332*bb7c7e71SDivin Raj reg = <0x0 0xc150000 0x0 0x200>; 333*bb7c7e71SDivin Raj interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>; 334*bb7c7e71SDivin Raj }; 335*bb7c7e71SDivin Raj 336*bb7c7e71SDivin Raj virtio-block@c130000 { 337*bb7c7e71SDivin Raj compatible = "virtio,mmio"; 338*bb7c7e71SDivin Raj reg = <0x0 0xc130000 0x0 0x200>; 339*bb7c7e71SDivin Raj interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>; 340*bb7c7e71SDivin Raj }; 341*bb7c7e71SDivin Raj 342*bb7c7e71SDivin Raj virtio-rng@c140000 { 343*bb7c7e71SDivin Raj compatible = "virtio,mmio"; 344*bb7c7e71SDivin Raj reg = <0x0 0xc140000 0x0 0x200>; 345*bb7c7e71SDivin Raj interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 346*bb7c7e71SDivin Raj }; 347*bb7c7e71SDivin Raj 348*bb7c7e71SDivin Raj pci@4000000000 { 349*bb7c7e71SDivin Raj #address-cells = <0x03>; 350*bb7c7e71SDivin Raj #size-cells = <0x02>; 351*bb7c7e71SDivin Raj compatible = "pci-host-ecam-generic"; 352*bb7c7e71SDivin Raj device_type = "pci"; 353*bb7c7e71SDivin Raj bus-range = <0x00 0x11>; 354*bb7c7e71SDivin Raj reg = <0x40 0x00 0x00 0x04000000>; 355*bb7c7e71SDivin Raj ranges = <0x43000000 0x40 0x40000000 0x40 0x40000000 0x10 0x00000000 356*bb7c7e71SDivin Raj 0x02000000 0x00 0x60000000 0x00 0x60000000 0x00 0x08000000 357*bb7c7e71SDivin Raj 0x01000000 0x00 0x00 0x00 0x77800000 0x00 0x800000>; 358*bb7c7e71SDivin Raj msi-map = <0x00 &its1 0x40000 0x10000>; 359*bb7c7e71SDivin Raj iommu-map = <0x00 &smmu 0x40000 0x10000>; 360*bb7c7e71SDivin Raj dma-coherent; 361*bb7c7e71SDivin Raj }; 362*bb7c7e71SDivin Raj 363*bb7c7e71SDivin Raj smmu: iommu@280000000 { 364*bb7c7e71SDivin Raj compatible = "arm,smmu-v3"; 365*bb7c7e71SDivin Raj reg = <0x2 0x80000000 0x0 0x100000>; 366*bb7c7e71SDivin Raj dma-coherent; 367*bb7c7e71SDivin Raj #iommu-cells = <1>; 368*bb7c7e71SDivin Raj interrupts = <1 210 1>, 369*bb7c7e71SDivin Raj <1 211 1>, 370*bb7c7e71SDivin Raj <1 212 1>, 371*bb7c7e71SDivin Raj <1 213 1>; 372*bb7c7e71SDivin Raj interrupt-names = "eventq", "priq", "cmdq-sync", "gerror"; 373*bb7c7e71SDivin Raj msi-parent = <&its1 0x10000>; 374*bb7c7e71SDivin Raj }; 375*bb7c7e71SDivin Raj 376*bb7c7e71SDivin Raj sysreg: sysreg@c010000 { 377*bb7c7e71SDivin Raj compatible = "arm,vexpress-sysreg"; 378*bb7c7e71SDivin Raj reg = <0x0 0xc010000 0x0 0x1000>; 379*bb7c7e71SDivin Raj gpio-controller; 380*bb7c7e71SDivin Raj #gpio-cells = <2>; 381*bb7c7e71SDivin Raj }; 382*bb7c7e71SDivin Raj 383*bb7c7e71SDivin Raj fixed_3v3: v2m-3v3@c011000 { 384*bb7c7e71SDivin Raj compatible = "regulator-fixed"; 385*bb7c7e71SDivin Raj reg = <0x0 0xc011000 0x0 0x1000>; 386*bb7c7e71SDivin Raj regulator-name = "3V3"; 387*bb7c7e71SDivin Raj regulator-min-microvolt = <3300000>; 388*bb7c7e71SDivin Raj regulator-max-microvolt = <3300000>; 389*bb7c7e71SDivin Raj regulator-always-on; 390*bb7c7e71SDivin Raj }; 391*bb7c7e71SDivin Raj 392*bb7c7e71SDivin Raj mmci@c050000 { 393*bb7c7e71SDivin Raj compatible = "arm,pl180", "arm,primecell"; 394*bb7c7e71SDivin Raj reg = <0x0 0xc050000 0x0 0x1000>; 395*bb7c7e71SDivin Raj interrupts = <0 0x8B 0x4>, 396*bb7c7e71SDivin Raj <0 0x8C 0x4>; 397*bb7c7e71SDivin Raj cd-gpios = <&sysreg 0 0>; 398*bb7c7e71SDivin Raj wp-gpios = <&sysreg 1 0>; 399*bb7c7e71SDivin Raj bus-width = <8>; 400*bb7c7e71SDivin Raj max-frequency = <12000000>; 401*bb7c7e71SDivin Raj vmmc-supply = <&fixed_3v3>; 402*bb7c7e71SDivin Raj clocks = <&soc_clk24mhz>, <&soc_clk24mhz>; 403*bb7c7e71SDivin Raj clock-names = "mclk", "apb_pclk"; 404*bb7c7e71SDivin Raj }; 405*bb7c7e71SDivin Raj 406*bb7c7e71SDivin Raj }; 407*bb7c7e71SDivin Raj 408*bb7c7e71SDivin Raj psci { 409*bb7c7e71SDivin Raj compatible = "arm,psci-1.0", "arm,psci-0.2", "arm,psci"; 410*bb7c7e71SDivin Raj method = "smc"; 411*bb7c7e71SDivin Raj cpu_suspend = <0xc4000001>; 412*bb7c7e71SDivin Raj cpu_off = <0x84000002>; 413*bb7c7e71SDivin Raj cpu_on = <0x84000003>; 414*bb7c7e71SDivin Raj }; 415*bb7c7e71SDivin Raj 416*bb7c7e71SDivin Raj}; 417