mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-30 02:28:54 +00:00
b6efa7f6f9
The calibration of the interpolation parameters was previously only done periodically every 500 ms. Together with the fact that the parameters had to be stable for at least 3 calibration steps to enable interpolation, it took at least 1.5 seconds after establishing a connection to get microseconds-precise time values. This is a problem for some drivers that directly start to poll time. Thus, the timer connection now does a calibration burst as soon as it switches to the modern mode (the mode with microseconds precision). During this phase it does several (currently 9) calibration steps without a delay inbetween. It is assumed that this is fast enough to not get interrupted by scheduling. Thus, despite being small, the measured values should be very stable which is why the burst should in most cases be sufficient to get the interpolation initialized. Ref #2400 |
||
---|---|---|
.. | ||
capability.h | ||
client.h | ||
connection.h | ||
timer_session.h |