]>
Commit | Line | Data |
---|---|---|
1c6a0718 PO |
1 | # |
2 | # MMC/SD host controller drivers | |
3 | # | |
4 | ||
57105737 | 5 | comment "MMC/SD/SDIO Host Controller Drivers" |
1c6a0718 PO |
6 | |
7 | config MMC_ARMMMCI | |
8 | tristate "ARM AMBA Multimedia Card Interface support" | |
790864dc | 9 | depends on ARM_AMBA |
1c6a0718 PO |
10 | help |
11 | This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card | |
12 | Interface (PL180 and PL181) support. If you have an ARM(R) | |
13 | platform with a Multimedia Card slot, say Y or M here. | |
14 | ||
15 | If unsure, say N. | |
16 | ||
17 | config MMC_PXA | |
18 | tristate "Intel PXA25x/26x/27x Multimedia Card Interface support" | |
790864dc | 19 | depends on ARCH_PXA |
1c6a0718 PO |
20 | help |
21 | This selects the Intel(R) PXA(R) Multimedia card Interface. | |
22 | If you have a PXA(R) platform with a Multimedia Card slot, | |
23 | say Y or M here. | |
24 | ||
25 | If unsure, say N. | |
26 | ||
27 | config MMC_SDHCI | |
34671dc2 | 28 | tristate "Secure Digital Host Controller Interface support" |
b8c86fc5 | 29 | depends on HAS_DMA |
1c6a0718 | 30 | help |
b8c86fc5 | 31 | This selects the generic Secure Digital Host Controller Interface. |
1c6a0718 PO |
32 | It is used by manufacturers such as Texas Instruments(R), Ricoh(R) |
33 | and Toshiba(R). Most controllers found in laptops are of this type. | |
b8c86fc5 PO |
34 | |
35 | If you have a controller with this interface, say Y or M here. You | |
36 | also need to enable an appropriate bus interface. | |
37 | ||
38 | If unsure, say N. | |
39 | ||
4e4141a5 AV |
40 | config MMC_SDHCI_IO_ACCESSORS |
41 | bool | |
42 | depends on MMC_SDHCI | |
43 | help | |
44 | This is silent Kconfig symbol that is selected by the drivers that | |
45 | need to overwrite SDHCI IO memory accessors. | |
46 | ||
7657c3a7 AH |
47 | config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER |
48 | bool | |
49 | select MMC_SDHCI_IO_ACCESSORS | |
50 | help | |
51 | This option is selected by drivers running on big endian hosts | |
52 | and performing I/O to a SDHCI controller through a bus that | |
53 | implements a hardware byte swapper using a 32-bit datum. | |
54 | This endian mapping mode is called "data invariance" and | |
55 | has the effect of scrambling the addresses and formats of data | |
56 | accessed in sizes other than the datum size. | |
57 | ||
1144ab5d | 58 | This is the case for the Freescale eSDHC and Nintendo Wii SDHCI. |
7657c3a7 | 59 | |
b8c86fc5 PO |
60 | config MMC_SDHCI_PCI |
61 | tristate "SDHCI support on PCI bus" | |
62 | depends on MMC_SDHCI && PCI | |
63 | help | |
64 | This selects the PCI Secure Digital Host Controller Interface. | |
65 | Most controllers found today are PCI devices. | |
66 | ||
1c6a0718 PO |
67 | If you have a controller with this interface, say Y or M here. |
68 | ||
69 | If unsure, say N. | |
70 | ||
5ae70296 | 71 | config MMC_RICOH_MMC |
03cd8f7e | 72 | bool "Ricoh MMC Controller Disabler (EXPERIMENTAL)" |
b8c86fc5 | 73 | depends on MMC_SDHCI_PCI |
5ae70296 | 74 | help |
03cd8f7e | 75 | This adds a pci quirk to disable Ricoh MMC Controller. This |
5ae70296 PL |
76 | proprietary controller is unnecessary because the SDHCI driver |
77 | supports MMC cards on the SD controller, but if it is not | |
78 | disabled, it will steal the MMC cards away - rendering them | |
03cd8f7e | 79 | useless. It is safe to select this even if you don't |
5ae70296 PL |
80 | have a Ricoh based card reader. |
81 | ||
5ae70296 PL |
82 | If unsure, say Y. |
83 | ||
3085e9c1 AV |
84 | config MMC_SDHCI_OF |
85 | tristate "SDHCI support on OpenFirmware platforms" | |
86 | depends on MMC_SDHCI && PPC_OF | |
3085e9c1 AV |
87 | help |
88 | This selects the OF support for Secure Digital Host Controller | |
7657c3a7 AH |
89 | Interfaces. |
90 | ||
91 | If unsure, say N. | |
92 | ||
93 | config MMC_SDHCI_OF_ESDHC | |
94 | bool "SDHCI OF support for the Freescale eSDHC controller" | |
95 | depends on MMC_SDHCI_OF | |
96 | select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER | |
97 | help | |
98 | This selects the Freescale eSDHC controller support. | |
3085e9c1 AV |
99 | |
100 | If unsure, say N. | |
101 | ||
1144ab5d AH |
102 | config MMC_SDHCI_OF_HLWD |
103 | bool "SDHCI OF support for the Nintendo Wii SDHCI controllers" | |
104 | depends on MMC_SDHCI_OF | |
105 | select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER | |
106 | help | |
107 | This selects the Secure Digital Host Controller Interface (SDHCI) | |
108 | found in the "Hollywood" chipset of the Nintendo Wii video game | |
109 | console. | |
110 | ||
111 | If unsure, say N. | |
112 | ||
a3456a2d RR |
113 | config MMC_SDHCI_PLTFM |
114 | tristate "SDHCI support on the platform specific bus" | |
115 | depends on MMC_SDHCI | |
116 | help | |
117 | This selects the platform specific bus support for Secure Digital Host | |
118 | Controller Interface. | |
119 | ||
120 | If you have a controller with this interface, say Y or M here. | |
121 | ||
122 | If unsure, say N. | |
123 | ||
20b1597b AV |
124 | config MMC_SDHCI_CNS3XXX |
125 | bool "SDHCI support on the Cavium Networks CNS3xxx SoC" | |
126 | depends on ARCH_CNS3XXX | |
127 | depends on MMC_SDHCI_PLTFM | |
128 | help | |
129 | This selects the SDHCI support for CNS3xxx System-on-Chip devices. | |
130 | ||
131 | If unsure, say N. | |
132 | ||
95f25efe WS |
133 | config MMC_SDHCI_ESDHC_IMX |
134 | bool "SDHCI platform support for the Freescale eSDHC i.MX controller" | |
135 | depends on MMC_SDHCI_PLTFM && (ARCH_MX25 || ARCH_MX35 || ARCH_MX5) | |
136 | select MMC_SDHCI_IO_ACCESSORS | |
137 | help | |
138 | This selects the Freescale eSDHC controller support on the platform | |
139 | bus, found on platforms like mx35/51. | |
140 | ||
141 | If unsure, say N. | |
142 | ||
0d1bb41a BD |
143 | config MMC_SDHCI_S3C |
144 | tristate "SDHCI support on Samsung S3C SoC" | |
930a6f70 | 145 | depends on MMC_SDHCI && PLAT_SAMSUNG |
0d1bb41a BD |
146 | help |
147 | This selects the Secure Digital Host Controller Interface (SDHCI) | |
148 | often referrered to as the HSMMC block in some of the Samsung S3C | |
149 | range of SoC. | |
150 | ||
151 | Note, due to the problems with DMA, the DMA support is only | |
152 | available with CONFIG_EXPERIMENTAL is selected. | |
153 | ||
154 | If you have a controller with this interface, say Y or M here. | |
155 | ||
156 | If unsure, say N. | |
157 | ||
536ac998 ZG |
158 | config MMC_SDHCI_PXA |
159 | tristate "Marvell PXA168/PXA910/MMP2 SD Host Controller support" | |
160 | depends on ARCH_PXA || ARCH_MMP | |
161 | select MMC_SDHCI | |
162 | select MMC_SDHCI_IO_ACCESSORS | |
163 | help | |
164 | This selects the Marvell(R) PXA168/PXA910/MMP2 SD Host Controller. | |
165 | If you have a PXA168/PXA910/MMP2 platform with SD Host Controller | |
166 | and a card slot, say Y or M here. | |
167 | ||
168 | If unsure, say N. | |
169 | ||
c63b3cba VK |
170 | config MMC_SDHCI_SPEAR |
171 | tristate "SDHCI support on ST SPEAr platform" | |
172 | depends on MMC_SDHCI && PLAT_SPEAR | |
173 | help | |
174 | This selects the Secure Digital Host Controller Interface (SDHCI) | |
175 | often referrered to as the HSMMC block in some of the ST SPEAR range | |
176 | of SoC | |
177 | ||
178 | If you have a controller with this interface, say Y or M here. | |
179 | ||
180 | If unsure, say N. | |
181 | ||
0d1bb41a BD |
182 | config MMC_SDHCI_S3C_DMA |
183 | bool "DMA support on S3C SDHCI" | |
184 | depends on MMC_SDHCI_S3C && EXPERIMENTAL | |
185 | help | |
186 | Enable DMA support on the Samsung S3C SDHCI glue. The DMA | |
187 | has proved to be problematic if the controller encounters | |
188 | certain errors, and thus should be treated with care. | |
189 | ||
190 | YMMV. | |
191 | ||
1c6a0718 PO |
192 | config MMC_OMAP |
193 | tristate "TI OMAP Multimedia Card Interface support" | |
790864dc | 194 | depends on ARCH_OMAP |
1c6a0718 PO |
195 | select TPS65010 if MACH_OMAP_H2 |
196 | help | |
197 | This selects the TI OMAP Multimedia card Interface. | |
198 | If you have an OMAP board with a Multimedia Card slot, | |
199 | say Y or M here. | |
200 | ||
201 | If unsure, say N. | |
202 | ||
a45c6cb8 MC |
203 | config MMC_OMAP_HS |
204 | tristate "TI OMAP High Speed Multimedia Card Interface support" | |
82cf818d | 205 | depends on ARCH_OMAP2430 || ARCH_OMAP3 || ARCH_OMAP4 |
a45c6cb8 MC |
206 | help |
207 | This selects the TI OMAP High Speed Multimedia card Interface. | |
82cf818d | 208 | If you have an OMAP2430 or OMAP3 board or OMAP4 board with a |
209 | Multimedia Card slot, say Y or M here. | |
a45c6cb8 MC |
210 | |
211 | If unsure, say N. | |
212 | ||
1c6a0718 PO |
213 | config MMC_WBSD |
214 | tristate "Winbond W83L51xD SD/MMC Card Interface support" | |
790864dc | 215 | depends on ISA_DMA_API |
1c6a0718 PO |
216 | help |
217 | This selects the Winbond(R) W83L51xD Secure digital and | |
218 | Multimedia card Interface. | |
219 | If you have a machine with a integrated W83L518D or W83L519D | |
220 | SD/MMC card reader, say Y or M here. | |
221 | ||
222 | If unsure, say N. | |
223 | ||
224 | config MMC_AU1X | |
225 | tristate "Alchemy AU1XX0 MMC Card Interface support" | |
790864dc | 226 | depends on SOC_AU1200 |
1c6a0718 PO |
227 | help |
228 | This selects the AMD Alchemy(R) Multimedia card interface. | |
229 | If you have a Alchemy platform with a MMC slot, say Y or M here. | |
230 | ||
231 | If unsure, say N. | |
232 | ||
04d699c3 RE |
233 | choice |
234 | prompt "Atmel SD/MMC Driver" | |
09591dd3 | 235 | depends on AVR32 || ARCH_AT91 |
04d699c3 RE |
236 | default MMC_ATMELMCI if AVR32 |
237 | help | |
238 | Choose which driver to use for the Atmel MCI Silicon | |
239 | ||
1c6a0718 PO |
240 | config MMC_AT91 |
241 | tristate "AT91 SD/MMC Card Interface support" | |
790864dc | 242 | depends on ARCH_AT91 |
1c6a0718 PO |
243 | help |
244 | This selects the AT91 MCI controller. | |
245 | ||
246 | If unsure, say N. | |
247 | ||
7d2be074 HS |
248 | config MMC_ATMELMCI |
249 | tristate "Atmel Multimedia Card Interface support" | |
04d699c3 | 250 | depends on AVR32 || ARCH_AT91 |
7d2be074 HS |
251 | help |
252 | This selects the Atmel Multimedia Card Interface driver. If | |
04d699c3 RE |
253 | you have an AT32 (AVR32) or AT91 platform with a Multimedia |
254 | Card slot, say Y or M here. | |
7d2be074 HS |
255 | |
256 | If unsure, say N. | |
257 | ||
04d699c3 RE |
258 | endchoice |
259 | ||
65e8b083 HS |
260 | config MMC_ATMELMCI_DMA |
261 | bool "Atmel MCI DMA support (EXPERIMENTAL)" | |
75305d76 | 262 | depends on MMC_ATMELMCI && (AVR32 || ARCH_AT91SAM9G45) && DMA_ENGINE && EXPERIMENTAL |
65e8b083 HS |
263 | help |
264 | Say Y here to have the Atmel MCI driver use a DMA engine to | |
265 | do data transfers and thus increase the throughput and | |
266 | reduce the CPU utilization. Note that this is highly | |
267 | experimental and may cause the driver to lock up. | |
268 | ||
269 | If unsure, say N. | |
270 | ||
1c6a0718 PO |
271 | config MMC_IMX |
272 | tristate "Motorola i.MX Multimedia Card Interface support" | |
8c8fdbc9 | 273 | depends on ARCH_MX1 |
1c6a0718 PO |
274 | help |
275 | This selects the Motorola i.MX Multimedia card Interface. | |
276 | If you have a i.MX platform with a Multimedia Card slot, | |
d96be879 SH |
277 | say Y or M here. |
278 | ||
279 | If unsure, say N. | |
280 | ||
eba3f137 ST |
281 | config MMC_MSM |
282 | tristate "Qualcomm SDCC Controller Support" | |
edd4dd0e | 283 | depends on MMC && ARCH_MSM |
9d2bd738 SM |
284 | help |
285 | This provides support for the SD/MMC cell found in the | |
eba3f137 ST |
286 | MSM and QSD SOCs from Qualcomm. The controller also has |
287 | support for SDIO devices. | |
9d2bd738 | 288 | |
d96be879 SH |
289 | config MMC_MXC |
290 | tristate "Freescale i.MX2/3 Multimedia Card Interface support" | |
291 | depends on ARCH_MXC | |
292 | help | |
293 | This selects the Freescale i.MX2/3 Multimedia card Interface. | |
294 | If you have a i.MX platform with a Multimedia Card slot, | |
1c6a0718 PO |
295 | say Y or M here. |
296 | ||
297 | If unsure, say N. | |
298 | ||
299 | config MMC_TIFM_SD | |
300 | tristate "TI Flash Media MMC/SD Interface support (EXPERIMENTAL)" | |
790864dc | 301 | depends on EXPERIMENTAL && PCI |
1c6a0718 PO |
302 | select TIFM_CORE |
303 | help | |
304 | Say Y here if you want to be able to access MMC/SD cards with | |
305 | the Texas Instruments(R) Flash Media card reader, found in many | |
306 | laptops. | |
307 | This option 'selects' (turns on, enables) 'TIFM_CORE', but you | |
308 | probably also need appropriate card reader host adapter, such as | |
309 | 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support | |
310 | (TIFM_7XX1)'. | |
311 | ||
312 | To compile this driver as a module, choose M here: the | |
313 | module will be called tifm_sd. | |
314 | ||
236caa7c MS |
315 | config MMC_MVSDIO |
316 | tristate "Marvell MMC/SD/SDIO host driver" | |
317 | depends on PLAT_ORION | |
318 | ---help--- | |
319 | This selects the Marvell SDIO host driver. | |
320 | SDIO may currently be found on the Kirkwood 88F6281 and 88F6192 | |
321 | SoC controllers. | |
322 | ||
323 | To compile this driver as a module, choose M here: the | |
324 | module will be called mvsdio. | |
325 | ||
b4cff454 VB |
326 | config MMC_DAVINCI |
327 | tristate "TI DAVINCI Multimedia Card Interface support" | |
328 | depends on ARCH_DAVINCI | |
329 | help | |
330 | This selects the TI DAVINCI Multimedia card Interface. | |
331 | If you have an DAVINCI board with a Multimedia Card slot, | |
332 | say Y or M here. If unsure, say N. | |
333 | ||
15a0580c | 334 | config MMC_SPI |
57105737 | 335 | tristate "MMC/SD/SDIO over SPI" |
1ea4f444 | 336 | depends on SPI_MASTER && !HIGHMEM && HAS_DMA |
15a0580c DB |
337 | select CRC7 |
338 | select CRC_ITU_T | |
339 | help | |
692105b8 | 340 | Some systems access MMC/SD/SDIO cards using a SPI controller |
57105737 PO |
341 | instead of using a "native" MMC/SD/SDIO controller. This has a |
342 | disadvantage of being relatively high overhead, but a compensating | |
343 | advantage of working on many systems without dedicated MMC/SD/SDIO | |
344 | controllers. | |
15a0580c DB |
345 | |
346 | If unsure, or if your system has no SPI master driver, say N. | |
347 | ||
be518018 TK |
348 | config MMC_S3C |
349 | tristate "Samsung S3C SD/MMC Card Interface support" | |
1ea4f444 | 350 | depends on ARCH_S3C2410 |
be518018 TK |
351 | help |
352 | This selects a driver for the MCI interface found in | |
353 | Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs. | |
354 | If you have a board based on one of those and a MMC/SD | |
355 | slot, say Y or M here. | |
356 | ||
357 | If unsure, say N. | |
358 | ||
5a2c4fe0 BD |
359 | config MMC_S3C_HW_SDIO_IRQ |
360 | bool "Hardware support for SDIO IRQ" | |
361 | depends on MMC_S3C | |
362 | help | |
363 | Enable the hardware support for SDIO interrupts instead of using | |
364 | the generic polling code. | |
365 | ||
26f14947 BD |
366 | choice |
367 | prompt "Samsung S3C SD/MMC transfer code" | |
368 | depends on MMC_S3C | |
369 | ||
370 | config MMC_S3C_PIO | |
371 | bool "Use PIO transfers only" | |
372 | help | |
373 | Use PIO to transfer data between memory and the hardware. | |
374 | ||
375 | PIO is slower than DMA as it requires CPU instructions to | |
376 | move the data. This has been the traditional default for | |
377 | the S3C MCI driver. | |
378 | ||
379 | config MMC_S3C_DMA | |
380 | bool "Use DMA transfers only (EXPERIMENTAL)" | |
381 | depends on EXPERIMENTAL | |
382 | help | |
383 | Use DMA to transfer data between memory and the hardare. | |
384 | ||
385 | Currently, the DMA support in this driver seems to not be | |
386 | working properly and needs to be debugged before this | |
387 | option is useful. | |
388 | ||
389 | config MMC_S3C_PIODMA | |
390 | bool "Support for both PIO and DMA (EXPERIMENTAL)" | |
391 | help | |
392 | Compile both the PIO and DMA transfer routines into the | |
393 | driver and let the platform select at run-time which one | |
394 | is best. | |
395 | ||
396 | See notes for the DMA option. | |
397 | ||
398 | endchoice | |
399 | ||
6a36913a SS |
400 | config MMC_SDRICOH_CS |
401 | tristate "MMC/SD driver for Ricoh Bay1Controllers (EXPERIMENTAL)" | |
1ea4f444 | 402 | depends on EXPERIMENTAL && PCI && PCMCIA |
6a36913a SS |
403 | help |
404 | Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA | |
405 | card whenever you insert a MMC or SD card into the card slot. | |
406 | ||
407 | To compile this driver as a module, choose M here: the | |
408 | module will be called sdricoh_cs. | |
409 | ||
4a48998f IM |
410 | config MMC_TMIO |
411 | tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support" | |
3d8ca8c0 | 412 | depends on MFD_TMIO || MFD_ASIC3 || MFD_SH_MOBILE_SDHI |
4a48998f IM |
413 | help |
414 | This provides support for the SD/MMC cell found in TC6393XB, | |
e6f2c7ad | 415 | T7L66XB and also HTC ASIC3 |
5f5bac82 MM |
416 | |
417 | config MMC_CB710 | |
418 | tristate "ENE CB710 MMC/SD Interface support" | |
419 | depends on PCI | |
9ffca830 | 420 | select MISC_DEVICES |
5f5bac82 MM |
421 | select CB710_CORE |
422 | help | |
423 | This option enables support for MMC/SD part of ENE CB710/720 Flash | |
424 | memory card reader found in some laptops (ie. some versions of | |
425 | HP Compaq nx9500). | |
426 | ||
427 | This driver can also be built as a module. If so, the module | |
428 | will be called cb710-mmc. | |
429 | ||
f0bf7f61 HW |
430 | config MMC_VIA_SDMMC |
431 | tristate "VIA SD/MMC Card Reader Driver" | |
432 | depends on PCI | |
433 | help | |
434 | This selects the VIA SD/MMC Card Reader driver, say Y or M here. | |
435 | VIA provides one multi-functional card reader which integrated into | |
436 | some motherboards manufactured by VIA. This card reader supports | |
437 | SD/MMC/SDHC. | |
438 | If you have a controller with this interface, say Y or M here. | |
439 | ||
440 | If unsure, say N. | |
eb962d5b CC |
441 | |
442 | config SDH_BFIN | |
443 | tristate "Blackfin Secure Digital Host support" | |
05dabcc4 | 444 | depends on (BF54x && !BF544) || (BF51x && !BF512) |
eb962d5b CC |
445 | help |
446 | If you say yes here you will get support for the Blackfin on-chip | |
447 | Secure Digital Host interface. This includes support for MMC and | |
448 | SD cards. | |
449 | ||
450 | To compile this driver as a module, choose M here: the | |
451 | module will be called bfin_sdh. | |
452 | ||
453 | If unsure, say N. | |
454 | ||
455 | config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND | |
456 | bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround" | |
457 | depends on SDH_BFIN | |
458 | help | |
459 | If you say yes here SD-Cards may work on the EZkit. | |
fdc50a94 YG |
460 | |
461 | config MMC_SH_MMCIF | |
462 | tristate "SuperH Internal MMCIF support" | |
463 | depends on MMC_BLOCK && (SUPERH || ARCH_SHMOBILE) | |
464 | help | |
b595076a | 465 | This selects the MMC Host Interface controller (MMCIF). |
fdc50a94 YG |
466 | |
467 | This driver supports MMCIF in sh7724/sh7757/sh7372. | |
61bfbdb8 LPC |
468 | |
469 | config MMC_JZ4740 | |
470 | tristate "JZ4740 SD/Multimedia Card Interface support" | |
471 | depends on MACH_JZ4740 | |
472 | help | |
473 | This selects support for the SD/MMC controller on Ingenic JZ4740 | |
474 | SoCs. | |
475 | If you have a board based on such a SoC and with a SD/MMC slot, | |
476 | say Y or M here. | |
53f3a9e2 DV |
477 | |
478 | config MMC_USHC | |
479 | tristate "USB SD Host Controller (USHC) support" | |
480 | depends on USB | |
481 | help | |
482 | This selects support for USB SD Host Controllers based on | |
483 | the Cypress Astoria chip with firmware compliant with CSR's | |
484 | USB SD Host Controller specification (CS-118793-SP). | |
485 | ||
486 | CSR boards with this device include: USB<>SDIO (M1985v2), | |
487 | and Ultrasira. | |
488 | ||
489 | Note: These controllers only support SDIO cards and do not | |
490 | support MMC or SD memory cards. |