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