aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArvind Yadav <arvind.yadav.cs@gmail.com>2016-09-19 04:21:24 -0400
committerStephen Boyd <sboyd@codeaurora.org>2016-12-08 19:35:22 -0500
commit16cd77645bddbcee951c63b964f23826dadbfd2e (patch)
treec188fa017b8897c2854964b4defbd2c9fa0ab2c1
parent113ff9c99a6926047e279cdf4479c186b41c5eae (diff)
clk: st: clk-flexgen: Unmap region obtained by of_iomap
Free memory mapping, if probe is not successful. Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
-rw-r--r--drivers/clk/st/clk-flexgen.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/clk/st/clk-flexgen.c b/drivers/clk/st/clk-flexgen.c
index a485f3b284b9..918ba3164da9 100644
--- a/drivers/clk/st/clk-flexgen.c
+++ b/drivers/clk/st/clk-flexgen.c
@@ -329,8 +329,10 @@ static void __init st_of_flexgen_setup(struct device_node *np)
329 return; 329 return;
330 330
331 parents = flexgen_get_parents(np, &num_parents); 331 parents = flexgen_get_parents(np, &num_parents);
332 if (!parents) 332 if (!parents) {
333 iounmap(reg);
333 return; 334 return;
335 }
334 336
335 match = of_match_node(flexgen_of_match, np); 337 match = of_match_node(flexgen_of_match, np);
336 if (match) { 338 if (match) {
@@ -394,6 +396,7 @@ static void __init st_of_flexgen_setup(struct device_node *np)
394 return; 396 return;
395 397
396err: 398err:
399 iounmap(reg);
397 if (clk_data) 400 if (clk_data)
398 kfree(clk_data->clks); 401 kfree(clk_data->clks);
399 kfree(clk_data); 402 kfree(clk_data);