[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCHv2 05/12] cuda: rename frequency property to tb_fre
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCHv2 05/12] cuda: rename frequency property to tb_frequency |
Date: |
Sun, 11 Feb 2018 10:11:03 +1100 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
On Sun, Feb 11, 2018 at 09:32:14AM +1100, David Gibson wrote:
> On Fri, Feb 09, 2018 at 06:51:35PM +0000, Mark Cave-Ayland wrote:
> > This allows us to more easily differentiate between the timebase frequency
> > used
> > to calibrate the MacOS timers and the actual frequency of the hardware
> > clock as
> > indicated by CUDA_TIMER_FREQ.
> >
> > Signed-off-by: Mark Cave-Ayland <address@hidden>
> > Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
>
> Applied, thanks.
Actually, this patch doesn't compile, because you've changed
ti->frequency in a couple of places where you should only be changing
s->frequency. I've fixed it up in my tree.
>
> > ---
> > hw/misc/macio/cuda.c | 10 +++++-----
> > hw/misc/macio/macio.c | 2 +-
> > hw/ppc/mac.h | 2 +-
> > 3 files changed, 7 insertions(+), 7 deletions(-)
> >
> > diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
> > index a88535fa66..232b7f61aa 100644
> > --- a/hw/misc/macio/cuda.c
> > +++ b/hw/misc/macio/cuda.c
> > @@ -158,8 +158,8 @@ static unsigned int get_counter(CUDAState *s, CUDATimer
> > *ti)
> > uint64_t current_time = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
> >
> > /* Reverse of the tb calculation algorithm that Mac OS X uses on
> > bootup. */
> > - tb_diff = get_tb(current_time, ti->frequency) - ti->load_time;
> > - d = (tb_diff * 0xBF401675E5DULL) / (ti->frequency << 24);
> > + tb_diff = get_tb(current_time, ti->tb_frequency) - ti->load_time;
> > + d = (tb_diff * 0xBF401675E5DULL) / (ti->tb_frequency << 24);
> >
> > if (ti->index == 0) {
> > /* the timer goes down from latch to -1 (period of latch + 2) */
> > @@ -179,7 +179,7 @@ static void set_counter(CUDAState *s, CUDATimer *ti,
> > unsigned int val)
> > {
> > CUDA_DPRINTF("T%d.counter=%d\n", 1 + ti->index, val);
> > ti->load_time = get_tb(qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL),
> > - s->frequency);
> > + s->tb_frequency);
> > ti->counter_value = val;
> > cuda_timer_update(s, ti, ti->load_time);
> > }
> > @@ -878,7 +878,7 @@ static void cuda_realizefn(DeviceState *dev, Error
> > **errp)
> > struct tm tm;
> >
> > s->timers[0].timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, cuda_timer1, s);
> > - s->timers[0].frequency = s->frequency;
> > + s->timers[0].frequency = s->tb_frequency;
> > s->timers[1].timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, cuda_timer2, s);
> > s->timers[1].frequency = (SCALE_US * 6000) / 4700;
> >
> > @@ -909,7 +909,7 @@ static void cuda_initfn(Object *obj)
> > }
> >
> > static Property cuda_properties[] = {
> > - DEFINE_PROP_UINT64("frequency", CUDAState, frequency, 0),
> > + DEFINE_PROP_UINT64("timebase-frequency", CUDAState, tb_frequency, 0),
> > DEFINE_PROP_END_OF_LIST()
> > };
> >
> > diff --git a/hw/misc/macio/macio.c b/hw/misc/macio/macio.c
> > index 44f91d1e7f..a639b09e00 100644
> > --- a/hw/misc/macio/macio.c
> > +++ b/hw/misc/macio/macio.c
> > @@ -451,7 +451,7 @@ void macio_init(PCIDevice *d,
> > macio_state->escc_mem = escc_mem;
> > /* Note: this code is strongly inspirated from the corresponding code
> > in PearPC */
> > - qdev_prop_set_uint64(DEVICE(&macio_state->cuda), "frequency",
> > + qdev_prop_set_uint64(DEVICE(&macio_state->cuda), "timebase-frequency",
> > macio_state->frequency);
> >
> > qdev_init_nofail(DEVICE(d));
> > diff --git a/hw/ppc/mac.h b/hw/ppc/mac.h
> > index b501af1653..fa78115c95 100644
> > --- a/hw/ppc/mac.h
> > +++ b/hw/ppc/mac.h
> > @@ -99,7 +99,7 @@ typedef struct CUDAState {
> > CUDATimer timers[2];
> >
> > uint32_t tick_offset;
> > - uint64_t frequency;
> > + uint64_t tb_frequency;
> >
> > uint8_t last_b;
> > uint8_t last_acr;
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature
- [Qemu-ppc] [PATCHv2 03/12] cuda: don't call cuda_update() when writing to ACR register, (continued)
- [Qemu-ppc] [PATCHv2 03/12] cuda: don't call cuda_update() when writing to ACR register, Mark Cave-Ayland, 2018/02/09
- [Qemu-ppc] [PATCHv2 07/12] cuda: set timer 1 frequency property to CUDA_TIMER_FREQ, Mark Cave-Ayland, 2018/02/09
- [Qemu-ppc] [PATCHv2 06/12] cuda: minor cosmetic tidy-ups to get_next_irq_time(), Mark Cave-Ayland, 2018/02/09
- [Qemu-ppc] [PATCHv2 08/12] cuda: factor out timebase-derived counter value and load time, Mark Cave-Ayland, 2018/02/09
- [Qemu-ppc] [PATCHv2 05/12] cuda: rename frequency property to tb_frequency, Mark Cave-Ayland, 2018/02/09
[Qemu-ppc] [PATCHv2 01/12] cuda: do not use old_mmio accesses, Mark Cave-Ayland, 2018/02/09
[Qemu-ppc] [PATCHv2 04/12] cuda: introduce CUDAState parameter to get_counter(), Mark Cave-Ayland, 2018/02/09
[Qemu-ppc] [PATCHv2 09/12] misc: introduce new mos6522 VIA device and enable it for ppc builds, Mark Cave-Ayland, 2018/02/09