xref: /rk3399_ARM-atf/fdts/morello-fvp.dts (revision 387a9065a271ecde0e47dc5a9f9d037637502beb)
1e1cbcf96SManoj Kumar/*
2e1cbcf96SManoj Kumar * Copyright (c) 2020, Arm Limited. All rights reserved.
3e1cbcf96SManoj Kumar *
4e1cbcf96SManoj Kumar * SPDX-License-Identifier: BSD-3-Clause
5e1cbcf96SManoj Kumar */
6e1cbcf96SManoj Kumar
7e1cbcf96SManoj Kumar/dts-v1/;
8e1cbcf96SManoj Kumar#include "morello.dtsi"
9e1cbcf96SManoj Kumar
10e1cbcf96SManoj Kumar/ {
11e1cbcf96SManoj Kumar
12e1cbcf96SManoj Kumar	chosen {
13fcb0ea19SNikos Nikoleris		stdout-path = "serial0:115200n8";
14e1cbcf96SManoj Kumar	};
15e1cbcf96SManoj Kumar
16e1cbcf96SManoj Kumar	reserved-memory {
17e1cbcf96SManoj Kumar		#address-cells = <2>;
18e1cbcf96SManoj Kumar		#size-cells = <2>;
19e1cbcf96SManoj Kumar		ranges;
20e1cbcf96SManoj Kumar
21e1cbcf96SManoj Kumar		secure-firmware@ff000000 {
22e1cbcf96SManoj Kumar			reg = <0 0xff000000 0 0x01000000>;
23e1cbcf96SManoj Kumar			no-map;
24e1cbcf96SManoj Kumar		};
25e1cbcf96SManoj Kumar	};
26e1cbcf96SManoj Kumar
27e1cbcf96SManoj Kumar	cpus {
28e1cbcf96SManoj Kumar		#address-cells = <2>;
29e1cbcf96SManoj Kumar		#size-cells = <0>;
30*387a9065SAnurag Koul
31*387a9065SAnurag Koul		cpu-map {
32*387a9065SAnurag Koul			cluster0 {
33*387a9065SAnurag Koul				core0 {
34*387a9065SAnurag Koul					cpu = <&CPU0>;
35*387a9065SAnurag Koul				};
36*387a9065SAnurag Koul				core1 {
37*387a9065SAnurag Koul					cpu = <&CPU1>;
38*387a9065SAnurag Koul				};
39*387a9065SAnurag Koul			};
40*387a9065SAnurag Koul			cluster1 {
41*387a9065SAnurag Koul				core0 {
42*387a9065SAnurag Koul					cpu = <&CPU2>;
43*387a9065SAnurag Koul				};
44*387a9065SAnurag Koul				core1 {
45*387a9065SAnurag Koul					cpu = <&CPU3>;
46*387a9065SAnurag Koul				};
47*387a9065SAnurag Koul			};
48*387a9065SAnurag Koul		};
49*387a9065SAnurag Koul		CPU0: cpu0@0 {
50e1cbcf96SManoj Kumar			compatible = "arm,armv8";
51e1cbcf96SManoj Kumar			reg = <0x0 0x0>;
52e1cbcf96SManoj Kumar			device_type = "cpu";
53e1cbcf96SManoj Kumar			enable-method = "psci";
54e1cbcf96SManoj Kumar			clocks = <&scmi_dvfs 0>;
55e1cbcf96SManoj Kumar		};
56*387a9065SAnurag Koul		CPU1: cpu1@100 {
57e1cbcf96SManoj Kumar			compatible = "arm,armv8";
58e1cbcf96SManoj Kumar			reg = <0x0 0x100>;
59e1cbcf96SManoj Kumar			device_type = "cpu";
60e1cbcf96SManoj Kumar			enable-method = "psci";
61e1cbcf96SManoj Kumar			clocks = <&scmi_dvfs 0>;
62e1cbcf96SManoj Kumar		};
63*387a9065SAnurag Koul		CPU2: cpu2@10000 {
64e1cbcf96SManoj Kumar			compatible = "arm,armv8";
65e1cbcf96SManoj Kumar			reg = <0x0 0x10000>;
66e1cbcf96SManoj Kumar			device_type = "cpu";
67e1cbcf96SManoj Kumar			enable-method = "psci";
68*387a9065SAnurag Koul			clocks = <&scmi_dvfs 1>;
69e1cbcf96SManoj Kumar		};
70*387a9065SAnurag Koul		CPU3: cpu3@10100 {
71e1cbcf96SManoj Kumar			compatible = "arm,armv8";
72e1cbcf96SManoj Kumar			reg = <0x0 0x10100>;
73e1cbcf96SManoj Kumar			device_type = "cpu";
74e1cbcf96SManoj Kumar			enable-method = "psci";
75*387a9065SAnurag Koul			clocks = <&scmi_dvfs 1>;
76e1cbcf96SManoj Kumar		};
77e1cbcf96SManoj Kumar	};
78e1cbcf96SManoj Kumar
79e1cbcf96SManoj Kumar	/* The first bank of memory, memory map is actually provided by UEFI. */
80e1cbcf96SManoj Kumar	memory@80000000 {
81e1cbcf96SManoj Kumar		#address-cells = <2>;
82e1cbcf96SManoj Kumar		#size-cells = <2>;
83e1cbcf96SManoj Kumar		device_type = "memory";
84e1cbcf96SManoj Kumar		/* [0x80000000-0xffffffff] */
85e1cbcf96SManoj Kumar		reg = <0x00000000 0x80000000 0x0 0x80000000>;
86e1cbcf96SManoj Kumar	};
87e1cbcf96SManoj Kumar
88e1cbcf96SManoj Kumar	memory@8080000000 {
89e1cbcf96SManoj Kumar		#address-cells = <2>;
90e1cbcf96SManoj Kumar		#size-cells = <2>;
91e1cbcf96SManoj Kumar		device_type = "memory";
92e1cbcf96SManoj Kumar		/* [0x8080000000-0x83ffffffff] */
93e1cbcf96SManoj Kumar		reg = <0x00000080 0x80000000 0x1 0x80000000>;
94e1cbcf96SManoj Kumar	};
95e1cbcf96SManoj Kumar
96e1cbcf96SManoj Kumar	virtio_block@1c170000 {
97e1cbcf96SManoj Kumar		compatible = "virtio,mmio";
98e1cbcf96SManoj Kumar		reg = <0x0 0x1c170000 0x0 0x200>;
99e1cbcf96SManoj Kumar		interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
100e1cbcf96SManoj Kumar	};
101e1cbcf96SManoj Kumar
102de7091a1SJessica Clarke	virtio_net@1c180000 {
103de7091a1SJessica Clarke		compatible = "virtio,mmio";
104de7091a1SJessica Clarke		reg = <0x0 0x1c180000 0x0 0x200>;
105de7091a1SJessica Clarke		interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
106de7091a1SJessica Clarke	};
107de7091a1SJessica Clarke
108390181a4SJagadeesh Ujja	virtio_rng@1c190000 {
1095c336e06SJessica Clarke		compatible = "virtio,mmio";
110390181a4SJagadeesh Ujja		reg = <0x0 0x1c190000 0x0 0x200>;
111390181a4SJagadeesh Ujja		interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
112390181a4SJagadeesh Ujja	};
113390181a4SJagadeesh Ujja
1144bf98b27Ssah01	virtio_p9@1c1a0000 {
1154bf98b27Ssah01		compatible = "virtio,mmio";
1164bf98b27Ssah01		reg = <0x0 0x1c1a0000 0x0 0x200>;
1174bf98b27Ssah01		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
1184bf98b27Ssah01	};
1194bf98b27Ssah01
120e1cbcf96SManoj Kumar	ethernet@1d100000 {
121e1cbcf96SManoj Kumar		compatible = "smsc,lan91c111";
122e1cbcf96SManoj Kumar		reg = <0x0 0x1d100000 0x0 0x10000>;
123e1cbcf96SManoj Kumar		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
124e1cbcf96SManoj Kumar	};
125e1cbcf96SManoj Kumar
126e1cbcf96SManoj Kumar	kmi@1c150000 {
127e1cbcf96SManoj Kumar		compatible = "arm,pl050", "arm,primecell";
128e1cbcf96SManoj Kumar		reg = <0x0 0x1c150000 0x0 0x1000>;
129e1cbcf96SManoj Kumar		interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
130e1cbcf96SManoj Kumar		clocks = <&bp_clock24mhz>, <&bp_clock24mhz>;
131e1cbcf96SManoj Kumar		clock-names = "KMIREFCLK", "apb_pclk";
132e1cbcf96SManoj Kumar	};
133e1cbcf96SManoj Kumar
134e1cbcf96SManoj Kumar	kmi@1c160000 {
135e1cbcf96SManoj Kumar		compatible = "arm,pl050", "arm,primecell";
136e1cbcf96SManoj Kumar		reg = <0x0 0x1c160000 0x0 0x1000>;
137e1cbcf96SManoj Kumar		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
138e1cbcf96SManoj Kumar		clocks = <&bp_clock24mhz>, <&bp_clock24mhz>;
139e1cbcf96SManoj Kumar		clock-names = "KMIREFCLK", "apb_pclk";
140e1cbcf96SManoj Kumar	};
141e1cbcf96SManoj Kumar
142e1cbcf96SManoj Kumar	firmware {
143e1cbcf96SManoj Kumar		scmi {
144e1cbcf96SManoj Kumar			compatible = "arm,scmi";
145e1cbcf96SManoj Kumar			mbox-names = "tx", "rx";
146e1cbcf96SManoj Kumar			mboxes = <&mailbox 1 0 &mailbox 1 1>;
147e1cbcf96SManoj Kumar			shmem = <&cpu_scp_hpri0 &cpu_scp_hpri1>;
148e1cbcf96SManoj Kumar			#address-cells = <1>;
149e1cbcf96SManoj Kumar			#size-cells = <0>;
150e1cbcf96SManoj Kumar
151e1cbcf96SManoj Kumar			scmi_dvfs: protocol@13 {
152e1cbcf96SManoj Kumar				reg = <0x13>;
153e1cbcf96SManoj Kumar				#clock-cells = <1>;
154e1cbcf96SManoj Kumar			};
155e1cbcf96SManoj Kumar		};
156e1cbcf96SManoj Kumar	};
157e1cbcf96SManoj Kumar
158e1cbcf96SManoj Kumar	bp_clock24mhz: clock24mhz {
159e1cbcf96SManoj Kumar		compatible = "fixed-clock";
160e1cbcf96SManoj Kumar		#clock-cells = <0>;
161e1cbcf96SManoj Kumar		clock-frequency = <24000000>;
162e1cbcf96SManoj Kumar		clock-output-names = "bp:clock24mhz";
163e1cbcf96SManoj Kumar	};
164e1cbcf96SManoj Kumar};
165e1cbcf96SManoj Kumar
166e1cbcf96SManoj Kumar&gic {
167e1cbcf96SManoj Kumar	reg = <0x0 0x30000000 0 0x10000>,	/* GICD */
168e1cbcf96SManoj Kumar	      <0x0 0x300c0000 0 0x80000>;	/* GICR */
169e1cbcf96SManoj Kumar	interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
170e1cbcf96SManoj Kumar};
171