blob: 405e2fba025beeec73c8ba020fa2329f2438f533 [file] [log] [blame]
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +00001/*
2 * ARM Ltd. Juno Platform
3 *
4 * Copyright (c) 2015 ARM Ltd.
5 *
6 * This file is licensed under a dual GPLv2 or BSD license.
7 */
8
9/dts-v1/;
10
11#include <dt-bindings/interrupt-controller/arm-gic.h>
Sudeep Hollad29e849c2017-01-17 10:20:59 +000012#include "juno-base.dtsi"
Mike Leachcdc07e92017-01-11 20:44:08 +000013#include "juno-cs-r1r2.dtsi"
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +000014
15/ {
16 model = "ARM Juno development board (r2)";
17 compatible = "arm,juno-r2", "arm,juno", "arm,vexpress";
18 interrupt-parent = <&gic>;
19 #address-cells = <2>;
20 #size-cells = <2>;
21
22 aliases {
23 serial0 = &soc_uart0;
24 };
25
26 chosen {
27 stdout-path = "serial0:115200n8";
28 };
29
30 psci {
31 compatible = "arm,psci-0.2";
32 method = "smc";
33 };
34
35 cpus {
36 #address-cells = <2>;
37 #size-cells = <0>;
38
39 cpu-map {
40 cluster0 {
41 core0 {
42 cpu = <&A72_0>;
43 };
44 core1 {
45 cpu = <&A72_1>;
46 };
47 };
48
49 cluster1 {
50 core0 {
51 cpu = <&A53_0>;
52 };
53 core1 {
54 cpu = <&A53_1>;
55 };
56 core2 {
57 cpu = <&A53_2>;
58 };
59 core3 {
60 cpu = <&A53_3>;
61 };
62 };
63 };
64
65 idle-states {
66 entry-method = "arm,psci";
67
68 CPU_SLEEP_0: cpu-sleep-0 {
69 compatible = "arm,idle-state";
70 arm,psci-suspend-param = <0x0010000>;
71 local-timer-stop;
72 entry-latency-us = <300>;
73 exit-latency-us = <1200>;
74 min-residency-us = <2000>;
75 };
76
77 CLUSTER_SLEEP_0: cluster-sleep-0 {
78 compatible = "arm,idle-state";
79 arm,psci-suspend-param = <0x1010000>;
80 local-timer-stop;
Sudeep Holla909e4812016-11-16 17:31:31 +000081 entry-latency-us = <400>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +000082 exit-latency-us = <1200>;
83 min-residency-us = <2500>;
84 };
85 };
86
87 A72_0: cpu@0 {
88 compatible = "arm,cortex-a72","arm,armv8";
89 reg = <0x0 0x0>;
90 device_type = "cpu";
91 enable-method = "psci";
Sudeep Hollaf9936c42017-04-13 10:05:38 +010092 i-cache-size = <0xc000>;
93 i-cache-line-size = <64>;
94 i-cache-sets = <256>;
95 d-cache-size = <0x8000>;
96 d-cache-line-size = <64>;
97 d-cache-sets = <256>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +000098 next-level-cache = <&A72_L2>;
99 clocks = <&scpi_dvfs 0>;
100 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
Juri Lellic1ab65b2016-10-17 16:46:48 +0100101 capacity-dmips-mhz = <1024>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000102 };
103
104 A72_1: cpu@1 {
105 compatible = "arm,cortex-a72","arm,armv8";
106 reg = <0x0 0x1>;
107 device_type = "cpu";
108 enable-method = "psci";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100109 i-cache-size = <0xc000>;
110 i-cache-line-size = <64>;
111 i-cache-sets = <256>;
112 d-cache-size = <0x8000>;
113 d-cache-line-size = <64>;
114 d-cache-sets = <256>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000115 next-level-cache = <&A72_L2>;
116 clocks = <&scpi_dvfs 0>;
117 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
Juri Lellic1ab65b2016-10-17 16:46:48 +0100118 capacity-dmips-mhz = <1024>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000119 };
120
121 A53_0: cpu@100 {
122 compatible = "arm,cortex-a53","arm,armv8";
123 reg = <0x0 0x100>;
124 device_type = "cpu";
125 enable-method = "psci";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100126 i-cache-size = <0x8000>;
127 i-cache-line-size = <64>;
128 i-cache-sets = <256>;
129 d-cache-size = <0x8000>;
130 d-cache-line-size = <64>;
131 d-cache-sets = <128>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000132 next-level-cache = <&A53_L2>;
133 clocks = <&scpi_dvfs 1>;
134 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
Juri Lellic1ab65b2016-10-17 16:46:48 +0100135 capacity-dmips-mhz = <485>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000136 };
137
138 A53_1: cpu@101 {
139 compatible = "arm,cortex-a53","arm,armv8";
140 reg = <0x0 0x101>;
141 device_type = "cpu";
142 enable-method = "psci";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100143 i-cache-size = <0x8000>;
144 i-cache-line-size = <64>;
145 i-cache-sets = <256>;
146 d-cache-size = <0x8000>;
147 d-cache-line-size = <64>;
148 d-cache-sets = <128>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000149 next-level-cache = <&A53_L2>;
150 clocks = <&scpi_dvfs 1>;
151 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
Juri Lellic1ab65b2016-10-17 16:46:48 +0100152 capacity-dmips-mhz = <485>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000153 };
154
155 A53_2: cpu@102 {
156 compatible = "arm,cortex-a53","arm,armv8";
157 reg = <0x0 0x102>;
158 device_type = "cpu";
159 enable-method = "psci";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100160 i-cache-size = <0x8000>;
161 i-cache-line-size = <64>;
162 i-cache-sets = <256>;
163 d-cache-size = <0x8000>;
164 d-cache-line-size = <64>;
165 d-cache-sets = <128>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000166 next-level-cache = <&A53_L2>;
167 clocks = <&scpi_dvfs 1>;
168 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
Juri Lellic1ab65b2016-10-17 16:46:48 +0100169 capacity-dmips-mhz = <485>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000170 };
171
172 A53_3: cpu@103 {
173 compatible = "arm,cortex-a53","arm,armv8";
174 reg = <0x0 0x103>;
175 device_type = "cpu";
176 enable-method = "psci";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100177 i-cache-size = <0x8000>;
178 i-cache-line-size = <64>;
179 i-cache-sets = <256>;
180 d-cache-size = <0x8000>;
181 d-cache-line-size = <64>;
182 d-cache-sets = <128>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000183 next-level-cache = <&A53_L2>;
184 clocks = <&scpi_dvfs 1>;
185 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>;
Juri Lellic1ab65b2016-10-17 16:46:48 +0100186 capacity-dmips-mhz = <485>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000187 };
188
189 A72_L2: l2-cache0 {
190 compatible = "cache";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100191 cache-size = <0x200000>;
192 cache-line-size = <64>;
193 cache-sets = <2048>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000194 };
195
196 A53_L2: l2-cache1 {
197 compatible = "cache";
Sudeep Hollaf9936c42017-04-13 10:05:38 +0100198 cache-size = <0x100000>;
199 cache-line-size = <64>;
200 cache-sets = <1024>;
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000201 };
202 };
203
204 pmu_a72 {
205 compatible = "arm,cortex-a72-pmu";
206 interrupts = <GIC_SPI 02 IRQ_TYPE_LEVEL_HIGH>,
207 <GIC_SPI 06 IRQ_TYPE_LEVEL_HIGH>;
208 interrupt-affinity = <&A72_0>,
209 <&A72_1>;
210 };
211
212 pmu_a53 {
213 compatible = "arm,cortex-a53-pmu";
214 interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
215 <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
216 <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
217 <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
218 interrupt-affinity = <&A53_0>,
219 <&A53_1>,
220 <&A53_2>,
221 <&A53_3>;
222 };
Sudeep Hollae6d7f6d2015-12-22 17:45:29 +0000223};
224
225&memtimer {
226 status = "okay";
227};
228
229&pcie_ctlr {
230 status = "okay";
231};
Sudeep Holla3e287cf2016-06-02 10:18:41 +0100232
233&etm0 {
234 cpu = <&A72_0>;
235};
236
237&etm1 {
238 cpu = <&A72_1>;
239};
240
241&etm2 {
242 cpu = <&A53_0>;
243};
244
245&etm3 {
246 cpu = <&A53_1>;
247};
248
249&etm4 {
250 cpu = <&A53_2>;
251};
252
253&etm5 {
254 cpu = <&A53_3>;
255};
Javi Merinof7b636a2016-06-13 16:15:15 +0100256
257&big_cluster_thermal_zone {
258 status = "okay";
259};
260
261&little_cluster_thermal_zone {
262 status = "okay";
263};
264
265&gpu0_thermal_zone {
266 status = "okay";
267};
268
269&gpu1_thermal_zone {
270 status = "okay";
271};
Mike Leachcdc07e92017-01-11 20:44:08 +0000272
273&etf0_out_port {
274 remote-endpoint = <&csys2_funnel_in_port0>;
275};
276
277&replicator_in_port0 {
278 remote-endpoint = <&csys2_funnel_out_port>;
279};
Mike Leachcde6f9a2017-01-11 20:44:09 +0000280
281&stm_out_port {
282 remote-endpoint = <&csys1_funnel_in_port0>;
283};