mtd: rawnand: Allow SDR timings to be nacked
authorMiquel Raynal <miquel.raynal@bootlin.com>
Wed, 5 May 2021 21:37:45 +0000 (23:37 +0200)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Wed, 26 May 2021 08:52:42 +0000 (10:52 +0200)
This should never happen in theory and is probably a controller driver
bug. Anyway it's probably better to bail out at this point if this
happens rather than continuing the boot process.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20210505213750.257417-18-miquel.raynal@bootlin.com
drivers/mtd/nand/raw/nand_base.c

index cfe8257bf17519ea830f90773f0d8dfc0bea307d..e20551cb3ce59201d8bd5b90d45d5b554ab6bb6a 100644 (file)
@@ -952,13 +952,13 @@ int nand_choose_best_sdr_timings(struct nand_chip *chip,
 
                ret = ops->setup_interface(chip, NAND_DATA_IFACE_CHECK_ONLY,
                                           iface);
-               if (!ret)
+               if (!ret) {
+                       chip->best_interface_config = iface;
                        break;
+               }
        }
 
-       chip->best_interface_config = iface;
-
-       return 0;
+       return ret;
 }
 
 /**