Merge tag 'for-linus-20130509' of git://git.infradead.org/linux-mtd
[firefly-linux-kernel-4.4.55.git] / drivers / mtd / maps / Kconfig
1 menu "Mapping drivers for chip access"
2         depends on MTD!=n
3         depends on HAS_IOMEM
4
5 config MTD_COMPLEX_MAPPINGS
6         bool "Support non-linear mappings of flash chips"
7         help
8           This causes the chip drivers to allow for complicated
9           paged mappings of flash chips.
10
11 config MTD_PHYSMAP
12         tristate "Flash device in physical memory map"
13         depends on MTD_CFI || MTD_JEDECPROBE || MTD_ROM || MTD_LPDDR
14         help
15           This provides a 'mapping' driver which allows the NOR Flash and
16           ROM driver code to communicate with chips which are mapped
17           physically into the CPU's memory. You will need to configure
18           the physical address and size of the flash chips on your
19           particular board as well as the bus width, either statically
20           with config options or at run-time.
21
22           To compile this driver as a module, choose M here: the
23           module will be called physmap.
24
25 config MTD_PHYSMAP_COMPAT
26         bool "Physmap compat support"
27         depends on MTD_PHYSMAP
28         default n
29         help
30           Setup a simple mapping via the Kconfig options.  Normally the
31           physmap configuration options are done via your board's
32           resource file.
33
34           If unsure, say N here.
35
36 config MTD_PHYSMAP_START
37         hex "Physical start address of flash mapping"
38         depends on MTD_PHYSMAP_COMPAT
39         default "0x8000000"
40         help
41           This is the physical memory location at which the flash chips
42           are mapped on your particular target board. Refer to the
43           memory map which should hopefully be in the documentation for
44           your board.
45
46 config MTD_PHYSMAP_LEN
47         hex "Physical length of flash mapping"
48         depends on MTD_PHYSMAP_COMPAT
49         default "0"
50         help
51           This is the total length of the mapping of the flash chips on
52           your particular board. If there is space, or aliases, in the
53           physical memory map between the chips, this could be larger
54           than the total amount of flash present. Refer to the memory
55           map which should hopefully be in the documentation for your
56           board.
57
58 config MTD_PHYSMAP_BANKWIDTH
59         int "Bank width in octets"
60         depends on MTD_PHYSMAP_COMPAT
61         default "2"
62         help
63           This is the total width of the data bus of the flash devices
64           in octets. For example, if you have a data bus width of 32
65           bits, you would set the bus width octet value to 4. This is
66           used internally by the CFI drivers.
67
68 config MTD_PHYSMAP_OF
69         tristate "Flash device in physical memory map based on OF description"
70         depends on OF && (MTD_CFI || MTD_JEDECPROBE || MTD_ROM)
71         help
72           This provides a 'mapping' driver which allows the NOR Flash and
73           ROM driver code to communicate with chips which are mapped
74           physically into the CPU's memory. The mapping description here is
75           taken from OF device tree.
76
77 config MTD_PMC_MSP_EVM
78         tristate "CFI Flash device mapped on PMC-Sierra MSP"
79         depends on PMC_MSP && MTD_CFI
80         help
81           This provides a 'mapping' driver which supports the way
82           in which user-programmable flash chips are connected on the
83           PMC-Sierra MSP eval/demo boards.
84
85 choice
86         prompt "Maximum mappable memory available for flash IO"
87         depends on MTD_PMC_MSP_EVM
88         default MSP_FLASH_MAP_LIMIT_32M
89
90 config MSP_FLASH_MAP_LIMIT_32M
91         bool "32M"
92
93 endchoice
94
95 config MSP_FLASH_MAP_LIMIT
96         hex
97         default "0x02000000"
98         depends on MSP_FLASH_MAP_LIMIT_32M
99
100 config MTD_SUN_UFLASH
101         tristate "Sun Microsystems userflash support"
102         depends on SPARC && MTD_CFI && PCI
103         help
104           This provides a 'mapping' driver which supports the way in
105           which user-programmable flash chips are connected on various
106           Sun Microsystems boardsets.  This driver will require CFI support
107           in the kernel, so if you did not enable CFI previously, do that now.
108
109 config MTD_SC520CDP
110         tristate "CFI Flash device mapped on AMD SC520 CDP"
111         depends on X86 && MTD_CFI
112         help
113           The SC520 CDP board has two banks of CFI-compliant chips and one
114           Dual-in-line JEDEC chip. This 'mapping' driver supports that
115           arrangement, implementing three MTD devices.
116
117 config MTD_NETSC520
118         tristate "CFI Flash device mapped on AMD NetSc520"
119         depends on X86 && MTD_CFI
120         help
121           This enables access routines for the flash chips on the AMD NetSc520
122           demonstration board. If you have one of these boards and would like
123           to use the flash chips on it, say 'Y'.
124
125 config MTD_TS5500
126         tristate "JEDEC Flash device mapped on Technologic Systems TS-5500"
127         depends on X86
128         select MTD_JEDECPROBE
129         select MTD_CFI_AMDSTD
130         help
131           This provides a driver for the on-board flash of the Technologic
132           System's TS-5500 board. The 2MB flash is split into 3 partitions
133           which are accessed as separate MTD devices.
134
135           mtd0 and mtd2 are the two BIOS drives, which use the resident
136           flash disk (RFD) flash translation layer.
137
138           mtd1 allows you to reprogram your BIOS. BE VERY CAREFUL.
139
140           Note that jumper 3 ("Write Enable Drive A") must be set
141           otherwise detection won't succeed.
142
143 config MTD_SBC_GXX
144         tristate "CFI Flash device mapped on Arcom SBC-GXx boards"
145         depends on X86 && MTD_CFI_INTELEXT && MTD_COMPLEX_MAPPINGS
146         help
147           This provides a driver for the on-board flash of Arcom Control
148           Systems' SBC-GXn family of boards, formerly known as SBC-MediaGX.
149           By default the flash is split into 3 partitions which are accessed
150           as separate MTD devices. This board utilizes Intel StrataFlash.
151           More info at
152           <http://www.arcomcontrols.com/products/icp/pc104/processors/SBC_GX1.htm>.
153
154 config MTD_PXA2XX
155         tristate "CFI Flash device mapped on Intel XScale PXA2xx based boards"
156         depends on (PXA25x || PXA27x) && MTD_CFI_INTELEXT
157         help
158           This provides a driver for the NOR flash attached to a PXA2xx chip.
159
160 config MTD_OCTAGON
161         tristate "JEDEC Flash device mapped on Octagon 5066 SBC"
162         depends on X86 && MTD_JEDEC && MTD_COMPLEX_MAPPINGS
163         help
164           This provides a 'mapping' driver which supports the way in which
165           the flash chips are connected in the Octagon-5066 Single Board
166           Computer. More information on the board is available at
167           <http://www.octagonsystems.com/products/5066.aspx>.
168
169 config MTD_VMAX
170         tristate "JEDEC Flash device mapped on Tempustech VMAX SBC301"
171         depends on X86 && MTD_JEDEC && MTD_COMPLEX_MAPPINGS
172         help
173           This provides a 'mapping' driver which supports the way in which
174           the flash chips are connected in the Tempustech VMAX SBC301 Single
175           Board Computer. More information on the board is available at
176           <http://www.tempustech.com/>.
177
178 config MTD_SCx200_DOCFLASH
179         tristate "Flash device mapped with DOCCS on NatSemi SCx200"
180         depends on SCx200 && MTD_CFI
181         help
182           Enable support for a flash chip mapped using the DOCCS signal on a
183           National Semiconductor SCx200 processor.
184
185           If you don't know what to do here, say N.
186
187           If compiled as a module, it will be called scx200_docflash.
188
189 config MTD_AMD76XROM
190         tristate "BIOS flash chip on AMD76x southbridge"
191         depends on X86 && MTD_JEDECPROBE
192         help
193           Support for treating the BIOS flash chip on AMD76x motherboards
194           as an MTD device - with this you can reprogram your BIOS.
195
196           BE VERY CAREFUL.
197
198 config MTD_ICHXROM
199         tristate "BIOS flash chip on Intel Controller Hub 2/3/4/5"
200         depends on X86 && MTD_JEDECPROBE
201         help
202           Support for treating the BIOS flash chip on ICHX motherboards
203           as an MTD device - with this you can reprogram your BIOS.
204
205           BE VERY CAREFUL.
206
207 config MTD_ESB2ROM
208         tristate "BIOS flash chip on Intel ESB Controller Hub 2"
209         depends on X86 && MTD_JEDECPROBE && PCI
210         help
211           Support for treating the BIOS flash chip on ESB2 motherboards
212           as an MTD device - with this you can reprogram your BIOS.
213
214           BE VERY CAREFUL.
215
216 config MTD_CK804XROM
217         tristate "BIOS flash chip on Nvidia CK804"
218         depends on X86 && MTD_JEDECPROBE && PCI
219         help
220           Support for treating the BIOS flash chip on nvidia motherboards
221           as an MTD device - with this you can reprogram your BIOS.
222
223           BE VERY CAREFUL.
224
225 config MTD_SCB2_FLASH
226         tristate "BIOS flash chip on Intel SCB2 boards"
227         depends on X86 && MTD_JEDECPROBE && PCI
228         help
229           Support for treating the BIOS flash chip on Intel SCB2 boards
230           as an MTD device - with this you can reprogram your BIOS.
231
232           BE VERY CAREFUL.
233
234 config MTD_TSUNAMI
235         tristate "Flash chips on Tsunami TIG bus"
236         depends on ALPHA_TSUNAMI && MTD_COMPLEX_MAPPINGS
237         help
238           Support for the flash chip on Tsunami TIG bus.
239
240 config MTD_NETtel
241         tristate "CFI flash device on SnapGear/SecureEdge"
242         depends on X86 && MTD_JEDECPROBE
243         help
244           Support for flash chips on NETtel/SecureEdge/SnapGear boards.
245
246 config MTD_LANTIQ
247         tristate "Lantiq SoC NOR support"
248         depends on LANTIQ
249         help
250           Support for NOR flash attached to the Lantiq SoC's External Bus Unit.
251
252 config MTD_L440GX
253         tristate "BIOS flash chip on Intel L440GX boards"
254         depends on X86 && MTD_JEDECPROBE
255         help
256           Support for treating the BIOS flash chip on Intel L440GX motherboards
257           as an MTD device - with this you can reprogram your BIOS.
258
259           BE VERY CAREFUL.
260
261 config MTD_CFI_FLAGADM
262         tristate "CFI Flash device mapping on FlagaDM"
263         depends on 8xx && MTD_CFI
264         help
265           Mapping for the Flaga digital module. If you don't have one, ignore
266           this setting.
267
268 config MTD_SOLUTIONENGINE
269         tristate "CFI Flash device mapped on Hitachi SolutionEngine"
270         depends on SUPERH && SOLUTION_ENGINE && MTD_CFI && MTD_REDBOOT_PARTS
271         help
272           This enables access to the flash chips on the Hitachi SolutionEngine and
273           similar boards. Say 'Y' if you are building a kernel for such a board.
274
275 config MTD_SA1100
276         tristate "CFI Flash device mapped on StrongARM SA11x0"
277         depends on MTD_CFI && ARCH_SA1100
278         help
279           This enables access to the flash chips on most platforms based on
280           the SA1100 and SA1110, including the Assabet and the Compaq iPAQ.
281           If you have such a board, say 'Y'.
282
283 config MTD_DC21285
284         tristate "CFI Flash device mapped on DC21285 Footbridge"
285         depends on MTD_CFI && ARCH_FOOTBRIDGE && MTD_COMPLEX_MAPPINGS
286         help
287           This provides a driver for the flash accessed using Intel's
288           21285 bridge used with Intel's StrongARM processors. More info at
289           <http://www.intel.com/design/bridge/docs/21285_documentation.htm>.
290
291 config MTD_IXP4XX
292         tristate "CFI Flash device mapped on Intel IXP4xx based systems"
293         depends on MTD_CFI && MTD_COMPLEX_MAPPINGS && ARCH_IXP4XX
294         help
295           This enables MTD access to flash devices on platforms based
296           on Intel's IXP4xx family of network processors such as the
297           IXDP425 and Coyote. If you have an IXP4xx based board and
298           would like to use the flash chips on it, say 'Y'.
299
300 config MTD_AUTCPU12
301         bool "NV-RAM mapping AUTCPU12 board"
302         depends on ARCH_AUTCPU12
303         help
304           This enables access to the NV-RAM on autronix autcpu12 board.
305           If you have such a board, say 'Y'.
306
307 config MTD_IMPA7
308         tristate "JEDEC Flash device mapped on impA7"
309         depends on ARM && MTD_JEDECPROBE
310         help
311           This enables access to the NOR Flash on the impA7 board of
312           implementa GmbH. If you have such a board, say 'Y' here.
313
314 # This needs CFI or JEDEC, depending on the cards found.
315 config MTD_PCI
316         tristate "PCI MTD driver"
317         depends on PCI && MTD_COMPLEX_MAPPINGS
318         help
319           Mapping for accessing flash devices on add-in cards like the Intel XScale
320           IQ80310 card, and the Intel EBSA285 card in blank ROM programming mode
321           (please see the manual for the link settings).
322
323           If you are not sure, say N.
324
325 config MTD_PCMCIA
326         tristate "PCMCIA MTD driver"
327         depends on PCMCIA && MTD_COMPLEX_MAPPINGS
328         help
329           Map driver for accessing PCMCIA linear flash memory cards. These
330           cards are usually around 4-16MiB in size. This does not include
331           Compact Flash cards which are treated as IDE devices.
332
333 config MTD_PCMCIA_ANONYMOUS
334         bool "Use PCMCIA MTD drivers for anonymous PCMCIA cards"
335         depends on MTD_PCMCIA
336         help
337           If this option is enabled, PCMCIA cards which do not report
338           anything about themselves are assumed to be MTD cards.
339
340           If unsure, say N.
341
342 config MTD_BFIN_ASYNC
343         tristate "Blackfin BF533-STAMP Flash Chip Support"
344         depends on BFIN533_STAMP && MTD_CFI && MTD_COMPLEX_MAPPINGS
345         default y
346         help
347           Map driver which allows for simultaneous utilization of
348           ethernet and CFI parallel flash.
349
350           If compiled as a module, it will be called bfin-async-flash.
351
352 config MTD_GPIO_ADDR
353         tristate "GPIO-assisted Flash Chip Support"
354         depends on GPIOLIB
355         depends on MTD_COMPLEX_MAPPINGS
356         help
357           Map driver which allows flashes to be partially physically addressed
358           and assisted by GPIOs.
359
360           If compiled as a module, it will be called gpio-addr-flash.
361
362 config MTD_UCLINUX
363         bool "Generic uClinux RAM/ROM filesystem support"
364         depends on (MTD_RAM=y || MTD_ROM=y) && (!MMU || COLDFIRE)
365         help
366           Map driver to support image based filesystems for uClinux.
367
368 config MTD_INTEL_VR_NOR
369         tristate "NOR flash on Intel Vermilion Range Expansion Bus CS0"
370         depends on PCI
371         help
372           Map driver for a NOR flash bank located on the Expansion Bus of the
373           Intel Vermilion Range chipset.
374
375 config MTD_RBTX4939
376         tristate "Map driver for RBTX4939 board"
377         depends on TOSHIBA_RBTX4939 && MTD_CFI && MTD_COMPLEX_MAPPINGS
378         help
379           Map driver for NOR flash chips on RBTX4939 board.
380
381 config MTD_PLATRAM
382         tristate "Map driver for platform device RAM (mtd-ram)"
383         select MTD_RAM
384         help
385           Map driver for RAM areas described via the platform device
386           system.
387
388           This selection automatically selects the map_ram driver.
389
390 config MTD_VMU
391         tristate "Map driver for Dreamcast VMU"
392         depends on MAPLE
393         help
394           This driver enables access to the Dreamcast Visual Memory Unit (VMU).
395
396           Most Dreamcast users will want to say Y here.
397
398           To build this as a module select M here, the module will be called
399           vmu-flash.
400
401 config MTD_PISMO
402         tristate "MTD discovery driver for PISMO modules"
403         depends on I2C
404         depends on ARCH_VERSATILE
405         help
406           This driver allows for discovery of PISMO modules - see
407           <http://www.pismoworld.org/>.  These are small modules containing
408           up to five memory devices (eg, SRAM, flash, DOC) described by an
409           I2C EEPROM.
410
411           This driver does not create any MTD maps itself; instead it
412           creates MTD physmap and MTD SRAM platform devices.  If you
413           enable this option, you should consider enabling MTD_PHYSMAP
414           and/or MTD_PLATRAM according to the devices on your module.
415
416           When built as a module, it will be called pismo.ko
417
418 config MTD_LATCH_ADDR
419         tristate "Latch-assisted Flash Chip Support"
420         depends on MTD_COMPLEX_MAPPINGS
421         help
422           Map driver which allows flashes to be partially physically addressed
423           and have the upper address lines set by a board specific code.
424
425           If compiled as a module, it will be called latch-addr-flash.
426
427 endmenu