On Tue, 2011-07-12 at 12:48 +0800, b35...@freescale.com wrote: > + /* > + * Hack for supporting the flash chip whose writesize is > + * larger than 2K bytes. > + */ > + if (mtd->writesize > 2048) { > + elbc_fcm_ctrl->subpage_shift = ffs(mtd->writesize >> 11) - 1; > + elbc_fcm_ctrl->subpage_mask = > + (1 << elbc_fcm_ctrl->subpage_shift) - 1; > + /* > + * Rewrite mtd->writesize, mtd->oobsize, chip->page_shift > + * and chip->pagemask. > + */ > + mtd->writesize = 2048; > + mtd->oobsize = 64; > + chip->page_shift = ffs(mtd->writesize) - 1; > + chip->pagemask = (chip->chipsize >> chip->page_shift) - 1; > + }
So basically if the flash has 4KiB NAND pages, you are considering it as a flash with 2KiB NAND pages. But surely this will work only if the underlying flash has NOP 2 at least. Or even, if you consider that JFFS2 and YAFFS want to write to OOB, you need NOP 4 (2 ECC writes and 2 writes from YAFFS/JFFS2) ? So this won't work for NOP1 flashes? Isn't it an ugly hack? -- Best Regards, Artem Bityutskiy _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev