PCI: qcom: Fix runtime PM imbalance on probe errors
authorJohan Hovold <johan+linaro@kernel.org>
Fri, 1 Apr 2022 13:38:53 +0000 (15:38 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jun 2022 08:23:21 +0000 (10:23 +0200)
commit 87d83b96c8d6c6c2d2096bd0bdba73bcf42b8ef0 upstream.

Drop the leftover pm_runtime_disable() calls from the late probe error
paths that would, for example, prevent runtime PM from being reenabled
after a probe deferral.

Link: https://lore.kernel.org/r/20220401133854.10421-2-johan+linaro@kernel.org
Fixes: 6e5da6f7d824 ("PCI: qcom: Fix error handling in runtime PM support")
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
Cc: stable@vger.kernel.org # 4.20
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/pci/controller/dwc/pcie-qcom.c

index 8a7a300..3e7d089 100644 (file)
@@ -1521,17 +1521,14 @@ static int qcom_pcie_probe(struct platform_device *pdev)
        pp->ops = &qcom_pcie_dw_ops;
 
        ret = phy_init(pcie->phy);
-       if (ret) {
-               pm_runtime_disable(&pdev->dev);
+       if (ret)
                goto err_pm_runtime_put;
-       }
 
        platform_set_drvdata(pdev, pcie);
 
        ret = dw_pcie_host_init(pp);
        if (ret) {
                dev_err(dev, "cannot initialize host\n");
-               pm_runtime_disable(&pdev->dev);
                goto err_pm_runtime_put;
        }