[U-Boot] AT91: NAND OOB and ECC in U-Boot vs Linux

Nicolas Ferre nicolas.ferre at atmel.com
Wed Mar 18 15:45:32 CET 2009


Jesus Alvarez <jalvarez <at> micromint.com> writes:

> 
> The AT91 Linux kernel patches for versions 2.6.27 or later use a separate
> atmel_nand.c driver that implements some OOB and ECC options that are not
> exactly the same as those in the standard kernel NAND driver (nand_base.c ,
> etc.). AT91 based boards can use the CONFIG_MTD_NAND_ATMEL option to enable
> the atmel_nand driver together with CONFIG_MTD_NAND_ATMEL_ECC_HW,
> CONFIG_MTD_NAND_ATMEL_ECC_SOFT or CONFIG_MTD_NAND_ATMEL_ECC_NONE for the
> desired ECC. The OOB layout used by that driver appears to be different.

CONFIG_MTD_NAND_ATMEL_ECC_SOFT is fully compatible with u-boot management of
NAND flash.
Indeed CONFIG_MTD_NAND_ATMEL_ECC_HW uses a different layout of OOB (ecc just
after data, at bad block notification location). If you use this option in
Linux, you will have to make sure that u-boot supports it.

Regards,




More information about the U-Boot mailing list