[MIPS] Clocksource: Only install r4k counter as clocksource if present.
Ralf Baechle [Wed, 12 Mar 2008 13:58:10 +0000 (13:58 +0000)]
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

arch/mips/kernel/csrc-r4k.c
include/asm-mips/time.h

index 0e2b5cd..86e026f 100644 (file)
@@ -22,12 +22,17 @@ static struct clocksource clocksource_mips = {
        .flags          = CLOCK_SOURCE_IS_CONTINUOUS,
 };
 
-void __init init_mips_clocksource(void)
+int __init init_mips_clocksource(void)
 {
+       if (!cpu_has_counter || !mips_hpt_frequency)
+               return -ENXIO;
+
        /* Calclate a somewhat reasonable rating value */
        clocksource_mips.rating = 200 + mips_hpt_frequency / 10000000;
 
        clocksource_set_clock(&clocksource_mips, mips_hpt_frequency);
 
        clocksource_register(&clocksource_mips);
+
+       return 0;
 }
index a8fd16e..d3bd5c5 100644 (file)
@@ -64,10 +64,11 @@ static inline int mips_clockevent_init(void)
  * Initialize the count register as a clocksource
  */
 #ifdef CONFIG_CEVT_R4K
-extern void init_mips_clocksource(void);
+extern int init_mips_clocksource(void);
 #else
-static inline void init_mips_clocksource(void)
+static inline int init_mips_clocksource(void)
 {
+       return 0;
 }
 #endif