+#ifndef CONFIG_YAFFS_USE_OLD_MTD
+ if(data && spare)
+ {
+ if(dev->useNANDECC)
+ {
+ u8 tmpSpare[ YAFFS_BYTES_PER_SPARE + (2*sizeof(int)) ];
+ retval = mtd->read_ecc(mtd,addr,dev->nBytesPerChunk,&dummy,data,tmpSpare,NAND_YAFFS_OOB);
+ memcpy(spareAsBytes, tmpSpare, YAFFS_BYTES_PER_SPARE);
+ }
+ else
+ {
+ retval = mtd->read_ecc(mtd,addr,dev->nBytesPerChunk,&dummy,data,spareAsBytes,NAND_NONE_OOB);
+ }
+ }
+ else
+ {
+#endif