diff options
Diffstat (limited to 'src/arch/ppc/lib/timer.c')
-rw-r--r-- | src/arch/ppc/lib/timer.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/arch/ppc/lib/timer.c b/src/arch/ppc/lib/timer.c index 37576d71f4..dee891af57 100644 --- a/src/arch/ppc/lib/timer.c +++ b/src/arch/ppc/lib/timer.c @@ -1,30 +1,35 @@ /* Copyright 2000 AG Electronics Ltd. */ /* This code is distributed without warranty under the GPL v2 (see COPYING) */ -#include <timer.h> #include <ppc.h> +#include <timer.h> +#include <clock.h> unsigned long get_hz(void) { return get_clock_speed(); } +#if 0 unsigned long ticks_since_boot(void) { - extern unsigned long _timebase(void); - return _timebase(); + extern unsigned long _get_ticks(void); + return _get_ticks(); } void sleep_ticks(unsigned long ticks) { - unsigned long then = ticks + ticks_since_boot(); - while(ticks_since_boot() < then) - ; + unsigned long now = ticks_since_boot(); + unsigned long then = ticks + now; + while(now < then) + now = ticks_since_boot(); } +#endif void udelay(int usecs) { + extern void _wait_ticks(unsigned long); unsigned long ticksperusec = get_hz() / 1000000; - sleep_ticks(ticksperusec * usecs); + _wait_ticks(ticksperusec * usecs); } |