|
|
1.1 root 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: 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
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 2.4 crashes when entering user-mode.
207: Linux 2.6.22 boots on this CPU but does not recognize it.
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: Linux 2.6.22 idem.
218:
219: PowerPC 603e: (603e11)
220: INSN OK
221: SPR OK
222: MSR OK
223: IRQ OK
224: MMU OK
225: EXCP OK
226: Remarks: Linux 2.4 boots and properly recognizes the CPU
227: Linux 2.6.22 idem.
228:
229: PowerPC G2:
230: INSN OK
231: SPR OK
232: MSR OK
233: IRQ OK
234: MMU OK
235: EXCP OK
236: Remarks: Linux 2.4 boots, recognizes the CPU as a 82xx.
237: Linux 2.6.22 idem.
238:
239: PowerPC G2le:
240: INSN OK
241: SPR OK
242: MSR OK
243: IRQ OK
244: MMU OK
245: EXCP OK
246: Remarks: Linux 2.4 does not boots. Same symptoms as 602.
247: Linux 2.6.22 boots and properly recognizes the CPU.
248:
249: PowerPC 604:
250: INSN OK
251: SPR OK
252: MSR OK
253: IRQ OK
254: MMU OK
255: EXCP OK
256: Remarks: Linux 2.4 boots and properly recognizes the CPU.
257: Linux 2.6.22 idem.
258:
259: PowerPC 7x0:
260: INSN OK
261: SPR OK
262: MSR OK
263: IRQ OK
264: MMU OK
265: EXCP OK
266: Remarks: Linux 2.4 boots and properly recognizes the CPU.
267: Linux 2.6.22 idem.
268:
269: PowerPC 750fx:
270: INSN OK
271: SPR OK
272: MSR OK
273: IRQ OK
274: MMU OK
275: EXCP OK
276: Remarks: Linux 2.4 boots but does not properly recognizes the CPU.
277: Linux 2.6.22 boots and properly recognizes the CPU.
278:
279: PowerPC 7x5:
280: INSN ?
281: SPR ?
282: MSR ?
283: IRQ OK
284: MMU ?
285: EXCP OK
286: Remarks: Linux 2.4 does not boot.
287: Linux 2.6.22 idem.
288:
289: PowerPC 7400:
290: INSN KO Altivec missing
291: SPR OK
292: MSR OK
293: IRQ OK
294: MMU OK
295: EXCP ? Altivec, ...
296: Remarks: Linux 2.4 boots and properly recognize the CPU.
297: Linux 2.6.22 idem.
298:
299: PowerPC 7410:
300: INSN KO Altivec missing
301: SPR OK
302: MSR OK
303: IRQ OK
304: MMU OK
305: EXCP ? Altivec, ...
306: Remarks: Linux 2.4 boots and properly recognize the CPU.
307: Linux 2.6.22 idem.
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
310: needed registers.
311:
312: PowerPC 7441:
313: INSN KO Altivec missing
314: SPR OK
315: MSR OK
316: IRQ OK
317: MMU OK
318: EXCP ? Altivec, ...
319: Remarks: Linux does not have the code to handle TLB miss on this CPU
320: Linux 2.6.22 idem.
321:
322: PowerPC 7450/7451:
323: INSN KO Altivec missing
324: SPR OK
325: MSR OK
326: IRQ OK
327: MMU OK
328: EXCP ? Altivec, ...
329: Remarks: Linux does not have the code to handle TLB miss on this CPU
330: Linux 2.6.22 idem.
331:
332: PowerPC 7445/7447:
333: INSN KO Altivec missing
334: SPR OK
335: MSR OK
336: IRQ OK
337: MMU OK
338: EXCP ? Altivec, ...
339: Remarks: Linux does not have the code to handle TLB miss on this CPU
340: Linux 2.6.22 idem.
341:
342: PowerPC 7455/7457:
343: INSN KO Altivec missing
344: SPR OK
345: MSR OK
346: IRQ OK
347: MMU OK
348: EXCP ? Altivec, ...
349: Remarks: Linux does not have the code to handle TLB miss on this CPU
350: Linux 2.6.22 idem.
351:
352: 64 bits PowerPC
353: PowerPC 620: (disabled)
354: INSN KO
355: SPR KO
356: MSR ?
357: IRQ KO
358: MMU KO
359: EXCP KO
360: Remarks: not much documentation for this implementation...
361:
362: PowerPC 970:
363: INSN KO Altivec missing and more
364: SPR KO
365: MSR ?
366: IRQ OK
367: MMU OK
368: EXCP KO partially implemented
369: Remarks: Should be able to boot but there is no hw platform currently emulated.
370:
371: PowerPC 970FX:
372: INSN KO Altivec missing and more
373: SPR KO
374: MSR ?
375: IRQ OK
376: MMU OK
377: EXCP KO partially implemented
378: Remarks: Should be able to boot but there is no hw platform currently emulated.
379:
380: PowerPC 970GX:
381: INSN KO Altivec missing and more
382: SPR KO
383: MSR ?
384: IRQ OK
385: MMU OK
386: EXCP KO partially implemented
387: Remarks: Should be able to boot but there is no hw platform currently emulated.
388:
389: PowerPC Cell:
390: INSN KO Altivec missing and more
391: SPR KO
392: MSR ?
393: IRQ ?
394: MMU ?
395: EXCP ? partially implemented
396: Remarks: As the core is mostly a 970, should be able to boot.
397: SPE are not implemented.
398:
399: PowerPC 630: (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: PowerPC 631: (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: POWER4: (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: POWER4+: (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: POWER5: (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: POWER5+: (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: POWER6: (disabled: lack of detailed specifications)
448: INSN KO
449: SPR KO
450: MSR KO
451: IRQ KO
452: MMU KO
453: EXCP KO
454:
455: RS64: (disabled: lack of detailed specifications)
456: INSN KO
457: SPR KO
458: MSR KO
459: IRQ KO
460: MMU KO
461: EXCP KO
462:
463: RS64-II: (disabled: lack of detailed specifications)
464: INSN KO
465: SPR KO
466: MSR KO
467: IRQ KO
468: MMU KO
469: EXCP KO
470:
471: RS64-III: (disabled: lack of detailed specifications)
472: INSN KO
473: SPR KO
474: MSR KO
475: IRQ KO
476: MMU KO
477: EXCP KO
478:
479: RS64-IV: (disabled: lack of detailed specifications)
480: INSN KO
481: SPR KO
482: MSR KO
483: IRQ KO
484: MMU KO
485: EXCP KO
486:
487: Original POWER
488: POWER: (disabled: lack of detailed specifications)
489: INSN KO
490: SPR KO
491: MSR KO
492: IRQ KO
493: MMU KO
494: EXCP KO
495:
496: POWER2: (disabled: lack of detailed specifications)
497: INSN KO
498: SPR KO
499: MSR KO
500: IRQ KO
501: MMU KO
502: EXCP KO
503:
504: ===============================================================================
505: PowerPC microcontrollers emulation status
506:
507: Implemementation should be sufficient to boot Linux:
508: (there seem to be problems with uboot freezing at some point)
509: - PowerPC 405CR
510: - PowerPC 405EP
511:
512: TODO:
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
522:
523: ===============================================================================
524: PowerPC based platforms emulation status
525:
526: * PREP platform (RS/6000 7043...) - TO BE CHECKED (broken)
527: - Gentoo Linux live CDROM 1.4
528: - Debian Linux 3.0
529: - Mandrake Linux 9
530:
531: * heathrow PowerMac platform (beige PowerMac) - TO BE CHECKED (broken)
532: - Gentoo Linux live CDROM 1.4
533: - Debian Linux 3.0
534: - Mandrake Linux 9
535:
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
543:
544: * Linux 2.6 support seems deadly broken (used to boot...).
545:
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.
549:
550: TODO:
551: - URGENT: fix PreP and heathrow platforms
552: - PowerPC 64 reference platform
553: - MCA based RS/6000 emulation
554: - CHRP emulation (not PowerMac)
555: - PPAR emulation
556: - ePPAR emulation
557: - misc PowerPC reference boards emulation
558:
559: ===============================================================================
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.