[U-Boot] "UnCorrectable RS-ECC Error" occurs when reading NAND flash under u-boot 2009.08 for i.mx25

dajiang.zhong at tektronix.com dajiang.zhong at tektronix.com
Sat Aug 28 05:35:12 CEST 2010


Hi, every one.
This is my first time of posting a message here, firstly , thanks for any body who builds such a nice platform give help.
In recent two weeks, I added a NAND flash driver support for Micron's MT29F2G08ABD (SLC;page size: x8 2048+64bytes; Block size: 64 pages; Device size: 2Gb) memory chip base on u-boot 2009.08 for i.mx25.  Block Erasing and Page Programming functions worked properly, but when I do page  reading  operation, "UnCorrectable RS-ECC Error" error message prompted.  I checked the NFC (NAND Flash Controller) spare area buffer and found that the 4th 512-byte spare area buffer's data were very weird, there is not any ECC code that should be generated by the FEC but contained the data what I programmed to the memory.
In order to easy to do troubleshooting works,  I make a simply testing process, what I do is, firstly, I only erase page 0 of block 0, and later I program the erased page with a 2k file which consisted of 2048 same character 'E', at last I read the page back , but "UnCorrectable RS-ECC Error" occurs. I pasted the contents of NFC's spare area buffer as following:

bb001000: ffffffff 66ffffff bab935d1 22446bbd    .......f.5...kD"
bb001010: b935d166 ffffffba ffffffff ffffffff    f.5.............
bb001020: 5f7467b9 21650de8 4d97fbd0 3166372c    .gt_..e!...M,7f1
bb001030: 3b7e8bef b1cf62a5 bb8f50f6 de0031b3    ..~;.b...P...1..
bb001040: ffffffff 66ffffff bab935d1 22446bbd    .......f.5...kD"
bb001050: b935d166 ffffffba ffffffff ffffffff    f.5.............
bb001060: bafcf1fa 0c0698ef 09089d72 e6200c80    ........r..... .
bb001070: d638f5ef 20130b40 591dd763 e224f527    ..8. at .. c..Y'.$.
bb001080: ffffffff 66ffffff bab935d1 22446bbd    .......f.5...kD"
bb001090: b935d166 ffffffba ffffffff ffffffff    f.5.............
bb0010a0: 76fa88ba 7a648809 d27bbc43 6b2b81cf    ...v..dzC.{...+k
bb0010b0: f6b95e3b 1286638e 73d324fb 22880ce5    ;^...c...$.s..."
bb0010c0: 45454545 45454545 45454545 45454545    EEEEEEEEEEEEEEEE
bb0010d0: 45454545 45454545 45454545 45454545    EEEEEEEEEEEEEEEE
bb0010e0: 36d8f3d5 0099a9e7 eb289d07 11664624    ...6......(.$Ff.
bb0010f0: 4fbb9f24 505ab041 25ff61f6 43280406    $..OA.ZP.a.%..(C

Contents written in red  characters should be ECC code, but changed to what I programmed to the memory in preverious programming process.
Any advice, please feel free to tell me. Thanks very much in advance.

Thanks & Regards,
Leon Zhong




More information about the U-Boot mailing list