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

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Mon Dec 15 19:59:08 PST 2014


Gitweb:     http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=775a9134f4398ca98a10af8cc3cf9b664017267f
Commit:     775a9134f4398ca98a10af8cc3cf9b664017267f
Parent:     641519cb61bc766c3b4a70fd9ef14fc9509bf8bf
Author:     Roger Quadros <rogerq at ti.com>
AuthorDate: Wed Nov 19 14:22:23 2014 +0200
Committer:  Brian Norris <computersforpeace at gmail.com>
CommitDate: Tue Nov 25 22:44:10 2014 -0800

    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 b491da7233d5 ("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: b491da7233d5 ("mtd: nand: omap: clean-up ecc layout for BCH ecc schemes")
    
    Reported-by: Tony Lindgren <tony at atomide.com>
    Signed-off-by: Roger Quadros <rogerq at ti.com>
    Signed-off-by: Brian Norris <computersforpeace at gmail.com>
---
 drivers/mtd/nand/omap2.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c
index 1ec0a1d..80250ad 100644
--- a/drivers/mtd/nand/omap2.c
+++ b/drivers/mtd/nand/omap2.c
@@ -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:



More information about the linux-mtd-cvs mailing list