> Originally, timers were ticks based, and it made sense to > add ticks to current time to know when to trigger an alarm. > > But since commit: > > 7447545 change all other clock references to use nanosecond resolution > accessors > > All timers use nanoseconds and we need to convert ticks to nanoseconds, by > doing something like: > > y = muldiv64(x, get_ticks_per_sec(), TIMER_FREQ) > > where x is the number of device ticks and y the number of system ticks. > > y is used as nanoseconds in timer functions, > it works because 1 tick is 1 nanosecond. > (get_ticks_per_sec() is 10^9) > > But if get_ticks_per_sec() / TIMER_FREQ is an integer, we can do: > > y = x * TIMER_PERIOD;
Cc: qemu-triv...@nongnu.org Paolo