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

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Wed Mar 18 11:38:11 CET 2009


On 22:41 Tue 17 Mar     , Jesus Alvarez wrote:
> 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.
> 
> The NAND support in U-Boot appears to be based on the standard kernel NAND
> driver without the atmel_nand driver options.
> 
> Could this create the potential for incompatibilities when a NAND filesystem
> is created by U-Boot for mounting from a Linux kernel using the atmel_nand
> driver? Are there any kernel config options to avoid to make filesystems
> initialized with the U-Boot "nand write.jffs2" command fully compatible with
> the kernel MTD NAND drivers?
yes if they do not use the same ECC algo they will see the data corrupted and
they will try to fix it

Best Regards,
J.


More information about the U-Boot mailing list