diff --git a/arch/x86_64/src/intel64/intel64_tsc_tickless.c b/arch/x86_64/src/intel64/intel64_tsc_tickless.c index 0d0b2893e16..2e003ac8d22 100644 --- a/arch/x86_64/src/intel64/intel64_tsc_tickless.c +++ b/arch/x86_64/src/intel64/intel64_tsc_tickless.c @@ -303,6 +303,8 @@ int up_timer_start(const struct timespec *ts) up_tmr_sync_up(); + up_unmask_tmr(); + ticks = up_ts2tick(ts) + rdtscp(); g_timer_active = 1; @@ -311,8 +313,6 @@ int up_timer_start(const struct timespec *ts) g_goal_time = ticks; - up_unmask_tmr(); - up_tmr_sync_down(); return OK; }