Merge tag 'trace-printf-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/trace...
[drm/drm-misc.git] / arch / powerpc / kernel / cpu_specs_44x.h
blob69c4cdc0cdeed36298becdabd83e80a1ab1b8af3
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3 * Copyright (C) 2001 Ben. Herrenschmidt (benh@kernel.crashing.org)
4 */
6 #define COMMON_USER_BOOKE (PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU | \
7 PPC_FEATURE_BOOKE)
9 static struct cpu_spec cpu_specs[] __initdata = {
11 .pvr_mask = 0xf0000fff,
12 .pvr_value = 0x40000850,
13 .cpu_name = "440GR Rev. A",
14 .cpu_features = CPU_FTRS_44X,
15 .cpu_user_features = COMMON_USER_BOOKE,
16 .mmu_features = MMU_FTR_TYPE_44x,
17 .icache_bsize = 32,
18 .dcache_bsize = 32,
19 .machine_check = machine_check_4xx,
20 .platform = "ppc440",
22 { /* Use logical PVR for 440EP (logical pvr = pvr | 0x8) */
23 .pvr_mask = 0xf0000fff,
24 .pvr_value = 0x40000858,
25 .cpu_name = "440EP Rev. A",
26 .cpu_features = CPU_FTRS_44X,
27 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
28 .mmu_features = MMU_FTR_TYPE_44x,
29 .icache_bsize = 32,
30 .dcache_bsize = 32,
31 .cpu_setup = __setup_cpu_440ep,
32 .machine_check = machine_check_4xx,
33 .platform = "ppc440",
36 .pvr_mask = 0xf0000fff,
37 .pvr_value = 0x400008d3,
38 .cpu_name = "440GR Rev. B",
39 .cpu_features = CPU_FTRS_44X,
40 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
41 .mmu_features = MMU_FTR_TYPE_44x,
42 .icache_bsize = 32,
43 .dcache_bsize = 32,
44 .machine_check = machine_check_4xx,
45 .platform = "ppc440",
47 { /* Matches both physical and logical PVR for 440EP (logical pvr = pvr | 0x8) */
48 .pvr_mask = 0xf0000ff7,
49 .pvr_value = 0x400008d4,
50 .cpu_name = "440EP Rev. C",
51 .cpu_features = CPU_FTRS_44X,
52 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
53 .mmu_features = MMU_FTR_TYPE_44x,
54 .icache_bsize = 32,
55 .dcache_bsize = 32,
56 .cpu_setup = __setup_cpu_440ep,
57 .machine_check = machine_check_4xx,
58 .platform = "ppc440",
60 { /* Use logical PVR for 440EP (logical pvr = pvr | 0x8) */
61 .pvr_mask = 0xf0000fff,
62 .pvr_value = 0x400008db,
63 .cpu_name = "440EP Rev. B",
64 .cpu_features = CPU_FTRS_44X,
65 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
66 .mmu_features = MMU_FTR_TYPE_44x,
67 .icache_bsize = 32,
68 .dcache_bsize = 32,
69 .cpu_setup = __setup_cpu_440ep,
70 .machine_check = machine_check_4xx,
71 .platform = "ppc440",
73 { /* 440GRX */
74 .pvr_mask = 0xf0000ffb,
75 .pvr_value = 0x200008D0,
76 .cpu_name = "440GRX",
77 .cpu_features = CPU_FTRS_44X,
78 .cpu_user_features = COMMON_USER_BOOKE,
79 .mmu_features = MMU_FTR_TYPE_44x,
80 .icache_bsize = 32,
81 .dcache_bsize = 32,
82 .cpu_setup = __setup_cpu_440grx,
83 .machine_check = machine_check_440A,
84 .platform = "ppc440",
86 { /* Use logical PVR for 440EPx (logical pvr = pvr | 0x8) */
87 .pvr_mask = 0xf0000ffb,
88 .pvr_value = 0x200008D8,
89 .cpu_name = "440EPX",
90 .cpu_features = CPU_FTRS_44X,
91 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
92 .mmu_features = MMU_FTR_TYPE_44x,
93 .icache_bsize = 32,
94 .dcache_bsize = 32,
95 .cpu_setup = __setup_cpu_440epx,
96 .machine_check = machine_check_440A,
97 .platform = "ppc440",
99 { /* 440GP Rev. B */
100 .pvr_mask = 0xf0000fff,
101 .pvr_value = 0x40000440,
102 .cpu_name = "440GP Rev. B",
103 .cpu_features = CPU_FTRS_44X,
104 .cpu_user_features = COMMON_USER_BOOKE,
105 .mmu_features = MMU_FTR_TYPE_44x,
106 .icache_bsize = 32,
107 .dcache_bsize = 32,
108 .machine_check = machine_check_4xx,
109 .platform = "ppc440gp",
111 { /* 440GP Rev. C */
112 .pvr_mask = 0xf0000fff,
113 .pvr_value = 0x40000481,
114 .cpu_name = "440GP Rev. C",
115 .cpu_features = CPU_FTRS_44X,
116 .cpu_user_features = COMMON_USER_BOOKE,
117 .mmu_features = MMU_FTR_TYPE_44x,
118 .icache_bsize = 32,
119 .dcache_bsize = 32,
120 .machine_check = machine_check_4xx,
121 .platform = "ppc440gp",
123 { /* 440GX Rev. A */
124 .pvr_mask = 0xf0000fff,
125 .pvr_value = 0x50000850,
126 .cpu_name = "440GX Rev. A",
127 .cpu_features = CPU_FTRS_44X,
128 .cpu_user_features = COMMON_USER_BOOKE,
129 .mmu_features = MMU_FTR_TYPE_44x,
130 .icache_bsize = 32,
131 .dcache_bsize = 32,
132 .cpu_setup = __setup_cpu_440gx,
133 .machine_check = machine_check_440A,
134 .platform = "ppc440",
136 { /* 440GX Rev. B */
137 .pvr_mask = 0xf0000fff,
138 .pvr_value = 0x50000851,
139 .cpu_name = "440GX Rev. B",
140 .cpu_features = CPU_FTRS_44X,
141 .cpu_user_features = COMMON_USER_BOOKE,
142 .mmu_features = MMU_FTR_TYPE_44x,
143 .icache_bsize = 32,
144 .dcache_bsize = 32,
145 .cpu_setup = __setup_cpu_440gx,
146 .machine_check = machine_check_440A,
147 .platform = "ppc440",
149 { /* 440GX Rev. C */
150 .pvr_mask = 0xf0000fff,
151 .pvr_value = 0x50000892,
152 .cpu_name = "440GX Rev. C",
153 .cpu_features = CPU_FTRS_44X,
154 .cpu_user_features = COMMON_USER_BOOKE,
155 .mmu_features = MMU_FTR_TYPE_44x,
156 .icache_bsize = 32,
157 .dcache_bsize = 32,
158 .cpu_setup = __setup_cpu_440gx,
159 .machine_check = machine_check_440A,
160 .platform = "ppc440",
162 { /* 440GX Rev. F */
163 .pvr_mask = 0xf0000fff,
164 .pvr_value = 0x50000894,
165 .cpu_name = "440GX Rev. F",
166 .cpu_features = CPU_FTRS_44X,
167 .cpu_user_features = COMMON_USER_BOOKE,
168 .mmu_features = MMU_FTR_TYPE_44x,
169 .icache_bsize = 32,
170 .dcache_bsize = 32,
171 .cpu_setup = __setup_cpu_440gx,
172 .machine_check = machine_check_440A,
173 .platform = "ppc440",
175 { /* 440SP Rev. A */
176 .pvr_mask = 0xfff00fff,
177 .pvr_value = 0x53200891,
178 .cpu_name = "440SP Rev. A",
179 .cpu_features = CPU_FTRS_44X,
180 .cpu_user_features = COMMON_USER_BOOKE,
181 .mmu_features = MMU_FTR_TYPE_44x,
182 .icache_bsize = 32,
183 .dcache_bsize = 32,
184 .machine_check = machine_check_4xx,
185 .platform = "ppc440",
187 { /* 440SPe Rev. A */
188 .pvr_mask = 0xfff00fff,
189 .pvr_value = 0x53400890,
190 .cpu_name = "440SPe Rev. A",
191 .cpu_features = CPU_FTRS_44X,
192 .cpu_user_features = COMMON_USER_BOOKE,
193 .mmu_features = MMU_FTR_TYPE_44x,
194 .icache_bsize = 32,
195 .dcache_bsize = 32,
196 .cpu_setup = __setup_cpu_440spe,
197 .machine_check = machine_check_440A,
198 .platform = "ppc440",
200 { /* 440SPe Rev. B */
201 .pvr_mask = 0xfff00fff,
202 .pvr_value = 0x53400891,
203 .cpu_name = "440SPe Rev. B",
204 .cpu_features = CPU_FTRS_44X,
205 .cpu_user_features = COMMON_USER_BOOKE,
206 .mmu_features = MMU_FTR_TYPE_44x,
207 .icache_bsize = 32,
208 .dcache_bsize = 32,
209 .cpu_setup = __setup_cpu_440spe,
210 .machine_check = machine_check_440A,
211 .platform = "ppc440",
213 { /* 460EX */
214 .pvr_mask = 0xffff0006,
215 .pvr_value = 0x13020002,
216 .cpu_name = "460EX",
217 .cpu_features = CPU_FTRS_440x6,
218 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
219 .mmu_features = MMU_FTR_TYPE_44x,
220 .icache_bsize = 32,
221 .dcache_bsize = 32,
222 .cpu_setup = __setup_cpu_460ex,
223 .machine_check = machine_check_440A,
224 .platform = "ppc440",
226 { /* 460EX Rev B */
227 .pvr_mask = 0xffff0007,
228 .pvr_value = 0x13020004,
229 .cpu_name = "460EX Rev. B",
230 .cpu_features = CPU_FTRS_440x6,
231 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
232 .mmu_features = MMU_FTR_TYPE_44x,
233 .icache_bsize = 32,
234 .dcache_bsize = 32,
235 .cpu_setup = __setup_cpu_460ex,
236 .machine_check = machine_check_440A,
237 .platform = "ppc440",
239 { /* 460GT */
240 .pvr_mask = 0xffff0006,
241 .pvr_value = 0x13020000,
242 .cpu_name = "460GT",
243 .cpu_features = CPU_FTRS_440x6,
244 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
245 .mmu_features = MMU_FTR_TYPE_44x,
246 .icache_bsize = 32,
247 .dcache_bsize = 32,
248 .cpu_setup = __setup_cpu_460gt,
249 .machine_check = machine_check_440A,
250 .platform = "ppc440",
252 { /* 460GT Rev B */
253 .pvr_mask = 0xffff0007,
254 .pvr_value = 0x13020005,
255 .cpu_name = "460GT Rev. B",
256 .cpu_features = CPU_FTRS_440x6,
257 .cpu_user_features = COMMON_USER_BOOKE | PPC_FEATURE_HAS_FPU,
258 .mmu_features = MMU_FTR_TYPE_44x,
259 .icache_bsize = 32,
260 .dcache_bsize = 32,
261 .cpu_setup = __setup_cpu_460gt,
262 .machine_check = machine_check_440A,
263 .platform = "ppc440",
265 { /* 460SX */
266 .pvr_mask = 0xffffff00,
267 .pvr_value = 0x13541800,
268 .cpu_name = "460SX",
269 .cpu_features = CPU_FTRS_44X,
270 .cpu_user_features = COMMON_USER_BOOKE,
271 .mmu_features = MMU_FTR_TYPE_44x,
272 .icache_bsize = 32,
273 .dcache_bsize = 32,
274 .cpu_setup = __setup_cpu_460sx,
275 .machine_check = machine_check_440A,
276 .platform = "ppc440",
278 { /* 464 in APM821xx */
279 .pvr_mask = 0xfffffff0,
280 .pvr_value = 0x12C41C80,
281 .cpu_name = "APM821XX",
282 .cpu_features = CPU_FTRS_44X,
283 .cpu_user_features = COMMON_USER_BOOKE |
284 PPC_FEATURE_HAS_FPU,
285 .mmu_features = MMU_FTR_TYPE_44x,
286 .icache_bsize = 32,
287 .dcache_bsize = 32,
288 .cpu_setup = __setup_cpu_apm821xx,
289 .machine_check = machine_check_440A,
290 .platform = "ppc440",
292 { /* default match */
293 .pvr_mask = 0x00000000,
294 .pvr_value = 0x00000000,
295 .cpu_name = "(generic 44x PPC)",
296 .cpu_features = CPU_FTRS_44X,
297 .cpu_user_features = COMMON_USER_BOOKE,
298 .mmu_features = MMU_FTR_TYPE_44x,
299 .icache_bsize = 32,
300 .dcache_bsize = 32,
301 .machine_check = machine_check_4xx,
302 .platform = "ppc440",