summaryrefslogtreecommitdiff
path: root/hw/i8259.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2004-05-20 13:42:52 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2004-05-20 13:42:52 +0000
commitb54ad0498e58cd81f35f815ecb887af2f44ab6f6 (patch)
treeee91798481594ebafe488890f1a35ebc8fa80030 /hw/i8259.c
parent4399059e4dd7ee742c80f44421b84f1f697ec932 (diff)
downloadqemu-b54ad0498e58cd81f35f815ecb887af2f44ab6f6.tar.gz
qemu-b54ad0498e58cd81f35f815ecb887af2f44ab6f6.tar.bz2
qemu-b54ad0498e58cd81f35f815ecb887af2f44ab6f6.zip
PIC reset fix (initial patch by Hidemi KAWAI)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@836 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/i8259.c')
-rw-r--r--hw/i8259.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/i8259.c b/hw/i8259.c
index e09bc9f312..809ea95a5d 100644
--- a/hw/i8259.c
+++ b/hw/i8259.c
@@ -231,6 +231,8 @@ static void pic_ioport_write(void *opaque, uint32_t addr, uint32_t val)
tmp = s->elcr_mask;
memset(s, 0, sizeof(PicState));
s->elcr_mask = tmp;
+ /* deassert a pending interrupt */
+ cpu_reset_interrupt(cpu_single_env, CPU_INTERRUPT_HARD);
s->init_state = 1;
s->init4 = val & 1;