Fix IXP4xx CLOCK_TICK_RATE
PATCH 1/1 Fix IXP4xx CLOCK_TICK_RATE
[RMK is out for the week so sending this direct as it should go into 2.6.13]
As pointed out in the following thread, the CLOCK_TICK_RATE setting for IXP4xx is incorrect b/c the HW ignores the lowest 2 bits of the LATCH value.
http://lists.arm.linux.org.uk/pipermail/linux-arm-kernel/2005-August/030950.html
Tnx to George Anziger and Egil Hjelmeland for finding the issue.
Signed-off-by Deepak Saxena <[email protected]>
include/asm-arm/arch-ixp4xx/timex.h +4 -2
@@ -7,7 +7,9 @@/* * We use IXP425 General purpose timer for our timer needs, it runs at -* 66.66... MHz +* 66.66... MHz. We do a convulted calculation of CLOCK_TICK_RATE b/c the +* timer register ignores the bottom 2 bits of the LATCH value. */ -#define CLOCK_TICK_RATE (66666666) +#define FREQ 66666666 +#define CLOCK_TICK_RATE (((FREQ / HZ & ~IXP4XX_OST_RELOAD_MASK) + 1) * HZ)
Signature · 3 lines
Deepak Saxena - [email protected] - http://www.plexity.net Even a stopped clock gives the right time twice a day.