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