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