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

Commit 775a9134 authored by Roger Quadros's avatar Roger Quadros Committed by Brian Norris
Browse files

mtd: nand: omap: Fix NAND enumeration on 3430 LDP



3430LDP has NAND flash with 32 bytes OOB size which is sufficient to hold
BCH8 codes but the small page check introduced in
commit b491da72 ("mtd: nand: omap: clean-up ecc layout for BCH ecc schemes")
considers anything below 64 bytes unsuitable for BCH4/8/16. There is another
bug in that code where it doesn't skip the check for OMAP_ECC_HAM1_CODE_SW.

Get rid of that small page check code as it is insufficient and redundant
because we are checking for OOB available bytes vs ecc layout before calling
nand_scan_tail().

Fixes: b491da72 ("mtd: nand: omap: clean-up ecc layout for BCH ecc schemes")

Reported-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarRoger Quadros <rogerq@ti.com>
Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
parent 641519cb
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -1742,13 +1742,6 @@ static int omap_nand_probe(struct platform_device *pdev)
		goto return_error;
	}

	/* check for small page devices */
	if ((mtd->oobsize < 64) && (pdata->ecc_opt != OMAP_ECC_HAM1_CODE_HW)) {
		dev_err(&info->pdev->dev, "small page devices are not supported\n");
		err = -EINVAL;
		goto return_error;
	}

	/* re-populate low-level callbacks based on xfer modes */
	switch (pdata->xfer_type) {
	case NAND_OMAP_PREFETCH_POLLED: