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
============ ============
NAND support is only partial and there is no file system that works with NAND support is only partial in that there is no file system that works
it properly. It should be considered a work in progress. You will not with it properly. It should be considered a work in progress. You will
want to use NAND unless you are interested in investing a little effort. not want to use NAND unless you are interested in investing a little
See the STATUS section below. effort. See the STATUS section below.
NAND Support NAND Support
------------ ------------
@ -1390,26 +1390,32 @@ NAND Support
Application Configuration -> NSH Library Application Configuration -> NSH Library
CONFIG_NSH_ARCHINIT=y : Use architecture-specific initialization CONFIG_NSH_ARCHINIT=y : Use architecture-specific initialization
WARNING: This will wipe out everything that you may have on the NAND NOTES:
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.
The work around for this case is to put the NORBOOT image into Serial 1. WARNING: This will wipe out everything that you may have on the NAND
FLASH. Then, the system will boot from Serial FLASH by copying the FLASH! I have found that using the JTAG with no valid image on NAND
NORBOOT image in SRAM which will run and then start the image in NOR or Serial FLASH is a problem: In that case, the code always ends up
FLASH. See the discussion of the NORBOOT configuration in the in the SAM-BA bootloader.
"Creating and Using NORBOOT" section above.
NOTES: (1) There is jumper on the CM module that must be closed to 2. Booting from Serial Flash. The work around for this case is to put
enable use of the AT25 Serial Flash. (2) If using SAM-BA, make sure the NORBOOT image into Serial FLASH. Then, the system will boot from
that you load the NOR boot program into the boot area via the pull- Serial FLASH by copying the NORBOOT image in SRAM which will run and
down menu. 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 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) but does not work well with NAND (See comments below under STATUS)
File Systems: File Systems:
@ -1442,14 +1448,21 @@ NAND Support
Defaults for all other NXFFS settings should be okay. 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 Board Selection
CONFIG_SAMA5_NAND_AUTOMOUNT=y : Enable FS support on NAND CONFIG_SAMA5_NAND_AUTOMOUNT=y : Enable FS support on NAND
CONFIG_SAMA5_NAND_FTL=y : Use an flash translation layer 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 Using NAND with NXFFS
--------------------- ---------------------
@ -1532,7 +1545,7 @@ NAND Support
You will not that the system comes up immediately because there is not You will not that the system comes up immediately because there is not
need to scan the volume in this case.. 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. NAND.
nsh> mkfatfs /dev/mtdblock0 nsh> mkfatfs /dev/mtdblock0
@ -1579,7 +1592,7 @@ NAND Support
perform bad block detection and sparing so that FAT works transparently perform bad block detection and sparing so that FAT works transparently
on top of the NAND. 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 STATUS
------ ------