Skip to content

Commit 21c04e0

Browse files
committed
Merge branch 'remotes/lorenzo/pci/runtime-pm'
- Fix runtime power management imbalance for cadence, dra7xx, qcom, rcar (Dinghao Liu) * remotes/lorenzo/pci/runtime-pm: PCI: rcar: Fix runtime PM imbalance on error PCI: qcom: Fix runtime PM imbalance on error PCI: cadence: Fix runtime PM imbalance on error PCI: dwc: pci-dra7xx: Fix runtime PM imbalance on error
2 parents a07a20b + a68e06e commit 21c04e0

File tree

4 files changed

+5
-11
lines changed

4 files changed

+5
-11
lines changed

drivers/pci/controller/cadence/pcie-cadence-plat.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,9 +128,8 @@ static int cdns_plat_pcie_probe(struct platform_device *pdev)
128128
}
129129

130130
err_init:
131-
pm_runtime_put_sync(dev);
132-
133131
err_get_sync:
132+
pm_runtime_put_sync(dev);
134133
pm_runtime_disable(dev);
135134
cdns_pcie_disable_phy(cdns_plat_pcie->pcie);
136135
phy_count = cdns_plat_pcie->pcie->phy_count;

drivers/pci/controller/dwc/pci-dra7xx.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -995,9 +995,8 @@ static int __init dra7xx_pcie_probe(struct platform_device *pdev)
995995
return 0;
996996

997997
err_gpio:
998-
pm_runtime_put(dev);
999-
1000998
err_get_sync:
999+
pm_runtime_put(dev);
10011000
pm_runtime_disable(dev);
10021001
dra7xx_pcie_disable_phy(dra7xx);
10031002

drivers/pci/controller/dwc/pcie-qcom.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1382,10 +1382,8 @@ static int qcom_pcie_probe(struct platform_device *pdev)
13821382

13831383
pm_runtime_enable(dev);
13841384
ret = pm_runtime_get_sync(dev);
1385-
if (ret < 0) {
1386-
pm_runtime_disable(dev);
1387-
return ret;
1388-
}
1385+
if (ret < 0)
1386+
goto err_pm_runtime_put;
13891387

13901388
pci->dev = dev;
13911389
pci->ops = &dw_pcie_ops;

drivers/pci/controller/pcie-rcar-host.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -986,7 +986,7 @@ static int rcar_pcie_probe(struct platform_device *pdev)
986986
err = pm_runtime_get_sync(pcie->dev);
987987
if (err < 0) {
988988
dev_err(pcie->dev, "pm_runtime_get_sync failed\n");
989-
goto err_pm_disable;
989+
goto err_pm_put;
990990
}
991991

992992
err = rcar_pcie_get_resources(host);
@@ -1057,8 +1057,6 @@ static int rcar_pcie_probe(struct platform_device *pdev)
10571057

10581058
err_pm_put:
10591059
pm_runtime_put(dev);
1060-
1061-
err_pm_disable:
10621060
pm_runtime_disable(dev);
10631061
pci_free_resource_list(&host->resources);
10641062

0 commit comments

Comments
 (0)