diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2005-10-05 03:43:40 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-10-05 10:33:42 -0400 |
commit | 23cb8c297eb939b25e5a628dc9e8a71b17f1c44e (patch) | |
tree | c7dbcdef11fd251b39d0dcab80aaae6a3bcb9439 /arch/ppc/platforms | |
parent | 329d4dd72e5c3393a0c7aeebf3e62df77b196d71 (diff) |
[PATCH] ppc: Fix timekeeping with HZ=250 on some Mac models
Older Macs which uses the VIA chip timers to calibrate the timebase used
some code that wouldn't work if HZ wasn't divisible by 100...
This fixes it at least for 250. Not totally perfect but should be
enough for now (so it at least works with the default value which is now
250).
There is still a potential issue with the core using CLOCK_TICK_RATE to
maintain xtime and CLOCK_TICK_RATE value on ppc32 is pure crap, but that
is a different problem, this patch at least brings us back to our
previous situation.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/ppc/platforms')
-rw-r--r-- | arch/ppc/platforms/pmac_time.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/ppc/platforms/pmac_time.c b/arch/ppc/platforms/pmac_time.c index 778ce4fec368..efb819f9490d 100644 --- a/arch/ppc/platforms/pmac_time.c +++ b/arch/ppc/platforms/pmac_time.c | |||
@@ -195,7 +195,7 @@ via_calibrate_decr(void) | |||
195 | ; | 195 | ; |
196 | dend = get_dec(); | 196 | dend = get_dec(); |
197 | 197 | ||
198 | tb_ticks_per_jiffy = (dstart - dend) / (6 * (HZ/100)); | 198 | tb_ticks_per_jiffy = (dstart - dend) / ((6 * HZ)/100); |
199 | tb_to_us = mulhwu_scale_factor(dstart - dend, 60000); | 199 | tb_to_us = mulhwu_scale_factor(dstart - dend, 60000); |
200 | 200 | ||
201 | printk(KERN_INFO "via_calibrate_decr: ticks per jiffy = %u (%u ticks)\n", | 201 | printk(KERN_INFO "via_calibrate_decr: ticks per jiffy = %u (%u ticks)\n", |