Message ID | 1460966865-14537-1-git-send-email-aurelien@aurel32.net |
---|---|
State | New |
Headers | show |
Le 18/04/2016 10:07, Aurelien Jarno a écrit : > > This fixes the "hwclock --systohc" command in a guest. > > Cc: Hervé Poussineau<hpoussin@reactos.org> > Cc: David Gibson<david@gibson.dropbear.id.au> > Signed-off-by: Aurelien Jarno<aurelien@aurel32.net> Reviewed-by: Hervé Poussineau <hpoussin@reactos.org>
On Mon, Apr 18, 2016 at 10:07:45AM +0200, Aurelien Jarno wrote: > With the new framework the cuda_cmd_set_time command directly receive > the data, without the command byte. Therefore the time is stored at > in_data[0], not at in_data[1]. > > This fixes the "hwclock --systohc" command in a guest. > > Cc: Hervé Poussineau <hpoussin@reactos.org> > Cc: David Gibson <david@gibson.dropbear.id.au> > Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Applied to ppc-for-2.6. I'll send a pull request shortly. > --- > hw/misc/macio/cuda.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c > index c7472aa..f15f301 100644 > --- a/hw/misc/macio/cuda.c > +++ b/hw/misc/macio/cuda.c > @@ -685,8 +685,8 @@ static bool cuda_cmd_set_time(CUDAState *s, > return false; > } > > - ti = (((uint32_t)in_data[1]) << 24) + (((uint32_t)in_data[2]) << 16) > - + (((uint32_t)in_data[3]) << 8) + in_data[4]; > + ti = (((uint32_t)in_data[0]) << 24) + (((uint32_t)in_data[1]) << 16) > + + (((uint32_t)in_data[2]) << 8) + in_data[3]; > s->tick_offset = ti - (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) > / NANOSECONDS_PER_SECOND); > return true;
diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c index c7472aa..f15f301 100644 --- a/hw/misc/macio/cuda.c +++ b/hw/misc/macio/cuda.c @@ -685,8 +685,8 @@ static bool cuda_cmd_set_time(CUDAState *s, return false; } - ti = (((uint32_t)in_data[1]) << 24) + (((uint32_t)in_data[2]) << 16) - + (((uint32_t)in_data[3]) << 8) + in_data[4]; + ti = (((uint32_t)in_data[0]) << 24) + (((uint32_t)in_data[1]) << 16) + + (((uint32_t)in_data[2]) << 8) + in_data[3]; s->tick_offset = ti - (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) / NANOSECONDS_PER_SECOND); return true;
With the new framework the cuda_cmd_set_time command directly receive the data, without the command byte. Therefore the time is stored at in_data[0], not at in_data[1]. This fixes the "hwclock --systohc" command in a guest. Cc: Hervé Poussineau <hpoussin@reactos.org> Cc: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> --- hw/misc/macio/cuda.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)