1# 2# yaffs file system configurations 3# 4 5config YAFFS_FS 6 tristate "yaffs2 file system support" 7 default n 8 depends on MTD_BLOCK 9 select YAFFS_YAFFS1 10 select YAFFS_YAFFS2 11 help 12 yaffs2, or Yet Another Flash File System, is a file system 13 optimised for NAND Flash chips. 14 15 To compile the yaffs2 file system support as a module, choose M 16 here: the module will be called yaffs2. 17 18 If unsure, say N. 19 20 Further information on yaffs2 is available at 21 <http://www.aleph1.co.uk/yaffs/>. 22 23config YAFFS_YAFFS1 24 bool "512 byte / page devices" 25 depends on YAFFS_FS 26 default y 27 help 28 Enable yaffs1 support -- yaffs for 512 byte / page devices 29 30 Not needed for 2K-page devices. 31 32 If unsure, say Y. 33 34config YAFFS_9BYTE_TAGS 35 bool "Use older-style on-NAND data format with pageStatus byte" 36 depends on YAFFS_YAFFS1 37 default n 38 help 39 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 47 in yaffs_mtdif1.c. 48 49 If unsure, say N. 50 51config YAFFS_DOES_ECC 52 bool "Lets yaffs do its own ECC" 53 depends on YAFFS_FS && YAFFS_YAFFS1 && !YAFFS_9BYTE_TAGS 54 default n 55 help 56 This enables yaffs to use its own ECC functions instead of using 57 the ones from the generic MTD-NAND driver. 58 59 If unsure, say N. 60 61config 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 64 default n 65 help 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 68 order as SmartMedia. 69 70 If unsure, say N. 71 72config YAFFS_YAFFS2 73 bool "2048 byte (or larger) / page devices" 74 depends on YAFFS_FS 75 default y 76 help 77 Enable yaffs2 support -- yaffs for >= 2K bytes per page devices 78 79 If unsure, say Y. 80 81config YAFFS_AUTO_YAFFS2 82 bool "Autoselect yaffs2 format" 83 depends on YAFFS_YAFFS2 84 default y 85 help 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). 90 91 If unsure, say Y. 92 93config YAFFS_DISABLE_TAGS_ECC 94 bool "Disable yaffs from doing ECC on tags by default" 95 depends on YAFFS_FS && YAFFS_YAFFS2 96 default n 97 help 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. 102 103 If unsure, say N. 104 105config YAFFS_ALWAYS_CHECK_CHUNK_ERASED 106 bool "Force chunk erase check" 107 depends on YAFFS_FS 108 default n 109 help 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. 113 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 116 a bit more secure. 117 118 Suggest setting Y during development and ironing out driver 119 issues etc. Suggest setting to N if you want faster writing. 120 121 If unsure, say Y. 122 123config YAFFS_EMPTY_LOST_AND_FOUND 124 bool "Empty lost and found on boot" 125 depends on YAFFS_FS 126 default n 127 help 128 If this is enabled then the contents of lost and found is 129 automatically dumped at mount. 130 131 If unsure, say N. 132 133config YAFFS_DISABLE_BLOCK_REFRESHING 134 bool "Disable yaffs2 block refreshing" 135 depends on YAFFS_FS 136 default n 137 help 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. 142 143 If unsure, say N. 144 145config YAFFS_DISABLE_BACKGROUND 146 bool "Disable yaffs2 background processing" 147 depends on YAFFS_FS 148 default n 149 help 150 If this is set, then background processing is disabled. 151 Background processing makes many foreground activities faster. 152 153 If unsure, say N. 154 155config YAFFS_XATTR 156 bool "Enable yaffs2 xattr support" 157 depends on YAFFS_FS 158 default y 159 help 160 If this is set then yaffs2 will provide xattr support. 161 If unsure, say Y. 162