Commit | Line | Data |
---|---|---|
1da177e4 | 1 | # drivers/mtd/nand/Kconfig |
61b03bd7 | 2 | # $Id: Kconfig,v 1.35 2005/11/07 11:14:30 gleixner Exp $ |
1da177e4 | 3 | |
ec98c681 | 4 | menuconfig MTD_NAND |
1da177e4 LT |
5 | tristate "NAND Device Support" |
6 | depends on MTD | |
7 | select MTD_NAND_IDS | |
8 | help | |
9 | This enables support for accessing all type of NAND flash | |
10 | devices. For further information see | |
220b0f57 | 11 | <http://www.linux-mtd.infradead.org/doc/nand.html>. |
1da177e4 | 12 | |
ec98c681 JE |
13 | if MTD_NAND |
14 | ||
1da177e4 LT |
15 | config MTD_NAND_VERIFY_WRITE |
16 | bool "Verify NAND page writes" | |
1da177e4 LT |
17 | help |
18 | This adds an extra check when data is written to the flash. The | |
19 | NAND flash device internally checks only bits transitioning | |
20 | from 1 to 0. There is a rare possibility that even though the | |
21 | device thinks the write was successful, a bit could have been | |
09509603 | 22 | flipped accidentally due to device wear or something else. |
1da177e4 | 23 | |
819d6a32 TG |
24 | config MTD_NAND_ECC_SMC |
25 | bool "NAND ECC Smart Media byte order" | |
819d6a32 TG |
26 | default n |
27 | help | |
28 | Software ECC according to the Smart Media Specification. | |
29 | The original Linux implementation had byte 0 and 1 swapped. | |
30 | ||
1cf9827b TG |
31 | config MTD_NAND_MUSEUM_IDS |
32 | bool "Enable chip ids for obsolete ancient NAND devices" | |
33 | depends on MTD_NAND | |
34 | default n | |
35 | help | |
36 | Enable this option only when your board has first generation | |
37 | NAND chips (page size 256 byte, erase size 4-8KiB). The IDs | |
38 | of these chips were reused by later, larger chips. | |
39 | ||
1da177e4 LT |
40 | config MTD_NAND_AUTCPU12 |
41 | tristate "SmartMediaCard on autronix autcpu12 board" | |
ec98c681 | 42 | depends on ARCH_AUTCPU12 |
1da177e4 | 43 | help |
61b03bd7 | 44 | This enables the driver for the autronix autcpu12 board to |
1da177e4 LT |
45 | access the SmartMediaCard. |
46 | ||
47 | config MTD_NAND_EDB7312 | |
48 | tristate "Support for Cirrus Logic EBD7312 evaluation board" | |
ec98c681 | 49 | depends on ARCH_EDB7312 |
1da177e4 | 50 | help |
61b03bd7 | 51 | This enables the driver for the Cirrus Logic EBD7312 evaluation |
1da177e4 LT |
52 | board to access the onboard NAND Flash. |
53 | ||
54 | config MTD_NAND_H1900 | |
55 | tristate "iPAQ H1900 flash" | |
ec98c681 | 56 | depends on ARCH_PXA && MTD_PARTITIONS |
1da177e4 LT |
57 | help |
58 | This enables the driver for the iPAQ h1900 flash. | |
59 | ||
60 | config MTD_NAND_SPIA | |
61 | tristate "NAND Flash device on SPIA board" | |
ec98c681 | 62 | depends on ARCH_P720T |
1da177e4 LT |
63 | help |
64 | If you had to ask, you don't have one. Say 'N'. | |
65 | ||
3d12c0c7 JM |
66 | config MTD_NAND_AMS_DELTA |
67 | tristate "NAND Flash device on Amstrad E3" | |
ec98c681 | 68 | depends on MACH_AMS_DELTA |
3d12c0c7 JM |
69 | help |
70 | Support for NAND flash on Amstrad E3 (Delta). | |
71 | ||
1da177e4 LT |
72 | config MTD_NAND_TOTO |
73 | tristate "NAND Flash device on TOTO board" | |
ec98c681 | 74 | depends on ARCH_OMAP && BROKEN |
1da177e4 LT |
75 | help |
76 | Support for NAND flash on Texas Instruments Toto platform. | |
77 | ||
7d532dd5 LB |
78 | config MTD_NAND_TS7250 |
79 | tristate "NAND Flash device on TS-7250 board" | |
ec98c681 | 80 | depends on MACH_TS72XX |
7d532dd5 LB |
81 | help |
82 | Support for NAND flash on Technologic Systems TS-7250 platform. | |
83 | ||
1da177e4 LT |
84 | config MTD_NAND_IDS |
85 | tristate | |
86 | ||
1da177e4 | 87 | config MTD_NAND_AU1550 |
ef6f0d1f | 88 | tristate "Au1550/1200 NAND support" |
ec98c681 | 89 | depends on SOC_AU1200 || SOC_AU1550 |
1da177e4 LT |
90 | help |
91 | This enables the driver for the NAND flash controller on the | |
92 | AMD/Alchemy 1550 SOC. | |
93 | ||
b37bde14 BW |
94 | config MTD_NAND_BF5XX |
95 | tristate "Blackfin on-chip NAND Flash Controller driver" | |
a25b7fee | 96 | depends on (BF54x || BF52x) && MTD_NAND |
b37bde14 BW |
97 | help |
98 | This enables the Blackfin on-chip NAND flash controller | |
99 | ||
100 | No board specific support is done by this driver, each board | |
101 | must advertise a platform_device for the driver to attach. | |
102 | ||
103 | This driver can also be built as a module. If so, the module | |
104 | will be called bf5xx-nand. | |
105 | ||
106 | config MTD_NAND_BF5XX_HWECC | |
107 | bool "BF5XX NAND Hardware ECC" | |
108 | depends on MTD_NAND_BF5XX | |
109 | help | |
110 | Enable the use of the BF5XX's internal ECC generator when | |
111 | using NAND. | |
112 | ||
1da177e4 LT |
113 | config MTD_NAND_RTC_FROM4 |
114 | tristate "Renesas Flash ROM 4-slot interface board (FROM_BOARD4)" | |
ec98c681 | 115 | depends on SH_SOLUTION_ENGINE |
1da177e4 LT |
116 | select REED_SOLOMON |
117 | select REED_SOLOMON_DEC8 | |
1605cd3d | 118 | select BITREVERSE |
1da177e4 | 119 | help |
61b03bd7 | 120 | This enables the driver for the Renesas Technology AG-AND |
1da177e4 LT |
121 | flash interface board (FROM_BOARD4) |
122 | ||
123 | config MTD_NAND_PPCHAMELEONEVB | |
124 | tristate "NAND Flash device on PPChameleonEVB board" | |
ec98c681 | 125 | depends on PPCHAMELEONEVB && BROKEN |
1da177e4 LT |
126 | help |
127 | This enables the NAND flash driver on the PPChameleon EVB Board. | |
128 | ||
129 | config MTD_NAND_S3C2410 | |
a4f957f1 | 130 | tristate "NAND Flash support for S3C2410/S3C2440 SoC" |
ec98c681 | 131 | depends on ARCH_S3C2410 |
1da177e4 | 132 | help |
a4f957f1 BD |
133 | This enables the NAND flash controller on the S3C2410 and S3C2440 |
134 | SoCs | |
1da177e4 | 135 | |
4992a9e8 | 136 | No board specific support is done by this driver, each board |
61b03bd7 | 137 | must advertise a platform_device for the driver to attach. |
1da177e4 LT |
138 | |
139 | config MTD_NAND_S3C2410_DEBUG | |
140 | bool "S3C2410 NAND driver debug" | |
141 | depends on MTD_NAND_S3C2410 | |
142 | help | |
143 | Enable debugging of the S3C2410 NAND driver | |
144 | ||
145 | config MTD_NAND_S3C2410_HWECC | |
146 | bool "S3C2410 NAND Hardware ECC" | |
147 | depends on MTD_NAND_S3C2410 | |
148 | help | |
149 | Enable the use of the S3C2410's internal ECC generator when | |
150 | using NAND. Early versions of the chip have had problems with | |
151 | incorrect ECC generation, and if using these, the default of | |
152 | software ECC is preferable. | |
153 | ||
ce4c61f1 TG |
154 | config MTD_NAND_NDFC |
155 | tristate "NDFC NanD Flash Controller" | |
62d24d91 | 156 | depends on 4xx && !PPC_MERGE |
418b2e56 | 157 | select MTD_NAND_ECC_SMC |
ce4c61f1 | 158 | help |
02d92918 | 159 | NDFC Nand Flash Controllers are integrated in IBM/AMCC's 4xx SoCs |
ce4c61f1 | 160 | |
d1fef3c5 BD |
161 | config MTD_NAND_S3C2410_CLKSTOP |
162 | bool "S3C2410 NAND IDLE clock stop" | |
163 | depends on MTD_NAND_S3C2410 | |
164 | default n | |
165 | help | |
166 | Stop the clock to the NAND controller when there is no chip | |
167 | selected to save power. This will mean there is a small delay | |
168 | when the is NAND chip selected or released, but will save | |
169 | approximately 5mA of power when there is nothing happening. | |
170 | ||
1da177e4 LT |
171 | config MTD_NAND_DISKONCHIP |
172 | tristate "DiskOnChip 2000, Millennium and Millennium Plus (NAND reimplementation) (EXPERIMENTAL)" | |
ec98c681 | 173 | depends on EXPERIMENTAL |
1da177e4 LT |
174 | select REED_SOLOMON |
175 | select REED_SOLOMON_DEC16 | |
176 | help | |
177 | This is a reimplementation of M-Systems DiskOnChip 2000, | |
178 | Millennium and Millennium Plus as a standard NAND device driver, | |
179 | as opposed to the earlier self-contained MTD device drivers. | |
180 | This should enable, among other things, proper JFFS2 operation on | |
181 | these devices. | |
182 | ||
183 | config MTD_NAND_DISKONCHIP_PROBE_ADVANCED | |
184 | bool "Advanced detection options for DiskOnChip" | |
185 | depends on MTD_NAND_DISKONCHIP | |
186 | help | |
187 | This option allows you to specify nonstandard address at which to | |
188 | probe for a DiskOnChip, or to change the detection options. You | |
189 | are unlikely to need any of this unless you are using LinuxBIOS. | |
190 | Say 'N'. | |
191 | ||
192 | config MTD_NAND_DISKONCHIP_PROBE_ADDRESS | |
193 | hex "Physical address of DiskOnChip" if MTD_NAND_DISKONCHIP_PROBE_ADVANCED | |
194 | depends on MTD_NAND_DISKONCHIP | |
195 | default "0" | |
196 | ---help--- | |
197 | By default, the probe for DiskOnChip devices will look for a | |
198 | DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. | |
199 | This option allows you to specify a single address at which to probe | |
200 | for the device, which is useful if you have other devices in that | |
201 | range which get upset when they are probed. | |
202 | ||
203 | (Note that on PowerPC, the normal probe will only check at | |
204 | 0xE4000000.) | |
205 | ||
206 | Normally, you should leave this set to zero, to allow the probe at | |
207 | the normal addresses. | |
208 | ||
209 | config MTD_NAND_DISKONCHIP_PROBE_HIGH | |
210 | bool "Probe high addresses" | |
211 | depends on MTD_NAND_DISKONCHIP_PROBE_ADVANCED | |
212 | help | |
213 | By default, the probe for DiskOnChip devices will look for a | |
214 | DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. | |
215 | This option changes to make it probe between 0xFFFC8000 and | |
216 | 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be | |
217 | useful to you. Say 'N'. | |
218 | ||
219 | config MTD_NAND_DISKONCHIP_BBTWRITE | |
220 | bool "Allow BBT writes on DiskOnChip Millennium and 2000TSOP" | |
221 | depends on MTD_NAND_DISKONCHIP | |
222 | help | |
223 | On DiskOnChip devices shipped with the INFTL filesystem (Millennium | |
224 | and 2000 TSOP/Alon), Linux reserves some space at the end of the | |
225 | device for the Bad Block Table (BBT). If you have existing INFTL | |
226 | data on your device (created by non-Linux tools such as M-Systems' | |
227 | DOS drivers), your data might overlap the area Linux wants to use for | |
228 | the BBT. If this is a concern for you, leave this option disabled and | |
229 | Linux will not write BBT data into this area. | |
230 | The downside of leaving this option disabled is that if bad blocks | |
231 | are detected by Linux, they will not be recorded in the BBT, which | |
232 | could cause future problems. | |
233 | Once you enable this option, new filesystems (INFTL or others, created | |
234 | in Linux or other operating systems) will not use the reserved area. | |
235 | The only reason not to enable this option is to prevent damage to | |
236 | preexisting filesystems. | |
237 | Even if you leave this disabled, you can enable BBT writes at module | |
238 | load time (assuming you build diskonchip as a module) with the module | |
239 | parameter "inftl_bbt_write=1". | |
1da177e4 | 240 | |
54af6b46 AB |
241 | config MTD_NAND_SHARPSL |
242 | tristate "Support for NAND Flash on Sharp SL Series (C7xx + others)" | |
ec98c681 | 243 | depends on ARCH_PXA |
54af6b46 | 244 | |
67a9c7af TK |
245 | config MTD_NAND_BASLER_EXCITE |
246 | tristate "Support for NAND Flash on Basler eXcite" | |
ec98c681 | 247 | depends on BASLER_EXCITE |
67a9c7af TK |
248 | help |
249 | This enables the driver for the NAND flash device found on the | |
250 | Basler eXcite Smart Camera. If built as a module, the driver | |
251 | will be named "excite_nandflash.ko". | |
252 | ||
c45aa055 | 253 | config MTD_NAND_CAFE |
8c61b7a7 SB |
254 | tristate "NAND support for OLPC CAFÉ chip" |
255 | depends on PCI | |
256 | select REED_SOLOMON | |
257 | select REED_SOLOMON_DEC16 | |
258 | help | |
8f46c527 | 259 | Use NAND flash attached to the CAFÉ chip designed for the OLPC |
8c61b7a7 | 260 | laptop. |
c45aa055 | 261 | |
179fdc3f DW |
262 | config MTD_NAND_CS553X |
263 | tristate "NAND support for CS5535/CS5536 (AMD Geode companion chip)" | |
ec98c681 | 264 | depends on X86_32 && (X86_PC || X86_GENERICARCH) |
f41a5f80 DW |
265 | help |
266 | The CS553x companion chips for the AMD Geode processor | |
267 | include NAND flash controllers with built-in hardware ECC | |
268 | capabilities; enabling this option will allow you to use | |
269 | these. The driver will check the MSRs to verify that the | |
270 | controller is enabled for NAND, and currently requires that | |
271 | the controller be in MMIO mode. | |
272 | ||
273 | If you say "m", the module will be called "cs553x_nand.ko". | |
274 | ||
42cb1403 AV |
275 | config MTD_NAND_AT91 |
276 | bool "Support for NAND Flash / SmartMedia on AT91" | |
ec98c681 | 277 | depends on ARCH_AT91 |
42cb1403 AV |
278 | help |
279 | Enables support for NAND Flash / Smart Media Card interface | |
280 | on Atmel AT91 processors. | |
281 | ||
54d33c4c MR |
282 | config MTD_NAND_CM_X270 |
283 | tristate "Support for NAND Flash on CM-X270 modules" | |
284 | depends on MTD_NAND && MACH_ARMCORE | |
285 | ||
846fc31d EM |
286 | config MTD_NAND_PASEMI |
287 | tristate "NAND support for PA Semi PWRficient" | |
288 | depends on MTD_NAND && PPC_PASEMI | |
289 | help | |
290 | Enables support for NAND Flash interface on PA Semi PWRficient | |
291 | based boards | |
54d33c4c | 292 | |
54af6b46 AB |
293 | config MTD_NAND_NANDSIM |
294 | tristate "Support for NAND Flash Simulator" | |
ec98c681 | 295 | depends on MTD_PARTITIONS |
1da177e4 | 296 | help |
f41a5f80 | 297 | The simulator may simulate various NAND flash chips for the |
1da177e4 | 298 | MTD nand layer. |
54af6b46 | 299 | |
711fdf62 VW |
300 | config MTD_NAND_PLATFORM |
301 | tristate "Support for generic platform NAND driver" | |
302 | depends on MTD_NAND | |
303 | help | |
304 | This implements a generic NAND driver for on-SOC platform | |
305 | devices. You will need to provide platform-specific functions | |
306 | via platform_data. | |
307 | ||
e208520e | 308 | config MTD_ALAUDA |
42265940 | 309 | tristate "MTD driver for Olympus MAUSB-10 and Fujifilm DPC-R1" |
e208520e JE |
310 | depends on MTD_NAND && USB |
311 | help | |
312 | These two (and possibly other) Alauda-based cardreaders for | |
313 | SmartMedia and xD allow raw flash access. | |
711fdf62 | 314 | |
2a1dba29 TP |
315 | config MTD_NAND_ORION |
316 | tristate "NAND Flash support for Marvell Orion SoC" | |
317 | depends on ARCH_ORION && MTD_NAND | |
318 | help | |
319 | This enables the NAND flash controller on Orion machines. | |
320 | ||
321 | No board specific support is done by this driver, each board | |
322 | must advertise a platform_device for the driver to attach. | |
323 | ||
76b10467 SW |
324 | config MTD_NAND_FSL_ELBC |
325 | tristate "NAND support for Freescale eLBC controllers" | |
326 | depends on MTD_NAND && PPC_OF | |
327 | help | |
328 | Various Freescale chips, including the 8313, include a NAND Flash | |
329 | Controller Module with built-in hardware ECC capabilities. | |
330 | Enabling this option will enable you to use this to control | |
331 | external NAND devices. | |
332 | ||
ec98c681 | 333 | endif # MTD_NAND |