111348Sandreas.sandberg@arm.com/*
211470Sandreas.sandberg@arm.com * Copyright (c) 2015-2016 ARM Limited
311348Sandreas.sandberg@arm.com * All rights reserved
411348Sandreas.sandberg@arm.com *
511348Sandreas.sandberg@arm.com * Redistribution and use in source and binary forms, with or without
611348Sandreas.sandberg@arm.com * modification, are permitted provided that the following conditions are
711348Sandreas.sandberg@arm.com * met: redistributions of source code must retain the above copyright
811348Sandreas.sandberg@arm.com * notice, this list of conditions and the following disclaimer;
911348Sandreas.sandberg@arm.com * redistributions in binary form must reproduce the above copyright
1011348Sandreas.sandberg@arm.com * notice, this list of conditions and the following disclaimer in the
1111348Sandreas.sandberg@arm.com * documentation and/or other materials provided with the distribution;
1211348Sandreas.sandberg@arm.com * neither the name of the copyright holders nor the names of its
1311348Sandreas.sandberg@arm.com * contributors may be used to endorse or promote products derived from
1411348Sandreas.sandberg@arm.com * this software without specific prior written permission.
1511348Sandreas.sandberg@arm.com *
1611348Sandreas.sandberg@arm.com * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1711348Sandreas.sandberg@arm.com * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1811348Sandreas.sandberg@arm.com * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
1911348Sandreas.sandberg@arm.com * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
2011348Sandreas.sandberg@arm.com * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2111348Sandreas.sandberg@arm.com * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2211348Sandreas.sandberg@arm.com * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2311348Sandreas.sandberg@arm.com * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2411348Sandreas.sandberg@arm.com * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2511348Sandreas.sandberg@arm.com * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2611348Sandreas.sandberg@arm.com * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2711348Sandreas.sandberg@arm.com *
2811348Sandreas.sandberg@arm.com * Authors: Andreas Sandberg
2911348Sandreas.sandberg@arm.com */
3011348Sandreas.sandberg@arm.com
3111348Sandreas.sandberg@arm.com/dts-v1/;
3211348Sandreas.sandberg@arm.com
3311348Sandreas.sandberg@arm.com/memreserve/ 0x80000000 0x00010000;
3411348Sandreas.sandberg@arm.com
3511348Sandreas.sandberg@arm.com#include CONF_PLATFORM
3611348Sandreas.sandberg@arm.com
3711348Sandreas.sandberg@arm.com#define CPU(n) \
3811348Sandreas.sandberg@arm.com	cpu@ ## n { \
3911348Sandreas.sandberg@arm.com		device_type = "cpu"; \
4011348Sandreas.sandberg@arm.com		compatible = "gem5,armv8", "arm,armv8"; \
4111348Sandreas.sandberg@arm.com		reg = < n >; \
4211348Sandreas.sandberg@arm.com		enable-method = "spin-table"; \
4311348Sandreas.sandberg@arm.com		cpu-release-addr = <0 0x8000fff8>; \
4411348Sandreas.sandberg@arm.com	};
4511348Sandreas.sandberg@arm.com
4611348Sandreas.sandberg@arm.com/ {
4711348Sandreas.sandberg@arm.com	model = "V2P-AARCH64";
4811348Sandreas.sandberg@arm.com	compatible = "arm,vexpress,v2p-aarch64", "arm,vexpress";
4911348Sandreas.sandberg@arm.com
5011348Sandreas.sandberg@arm.com	memory@80000000 {
5111348Sandreas.sandberg@arm.com		device_type = "memory";
5211348Sandreas.sandberg@arm.com		reg = <0 0x80000000 0x4 0x00000000>;
5311348Sandreas.sandberg@arm.com	};
5411348Sandreas.sandberg@arm.com
5511348Sandreas.sandberg@arm.com	cpus {
5611348Sandreas.sandberg@arm.com		#address-cells = <1>;
5711348Sandreas.sandberg@arm.com		#size-cells = <0>;
5811348Sandreas.sandberg@arm.com
5911348Sandreas.sandberg@arm.com		#if CONF_CPUS > 0
6011348Sandreas.sandberg@arm.com		CPU(0)
6111348Sandreas.sandberg@arm.com		#endif
6211348Sandreas.sandberg@arm.com		#if CONF_CPUS > 1
6311348Sandreas.sandberg@arm.com		CPU(1)
6411348Sandreas.sandberg@arm.com		#endif
6511348Sandreas.sandberg@arm.com		#if CONF_CPUS > 2
6611348Sandreas.sandberg@arm.com		CPU(2)
6711348Sandreas.sandberg@arm.com		#endif
6811348Sandreas.sandberg@arm.com		#if CONF_CPUS > 3
6911348Sandreas.sandberg@arm.com		CPU(3)
7011348Sandreas.sandberg@arm.com		#endif
7111348Sandreas.sandberg@arm.com		#if CONF_CPUS > 4
7211348Sandreas.sandberg@arm.com		CPU(4)
7311348Sandreas.sandberg@arm.com		#endif
7411348Sandreas.sandberg@arm.com		#if CONF_CPUS > 5
7511348Sandreas.sandberg@arm.com		CPU(5)
7611348Sandreas.sandberg@arm.com		#endif
7711348Sandreas.sandberg@arm.com		#if CONF_CPUS > 6
7811348Sandreas.sandberg@arm.com		CPU(6)
7911348Sandreas.sandberg@arm.com		#endif
8011348Sandreas.sandberg@arm.com		#if CONF_CPUS > 7
8111348Sandreas.sandberg@arm.com		CPU(7)
8211348Sandreas.sandberg@arm.com		#endif
8311348Sandreas.sandberg@arm.com		#if CONF_CPUS > 8
8411348Sandreas.sandberg@arm.com		CPU(8)
8511348Sandreas.sandberg@arm.com		#endif
8611348Sandreas.sandberg@arm.com		#if CONF_CPUS > 9
8711348Sandreas.sandberg@arm.com		CPU(9)
8811348Sandreas.sandberg@arm.com		#endif
8911348Sandreas.sandberg@arm.com		#if CONF_CPUS > 10
9011348Sandreas.sandberg@arm.com		CPU(10)
9111348Sandreas.sandberg@arm.com		#endif
9211348Sandreas.sandberg@arm.com		#if CONF_CPUS > 11
9311348Sandreas.sandberg@arm.com		CPU(11)
9411348Sandreas.sandberg@arm.com		#endif
9511348Sandreas.sandberg@arm.com		#if CONF_CPUS > 12
9611348Sandreas.sandberg@arm.com		CPU(12)
9711348Sandreas.sandberg@arm.com		#endif
9811348Sandreas.sandberg@arm.com		#if CONF_CPUS > 13
9911348Sandreas.sandberg@arm.com		CPU(13)
10011348Sandreas.sandberg@arm.com		#endif
10111348Sandreas.sandberg@arm.com		#if CONF_CPUS > 14
10211348Sandreas.sandberg@arm.com		CPU(14)
10311348Sandreas.sandberg@arm.com		#endif
10411348Sandreas.sandberg@arm.com		#if CONF_CPUS > 15
10511348Sandreas.sandberg@arm.com		CPU(15)
10611348Sandreas.sandberg@arm.com		#endif
10711348Sandreas.sandberg@arm.com		#if CONF_CPUS > 16
10811348Sandreas.sandberg@arm.com		#error Unsupported number of CPUs
10911348Sandreas.sandberg@arm.com		#endif
11011348Sandreas.sandberg@arm.com	};
11111470Sandreas.sandberg@arm.com
11211470Sandreas.sandberg@arm.com	virt-encoder {
11311470Sandreas.sandberg@arm.com		compatible = "drm,virtual-encoder";
11411470Sandreas.sandberg@arm.com		port {
11512761Sandreas.sandberg@arm.com			dp0_virt_input: endpoint@0 {
11612761Sandreas.sandberg@arm.com				remote-endpoint = <&dp0_output>;
11711470Sandreas.sandberg@arm.com			};
11811470Sandreas.sandberg@arm.com		};
11911470Sandreas.sandberg@arm.com
12011470Sandreas.sandberg@arm.com		display-timings {
12111470Sandreas.sandberg@arm.com			native-mode = <&timing0>;
12211470Sandreas.sandberg@arm.com
12311470Sandreas.sandberg@arm.com			timing0: timing_1080p60 {
12411470Sandreas.sandberg@arm.com				/* 1920x1080-60 */
12511470Sandreas.sandberg@arm.com				clock-frequency = <148500000>;
12611470Sandreas.sandberg@arm.com				hactive = <1920>;
12711470Sandreas.sandberg@arm.com				vactive = <1080>;
12811470Sandreas.sandberg@arm.com				hfront-porch = <148>;
12911470Sandreas.sandberg@arm.com				hback-porch = <88>;
13011470Sandreas.sandberg@arm.com				hsync-len = <44>;
13111470Sandreas.sandberg@arm.com				vfront-porch = <36>;
13211470Sandreas.sandberg@arm.com				vback-porch = <4>;
13311470Sandreas.sandberg@arm.com				vsync-len = <5>;
13411470Sandreas.sandberg@arm.com			};
13511470Sandreas.sandberg@arm.com		};
13611470Sandreas.sandberg@arm.com	};
13711348Sandreas.sandberg@arm.com};
13811348Sandreas.sandberg@arm.com
13912761Sandreas.sandberg@arm.com&dp0 {
14011348Sandreas.sandberg@arm.com	status = "ok";
14111348Sandreas.sandberg@arm.com
14211470Sandreas.sandberg@arm.com	port {
14312761Sandreas.sandberg@arm.com		dp0_output: endpoint@0 {
14412761Sandreas.sandberg@arm.com			remote-endpoint = <&dp0_virt_input>;
14511348Sandreas.sandberg@arm.com		};
14611348Sandreas.sandberg@arm.com	};
14711348Sandreas.sandberg@arm.com};
148