diff options
Diffstat (limited to 'arch/sh/kernel/time_32.c')
-rw-r--r-- | arch/sh/kernel/time_32.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/sh/kernel/time_32.c b/arch/sh/kernel/time_32.c index c34e1e0..c770413 100644 --- a/arch/sh/kernel/time_32.c +++ b/arch/sh/kernel/time_32.c @@ -17,6 +17,7 @@ #include <linux/sched.h> #include <linux/clockchips.h> #include <linux/mc146818rtc.h> /* for rtc_lock */ +#include <linux/platform_device.h> #include <linux/smp.h> #include <asm/clock.h> #include <asm/rtc.h> @@ -208,7 +209,7 @@ unsigned long long sched_clock(void) if (!clocksource_sh.rating) return (unsigned long long)jiffies * (NSEC_PER_SEC / HZ); - cycles = clocksource_sh.read(); + cycles = clocksource_sh.read(&clocksource_sh); return cyc2ns(&clocksource_sh, cycles); } #endif @@ -229,6 +230,14 @@ void __init time_init(void) #endif /* + * Make sure all compiled-in early timers register themselves. + * Run probe() for one "earlytimer" device. + */ + early_platform_driver_register_all("earlytimer"); + if (early_platform_driver_probe("earlytimer", 1, 0)) + return; + + /* * Find the timer to use as the system timer, it will be * initialized for us. */ |