Add yaffs2 autoselection
[yaffs2.git] / Kconfig
diff --git a/Kconfig b/Kconfig
index 65958cfedb6f0474083a6bb1a34ed9f26788050e..73e37a09e613bb5f68e68a16728991f595fc7bc1 100644 (file)
--- a/Kconfig
+++ b/Kconfig
@@ -4,6 +4,9 @@
 
 config YAFFS_FS
        tristate "YAFFS2 file system support"
+       default n
+       select YAFFS_YAFFS1
+       select YAFFS_YAFFS2
        help
          YAFFS2, or Yet Another Flash Filing System, is a filing system
          optimised for NAND Flash chips.
@@ -19,38 +22,65 @@ config YAFFS_FS
 config YAFFS_YAFFS1
        bool "512 byte / page devices"
        depends on YAFFS_FS
+       default y
        help
          Enable YAFFS1 support -- yaffs for 512 byte / page devices
 
          If unsure, say Y.
 
+config YAFFS_DOES_ECC
+       bool "Lets Yaffs do its own ECC"
+       depends on YAFFS_FS && YAFFS_YAFFS1
+       default n
+       help
+         This enables Yaffs to use its own ECC functions instead of using
+         the ones from the generic MTD-NAND driver.
+
+         If unsure, say N.
+
+config YAFFS_ECC_WRONG_ORDER
+       bool "Use the same ecc byte order as Steven Hill's nand_ecc.c"
+       depends on YAFFS_FS && YAFFS_DOES_ECC
+       default n
+       help
+         This makes yaffs_ecc.c use the same ecc byte order as
+         Steven Hill's nand_ecc.c. If not set, then you get the
+         same ecc byte order as SmartMedia.
+
+         If unsure, say N.
+
 config YAFFS_YAFFS2
        bool "2048 byte (or larger) / page devices"
        depends on YAFFS_FS
+       default y
        help
          Enable YAFFS2 support -- yaffs for >= 2048 byte / page larger devices
 
          If unsure, say Y.
 
-config YAFFS_USE_NANDECC
-       bool "Use ECC functions of the generic MTD-NAND driver"
-       depends on YAFFS_FS
+config YAFFS_AUTO_YAFFS2
+       bool "Autoselect yaffs2 format"
+       depends on YAFFS_YAFFS2
        default y
        help
-         This enables the ECC functions of the generic MTD-NAND driver.
-         This will not work if you are using the old mtd.
-
-         NB Use NAND ECC does not work at present with yaffsram.
+         Without this, you need to explicitely use yaffs2 as the file
+         system type. With this, you can say "yaffs" and yaffs or yaffs2
+          will be used depending on the device page size.
 
          If unsure, say Y.
 
-config YAFFS_ECC_WRONG_ORDER
-       bool "Use the same ecc byte order as Steven Hill's nand_ecc.c"
-       depends on YAFFS_FS && !YAFFS_USE_NANDECC
+config YAFFS_DISABLE_WIDE_TNODES
+       bool "Turn off wide tnodes"
+       depends on YAFFS_FS
+       default n
        help
-         This makes yaffs_ecc.c use the same ecc byte order as
-         Steven Hill's nand_ecc.c. If not set, then you get the
-         same ecc byte order as SmartMedia.
+         Wide tnodes are only used for large NAND arrays (>=32MB for
+         512-byte page devices and >=128MB for 2k page devices). They use 
+         slightly more RAM but are faster since they eliminate chunk group
+         searching.
+
+         Setting this to 'y' will force tnode width to 16 bits and make
+         large arrays slower.
 
          If unsure, say N.