spi: stm32: return the get_irq error
authorFabien Dessenne <fabien.dessenne@st.com>
Wed, 24 Apr 2019 12:38:44 +0000 (14:38 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 2 May 2019 01:38:41 +0000 (10:38 +0900)
During probe, return the "get_irq" error value instead of -ENOENT. This
allows the driver to be defer probed if needed.

Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
Acked-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-stm32.c

index 4186ed20d7969950358b330dcacb572cf06fbdb9..b222ce8d083effcff4b6d0cc359e903922ca1d44 100644 (file)
@@ -1839,8 +1839,9 @@ static int stm32_spi_probe(struct platform_device *pdev)
 
        spi->irq = platform_get_irq(pdev, 0);
        if (spi->irq <= 0) {
-               dev_err(&pdev->dev, "no irq: %d\n", spi->irq);
-               ret = -ENOENT;
+               ret = spi->irq;
+               if (ret != -EPROBE_DEFER)
+                       dev_err(&pdev->dev, "failed to get irq: %d\n", ret);
                goto err_master_put;
        }
        ret = devm_request_threaded_irq(&pdev->dev, spi->irq,