ARM: 7717/1: mmc: mmci: Use devm_clk_get API
authorUlf Hansson <ulf.hansson@linaro.org>
Mon, 13 May 2013 14:39:17 +0000 (15:39 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 22 May 2013 23:07:00 +0000 (00:07 +0100)
Converting to devm_clk_get simplifies error handling in probe
and we can remove other corresponding calls to clk_put.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/mmc/host/mmci.c

index f4f3038..d57ce43 100644 (file)
@@ -1362,16 +1362,15 @@ static int mmci_probe(struct amba_device *dev,
        dev_dbg(mmc_dev(mmc), "designer ID = 0x%02x\n", host->hw_designer);
        dev_dbg(mmc_dev(mmc), "revision = 0x%01x\n", host->hw_revision);
 
-       host->clk = clk_get(&dev->dev, NULL);
+       host->clk = devm_clk_get(&dev->dev, NULL);
        if (IS_ERR(host->clk)) {
                ret = PTR_ERR(host->clk);
-               host->clk = NULL;
                goto host_free;
        }
 
        ret = clk_prepare_enable(host->clk);
        if (ret)
-               goto clk_free;
+               goto host_free;
 
        host->plat = plat;
        host->variant = variant;
@@ -1576,8 +1575,6 @@ static int mmci_probe(struct amba_device *dev,
        iounmap(host->base);
  clk_disable:
        clk_disable_unprepare(host->clk);
- clk_free:
-       clk_put(host->clk);
  host_free:
        mmc_free_host(mmc);
  rel_regions:
@@ -1623,7 +1620,6 @@ static int mmci_remove(struct amba_device *dev)
 
                iounmap(host->base);
                clk_disable_unprepare(host->clk);
-               clk_put(host->clk);
 
                mmc_free_host(mmc);