1*43ef4f1eSHarry Liebel/* 2*43ef4f1eSHarry Liebel * Copyright (c) 2013, ARM Limited. All rights reserved. 3*43ef4f1eSHarry Liebel * 4*43ef4f1eSHarry Liebel * Redistribution and use in source and binary forms, with or without 5*43ef4f1eSHarry Liebel * modification, are permitted provided that the following conditions are met: 6*43ef4f1eSHarry Liebel * 7*43ef4f1eSHarry Liebel * Redistributions of source code must retain the above copyright notice, this 8*43ef4f1eSHarry Liebel * list of conditions and the following disclaimer. 9*43ef4f1eSHarry Liebel * 10*43ef4f1eSHarry Liebel * Redistributions in binary form must reproduce the above copyright notice, 11*43ef4f1eSHarry Liebel * this list of conditions and the following disclaimer in the documentation 12*43ef4f1eSHarry Liebel * and/or other materials provided with the distribution. 13*43ef4f1eSHarry Liebel * 14*43ef4f1eSHarry Liebel * Neither the name of the ARM nor the names of its contributors may be used 15*43ef4f1eSHarry Liebel * to endorse or promote products derived from this software without specific 16*43ef4f1eSHarry Liebel * prior written permission. 17*43ef4f1eSHarry Liebel * 18*43ef4f1eSHarry Liebel * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19*43ef4f1eSHarry Liebel * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20*43ef4f1eSHarry Liebel * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21*43ef4f1eSHarry Liebel * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 22*43ef4f1eSHarry Liebel * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23*43ef4f1eSHarry Liebel * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24*43ef4f1eSHarry Liebel * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25*43ef4f1eSHarry Liebel * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26*43ef4f1eSHarry Liebel * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27*43ef4f1eSHarry Liebel * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28*43ef4f1eSHarry Liebel * POSSIBILITY OF SUCH DAMAGE. 29*43ef4f1eSHarry Liebel */ 30*43ef4f1eSHarry Liebel 31*43ef4f1eSHarry Liebel/dts-v1/; 32*43ef4f1eSHarry Liebel 33*43ef4f1eSHarry Liebel/memreserve/ 0x80000000 0x00010000; 34*43ef4f1eSHarry Liebel 35*43ef4f1eSHarry Liebel/ { 36*43ef4f1eSHarry Liebel}; 37*43ef4f1eSHarry Liebel 38*43ef4f1eSHarry Liebel/ { 39*43ef4f1eSHarry Liebel model = "FVP Base"; 40*43ef4f1eSHarry Liebel compatible = "arm,fvp-base", "arm,vexpress"; 41*43ef4f1eSHarry Liebel interrupt-parent = <&gic>; 42*43ef4f1eSHarry Liebel #address-cells = <2>; 43*43ef4f1eSHarry Liebel #size-cells = <2>; 44*43ef4f1eSHarry Liebel 45*43ef4f1eSHarry Liebel chosen { }; 46*43ef4f1eSHarry Liebel 47*43ef4f1eSHarry Liebel aliases { 48*43ef4f1eSHarry Liebel serial0 = &v2m_serial0; 49*43ef4f1eSHarry Liebel serial1 = &v2m_serial1; 50*43ef4f1eSHarry Liebel serial2 = &v2m_serial2; 51*43ef4f1eSHarry Liebel serial3 = &v2m_serial3; 52*43ef4f1eSHarry Liebel }; 53*43ef4f1eSHarry Liebel 54*43ef4f1eSHarry Liebel psci { 55*43ef4f1eSHarry Liebel compatible = "arm,psci"; 56*43ef4f1eSHarry Liebel method = "smc"; 57*43ef4f1eSHarry Liebel cpu_suspend = <0xc4000001>; 58*43ef4f1eSHarry Liebel cpu_off = <0x84000002>; 59*43ef4f1eSHarry Liebel cpu_on = <0xc4000003>; 60*43ef4f1eSHarry Liebel }; 61*43ef4f1eSHarry Liebel 62*43ef4f1eSHarry Liebel cpus { 63*43ef4f1eSHarry Liebel #address-cells = <2>; 64*43ef4f1eSHarry Liebel #size-cells = <0>; 65*43ef4f1eSHarry Liebel 66*43ef4f1eSHarry Liebel cpu@0 { 67*43ef4f1eSHarry Liebel device_type = "cpu"; 68*43ef4f1eSHarry Liebel compatible = "arm,armv8"; 69*43ef4f1eSHarry Liebel reg = <0x0 0x0>; 70*43ef4f1eSHarry Liebel enable-method = "psci"; 71*43ef4f1eSHarry Liebel }; 72*43ef4f1eSHarry Liebel cpu@1 { 73*43ef4f1eSHarry Liebel device_type = "cpu"; 74*43ef4f1eSHarry Liebel compatible = "arm,armv8"; 75*43ef4f1eSHarry Liebel reg = <0x0 0x1>; 76*43ef4f1eSHarry Liebel enable-method = "psci"; 77*43ef4f1eSHarry Liebel }; 78*43ef4f1eSHarry Liebel cpu@2 { 79*43ef4f1eSHarry Liebel device_type = "cpu"; 80*43ef4f1eSHarry Liebel compatible = "arm,armv8"; 81*43ef4f1eSHarry Liebel reg = <0x0 0x2>; 82*43ef4f1eSHarry Liebel enable-method = "psci"; 83*43ef4f1eSHarry Liebel }; 84*43ef4f1eSHarry Liebel cpu@3 { 85*43ef4f1eSHarry Liebel device_type = "cpu"; 86*43ef4f1eSHarry Liebel compatible = "arm,armv8"; 87*43ef4f1eSHarry Liebel reg = <0x0 0x3>; 88*43ef4f1eSHarry Liebel enable-method = "psci"; 89*43ef4f1eSHarry Liebel }; 90*43ef4f1eSHarry Liebel }; 91*43ef4f1eSHarry Liebel 92*43ef4f1eSHarry Liebel memory@80000000 { 93*43ef4f1eSHarry Liebel device_type = "memory"; 94*43ef4f1eSHarry Liebel reg = <0x00000000 0x80000000 0 0x80000000>, 95*43ef4f1eSHarry Liebel <0x00000008 0x80000000 0 0x80000000>; 96*43ef4f1eSHarry Liebel }; 97*43ef4f1eSHarry Liebel 98*43ef4f1eSHarry Liebel gic: interrupt-controller@2cf00000 { 99*43ef4f1eSHarry Liebel compatible = "arm,gic-v3"; 100*43ef4f1eSHarry Liebel #interrupt-cells = <3>; 101*43ef4f1eSHarry Liebel interrupt-controller; 102*43ef4f1eSHarry Liebel reg = <0x0 0x2f000000 0 0x10000>, // GICD 103*43ef4f1eSHarry Liebel <0x0 0x2f100000 0 0x200000>, // GICR 104*43ef4f1eSHarry Liebel <0x0 0x2c000000 0 0x2000>, // GICC 105*43ef4f1eSHarry Liebel <0x0 0x2c010000 0 0x2000>, // GICH 106*43ef4f1eSHarry Liebel <0x0 0x2c02F000 0 0x2000>; // GICV 107*43ef4f1eSHarry Liebel interrupts = <1 9 4>; 108*43ef4f1eSHarry Liebel }; 109*43ef4f1eSHarry Liebel 110*43ef4f1eSHarry Liebel timer { 111*43ef4f1eSHarry Liebel compatible = "arm,armv8-timer"; 112*43ef4f1eSHarry Liebel interrupts = <1 13 0xff01>, 113*43ef4f1eSHarry Liebel <1 14 0xff01>, 114*43ef4f1eSHarry Liebel <1 11 0xff01>, 115*43ef4f1eSHarry Liebel <1 10 0xff01>; 116*43ef4f1eSHarry Liebel clock-frequency = <100000000>; 117*43ef4f1eSHarry Liebel }; 118*43ef4f1eSHarry Liebel 119*43ef4f1eSHarry Liebel timer@2a810000 { 120*43ef4f1eSHarry Liebel compatible = "arm,armv7-timer-mem"; 121*43ef4f1eSHarry Liebel reg = <0x0 0x2a810000 0x0 0x10000>; 122*43ef4f1eSHarry Liebel clock-frequency = <100000000>; 123*43ef4f1eSHarry Liebel #address-cells = <2>; 124*43ef4f1eSHarry Liebel #size-cells = <2>; 125*43ef4f1eSHarry Liebel ranges; 126*43ef4f1eSHarry Liebel frame@2a820000 { 127*43ef4f1eSHarry Liebel frame-number = <0>; 128*43ef4f1eSHarry Liebel interrupts = <0 25 4>; 129*43ef4f1eSHarry Liebel reg = <0x0 0x2a820000 0x0 0x10000>; 130*43ef4f1eSHarry Liebel }; 131*43ef4f1eSHarry Liebel }; 132*43ef4f1eSHarry Liebel 133*43ef4f1eSHarry Liebel pmu { 134*43ef4f1eSHarry Liebel compatible = "arm,armv8-pmuv3"; 135*43ef4f1eSHarry Liebel interrupts = <0 60 4>, 136*43ef4f1eSHarry Liebel <0 61 4>, 137*43ef4f1eSHarry Liebel <0 62 4>, 138*43ef4f1eSHarry Liebel <0 63 4>; 139*43ef4f1eSHarry Liebel }; 140*43ef4f1eSHarry Liebel 141*43ef4f1eSHarry Liebel smb { 142*43ef4f1eSHarry Liebel compatible = "simple-bus"; 143*43ef4f1eSHarry Liebel 144*43ef4f1eSHarry Liebel #address-cells = <2>; 145*43ef4f1eSHarry Liebel #size-cells = <1>; 146*43ef4f1eSHarry Liebel ranges = <0 0 0 0x08000000 0x04000000>, 147*43ef4f1eSHarry Liebel <1 0 0 0x14000000 0x04000000>, 148*43ef4f1eSHarry Liebel <2 0 0 0x18000000 0x04000000>, 149*43ef4f1eSHarry Liebel <3 0 0 0x1c000000 0x04000000>, 150*43ef4f1eSHarry Liebel <4 0 0 0x0c000000 0x04000000>, 151*43ef4f1eSHarry Liebel <5 0 0 0x10000000 0x04000000>; 152*43ef4f1eSHarry Liebel 153*43ef4f1eSHarry Liebel #interrupt-cells = <1>; 154*43ef4f1eSHarry Liebel interrupt-map-mask = <0 0 63>; 155*43ef4f1eSHarry Liebel interrupt-map = <0 0 0 &gic 0 0 4>, 156*43ef4f1eSHarry Liebel <0 0 1 &gic 0 1 4>, 157*43ef4f1eSHarry Liebel <0 0 2 &gic 0 2 4>, 158*43ef4f1eSHarry Liebel <0 0 3 &gic 0 3 4>, 159*43ef4f1eSHarry Liebel <0 0 4 &gic 0 4 4>, 160*43ef4f1eSHarry Liebel <0 0 5 &gic 0 5 4>, 161*43ef4f1eSHarry Liebel <0 0 6 &gic 0 6 4>, 162*43ef4f1eSHarry Liebel <0 0 7 &gic 0 7 4>, 163*43ef4f1eSHarry Liebel <0 0 8 &gic 0 8 4>, 164*43ef4f1eSHarry Liebel <0 0 9 &gic 0 9 4>, 165*43ef4f1eSHarry Liebel <0 0 10 &gic 0 10 4>, 166*43ef4f1eSHarry Liebel <0 0 11 &gic 0 11 4>, 167*43ef4f1eSHarry Liebel <0 0 12 &gic 0 12 4>, 168*43ef4f1eSHarry Liebel <0 0 13 &gic 0 13 4>, 169*43ef4f1eSHarry Liebel <0 0 14 &gic 0 14 4>, 170*43ef4f1eSHarry Liebel <0 0 15 &gic 0 15 4>, 171*43ef4f1eSHarry Liebel <0 0 16 &gic 0 16 4>, 172*43ef4f1eSHarry Liebel <0 0 17 &gic 0 17 4>, 173*43ef4f1eSHarry Liebel <0 0 18 &gic 0 18 4>, 174*43ef4f1eSHarry Liebel <0 0 19 &gic 0 19 4>, 175*43ef4f1eSHarry Liebel <0 0 20 &gic 0 20 4>, 176*43ef4f1eSHarry Liebel <0 0 21 &gic 0 21 4>, 177*43ef4f1eSHarry Liebel <0 0 22 &gic 0 22 4>, 178*43ef4f1eSHarry Liebel <0 0 23 &gic 0 23 4>, 179*43ef4f1eSHarry Liebel <0 0 24 &gic 0 24 4>, 180*43ef4f1eSHarry Liebel <0 0 25 &gic 0 25 4>, 181*43ef4f1eSHarry Liebel <0 0 26 &gic 0 26 4>, 182*43ef4f1eSHarry Liebel <0 0 27 &gic 0 27 4>, 183*43ef4f1eSHarry Liebel <0 0 28 &gic 0 28 4>, 184*43ef4f1eSHarry Liebel <0 0 29 &gic 0 29 4>, 185*43ef4f1eSHarry Liebel <0 0 30 &gic 0 30 4>, 186*43ef4f1eSHarry Liebel <0 0 31 &gic 0 31 4>, 187*43ef4f1eSHarry Liebel <0 0 32 &gic 0 32 4>, 188*43ef4f1eSHarry Liebel <0 0 33 &gic 0 33 4>, 189*43ef4f1eSHarry Liebel <0 0 34 &gic 0 34 4>, 190*43ef4f1eSHarry Liebel <0 0 35 &gic 0 35 4>, 191*43ef4f1eSHarry Liebel <0 0 36 &gic 0 36 4>, 192*43ef4f1eSHarry Liebel <0 0 37 &gic 0 37 4>, 193*43ef4f1eSHarry Liebel <0 0 38 &gic 0 38 4>, 194*43ef4f1eSHarry Liebel <0 0 39 &gic 0 39 4>, 195*43ef4f1eSHarry Liebel <0 0 40 &gic 0 40 4>, 196*43ef4f1eSHarry Liebel <0 0 41 &gic 0 41 4>, 197*43ef4f1eSHarry Liebel <0 0 42 &gic 0 42 4>; 198*43ef4f1eSHarry Liebel 199*43ef4f1eSHarry Liebel /include/ "fvp-foundation-motherboard.dtsi" 200*43ef4f1eSHarry Liebel }; 201*43ef4f1eSHarry Liebel}; 202