These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / clk / socfpga / clk-pll.c
index de6da95..c7f4631 100644 (file)
@@ -15,8 +15,7 @@
  * Based from clk-highbank.c
  *
  */
-#include <linux/clk.h>
-#include <linux/clkdev.h>
+#include <linux/slab.h>
 #include <linux/clk-provider.h>
 #include <linux/io.h>
 #include <linux/of.h>
@@ -92,7 +91,6 @@ static __init struct clk *__socfpga_pll_init(struct device_node *node,
        struct clk_init_data init;
        struct device_node *clkmgr_np;
        int rc;
-       int i = 0;
 
        of_property_read_u32(node, "reg", &reg);
 
@@ -111,11 +109,7 @@ static __init struct clk *__socfpga_pll_init(struct device_node *node,
        init.ops = ops;
        init.flags = 0;
 
-       while (i < SOCFPGA_MAX_PARENTS && (parent_name[i] =
-                       of_clk_get_parent_name(node, i)) != NULL)
-               i++;
-
-       init.num_parents = i;
+       init.num_parents = of_clk_parent_fill(node, parent_name, SOCFPGA_MAX_PARENTS);
        init.parent_names = parent_name;
        pll_clk->hw.hw.init = &init;