| From a245390905a40530c320d08a968617a53237a8fe Mon Sep 17 00:00:00 2001 |
| From: Ben Dooks <ben.dooks@codethink.co.uk> |
| Date: Wed, 4 Jun 2014 12:42:12 +0100 |
| Subject: mmc: sh-mmcif: no need to call pm_runtime_suspend on error |
| |
| The pm_runtime call should implicitly disable the device once the |
| probe is over if there is no explicit reference gained. There is no |
| need to call pm_runtime_suspend() before the pm_runtime_disable() |
| call. |
| |
| Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> |
| Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> |
| (cherry picked from commit 17ec61c8e8dd656647b50b1db1e223c02fb051a6) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| drivers/mmc/host/sh_mmcif.c | 6 ++---- |
| 1 file changed, 2 insertions(+), 4 deletions(-) |
| |
| diff --git a/drivers/mmc/host/sh_mmcif.c b/drivers/mmc/host/sh_mmcif.c |
| index a0776cec070c..80e200e59dda 100644 |
| --- a/drivers/mmc/host/sh_mmcif.c |
| +++ b/drivers/mmc/host/sh_mmcif.c |
| @@ -1444,7 +1444,7 @@ static int sh_mmcif_probe(struct platform_device *pdev) |
| sh_mmcif_irqt, 0, name, host); |
| if (ret) { |
| dev_err(&pdev->dev, "request_irq error (%s)\n", name); |
| - goto err_irq; |
| + goto err_clk; |
| } |
| if (irq[1] >= 0) { |
| ret = devm_request_threaded_irq(&pdev->dev, irq[1], |
| @@ -1452,7 +1452,7 @@ static int sh_mmcif_probe(struct platform_device *pdev) |
| 0, "sh_mmc:int", host); |
| if (ret) { |
| dev_err(&pdev->dev, "request_irq error (sh_mmc:int)\n"); |
| - goto err_irq; |
| + goto err_clk; |
| } |
| } |
| |
| @@ -1479,8 +1479,6 @@ static int sh_mmcif_probe(struct platform_device *pdev) |
| |
| emmcaddh: |
| erqcd: |
| -err_irq: |
| - pm_runtime_suspend(&pdev->dev); |
| err_clk: |
| clk_disable_unprepare(host->hclk); |
| err_pm: |
| -- |
| 2.1.2 |
| |