Revision 7a3a6927 target-ppc/translate_init.c
b/target-ppc/translate_init.c | ||
---|---|---|
2495 | 2495 |
#endif |
2496 | 2496 |
} |
2497 | 2497 |
|
2498 |
/* XXX: Check if this is correct */ |
|
2499 |
static void init_excp_7x5 (CPUPPCState *env) |
|
2500 |
{ |
|
2501 |
#if !defined(CONFIG_USER_ONLY) |
|
2502 |
env->excp_vectors[POWERPC_EXCP_RESET] = 0x00000100; |
|
2503 |
env->excp_vectors[POWERPC_EXCP_MCHECK] = 0x00000200; |
|
2504 |
env->excp_vectors[POWERPC_EXCP_DSI] = 0x00000300; |
|
2505 |
env->excp_vectors[POWERPC_EXCP_ISI] = 0x00000400; |
|
2506 |
env->excp_vectors[POWERPC_EXCP_EXTERNAL] = 0x00000500; |
|
2507 |
env->excp_vectors[POWERPC_EXCP_ALIGN] = 0x00000600; |
|
2508 |
env->excp_vectors[POWERPC_EXCP_PROGRAM] = 0x00000700; |
|
2509 |
env->excp_vectors[POWERPC_EXCP_FPU] = 0x00000800; |
|
2510 |
env->excp_vectors[POWERPC_EXCP_DECR] = 0x00000900; |
|
2511 |
env->excp_vectors[POWERPC_EXCP_SYSCALL] = 0x00000C00; |
|
2512 |
env->excp_vectors[POWERPC_EXCP_TRACE] = 0x00000D00; |
|
2513 |
env->excp_vectors[POWERPC_EXCP_IFTLB] = 0x00001000; |
|
2514 |
env->excp_vectors[POWERPC_EXCP_DLTLB] = 0x00001100; |
|
2515 |
env->excp_vectors[POWERPC_EXCP_DSTLB] = 0x00001200; |
|
2516 |
env->excp_vectors[POWERPC_EXCP_PERFM] = 0x00000F00; |
|
2517 |
env->excp_vectors[POWERPC_EXCP_IABR] = 0x00001300; |
|
2518 |
env->excp_vectors[POWERPC_EXCP_SMI] = 0x00001400; |
|
2519 |
/* Hardware reset vector */ |
|
2520 |
env->hreset_vector = 0xFFFFFFFCUL; |
|
2521 |
#endif |
|
2522 |
} |
|
2523 |
|
|
2498 | 2524 |
static void init_excp_7400 (CPUPPCState *env) |
2499 | 2525 |
{ |
2500 | 2526 |
#if !defined(CONFIG_USER_ONLY) |
... | ... | |
3577 | 3603 |
gen_low_BATs(env); |
3578 | 3604 |
gen_high_BATs(env); |
3579 | 3605 |
gen_6xx_7xx_soft_tlb(env, 64, 2); |
3580 |
/* XXX: exception vectors ? */
|
|
3606 |
init_excp_7x5(env);
|
|
3581 | 3607 |
env->dcache_line_size = 32; |
3582 | 3608 |
env->icache_line_size = 32; |
3583 | 3609 |
/* Allocate hardware IRQ controller */ |
Also available in: Unified diff