[PATCH] clk: reverse default clk provider initialization order in of_clk_init()

Sylwester Nawrocki s.nawrocki at samsung.com
Thu Mar 27 06:43:32 EDT 2014


This restores the default clocks registration order as parsed from
devicetree, i.e. as before commit 1771b10d605d26ccee771a7fb4b08718
"clk: respect the clock dependencies in of_clk_init", for when there
is no explicit parent clock dependencies between clock providers
specified in the device tree.

It prevents regressions (boot failure, division by 0 errors) on
imx and exynos platforms.

Signed-off-by: Sylwester Nawrocki <s.nawrocki at samsung.com>
---
 drivers/clk/clk.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index 07cba07..c859adf 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -2596,7 +2596,7 @@ void __init of_clk_init(const struct of_device_id *matches)
 
 		parent->clk_init_cb = match->data;
 		parent->np = np;
-		list_add(&parent->node, &clk_provider_list);
+		list_add_tail(&parent->node, &clk_provider_list);
 	}
 
 	while (!list_empty(&clk_provider_list)) {
-- 
1.7.9.5




More information about the linux-arm-kernel mailing list