logo       

Re: Yaffs and MTD: msg#00041

linux.file-systems.yaffs

Subject: Re: Yaffs and MTD

My kernel can cope with both 512 and 2k page NAND. It uses nand_ecc for 2k and yaffs_ecc for 512 for legacy reasons.


if (yaffsVersion == 1 && mtd->oobblock == 2048) {
printk(KERN_INFO "yaffs: auto selecting yaffs2\n");
yaffsVersion = 2;
}

So I add after #ifndef CONFIG_YAFFS_DOES_ECC .. #endif

/* NCB force NANDECC if yaffs2 */
if (yaffsVersion == 2)
dev->useNANDECC = 1;

Better to use a specific CONFIG option probably.

NB to all 2.4.x backporters: I note that the new yaffs_mtdif2.c computes an address to pass to mtd->block_isbad and mtd->block_markbad rather than a block index. This breaks by old 2.4.25 port. Use an if (LINUX_VERSION_CODE ...) round the relevant places and use mtd->block_xxxbad(mtd,blockNo) instead.

Nick


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise