symbian-qemu-0.9.1-12/qemu-symbian-svp/target-ppc/STATUS
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     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 ===============================================================================