Lines Matching refs:timer

85     CPUTimer *timer = g_new0(CPUTimer, 1);  in cpu_timer_create()  local
87 timer->name = name; in cpu_timer_create()
88 timer->frequency = frequency; in cpu_timer_create()
89 timer->disabled_mask = disabled_mask; in cpu_timer_create()
90 timer->npt_mask = npt_mask; in cpu_timer_create()
92 timer->disabled = 1; in cpu_timer_create()
93 timer->npt = 1; in cpu_timer_create()
94 timer->clock_offset = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL); in cpu_timer_create()
96 timer->qtimer = timer_new_ns(QEMU_CLOCK_VIRTUAL, cb, cpu); in cpu_timer_create()
98 return timer; in cpu_timer_create()
101 static void cpu_timer_reset(CPUTimer *timer) in cpu_timer_reset() argument
103 timer->disabled = 1; in cpu_timer_reset()
104 timer->clock_offset = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL); in cpu_timer_reset()
106 timer_del(timer->qtimer); in cpu_timer_reset()
138 CPUTimer *timer = env->tick; in tick_irq() local
140 if (timer->disabled) { in tick_irq()
156 CPUTimer *timer = env->stick; in stick_irq() local
158 if (timer->disabled) { in stick_irq()
174 CPUTimer *timer = env->hstick; in hstick_irq() local
176 if (timer->disabled) { in hstick_irq()
197 void cpu_tick_set_count(CPUTimer *timer, uint64_t count) in cpu_tick_set_count() argument
199 uint64_t real_count = count & ~timer->npt_mask; in cpu_tick_set_count()
200 uint64_t npt_bit = count & timer->npt_mask; in cpu_tick_set_count()
203 cpu_to_timer_ticks(real_count, timer->frequency); in cpu_tick_set_count()
205 trace_sparc64_cpu_tick_set_count(timer->name, real_count, in cpu_tick_set_count()
206 timer->npt ? "disabled" : "enabled", in cpu_tick_set_count()
207 timer); in cpu_tick_set_count()
209 timer->npt = npt_bit ? 1 : 0; in cpu_tick_set_count()
210 timer->clock_offset = vm_clock_offset; in cpu_tick_set_count()
213 uint64_t cpu_tick_get_count(CPUTimer *timer) in cpu_tick_get_count() argument
216 qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) - timer->clock_offset, in cpu_tick_get_count()
217 timer->frequency); in cpu_tick_get_count()
219 trace_sparc64_cpu_tick_get_count(timer->name, real_count, in cpu_tick_get_count()
220 timer->npt ? "disabled" : "enabled", in cpu_tick_get_count()
221 timer); in cpu_tick_get_count()
223 if (timer->npt) { in cpu_tick_get_count()
224 real_count |= timer->npt_mask; in cpu_tick_get_count()
230 void cpu_tick_set_limit(CPUTimer *timer, uint64_t limit) in cpu_tick_set_limit() argument
234 uint64_t real_limit = limit & ~timer->disabled_mask; in cpu_tick_set_limit()
235 timer->disabled = (limit & timer->disabled_mask) ? 1 : 0; in cpu_tick_set_limit()
237 int64_t expires = cpu_to_timer_ticks(real_limit, timer->frequency) + in cpu_tick_set_limit()
238 timer->clock_offset; in cpu_tick_set_limit()
244 trace_sparc64_cpu_tick_set_limit(timer->name, real_limit, in cpu_tick_set_limit()
245 timer->disabled ? "disabled" : "enabled", in cpu_tick_set_limit()
246 timer, limit, in cpu_tick_set_limit()
248 now - timer->clock_offset, in cpu_tick_set_limit()
249 timer->frequency in cpu_tick_set_limit()
252 expires - now, timer->frequency in cpu_tick_set_limit()
256 trace_sparc64_cpu_tick_set_limit_zero(timer->name); in cpu_tick_set_limit()
257 timer_del(timer->qtimer); in cpu_tick_set_limit()
258 } else if (timer->disabled) { in cpu_tick_set_limit()
259 timer_del(timer->qtimer); in cpu_tick_set_limit()
261 timer_mod(timer->qtimer, expires); in cpu_tick_set_limit()