2 # yaffs file system configurations
6 tristate "yaffs2 file system support"
12 yaffs2, or Yet Another Flash File System, is a file system
13 optimised for NAND Flash chips.
15 To compile the yaffs2 file system support as a module, choose M
16 here: 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
30 Not needed for 2K-page devices.
34 config YAFFS_9BYTE_TAGS
35 bool "Use older-style on-NAND data format with pageStatus byte"
36 depends on YAFFS_YAFFS1
40 Older-style on-NAND data format has a "pageStatus" byte to record
41 chunk/page state. This byte is zero when the page is discarded.
42 Choose this option if you have existing on-NAND data using this
43 format that you need to continue to support. New data written
44 also uses the older-style format. Note: Use of this option
45 generally requires that MTD's oob layout be adjusted to use the
46 older-style format. See notes on tags formats and MTD versions
52 bool "Lets yaffs do its own ECC"
53 depends on YAFFS_FS && YAFFS_YAFFS1 && !YAFFS_9BYTE_TAGS
56 This enables yaffs to use its own ECC functions instead of using
57 the ones from the generic MTD-NAND driver.
61 config YAFFS_ECC_WRONG_ORDER
62 bool "Use the same ecc byte order as Steven Hill's nand_ecc.c"
63 depends on YAFFS_FS && YAFFS_DOES_ECC && !YAFFS_9BYTE_TAGS
66 This makes yaffs_ecc.c use the same ecc byte order as Steven
67 Hill's nand_ecc.c. If not set, then you get the same ecc byte
73 bool "2048 byte (or larger) / page devices"
77 Enable yaffs2 support -- yaffs for >= 2K bytes per page devices
81 config YAFFS_AUTO_YAFFS2
82 bool "Autoselect yaffs2 format"
83 depends on YAFFS_YAFFS2
86 Without this, you need to explicitely use yaffs2 as the file
87 system type. With this, you can say "yaffs" and yaffs or yaffs2
88 will be used depending on the device page size (yaffs on
89 512-byte page devices, yaffs2 on 2K page devices).
93 config YAFFS_DISABLE_TAGS_ECC
94 bool "Disable yaffs from doing ECC on tags by default"
95 depends on YAFFS_FS && YAFFS_YAFFS2
98 This defaults yaffs to using its own ECC calculations on tags instead of
99 just relying on the MTD.
100 This behavior can also be overridden with tags_ecc_on and
101 tags_ecc_off mount options.
105 config YAFFS_ALWAYS_CHECK_CHUNK_ERASED
106 bool "Force chunk erase check"
110 Normally yaffs only checks chunks before writing until an erased
111 chunk is found. This helps to detect any partially written
112 chunks that might have happened due to power loss.
114 Enabling this forces on the test that chunks are erased in flash
115 before writing to them. This takes more time but is potentially
118 Suggest setting Y during development and ironing out driver
119 issues etc. Suggest setting to N if you want faster writing.
123 config YAFFS_EMPTY_LOST_AND_FOUND
124 bool "Empty lost and found on boot"
128 If this is enabled then the contents of lost and found is
129 automatically dumped at mount.
133 config YAFFS_DISABLE_BLOCK_REFRESHING
134 bool "Disable yaffs2 block refreshing"
138 If this is set, then block refreshing is disabled.
139 Block refreshing infrequently refreshes the oldest block in
140 a yaffs2 file system. This mechanism helps to refresh flash to
141 mitigate against data loss. This is particularly useful for MLC.
145 config YAFFS_DISABLE_BACKGROUND
146 bool "Disable yaffs2 background processing"
150 If this is set, then background processing is disabled.
151 Background processing makes many foreground activities faster.
155 config YAFFS_DISABLE_BAD_BLOCK_MARKING
156 bool "Disable yaffs2 bad block marking"
160 Useful during early flash bring up to prevent problems causing
161 lots of bad block marking.
166 bool "Enable yaffs2 xattr support"
170 If this is set then yaffs2 will provide xattr support.