Make sure mode is sane
[yaffs2.git] / Kconfig
diff --git a/Kconfig b/Kconfig
index 075c7c7659b5aecbad4cf8561b7b56040190273a..f314f60073880ae0b72c226d7845ded6380dbc09 100644 (file)
--- a/Kconfig
+++ b/Kconfig
@@ -5,6 +5,9 @@
 config YAFFS_FS
        tristate "YAFFS2 file system support"
        default n
+       depends on MTD
+       select YAFFS_YAFFS1
+       select YAFFS_YAFFS2
        help
          YAFFS2, or Yet Another Flash Filing System, is a filing system
          optimised for NAND Flash chips.
@@ -26,15 +29,6 @@ config YAFFS_YAFFS1
 
          If unsure, say Y.
 
-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_DOES_ECC
        bool "Lets Yaffs do its own ECC"
        depends on YAFFS_FS && YAFFS_YAFFS1
@@ -56,6 +50,61 @@ config YAFFS_ECC_WRONG_ORDER
 
          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_AUTO_YAFFS2
+       bool "Autoselect yaffs2 format"
+       depends on YAFFS_YAFFS2
+       default y
+       help
+         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_DISABLE_LAZY_LOAD
+       bool "Disable lazy loading"
+       depends on YAFFS_YAFFS2
+       default n
+       help
+         "Lazy loading" defers loading file details until they are
+         required. This saves mount time, but makes the first look-up
+         a bit longer.
+
+         Lazy loading will only happen if enabled by this option being 'n'
+         and if the appropriate tags are available, else yaffs2 will
+         automatically fall back to immediate loading and do the right
+         thing.
+
+         Lazy laoding will be required by checkpointing.
+
+         Setting this to 'y' will disable lazy loading.
+
+         If unsure, say N.
+
+config YAFFS_DISABLE_WIDE_TNODES
+       bool "Turn off wide tnodes"
+       depends on YAFFS_FS
+       default n
+       help
+         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.
+
 config YAFFS_DISABLE_CHUNK_ERASED_CHECK
        bool "Turn off debug chunk erase check"
        depends on YAFFS_FS