Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f57bbfb9 authored by Miquel Raynal's avatar Miquel Raynal
Browse files

mtd: rawnand: jz4740: fix probe function error path



An error after nand_scan_tail() should trigger a nand_cleanup(), not a
nand_release() as mtd_device_register() (or one of its variants) has not
been called and there is no need to deregister any MTD device yet.

Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: default avatarBoris Brezillon <boris.brezillon@bootlin.com>
parent 66a38478
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -472,15 +472,15 @@ static int jz_nand_probe(struct platform_device *pdev)


	if (ret) {
	if (ret) {
		dev_err(&pdev->dev, "Failed to add mtd device\n");
		dev_err(&pdev->dev, "Failed to add mtd device\n");
		goto err_nand_release;
		goto err_cleanup_nand;
	}
	}


	dev_info(&pdev->dev, "Successfully registered JZ4740 NAND driver\n");
	dev_info(&pdev->dev, "Successfully registered JZ4740 NAND driver\n");


	return 0;
	return 0;


err_nand_release:
err_cleanup_nand:
	nand_release(mtd);
	nand_cleanup(chip);
err_unclaim_banks:
err_unclaim_banks:
	while (chipnr--) {
	while (chipnr--) {
		unsigned char bank = nand->banks[chipnr];
		unsigned char bank = nand->banks[chipnr];