diff options
| -rw-r--r-- | drivers/clk/st/clk-flexgen.c | 5 |
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 | ||
| 396 | err: | 398 | err: |
| 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); |
