diff options
author | Axel Lin <axel.lin@gmail.com> | 2010-07-01 05:43:50 -0400 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2010-08-12 05:27:23 -0400 |
commit | d2d272a965baeb3d78f843374bc48f0cbce8ac3d (patch) | |
tree | 109894ab5b7a6fc318d28d44d7a06ffcc52d1f07 /drivers/mfd | |
parent | 15742c8a42c89aa5e63542b0de00b0dc4c5038cf (diff) |
mfd: Properly free t7l66xb clk32k clock source
This patch includes below fixes to properly free clk32k clock source:
1. remove a redundant clk_put in t7l66xb_probe error path
2. add missing clk_disable(t7l66xb->clk32k) and clk_put(t7l66xb->clk32k)
to properly free the clock source.
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'drivers/mfd')
-rw-r--r-- | drivers/mfd/t7l66xb.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mfd/t7l66xb.c b/drivers/mfd/t7l66xb.c index 5041d33adf0b..006c121f3f0d 100644 --- a/drivers/mfd/t7l66xb.c +++ b/drivers/mfd/t7l66xb.c | |||
@@ -350,7 +350,6 @@ static int t7l66xb_probe(struct platform_device *dev) | |||
350 | t7l66xb->clk48m = clk_get(&dev->dev, "CLK_CK48M"); | 350 | t7l66xb->clk48m = clk_get(&dev->dev, "CLK_CK48M"); |
351 | if (IS_ERR(t7l66xb->clk48m)) { | 351 | if (IS_ERR(t7l66xb->clk48m)) { |
352 | ret = PTR_ERR(t7l66xb->clk48m); | 352 | ret = PTR_ERR(t7l66xb->clk48m); |
353 | clk_put(t7l66xb->clk32k); | ||
354 | goto err_clk48m_get; | 353 | goto err_clk48m_get; |
355 | } | 354 | } |
356 | 355 | ||
@@ -425,6 +424,8 @@ static int t7l66xb_remove(struct platform_device *dev) | |||
425 | ret = pdata->disable(dev); | 424 | ret = pdata->disable(dev); |
426 | clk_disable(t7l66xb->clk48m); | 425 | clk_disable(t7l66xb->clk48m); |
427 | clk_put(t7l66xb->clk48m); | 426 | clk_put(t7l66xb->clk48m); |
427 | clk_disable(t7l66xb->clk32k); | ||
428 | clk_put(t7l66xb->clk32k); | ||
428 | t7l66xb_detach_irq(dev); | 429 | t7l66xb_detach_irq(dev); |
429 | iounmap(t7l66xb->scr); | 430 | iounmap(t7l66xb->scr); |
430 | release_resource(&t7l66xb->rscr); | 431 | release_resource(&t7l66xb->rscr); |