Lines Matching refs:timer

47 				struct arch_timer_context *timer,
51 struct arch_timer_context *timer,
317 struct arch_timer_cpu *timer; in kvm_bg_timer_expire() local
321 timer = container_of(hrt, struct arch_timer_cpu, bg_timer); in kvm_bg_timer_expire()
322 vcpu = container_of(timer, struct kvm_vcpu, arch.timer_cpu); in kvm_bg_timer_expire()
501 struct arch_timer_cpu *timer = vcpu_timer(ctx->vcpu); in timer_save_state() local
505 if (!timer->enabled) in timer_save_state()
580 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_blocking() local
600 soft_timer_start(&timer->bg_timer, kvm_timer_earliest_exp(vcpu)); in kvm_timer_blocking()
605 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_unblocking() local
607 soft_timer_cancel(&timer->bg_timer); in kvm_timer_unblocking()
612 struct arch_timer_cpu *timer = vcpu_timer(ctx->vcpu); in timer_restore_state() local
616 if (!timer->enabled) in timer_restore_state()
867 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_vcpu_load() local
870 if (unlikely(!timer->enabled)) in kvm_timer_vcpu_load()
918 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_vcpu_put() local
921 if (unlikely(!timer->enabled)) in kvm_timer_vcpu_put()
1006 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_sync_user() local
1008 if (unlikely(!timer->enabled)) in kvm_timer_sync_user()
1017 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_vcpu_reset() local
1043 if (timer->enabled) { in kvm_timer_vcpu_reset()
1089 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_vcpu_init() local
1100 hrtimer_setup(&timer->bg_timer, kvm_bg_timer_expire, CLOCK_MONOTONIC, in kvm_timer_vcpu_init()
1126 struct arch_timer_context *timer; in kvm_arm_timer_set_reg() local
1130 timer = vcpu_vtimer(vcpu); in kvm_arm_timer_set_reg()
1131 kvm_arm_timer_write(vcpu, timer, TIMER_REG_CTL, value); in kvm_arm_timer_set_reg()
1136 timer = vcpu_vtimer(vcpu); in kvm_arm_timer_set_reg()
1137 timer_set_offset(timer, kvm_phys_timer_read() - value); in kvm_arm_timer_set_reg()
1141 timer = vcpu_vtimer(vcpu); in kvm_arm_timer_set_reg()
1142 kvm_arm_timer_write(vcpu, timer, TIMER_REG_CVAL, value); in kvm_arm_timer_set_reg()
1145 timer = vcpu_ptimer(vcpu); in kvm_arm_timer_set_reg()
1146 kvm_arm_timer_write(vcpu, timer, TIMER_REG_CTL, value); in kvm_arm_timer_set_reg()
1151 timer = vcpu_ptimer(vcpu); in kvm_arm_timer_set_reg()
1152 timer_set_offset(timer, kvm_phys_timer_read() - value); in kvm_arm_timer_set_reg()
1156 timer = vcpu_ptimer(vcpu); in kvm_arm_timer_set_reg()
1157 kvm_arm_timer_write(vcpu, timer, TIMER_REG_CVAL, value); in kvm_arm_timer_set_reg()
1167 static u64 read_timer_ctl(struct arch_timer_context *timer) in read_timer_ctl() argument
1175 u32 ctl = timer_get_ctl(timer); in read_timer_ctl()
1177 if (!kvm_timer_compute_delta(timer)) in read_timer_ctl()
1209 struct arch_timer_context *timer, in kvm_arm_timer_read() argument
1216 val = timer_get_cval(timer) - kvm_phys_timer_read() + timer_get_offset(timer); in kvm_arm_timer_read()
1221 val = read_timer_ctl(timer); in kvm_arm_timer_read()
1225 val = timer_get_cval(timer); in kvm_arm_timer_read()
1229 val = kvm_phys_timer_read() - timer_get_offset(timer); in kvm_arm_timer_read()
1233 val = *timer->offset.vcpu_offset; in kvm_arm_timer_read()
1247 struct arch_timer_context *timer; in kvm_arm_timer_read_sysreg() local
1252 timer = vcpu_get_timer(vcpu, tmr); in kvm_arm_timer_read_sysreg()
1254 if (timer == map.emul_vtimer || timer == map.emul_ptimer) in kvm_arm_timer_read_sysreg()
1255 return kvm_arm_timer_read(vcpu, timer, treg); in kvm_arm_timer_read_sysreg()
1258 timer_save_state(timer); in kvm_arm_timer_read_sysreg()
1260 val = kvm_arm_timer_read(vcpu, timer, treg); in kvm_arm_timer_read_sysreg()
1262 timer_restore_state(timer); in kvm_arm_timer_read_sysreg()
1269 struct arch_timer_context *timer, in kvm_arm_timer_write() argument
1275 timer_set_cval(timer, kvm_phys_timer_read() - timer_get_offset(timer) + (s32)val); in kvm_arm_timer_write()
1279 timer_set_ctl(timer, val & ~ARCH_TIMER_CTRL_IT_STAT); in kvm_arm_timer_write()
1283 timer_set_cval(timer, val); in kvm_arm_timer_write()
1287 *timer->offset.vcpu_offset = val; in kvm_arm_timer_write()
1300 struct arch_timer_context *timer; in kvm_arm_timer_write_sysreg() local
1304 timer = vcpu_get_timer(vcpu, tmr); in kvm_arm_timer_write_sysreg()
1305 if (timer == map.emul_vtimer || timer == map.emul_ptimer) { in kvm_arm_timer_write_sysreg()
1306 soft_timer_cancel(&timer->hrtimer); in kvm_arm_timer_write_sysreg()
1307 kvm_arm_timer_write(vcpu, timer, treg, val); in kvm_arm_timer_write_sysreg()
1308 timer_emulate(timer); in kvm_arm_timer_write_sysreg()
1311 timer_save_state(timer); in kvm_arm_timer_write_sysreg()
1312 kvm_arm_timer_write(vcpu, timer, treg, val); in kvm_arm_timer_write_sysreg()
1313 timer_restore_state(timer); in kvm_arm_timer_write_sysreg()
1555 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_vcpu_terminate() local
1557 soft_timer_cancel(&timer->bg_timer); in kvm_timer_vcpu_terminate()
1616 struct arch_timer_cpu *timer = vcpu_timer(vcpu); in kvm_timer_enable() local
1620 if (timer->enabled) in kvm_timer_enable()
1656 timer->enabled = 1; in kvm_timer_enable()
1722 struct arch_timer_context *timer; in kvm_arm_timer_get_attr() local
1727 timer = vcpu_vtimer(vcpu); in kvm_arm_timer_get_attr()
1730 timer = vcpu_ptimer(vcpu); in kvm_arm_timer_get_attr()
1733 timer = vcpu_hvtimer(vcpu); in kvm_arm_timer_get_attr()
1736 timer = vcpu_hptimer(vcpu); in kvm_arm_timer_get_attr()
1742 irq = timer_irq(timer); in kvm_arm_timer_get_attr()