clk: zx296718: do not panic on failure
authorShawn Guo <shawn.guo@linaro.org>
Fri, 16 Dec 2016 07:26:45 +0000 (15:26 +0800)
committerStephen Boyd <sboyd@codeaurora.org>
Tue, 10 Jan 2017 00:06:42 +0000 (16:06 -0800)
Instead of using panic, we should give an error message and return error
code when of_clk_add_hw_provider() call fails.

Since we have error prompt for failures, the "init over" pr_info output
isn't really necessary but becomes a debug noise.  So let's clean it up
along the way.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/zte/clk-zx296718.c

index 707d62956e9b50ac7a9b9a85cb5997e48f92a86f..026310708aea18010657d79b1750c38331d3a16b 100644 (file)
@@ -610,9 +610,12 @@ static int __init top_clocks_init(struct device_node *np)
                }
        }
 
-       if (of_clk_add_hw_provider(np, of_clk_hw_onecell_get, &top_hw_onecell_data))
-               panic("could not register clk provider\n");
-       pr_info("top clk init over, nr:%d\n", TOP_NR_CLKS);
+       ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get,
+                                    &top_hw_onecell_data);
+       if (ret) {
+               pr_err("failed to register top clk provider: %d\n", ret);
+               return ret;
+       }
 
        return 0;
 }
@@ -776,9 +779,12 @@ static int __init lsp0_clocks_init(struct device_node *np)
                }
        }
 
-       if (of_clk_add_hw_provider(np, of_clk_hw_onecell_get, &lsp0_hw_onecell_data))
-               panic("could not register clk provider\n");
-       pr_info("lsp0-clk init over:%d\n", LSP0_NR_CLKS);
+       ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get,
+                                    &lsp0_hw_onecell_data);
+       if (ret) {
+               pr_err("failed to register lsp0 clk provider: %d\n", ret);
+               return ret;
+       }
 
        return 0;
 }
@@ -881,9 +887,12 @@ static int __init lsp1_clocks_init(struct device_node *np)
                }
        }
 
-       if (of_clk_add_hw_provider(np, of_clk_hw_onecell_get, &lsp1_hw_onecell_data))
-               panic("could not register clk provider\n");
-       pr_info("lsp1-clk init over, nr:%d\n", LSP1_NR_CLKS);
+       ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get,
+                                    &lsp1_hw_onecell_data);
+       if (ret) {
+               pr_err("failed to register lsp1 clk provider: %d\n", ret);
+               return ret;
+       }
 
        return 0;
 }