14f6ad66aSAchin Gupta/* 2e83b0cadSDan Handley * Copyright (c) 2013-2014, ARM Limited and Contributors. All rights reserved. 34f6ad66aSAchin Gupta * 44f6ad66aSAchin Gupta * Redistribution and use in source and binary forms, with or without 54f6ad66aSAchin Gupta * modification, are permitted provided that the following conditions are met: 64f6ad66aSAchin Gupta * 74f6ad66aSAchin Gupta * Redistributions of source code must retain the above copyright notice, this 84f6ad66aSAchin Gupta * list of conditions and the following disclaimer. 94f6ad66aSAchin Gupta * 104f6ad66aSAchin Gupta * Redistributions in binary form must reproduce the above copyright notice, 114f6ad66aSAchin Gupta * this list of conditions and the following disclaimer in the documentation 124f6ad66aSAchin Gupta * and/or other materials provided with the distribution. 134f6ad66aSAchin Gupta * 144f6ad66aSAchin Gupta * Neither the name of ARM nor the names of its contributors may be used 154f6ad66aSAchin Gupta * to endorse or promote products derived from this software without specific 164f6ad66aSAchin Gupta * prior written permission. 174f6ad66aSAchin Gupta * 184f6ad66aSAchin Gupta * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 194f6ad66aSAchin Gupta * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 204f6ad66aSAchin Gupta * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 214f6ad66aSAchin Gupta * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 224f6ad66aSAchin Gupta * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 234f6ad66aSAchin Gupta * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 244f6ad66aSAchin Gupta * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 254f6ad66aSAchin Gupta * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 264f6ad66aSAchin Gupta * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 274f6ad66aSAchin Gupta * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 284f6ad66aSAchin Gupta * POSSIBILITY OF SUCH DAMAGE. 294f6ad66aSAchin Gupta */ 304f6ad66aSAchin Gupta 314f6ad66aSAchin Gupta/dts-v1/; 324f6ad66aSAchin Gupta 334f6ad66aSAchin Gupta/memreserve/ 0x80000000 0x00010000; 344f6ad66aSAchin Gupta 354f6ad66aSAchin Gupta/ { 364f6ad66aSAchin Gupta}; 374f6ad66aSAchin Gupta 384f6ad66aSAchin Gupta/ { 394f6ad66aSAchin Gupta model = "FVP Base"; 404f6ad66aSAchin Gupta compatible = "arm,vfp-base", "arm,vexpress"; 414f6ad66aSAchin Gupta interrupt-parent = <&gic>; 424f6ad66aSAchin Gupta #address-cells = <2>; 434f6ad66aSAchin Gupta #size-cells = <2>; 444f6ad66aSAchin Gupta 454f6ad66aSAchin Gupta chosen { }; 464f6ad66aSAchin Gupta 474f6ad66aSAchin Gupta aliases { 484f6ad66aSAchin Gupta serial0 = &v2m_serial0; 494f6ad66aSAchin Gupta serial1 = &v2m_serial1; 504f6ad66aSAchin Gupta serial2 = &v2m_serial2; 514f6ad66aSAchin Gupta serial3 = &v2m_serial3; 524f6ad66aSAchin Gupta }; 534f6ad66aSAchin Gupta 544f6ad66aSAchin Gupta psci { 55*e8ca7d1eSSoby Mathew compatible = "arm,psci-1.0", "arm,psci-0.2", "arm,psci"; 564f6ad66aSAchin Gupta method = "smc"; 574f6ad66aSAchin Gupta cpu_suspend = <0xc4000001>; 584f6ad66aSAchin Gupta cpu_off = <0x84000002>; 594f6ad66aSAchin Gupta cpu_on = <0xc4000003>; 60d5f13093SJuan Castillo sys_poweroff = <0x84000008>; 61d5f13093SJuan Castillo sys_reset = <0x84000009>; 624f6ad66aSAchin Gupta }; 634f6ad66aSAchin Gupta 644f6ad66aSAchin Gupta cpus { 654f6ad66aSAchin Gupta #address-cells = <2>; 664f6ad66aSAchin Gupta #size-cells = <0>; 674f6ad66aSAchin Gupta 68bab7bfd2SAchin Gupta cpu-map { 69bab7bfd2SAchin Gupta cluster0 { 70bab7bfd2SAchin Gupta core0 { 71bab7bfd2SAchin Gupta cpu = <&CPU0>; 72bab7bfd2SAchin Gupta }; 73bab7bfd2SAchin Gupta core1 { 74bab7bfd2SAchin Gupta cpu = <&CPU1>; 75bab7bfd2SAchin Gupta }; 76bab7bfd2SAchin Gupta core2 { 77bab7bfd2SAchin Gupta cpu = <&CPU2>; 78bab7bfd2SAchin Gupta }; 79bab7bfd2SAchin Gupta core3 { 80bab7bfd2SAchin Gupta cpu = <&CPU3>; 81bab7bfd2SAchin Gupta }; 82bab7bfd2SAchin Gupta }; 83bab7bfd2SAchin Gupta 84bab7bfd2SAchin Gupta cluster1 { 85bab7bfd2SAchin Gupta core0 { 86bab7bfd2SAchin Gupta cpu = <&CPU4>; 87bab7bfd2SAchin Gupta }; 88bab7bfd2SAchin Gupta core1 { 89bab7bfd2SAchin Gupta cpu = <&CPU5>; 90bab7bfd2SAchin Gupta }; 91bab7bfd2SAchin Gupta core2 { 92bab7bfd2SAchin Gupta cpu = <&CPU6>; 93bab7bfd2SAchin Gupta }; 94bab7bfd2SAchin Gupta core3 { 95bab7bfd2SAchin Gupta cpu = <&CPU7>; 96bab7bfd2SAchin Gupta }; 97bab7bfd2SAchin Gupta }; 98bab7bfd2SAchin Gupta }; 99bab7bfd2SAchin Gupta 100bab7bfd2SAchin Gupta idle-states { 101bab7bfd2SAchin Gupta entry-method = "arm,psci"; 102bab7bfd2SAchin Gupta 103bab7bfd2SAchin Gupta CPU_SLEEP_0: cpu-sleep-0 { 104bab7bfd2SAchin Gupta compatible = "arm,idle-state"; 105bab7bfd2SAchin Gupta entry-method-param = <0x0010000>; 106bab7bfd2SAchin Gupta entry-latency-us = <40>; 107bab7bfd2SAchin Gupta exit-latency-us = <100>; 108bab7bfd2SAchin Gupta min-residency-us = <150>; 109bab7bfd2SAchin Gupta }; 110bab7bfd2SAchin Gupta 111bab7bfd2SAchin Gupta CLUSTER_SLEEP_0: cluster-sleep-0 { 112bab7bfd2SAchin Gupta compatible = "arm,idle-state"; 113bab7bfd2SAchin Gupta entry-method-param = <0x1010000>; 114bab7bfd2SAchin Gupta entry-latency-us = <500>; 115bab7bfd2SAchin Gupta exit-latency-us = <1000>; 116bab7bfd2SAchin Gupta min-residency-us = <2500>; 117bab7bfd2SAchin Gupta }; 118bab7bfd2SAchin Gupta }; 119bab7bfd2SAchin Gupta 120bab7bfd2SAchin Gupta CPU0:cpu@0 { 1214f6ad66aSAchin Gupta device_type = "cpu"; 1224f6ad66aSAchin Gupta compatible = "arm,armv8"; 1234f6ad66aSAchin Gupta reg = <0x0 0x0>; 1244f6ad66aSAchin Gupta enable-method = "psci"; 125bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1264f6ad66aSAchin Gupta }; 127bab7bfd2SAchin Gupta 128bab7bfd2SAchin Gupta CPU1:cpu@1 { 1294f6ad66aSAchin Gupta device_type = "cpu"; 1304f6ad66aSAchin Gupta compatible = "arm,armv8"; 1314f6ad66aSAchin Gupta reg = <0x0 0x1>; 1324f6ad66aSAchin Gupta enable-method = "psci"; 133bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1344f6ad66aSAchin Gupta }; 135bab7bfd2SAchin Gupta 136bab7bfd2SAchin Gupta CPU2:cpu@2 { 1374f6ad66aSAchin Gupta device_type = "cpu"; 1384f6ad66aSAchin Gupta compatible = "arm,armv8"; 1394f6ad66aSAchin Gupta reg = <0x0 0x2>; 1404f6ad66aSAchin Gupta enable-method = "psci"; 141bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1424f6ad66aSAchin Gupta }; 143bab7bfd2SAchin Gupta 144bab7bfd2SAchin Gupta CPU3:cpu@3 { 1454f6ad66aSAchin Gupta device_type = "cpu"; 1464f6ad66aSAchin Gupta compatible = "arm,armv8"; 1474f6ad66aSAchin Gupta reg = <0x0 0x3>; 1484f6ad66aSAchin Gupta enable-method = "psci"; 149bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1504f6ad66aSAchin Gupta }; 151bab7bfd2SAchin Gupta 152bab7bfd2SAchin Gupta CPU4:cpu@100 { 1534f6ad66aSAchin Gupta device_type = "cpu"; 1544f6ad66aSAchin Gupta compatible = "arm,armv8"; 1554f6ad66aSAchin Gupta reg = <0x0 0x100>; 1564f6ad66aSAchin Gupta enable-method = "psci"; 157bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1584f6ad66aSAchin Gupta }; 159bab7bfd2SAchin Gupta 160bab7bfd2SAchin Gupta CPU5:cpu@101 { 1614f6ad66aSAchin Gupta device_type = "cpu"; 1624f6ad66aSAchin Gupta compatible = "arm,armv8"; 1634f6ad66aSAchin Gupta reg = <0x0 0x101>; 1644f6ad66aSAchin Gupta enable-method = "psci"; 165bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1664f6ad66aSAchin Gupta }; 167bab7bfd2SAchin Gupta 168bab7bfd2SAchin Gupta CPU6:cpu@102 { 1694f6ad66aSAchin Gupta device_type = "cpu"; 1704f6ad66aSAchin Gupta compatible = "arm,armv8"; 1714f6ad66aSAchin Gupta reg = <0x0 0x102>; 1724f6ad66aSAchin Gupta enable-method = "psci"; 173bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1744f6ad66aSAchin Gupta }; 175bab7bfd2SAchin Gupta 176bab7bfd2SAchin Gupta CPU7:cpu@103 { 1774f6ad66aSAchin Gupta device_type = "cpu"; 1784f6ad66aSAchin Gupta compatible = "arm,armv8"; 1794f6ad66aSAchin Gupta reg = <0x0 0x103>; 1804f6ad66aSAchin Gupta enable-method = "psci"; 181bab7bfd2SAchin Gupta cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 1824f6ad66aSAchin Gupta }; 1834f6ad66aSAchin Gupta }; 1844f6ad66aSAchin Gupta 1854f6ad66aSAchin Gupta memory@80000000 { 1864f6ad66aSAchin Gupta device_type = "memory"; 187364daf93SJuan Castillo reg = <0x00000000 0x80000000 0 0x7F000000>, 1884f6ad66aSAchin Gupta <0x00000008 0x80000000 0 0x80000000>; 1894f6ad66aSAchin Gupta }; 1904f6ad66aSAchin Gupta 1914f6ad66aSAchin Gupta gic: interrupt-controller@2f000000 { 1924f6ad66aSAchin Gupta compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic"; 1934f6ad66aSAchin Gupta #interrupt-cells = <3>; 1944f6ad66aSAchin Gupta #address-cells = <0>; 1954f6ad66aSAchin Gupta interrupt-controller; 1964f6ad66aSAchin Gupta reg = <0x0 0x2f000000 0 0x10000>, 1974f6ad66aSAchin Gupta <0x0 0x2c000000 0 0x2000>, 1984f6ad66aSAchin Gupta <0x0 0x2c010000 0 0x2000>, 1994f6ad66aSAchin Gupta <0x0 0x2c02F000 0 0x2000>; 2004f6ad66aSAchin Gupta interrupts = <1 9 0xf04>; 2014f6ad66aSAchin Gupta }; 2024f6ad66aSAchin Gupta 2034f6ad66aSAchin Gupta timer { 2044f6ad66aSAchin Gupta compatible = "arm,armv8-timer"; 2054f6ad66aSAchin Gupta interrupts = <1 13 0xff01>, 2064f6ad66aSAchin Gupta <1 14 0xff01>, 2074f6ad66aSAchin Gupta <1 11 0xff01>, 2084f6ad66aSAchin Gupta <1 10 0xff01>; 2094f6ad66aSAchin Gupta clock-frequency = <100000000>; 2104f6ad66aSAchin Gupta }; 2114f6ad66aSAchin Gupta 2124f6ad66aSAchin Gupta timer@2a810000 { 2134f6ad66aSAchin Gupta compatible = "arm,armv7-timer-mem"; 2144f6ad66aSAchin Gupta reg = <0x0 0x2a810000 0x0 0x10000>; 2154f6ad66aSAchin Gupta clock-frequency = <100000000>; 2164f6ad66aSAchin Gupta #address-cells = <2>; 2174f6ad66aSAchin Gupta #size-cells = <2>; 2184f6ad66aSAchin Gupta ranges; 219f2199d95SHarry Liebel frame@2a830000 { 220f2199d95SHarry Liebel frame-number = <1>; 221f2199d95SHarry Liebel interrupts = <0 26 4>; 222f2199d95SHarry Liebel reg = <0x0 0x2a830000 0x0 0x10000>; 2234f6ad66aSAchin Gupta }; 2244f6ad66aSAchin Gupta }; 2254f6ad66aSAchin Gupta 2264f6ad66aSAchin Gupta pmu { 2274f6ad66aSAchin Gupta compatible = "arm,armv8-pmuv3"; 2284f6ad66aSAchin Gupta interrupts = <0 60 4>, 2294f6ad66aSAchin Gupta <0 61 4>, 2304f6ad66aSAchin Gupta <0 62 4>, 2314f6ad66aSAchin Gupta <0 63 4>; 2324f6ad66aSAchin Gupta }; 2334f6ad66aSAchin Gupta 2344f6ad66aSAchin Gupta smb { 2354f6ad66aSAchin Gupta compatible = "simple-bus"; 2364f6ad66aSAchin Gupta 2374f6ad66aSAchin Gupta #address-cells = <2>; 2384f6ad66aSAchin Gupta #size-cells = <1>; 2394f6ad66aSAchin Gupta ranges = <0 0 0 0x08000000 0x04000000>, 2404f6ad66aSAchin Gupta <1 0 0 0x14000000 0x04000000>, 2414f6ad66aSAchin Gupta <2 0 0 0x18000000 0x04000000>, 2424f6ad66aSAchin Gupta <3 0 0 0x1c000000 0x04000000>, 2434f6ad66aSAchin Gupta <4 0 0 0x0c000000 0x04000000>, 2444f6ad66aSAchin Gupta <5 0 0 0x10000000 0x04000000>; 2454f6ad66aSAchin Gupta 2464f6ad66aSAchin Gupta #interrupt-cells = <1>; 2474f6ad66aSAchin Gupta interrupt-map-mask = <0 0 63>; 2484f6ad66aSAchin Gupta interrupt-map = <0 0 0 &gic 0 0 4>, 2494f6ad66aSAchin Gupta <0 0 1 &gic 0 1 4>, 2504f6ad66aSAchin Gupta <0 0 2 &gic 0 2 4>, 2514f6ad66aSAchin Gupta <0 0 3 &gic 0 3 4>, 2524f6ad66aSAchin Gupta <0 0 4 &gic 0 4 4>, 2534f6ad66aSAchin Gupta <0 0 5 &gic 0 5 4>, 2544f6ad66aSAchin Gupta <0 0 6 &gic 0 6 4>, 2554f6ad66aSAchin Gupta <0 0 7 &gic 0 7 4>, 2564f6ad66aSAchin Gupta <0 0 8 &gic 0 8 4>, 2574f6ad66aSAchin Gupta <0 0 9 &gic 0 9 4>, 2584f6ad66aSAchin Gupta <0 0 10 &gic 0 10 4>, 2594f6ad66aSAchin Gupta <0 0 11 &gic 0 11 4>, 2604f6ad66aSAchin Gupta <0 0 12 &gic 0 12 4>, 2614f6ad66aSAchin Gupta <0 0 13 &gic 0 13 4>, 2624f6ad66aSAchin Gupta <0 0 14 &gic 0 14 4>, 2634f6ad66aSAchin Gupta <0 0 15 &gic 0 15 4>, 2644f6ad66aSAchin Gupta <0 0 16 &gic 0 16 4>, 2654f6ad66aSAchin Gupta <0 0 17 &gic 0 17 4>, 2664f6ad66aSAchin Gupta <0 0 18 &gic 0 18 4>, 2674f6ad66aSAchin Gupta <0 0 19 &gic 0 19 4>, 2684f6ad66aSAchin Gupta <0 0 20 &gic 0 20 4>, 2694f6ad66aSAchin Gupta <0 0 21 &gic 0 21 4>, 2704f6ad66aSAchin Gupta <0 0 22 &gic 0 22 4>, 2714f6ad66aSAchin Gupta <0 0 23 &gic 0 23 4>, 2724f6ad66aSAchin Gupta <0 0 24 &gic 0 24 4>, 2734f6ad66aSAchin Gupta <0 0 25 &gic 0 25 4>, 2744f6ad66aSAchin Gupta <0 0 26 &gic 0 26 4>, 2754f6ad66aSAchin Gupta <0 0 27 &gic 0 27 4>, 2764f6ad66aSAchin Gupta <0 0 28 &gic 0 28 4>, 2774f6ad66aSAchin Gupta <0 0 29 &gic 0 29 4>, 2784f6ad66aSAchin Gupta <0 0 30 &gic 0 30 4>, 2794f6ad66aSAchin Gupta <0 0 31 &gic 0 31 4>, 2804f6ad66aSAchin Gupta <0 0 32 &gic 0 32 4>, 2814f6ad66aSAchin Gupta <0 0 33 &gic 0 33 4>, 2824f6ad66aSAchin Gupta <0 0 34 &gic 0 34 4>, 2834f6ad66aSAchin Gupta <0 0 35 &gic 0 35 4>, 2844f6ad66aSAchin Gupta <0 0 36 &gic 0 36 4>, 2854f6ad66aSAchin Gupta <0 0 37 &gic 0 37 4>, 2864f6ad66aSAchin Gupta <0 0 38 &gic 0 38 4>, 2874f6ad66aSAchin Gupta <0 0 39 &gic 0 39 4>, 2884f6ad66aSAchin Gupta <0 0 40 &gic 0 40 4>, 2894f6ad66aSAchin Gupta <0 0 41 &gic 0 41 4>, 2904f6ad66aSAchin Gupta <0 0 42 &gic 0 42 4>; 2914f6ad66aSAchin Gupta 2924f6ad66aSAchin Gupta /include/ "rtsm_ve-motherboard.dtsi" 2934f6ad66aSAchin Gupta }; 2944f6ad66aSAchin Gupta 2954f6ad66aSAchin Gupta panels { 2964f6ad66aSAchin Gupta panel@0 { 2974f6ad66aSAchin Gupta compatible = "panel"; 2984f6ad66aSAchin Gupta mode = "XVGA"; 2994f6ad66aSAchin Gupta refresh = <60>; 3004f6ad66aSAchin Gupta xres = <1024>; 3014f6ad66aSAchin Gupta yres = <768>; 3024f6ad66aSAchin Gupta pixclock = <15748>; 3034f6ad66aSAchin Gupta left_margin = <152>; 3044f6ad66aSAchin Gupta right_margin = <48>; 3054f6ad66aSAchin Gupta upper_margin = <23>; 3064f6ad66aSAchin Gupta lower_margin = <3>; 3074f6ad66aSAchin Gupta hsync_len = <104>; 3084f6ad66aSAchin Gupta vsync_len = <4>; 3094f6ad66aSAchin Gupta sync = <0>; 3104f6ad66aSAchin Gupta vmode = "FB_VMODE_NONINTERLACED"; 3114f6ad66aSAchin Gupta tim2 = "TIM2_BCD", "TIM2_IPC"; 3124f6ad66aSAchin Gupta cntl = "CNTL_LCDTFT", "CNTL_BGR", "CNTL_LCDVCOMP(1)"; 3134f6ad66aSAchin Gupta caps = "CLCD_CAP_5551", "CLCD_CAP_565", "CLCD_CAP_888"; 3144f6ad66aSAchin Gupta bpp = <16>; 3154f6ad66aSAchin Gupta }; 3164f6ad66aSAchin Gupta }; 3174f6ad66aSAchin Gupta}; 318