Patchwork m48t59: use rtc_clock for alarm timer

login
register
mail settings
Submitter Paolo Bonzini
Date Jan. 20, 2012, 12:05 p.m.
Message ID <1327061100-9286-1-git-send-email-pbonzini@redhat.com>
Download mbox | patch
Permalink /patch/137015/
State New
Headers show

Comments

Paolo Bonzini - Jan. 20, 2012, 12:05 p.m.
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>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 hw/m48t59.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Andreas Färber - Jan. 20, 2012, 12:45 p.m.
Am 20.01.2012 13:05, schrieb Paolo Bonzini:
> 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".
> 

> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Reviewed-by: Andreas Färber <afaerber@suse.de>
Cc: Blue

Andreas

> ---
>  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);
Paolo Bonzini - Jan. 30, 2012, 4:40 p.m.
On 01/20/2012 01:05 PM, Paolo Bonzini wrote:
> 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>
> Signed-off-by: Paolo Bonzini<pbonzini@redhat.com>
> ---
>   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);

Ping.

Paolo
Blue Swirl - Jan. 30, 2012, 7:29 p.m.
Thanks, applied.

On Fri, Jan 20, 2012 at 12:05, Paolo Bonzini <pbonzini@redhat.com> wrote:
> 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>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  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
>
>

Patch

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);