2 # YAFFS file system configurations
6 tristate "YAFFS2 file system support"
12 YAFFS2, or Yet Another Flash Filing System, is a filing system
13 optimised for NAND Flash chips.
15 To compile the YAFFS2 file system support as a module, choose M here:
16 the module will be called yaffs2.
20 Further information on YAFFS2 is available at
21 <http://www.aleph1.co.uk/yaffs/>.
24 bool "512 byte / page devices"
28 Enable YAFFS1 support -- yaffs for 512 byte / page devices
33 bool "Lets Yaffs do its own ECC"
34 depends on YAFFS_FS && YAFFS_YAFFS1
37 This enables Yaffs to use its own ECC functions instead of using
38 the ones from the generic MTD-NAND driver.
42 config YAFFS_ECC_WRONG_ORDER
43 bool "Use the same ecc byte order as Steven Hill's nand_ecc.c"
44 depends on YAFFS_FS && YAFFS_DOES_ECC
47 This makes yaffs_ecc.c use the same ecc byte order as
48 Steven Hill's nand_ecc.c. If not set, then you get the
49 same ecc byte order as SmartMedia.
54 bool "2048 byte (or larger) / page devices"
58 Enable YAFFS2 support -- yaffs for >= 2048 byte / page larger devices
62 config YAFFS_AUTO_YAFFS2
63 bool "Autoselect yaffs2 format"
64 depends on YAFFS_YAFFS2
67 Without this, you need to explicitely use yaffs2 as the file
68 system type. With this, you can say "yaffs" and yaffs or yaffs2
69 will be used depending on the device page size.
73 config YAFFS_DISABLE_LAZY_LOAD
74 bool "Disable lazy loading"
75 depends on YAFFS_YAFFS2
78 "Lazy loading" defers loading file details until they are
79 required. This saves mount time, but makes the first look-up
82 Lazy loading will only happen if enabled by this option being 'n'
83 and if the appropriate tags are available, else yaffs2 will
84 automatically fall back to immediate loading and do the right
87 Lazy laoding will be required by checkpointing.
89 Setting this to 'y' will disable lazy loading.
93 config YAFFS_CHECKPOINT_RESERVED_BLOCKS
94 int "Reserved blocks for checkpointing"
95 depends on YAFFS_YAFFS2
98 Give the number of Blocks to reserve for checkpointing. These Blocks
99 are reserved per partition, so if you have very small partitions the
100 default (10) may be a mess for you.
101 You can set this value to 0, but that does not mean checkpointing is
102 disabled at all. There only won't be any specially reserved blocks for
103 checkpointing, so if there is enough free space on the filesystem,
104 it will be used for checkpointing.
106 If unsure, leave at default (10), but don't wonder if there are always
107 2MB used on your large page device partition (10 x 2k pagesize). When
108 using small partitions or when being very small on space, you probably
109 want to set this to zero.
111 config YAFFS_DISABLE_WIDE_TNODES
112 bool "Turn off wide tnodes"
116 Wide tnodes are only used for large NAND arrays (>=32MB for
117 512-byte page devices and >=128MB for 2k page devices). They use
118 slightly more RAM but are faster since they eliminate chunk group
121 Setting this to 'y' will force tnode width to 16 bits and make
126 config YAFFS_ALWAYS_CHECK_CHUNK_ERASED
127 bool "Force chunk erase check"
131 Normally YAFFS only checks chunks before writing until an erased
132 chunk is found. This helps to detect any partially written chunks
133 that might have happened due to power loss.
135 Enabling this forces on the test that chunks are erased in flash
136 before writing to them. This takes more time but is potentially a
139 Suggest setting Y during development and ironing out driver issues
140 etc. Suggest setting to N if you want faster writing.
144 config YAFFS_SHORT_NAMES_IN_RAM
145 bool "Cache short names in RAM"
149 If this config is set, then short names are stored with the
150 yaffs_Object. This costs an extra 16 bytes of RAM per object,
151 but makes look-ups faster.