[PATCH] mtd: spi-nor: cqspi: fix error return code in cqspi_probe()
From: Gustavo A. R. Silva
Date: Wed Aug 09 2017 - 12:22:12 EST
platform_get_irq() returns an error code, but the cadence-quadspi
driver ignores it and always returns -ENXIO. This is not correct
and, prevents -EPROBE_DEFER from being propagated properly.
Print and propagate the return value of platform_get_irq on failure.
This issue was detected with the help of Coccinelle.
Signed-off-by: Gustavo A. R. Silva <gustavo@xxxxxxxxxxxxxx>
---
drivers/mtd/spi-nor/cadence-quadspi.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/mtd/spi-nor/cadence-quadspi.c b/drivers/mtd/spi-nor/cadence-quadspi.c
index 53c7d8e..15dacf5 100644
--- a/drivers/mtd/spi-nor/cadence-quadspi.c
+++ b/drivers/mtd/spi-nor/cadence-quadspi.c
@@ -1202,8 +1202,8 @@ static int cqspi_probe(struct platform_device *pdev)
/* Obtain IRQ line. */
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
- dev_err(dev, "Cannot obtain IRQ.\n");
- return -ENXIO;
+ dev_err(dev, "Cannot obtain IRQ: %d\n", irq);
+ return irq;
}
ret = clk_prepare_enable(cqspi->clk);
--
2.5.0