]> git.proxmox.com Git - qemu.git/blob - target-ppc/STATUS
Great rework and cleanups to ease PowerPC implementations definitions.
[qemu.git] / target-ppc / STATUS
1 PowerPC emulation status.
2 The goal of this file is to provide a reference status to avoid regressions.
3
4 ===============================================================================
5 PowerPC core emulation status
6
7 INSN: instruction set.
8 OK => all instructions are emulated
9 KO => some insns are missing or some should be removed
10 ? => unchecked
11 SPR: special purpose registers set
12 OK => all SPR registered (but some may be fake)
13 KO => some SPR are missing or should be removed
14 ? => uncheked
15 MSR: MSR bits definitions
16 OK => all MSR bits properly defined
17 KO => MSR definition is incorrect
18 ? => unchecked
19 IRQ: input signals definitions (mostly interrupts)
20 OK => input signals are properly defined
21 KO => input signals are not implemented (system emulation does not work)
22 ? => input signals definitions may be incorrect
23 MMU: MMU model implementation
24 OK => MMU model is implemented and Linux is able to boot
25 KO => MMU model not implemented or bugged
26 ? => MMU model not tested
27 EXCP: exceptions model implementation
28 OK => exception model is implemented and Linux is able to boot
29 KO => exception model not implemented or known to be buggy
30 ? => exception model may be incorrect or is untested
31
32 Embedded PowerPC cores
33 ***
34 PowerPC 401:
35 INSN OK
36 SPR OK 401A1
37 MSR OK
38 IRQ KO partially implemented
39 MMU OK
40 EXCP ?
41
42 PowerPC 401x2:
43 INSN OK
44 SPR OK 401B2 401C2 401D2 401E2 401F2
45 MSR OK
46 IRQ KO partially implemented
47 MMU OK
48 EXCP ?
49
50 PowerPC IOP480:
51 INSN OK
52 SPR OK IOP480
53 MSR OK
54 IRQ KO partially implemented
55 MMU OK
56 EXCP ?
57
58 To be checked: 401G2 401B3 Cobra
59
60 ***
61 PowerPC 403:
62 INSN OK
63 SPR OK 403GA 403GB
64 MMU OK
65 MSR OK
66 IRQ KO not implemented
67 EXCP ?
68
69 PowerPC 403GCX:
70 INSN OK
71 SPR OK 403GCX
72 MMU OK
73 MSR OK
74 IRQ KO not implemented
75 EXCP ?
76
77 To be checked: 403GC
78
79 ***
80 PowerPC 405:
81 Checked: 405CRa 405CRb 405CRc 405EP 405GPa 405GPb 405GPc 405GPd 405GPe 405GPR
82 Npe405H Npe405H2 Npe405L
83 INSN OK
84 SPR OK
85 MSR OK
86 IRQ OK
87 MMU OK
88 EXCP OK
89 => Linux 2.4 boots (at least 1 proprietary firmware).
90
91 To be checked: 405D2 405D4 405EZ 405LP Npe4GS3 STB03 STB04 STB25
92 x2vp4 x2vp7 x2vp20 x2vp50
93
94 XXX: find what is IBM e407b4
95
96 ***
97 PowerPC 440:
98 Checked: 440EPa 440EPb 440GXa 440GXb 440GXc 440GXf 440SP 440SP2
99 INSN OK
100 SPR OK
101 MSR OK
102 IRQ KO not implemented
103 MMU ?
104 EXCP ?
105
106 PowerPC 440GP:
107 Checked: 440GPb 440GPc
108 INSN OK
109 SPR OK
110 MSR OK
111 IRQ KO not implemented
112 MMU ?
113 EXCP ?
114
115 PowerPC 440x4:
116 Checked: 440A4 440B4 440G4 440H4
117 INSN OK
118 SPR OK
119 MSR OK
120 IRQ KO not implemented
121 MMU ?
122 EXCP ?
123
124 PowerPC 440x5:
125 Checked: 440A5 440F5 440G5 440H6 440GRa
126 INSN OK
127 SPR OK
128 MSR OK
129 IRQ KO not implemented
130 MMU ?
131 EXCP ?
132
133 To be checked: 440EPx 440GRx 440SPE
134
135 ***
136 PowerPC 460: (disabled: lack of detailed specifications)
137 INSN KO
138 SPR KO
139 MSR KO
140 IRQ KO
141 MMU KO
142 EXCP KO
143
144 PowerPC 460F: (disabled: lack of detailed specifications)
145 INSN KO
146 SPR KO
147 MSR KO
148 IRQ KO
149 MMU KO
150 EXCP KO
151
152 ***
153 PowerPC e200: (not implemented)
154 INSN KO
155 SPR KO
156 MSR KO
157 IRQ KO
158 MMU KO
159 EXCP KO
160
161 ***
162 PowerPC e300: (not implemented)
163 INSN KO
164 SPR KO
165 MSR KO
166 IRQ KO
167 MMU KO
168 EXCP KO
169
170 ***
171 PowerPC e500: (not implemented)
172 INSN KO
173 SPR KO
174 MSR KO
175 IRQ KO
176 MMU KO
177 EXCP KO
178
179 ***
180 PowerPC e600: (not implemented)
181 INSN KO
182 SPR KO
183 MSR KO
184 IRQ KO
185 MMU KO
186 EXCP KO
187
188 ***
189 32 bits PowerPC
190 PowerPC 601: (601 601v2)
191 INSN OK
192 SPR OK is HID15 only on 601v2 ?
193 MSR OK
194 IRQ KO not implemented
195 MMU ?
196 EXCP ?
197 Remarks: some instructions should have a specific behavior (not implemented)
198
199 PowerPC 602: 602
200 INSN OK
201 SPR OK
202 MSR OK
203 IRQ OK
204 MMU ?
205 EXCP ? at least timer and external interrupt are OK
206 Remarks: Linux crashes when entering user-mode. But it seems it does not
207 know about this CPU. As this CPU is close to 603e, it should be OK.
208
209 PowerPC 603: (603)
210 INSN OK
211 SPR OK
212 MSR OK
213 IRQ OK
214 MMU OK
215 EXCP OK
216 Remarks: Linux 2.4 boots and properly recognizes the CPU
217
218 PowerPC 603e: (603e11)
219 INSN OK
220 SPR OK
221 MSR OK
222 IRQ OK
223 MMU OK
224 EXCP OK
225 Remarks: Linux 2.4 boots and properly recognizes the CPU
226
227 PowerPC G2:
228 INSN OK
229 SPR OK
230 MSR OK
231 IRQ OK
232 MMU OK
233 EXCP OK
234 Remarks: Linux 2.4 boots, recognizes the CPU as a 82xx.
235
236 PowerPC G2le:
237 INSN OK
238 SPR OK
239 MSR OK
240 IRQ OK
241 MMU OK
242 EXCP OK
243 Remarks: Linux 2.4 does not boots. Same symptoms as 602.
244
245 PowerPC 604:
246 INSN OK
247 SPR OK
248 MSR OK
249 IRQ OK
250 MMU OK
251 EXCP OK
252 Remarks: Linux 2.4 boots and properly recognizes the CPU.
253
254 PowerPC 7x0:
255 INSN OK
256 SPR OK
257 MSR OK
258 IRQ OK
259 MMU OK
260 EXCP OK
261 Remarks: Linux 2.4 boots and properly recognizes the CPU.
262
263 PowerPC 750fx:
264 INSN OK
265 SPR OK
266 MSR OK
267 IRQ OK
268 MMU OK
269 EXCP OK
270 Remarks: Linux 2.4 boots but does not properly recognizes the CPU.
271
272 PowerPC 7x5:
273 INSN ?
274 SPR ?
275 MSR ?
276 IRQ OK
277 MMU ?
278 EXCP OK
279 => Linux 2.4 does not boot.
280
281 PowerPC 7400:
282 INSN KO Altivec missing
283 SPR OK
284 MSR OK
285 IRQ OK
286 MMU OK
287 EXCP ? Altivec, ...
288 => Linux 2.4 boots and properly recognize the CPU.
289
290 PowerPC 7410:
291 INSN KO Altivec missing
292 SPR OK
293 MSR OK
294 IRQ OK
295 MMU OK
296 EXCP ? Altivec, ...
297 => Linux 2.4 boots and properly recognize the CPU.
298 Note that UM says tlbld & tlbli are implemented bus this may be a mistake
299 as TLB load are managed by the hardware and it does not implement the
300 needed registers.
301
302 PowerPC 7441:
303 INSN KO Altivec missing + TLB load insns missing
304 SPR OK
305 MSR OK
306 IRQ OK
307 MMU KO not implemented
308 EXCP ? Altivec, ...
309
310 PowerPC 7450/7451:
311 INSN KO Altivec missing + TLB load insns missing
312 SPR OK
313 MSR OK
314 IRQ OK
315 MMU KO not implemented
316 EXCP ? Altivec, ...
317
318 PowerPC 7445/7447:
319 INSN KO Altivec missing + TLB load insns missing
320 SPR OK
321 MSR OK
322 IRQ OK
323 MMU KO not implemented
324 EXCP ? Altivec, ...
325
326 PowerPC 7455/7457:
327 INSN KO Altivec missing + TLB load insns missing
328 SPR OK
329 MSR OK
330 IRQ OK
331 MMU KO not implemented
332 EXCP ? Altivec, ...
333
334 64 bits PowerPC
335 PowerPC 620: (disabled)
336 INSN KO
337 SPR KO
338 MSR ?
339 IRQ KO
340 MMU KO
341 EXCP KO
342
343 PowerPC 970: (disabled)
344 INSN KO Altivec missing and more
345 SPR KO
346 MSR ?
347 IRQ OK
348 MMU KO partially implemented
349 EXCP KO
350
351 PowerPC 970FX: (disabled)
352 INSN KO Altivec missing and more
353 SPR KO
354 MSR ?
355 IRQ OK
356 MMU KO partially implemented
357 EXCP KO
358
359 PowerPC 630: (disabled: lack of detailed specifications)
360 INSN KO
361 SPR KO
362 MSR KO
363 IRQ KO
364 MMU KO
365 EXCP KO
366
367 PowerPC 631: (disabled: lack of detailed specifications)
368 INSN KO
369 SPR KO
370 MSR KO
371 IRQ KO
372 MMU KO
373 EXCP KO
374
375 POWER4: (disabled: lack of detailed specifications)
376 INSN KO
377 SPR KO
378 MSR KO
379 IRQ KO
380 MMU KO
381 EXCP KO
382
383 POWER4+: (disabled: lack of detailed specifications)
384 INSN KO
385 SPR KO
386 MSR KO
387 IRQ KO
388 MMU KO
389 EXCP KO
390
391 POWER5: (disabled: lack of detailed specifications)
392 INSN KO
393 SPR KO
394 MSR KO
395 IRQ KO
396 MMU KO
397 EXCP KO
398
399 POWER5+: (disabled: lack of detailed specifications)
400 INSN KO
401 SPR KO
402 MSR KO
403 IRQ KO
404 MMU KO
405 EXCP KO
406
407 POWER6: (disabled: lack of detailed specifications)
408 INSN KO
409 SPR KO
410 MSR KO
411 IRQ KO
412 MMU KO
413 EXCP KO
414
415 RS64: (disabled: lack of detailed specifications)
416 INSN KO
417 SPR KO
418 MSR KO
419 IRQ KO
420 MMU KO
421 EXCP KO
422
423 RS64-II: (disabled: lack of detailed specifications)
424 INSN KO
425 SPR KO
426 MSR KO
427 IRQ KO
428 MMU KO
429 EXCP KO
430
431 RS64-III: (disabled: lack of detailed specifications)
432 INSN KO
433 SPR KO
434 MSR KO
435 IRQ KO
436 MMU KO
437 EXCP KO
438
439 RS64-IV: (disabled: lack of detailed specifications)
440 INSN KO
441 SPR KO
442 MSR KO
443 IRQ KO
444 MMU KO
445 EXCP KO
446
447 Original POWER
448 POWER: (disabled: lack of detailed specifications)
449 INSN KO
450 SPR KO
451 MSR KO
452 IRQ KO
453 MMU KO
454 EXCP KO
455
456 POWER2: (disabled: lack of detailed specifications)
457 INSN KO
458 SPR KO
459 MSR KO
460 IRQ KO
461 MMU KO
462 EXCP KO
463
464 ===============================================================================
465 PowerPC microcontrollers emulation status
466
467 Implemementation should be sufficient to boot Linux:
468 - PowerPC 405CR
469 - PowerPC 405EP
470
471 TODO:
472 - More PowerPC 40x microcontrollers emulation
473 - PowerQUICC microcontrollers emulation
474
475 ===============================================================================
476 PowerPC based platforms emulation status
477
478 * PREP platform (RS/6000 7043...) - TO BE CHECKED (broken)
479 - Gentoo Linux live CDROM 1.4
480 - Debian Linux 3.0
481 - Mandrake Linux 9
482
483 * heathrow PowerMac platform (beige PowerMac) - TO BE CHECKED (broken)
484 - Gentoo Linux live CDROM 1.4
485 - Debian Linux 3.0
486 - Mandrake Linux 9
487
488 * mac99 platform (white and blue PowerMac, ...)
489 - Gentoo Linux live CDROM 1.4 - boots, compiles linux kernel
490 - Debian Linux woody - boots from CDROM and HDD
491 - Mandrake Linux 9 - boots from CDROM, freezes during install
492 - Knoppix 2003-07-13_4 boots from CDROM, pb with X configuration
493 distribution bug: X runs with a properly hand-coded configuration.
494 - rock Linux 2.0 runs from CDROM
495
496 * Linux 2.6 support seems deadly broken (used to boot...).
497
498 * PowerPC 405EP reference boards:
499 - can boot Linux 2.4 & 2.6.
500 Need to provide a flash image ready to boot for reproductible tests.
501
502 TODO:
503 - MCA based RS/6000 emulation
504 - CHRP emulation (not PowerMac)
505 - PPAR emulation
506 - ePPAR emulation
507 - misc PowerPC reference boards emulation
508
509 ===============================================================================
510 (to be completed)