OSDN Git Service

PCI: artpec6: Fix platform_get_irq() error handling
authorFabio Estevam <fabio.estevam@nxp.com>
Thu, 31 Aug 2017 17:52:04 +0000 (14:52 -0300)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 5 Sep 2017 18:32:10 +0000 (13:32 -0500)
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>
Acked-by: Niklas Cassel <niklas.cassel@axis.com>
drivers/pci/dwc/pcie-artpec6.c

index 01c6f78..d8782c1 100644 (file)
@@ -207,9 +207,9 @@ static int artpec6_add_pcie_port(struct artpec6_pcie *artpec6_pcie,
 
        if (IS_ENABLED(CONFIG_PCI_MSI)) {
                pp->msi_irq = platform_get_irq_byname(pdev, "msi");
-               if (pp->msi_irq <= 0) {
+               if (pp->msi_irq < 0) {
                        dev_err(dev, "failed to get MSI irq\n");
-                       return -ENODEV;
+                       return pp->msi_irq;
                }
 
                ret = devm_request_irq(dev, pp->msi_irq,