xref: /freebsd/sys/contrib/device-tree/src/arm64/apple/t602x-common.dtsi (revision 1537cf73828a2db2a67622ccfff77383c7db6f07)
1*1537cf73SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ OR MIT
2*1537cf73SEmmanuel Vadot/*
3*1537cf73SEmmanuel Vadot * Nodes common to all T602x family SoCs (M2 Pro/Max/Ultra)
4*1537cf73SEmmanuel Vadot *
5*1537cf73SEmmanuel Vadot * Other names: H14J, "Rhodes Chop", "Rhodes", "Rhodes 2C"
6*1537cf73SEmmanuel Vadot *
7*1537cf73SEmmanuel Vadot * Copyright The Asahi Linux Contributors
8*1537cf73SEmmanuel Vadot */
9*1537cf73SEmmanuel Vadot
10*1537cf73SEmmanuel Vadot/ {
11*1537cf73SEmmanuel Vadot	#address-cells = <2>;
12*1537cf73SEmmanuel Vadot	#size-cells = <2>;
13*1537cf73SEmmanuel Vadot
14*1537cf73SEmmanuel Vadot	aliases {
15*1537cf73SEmmanuel Vadot		gpu = &gpu;
16*1537cf73SEmmanuel Vadot	};
17*1537cf73SEmmanuel Vadot
18*1537cf73SEmmanuel Vadot	cpus {
19*1537cf73SEmmanuel Vadot		#address-cells = <2>;
20*1537cf73SEmmanuel Vadot		#size-cells = <0>;
21*1537cf73SEmmanuel Vadot
22*1537cf73SEmmanuel Vadot		cpu-map {
23*1537cf73SEmmanuel Vadot			cluster0 {
24*1537cf73SEmmanuel Vadot				core0 {
25*1537cf73SEmmanuel Vadot					cpu = <&cpu_e00>;
26*1537cf73SEmmanuel Vadot				};
27*1537cf73SEmmanuel Vadot				core1 {
28*1537cf73SEmmanuel Vadot					cpu = <&cpu_e01>;
29*1537cf73SEmmanuel Vadot				};
30*1537cf73SEmmanuel Vadot				core2 {
31*1537cf73SEmmanuel Vadot					cpu = <&cpu_e02>;
32*1537cf73SEmmanuel Vadot				};
33*1537cf73SEmmanuel Vadot				core3 {
34*1537cf73SEmmanuel Vadot					cpu = <&cpu_e03>;
35*1537cf73SEmmanuel Vadot				};
36*1537cf73SEmmanuel Vadot			};
37*1537cf73SEmmanuel Vadot
38*1537cf73SEmmanuel Vadot			cluster1 {
39*1537cf73SEmmanuel Vadot				core0 {
40*1537cf73SEmmanuel Vadot					cpu = <&cpu_p00>;
41*1537cf73SEmmanuel Vadot				};
42*1537cf73SEmmanuel Vadot				core1 {
43*1537cf73SEmmanuel Vadot					cpu = <&cpu_p01>;
44*1537cf73SEmmanuel Vadot				};
45*1537cf73SEmmanuel Vadot				core2 {
46*1537cf73SEmmanuel Vadot					cpu = <&cpu_p02>;
47*1537cf73SEmmanuel Vadot				};
48*1537cf73SEmmanuel Vadot				core3 {
49*1537cf73SEmmanuel Vadot					cpu = <&cpu_p03>;
50*1537cf73SEmmanuel Vadot				};
51*1537cf73SEmmanuel Vadot			};
52*1537cf73SEmmanuel Vadot
53*1537cf73SEmmanuel Vadot			cluster2 {
54*1537cf73SEmmanuel Vadot				core0 {
55*1537cf73SEmmanuel Vadot					cpu = <&cpu_p10>;
56*1537cf73SEmmanuel Vadot				};
57*1537cf73SEmmanuel Vadot				core1 {
58*1537cf73SEmmanuel Vadot					cpu = <&cpu_p11>;
59*1537cf73SEmmanuel Vadot				};
60*1537cf73SEmmanuel Vadot				core2 {
61*1537cf73SEmmanuel Vadot					cpu = <&cpu_p12>;
62*1537cf73SEmmanuel Vadot				};
63*1537cf73SEmmanuel Vadot				core3 {
64*1537cf73SEmmanuel Vadot					cpu = <&cpu_p13>;
65*1537cf73SEmmanuel Vadot				};
66*1537cf73SEmmanuel Vadot			};
67*1537cf73SEmmanuel Vadot		};
68*1537cf73SEmmanuel Vadot
69*1537cf73SEmmanuel Vadot		cpu_e00: cpu@0 {
70*1537cf73SEmmanuel Vadot			compatible = "apple,blizzard";
71*1537cf73SEmmanuel Vadot			device_type = "cpu";
72*1537cf73SEmmanuel Vadot			reg = <0x0 0x0>;
73*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
74*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* to be filled by loader */
75*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_0>;
76*1537cf73SEmmanuel Vadot			i-cache-size = <0x20000>;
77*1537cf73SEmmanuel Vadot			d-cache-size = <0x10000>;
78*1537cf73SEmmanuel Vadot			operating-points-v2 = <&blizzard_opp>;
79*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <756>;
80*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_e>;
81*1537cf73SEmmanuel Vadot		};
82*1537cf73SEmmanuel Vadot
83*1537cf73SEmmanuel Vadot		cpu_e01: cpu@1 {
84*1537cf73SEmmanuel Vadot			compatible = "apple,blizzard";
85*1537cf73SEmmanuel Vadot			device_type = "cpu";
86*1537cf73SEmmanuel Vadot			reg = <0x0 0x1>;
87*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
88*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* to be filled by loader */
89*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_0>;
90*1537cf73SEmmanuel Vadot			i-cache-size = <0x20000>;
91*1537cf73SEmmanuel Vadot			d-cache-size = <0x10000>;
92*1537cf73SEmmanuel Vadot			operating-points-v2 = <&blizzard_opp>;
93*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <756>;
94*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_e>;
95*1537cf73SEmmanuel Vadot		};
96*1537cf73SEmmanuel Vadot
97*1537cf73SEmmanuel Vadot		cpu_e02: cpu@2 {
98*1537cf73SEmmanuel Vadot			compatible = "apple,blizzard";
99*1537cf73SEmmanuel Vadot			device_type = "cpu";
100*1537cf73SEmmanuel Vadot			reg = <0x0 0x2>;
101*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
102*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* to be filled by loader */
103*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_0>;
104*1537cf73SEmmanuel Vadot			i-cache-size = <0x20000>;
105*1537cf73SEmmanuel Vadot			d-cache-size = <0x10000>;
106*1537cf73SEmmanuel Vadot			operating-points-v2 = <&blizzard_opp>;
107*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <756>;
108*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_e>;
109*1537cf73SEmmanuel Vadot		};
110*1537cf73SEmmanuel Vadot
111*1537cf73SEmmanuel Vadot		cpu_e03: cpu@3 {
112*1537cf73SEmmanuel Vadot			compatible = "apple,blizzard";
113*1537cf73SEmmanuel Vadot			device_type = "cpu";
114*1537cf73SEmmanuel Vadot			reg = <0x0 0x3>;
115*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
116*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* to be filled by loader */
117*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_0>;
118*1537cf73SEmmanuel Vadot			i-cache-size = <0x20000>;
119*1537cf73SEmmanuel Vadot			d-cache-size = <0x10000>;
120*1537cf73SEmmanuel Vadot			operating-points-v2 = <&blizzard_opp>;
121*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <756>;
122*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_e>;
123*1537cf73SEmmanuel Vadot		};
124*1537cf73SEmmanuel Vadot
125*1537cf73SEmmanuel Vadot		cpu_p00: cpu@10100 {
126*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
127*1537cf73SEmmanuel Vadot			device_type = "cpu";
128*1537cf73SEmmanuel Vadot			reg = <0x0 0x10100>;
129*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
130*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
131*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_1>;
132*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
133*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
134*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
135*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
136*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p0>;
137*1537cf73SEmmanuel Vadot		};
138*1537cf73SEmmanuel Vadot
139*1537cf73SEmmanuel Vadot		cpu_p01: cpu@10101 {
140*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
141*1537cf73SEmmanuel Vadot			device_type = "cpu";
142*1537cf73SEmmanuel Vadot			reg = <0x0 0x10101>;
143*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
144*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
145*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_1>;
146*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
147*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
148*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
149*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
150*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p0>;
151*1537cf73SEmmanuel Vadot		};
152*1537cf73SEmmanuel Vadot
153*1537cf73SEmmanuel Vadot		cpu_p02: cpu@10102 {
154*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
155*1537cf73SEmmanuel Vadot			device_type = "cpu";
156*1537cf73SEmmanuel Vadot			reg = <0x0 0x10102>;
157*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
158*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
159*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_1>;
160*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
161*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
162*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
163*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
164*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p0>;
165*1537cf73SEmmanuel Vadot		};
166*1537cf73SEmmanuel Vadot
167*1537cf73SEmmanuel Vadot		cpu_p03: cpu@10103 {
168*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
169*1537cf73SEmmanuel Vadot			device_type = "cpu";
170*1537cf73SEmmanuel Vadot			reg = <0x0 0x10103>;
171*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
172*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
173*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_1>;
174*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
175*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
176*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
177*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
178*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p0>;
179*1537cf73SEmmanuel Vadot		};
180*1537cf73SEmmanuel Vadot
181*1537cf73SEmmanuel Vadot		cpu_p10: cpu@10200 {
182*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
183*1537cf73SEmmanuel Vadot			device_type = "cpu";
184*1537cf73SEmmanuel Vadot			reg = <0x0 0x10200>;
185*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
186*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
187*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_2>;
188*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
189*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
190*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
191*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
192*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p1>;
193*1537cf73SEmmanuel Vadot		};
194*1537cf73SEmmanuel Vadot
195*1537cf73SEmmanuel Vadot		cpu_p11: cpu@10201 {
196*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
197*1537cf73SEmmanuel Vadot			device_type = "cpu";
198*1537cf73SEmmanuel Vadot			reg = <0x0 0x10201>;
199*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
200*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
201*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_2>;
202*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
203*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
204*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
205*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
206*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p1>;
207*1537cf73SEmmanuel Vadot		};
208*1537cf73SEmmanuel Vadot
209*1537cf73SEmmanuel Vadot		cpu_p12: cpu@10202 {
210*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
211*1537cf73SEmmanuel Vadot			device_type = "cpu";
212*1537cf73SEmmanuel Vadot			reg = <0x0 0x10202>;
213*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
214*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
215*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_2>;
216*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
217*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
218*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
219*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
220*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p1>;
221*1537cf73SEmmanuel Vadot		};
222*1537cf73SEmmanuel Vadot
223*1537cf73SEmmanuel Vadot		cpu_p13: cpu@10203 {
224*1537cf73SEmmanuel Vadot			compatible = "apple,avalanche";
225*1537cf73SEmmanuel Vadot			device_type = "cpu";
226*1537cf73SEmmanuel Vadot			reg = <0x0 0x10203>;
227*1537cf73SEmmanuel Vadot			enable-method = "spin-table";
228*1537cf73SEmmanuel Vadot			cpu-release-addr = <0 0>; /* To be filled by loader */
229*1537cf73SEmmanuel Vadot			next-level-cache = <&l2_cache_2>;
230*1537cf73SEmmanuel Vadot			i-cache-size = <0x30000>;
231*1537cf73SEmmanuel Vadot			d-cache-size = <0x20000>;
232*1537cf73SEmmanuel Vadot			operating-points-v2 = <&avalanche_opp>;
233*1537cf73SEmmanuel Vadot			capacity-dmips-mhz = <1024>;
234*1537cf73SEmmanuel Vadot			performance-domains = <&cpufreq_p1>;
235*1537cf73SEmmanuel Vadot		};
236*1537cf73SEmmanuel Vadot
237*1537cf73SEmmanuel Vadot		l2_cache_0: l2-cache-0 {
238*1537cf73SEmmanuel Vadot			compatible = "cache";
239*1537cf73SEmmanuel Vadot			cache-level = <2>;
240*1537cf73SEmmanuel Vadot			cache-unified;
241*1537cf73SEmmanuel Vadot			cache-size = <0x400000>;
242*1537cf73SEmmanuel Vadot		};
243*1537cf73SEmmanuel Vadot
244*1537cf73SEmmanuel Vadot		l2_cache_1: l2-cache-1 {
245*1537cf73SEmmanuel Vadot			compatible = "cache";
246*1537cf73SEmmanuel Vadot			cache-level = <2>;
247*1537cf73SEmmanuel Vadot			cache-unified;
248*1537cf73SEmmanuel Vadot			cache-size = <0x1000000>;
249*1537cf73SEmmanuel Vadot		};
250*1537cf73SEmmanuel Vadot
251*1537cf73SEmmanuel Vadot		l2_cache_2: l2-cache-2 {
252*1537cf73SEmmanuel Vadot			compatible = "cache";
253*1537cf73SEmmanuel Vadot			cache-level = <2>;
254*1537cf73SEmmanuel Vadot			cache-unified;
255*1537cf73SEmmanuel Vadot			cache-size = <0x1000000>;
256*1537cf73SEmmanuel Vadot		};
257*1537cf73SEmmanuel Vadot	 };
258*1537cf73SEmmanuel Vadot
259*1537cf73SEmmanuel Vadot	blizzard_opp: opp-table-0 {
260*1537cf73SEmmanuel Vadot		compatible = "operating-points-v2";
261*1537cf73SEmmanuel Vadot		opp-shared;
262*1537cf73SEmmanuel Vadot
263*1537cf73SEmmanuel Vadot		/* pstate #1 is a dummy clone of #2 */
264*1537cf73SEmmanuel Vadot		opp02 {
265*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <912000000>;
266*1537cf73SEmmanuel Vadot			opp-level = <2>;
267*1537cf73SEmmanuel Vadot			clock-latency-ns = <7700>;
268*1537cf73SEmmanuel Vadot		};
269*1537cf73SEmmanuel Vadot		opp03 {
270*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <1284000000>;
271*1537cf73SEmmanuel Vadot			opp-level = <3>;
272*1537cf73SEmmanuel Vadot			clock-latency-ns = <25000>;
273*1537cf73SEmmanuel Vadot		};
274*1537cf73SEmmanuel Vadot		opp04 {
275*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <1752000000>;
276*1537cf73SEmmanuel Vadot			opp-level = <4>;
277*1537cf73SEmmanuel Vadot			clock-latency-ns = <33000>;
278*1537cf73SEmmanuel Vadot		};
279*1537cf73SEmmanuel Vadot		opp05 {
280*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2004000000>;
281*1537cf73SEmmanuel Vadot			opp-level = <5>;
282*1537cf73SEmmanuel Vadot			clock-latency-ns = <38000>;
283*1537cf73SEmmanuel Vadot		};
284*1537cf73SEmmanuel Vadot		opp06 {
285*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2256000000>;
286*1537cf73SEmmanuel Vadot			opp-level = <6>;
287*1537cf73SEmmanuel Vadot			clock-latency-ns = <44000>;
288*1537cf73SEmmanuel Vadot		};
289*1537cf73SEmmanuel Vadot		opp07 {
290*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2424000000>;
291*1537cf73SEmmanuel Vadot			opp-level = <7>;
292*1537cf73SEmmanuel Vadot			clock-latency-ns = <48000>;
293*1537cf73SEmmanuel Vadot		};
294*1537cf73SEmmanuel Vadot	};
295*1537cf73SEmmanuel Vadot
296*1537cf73SEmmanuel Vadot	avalanche_opp: opp-table-1 {
297*1537cf73SEmmanuel Vadot		compatible = "operating-points-v2";
298*1537cf73SEmmanuel Vadot		opp-shared;
299*1537cf73SEmmanuel Vadot
300*1537cf73SEmmanuel Vadot		opp01 {
301*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <702000000>;
302*1537cf73SEmmanuel Vadot			opp-level = <1>;
303*1537cf73SEmmanuel Vadot			clock-latency-ns = <7400>;
304*1537cf73SEmmanuel Vadot		};
305*1537cf73SEmmanuel Vadot		opp02 {
306*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <948000000>;
307*1537cf73SEmmanuel Vadot			opp-level = <2>;
308*1537cf73SEmmanuel Vadot			clock-latency-ns = <18000>;
309*1537cf73SEmmanuel Vadot		};
310*1537cf73SEmmanuel Vadot		opp03 {
311*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <1188000000>;
312*1537cf73SEmmanuel Vadot			opp-level = <3>;
313*1537cf73SEmmanuel Vadot			clock-latency-ns = <21000>;
314*1537cf73SEmmanuel Vadot		};
315*1537cf73SEmmanuel Vadot		opp04 {
316*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <1452000000>;
317*1537cf73SEmmanuel Vadot			opp-level = <4>;
318*1537cf73SEmmanuel Vadot			clock-latency-ns = <24000>;
319*1537cf73SEmmanuel Vadot		};
320*1537cf73SEmmanuel Vadot		opp05 {
321*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <1704000000>;
322*1537cf73SEmmanuel Vadot			opp-level = <5>;
323*1537cf73SEmmanuel Vadot			clock-latency-ns = <28000>;
324*1537cf73SEmmanuel Vadot		};
325*1537cf73SEmmanuel Vadot		opp06 {
326*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <1968000000>;
327*1537cf73SEmmanuel Vadot			opp-level = <6>;
328*1537cf73SEmmanuel Vadot			clock-latency-ns = <31000>;
329*1537cf73SEmmanuel Vadot		};
330*1537cf73SEmmanuel Vadot		opp07 {
331*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2208000000>;
332*1537cf73SEmmanuel Vadot			opp-level = <7>;
333*1537cf73SEmmanuel Vadot			clock-latency-ns = <33000>;
334*1537cf73SEmmanuel Vadot		};
335*1537cf73SEmmanuel Vadot		opp08 {
336*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2400000000>;
337*1537cf73SEmmanuel Vadot			opp-level = <8>;
338*1537cf73SEmmanuel Vadot			clock-latency-ns = <45000>;
339*1537cf73SEmmanuel Vadot		};
340*1537cf73SEmmanuel Vadot		opp09 {
341*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2568000000>;
342*1537cf73SEmmanuel Vadot			opp-level = <9>;
343*1537cf73SEmmanuel Vadot			clock-latency-ns = <47000>;
344*1537cf73SEmmanuel Vadot		};
345*1537cf73SEmmanuel Vadot		opp10 {
346*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2724000000>;
347*1537cf73SEmmanuel Vadot			opp-level = <10>;
348*1537cf73SEmmanuel Vadot			clock-latency-ns = <50000>;
349*1537cf73SEmmanuel Vadot		};
350*1537cf73SEmmanuel Vadot		opp11 {
351*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <2868000000>;
352*1537cf73SEmmanuel Vadot			opp-level = <11>;
353*1537cf73SEmmanuel Vadot			clock-latency-ns = <52000>;
354*1537cf73SEmmanuel Vadot		};
355*1537cf73SEmmanuel Vadot		opp12 {
356*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <3000000000>;
357*1537cf73SEmmanuel Vadot			opp-level = <12>;
358*1537cf73SEmmanuel Vadot			clock-latency-ns = <57000>;
359*1537cf73SEmmanuel Vadot		};
360*1537cf73SEmmanuel Vadot		opp13 {
361*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <3132000000>;
362*1537cf73SEmmanuel Vadot			opp-level = <13>;
363*1537cf73SEmmanuel Vadot			clock-latency-ns = <60000>;
364*1537cf73SEmmanuel Vadot		};
365*1537cf73SEmmanuel Vadot		opp14 {
366*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <3264000000>;
367*1537cf73SEmmanuel Vadot			opp-level = <14>;
368*1537cf73SEmmanuel Vadot			clock-latency-ns = <64000>;
369*1537cf73SEmmanuel Vadot		};
370*1537cf73SEmmanuel Vadot		opp15 {
371*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <3360000000>;
372*1537cf73SEmmanuel Vadot			opp-level = <15>;
373*1537cf73SEmmanuel Vadot			clock-latency-ns = <64000>;
374*1537cf73SEmmanuel Vadot			turbo-mode;
375*1537cf73SEmmanuel Vadot		};
376*1537cf73SEmmanuel Vadot		opp16 {
377*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <3408000000>;
378*1537cf73SEmmanuel Vadot			opp-level = <16>;
379*1537cf73SEmmanuel Vadot			clock-latency-ns = <64000>;
380*1537cf73SEmmanuel Vadot			turbo-mode;
381*1537cf73SEmmanuel Vadot		};
382*1537cf73SEmmanuel Vadot		opp17 {
383*1537cf73SEmmanuel Vadot			opp-hz = /bits/ 64 <3504000000>;
384*1537cf73SEmmanuel Vadot			opp-level = <17>;
385*1537cf73SEmmanuel Vadot			clock-latency-ns = <64000>;
386*1537cf73SEmmanuel Vadot			turbo-mode;
387*1537cf73SEmmanuel Vadot		};
388*1537cf73SEmmanuel Vadot	};
389*1537cf73SEmmanuel Vadot
390*1537cf73SEmmanuel Vadot	pmu-e {
391*1537cf73SEmmanuel Vadot		compatible = "apple,blizzard-pmu";
392*1537cf73SEmmanuel Vadot		interrupt-parent = <&aic>;
393*1537cf73SEmmanuel Vadot		interrupts = <AIC_FIQ 0 AIC_CPU_PMU_E IRQ_TYPE_LEVEL_HIGH>;
394*1537cf73SEmmanuel Vadot	};
395*1537cf73SEmmanuel Vadot
396*1537cf73SEmmanuel Vadot	pmu-p {
397*1537cf73SEmmanuel Vadot		compatible = "apple,avalanche-pmu";
398*1537cf73SEmmanuel Vadot		interrupt-parent = <&aic>;
399*1537cf73SEmmanuel Vadot		interrupts = <AIC_FIQ 0 AIC_CPU_PMU_P IRQ_TYPE_LEVEL_HIGH>;
400*1537cf73SEmmanuel Vadot	};
401*1537cf73SEmmanuel Vadot
402*1537cf73SEmmanuel Vadot	timer {
403*1537cf73SEmmanuel Vadot		compatible = "arm,armv8-timer";
404*1537cf73SEmmanuel Vadot		interrupt-parent = <&aic>;
405*1537cf73SEmmanuel Vadot		interrupt-names = "phys", "virt", "hyp-phys", "hyp-virt";
406*1537cf73SEmmanuel Vadot		interrupts = <AIC_FIQ 0 AIC_TMR_GUEST_PHYS IRQ_TYPE_LEVEL_HIGH>,
407*1537cf73SEmmanuel Vadot			     <AIC_FIQ 0 AIC_TMR_GUEST_VIRT IRQ_TYPE_LEVEL_HIGH>,
408*1537cf73SEmmanuel Vadot			     <AIC_FIQ 0 AIC_TMR_HV_PHYS IRQ_TYPE_LEVEL_HIGH>,
409*1537cf73SEmmanuel Vadot			     <AIC_FIQ 0 AIC_TMR_HV_VIRT IRQ_TYPE_LEVEL_HIGH>;
410*1537cf73SEmmanuel Vadot	};
411*1537cf73SEmmanuel Vadot
412*1537cf73SEmmanuel Vadot	clkref: clock-ref {
413*1537cf73SEmmanuel Vadot		compatible = "fixed-clock";
414*1537cf73SEmmanuel Vadot		#clock-cells = <0>;
415*1537cf73SEmmanuel Vadot		clock-frequency = <24000000>;
416*1537cf73SEmmanuel Vadot		clock-output-names = "clkref";
417*1537cf73SEmmanuel Vadot	};
418*1537cf73SEmmanuel Vadot
419*1537cf73SEmmanuel Vadot	clk_200m: clock-200m {
420*1537cf73SEmmanuel Vadot		compatible = "fixed-clock";
421*1537cf73SEmmanuel Vadot		#clock-cells = <0>;
422*1537cf73SEmmanuel Vadot		clock-frequency = <200000000>;
423*1537cf73SEmmanuel Vadot		clock-output-names = "clk_200m";
424*1537cf73SEmmanuel Vadot	};
425*1537cf73SEmmanuel Vadot
426*1537cf73SEmmanuel Vadot	/*
427*1537cf73SEmmanuel Vadot	 * This is a fabulated representation of the input clock
428*1537cf73SEmmanuel Vadot	 * to NCO since we don't know the true clock tree.
429*1537cf73SEmmanuel Vadot	 */
430*1537cf73SEmmanuel Vadot	nco_clkref: clock-ref-nco {
431*1537cf73SEmmanuel Vadot		compatible = "fixed-clock";
432*1537cf73SEmmanuel Vadot		#clock-cells = <0>;
433*1537cf73SEmmanuel Vadot		clock-output-names = "nco_ref";
434*1537cf73SEmmanuel Vadot	};
435*1537cf73SEmmanuel Vadot
436*1537cf73SEmmanuel Vadot	reserved-memory {
437*1537cf73SEmmanuel Vadot		#address-cells = <2>;
438*1537cf73SEmmanuel Vadot		#size-cells = <2>;
439*1537cf73SEmmanuel Vadot		ranges;
440*1537cf73SEmmanuel Vadot
441*1537cf73SEmmanuel Vadot		gpu_globals: globals {
442*1537cf73SEmmanuel Vadot			status = "disabled";
443*1537cf73SEmmanuel Vadot		};
444*1537cf73SEmmanuel Vadot
445*1537cf73SEmmanuel Vadot		gpu_hw_cal_a: hw-cal-a {
446*1537cf73SEmmanuel Vadot			status = "disabled";
447*1537cf73SEmmanuel Vadot		};
448*1537cf73SEmmanuel Vadot
449*1537cf73SEmmanuel Vadot		gpu_hw_cal_b: hw-cal-b {
450*1537cf73SEmmanuel Vadot			status = "disabled";
451*1537cf73SEmmanuel Vadot		};
452*1537cf73SEmmanuel Vadot
453*1537cf73SEmmanuel Vadot		uat_handoff: uat-handoff {
454*1537cf73SEmmanuel Vadot			status = "disabled";
455*1537cf73SEmmanuel Vadot		};
456*1537cf73SEmmanuel Vadot
457*1537cf73SEmmanuel Vadot		uat_pagetables: uat-pagetables {
458*1537cf73SEmmanuel Vadot			status = "disabled";
459*1537cf73SEmmanuel Vadot		};
460*1537cf73SEmmanuel Vadot
461*1537cf73SEmmanuel Vadot		uat_ttbs: uat-ttbs {
462*1537cf73SEmmanuel Vadot			status = "disabled";
463*1537cf73SEmmanuel Vadot		};
464*1537cf73SEmmanuel Vadot	};
465*1537cf73SEmmanuel Vadot};
466