@@ -1445,7 +1445,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],
@@ -1453,7 +1453,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;
}
}
@@ -1480,8 +1480,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:
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> --- drivers/mmc/host/sh_mmcif.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)