spi: Return deferred probe error when controller isn't yet available
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Sat, 9 Jul 2022 21:29:56 +0000 (00:29 +0300)
committerMark Brown <broonie@kernel.org>
Mon, 11 Jul 2022 11:06:39 +0000 (12:06 +0100)
If the controller is not available, it might be in the future and
we would like to re-probe the peripheral again. For that purpose
return deferred probe.

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=215993
Fixes: 87e59b36e5e2 ("spi: Support selection of the index of the ACPI Spi Resource before alloc")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20220709212956.25530-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi.c

index ebc47f6..2ec508a 100644 (file)
@@ -2475,7 +2475,7 @@ static int acpi_spi_add_resource(struct acpi_resource *ares, void *data)
 
                                ctlr = acpi_spi_find_controller_by_adev(adev);
                                if (!ctlr)
-                                       return -ENODEV;
+                                       return -EPROBE_DEFER;
 
                                lookup->ctlr = ctlr;
                        }