diff options
author | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-08-19 12:55:20 +0000 |
---|---|---|
committer | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-08-19 12:55:20 +0000 |
commit | a7d40001e70347563900960dd084e5bc43386483 (patch) | |
tree | b7becbeb68a87db30499d6f1eeac4c9209602de4 /hw/pc.c | |
parent | ac4d93f190d74e94efcc64928e3491c7aa87feab (diff) | |
download | qemu-a7d40001e70347563900960dd084e5bc43386483.tar.gz qemu-a7d40001e70347563900960dd084e5bc43386483.tar.bz2 qemu-a7d40001e70347563900960dd084e5bc43386483.zip |
i386: fix isapc machine
- cirrus vga: enable graphic console
- pc: don't use apic for interrupts on ISA machine
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5026 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/pc.c')
-rw-r--r-- | hw/pc.c | 12 |
1 files changed, 8 insertions, 4 deletions
@@ -121,10 +121,14 @@ static void pic_irq_request(void *opaque, int irq, int level) if (!level) return; - while (env) { - if (apic_accept_pic_intr(env)) - apic_local_deliver(env, APIC_LINT0); - env = env->next_cpu; + if (env->apic_state) { + while (env) { + if (apic_accept_pic_intr(env)) + apic_local_deliver(env, APIC_LINT0); + env = env->next_cpu; + } + } else { + cpu_interrupt(env, CPU_INTERRUPT_HARD); } } |