Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph...
[pandora-kernel.git] / arch / mips / ar7 / time.c
index a1fba89..22c9321 100644 (file)
 
 #include <linux/init.h>
 #include <linux/time.h>
+#include <linux/err.h>
+#include <linux/clk.h>
 
 #include <asm/time.h>
 #include <asm/mach-ar7/ar7.h>
 
 void __init plat_time_init(void)
 {
-       mips_hpt_frequency = ar7_cpu_freq() / 2;
+       struct clk *cpu_clk;
+
+       /* Initialize ar7 clocks so the CPU clock frequency is correct */
+       ar7_init_clocks();
+
+       cpu_clk = clk_get(NULL, "cpu");
+       if (IS_ERR(cpu_clk)) {
+               printk(KERN_ERR "unable to get cpu clock\n");
+               return;
+       }
+
+       mips_hpt_frequency = clk_get_rate(cpu_clk) / 2;
 }