Revision 6ee093c9 hw/acpi.c
b/hw/acpi.c | ||
---|---|---|
79 | 79 |
static uint32_t get_pmtmr(PIIX4PMState *s) |
80 | 80 |
{ |
81 | 81 |
uint32_t d; |
82 |
d = muldiv64(qemu_get_clock(vm_clock), PM_FREQ, ticks_per_sec);
|
|
82 |
d = muldiv64(qemu_get_clock(vm_clock), PM_FREQ, get_ticks_per_sec());
|
|
83 | 83 |
return d & 0xffffff; |
84 | 84 |
} |
85 | 85 |
|
... | ... | |
88 | 88 |
int64_t d; |
89 | 89 |
int pmsts; |
90 | 90 |
pmsts = s->pmsts; |
91 |
d = muldiv64(qemu_get_clock(vm_clock), PM_FREQ, ticks_per_sec);
|
|
91 |
d = muldiv64(qemu_get_clock(vm_clock), PM_FREQ, get_ticks_per_sec());
|
|
92 | 92 |
if (d >= s->tmr_overflow_time) |
93 | 93 |
s->pmsts |= TMROF_EN; |
94 | 94 |
return s->pmsts; |
... | ... | |
105 | 105 |
qemu_set_irq(s->irq, sci_level); |
106 | 106 |
/* schedule a timer interruption if needed */ |
107 | 107 |
if ((s->pmen & TMROF_EN) && !(pmsts & TMROF_EN)) { |
108 |
expire_time = muldiv64(s->tmr_overflow_time, ticks_per_sec, PM_FREQ);
|
|
108 |
expire_time = muldiv64(s->tmr_overflow_time, get_ticks_per_sec(), PM_FREQ);
|
|
109 | 109 |
qemu_mod_timer(s->tmr_timer, expire_time); |
110 | 110 |
} else { |
111 | 111 |
qemu_del_timer(s->tmr_timer); |
... | ... | |
130 | 130 |
pmsts = get_pmsts(s); |
131 | 131 |
if (pmsts & val & TMROF_EN) { |
132 | 132 |
/* if TMRSTS is reset, then compute the new overflow time */ |
133 |
d = muldiv64(qemu_get_clock(vm_clock), PM_FREQ, ticks_per_sec); |
|
133 |
d = muldiv64(qemu_get_clock(vm_clock), PM_FREQ, |
|
134 |
get_ticks_per_sec()); |
|
134 | 135 |
s->tmr_overflow_time = (d + 0x800000LL) & ~0x7fffffLL; |
135 | 136 |
} |
136 | 137 |
s->pmsts &= ~val; |
Also available in: Unified diff