Add drivers/mtd/README.txt

This commit is contained in:
Gregory Nutt 2013-12-04 07:46:10 -06:00
parent ddcc133368
commit 7711a66347

View File

@ -1352,10 +1352,10 @@ SDRAM Support
NAND Support
============
NAND support is only partial and there is no file system that works with
it properly. It should be considered a work in progress. You will not
want to use NAND unless you are interested in investing a little effort.
See the STATUS section below.
NAND support is only partial in that there is no file system that works
with it properly. It should be considered a work in progress. You will
not want to use NAND unless you are interested in investing a little
effort. See the STATUS section below.
NAND Support
------------
@ -1390,26 +1390,32 @@ NAND Support
Application Configuration -> NSH Library
CONFIG_NSH_ARCHINIT=y : Use architecture-specific initialization
WARNING: This will wipe out everything that you may have on the NAND
FLASH! I have found that using the JTAG with no valid image on NAND
or Serial FLASH is a problem: In that case, the code always ends up
in the SAM-BA bootloader.
NOTES:
The work around for this case is to put the NORBOOT image into Serial
FLASH. Then, the system will boot from Serial FLASH by copying the
NORBOOT image in SRAM which will run and then start the image in NOR
FLASH. See the discussion of the NORBOOT configuration in the
"Creating and Using NORBOOT" section above.
1. WARNING: This will wipe out everything that you may have on the NAND
FLASH! I have found that using the JTAG with no valid image on NAND
or Serial FLASH is a problem: In that case, the code always ends up
in the SAM-BA bootloader.
NOTES: (1) There is jumper on the CM module that must be closed to
enable use of the AT25 Serial Flash. (2) If using SAM-BA, make sure
that you load the NOR boot program into the boot area via the pull-
down menu.
2. Booting from Serial Flash. The work around for this case is to put
the NORBOOT image into Serial FLASH. Then, the system will boot from
Serial FLASH by copying the NORBOOT image in SRAM which will run and
then start the image in NOR FLASH. See the discussion of the NORBOOT
configuration in the "Creating and Using NORBOOT" section above.
NOTE thathere is jumper on the CM module that must be closed to enable
use of the AT25 Serial Flash. Also, if you are using using SAM-BA,
make sure that you load the NOR boot program into the boot area via
the pull-down menu.
3. Unfortunately, there are no appropriate NAND file system in NuttX as
of this writing. The following sections discussion issues/problems
with using NXFFS and FAT.
NXFFS
-----
The NuttX FLASH File System (NXFFS) works will with NOR-like FLASH
The NuttX FLASH File System (NXFFS) works well with NOR-like FLASH
but does not work well with NAND (See comments below under STATUS)
File Systems:
@ -1442,14 +1448,21 @@ NAND Support
Defaults for all other NXFFS settings should be okay.
NOTE: NXFFS will require some significant buffering because of
the large size of the NAND flash blocks. You will also need
to enable SDRAM as described above.
Board Selection
CONFIG_SAMA5_NAND_AUTOMOUNT=y : Enable FS support on NAND
CONFIG_SAMA5_NAND_FTL=y : Use an flash translation layer
NOTE: FTL will require some significant buffering because of
the large size of the NAND flash blocks. You will also need
to enable SDRAM as described above.
SMART FS
--------
Another option is Smart FS. Smart FS is another small file system
designed to work with FLASH. Properties: It does support some wear-
leveling, but like FAT, cannot handle bad blocks.
Using NAND with NXFFS
---------------------
@ -1532,7 +1545,7 @@ NAND Support
You will not that the system comes up immediately because there is not
need to scan the volume in this case..
The NSH 'mkfatfs' command can be used to format a FATfile system on
The NSH 'mkfatfs' command can be used to format a FAT file system on
NAND.
nsh> mkfatfs /dev/mtdblock0
@ -1579,7 +1592,7 @@ NAND Support
perform bad block detection and sparing so that FAT works transparently
on top of the NAND.
Another, less general option would be support bad blocks within FAT.
Another, less general, option would be support bad blocks within FAT.
STATUS
------