This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM387x ECC

Team,

I'm seeing a little ambiguity regarding NAND ECC support on AM387x between our documents and need a little clarification. Based on the TRM, the AM387x HW supports:

  • SLC and MLC NAND
  • Up to 16 bit BCH

However, based on the PSP wikis, it appears:

  • From the Feature performance guide - The driver only lists SLC as supported.
  • From the Flashing Wiki - The first page needs to be BCH8.

Assuming the first page is BCH8, can the rest of the NAND use BCH16? Is MLC NAND supported in SW?

 

  • Michael,

    I'm not sure about the PSP support. One thing I figured out is that support for BCH16 is not really possible because of the spare area size. In SLC 2k page, 64bytes spare area is available. But the BCH16 algorithm generates 207bits(26 bytes) per 512 bytes. So you need a spare ares size of 104 bytes to store the ECC value. Whereas in case of MLC(4k page) the spare area size is 207 bytes, which is exactly required for BCH16. Hope my explanation makes sense.