mtd/html/tech nand.html,1.8,1.9

gleixner at infradead.org gleixner at infradead.org
Sun Nov 24 10:45:26 EST 2002


Update of /home/cvs/mtd/html/tech
In directory phoenix.infradead.org:/tmp/cvs-serv25990

Modified Files:
	nand.html 
Log Message:
added section about multiple filesystems

Index: nand.html
===================================================================
RCS file: /home/cvs/mtd/html/tech/nand.html,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- nand.html	13 Nov 2002 19:42:41 -0000	1.8
+++ nand.html	24 Nov 2002 15:45:21 -0000	1.9
@@ -106,7 +106,7 @@
 which contains data, that is less than a page</p>
 <p>At the moment there are only a few filesystems, which support NAND</p>
 <ul>
-<li>JFFS2 for bare NAND Flash and SmartMediaCards </li>
+<li>JFFS2 and YAFFS for bare NAND Flash and SmartMediaCards </li>
 <li>NTFL for DiskOnChip devices </li>
 <li>TRUEFFS from M-Systems for DiskOnChip devices</li>
 <li>SmartMedia DOS-FAT as defined by the SSFDC Forum</li>
@@ -117,9 +117,8 @@
 designed for the usage of DiskOnChip devices. JFFS2 supports raw NAND chips and 
 SmartMediaCards at the moment. A JFFS2 support for DiskOnChip devices, based on the 
 NAND code, is planned. There are some other Open Source projects for NAND filesystem 
-support, but there's no other working solution than JFFS2 at the moment of this writing. 
-One of them is <a href=http://www.aleph1.co.uk/armlinux/projects/yaffs>YAFFS</a>, which is 
-available in a beta version.</p>
+support, but there's no other working solution than JFFS2 and YAFFS at the moment of this writing. 
+YAFFS is available from <a href=http://www.aleph1.co.uk/armlinux/projects/yaffs>YAFFS-Homepage</a></p>
 <p> There is currently no support for the wide spread SmartMedia DOS-FAT filesystem, 
  mainly because it's not a reliable filesystem for industrial usage. It's ok for 
  multimedia applications. The hardware support layer is designed to support an 
@@ -129,6 +128,33 @@
 <p>JFFS2 includes bad block management, wear leveling, error correction and provides 
 a reliable filesystem on top of NAND Flash.</p>
 
+<h2>Multiple filesystems on different partitions</h2>
+<p>This is technical information for filesystem implementation</p>
+<p>The generic NAND driver allows you to mount different filesystems on different partitions
+of the same chip. As the OOB usage of the filesystem differs, the OOB usage can be 
+selected on runtime from the filesystem driver. The parameter is given in the functions
+mtd->read_ecc and mtd->write_ecc. This parameter specifies the location
+of the ECC-data inside the oob area. Currently there are three values supported:
+<ul>
+<li>NAND_NONE_OOB</li>
+<li>NAND_JFFS2_OOB</li>
+<li>NAND_YAFFS_OOB</li>
+</ul>
+NAND_NONE_OOB disables the ECC-calculation of the NAND driver and writes either nothing or an
+OOB buffer, which is supplied by the filesystem driver, to the oob area of the chip. This can 
+be useful, if the filesystem driver does the ECC calculation self or the ECC is not used by 
+the driver. <br>
+NAND_JFFS2_OOB calculates the ECC with the function, which is selected for the chip and places 
+the results in the defined locations for JFFS2. <br>
+NAND_YAFFS_OOB calculates the ECC with the function, which is selected for the chip and places 
+the results in the defined locations for YAFFS. <br>
+</p>
+<p>All non ecc functions like mtd->read and mtd->write default to NAND_NONE_OOB.</p>
+<p>To add a yet unsupported filesystem, the oobconfig array has to be extended and a new selection
+constant has to be defined.</p>
+
+
+<h2>JFFS2 specific information <h2>
 <h3>JFFS2 Out of Band usage</h3>
 
 <h4>Nand chips with 256 byte pagesize and 8 byte OOB size</h4>





More information about the linux-mtd-cvs mailing list