xref: /freebsd-src/sys/contrib/device-tree/src/arm64/amd/amd-seattle-cpus.dtsi (revision c9ccf3a32da427475985b85d7df023ccfb138c27)
1*c9ccf3a3SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*c9ccf3a3SEmmanuel Vadot
3*c9ccf3a3SEmmanuel Vadot/ {
4*c9ccf3a3SEmmanuel Vadot	cpus {
5*c9ccf3a3SEmmanuel Vadot		#address-cells = <0x1>;
6*c9ccf3a3SEmmanuel Vadot		#size-cells = <0x0>;
7*c9ccf3a3SEmmanuel Vadot
8*c9ccf3a3SEmmanuel Vadot		cpu-map {
9*c9ccf3a3SEmmanuel Vadot			cluster0 {
10*c9ccf3a3SEmmanuel Vadot				core0 {
11*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU0>;
12*c9ccf3a3SEmmanuel Vadot				};
13*c9ccf3a3SEmmanuel Vadot				core1 {
14*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU1>;
15*c9ccf3a3SEmmanuel Vadot				};
16*c9ccf3a3SEmmanuel Vadot			};
17*c9ccf3a3SEmmanuel Vadot			cluster1 {
18*c9ccf3a3SEmmanuel Vadot				core0 {
19*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU2>;
20*c9ccf3a3SEmmanuel Vadot				};
21*c9ccf3a3SEmmanuel Vadot				core1 {
22*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU3>;
23*c9ccf3a3SEmmanuel Vadot				};
24*c9ccf3a3SEmmanuel Vadot			};
25*c9ccf3a3SEmmanuel Vadot			cluster2 {
26*c9ccf3a3SEmmanuel Vadot				core0 {
27*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU4>;
28*c9ccf3a3SEmmanuel Vadot				};
29*c9ccf3a3SEmmanuel Vadot				core1 {
30*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU5>;
31*c9ccf3a3SEmmanuel Vadot				};
32*c9ccf3a3SEmmanuel Vadot			};
33*c9ccf3a3SEmmanuel Vadot			cluster3 {
34*c9ccf3a3SEmmanuel Vadot				core0 {
35*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU6>;
36*c9ccf3a3SEmmanuel Vadot				};
37*c9ccf3a3SEmmanuel Vadot				core1 {
38*c9ccf3a3SEmmanuel Vadot					cpu = <&CPU7>;
39*c9ccf3a3SEmmanuel Vadot				};
40*c9ccf3a3SEmmanuel Vadot			};
41*c9ccf3a3SEmmanuel Vadot		};
42*c9ccf3a3SEmmanuel Vadot
43*c9ccf3a3SEmmanuel Vadot		CPU0: cpu@0 {
44*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
45*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
46*c9ccf3a3SEmmanuel Vadot			reg = <0x0>;
47*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
48*c9ccf3a3SEmmanuel Vadot
49*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
50*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
51*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
52*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
53*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
54*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
55*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_0>;
56*c9ccf3a3SEmmanuel Vadot
57*c9ccf3a3SEmmanuel Vadot		};
58*c9ccf3a3SEmmanuel Vadot
59*c9ccf3a3SEmmanuel Vadot		CPU1: cpu@1 {
60*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
61*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
62*c9ccf3a3SEmmanuel Vadot			reg = <0x1>;
63*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
64*c9ccf3a3SEmmanuel Vadot
65*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
66*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
67*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
68*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
69*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
70*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
71*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_0>;
72*c9ccf3a3SEmmanuel Vadot		};
73*c9ccf3a3SEmmanuel Vadot
74*c9ccf3a3SEmmanuel Vadot		CPU2: cpu@100 {
75*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
76*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
77*c9ccf3a3SEmmanuel Vadot			reg = <0x100>;
78*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
79*c9ccf3a3SEmmanuel Vadot
80*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
81*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
82*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
83*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
84*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
85*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
86*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_1>;
87*c9ccf3a3SEmmanuel Vadot		};
88*c9ccf3a3SEmmanuel Vadot
89*c9ccf3a3SEmmanuel Vadot		CPU3: cpu@101 {
90*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
91*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
92*c9ccf3a3SEmmanuel Vadot			reg = <0x101>;
93*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
94*c9ccf3a3SEmmanuel Vadot
95*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
96*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
97*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
98*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
99*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
100*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
101*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_1>;
102*c9ccf3a3SEmmanuel Vadot		};
103*c9ccf3a3SEmmanuel Vadot
104*c9ccf3a3SEmmanuel Vadot		CPU4: cpu@200 {
105*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
106*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
107*c9ccf3a3SEmmanuel Vadot			reg = <0x200>;
108*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
109*c9ccf3a3SEmmanuel Vadot
110*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
111*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
112*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
113*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
114*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
115*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
116*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_2>;
117*c9ccf3a3SEmmanuel Vadot		};
118*c9ccf3a3SEmmanuel Vadot
119*c9ccf3a3SEmmanuel Vadot		CPU5: cpu@201 {
120*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
121*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
122*c9ccf3a3SEmmanuel Vadot			reg = <0x201>;
123*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
124*c9ccf3a3SEmmanuel Vadot
125*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
126*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
127*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
128*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
129*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
130*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
131*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_2>;
132*c9ccf3a3SEmmanuel Vadot		};
133*c9ccf3a3SEmmanuel Vadot
134*c9ccf3a3SEmmanuel Vadot		CPU6: cpu@300 {
135*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
136*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
137*c9ccf3a3SEmmanuel Vadot			reg = <0x300>;
138*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
139*c9ccf3a3SEmmanuel Vadot
140*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
141*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
142*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
143*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
144*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
145*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
146*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_3>;
147*c9ccf3a3SEmmanuel Vadot		};
148*c9ccf3a3SEmmanuel Vadot
149*c9ccf3a3SEmmanuel Vadot		CPU7: cpu@301 {
150*c9ccf3a3SEmmanuel Vadot			device_type = "cpu";
151*c9ccf3a3SEmmanuel Vadot			compatible = "arm,cortex-a57";
152*c9ccf3a3SEmmanuel Vadot			reg = <0x301>;
153*c9ccf3a3SEmmanuel Vadot			enable-method = "psci";
154*c9ccf3a3SEmmanuel Vadot
155*c9ccf3a3SEmmanuel Vadot			i-cache-size = <0xC000>;
156*c9ccf3a3SEmmanuel Vadot			i-cache-line-size = <64>;
157*c9ccf3a3SEmmanuel Vadot			i-cache-sets = <256>;
158*c9ccf3a3SEmmanuel Vadot			d-cache-size = <0x8000>;
159*c9ccf3a3SEmmanuel Vadot			d-cache-line-size = <64>;
160*c9ccf3a3SEmmanuel Vadot			d-cache-sets = <256>;
161*c9ccf3a3SEmmanuel Vadot			l2-cache = <&L2_3>;
162*c9ccf3a3SEmmanuel Vadot		};
163*c9ccf3a3SEmmanuel Vadot	};
164*c9ccf3a3SEmmanuel Vadot
165*c9ccf3a3SEmmanuel Vadot	L2_0: l2-cache0 {
166*c9ccf3a3SEmmanuel Vadot		cache-size = <0x100000>;
167*c9ccf3a3SEmmanuel Vadot		cache-line-size = <64>;
168*c9ccf3a3SEmmanuel Vadot		cache-sets = <1024>;
169*c9ccf3a3SEmmanuel Vadot		cache-unified;
170*c9ccf3a3SEmmanuel Vadot		next-level-cache = <&L3>;
171*c9ccf3a3SEmmanuel Vadot	};
172*c9ccf3a3SEmmanuel Vadot
173*c9ccf3a3SEmmanuel Vadot	L2_1: l2-cache1 {
174*c9ccf3a3SEmmanuel Vadot		cache-size = <0x100000>;
175*c9ccf3a3SEmmanuel Vadot		cache-line-size = <64>;
176*c9ccf3a3SEmmanuel Vadot		cache-sets = <1024>;
177*c9ccf3a3SEmmanuel Vadot		cache-unified;
178*c9ccf3a3SEmmanuel Vadot		next-level-cache = <&L3>;
179*c9ccf3a3SEmmanuel Vadot	};
180*c9ccf3a3SEmmanuel Vadot
181*c9ccf3a3SEmmanuel Vadot	L2_2: l2-cache2 {
182*c9ccf3a3SEmmanuel Vadot		cache-size = <0x100000>;
183*c9ccf3a3SEmmanuel Vadot		cache-line-size = <64>;
184*c9ccf3a3SEmmanuel Vadot		cache-sets = <1024>;
185*c9ccf3a3SEmmanuel Vadot		cache-unified;
186*c9ccf3a3SEmmanuel Vadot		next-level-cache = <&L3>;
187*c9ccf3a3SEmmanuel Vadot	};
188*c9ccf3a3SEmmanuel Vadot
189*c9ccf3a3SEmmanuel Vadot	L2_3: l2-cache3 {
190*c9ccf3a3SEmmanuel Vadot		cache-size = <0x100000>;
191*c9ccf3a3SEmmanuel Vadot		cache-line-size = <64>;
192*c9ccf3a3SEmmanuel Vadot		cache-sets = <1024>;
193*c9ccf3a3SEmmanuel Vadot		cache-unified;
194*c9ccf3a3SEmmanuel Vadot		next-level-cache = <&L3>;
195*c9ccf3a3SEmmanuel Vadot	};
196*c9ccf3a3SEmmanuel Vadot
197*c9ccf3a3SEmmanuel Vadot	L3: l3-cache {
198*c9ccf3a3SEmmanuel Vadot		cache-level = <3>;
199*c9ccf3a3SEmmanuel Vadot		cache-size = <0x800000>;
200*c9ccf3a3SEmmanuel Vadot		cache-line-size = <64>;
201*c9ccf3a3SEmmanuel Vadot		cache-sets = <8192>;
202*c9ccf3a3SEmmanuel Vadot		cache-unified;
203*c9ccf3a3SEmmanuel Vadot	};
204*c9ccf3a3SEmmanuel Vadot
205*c9ccf3a3SEmmanuel Vadot	pmu {
206*c9ccf3a3SEmmanuel Vadot		compatible = "arm,cortex-a57-pmu";
207*c9ccf3a3SEmmanuel Vadot		interrupts = <0x0 0x7 0x4>,
208*c9ccf3a3SEmmanuel Vadot			     <0x0 0x8 0x4>,
209*c9ccf3a3SEmmanuel Vadot			     <0x0 0x9 0x4>,
210*c9ccf3a3SEmmanuel Vadot			     <0x0 0xa 0x4>,
211*c9ccf3a3SEmmanuel Vadot			     <0x0 0xb 0x4>,
212*c9ccf3a3SEmmanuel Vadot			     <0x0 0xc 0x4>,
213*c9ccf3a3SEmmanuel Vadot			     <0x0 0xd 0x4>,
214*c9ccf3a3SEmmanuel Vadot			     <0x0 0xe 0x4>;
215*c9ccf3a3SEmmanuel Vadot		interrupt-affinity = <&CPU0>,
216*c9ccf3a3SEmmanuel Vadot				     <&CPU1>,
217*c9ccf3a3SEmmanuel Vadot				     <&CPU2>,
218*c9ccf3a3SEmmanuel Vadot				     <&CPU3>,
219*c9ccf3a3SEmmanuel Vadot				     <&CPU4>,
220*c9ccf3a3SEmmanuel Vadot				     <&CPU5>,
221*c9ccf3a3SEmmanuel Vadot				     <&CPU6>,
222*c9ccf3a3SEmmanuel Vadot				     <&CPU7>;
223*c9ccf3a3SEmmanuel Vadot	};
224*c9ccf3a3SEmmanuel Vadot};
225