On Monday 07 May 2007, David Goodenough wrote: > I also noticed that I was using a version of Yaffs which was not quite > up to date, so downloaded the latest version and in there I saw that > there were two versions of one file which looked relevant. The file > in question is yaffs_mtdif2.c, one copy is in the mail fs/yaffs2 directory > and the other is in a patch directory. Also in the patch directory is > a README which contains the following enigmatic paragraph:- > > "Right now there is only one patched file, yaffs_mtdif2.c. This has been > patched with a tweaked version of "Sergey's patch" and typically makes a > stock mtd work properly." > > Having now real history with Yaffs I do not know what Sergey's patch is, > and whether this version is what I need. Can anyone suggest whether this > is relevant to my situation? If not, can anyone suggest what I should > do in order to achieve my aim of having something that the boot layer can > recognise. > > David > I tried upgrading to the latest Yaffs (from cvs) - no change. So I thought I would try the version of yaffs_mtdif2.c in the patches directory, but it does not compile. I get:- CC fs/yaffs2/yaffs_mtdif2.o fs/yaffs2/yaffs_mtdif2.c: In function 'nandmtd2_pt2buf': fs/yaffs2/yaffs_mtdif2.c:46: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c:47: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c:57: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c:58: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c: In function 'nandmtd2_buf2pt': fs/yaffs2/yaffs_mtdif2.c:84: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c:85: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c:95: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c:96: error: 'struct mtd_info' has no member named 'oobinfo' fs/yaffs2/yaffs_mtdif2.c: In function 'nandmtd2_WriteChunkWithTagsToNAND': fs/yaffs2/yaffs_mtdif2.c:118: error: 'yaffs_Device' has no member named 'nBytesPerChunk' fs/yaffs2/yaffs_mtdif2.c:134: error: 'struct mtd_info' has no member named 'write_ecc' fs/yaffs2/yaffs_mtdif2.c:134: error: 'yaffs_Device' has no member named 'nBytesPerChunk' fs/yaffs2/yaffs_mtdif2.c: In function 'nandmtd2_ReadChunkWithTagsFromNAND': fs/yaffs2/yaffs_mtdif2.c:159: error: 'yaffs_Device' has no member named 'nBytesPerChunk' fs/yaffs2/yaffs_mtdif2.c:170: error: 'struct mtd_info' has no member named 'read_ecc' fs/yaffs2/yaffs_mtdif2.c:170: error: 'yaffs_Device' has no member named 'nBytesPerChunk' fs/yaffs2/yaffs_mtdif2.c:177: error: 'yaffs_Device' has no member named 'nBytesPerChunk' fs/yaffs2/yaffs_mtdif2.c:182: warning: passing argument 3 of 'mtd->read_oob' makes pointer from integer without a cast fs/yaffs2/yaffs_mtdif2.c:182: error: too many arguments to function 'mtd->read_oob' fs/yaffs2/yaffs_mtdif2.c: In function 'nandmtd2_MarkNANDBlockBad': fs/yaffs2/yaffs_mtdif2.c:206: error: 'struct yaffs_DeviceStruct' has no member named 'nBytesPerChunk' fs/yaffs2/yaffs_mtdif2.c: In function 'nandmtd2_QueryNANDBlock': fs/yaffs2/yaffs_mtdif2.c:226: error: 'struct yaffs_DeviceStruct' has no member named 'nBytesPerChunk' make[7]: *** [fs/yaffs2/yaffs_mtdif2.o] Error 1 Any ideas? David