X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=yaffs_mtdif.c;h=14876c84206a3b3468544ebf7f543e0dfffc8982;hb=d3a46536d1812c81e1c494235ce8f7e25ebb0e1b;hp=5505d55f9a5aae82c98d8208daf89d0a25ea2141;hpb=3d5f3cc536fd1e1c2ce477c4f3ba5147eb8678be;p=yaffs%2F.git diff --git a/yaffs_mtdif.c b/yaffs_mtdif.c index 5505d55..14876c8 100644 --- a/yaffs_mtdif.c +++ b/yaffs_mtdif.c @@ -13,7 +13,7 @@ * */ -const char *yaffs_mtdif_c_version = "$Id: yaffs_mtdif.c,v 1.5 2002-12-13 00:13:06 charles Exp $"; +const char *yaffs_mtdif_c_version = "$Id: yaffs_mtdif.c,v 1.6 2003-01-14 23:15:32 charles Exp $"; #ifdef CONFIG_YAFFS_MTD_ENABLED @@ -42,11 +42,10 @@ int nandmtd_WriteChunkToNAND(yaffs_Device *dev,int chunkInNAND,const __u8 *data, #ifndef CONFIG_YAFFS_USE_OLD_MTD if(data && spare) { -#ifdef CONFIG_YAFFS_USE_NANDECC - retval = mtd->write_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,spareAsBytes,NAND_YAFFS_OOB); -#else - retval = mtd->write_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,spareAsBytes,NAND_NONE_OOB); -#endif + if(dev->useNANDECC) + mtd->write_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,spareAsBytes,NAND_YAFFS_OOB); + else + mtd->write_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,spareAsBytes,NAND_NONE_OOB); } else { @@ -78,13 +77,16 @@ int nandmtd_ReadChunkFromNAND(yaffs_Device *dev,int chunkInNAND, __u8 *data, yaf #ifndef CONFIG_YAFFS_USE_OLD_MTD if(data && spare) { -#ifdef CONFIG_YAFFS_USE_NANDECC - u8 tmpSpare[ YAFFS_BYTES_PER_SPARE + (2*sizeof(int)) ]; - retval = mtd->read_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,tmpSpare,NAND_YAFFS_OOB); - memcpy(spareAsBytes, tmpSpare, YAFFS_BYTES_PER_SPARE); -#else - retval = mtd->read_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,spareAsBytes,NAND_NONE_OOB); -#endif + if(dev->useNANDECC) + { + u8 tmpSpare[ YAFFS_BYTES_PER_SPARE + (2*sizeof(int)) ]; + retval = mtd->read_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,tmpSpare,NAND_YAFFS_OOB); + memcpy(spareAsBytes, tmpSpare, YAFFS_BYTES_PER_SPARE); + } + else + { + retval = mtd->read_ecc(mtd,addr,YAFFS_BYTES_PER_CHUNK,&dummy,data,spareAsBytes,NAND_NONE_OOB); + } } else {