diff options
author | Kishon Vijay Abraham I <kishon@ti.com> | 2015-07-31 17:55:10 +0530 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2015-08-11 15:42:47 -0500 |
commit | 0e2bdb0e7abf4b5170874e415ec42df547916dd3 (patch) | |
tree | eb0c2ce93ebcfeb6ec979fe346c3daa97cfd5313 /drivers/pci | |
parent | bc0195aad0daa2ad5b0d76cce22b167bc3435590 (diff) | |
download | linux-0e2bdb0e7abf4b5170874e415ec42df547916dd3.tar.bz2 |
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 <kishon@ti.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Jingoo Han <jingoohan1@gmail.com>
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/host/pci-dra7xx.c | 4 |
1 files changed, 3 insertions, 1 deletions
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: |