Digi 9P 9360/9750 Network Card User Manual


 
57
Root File System Types
JFFS2
JFFS is a log-structured journaling flash file system which was designed to be used on
Flash devices in embedded systems. It was originally developed for the 2.0 kernel by Axis
Communications. JFFS2 is an improved version of JFFS which includes compression and
improved read/write access.
Find more about JFFS2 at http://sourceware.org/jffs2
NAND chips are not guaranteed to be error free and most chips have bad blocks.
Therefore, U-Boot as well as Linux has to know how to handle these bad blocks. Both use
JFFS2 for this purpose.
U-boot provides the commands "nand read.jffs2.s" and "nand write.jffs2". Both
commands are skipping bad blocks. Therefore, there must be some space left for reserve
blocks. In U-Boot you can run the "nand bad" command for a summary of known bad
blocks on the flash device.
In Linux a JFFS2 driver for NOR and NAND chips can be used.
If a jffs2 image should be copied to a partition it must be ensured that the image was
created with the correct erase size of the used chip. Otherwise Linux will print error
messages on the screen.
To reduce memory allocation Linux uses a virtual erase size if the physical erase size of
the chip is to small. A message like the one below may be printed on the console
Another message which could be printed on the console is
This message doesn't indicate a problem. Instead, it is printed if a block of data is partially
written. These messages will disappear when the garbage collection restructures the
remaining space
jffs2: Erase block size too small (XXKiB. Using virtual blocks size(XXKiB)
instead
Empty flash at 0xXXXXXXXX ends at 0xXXXXXXXX