xref: /openbmc/linux/drivers/mtd/maps/Kconfig (revision 4f205687)
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 "Support ARM Versatile physmap OF"
79	depends on MTD_PHYSMAP_OF
80	depends on MFD_SYSCON
81	default y if (ARCH_INTEGRATOR || ARCH_VERSATILE || REALVIEW_DT)
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_PMC_MSP_EVM
88	tristate "CFI Flash device mapped on PMC-Sierra MSP"
89	depends on PMC_MSP && MTD_CFI
90	help
91	  This provides a 'mapping' driver which supports the way
92	  in which user-programmable flash chips are connected on the
93	  PMC-Sierra MSP eval/demo boards.
94
95choice
96	prompt "Maximum mappable memory available for flash IO"
97	depends on MTD_PMC_MSP_EVM
98	default MSP_FLASH_MAP_LIMIT_32M
99
100config MSP_FLASH_MAP_LIMIT_32M
101	bool "32M"
102
103endchoice
104
105config MSP_FLASH_MAP_LIMIT
106	hex
107	default "0x02000000"
108	depends on MSP_FLASH_MAP_LIMIT_32M
109
110config MTD_SUN_UFLASH
111	tristate "Sun Microsystems userflash support"
112	depends on SPARC && MTD_CFI && PCI
113	help
114	  This provides a 'mapping' driver which supports the way in
115	  which user-programmable flash chips are connected on various
116	  Sun Microsystems boardsets.  This driver will require CFI support
117	  in the kernel, so if you did not enable CFI previously, do that now.
118
119config MTD_SC520CDP
120	tristate "CFI Flash device mapped on AMD SC520 CDP"
121	depends on (MELAN || COMPILE_TEST) && MTD_CFI
122	help
123	  The SC520 CDP board has two banks of CFI-compliant chips and one
124	  Dual-in-line JEDEC chip. This 'mapping' driver supports that
125	  arrangement, implementing three MTD devices.
126
127config MTD_NETSC520
128	tristate "CFI Flash device mapped on AMD NetSc520"
129	depends on (MELAN || COMPILE_TEST) && MTD_CFI
130	help
131	  This enables access routines for the flash chips on the AMD NetSc520
132	  demonstration board. If you have one of these boards and would like
133	  to use the flash chips on it, say 'Y'.
134
135config MTD_TS5500
136	tristate "JEDEC Flash device mapped on Technologic Systems TS-5500"
137	depends on TS5500 || COMPILE_TEST
138	select MTD_JEDECPROBE
139	select MTD_CFI_AMDSTD
140	help
141	  This provides a driver for the on-board flash of the Technologic
142	  System's TS-5500 board. The 2MB flash is split into 3 partitions
143	  which are accessed as separate MTD devices.
144
145	  mtd0 and mtd2 are the two BIOS drives, which use the resident
146	  flash disk (RFD) flash translation layer.
147
148	  mtd1 allows you to reprogram your BIOS. BE VERY CAREFUL.
149
150	  Note that jumper 3 ("Write Enable Drive A") must be set
151	  otherwise detection won't succeed.
152
153config MTD_SBC_GXX
154	tristate "CFI Flash device mapped on Arcom SBC-GXx boards"
155	depends on X86 && MTD_CFI_INTELEXT && MTD_COMPLEX_MAPPINGS
156	help
157	  This provides a driver for the on-board flash of Arcom Control
158	  Systems' SBC-GXn family of boards, formerly known as SBC-MediaGX.
159	  By default the flash is split into 3 partitions which are accessed
160	  as separate MTD devices. This board utilizes Intel StrataFlash.
161	  More info at
162	  <http://www.arcomcontrols.com/products/icp/pc104/processors/SBC_GX1.htm>.
163
164config MTD_PXA2XX
165	tristate "CFI Flash device mapped on Intel XScale PXA2xx based boards"
166	depends on (PXA25x || PXA27x) && MTD_CFI_INTELEXT
167	help
168	  This provides a driver for the NOR flash attached to a PXA2xx chip.
169
170config MTD_SCx200_DOCFLASH
171	tristate "Flash device mapped with DOCCS on NatSemi SCx200"
172	depends on SCx200 && MTD_CFI
173	help
174	  Enable support for a flash chip mapped using the DOCCS signal on a
175	  National Semiconductor SCx200 processor.
176
177	  If you don't know what to do here, say N.
178
179	  If compiled as a module, it will be called scx200_docflash.
180
181config MTD_AMD76XROM
182	tristate "BIOS flash chip on AMD76x southbridge"
183	depends on X86 && MTD_JEDECPROBE
184	help
185	  Support for treating the BIOS flash chip on AMD76x motherboards
186	  as an MTD device - with this you can reprogram your BIOS.
187
188	  BE VERY CAREFUL.
189
190config MTD_ICHXROM
191	tristate "BIOS flash chip on Intel Controller Hub 2/3/4/5"
192	depends on X86 && MTD_JEDECPROBE
193	help
194	  Support for treating the BIOS flash chip on ICHX motherboards
195	  as an MTD device - with this you can reprogram your BIOS.
196
197	  BE VERY CAREFUL.
198
199config MTD_ESB2ROM
200        tristate "BIOS flash chip on Intel ESB Controller Hub 2"
201        depends on X86 && MTD_JEDECPROBE && PCI
202        help
203          Support for treating the BIOS flash chip on ESB2 motherboards
204          as an MTD device - with this you can reprogram your BIOS.
205
206          BE VERY CAREFUL.
207
208config MTD_CK804XROM
209	tristate "BIOS flash chip on Nvidia CK804"
210	depends on X86 && MTD_JEDECPROBE && PCI
211	help
212	  Support for treating the BIOS flash chip on nvidia motherboards
213	  as an MTD device - with this you can reprogram your BIOS.
214
215	  BE VERY CAREFUL.
216
217config MTD_SCB2_FLASH
218	tristate "BIOS flash chip on Intel SCB2 boards"
219	depends on X86 && MTD_JEDECPROBE && PCI
220	help
221	  Support for treating the BIOS flash chip on Intel SCB2 boards
222	  as an MTD device - with this you can reprogram your BIOS.
223
224	  BE VERY CAREFUL.
225
226config MTD_TSUNAMI
227	tristate "Flash chips on Tsunami TIG bus"
228	depends on ALPHA_TSUNAMI && MTD_COMPLEX_MAPPINGS
229	help
230	  Support for the flash chip on Tsunami TIG bus.
231
232config MTD_NETtel
233	tristate "CFI flash device on SnapGear/SecureEdge"
234	depends on X86 && MTD_JEDECPROBE
235	help
236	  Support for flash chips on NETtel/SecureEdge/SnapGear boards.
237
238config MTD_LANTIQ
239	tristate "Lantiq SoC NOR support"
240	depends on LANTIQ
241	help
242	  Support for NOR flash attached to the Lantiq SoC's External Bus Unit.
243
244config MTD_L440GX
245	tristate "BIOS flash chip on Intel L440GX boards"
246	depends on X86 && MTD_JEDECPROBE
247	help
248	  Support for treating the BIOS flash chip on Intel L440GX motherboards
249	  as an MTD device - with this you can reprogram your BIOS.
250
251	  BE VERY CAREFUL.
252
253config MTD_CFI_FLAGADM
254	tristate "CFI Flash device mapping on FlagaDM"
255	depends on PPC_8xx && MTD_CFI
256	help
257	  Mapping for the Flaga digital module. If you don't have one, ignore
258	  this setting.
259
260config MTD_SOLUTIONENGINE
261	tristate "CFI Flash device mapped on Hitachi SolutionEngine"
262	depends on SOLUTION_ENGINE && MTD_CFI && MTD_REDBOOT_PARTS
263	help
264	  This enables access to the flash chips on the Hitachi SolutionEngine and
265	  similar boards. Say 'Y' if you are building a kernel for such a board.
266
267config MTD_SA1100
268	tristate "CFI Flash device mapped on StrongARM SA11x0"
269	depends on MTD_CFI && ARCH_SA1100
270	help
271	  This enables access to the flash chips on most platforms based on
272	  the SA1100 and SA1110, including the Assabet and the Compaq iPAQ.
273	  If you have such a board, say 'Y'.
274
275config MTD_DC21285
276	tristate "CFI Flash device mapped on DC21285 Footbridge"
277	depends on MTD_CFI && ARCH_FOOTBRIDGE && MTD_COMPLEX_MAPPINGS
278	help
279	  This provides a driver for the flash accessed using Intel's
280	  21285 bridge used with Intel's StrongARM processors. More info at
281	  <http://www.intel.com/design/bridge/docs/21285_documentation.htm>.
282
283config MTD_IXP4XX
284	tristate "CFI Flash device mapped on Intel IXP4xx based systems"
285	depends on MTD_CFI && MTD_COMPLEX_MAPPINGS && ARCH_IXP4XX
286	help
287	  This enables MTD access to flash devices on platforms based
288	  on Intel's IXP4xx family of network processors such as the
289	  IXDP425 and Coyote. If you have an IXP4xx based board and
290	  would like to use the flash chips on it, say 'Y'.
291
292config MTD_IMPA7
293	tristate "JEDEC Flash device mapped on impA7"
294	depends on ARM && MTD_JEDECPROBE
295	help
296	  This enables access to the NOR Flash on the impA7 board of
297	  implementa GmbH. If you have such a board, say 'Y' here.
298
299# This needs CFI or JEDEC, depending on the cards found.
300config MTD_PCI
301	tristate "PCI MTD driver"
302	depends on PCI && MTD_COMPLEX_MAPPINGS
303	help
304	  Mapping for accessing flash devices on add-in cards like the Intel XScale
305	  IQ80310 card, and the Intel EBSA285 card in blank ROM programming mode
306	  (please see the manual for the link settings).
307
308	  If you are not sure, say N.
309
310config MTD_PCMCIA
311	tristate "PCMCIA MTD driver"
312	depends on PCMCIA && MTD_COMPLEX_MAPPINGS
313	help
314	  Map driver for accessing PCMCIA linear flash memory cards. These
315	  cards are usually around 4-16MiB in size. This does not include
316	  Compact Flash cards which are treated as IDE devices.
317
318config MTD_PCMCIA_ANONYMOUS
319	bool "Use PCMCIA MTD drivers for anonymous PCMCIA cards"
320	depends on MTD_PCMCIA
321	help
322	  If this option is enabled, PCMCIA cards which do not report
323	  anything about themselves are assumed to be MTD cards.
324
325	  If unsure, say N.
326
327config MTD_BFIN_ASYNC
328	tristate "Blackfin BF533-STAMP Flash Chip Support"
329	depends on BFIN533_STAMP && MTD_CFI && MTD_COMPLEX_MAPPINGS
330	default y
331	help
332	  Map driver which allows for simultaneous utilization of
333	  ethernet and CFI parallel flash.
334
335	  If compiled as a module, it will be called bfin-async-flash.
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