1 PowerPC emulation status.
2 The goal of this file is to provide a reference status to avoid regressions.
4 ===============================================================================
5 PowerPC core emulation status
8 OK => all instructions are emulated
9 KO => some insns are missing or some should be removed
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
15 MSR: MSR bits definitions
16 OK => all MSR bits properly defined
17 KO => MSR definition is incorrect
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
32 Embedded PowerPC cores
38 IRQ KO partially implemented
44 SPR OK 401B2 401C2 401D2 401E2 401F2
46 IRQ KO partially implemented
54 IRQ KO partially implemented
58 To be checked: 401G2 401B3 Cobra
66 IRQ KO not implemented
74 IRQ KO not implemented
81 Checked: 405CRa 405CRb 405CRc 405EP 405GPa 405GPb 405GPc 405GPd 405GPe 405GPR
82 Npe405H Npe405H2 Npe405L
89 Remarks: Linux 2.4 boots (at least 1 proprietary firmware).
90 uboot seems to freeze at boot time.
91 To be checked: 405D2 405D4 405EZ 405LP Npe4GS3 STB03 STB04 STB25
92 x2vp4 x2vp7 x2vp20 x2vp50
94 XXX: find what is IBM e407b4
98 Checked: 440EPa 440EPb 440GXa 440GXb 440GXc 440GXf 440SP 440SP2
102 IRQ KO not implemented
107 Checked: 440GPb 440GPc
111 IRQ KO not implemented
116 Checked: 440A4 440B4 440G4 440H4
120 IRQ KO not implemented
125 Checked: 440A5 440F5 440G5 440H6 440GRa
129 IRQ KO not implemented
133 To be checked: 440EPx 440GRx 440SPE
136 PowerPC 460: (disabled: lack of detailed specifications)
144 PowerPC 460F: (disabled: lack of detailed specifications)
153 PowerPC e200: (not implemented)
162 PowerPC e300: (not implemented)
171 PowerPC e500: (not implemented)
180 PowerPC e600: (not implemented)
190 PowerPC 601: (601 601v2)
192 SPR OK is HID15 only on 601v2 ?
194 IRQ KO not implemented
197 Remarks: some instructions should have a specific behavior (not implemented)
205 EXCP ? at least timer and external interrupt are OK
206 Remarks: Linux 2.4 crashes when entering user-mode.
207 Linux 2.6.22 boots on this CPU but does not recognize it.
216 Remarks: Linux 2.4 boots and properly recognizes the CPU
219 PowerPC 603e: (603e11)
226 Remarks: Linux 2.4 boots and properly recognizes the CPU
236 Remarks: Linux 2.4 boots, recognizes the CPU as a 82xx.
246 Remarks: Linux 2.4 does not boots. Same symptoms as 602.
247 Linux 2.6.22 boots and properly recognizes the CPU.
256 Remarks: Linux 2.4 boots and properly recognizes the CPU.
266 Remarks: Linux 2.4 boots and properly recognizes the CPU.
276 Remarks: Linux 2.4 boots but does not properly recognizes the CPU.
277 Linux 2.6.22 boots and properly recognizes the CPU.
286 Remarks: Linux 2.4 does not boot.
290 INSN KO Altivec missing
296 Remarks: Linux 2.4 boots and properly recognize the CPU.
300 INSN KO Altivec missing
306 Remarks: Linux 2.4 boots and properly recognize the CPU.
308 Note that UM says tlbld & tlbli are implemented but this may be a mistake
309 as TLB loads are managed by the hardware and the CPU does not implement the
313 INSN KO Altivec missing
319 Remarks: Linux does not have the code to handle TLB miss on this CPU
323 INSN KO Altivec missing
329 Remarks: Linux does not have the code to handle TLB miss on this CPU
333 INSN KO Altivec missing
339 Remarks: Linux does not have the code to handle TLB miss on this CPU
343 INSN KO Altivec missing
349 Remarks: Linux does not have the code to handle TLB miss on this CPU
353 PowerPC 620: (disabled)
360 Remarks: not much documentation for this implementation...
363 INSN KO Altivec missing and more
368 EXCP KO partially implemented
369 Remarks: Should be able to boot but there is no hw platform currently emulated.
372 INSN KO Altivec missing and more
377 EXCP KO partially implemented
378 Remarks: Should be able to boot but there is no hw platform currently emulated.
381 INSN KO Altivec missing and more
386 EXCP KO partially implemented
387 Remarks: Should be able to boot but there is no hw platform currently emulated.
390 INSN KO Altivec missing and more
395 EXCP ? partially implemented
396 Remarks: As the core is mostly a 970, should be able to boot.
397 SPE are not implemented.
399 PowerPC 630: (disabled: lack of detailed specifications)
407 PowerPC 631: (disabled: lack of detailed specifications)
415 POWER4: (disabled: lack of detailed specifications)
423 POWER4+: (disabled: lack of detailed specifications)
431 POWER5: (disabled: lack of detailed specifications)
439 POWER5+: (disabled: lack of detailed specifications)
447 POWER6: (disabled: lack of detailed specifications)
455 RS64: (disabled: lack of detailed specifications)
463 RS64-II: (disabled: lack of detailed specifications)
471 RS64-III: (disabled: lack of detailed specifications)
479 RS64-IV: (disabled: lack of detailed specifications)
488 POWER: (disabled: lack of detailed specifications)
496 POWER2: (disabled: lack of detailed specifications)
504 ===============================================================================
505 PowerPC microcontrollers emulation status
507 Implemementation should be sufficient to boot Linux:
508 (there seem to be problems with uboot freezing at some point)
513 - PowerPC 401 microcontrollers emulation
514 - PowerPC 403 microcontrollers emulation
515 - more PowerPC 405 microcontrollers emulation
516 - Fixes / more features for implemented PowerPC 405 microcontrollers emulation
517 - PowerPC 440 microcontrollers emulation
518 - e200 microcontrollers emulation
519 - e300 microcontrollers emulation
520 - e500 microcontrollers emulation
521 - e600 microcontrollers emulation
523 ===============================================================================
524 PowerPC based platforms emulation status
526 * PREP platform (RS/6000 7043...) - TO BE CHECKED (broken)
527 - Gentoo Linux live CDROM 1.4
531 * heathrow PowerMac platform (beige PowerMac) - TO BE CHECKED (broken)
532 - Gentoo Linux live CDROM 1.4
536 * mac99 platform (white and blue PowerMac, ...)
537 - Gentoo Linux live CDROM 1.4 - boots, compiles linux kernel
538 - Debian Linux woody - boots from CDROM and HDD
539 - Mandrake Linux 9 - boots from CDROM, freezes during install
540 - Knoppix 2003-07-13_4 boots from CDROM, pb with X configuration
541 distribution bug: X runs with a properly hand-coded configuration.
542 - rock Linux 2.0 runs from CDROM
544 * Linux 2.6 support seems deadly broken (used to boot...).
546 * PowerPC 405EP reference boards:
547 - can boot Linux 2.4 & 2.6.
548 Need to provide a flash image ready to boot for reproductible tests.
551 - URGENT: fix PreP and heathrow platforms
552 - PowerPC 64 reference platform
553 - MCA based RS/6000 emulation
554 - CHRP emulation (not PowerMac)
557 - misc PowerPC reference boards emulation
559 ===============================================================================