projects/linux·blob master · refs

322 lines · 10.5 KiB

1# SPDX-License-Identifier: GPL-2.0-only
2menu "Mapping drivers for chip access"
3 depends on MTD!=n
4 depends on HAS_IOMEM
5
6config 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
12config 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
26config 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
37config 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
47config 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
59config 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
69config 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
78config 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
88config 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
99config 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 default ARCH_IXP4XX
105 help
106 This provides some extra DT physmap parsing for the Intel IXP4xx
107 platforms, some elaborate endianness handling in particular.
108
109config MTD_PHYSMAP_GPIO_ADDR
110 bool "GPIO-assisted Flash Chip Support"
111 depends on MTD_PHYSMAP
112 depends on GPIOLIB || COMPILE_TEST
113 depends on MTD_COMPLEX_MAPPINGS
114 help
115 Extend the physmap driver to allow flashes to be partially
116 physically addressed and assisted by GPIOs.
117
118config MTD_SUN_UFLASH
119 tristate "Sun Microsystems userflash support"
120 depends on SPARC && MTD_CFI && PCI
121 help
122 This provides a 'mapping' driver which supports the way in
123 which user-programmable flash chips are connected on various
124 Sun Microsystems boardsets. This driver will require CFI support
125 in the kernel, so if you did not enable CFI previously, do that now.
126
127config MTD_SBC_GXX
128 tristate "CFI Flash device mapped on Arcom SBC-GXx boards"
129 depends on X86 && MTD_CFI_INTELEXT && MTD_COMPLEX_MAPPINGS
130 help
131 This provides a driver for the on-board flash of Arcom Control
132 Systems' SBC-GXn family of boards, formerly known as SBC-MediaGX.
133 By default the flash is split into 3 partitions which are accessed
134 as separate MTD devices. This board utilizes Intel StrataFlash.
135 More info at
136 <http://www.arcomcontrols.com/products/icp/pc104/processors/SBC_GX1.htm>.
137
138config MTD_PXA2XX
139 tristate "CFI Flash device mapped on Intel XScale PXA2xx based boards"
140 depends on (PXA25x || PXA27x) && MTD_CFI_INTELEXT
141 help
142 This provides a driver for the NOR flash attached to a PXA2xx chip.
143
144config MTD_SCx200_DOCFLASH
145 tristate "Flash device mapped with DOCCS on NatSemi SCx200"
146 depends on SCx200 && MTD_CFI
147 help
148 Enable support for a flash chip mapped using the DOCCS signal on a
149 National Semiconductor SCx200 processor.
150
151 If you don't know what to do here, say N.
152
153 If compiled as a module, it will be called scx200_docflash.
154
155config MTD_AMD76XROM
156 tristate "BIOS flash chip on AMD76x southbridge"
157 depends on X86 && MTD_JEDECPROBE
158 help
159 Support for treating the BIOS flash chip on AMD76x motherboards
160 as an MTD device - with this you can reprogram your BIOS.
161
162 BE VERY CAREFUL.
163
164config MTD_ICHXROM
165 tristate "BIOS flash chip on Intel Controller Hub 2/3/4/5"
166 depends on X86 && MTD_JEDECPROBE
167 help
168 Support for treating the BIOS flash chip on ICHX motherboards
169 as an MTD device - with this you can reprogram your BIOS.
170
171 BE VERY CAREFUL.
172
173config MTD_ESB2ROM
174 tristate "BIOS flash chip on Intel ESB Controller Hub 2"
175 depends on X86 && MTD_JEDECPROBE && PCI
176 help
177 Support for treating the BIOS flash chip on ESB2 motherboards
178 as an MTD device - with this you can reprogram your BIOS.
179
180 BE VERY CAREFUL.
181
182config MTD_CK804XROM
183 tristate "BIOS flash chip on Nvidia CK804"
184 depends on X86 && MTD_JEDECPROBE && PCI
185 help
186 Support for treating the BIOS flash chip on nvidia motherboards
187 as an MTD device - with this you can reprogram your BIOS.
188
189 BE VERY CAREFUL.
190
191config MTD_SCB2_FLASH
192 tristate "BIOS flash chip on Intel SCB2 boards"
193 depends on X86 && MTD_JEDECPROBE && PCI
194 help
195 Support for treating the BIOS flash chip on Intel SCB2 boards
196 as an MTD device - with this you can reprogram your BIOS.
197
198 BE VERY CAREFUL.
199
200config MTD_TSUNAMI
201 tristate "Flash chips on Tsunami TIG bus"
202 depends on ALPHA_TSUNAMI && MTD_COMPLEX_MAPPINGS
203 help
204 Support for the flash chip on Tsunami TIG bus.
205
206config MTD_LANTIQ
207 tristate "Lantiq SoC NOR support"
208 depends on LANTIQ
209 help
210 Support for NOR flash attached to the Lantiq SoC's External Bus Unit.
211
212config MTD_L440GX
213 tristate "BIOS flash chip on Intel L440GX boards"
214 depends on X86 && MTD_JEDECPROBE
215 help
216 Support for treating the BIOS flash chip on Intel L440GX motherboards
217 as an MTD device - with this you can reprogram your BIOS.
218
219 BE VERY CAREFUL.
220
221config MTD_CFI_FLAGADM
222 tristate "CFI Flash device mapping on FlagaDM"
223 depends on PPC_8xx && MTD_CFI
224 help
225 Mapping for the Flaga digital module. If you don't have one, ignore
226 this setting.
227
228config MTD_SOLUTIONENGINE
229 tristate "CFI Flash device mapped on Hitachi SolutionEngine"
230 depends on SOLUTION_ENGINE && MTD_CFI && MTD_REDBOOT_PARTS
231 help
232 This enables access to the flash chips on the Hitachi SolutionEngine and
233 similar boards. Say 'Y' if you are building a kernel for such a board.
234
235config MTD_SA1100
236 tristate "CFI Flash device mapped on StrongARM SA11x0"
237 depends on MTD_CFI && ARCH_SA1100
238 help
239 This enables access to the flash chips on most platforms based on
240 the SA1100 and SA1110, including the Assabet and the Compaq iPAQ.
241 If you have such a board, say 'Y'.
242
243config MTD_DC21285
244 tristate "CFI Flash device mapped on DC21285 Footbridge"
245 depends on MTD_CFI && ARCH_FOOTBRIDGE && MTD_COMPLEX_MAPPINGS
246 help
247 This provides a driver for the flash accessed using Intel's
248 21285 bridge used with Intel's StrongARM processors. More info at
249 <https://www.intel.com/design/bridge/docs/21285_documentation.htm>.
250
251# This needs CFI or JEDEC, depending on the cards found.
252config MTD_PCI
253 tristate "PCI MTD driver"
254 depends on PCI && MTD_COMPLEX_MAPPINGS
255 help
256 Mapping for accessing flash devices on add-in cards like the Intel XScale
257 IQ80310 card, and the Intel EBSA285 card in blank ROM programming mode
258 (please see the manual for the link settings).
259
260 If you are not sure, say N.
261
262config MTD_PCMCIA
263 tristate "PCMCIA MTD driver"
264 depends on PCMCIA && MTD_COMPLEX_MAPPINGS
265 help
266 Map driver for accessing PCMCIA linear flash memory cards. These
267 cards are usually around 4-16MiB in size. This does not include
268 Compact Flash cards which are treated as IDE devices.
269
270config MTD_PCMCIA_ANONYMOUS
271 bool "Use PCMCIA MTD drivers for anonymous PCMCIA cards"
272 depends on MTD_PCMCIA
273 help
274 If this option is enabled, PCMCIA cards which do not report
275 anything about themselves are assumed to be MTD cards.
276
277 If unsure, say N.
278
279config MTD_UCLINUX
280 bool "Generic uClinux RAM/ROM filesystem support"
281 depends on (MTD_RAM=y || MTD_ROM=y) && (!MMU || COLDFIRE)
282 help
283 Map driver to support image based filesystems for uClinux.
284
285config MTD_PLATRAM
286 tristate "Map driver for platform device RAM (mtd-ram)"
287 select MTD_RAM
288 help
289 Map driver for RAM areas described via the platform device
290 system.
291
292 This selection automatically selects the map_ram driver.
293
294config MTD_VMU
295 tristate "Map driver for Dreamcast VMU"
296 depends on MAPLE
297 help
298 This driver enables access to the Dreamcast Visual Memory Unit (VMU).
299
300 Most Dreamcast users will want to say Y here.
301
302 To build this as a module select M here, the module will be called
303 vmu-flash.
304
305config MTD_PISMO
306 tristate "MTD discovery driver for PISMO modules"
307 depends on I2C
308 depends on ARCH_VERSATILE
309 help
310 This driver allows for discovery of PISMO modules - see
311 <http://www.pismoworld.org/>. These are small modules containing
312 up to five memory devices (eg, SRAM, flash, DOC) described by an
313 I2C EEPROM.
314
315 This driver does not create any MTD maps itself; instead it
316 creates MTD physmap and MTD SRAM platform devices. If you
317 enable this option, you should consider enabling MTD_PHYSMAP
318 and/or MTD_PLATRAM according to the devices on your module.
319
320 When built as a module, it will be called pismo.ko
321
322endmenu