Revert "mtd: mxc_nand: fix 2KiB pagesize NAND on i.MX27"
authorDavid Woodhouse <David.Woodhouse@intel.com>
Tue, 20 Oct 2009 13:02:41 +0000 (22:02 +0900)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Tue, 20 Oct 2009 13:02:41 +0000 (22:02 +0900)
This reverts commit 71b7d0d90d536ae4e70929cc59a1a9f6ba457c6c.

The problem which that commit attempted to fix was a bootloader issue,
which had been misunderstood. The 'fix' causes lots of false bad blocks
for existing users with sane firmware.

Thanks to Mathieu Berland for diagnosing the problem coherently.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/nand/mxc_nand.c

index ef3e1998b5918905a2f41ae10077e39c54d69ddf..06c531485df9519df8a21b2a0ea1209839c7f8fd 100644 (file)
@@ -857,17 +857,6 @@ static void mxc_nand_command(struct mtd_info *mtd, unsigned command,
        }
 }
 
-/* Define some generic bad / good block scan pattern which are used
- * while scanning a device for factory marked good / bad blocks. */
-static uint8_t scan_ff_pattern[] = { 0xff, 0xff };
-
-static struct nand_bbt_descr smallpage_memorybased = {
-       .options = NAND_BBT_SCAN2NDPAGE,
-       .offs = 5,
-       .len = 1,
-       .pattern = scan_ff_pattern
-};
-
 static int __init mxcnd_probe(struct platform_device *pdev)
 {
        struct nand_chip *this;
@@ -984,10 +973,7 @@ static int __init mxcnd_probe(struct platform_device *pdev)
                goto escan;
        }
 
-       if (mtd->writesize == 2048) {
-               host->pagesize_2k = 1;
-               this->badblock_pattern = &smallpage_memorybased;
-       }
+       host->pagesize_2k = (mtd->writesize == 2048) ? 1 : 0;
 
        if (this->ecc.mode == NAND_ECC_HW) {
                switch (mtd->oobsize) {