blob: 2a4d55e4b3628b7437fb82d7d51a929c92cf79e2 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001menu "Self-contained MTD device drivers"
2 depends on MTD!=n
Richard Weinberger9310da02012-02-07 01:22:50 +01003 depends on HAS_IOMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -07004
5config MTD_PMC551
6 tristate "Ramix PMC551 PCI Mezzanine RAM card support"
Jan Engelhardtec98c682007-04-19 16:21:41 -05007 depends on PCI
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 ---help---
9 This provides a MTD device driver for the Ramix PMC551 RAM PCI card
10 from Ramix Inc. <http://www.ramix.com/products/memory/pmc551.html>.
11 These devices come in memory configurations from 32M - 1G. If you
12 have one, you probably want to enable this.
13
14 If this driver is compiled as a module you get the ability to select
15 the size of the aperture window pointing into the devices memory.
16 What this means is that if you have a 1G card, normally the kernel
17 will use a 1G memory map as its view of the device. As a module,
18 you can select a 1M window into the memory and the driver will
19 "slide" the window around the PMC551's memory. This was
20 particularly useful on the 2.2 kernels on PPC architectures as there
21 was limited kernel space to deal with.
22
23config MTD_PMC551_BUGFIX
24 bool "PMC551 256M DRAM Bugfix"
25 depends on MTD_PMC551
26 help
27 Some of Ramix's PMC551 boards with 256M configurations have invalid
28 column and row mux values. This option will fix them, but will
29 break other memory configurations. If unsure say N.
30
31config MTD_PMC551_DEBUG
32 bool "PMC551 Debugging"
33 depends on MTD_PMC551
34 help
35 This option makes the PMC551 more verbose during its operation and
36 is only really useful if you are developing on this driver or
37 suspect a possible hardware or driver bug. If unsure say N.
38
39config MTD_MS02NV
40 tristate "DEC MS02-NV NVRAM module support"
Jan Engelhardtec98c682007-04-19 16:21:41 -050041 depends on MACH_DECSTATION
Linus Torvalds1da177e2005-04-16 15:20:36 -070042 help
43 This is an MTD driver for the DEC's MS02-NV (54-20948-01) battery
44 backed-up NVRAM module. The module was originally meant as an NFS
45 accelerator. Say Y here if you have a DECstation 5000/2x0 or a
46 DECsystem 5900 equipped with such a module.
47
Martin Michlmayrbe21ce12006-03-20 04:40:26 +000048 If you want to compile this driver as a module ( = code which can be
49 inserted in and removed from the running kernel whenever you want),
Alexander E. Patrakov39f5fb32007-03-16 18:28:43 +050050 say M here and read <file:Documentation/kbuild/modules.txt>.
Pavel Machek4737f092009-06-05 00:44:53 +020051 The module will be called ms02-nv.
Martin Michlmayrbe21ce12006-03-20 04:40:26 +000052
David Brownell1d6432f2006-01-08 13:34:22 -080053config MTD_DATAFLASH
54 tristate "Support for AT45xxx DataFlash"
Kees Cooka11ed372012-10-02 11:17:51 -070055 depends on SPI_MASTER
David Brownell1d6432f2006-01-08 13:34:22 -080056 help
57 This enables access to AT45xxx DataFlash chips, using SPI.
58 Sometimes DataFlash chips are packaged inside MMC-format
59 cards; at this writing, the MMC stack won't handle those.
60
David Brownell8c640382008-08-06 21:55:14 -070061config MTD_DATAFLASH_WRITE_VERIFY
62 bool "Verify DataFlash page writes"
63 depends on MTD_DATAFLASH
64 help
65 This adds an extra check when data is written to the flash.
66 It may help if you are verifying chip setup (timings etc) on
67 your board. There is a rare possibility that even though the
68 device thinks the write was successful, a bit could have been
69 flipped accidentally due to device wear or something else.
70
David Brownell34a82442008-07-30 12:35:05 -070071config MTD_DATAFLASH_OTP
72 bool "DataFlash OTP support (Security Register)"
73 depends on MTD_DATAFLASH
David Brownell34a82442008-07-30 12:35:05 -070074 help
75 Newer DataFlash chips (revisions C and D) support 128 bytes of
76 one-time-programmable (OTP) data. The first half may be written
77 (once) with up to 64 bytes of data, such as a serial number or
78 other key product data. The second half is programmed with a
79 unique-to-each-chip bit pattern at the factory.
80
Mike Lavender2f9f7622006-01-08 13:34:27 -080081config MTD_M25P80
David Brownellfa0a8c72007-06-24 15:12:35 -070082 tristate "Support most SPI Flash chips (AT26DF, M25P, W25X, ...)"
Kees Cooka11ed372012-10-02 11:17:51 -070083 depends on SPI_MASTER
Mike Lavender2f9f7622006-01-08 13:34:27 -080084 help
David Brownellfa0a8c72007-06-24 15:12:35 -070085 This enables access to most modern SPI flash chips, used for
86 program and data storage. Series supported include Atmel AT26DF,
87 Spansion S25SL, SST 25VF, ST M25P, and Winbond W25X. Other chips
88 are supported as well. See the driver source for the current list,
89 or to add other chips.
90
91 Note that the original DataFlash chips (AT45 series, not AT26DF),
92 need an entirely different driver.
93
94 Set up your spi devices with the right board-specific platform data,
95 if you want to specify device partitioning or to use a device which
96 doesn't support the JEDEC ID instruction.
Mike Lavender2f9f7622006-01-08 13:34:27 -080097
Bryan Wu2230b762008-04-25 12:07:32 +080098config M25PXX_USE_FAST_READ
Marek Vasutb8c2d652012-06-23 20:40:43 +020099 bool "Use FAST_READ OPCode allowing SPI CLK >= 50MHz"
Bryan Wu2230b762008-04-25 12:07:32 +0800100 depends on MTD_M25P80
101 default y
102 help
103 This option enables FAST_READ access supported by ST M25Pxx.
104
Shiraz Hashimf18dbbb2012-01-12 14:38:57 +0100105config MTD_SPEAR_SMI
106 tristate "SPEAR MTD NOR Support through SMI controller"
107 depends on PLAT_SPEAR
108 default y
109 help
110 This enable SNOR support on SPEAR platforms using SMI controller
111
Ryan Mallonec77e212009-09-18 12:51:40 -0700112config MTD_SST25L
113 tristate "Support SST25L (non JEDEC) SPI Flash chips"
114 depends on SPI_MASTER
115 help
116 This enables access to the non JEDEC SST25L SPI flash chips, used
117 for program and data storage.
118
119 Set up your spi devices with the right board-specific platform data,
120 if you want to specify device partitioning.
121
Rafał Miłecki5fe42d52012-09-17 11:50:49 +0200122config MTD_BCM47XXSFLASH
123 tristate "R/O support for serial flash on BCMA bus"
124 depends on BCMA_SFLASH
125 help
126 BCMA bus can have various flash memories attached, they are
127 registered by bcma as platform devices. This enables driver for
128 serial flash memories (only read-only mode is implemented).
129
Linus Torvalds1da177e2005-04-16 15:20:36 -0700130config MTD_SLRAM
131 tristate "Uncached system RAM"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700132 help
133 If your CPU cannot cache all of the physical memory in your machine,
134 you can still use it for storage or swap by using this driver to
135 present it to the system as a Memory Technology Device.
136
137config MTD_PHRAM
138 tristate "Physical system RAM"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700139 help
140 This is a re-implementation of the slram driver above.
141
142 Use this driver to access physical memory that the kernel proper
143 doesn't have access to, memory beyond the mem=xxx limit, nvram,
144 memory on the video card, etc...
145
146config MTD_LART
147 tristate "28F160xx flash driver for LART"
Jan Engelhardtec98c682007-04-19 16:21:41 -0500148 depends on SA1100_LART
Linus Torvalds1da177e2005-04-16 15:20:36 -0700149 help
150 This enables the flash driver for LART. Please note that you do
151 not need any mapping/chip driver for LART. This one does it all
152 for you, so go disable all of those if you enabled some of them (:
153
154config MTD_MTDRAM
155 tristate "Test driver using RAM"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700156 help
157 This enables a test MTD device driver which uses vmalloc() to
158 provide storage. You probably want to say 'N' unless you're
159 testing stuff.
160
161config MTDRAM_TOTAL_SIZE
162 int "MTDRAM device size in KiB"
163 depends on MTD_MTDRAM
164 default "4096"
165 help
166 This allows you to configure the total size of the MTD device
167 emulated by the MTDRAM driver. If the MTDRAM driver is built
168 as a module, it is also possible to specify this as a parameter when
169 loading the module.
170
171config MTDRAM_ERASE_SIZE
172 int "MTDRAM erase block size in KiB"
173 depends on MTD_MTDRAM
174 default "128"
175 help
176 This allows you to configure the size of the erase blocks in the
177 device emulated by the MTDRAM driver. If the MTDRAM driver is built
178 as a module, it is also possible to specify this as a parameter when
179 loading the module.
180
181#If not a module (I don't want to test it as a module)
182config MTDRAM_ABS_POS
183 hex "SRAM Hexadecimal Absolute position or 0"
184 depends on MTD_MTDRAM=y
185 default "0"
186 help
187 If you have system RAM accessible by the CPU but not used by Linux
188 in normal operation, you can give the physical address at which the
189 available RAM starts, and the MTDRAM driver will use it instead of
Thomas Gleixnere5580fb2005-11-07 11:15:40 +0000190 allocating space from Linux's available memory. Otherwise, leave
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191 this set to zero. Most people will want to leave this as zero.
192
Joern Engelacc8dad2006-04-10 22:54:17 -0700193config MTD_BLOCK2MTD
194 tristate "MTD using block device"
Jan Engelhardtec98c682007-04-19 16:21:41 -0500195 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196 help
197 This driver allows a block device to appear as an MTD. It would
198 generally be used in the following cases:
199
200 Using Compact Flash as an MTD, these usually present themselves to
201 the system as an ATA drive.
202 Testing MTD users (eg JFFS2) on large media and media that might
203 be removed during a write (using the floppy drive).
204
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205comment "Disk-On-Chip Device Drivers"
206
Robert Jarzmikefa2ca72011-10-05 15:22:34 +0200207config MTD_DOCG3
208 tristate "M-Systems Disk-On-Chip G3"
Robert Jarzmikd13d19e2011-11-19 16:02:55 +0100209 select BCH
210 select BCH_CONST_PARAMS
Robert Jarzmikbf65aaa2013-01-14 20:01:37 +0100211 select BITREVERSE
Robert Jarzmikefa2ca72011-10-05 15:22:34 +0200212 ---help---
213 This provides an MTD device driver for the M-Systems DiskOnChip
214 G3 devices.
215
216 The driver provides access to G3 DiskOnChip, distributed by
217 M-Systems and now Sandisk. The support is very experimental,
218 and doesn't give access to any write operations.
219
Robert Jarzmikd13d19e2011-11-19 16:02:55 +0100220if MTD_DOCG3
221config BCH_CONST_M
222 default 14
223config BCH_CONST_T
224 default 4
225endif
226
Linus Torvalds1da177e2005-04-16 15:20:36 -0700227config MTD_DOCPROBE
228 tristate
229 select MTD_DOCECC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700230
231config MTD_DOCECC
232 tristate
233
234config MTD_DOCPROBE_ADVANCED
235 bool "Advanced detection options for DiskOnChip"
236 depends on MTD_DOCPROBE
237 help
238 This option allows you to specify nonstandard address at which to
239 probe for a DiskOnChip, or to change the detection options. You
240 are unlikely to need any of this unless you are using LinuxBIOS.
241 Say 'N'.
242
243config MTD_DOCPROBE_ADDRESS
244 hex "Physical address of DiskOnChip" if MTD_DOCPROBE_ADVANCED
245 depends on MTD_DOCPROBE
Paul Bolle6be55f72011-10-25 11:00:07 +0200246 default "0x0"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700247 ---help---
248 By default, the probe for DiskOnChip devices will look for a
249 DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000.
250 This option allows you to specify a single address at which to probe
251 for the device, which is useful if you have other devices in that
252 range which get upset when they are probed.
253
254 (Note that on PowerPC, the normal probe will only check at
255 0xE4000000.)
256
257 Normally, you should leave this set to zero, to allow the probe at
258 the normal addresses.
259
260config MTD_DOCPROBE_HIGH
261 bool "Probe high addresses"
262 depends on MTD_DOCPROBE_ADVANCED
263 help
264 By default, the probe for DiskOnChip devices will look for a
265 DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000.
266 This option changes to make it probe between 0xFFFC8000 and
267 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be
268 useful to you. Say 'N'.
269
270config MTD_DOCPROBE_55AA
271 bool "Probe for 0x55 0xAA BIOS Extension Signature"
272 depends on MTD_DOCPROBE_ADVANCED
273 help
274 Check for the 0x55 0xAA signature of a DiskOnChip, and do not
275 continue with probing if it is absent. The signature will always be
276 present for a DiskOnChip 2000 or a normal DiskOnChip Millennium.
277 Only if you have overwritten the first block of a DiskOnChip
278 Millennium will it be absent. Enable this option if you are using
279 LinuxBIOS or if you need to recover a DiskOnChip Millennium on which
280 you have managed to wipe the first block.
281
282endmenu