| From 885199148442f56b880995d703d2ed03b6481a3c Mon Sep 17 00:00:00 2001 |
| From: David Engraf <david.engraf@sysgo.com> |
| Date: Mon, 16 Dec 2019 12:18:25 +0100 |
| Subject: PCI: tegra: Fix return value check of pm_runtime_get_sync() |
| |
| From: David Engraf <david.engraf@sysgo.com> |
| |
| commit 885199148442f56b880995d703d2ed03b6481a3c upstream. |
| |
| pm_runtime_get_sync() returns the device's usage counter. This might |
| be >0 if the device is already powered up or CONFIG_PM is disabled. |
| |
| Abort probe function on real error only. |
| |
| Fixes: da76ba50963b ("PCI: tegra: Add power management support") |
| Link: https://lore.kernel.org/r/20191216111825.28136-1-david.engraf@sysgo.com |
| Signed-off-by: David Engraf <david.engraf@sysgo.com> |
| Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> |
| Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> |
| Acked-by: Andrew Murray <andrew.murray@arm.com> |
| Cc: stable@vger.kernel.org # v4.17+ |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/pci/controller/pci-tegra.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/pci/controller/pci-tegra.c |
| +++ b/drivers/pci/controller/pci-tegra.c |
| @@ -2398,7 +2398,7 @@ static int tegra_pcie_probe(struct platf |
| |
| pm_runtime_enable(pcie->dev); |
| err = pm_runtime_get_sync(pcie->dev); |
| - if (err) { |
| + if (err < 0) { |
| dev_err(dev, "fail to enable pcie controller: %d\n", err); |
| goto teardown_msi; |
| } |