]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commitdiff
m48t59: use rtc_clock for alarm timer
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 20 Jan 2012 12:05:00 +0000 (13:05 +0100)
committerBlue Swirl <blauwirbel@gmail.com>
Mon, 30 Jan 2012 19:14:59 +0000 (19:14 +0000)
This lets the RTC get adjustments from the host NTP client.
The watchdog still uses the vm_clock.  The previous behavior is
available with "-rtc clock=vm".

Cc: Andreas Färber <afaerber@suse.de>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
hw/m48t59.c

index 262cfb8ec3e88f57e16ff71c1954eed82d36d2d6..bd610f00ae618689d22b24ccd3d994c096231fb1 100644 (file)
@@ -126,7 +126,7 @@ static void alarm_cb (void *opaque)
         /* Repeat once a second */
         next_time = 1;
     }
-    qemu_mod_timer(NVRAM->alrm_timer, qemu_get_clock_ns(vm_clock) +
+    qemu_mod_timer(NVRAM->alrm_timer, qemu_get_clock_ns(rtc_clock) +
                     next_time * 1000);
     qemu_set_irq(NVRAM->IRQ, 0);
 }
@@ -687,7 +687,7 @@ static void m48t59_init_common(M48t59State *s)
 {
     s->buffer = g_malloc0(s->size);
     if (s->type == 59) {
-        s->alrm_timer = qemu_new_timer_ns(vm_clock, &alarm_cb, s);
+        s->alrm_timer = qemu_new_timer_ns(rtc_clock, &alarm_cb, s);
         s->wd_timer = qemu_new_timer_ns(vm_clock, &watchdog_cb, s);
     }
     qemu_get_timedate(&s->alarm, 0);