Use devm_clk_get() to make cleanup paths more simple.

Signed-off-by: Jingoo Han <jg1....@samsung.com>
---
 drivers/rtc/rtc-coh901331.c |    7 ++-----
 1 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/rtc/rtc-coh901331.c b/drivers/rtc/rtc-coh901331.c
index c8115b8..2d28ec1a 100644
--- a/drivers/rtc/rtc-coh901331.c
+++ b/drivers/rtc/rtc-coh901331.c
@@ -157,7 +157,6 @@ static int __exit coh901331_remove(struct platform_device 
*pdev)
        if (rtap) {
                rtc_device_unregister(rtap->rtc);
                clk_unprepare(rtap->clk);
-               clk_put(rtap->clk);
                platform_set_drvdata(pdev, NULL);
        }
 
@@ -196,7 +195,7 @@ static int __init coh901331_probe(struct platform_device 
*pdev)
                             "RTC COH 901 331 Alarm", rtap))
                return -EIO;
 
-       rtap->clk = clk_get(&pdev->dev, NULL);
+       rtap->clk = devm_clk_get(&pdev->dev, NULL);
        if (IS_ERR(rtap->clk)) {
                ret = PTR_ERR(rtap->clk);
                dev_err(&pdev->dev, "could not get clock\n");
@@ -207,7 +206,7 @@ static int __init coh901331_probe(struct platform_device 
*pdev)
        ret = clk_prepare_enable(rtap->clk);
        if (ret) {
                dev_err(&pdev->dev, "could not enable clock\n");
-               goto out_no_clk_prepenable;
+               return ret;
        }
        clk_disable(rtap->clk);
 
@@ -224,8 +223,6 @@ static int __init coh901331_probe(struct platform_device 
*pdev)
  out_no_rtc:
        platform_set_drvdata(pdev, NULL);
        clk_unprepare(rtap->clk);
- out_no_clk_prepenable:
-       clk_put(rtap->clk);
        return ret;
 }
 
-- 
1.7.2.5


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to