
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?
Thanks, Jesus Alvarez