When platform_get_irq() fails we should propagate the real error value instead of always returning -ENXIO. Cc: Marc Gonzalez <marc_gonzalez@xxxxxxxxxxxxxxxx> Signed-off-by: Fabio Estevam <festevam@xxxxxxxxx> --- drivers/pci/host/pcie-tango.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/pci/host/pcie-tango.c b/drivers/pci/host/pcie-tango.c index e23f738..5196583 100644 --- a/drivers/pci/host/pcie-tango.c +++ b/drivers/pci/host/pcie-tango.c @@ -272,9 +272,9 @@ static int tango_pcie_probe(struct platform_device *pdev) writel_relaxed(0, pcie->base + SMP8759_ENABLE + offset); virq = platform_get_irq(pdev, 1); - if (virq <= 0) { + if (virq < 0) { dev_err(dev, "Failed to map IRQ\n"); - return -ENXIO; + return virq; } irq_dom = irq_domain_create_linear(fwnode, MSI_MAX, &dom_ops, pcie); -- 2.7.4