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