Loading...
Note: File does not exist in v5.9.
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Copyright (C) 2001 Ben. Herrenschmidt (benh@kernel.crashing.org)
4 */
5
6static struct cpu_spec cpu_specs[] __initdata = {
7 { /* STB 04xxx */
8 .pvr_mask = 0xffff0000,
9 .pvr_value = 0x41810000,
10 .cpu_name = "STB04xxx",
11 .cpu_features = CPU_FTRS_40X,
12 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
13 PPC_FEATURE_HAS_4xxMAC,
14 .mmu_features = MMU_FTR_TYPE_40x,
15 .icache_bsize = 32,
16 .dcache_bsize = 32,
17 .machine_check = machine_check_4xx,
18 .platform = "ppc405",
19 },
20 { /* NP405L */
21 .pvr_mask = 0xffff0000,
22 .pvr_value = 0x41610000,
23 .cpu_name = "NP405L",
24 .cpu_features = CPU_FTRS_40X,
25 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
26 PPC_FEATURE_HAS_4xxMAC,
27 .mmu_features = MMU_FTR_TYPE_40x,
28 .icache_bsize = 32,
29 .dcache_bsize = 32,
30 .machine_check = machine_check_4xx,
31 .platform = "ppc405",
32 },
33 { /* NP4GS3 */
34 .pvr_mask = 0xffff0000,
35 .pvr_value = 0x40B10000,
36 .cpu_name = "NP4GS3",
37 .cpu_features = CPU_FTRS_40X,
38 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
39 PPC_FEATURE_HAS_4xxMAC,
40 .mmu_features = MMU_FTR_TYPE_40x,
41 .icache_bsize = 32,
42 .dcache_bsize = 32,
43 .machine_check = machine_check_4xx,
44 .platform = "ppc405",
45 },
46 { /* NP405H */
47 .pvr_mask = 0xffff0000,
48 .pvr_value = 0x41410000,
49 .cpu_name = "NP405H",
50 .cpu_features = CPU_FTRS_40X,
51 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
52 PPC_FEATURE_HAS_4xxMAC,
53 .mmu_features = MMU_FTR_TYPE_40x,
54 .icache_bsize = 32,
55 .dcache_bsize = 32,
56 .machine_check = machine_check_4xx,
57 .platform = "ppc405",
58 },
59 { /* 405GPr */
60 .pvr_mask = 0xffff0000,
61 .pvr_value = 0x50910000,
62 .cpu_name = "405GPr",
63 .cpu_features = CPU_FTRS_40X,
64 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
65 PPC_FEATURE_HAS_4xxMAC,
66 .mmu_features = MMU_FTR_TYPE_40x,
67 .icache_bsize = 32,
68 .dcache_bsize = 32,
69 .machine_check = machine_check_4xx,
70 .platform = "ppc405",
71 },
72 { /* STBx25xx */
73 .pvr_mask = 0xffff0000,
74 .pvr_value = 0x51510000,
75 .cpu_name = "STBx25xx",
76 .cpu_features = CPU_FTRS_40X,
77 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
78 PPC_FEATURE_HAS_4xxMAC,
79 .mmu_features = MMU_FTR_TYPE_40x,
80 .icache_bsize = 32,
81 .dcache_bsize = 32,
82 .machine_check = machine_check_4xx,
83 .platform = "ppc405",
84 },
85 { /* 405LP */
86 .pvr_mask = 0xffff0000,
87 .pvr_value = 0x41F10000,
88 .cpu_name = "405LP",
89 .cpu_features = CPU_FTRS_40X,
90 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU,
91 .mmu_features = MMU_FTR_TYPE_40x,
92 .icache_bsize = 32,
93 .dcache_bsize = 32,
94 .machine_check = machine_check_4xx,
95 .platform = "ppc405",
96 },
97 { /* 405EP */
98 .pvr_mask = 0xffff0000,
99 .pvr_value = 0x51210000,
100 .cpu_name = "405EP",
101 .cpu_features = CPU_FTRS_40X,
102 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
103 PPC_FEATURE_HAS_4xxMAC,
104 .mmu_features = MMU_FTR_TYPE_40x,
105 .icache_bsize = 32,
106 .dcache_bsize = 32,
107 .machine_check = machine_check_4xx,
108 .platform = "ppc405",
109 },
110 { /* 405EX Rev. A/B with Security */
111 .pvr_mask = 0xffff000f,
112 .pvr_value = 0x12910007,
113 .cpu_name = "405EX Rev. A/B",
114 .cpu_features = CPU_FTRS_40X,
115 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
116 PPC_FEATURE_HAS_4xxMAC,
117 .mmu_features = MMU_FTR_TYPE_40x,
118 .icache_bsize = 32,
119 .dcache_bsize = 32,
120 .machine_check = machine_check_4xx,
121 .platform = "ppc405",
122 },
123 { /* 405EX Rev. C without Security */
124 .pvr_mask = 0xffff000f,
125 .pvr_value = 0x1291000d,
126 .cpu_name = "405EX Rev. C",
127 .cpu_features = CPU_FTRS_40X,
128 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
129 PPC_FEATURE_HAS_4xxMAC,
130 .mmu_features = MMU_FTR_TYPE_40x,
131 .icache_bsize = 32,
132 .dcache_bsize = 32,
133 .machine_check = machine_check_4xx,
134 .platform = "ppc405",
135 },
136 { /* 405EX Rev. C with Security */
137 .pvr_mask = 0xffff000f,
138 .pvr_value = 0x1291000f,
139 .cpu_name = "405EX Rev. C",
140 .cpu_features = CPU_FTRS_40X,
141 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
142 PPC_FEATURE_HAS_4xxMAC,
143 .mmu_features = MMU_FTR_TYPE_40x,
144 .icache_bsize = 32,
145 .dcache_bsize = 32,
146 .machine_check = machine_check_4xx,
147 .platform = "ppc405",
148 },
149 { /* 405EX Rev. D without Security */
150 .pvr_mask = 0xffff000f,
151 .pvr_value = 0x12910003,
152 .cpu_name = "405EX Rev. D",
153 .cpu_features = CPU_FTRS_40X,
154 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
155 PPC_FEATURE_HAS_4xxMAC,
156 .mmu_features = MMU_FTR_TYPE_40x,
157 .icache_bsize = 32,
158 .dcache_bsize = 32,
159 .machine_check = machine_check_4xx,
160 .platform = "ppc405",
161 },
162 { /* 405EX Rev. D with Security */
163 .pvr_mask = 0xffff000f,
164 .pvr_value = 0x12910005,
165 .cpu_name = "405EX Rev. D",
166 .cpu_features = CPU_FTRS_40X,
167 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
168 PPC_FEATURE_HAS_4xxMAC,
169 .mmu_features = MMU_FTR_TYPE_40x,
170 .icache_bsize = 32,
171 .dcache_bsize = 32,
172 .machine_check = machine_check_4xx,
173 .platform = "ppc405",
174 },
175 { /* 405EXr Rev. A/B without Security */
176 .pvr_mask = 0xffff000f,
177 .pvr_value = 0x12910001,
178 .cpu_name = "405EXr Rev. A/B",
179 .cpu_features = CPU_FTRS_40X,
180 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
181 PPC_FEATURE_HAS_4xxMAC,
182 .mmu_features = MMU_FTR_TYPE_40x,
183 .icache_bsize = 32,
184 .dcache_bsize = 32,
185 .machine_check = machine_check_4xx,
186 .platform = "ppc405",
187 },
188 { /* 405EXr Rev. C without Security */
189 .pvr_mask = 0xffff000f,
190 .pvr_value = 0x12910009,
191 .cpu_name = "405EXr Rev. C",
192 .cpu_features = CPU_FTRS_40X,
193 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
194 PPC_FEATURE_HAS_4xxMAC,
195 .mmu_features = MMU_FTR_TYPE_40x,
196 .icache_bsize = 32,
197 .dcache_bsize = 32,
198 .machine_check = machine_check_4xx,
199 .platform = "ppc405",
200 },
201 { /* 405EXr Rev. C with Security */
202 .pvr_mask = 0xffff000f,
203 .pvr_value = 0x1291000b,
204 .cpu_name = "405EXr Rev. C",
205 .cpu_features = CPU_FTRS_40X,
206 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
207 PPC_FEATURE_HAS_4xxMAC,
208 .mmu_features = MMU_FTR_TYPE_40x,
209 .icache_bsize = 32,
210 .dcache_bsize = 32,
211 .machine_check = machine_check_4xx,
212 .platform = "ppc405",
213 },
214 { /* 405EXr Rev. D without Security */
215 .pvr_mask = 0xffff000f,
216 .pvr_value = 0x12910000,
217 .cpu_name = "405EXr Rev. D",
218 .cpu_features = CPU_FTRS_40X,
219 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
220 PPC_FEATURE_HAS_4xxMAC,
221 .mmu_features = MMU_FTR_TYPE_40x,
222 .icache_bsize = 32,
223 .dcache_bsize = 32,
224 .machine_check = machine_check_4xx,
225 .platform = "ppc405",
226 },
227 { /* 405EXr Rev. D with Security */
228 .pvr_mask = 0xffff000f,
229 .pvr_value = 0x12910002,
230 .cpu_name = "405EXr Rev. D",
231 .cpu_features = CPU_FTRS_40X,
232 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
233 PPC_FEATURE_HAS_4xxMAC,
234 .mmu_features = MMU_FTR_TYPE_40x,
235 .icache_bsize = 32,
236 .dcache_bsize = 32,
237 .machine_check = machine_check_4xx,
238 .platform = "ppc405",
239 },
240 {
241 /* 405EZ */
242 .pvr_mask = 0xffff0000,
243 .pvr_value = 0x41510000,
244 .cpu_name = "405EZ",
245 .cpu_features = CPU_FTRS_40X,
246 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
247 PPC_FEATURE_HAS_4xxMAC,
248 .mmu_features = MMU_FTR_TYPE_40x,
249 .icache_bsize = 32,
250 .dcache_bsize = 32,
251 .machine_check = machine_check_4xx,
252 .platform = "ppc405",
253 },
254 { /* APM8018X */
255 .pvr_mask = 0xffff0000,
256 .pvr_value = 0x7ff11432,
257 .cpu_name = "APM8018X",
258 .cpu_features = CPU_FTRS_40X,
259 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
260 PPC_FEATURE_HAS_4xxMAC,
261 .mmu_features = MMU_FTR_TYPE_40x,
262 .icache_bsize = 32,
263 .dcache_bsize = 32,
264 .machine_check = machine_check_4xx,
265 .platform = "ppc405",
266 },
267 { /* default match */
268 .pvr_mask = 0x00000000,
269 .pvr_value = 0x00000000,
270 .cpu_name = "(generic 40x PPC)",
271 .cpu_features = CPU_FTRS_40X,
272 .cpu_user_features = PPC_FEATURE_32 | PPC_FEATURE_HAS_MMU |
273 PPC_FEATURE_HAS_4xxMAC,
274 .mmu_features = MMU_FTR_TYPE_40x,
275 .icache_bsize = 32,
276 .dcache_bsize = 32,
277 .machine_check = machine_check_4xx,
278 .platform = "ppc405",
279 }
280};