mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 08:43:55 -06:00
PowerPC MMU and exception fixes:
* PowerPC 601 (and probably POWER/POWER2) uses a different BAT format than later PowerPC implementation. * Bugfix in BATs check: must not stop after 4 BATs when more are provided. * Enable POWER 'rac' instruction. * Fix exception prefix for all supported PowerPC implementations. * Fix exceptions, MMU model and bus model for PowerPC 601 & 620. * Enable PowerPC 620 as it could mostly boot a PreP target. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3518 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
f10c315f8f
commit
faadf50e29
5 changed files with 114 additions and 55 deletions
|
@ -1682,15 +1682,18 @@ void do_POWER_mulo (void)
|
|||
#if !defined (CONFIG_USER_ONLY)
|
||||
void do_POWER_rac (void)
|
||||
{
|
||||
#if 0
|
||||
mmu_ctx_t ctx;
|
||||
int nb_BATs;
|
||||
|
||||
/* We don't have to generate many instances of this instruction,
|
||||
* as rac is supervisor only.
|
||||
*/
|
||||
if (get_physical_address(env, &ctx, T0, 0, ACCESS_INT, 1) == 0)
|
||||
/* XXX: FIX THIS: Pretend we have no BAT */
|
||||
nb_BATs = env->nb_BATs;
|
||||
env->nb_BATs = 0;
|
||||
if (get_physical_address(env, &ctx, T0, 0, ACCESS_INT) == 0)
|
||||
T0 = ctx.raddr;
|
||||
#endif
|
||||
env->nb_BATs = nb_BATs;
|
||||
}
|
||||
|
||||
void do_POWER_rfsvc (void)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue