There is no check if error occurs in clock provider registration.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Fixes: b228fad50c00 ("clk: s2mps11: Migrate to clk_hw based OF and registration APIs")
Signed-off-by: Aleksandr Aprelkov <aaprelkov@xxxxxxxxxxxx>
---
drivers/clk/clk-s2mps11.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/clk-s2mps11.c b/drivers/clk/clk-s2mps11.c
index 38c456540d1b..f9ce413b6c02 100644
--- a/drivers/clk/clk-s2mps11.c
+++ b/drivers/clk/clk-s2mps11.c
@@ -187,8 +187,10 @@ static int s2mps11_clk_probe(struct platform_device *pdev)
}
clk_data->num = S2MPS11_CLKS_NUM;
- of_clk_add_hw_provider(s2mps11_clks->clk_np, of_clk_hw_onecell_get,
+ ret = of_clk_add_hw_provider(s2mps11_clks->clk_np, of_clk_hw_onecell_get,
clk_data);
+ if (ret < 0)
+ goto err_reg;
platform_set_drvdata(pdev, s2mps11_clks);