From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:53893) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RoDDV-00043B-De for qemu-devel@nongnu.org; Fri, 20 Jan 2012 07:05:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RoDDQ-0000dh-Br for qemu-devel@nongnu.org; Fri, 20 Jan 2012 07:05:13 -0500 Received: from mail-wi0-f173.google.com ([209.85.212.173]:44591) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RoDDP-0000dP-SF for qemu-devel@nongnu.org; Fri, 20 Jan 2012 07:05:08 -0500 Received: by wibhm11 with SMTP id hm11so420749wib.4 for ; Fri, 20 Jan 2012 04:05:06 -0800 (PST) Sender: Paolo Bonzini From: Paolo Bonzini Date: Fri, 20 Jan 2012 13:05:00 +0100 Message-Id: <1327061100-9286-1-git-send-email-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [PATCH] m48t59: use rtc_clock for alarm timer List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Andreas=20F=C3=A4rber?= 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 Signed-off-by: Paolo Bonzini --- hw/m48t59.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/m48t59.c b/hw/m48t59.c index c043996..fd5dc00 100644 --- a/hw/m48t59.c +++ b/hw/m48t59.c @@ -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); -- 1.7.7.1