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
This commit is contained in:
parent
ca1c9e154b
commit
d552947107
|
@ -3228,6 +3228,8 @@ void isa_cirrus_vga_init(DisplayState *ds, uint8_t *vga_ram_base,
|
||||||
vga_common_init((VGAState *)s,
|
vga_common_init((VGAState *)s,
|
||||||
ds, vga_ram_base, vga_ram_offset, vga_ram_size);
|
ds, vga_ram_base, vga_ram_offset, vga_ram_size);
|
||||||
cirrus_init_common(s, CIRRUS_ID_CLGD5430, 0);
|
cirrus_init_common(s, CIRRUS_ID_CLGD5430, 0);
|
||||||
|
s->console = graphic_console_init(s->ds, s->update, s->invalidate,
|
||||||
|
s->screen_dump, s->text_update, s);
|
||||||
/* XXX ISA-LFB support */
|
/* XXX ISA-LFB support */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
12
hw/pc.c
12
hw/pc.c
|
@ -121,10 +121,14 @@ static void pic_irq_request(void *opaque, int irq, int level)
|
||||||
if (!level)
|
if (!level)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
while (env) {
|
if (env->apic_state) {
|
||||||
if (apic_accept_pic_intr(env))
|
while (env) {
|
||||||
apic_local_deliver(env, APIC_LINT0);
|
if (apic_accept_pic_intr(env))
|
||||||
env = env->next_cpu;
|
apic_local_deliver(env, APIC_LINT0);
|
||||||
|
env = env->next_cpu;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
cpu_interrupt(env, CPU_INTERRUPT_HARD);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue