Part Number: AM3352
Tool/software: Linux
hi :
sdk version : sdk6
Occasionally found uboot use the following two ways to burn uboot.img:
1,nandecc hw 2
2,nandecc sw
Found that these two ways to read uboot when MLO, it will not even report ecc error.
BCH8 is used in MLO. That means when nandecc sw flashes uboot, there should be ecc error, but no.
So go see the ecc calibration code and find that calibration is related to ELM.
In the calibration code, ecc_code is ecc data stored in oob, and ecc_calc is generated when data in nandflash is read.
Here is just to judge whether the ecc_code is 0xff, and then discarded.
The main operation is to convert the ecc_calc into the ELM_SYNDROME_FRAGMENT_x register, finally through the ELM_ERROR_LOCATION_x register to know the wrong bit and position.
How does ELM know that data has a bit error without requiring ecc data in oob?
Thanks!