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