
December 10, 2005 Aubrey wrote:
On 12/10/05, Dave Ellis DGE@sixnetio.com wrote:
I think the ECC code used to be broken unless
CONFIG_MTD_NAND_ECC_JFFS2
is set in your board config file.
The macro CONFIG_MTD_NAND_ECC_JFFS2 is there black and white in the file "common/cmd_nand.c". Should I add it again to my board config file?
It used to be commented out. I didn't realize it was fixed a long time ago since somehow the fix didn't make it into my local copy. Sorry for the noise.
On the other hand, If I don't want to work on the JFFS2 system, the macro should be disabled. I mean this macro shouldn't affect the direct read/write operation of the nand driver.
It was broken when I worked on it (several years ago). The non-JFFS2 implementation conflicted with the bad block position set by the NAND manufacturers, so I just made the JFFS2 option work. Richard Woodruff fixed the conflict, but I don't think the present code will use the ECC for non-JFFS2 since eccvalid_pos is -1.
I guess nobody cares, otherwise CONFIG_MTD_NAND_ECC_JFFS2 would be defined in the config files, not in cmd_nand.c.
Anyhow, the ST NAND128W3 worked for me (with JFFS2 ECC) when I added the ids to the header files.
Dave Ellis