aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/fsl_ftm_timer.c
diff options
context:
space:
mode:
authorArvind Yadav <arvind.yadav.cs@gmail.com>2017-06-20 07:03:30 -0400
committerDaniel Lezcano <daniel.lezcano@linaro.org>2017-06-27 05:25:39 -0400
commitb70957f656cc070eaaac60b00dca5b40967cb8d6 (patch)
tree3b04e1a85ddce8e11523f75994b11c1d933539aa /drivers/clocksource/fsl_ftm_timer.c
parent6ec8be251fb445dcc43086a485fec1b2708c09da (diff)
clocksource/drivers/fsl_ftm_timer: Unmap region obtained by of_iomap
In case of error at init time, rollback iomapping. Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Diffstat (limited to 'drivers/clocksource/fsl_ftm_timer.c')
-rw-r--r--drivers/clocksource/fsl_ftm_timer.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/clocksource/fsl_ftm_timer.c b/drivers/clocksource/fsl_ftm_timer.c
index 3121e2d96c91..3ee7e6fea621 100644
--- a/drivers/clocksource/fsl_ftm_timer.c
+++ b/drivers/clocksource/fsl_ftm_timer.c
@@ -329,13 +329,13 @@ static int __init ftm_timer_init(struct device_node *np)
329 priv->clkevt_base = of_iomap(np, 0); 329 priv->clkevt_base = of_iomap(np, 0);
330 if (!priv->clkevt_base) { 330 if (!priv->clkevt_base) {
331 pr_err("ftm: unable to map event timer registers\n"); 331 pr_err("ftm: unable to map event timer registers\n");
332 goto err; 332 goto err_clkevt;
333 } 333 }
334 334
335 priv->clksrc_base = of_iomap(np, 1); 335 priv->clksrc_base = of_iomap(np, 1);
336 if (!priv->clksrc_base) { 336 if (!priv->clksrc_base) {
337 pr_err("ftm: unable to map source timer registers\n"); 337 pr_err("ftm: unable to map source timer registers\n");
338 goto err; 338 goto err_clksrc;
339 } 339 }
340 340
341 ret = -EINVAL; 341 ret = -EINVAL;
@@ -366,6 +366,10 @@ static int __init ftm_timer_init(struct device_node *np)
366 return 0; 366 return 0;
367 367
368err: 368err:
369 iounmap(priv->clksrc_base);
370err_clksrc:
371 iounmap(priv->clkevt_base);
372err_clkevt:
369 kfree(priv); 373 kfree(priv);
370 return ret; 374 return ret;
371} 375}