summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorFabio Estevam <fabio.estevam@nxp.com>2017-08-31 14:52:07 -0300
committerBjorn Helgaas <bhelgaas@google.com>2017-09-05 13:36:28 -0500
commitef75369a5b9afc8b45456218790f0f12906b7065 (patch)
treeec3c0a57e7a119e8d46cb266814639d2d662b077 /drivers
parentbfdbbf0e3c2a6e3fe752e0dc858c982aa1ccecad (diff)
downloadlinux-rpi-ef75369a5b9afc8b45456218790f0f12906b7065.tar.gz
linux-rpi-ef75369a5b9afc8b45456218790f0f12906b7065.tar.bz2
linux-rpi-ef75369a5b9afc8b45456218790f0f12906b7065.zip
PCI: altera: Fix platform_get_irq() error handling
platform_get_irq() returns a negative number on failure, so adjust the logic to detect such condition and propagate the real error value on failure. Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Cc: Ley Foon Tan <lftan@altera.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/pci/host/pcie-altera-msi.c4
-rw-r--r--drivers/pci/host/pcie-altera.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/pci/host/pcie-altera-msi.c b/drivers/pci/host/pcie-altera-msi.c
index 2864030789f0..d8141f4865de 100644
--- a/drivers/pci/host/pcie-altera-msi.c
+++ b/drivers/pci/host/pcie-altera-msi.c
@@ -265,9 +265,9 @@ static int altera_msi_probe(struct platform_device *pdev)
return ret;
msi->irq = platform_get_irq(pdev, 0);
- if (msi->irq <= 0) {
+ if (msi->irq < 0) {
dev_err(&pdev->dev, "failed to map IRQ: %d\n", msi->irq);
- ret = -ENODEV;
+ ret = msi->irq;
goto err;
}
diff --git a/drivers/pci/host/pcie-altera.c b/drivers/pci/host/pcie-altera.c
index 6fced590eb87..b468b8cccf8d 100644
--- a/drivers/pci/host/pcie-altera.c
+++ b/drivers/pci/host/pcie-altera.c
@@ -558,9 +558,9 @@ static int altera_pcie_parse_dt(struct altera_pcie *pcie)
/* setup IRQ */
pcie->irq = platform_get_irq(pdev, 0);
- if (pcie->irq <= 0) {
+ if (pcie->irq < 0) {
dev_err(dev, "failed to get IRQ: %d\n", pcie->irq);
- return -EINVAL;
+ return pcie->irq;
}
irq_set_chained_handler_and_data(pcie->irq, altera_pcie_isr, pcie);