From patchwork Mon Mar 5 09:08:12 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v2,2/5] omap: switch omap_lpg to vm_clock Date: Sun, 04 Mar 2012 23:08:12 -0000 From: Paolo Bonzini X-Patchwork-Id: 144635 Message-Id: <1330938495-30573-3-git-send-email-pbonzini@redhat.com> To: qemu-devel@nongnu.org Cc: peter.maydell@linaro.org The output of the pulse generator needs to be deterministic when running in -icount mode, and to remain constant whenever the VM is stopped. So the right clock to use is vm_clock. Signed-off-by: Paolo Bonzini --- hw/omap1.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/omap1.c b/hw/omap1.c index 1aa5f23..d19049a 100644 --- a/hw/omap1.c +++ b/hw/omap1.c @@ -3497,9 +3497,9 @@ static void omap_lpg_tick(void *opaque) struct omap_lpg_s *s = opaque; if (s->cycle) - qemu_mod_timer(s->tm, qemu_get_clock_ms(rt_clock) + s->period - s->on); + qemu_mod_timer(s->tm, qemu_get_clock_ms(vm_clock) + s->period - s->on); else - qemu_mod_timer(s->tm, qemu_get_clock_ms(rt_clock) + s->on); + qemu_mod_timer(s->tm, qemu_get_clock_ms(vm_clock) + s->on); s->cycle = !s->cycle; printf("%s: LED is %s\n", __FUNCTION__, s->cycle ? "on" : "off"); @@ -3617,7 +3617,7 @@ static struct omap_lpg_s *omap_lpg_init(MemoryRegion *system_memory, struct omap_lpg_s *s = (struct omap_lpg_s *) g_malloc0(sizeof(struct omap_lpg_s)); - s->tm = qemu_new_timer_ms(rt_clock, omap_lpg_tick, s); + s->tm = qemu_new_timer_ms(vm_clock, omap_lpg_tick, s); omap_lpg_reset(s);