summaryrefslogtreecommitdiffstats
path: root/hw/openpic.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-11-21 23:33:12 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-11-21 23:33:12 +0000
commitc68ea7043f2ed4c631d1e3a4f35afe247d5ca063 (patch)
tree64b42bfd3fe62caf019e384cee26e80b98da831d /hw/openpic.c
parent173d6cfe5129301a3a8f2570223aaa47a815f343 (diff)
downloadhqemu-c68ea7043f2ed4c631d1e3a4f35afe247d5ca063.zip
hqemu-c68ea7043f2ed4c631d1e3a4f35afe247d5ca063.tar.gz
cpu_single_env usage fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1644 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/openpic.c')
-rw-r--r--hw/openpic.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/hw/openpic.c b/hw/openpic.c
index 08fb9bd..8068e7e 100644
--- a/hw/openpic.c
+++ b/hw/openpic.c
@@ -265,7 +265,8 @@ static void IRQ_local_pipe (openpic_t *opp, int n_CPU, int n_IRQ)
if (priority > dst->raised.priority) {
IRQ_get_next(opp, &dst->raised);
DPRINTF("Raise CPU IRQ\n");
- cpu_interrupt(cpu_single_env, CPU_INTERRUPT_HARD);
+ /* XXX: choose the correct cpu */
+ cpu_interrupt(first_cpu, CPU_INTERRUPT_HARD);
}
}
@@ -532,7 +533,7 @@ static void openpic_gbl_write (void *opaque, uint32_t addr, uint32_t val)
/* XXX: Should be able to reset any CPU */
if (val & 1) {
DPRINTF("Reset CPU IRQ\n");
- // cpu_interrupt(cpu_single_env, CPU_INTERRUPT_RESET);
+ // cpu_interrupt(first_cpu, CPU_INTERRUPT_RESET);
}
break;
#if MAX_IPI > 0
@@ -781,7 +782,8 @@ static void openpic_cpu_write (void *opaque, uint32_t addr, uint32_t val)
src = &opp->src[n_IRQ];
if (IPVP_PRIORITY(src->ipvp) > dst->servicing.priority) {
DPRINTF("Raise CPU IRQ\n");
- cpu_interrupt(cpu_single_env, CPU_INTERRUPT_HARD);
+ /* XXX: choose cpu */
+ cpu_interrupt(first_cpu, CPU_INTERRUPT_HARD);
}
}
break;
OpenPOWER on IntegriCloud