--- a/arch/arm/kernel/smp_twd.c +++ b/arch/arm/kernel/smp_twd.c @@ -188,7 +188,7 @@ core_initcall(twd_cpufreq_init); #endif -static void __cpuinit twd_calibrate_rate(void) +static int twd_calibrate_rate(void) { unsigned long count; u64 waitjiffies; @@ -225,8 +225,11 @@ static void __cpuinit twd_calibrate_rate printk("%lu.%02luMHz.\n", twd_timer_rate / 1000000, (twd_timer_rate / 10000) % 100); } + return 0; } +device_initcall(twd_calibrate_rate); + static irqreturn_t twd_handler(int irq, void *dev_id) { struct clock_event_device *evt = *(struct clock_event_device **)dev_id;