ARM: imx6q: call of_clk_init() to register fixed rate clocks
authorShawn Guo <shawn.guo@linaro.org>
Mon, 20 May 2013 14:39:19 +0000 (22:39 +0800)
committerShawn Guo <shawn.guo@linaro.org>
Mon, 17 Jun 2013 07:45:14 +0000 (15:45 +0800)
As the fixed rate clocks are defined in device tree, we can just call
of_clk_init() to register them.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
arch/arm/mach-imx/clk-imx6q.c

index 0bc3ea20cec7dcf9daaf4114a27a3b422b720c62..80d350b814d73e94357afa55a3742d83d81bf41b 100644 (file)
@@ -276,21 +276,12 @@ int __init mx6q_clocks_init(void)
        void __iomem *base;
        int i, irq;
 
-       clk[dummy] = imx_clk_fixed("dummy", 0);
+       of_clk_init(NULL);
 
-       /* retrieve the freqency of fixed clocks from device tree */
-       for_each_compatible_node(np, NULL, "fixed-clock") {
-               u32 rate;
-               if (of_property_read_u32(np, "clock-frequency", &rate))
-                       continue;
-
-               if (of_device_is_compatible(np, "fsl,imx-ckil"))
-                       clk[ckil] = imx_clk_fixed("ckil", rate);
-               else if (of_device_is_compatible(np, "fsl,imx-ckih1"))
-                       clk[ckih] = imx_clk_fixed("ckih", rate);
-               else if (of_device_is_compatible(np, "fsl,imx-osc"))
-                       clk[osc] = imx_clk_fixed("osc", rate);
-       }
+       clk[dummy] = imx_clk_fixed("dummy", 0);
+       clk[ckil] = imx_obtain_fixed_clock("ckil", 0);
+       clk[ckih] = imx_obtain_fixed_clock("ckih1", 0);
+       clk[osc] = imx_obtain_fixed_clock("osc", 0);
 
        np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-anatop");
        base = of_iomap(np, 0);