summaryrefslogtreecommitdiff
path: root/hw/ppce500_mpc8544ds.c
diff options
context:
space:
mode:
authorFabien Chouteau <chouteau@adacore.com>2011-09-13 04:00:32 +0000
committerAlexander Graf <agraf@suse.de>2011-10-06 09:48:09 +0200
commitddd1055b07fdfe488a22c2275adaca75f4206d30 (patch)
tree562b06cea9452d0bdfca3e5a0928eefe736265c9 /hw/ppce500_mpc8544ds.c
parent94135e813c14bac3f967e6b5aa35b9d617737e68 (diff)
downloadqemu-ddd1055b07fdfe488a22c2275adaca75f4206d30.tar.gz
PPC: booke timers
While working on the emulation of the freescale p2010 (e500v2) I realized that there's no implementation of booke's timers features. Currently mpc8544 uses ppc_emb (ppc_emb_timers_init) which is close but not exactly like booke (for example booke uses different SPR). Signed-off-by: Fabien Chouteau <chouteau@adacore.com> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/ppce500_mpc8544ds.c')
-rw-r--r--hw/ppce500_mpc8544ds.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/hw/ppce500_mpc8544ds.c b/hw/ppce500_mpc8544ds.c
index 8095516f43..f00367ed7b 100644
--- a/hw/ppce500_mpc8544ds.c
+++ b/hw/ppce500_mpc8544ds.c
@@ -268,11 +268,7 @@ static void mpc8544ds_init(ram_addr_t ram_size,
irqs[i][OPENPIC_OUTPUT_CINT] = input[PPCE500_INPUT_CINT];
env->spr[SPR_BOOKE_PIR] = env->cpu_index = i;
- /* XXX register timer? */
- ppc_emb_timers_init(env, 400000000, PPC_INTERRUPT_DECR);
- ppc_dcr_init(env, NULL, NULL);
- /* XXX Enable DEC interrupts - probably wrong in the backend */
- env->spr[SPR_40x_TCR] = 1 << 26;
+ ppc_booke_timers_init(env, 400000000, PPC_TIMER_E500);
/* Register reset handler */
if (!i) {