Re: [PATCH] mtd: spi-nor: cqspi: fix error return code in cqspi_probe()

From: Marek Vasut
Date: Wed Aug 09 2017 - 13:44:03 EST


On 08/09/2017 06:22 PM, Gustavo A. R. Silva wrote:
> 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);

"Cannot obtain IRQ, ret=%i\n" please . It's inobvious what the value
means otherwise.

> + return irq;
> }
>
> ret = clk_prepare_enable(cqspi->clk);
>


--
Best regards,
Marek Vasut