|
@@ -118,16 +118,16 @@ static int hv_ce_set_next_event(unsigned long delta,
|
|
|
|
|
|
WARN_ON(!clockevent_state_oneshot(evt));
|
|
|
|
|
|
- rdmsrl(HV_X64_MSR_TIME_REF_COUNT, current_tick);
|
|
|
+ hv_get_current_tick(current_tick);
|
|
|
current_tick += delta;
|
|
|
- wrmsrl(HV_X64_MSR_STIMER0_COUNT, current_tick);
|
|
|
+ hv_init_timer(HV_X64_MSR_STIMER0_COUNT, current_tick);
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
static int hv_ce_shutdown(struct clock_event_device *evt)
|
|
|
{
|
|
|
- wrmsrl(HV_X64_MSR_STIMER0_COUNT, 0);
|
|
|
- wrmsrl(HV_X64_MSR_STIMER0_CONFIG, 0);
|
|
|
+ hv_init_timer(HV_X64_MSR_STIMER0_COUNT, 0);
|
|
|
+ hv_init_timer_config(HV_X64_MSR_STIMER0_CONFIG, 0);
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
@@ -139,7 +139,7 @@ static int hv_ce_set_oneshot(struct clock_event_device *evt)
|
|
|
timer_cfg.enable = 1;
|
|
|
timer_cfg.auto_enable = 1;
|
|
|
timer_cfg.sintx = VMBUS_MESSAGE_SINT;
|
|
|
- wrmsrl(HV_X64_MSR_STIMER0_CONFIG, timer_cfg.as_uint64);
|
|
|
+ hv_init_timer_config(HV_X64_MSR_STIMER0_CONFIG, timer_cfg.as_uint64);
|
|
|
|
|
|
return 0;
|
|
|
}
|