EXPORT_SYMBOL(do_settimeofday);
 
-#if defined(CONFIG_PPC_PSERIES) || defined(CONFIG_PPC_MAPLE) || defined(CONFIG_PPC_BPA) || defined(CONFIG_PPC_ISERIES)
 void __init generic_calibrate_decr(void)
 {
        struct device_node *cpu;
-       struct div_result divres;
        unsigned int *fp;
        int node_found;
 
                                "(not found)\n");
 
        of_node_put(cpu);
-
-       printk(KERN_INFO "time_init: decrementer frequency = %lu.%.6lu MHz\n",
-              ppc_tb_freq/1000000, ppc_tb_freq%1000000);
-       printk(KERN_INFO "time_init: processor frequency   = %lu.%.6lu MHz\n",
-              ppc_proc_freq/1000000, ppc_proc_freq%1000000);
-
-       tb_ticks_per_jiffy = ppc_tb_freq / HZ;
-       tb_ticks_per_sec = tb_ticks_per_jiffy * HZ;
-       tb_ticks_per_usec = ppc_tb_freq / 1000000;
-       tb_to_us = mulhwu_scale_factor(ppc_tb_freq, 1000000);
-       div128_by_32(1024*1024, 0, tb_ticks_per_sec, &divres);
-       tb_to_xs = divres.result_low;
 }
-#endif
 
 unsigned long get_boot_time(void)
 {
 
        ppc_md.calibrate_decr();
 
+       printk(KERN_INFO "time_init: decrementer frequency = %lu.%.6lu MHz\n",
+              ppc_tb_freq / 1000000, ppc_tb_freq % 1000000);
+       printk(KERN_INFO "time_init: processor frequency   = %lu.%.6lu MHz\n",
+              ppc_proc_freq / 1000000, ppc_proc_freq % 1000000);
+
+       tb_ticks_per_jiffy = ppc_tb_freq / HZ;
+       tb_ticks_per_sec = tb_ticks_per_jiffy * HZ;
+       tb_ticks_per_usec = ppc_tb_freq / 1000000;
+       tb_to_us = mulhwu_scale_factor(ppc_tb_freq, 1000000);
+       div128_by_32(1024*1024, 0, tb_ticks_per_sec, &res);
+       tb_to_xs = res.result_low;
+
 #ifdef CONFIG_PPC64
        get_paca()->default_decr = tb_ticks_per_jiffy;
 #endif
 
 void __init pmac_calibrate_decr(void)
 {
        struct device_node *cpu;
-       unsigned int freq, *fp;
-       struct div_result divres;
+       unsigned int *fp;
 
        /*
         * The cpu node should have a timebase-frequency property
        fp = (unsigned int *) get_property(cpu, "timebase-frequency", NULL);
        if (fp == 0)
                panic("can't get cpu timebase frequency");
-       freq = *fp;
-       printk("time_init: decrementer frequency = %u.%.6u MHz\n",
-              freq/1000000, freq%1000000);
-       tb_ticks_per_jiffy = freq / HZ;
-       tb_ticks_per_sec = tb_ticks_per_jiffy * HZ;
-       tb_ticks_per_usec = freq / 1000000;
-       tb_to_us = mulhwu_scale_factor(freq, 1000000);
-       div128_by_32( 1024*1024, 0, tb_ticks_per_sec, &divres );
-       tb_to_xs = divres.result_low;
-       ppc_tb_freq = freq;
+       ppc_tb_freq = *fp;
 
        fp = (unsigned int *)get_property(cpu, "clock-frequency", NULL);
        if (fp == 0)