Commit 61b7b67d authored by Jan Kiszka's avatar Jan Kiszka Committed by Anthony Liguori
Browse files

i8254: Do not raise IRQ level on reset



Avoid changing the IRQ level to high on reset as it may trigger spurious
events. Instead, open-code the effects of pit_load_count(0) in the reset
handler.

Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
parent 7dfbfc79
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -481,7 +481,13 @@ static void pit_reset(DeviceState *dev)
        s = &pit->channels[i];
        s->mode = 3;
        s->gate = (i != 2);
        pit_load_count(s, 0);
        s->count_load_time = qemu_get_clock_ns(vm_clock);
        s->count = 0x10000;
        if (i == 0) {
            s->next_transition_time =
                pit_get_next_transition_time(s, s->count_load_time);
            qemu_mod_timer(s->irq_timer, s->next_transition_time);
        }
    }
}