[PATCH] ppc32: Fix timekeeping

Benjamin Herrenschmidt benh at kernel.crashing.org
Wed Oct 12 11:39:33 EST 2005


Interestingly enough, ppc32 had broken timekeeping for ages... It
worked, but probably drifted a bit more than could be explained by the
actual bad precision of the timebase calibration. We discovered that
recently when somebody figured out that the common code was using
CLOCK_TICK_RATE to correct the timekeeing, and ppc32 had a completely
bogus value for it.

This patch turns it into something saner. Probably not as good as doing
something based on the actual timebase frequency precision but I'll
leave that sort of math to others. This at least makes it better for the
common HZ values.

Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
---
Please get that one in 2.6.14

Index: linux-work/include/asm-powerpc/timex.h
===================================================================
--- linux-work.orig/include/asm-powerpc/timex.h	2005-09-22 14:07:27.000000000 +1000
+++ linux-work/include/asm-powerpc/timex.h	2005-10-06 11:53:51.000000000 +1000
@@ -10,7 +10,7 @@
 #include <linux/config.h>
 #include <asm/cputable.h>
 
-#define CLOCK_TICK_RATE	1193180 /* Underlying HZ */
+#define CLOCK_TICK_RATE	1024000 /* Underlying HZ */
 
 typedef unsigned long cycles_t;
 





More information about the Linuxppc-dev mailing list