From: Avi Kivity <[EMAIL PROTECTED]>

The PMSTS overflow bit needs to be set each time bit 23 of the pm timer
is toggled.  This means we need to adjust the overflow time every time
we have an overflow.

Taken from qemu patch by TeLeMan in

http://www.mail-archive.com/[EMAIL PROTECTED]/msg14680.html

Signed-off-by: Avi Kivity <[EMAIL PROTECTED]>

diff --git a/qemu/hw/acpi.c b/qemu/hw/acpi.c
index a2efd9c..01f1354 100644
--- a/qemu/hw/acpi.c
+++ b/qemu/hw/acpi.c
@@ -102,6 +102,7 @@ static void pm_update_sci(PIIX4PMState *s)
     if ((s->pmen & TMROF_EN) && !(pmsts & TMROF_EN)) {
         expire_time = muldiv64(s->tmr_overflow_time, ticks_per_sec, PM_FREQ);
         qemu_mod_timer(s->tmr_timer, expire_time);
+        s->tmr_overflow_time += 0x800000;
     } else {
         qemu_del_timer(s->tmr_timer);
     }

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
kvm-commits mailing list
kvm-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-commits

Reply via email to