annotate Kconfig @ 309:b21bd2a64496

Add missing function, if only stubs
author charles
date Thu, 08 Oct 2009 02:57:59 +0100
parents 1a531028ad7b
children 5d34d18f33e5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
1 #
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
2 # YAFFS file system configurations
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
3 #
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
4
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
5 config YAFFS_FS
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
6 tristate "YAFFS2 file system support"
55
f79e2c26f741 Add missing default value for some Kconfig's entries.
luc
parents: 52
diff changeset
7 default n
274
1a531028ad7b Fix dependencies in Kconfig
charles
parents: 205
diff changeset
8 depends on MTD_BLOCK
92
31598d35e840 Added some documentation to moduleconfig.h and set it to match the
marty
parents: 64
diff changeset
9 select YAFFS_YAFFS1
31598d35e840 Added some documentation to moduleconfig.h and set it to match the
marty
parents: 64
diff changeset
10 select YAFFS_YAFFS2
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
11 help
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
12 YAFFS2, or Yet Another Flash Filing System, is a filing system
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
13 optimised for NAND Flash chips.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
14
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
15 To compile the YAFFS2 file system support as a module, choose M
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
16 here: the module will be called yaffs2.
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
17
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
18 If unsure, say N.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
19
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
20 Further information on YAFFS2 is available at
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
21 <http://www.aleph1.co.uk/yaffs/>.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
22
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
23 config YAFFS_YAFFS1
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
24 bool "512 byte / page devices"
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
25 depends on YAFFS_FS
55
f79e2c26f741 Add missing default value for some Kconfig's entries.
luc
parents: 52
diff changeset
26 default y
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
27 help
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
28 Enable YAFFS1 support -- yaffs for 512 byte / page devices
205
f95fdc6123fb Cleanup patch - Remove all trailing whitespace and fix a few typos.
wookey
parents: 203
diff changeset
29
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
30 Not needed for 2K-page devices.
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
31
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
32 If unsure, say Y.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
33
185
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
34 config YAFFS_9BYTE_TAGS
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
35 bool "Use older-style on-NAND data format with pageStatus byte"
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
36 depends on YAFFS_YAFFS1
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
37 default n
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
38 help
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
39
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
40 Older-style on-NAND data format has a "pageStatus" byte to record
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
41 chunk/page state. This byte is zero when the page is discarded.
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
42 Choose this option if you have existing on-NAND data using this
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
43 format that you need to continue to support. New data written
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
44 also uses the older-style format. Note: Use of this option
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
45 generally requires that MTD's oob layout be adjusted to use the
190
31b2ee96d3a0 Update comments about use of CONFIG_YAFFS_9BYTE_TAGS option.
imcd
parents: 185
diff changeset
46 older-style format. See notes on tags formats and MTD versions
31b2ee96d3a0 Update comments about use of CONFIG_YAFFS_9BYTE_TAGS option.
imcd
parents: 185
diff changeset
47 in yaffs_mtdif1.c.
185
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
48
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
49 If unsure, say N.
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
50
63
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
51 config YAFFS_DOES_ECC
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
52 bool "Lets Yaffs do its own ECC"
185
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
53 depends on YAFFS_FS && YAFFS_YAFFS1 && !YAFFS_9BYTE_TAGS
63
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
54 default n
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
55 help
63
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
56 This enables Yaffs to use its own ECC functions instead of using
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
57 the ones from the generic MTD-NAND driver.
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
58
63
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
59 If unsure, say N.
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
60
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
61 config YAFFS_ECC_WRONG_ORDER
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
62 bool "Use the same ecc byte order as Steven Hill's nand_ecc.c"
185
fa4e74c5013d Rolling in Ians and other changes
charles
parents: 174
diff changeset
63 depends on YAFFS_FS && YAFFS_DOES_ECC && !YAFFS_9BYTE_TAGS
63
d7b5de6ac891 newconfig: use YAFFS_DOES_ECC instead of USE_NANDECC
luc
parents: 55
diff changeset
64 default n
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
65 help
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
66 This makes yaffs_ecc.c use the same ecc byte order as Steven
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
67 Hill's nand_ecc.c. If not set, then you get the same ecc byte
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
68 order as SmartMedia.
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
69
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
70 If unsure, say N.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
71
64
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
72 config YAFFS_YAFFS2
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
73 bool "2048 byte (or larger) / page devices"
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
74 depends on YAFFS_FS
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
75 default y
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
76 help
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
77 Enable YAFFS2 support -- yaffs for >= 2K bytes per page devices
64
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
78
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
79 If unsure, say Y.
14c997a84f06 Move around the option in Kconfig so that depending stuff are nicely indented.
luc
parents: 63
diff changeset
80
111
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
81 config YAFFS_AUTO_YAFFS2
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
82 bool "Autoselect yaffs2 format"
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
83 depends on YAFFS_YAFFS2
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
84 default y
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
85 help
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
86 Without this, you need to explicitely use yaffs2 as the file
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
87 system type. With this, you can say "yaffs" and yaffs or yaffs2
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
88 will be used depending on the device page size (yaffs on
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
89 512-byte page devices, yaffs2 on 2K page devices).
111
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
90
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
91 If unsure, say Y.
43d9629a47ec Add yaffs2 autoselection
charles
parents: 107
diff changeset
92
125
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
93 config YAFFS_DISABLE_LAZY_LOAD
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
94 bool "Disable lazy loading"
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
95 depends on YAFFS_YAFFS2
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
96 default n
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
97 help
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
98 "Lazy loading" defers loading file details until they are
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
99 required. This saves mount time, but makes the first look-up
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
100 a bit longer.
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
101
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
102 Lazy loading will only happen if enabled by this option being 'n'
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
103 and if the appropriate tags are available, else yaffs2 will
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
104 automatically fall back to immediate loading and do the right
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
105 thing.
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
106
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
107 Lazy laoding will be required by checkpointing.
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
108
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
109 Setting this to 'y' will disable lazy loading.
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
110
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
111 If unsure, say N.
d7d697637ee6 Add lazy loading and mtd depend
charles
parents: 111
diff changeset
112
171
52ba5731a251 Add Phils checkpoint configuration
charles
parents: 148
diff changeset
113
107
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
114 config YAFFS_DISABLE_WIDE_TNODES
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
115 bool "Turn off wide tnodes"
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
116 depends on YAFFS_FS
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
117 default n
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
118 help
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
119 Wide tnodes are only used for NAND arrays >=32MB for 512-byte
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
120 page devices and >=128MB for 2k page devices. They use slightly
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
121 more RAM but are faster since they eliminate chunk group
107
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
122 searching.
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
123
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
124 Setting this to 'y' will force tnode width to 16 bits and save
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
125 memory but make large arrays slower.
107
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
126
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
127 If unsure, say N.
f5445121de97 Hook wide tnode support into Linux
charles
parents: 92
diff changeset
128
148
1d8892b579f5 Better retirement and erasure checking.
charles
parents: 125
diff changeset
129 config YAFFS_ALWAYS_CHECK_CHUNK_ERASED
1d8892b579f5 Better retirement and erasure checking.
charles
parents: 125
diff changeset
130 bool "Force chunk erase check"
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
131 depends on YAFFS_FS
148
1d8892b579f5 Better retirement and erasure checking.
charles
parents: 125
diff changeset
132 default n
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
133 help
148
1d8892b579f5 Better retirement and erasure checking.
charles
parents: 125
diff changeset
134 Normally YAFFS only checks chunks before writing until an erased
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
135 chunk is found. This helps to detect any partially written
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
136 chunks that might have happened due to power loss.
148
1d8892b579f5 Better retirement and erasure checking.
charles
parents: 125
diff changeset
137
1d8892b579f5 Better retirement and erasure checking.
charles
parents: 125
diff changeset
138 Enabling this forces on the test that chunks are erased in flash
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
139 before writing to them. This takes more time but is potentially
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
140 a bit more secure.
205
f95fdc6123fb Cleanup patch - Remove all trailing whitespace and fix a few typos.
wookey
parents: 203
diff changeset
141
174
7d11ae6795e4 normalise licence headers and attributions
wookey
parents: 171
diff changeset
142 Suggest setting Y during development and ironing out driver
205
f95fdc6123fb Cleanup patch - Remove all trailing whitespace and fix a few typos.
wookey
parents: 203
diff changeset
143 issues etc. Suggest setting to N if you want faster writing.
52
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
144
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
145 If unsure, say Y.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
146
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
147 config YAFFS_SHORT_NAMES_IN_RAM
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
148 bool "Cache short names in RAM"
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
149 depends on YAFFS_FS
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
150 default y
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
151 help
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
152 If this config is set, then short names are stored with the
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
153 yaffs_Object. This costs an extra 16 bytes of RAM per object,
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
154 but makes look-ups faster.
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
155
9fff486c54cb Added files that support the ability to "patchin" yaffs2 into the 2.6
marty
parents:
diff changeset
156 If unsure, say Y.