mtd: rawnand: fsl_elbc: Let .probe retry if local bus is missing
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Mon, 15 Jan 2024 14:12:46 +0000 (15:12 +0100)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 5 Feb 2024 13:22:16 +0000 (14:22 +0100)
If during probe fsl_lbc_ctrl_dev is NULL that might just be because the
fsl_lbc driver didn't bind yet. So return -EPROBE_DEFER in this case to
make the driver core retry probing later.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20240115141245.3415035-2-u.kleine-koenig@pengutronix.de
drivers/mtd/nand/raw/fsl_elbc_nand.c

index 1e3a80f06f3308c303811cc8d57286124a4ca7bc..df6a0d5c86bb30684124cb21c1dca021866a3c23 100644 (file)
@@ -869,7 +869,8 @@ static int fsl_elbc_nand_probe(struct platform_device *pdev)
        struct mtd_info *mtd;
 
        if (!fsl_lbc_ctrl_dev || !fsl_lbc_ctrl_dev->regs)
-               return -ENODEV;
+               return dev_err_probe(&pdev->dev, -EPROBE_DEFER, "lbc_ctrl_dev missing\n");
+
        lbc = fsl_lbc_ctrl_dev->regs;
        dev = fsl_lbc_ctrl_dev->dev;