From: Kishon Vijay Abraham I Date: Fri, 31 Jul 2015 12:25:10 +0000 (+0530) Subject: PCI: dra7xx: Disable pm_runtime on get_sync failure X-Git-Tag: v4.3-rc1~145^2~2^2~4 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=0e2bdb0e7abf4b5170874e415ec42df547916dd3;p=karo-tx-linux.git PCI: dra7xx: Disable pm_runtime on get_sync failure Fix the error handling when pm_runtime_get_sync() fails. If pm_runtime_get_sync() fails, call pm_runtime_disable() so there are no unbalanced pm_runtime_enable() calls. Signed-off-by: Kishon Vijay Abraham I Signed-off-by: Bjorn Helgaas Reviewed-by: Jingoo Han --- diff --git a/drivers/pci/host/pci-dra7xx.c b/drivers/pci/host/pci-dra7xx.c index 80db09e47800..d8b6d66b95b7 100644 --- a/drivers/pci/host/pci-dra7xx.c +++ b/drivers/pci/host/pci-dra7xx.c @@ -384,7 +384,7 @@ static int __init dra7xx_pcie_probe(struct platform_device *pdev) ret = pm_runtime_get_sync(dev); if (IS_ERR_VALUE(ret)) { dev_err(dev, "pm_runtime_get_sync failed\n"); - goto err_phy; + goto err_get_sync; } reg = dra7xx_pcie_readl(dra7xx, PCIECTRL_DRA7XX_CONF_DEVICE_CMD); @@ -401,6 +401,8 @@ static int __init dra7xx_pcie_probe(struct platform_device *pdev) err_add_port: pm_runtime_put(dev); + +err_get_sync: pm_runtime_disable(dev); err_phy: