Explorar o código

mtd: rawnand: tango: fix probe function error path

An error after nand_scan_tail() should trigger a nand_cleanup().
The helper mtd_device_parse_register() returns an error code that should
be checked and nand_cleanup() called accordingly.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
Miquel Raynal %!s(int64=7) %!d(string=hai) anos
pai
achega
0eaa879be6
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      drivers/mtd/nand/raw/tango_nand.c

+ 3 - 1
drivers/mtd/nand/raw/tango_nand.c

@@ -591,8 +591,10 @@ static int chip_init(struct device *dev, struct device_node *np)
 	tchip->bb_cfg = BB_CFG(mtd->writesize, BBM_SIZE);
 
 	err = mtd_device_register(mtd, NULL, 0);
-	if (err)
+	if (err) {
+		nand_cleanup(chip);
 		return err;
+	}
 
 	nfc->chips[cs] = tchip;