So move the code to be called by smp_cpus_done, which is
after we've figured out if there's more than one cpu
actually present.
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
 
 void smp_cpus_done(unsigned int cpu_max)
 {
+       extern int update_cr16_clocksource(void);
+
+       update_cr16_clocksource();
+
        return;
 }
 
 
        return get_cycles();
 }
 
-static int cr16_update_callback(void);
-
 static struct clocksource clocksource_cr16 = {
        .name                   = "cr16",
        .rating                 = 300,
        .mask                   = CLOCKSOURCE_MASK(BITS_PER_LONG),
        .mult                   = 0, /* to be set */
        .shift                  = 22,
-       .update_callback        = cr16_update_callback,
        .flags                  = CLOCK_SOURCE_IS_CONTINUOUS,
 };
 
-static int cr16_update_callback(void)
+#ifdef CONFIG_SMP
+int update_cr16_clocksource(void)
 {
        int change = 0;
 
 
        return change;
 }
-
+#endif /*CONFIG_SMP*/
 
 void __init start_cpu_itimer(void)
 {