vserver 1.9.5.x5
[linux-2.6.git] / Documentation / time_interpolators.txt
index d9fefd5..e3b6085 100644 (file)
@@ -9,32 +9,33 @@ The architecture specific code typically provides gettimeofday and
 settimeofday under Linux. The time interpolator provides both if an arch
 defines CONFIG_TIME_INTERPOLATION. The arch still must set up timer tick
 operations and call the necessary functions to advance the clock.
+
 With the time interpolator a standardized interface exists for time
-interpolation between ticks which also allows the determination
-of time in a hardware independent way. The provided logic is highly scalable
+interpolation between ticks. The provided logic is highly scalable
 and has been tested in SMP situations of up to 512 CPUs.
 
 If CONFIG_TIME_INTERPOLATION is defined then the architecture specific code
-(or the device drivers - like HPET) must register time interpolators.
+(or the device drivers - like HPET) may register time interpolators.
 These are typically defined in the following way:
 
-static struct time_interpolator my_interpolator;
+static struct time_interpolator my_interpolator {
+       .frequency = MY_FREQUENCY,
+       .source = TIME_SOURCE_MMIO32,
+       .shift = 8,             /* scaling for higher accuracy */
+       .drift = -1,            /* Unknown drift */
+       .jitter = 0             /* time source is stable */
+};
 
 void time_init(void)
 {
        ....
        /* Initialization of the timer *.
-       my_interpolator.frequency = MY_FREQUENCY;
-       my_interpolator.source = TIME_SOURCE_MMIO32;
        my_interpolator.address = &my_timer;
-       my_interpolator.shift = 32;             /* increase accuracy of scaling */
-       my_interpolator.drift = -1;             /* Unknown */
-       my_interpolator.jitter = 0;             /* A stable time source */
        register_time_interpolator(&my_interpolator);
        ....
 }
 
-For more details see include/linux/timex.h.
+For more details see include/linux/timex.h and kernel/timer.c.
 
-Christoph Lameter <christoph@lameter.com>, September 8, 2004
+Christoph Lameter <christoph@lameter.com>, October 31, 2004