On Tuesday, October 15, 2019, Philippe Mathieu-Daudé <phi...@redhat.com> wrote:
> From: Hervé Poussineau <hpous...@reactos.org> > > We are now able to embed a timer in another object. > > Acked-by: Michael S. Tsirkin <m...@redhat.com> > Acked-by: Paolo Bonzini <pbonz...@redhat.com> > Signed-off-by: Hervé Poussineau <hpous...@reactos.org> > Message-Id: <20171216090228.28505-4-hpous...@reactos.org> > Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> > --- > hw/timer/mc146818rtc.c | 30 ------------------------------ > include/hw/timer/mc146818rtc.h | 33 +++++++++++++++++++++++++++++++++ > 2 files changed, 33 insertions(+), 30 deletions(-) > > Reviewed-by: Aleksandar Markovic <amarko...@wavecomp.com> > diff --git a/hw/timer/mc146818rtc.c b/hw/timer/mc146818rtc.c > index 6cb378751b..e40b54e743 100644 > --- a/hw/timer/mc146818rtc.c > +++ b/hw/timer/mc146818rtc.c > @@ -71,36 +71,6 @@ > #define RTC_CLOCK_RATE 32768 > #define UIP_HOLD_LENGTH (8 * NANOSECONDS_PER_SECOND / 32768) > > -#define MC146818_RTC(obj) OBJECT_CHECK(RTCState, (obj), TYPE_MC146818_RTC) > - > -typedef struct RTCState { > - ISADevice parent_obj; > - > - MemoryRegion io; > - MemoryRegion coalesced_io; > - uint8_t cmos_data[128]; > - uint8_t cmos_index; > - int32_t base_year; > - uint64_t base_rtc; > - uint64_t last_update; > - int64_t offset; > - qemu_irq irq; > - int it_shift; > - /* periodic timer */ > - QEMUTimer *periodic_timer; > - int64_t next_periodic_time; > - /* update-ended timer */ > - QEMUTimer *update_timer; > - uint64_t next_alarm_time; > - uint16_t irq_reinject_on_ack_count; > - uint32_t irq_coalesced; > - uint32_t period; > - QEMUTimer *coalesced_timer; > - LostTickPolicy lost_tick_policy; > - Notifier suspend_notifier; > - QLIST_ENTRY(RTCState) link; > -} RTCState; > - > static void rtc_set_time(RTCState *s); > static void rtc_update_time(RTCState *s); > static void rtc_set_cmos(RTCState *s, const struct tm *tm); > diff --git a/include/hw/timer/mc146818rtc.h b/include/hw/timer/ > mc146818rtc.h > index fe6ed63f71..0f1c886e5b 100644 > --- a/include/hw/timer/mc146818rtc.h > +++ b/include/hw/timer/mc146818rtc.h > @@ -1,10 +1,43 @@ > #ifndef MC146818RTC_H > #define MC146818RTC_H > > +#include "qapi/qapi-types-misc.h" > +#include "qemu/queue.h" > +#include "qemu/timer.h" > #include "hw/isa/isa.h" > #include "hw/timer/mc146818rtc_regs.h" > > #define TYPE_MC146818_RTC "mc146818rtc" > +#define MC146818_RTC(obj) OBJECT_CHECK(RTCState, (obj), TYPE_MC146818_RTC) > + > +typedef struct RTCState { > + ISADevice parent_obj; > + > + MemoryRegion io; > + MemoryRegion coalesced_io; > + uint8_t cmos_data[128]; > + uint8_t cmos_index; > + int32_t base_year; > + uint64_t base_rtc; > + uint64_t last_update; > + int64_t offset; > + qemu_irq irq; > + int it_shift; > + /* periodic timer */ > + QEMUTimer *periodic_timer; > + int64_t next_periodic_time; > + /* update-ended timer */ > + QEMUTimer *update_timer; > + uint64_t next_alarm_time; > + uint16_t irq_reinject_on_ack_count; > + uint32_t irq_coalesced; > + uint32_t period; > + QEMUTimer *coalesced_timer; > + Notifier clock_reset_notifier; > + LostTickPolicy lost_tick_policy; > + Notifier suspend_notifier; > + QLIST_ENTRY(RTCState) link; > +} RTCState; > > ISADevice *mc146818_rtc_init(ISABus *bus, int base_year, > qemu_irq intercept_irq); > -- > 2.21.0 > > >
_______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel