
I was looking at the DaVinci NAND support in current U-Boot code (i.e. 2009.03 plus patches merged since that release), and am puzzled by the above-named config option.
Before I submit a patch to remove it from U-Boot GIT (nothing there enables it, and it will nastify 4-bit support), I thought I'd see if anyone knows exactly what software it was trying to emulate. Differences from the current NAND driver in GIT:
- Matches MVL 4.0 (2.6.10) and 5.0 (2.6.18) drivers in handling NANDx1ECC registers: 0PQR0stu maps to PsQRtu, while the NAND driver in mainline maps it to ~PQRstu.
- Custom ECC layouts, "not compatible with Linux or RBL/UBL".
- Does some very broken stuff for large page support.
The first of those I can understand; someone wrote some odd and overly-complex ECC code way back, it worked and then got shipped. (Although TI's U-Boot 1.2.0 uses soft ECC, instead...)
The other two look like they were experimental code that should probably not have been merged anywhere...
- Dave