MAINTAINERS: Add Ulf Hansson to the MEMORYSTICK section
[linux-block.git] / drivers / mmc / host / Kconfig
CommitLineData
1c6a0718
PO
1#
2# MMC/SD host controller drivers
3#
4
57105737 5comment "MMC/SD/SDIO Host Controller Drivers"
1c6a0718 6
03596b92 7config MMC_DEBUG
b4f146f5 8 bool "MMC host drivers debugging"
03596b92
SL
9 depends on MMC != n
10 help
11 This is an option for use by developers; most people should
12 say N here. This enables MMC host driver debugging. And further
13 added host drivers please don't invent their private macro for
14 debugging.
15
1c6a0718
PO
16config MMC_ARMMMCI
17 tristate "ARM AMBA Multimedia Card Interface support"
790864dc 18 depends on ARM_AMBA
1c6a0718
PO
19 help
20 This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
21 Interface (PL180 and PL181) support. If you have an ARM(R)
22 platform with a Multimedia Card slot, say Y or M here.
23
24 If unsure, say N.
25
9cb15142 26config MMC_QCOM_DML
1ac99066 27 bool "Qualcomm Data Mover for SD Card Controller"
9cb15142
SK
28 depends on MMC_ARMMMCI && QCOM_BAM_DMA
29 default y
30 help
31 This selects the Qualcomm Data Mover lite/local on SD Card controller.
32 This option will enable the dma to work correctly, if you are using
33 Qcom SOCs and MMC, you would probably need this option to get DMA working.
34
35 if unsure, say N.
36
46b723dd
LB
37config MMC_STM32_SDMMC
38 bool "STMicroelectronics STM32 SDMMC Controller"
39 depends on MMC_ARMMMCI
40 default y
41 help
42 This selects the STMicroelectronics STM32 SDMMC host controller.
43 If you have a STM32 sdmmc host with internal DMA say Y here.
44
45 If unsure, say N.
46
1c6a0718
PO
47config MMC_PXA
48 tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
790864dc 49 depends on ARCH_PXA
1c6a0718
PO
50 help
51 This selects the Intel(R) PXA(R) Multimedia card Interface.
52 If you have a PXA(R) platform with a Multimedia Card slot,
53 say Y or M here.
54
55 If unsure, say N.
56
57config MMC_SDHCI
34671dc2 58 tristate "Secure Digital Host Controller Interface support"
b8c86fc5 59 depends on HAS_DMA
1c6a0718 60 help
b8c86fc5 61 This selects the generic Secure Digital Host Controller Interface.
1c6a0718
PO
62 It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
63 and Toshiba(R). Most controllers found in laptops are of this type.
b8c86fc5
PO
64
65 If you have a controller with this interface, say Y or M here. You
66 also need to enable an appropriate bus interface.
67
68 If unsure, say N.
69
4e4141a5
AV
70config MMC_SDHCI_IO_ACCESSORS
71 bool
72 depends on MMC_SDHCI
73 help
74 This is silent Kconfig symbol that is selected by the drivers that
75 need to overwrite SDHCI IO memory accessors.
76
7657c3a7
AH
77config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
78 bool
82813b71 79 depends on MMC_SDHCI
7657c3a7
AH
80 select MMC_SDHCI_IO_ACCESSORS
81 help
82 This option is selected by drivers running on big endian hosts
83 and performing I/O to a SDHCI controller through a bus that
84 implements a hardware byte swapper using a 32-bit datum.
85 This endian mapping mode is called "data invariance" and
86 has the effect of scrambling the addresses and formats of data
87 accessed in sizes other than the datum size.
88
2ca63524 89 This is the case for the Nintendo Wii SDHCI.
7657c3a7 90
b8c86fc5
PO
91config MMC_SDHCI_PCI
92 tristate "SDHCI support on PCI bus"
93 depends on MMC_SDHCI && PCI
8ee82bda 94 select MMC_CQHCI
b8c86fc5
PO
95 help
96 This selects the PCI Secure Digital Host Controller Interface.
97 Most controllers found today are PCI devices.
98
1c6a0718
PO
99 If you have a controller with this interface, say Y or M here.
100
101 If unsure, say N.
102
5ae70296 103config MMC_RICOH_MMC
86147c84 104 bool "Ricoh MMC Controller Disabler"
b8c86fc5 105 depends on MMC_SDHCI_PCI
ba2f7325 106 default y
5ae70296 107 help
03cd8f7e 108 This adds a pci quirk to disable Ricoh MMC Controller. This
5ae70296
PL
109 proprietary controller is unnecessary because the SDHCI driver
110 supports MMC cards on the SD controller, but if it is not
111 disabled, it will steal the MMC cards away - rendering them
03cd8f7e 112 useless. It is safe to select this even if you don't
5ae70296
PL
113 have a Ricoh based card reader.
114
5ae70296
PL
115 If unsure, say Y.
116
c4e05037
AH
117config MMC_SDHCI_ACPI
118 tristate "SDHCI support for ACPI enumerated SDHCI controllers"
c2eda8ab 119 depends on MMC_SDHCI && ACPI && PCI
6e1c7d61 120 select IOSF_MBI if X86
c4e05037
AH
121 help
122 This selects support for ACPI enumerated SDHCI controllers,
123 identified by ACPI Compatibility ID PNP0D40 or specific
124 ACPI Hardware IDs.
125
126 If you have a controller with this interface, say Y or M here.
127
128 If unsure, say N.
129
f0de8369
SG
130config MMC_SDHCI_PLTFM
131 tristate "SDHCI platform and OF driver helper"
38576af1 132 depends on MMC_SDHCI
f0de8369
SG
133 help
134 This selects the common helper functions support for Secure Digital
135 Host Controller Interface based platform and OF drivers.
136
137 If you have a controller with this interface, say Y or M here.
138
139 If unsure, say N.
140
e3ec3a3d
SB
141config MMC_SDHCI_OF_ARASAN
142 tristate "SDHCI OF support for the Arasan SDHCI controllers"
143 depends on MMC_SDHCI_PLTFM
144 depends on OF
c390f211 145 depends on COMMON_CLK
84362d79 146 select MMC_CQHCI
e3ec3a3d
SB
147 help
148 This selects the Arasan Secure Digital Host Controller Interface
149 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
150
151 If you have a controller with this interface, say Y or M here.
152
153 If unsure, say N.
154
bb5f8ea4 155config MMC_SDHCI_OF_AT91
156 tristate "SDHCI OF support for the Atmel SDMMC controller"
157 depends on MMC_SDHCI_PLTFM
158 depends on OF
bb5f8ea4 159 help
160 This selects the Atmel SDMMC driver
161
f0de8369
SG
162config MMC_SDHCI_OF_ESDHC
163 tristate "SDHCI OF support for the Freescale eSDHC controller"
164 depends on MMC_SDHCI_PLTFM
2ca63524 165 depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
166 select MMC_SDHCI_IO_ACCESSORS
151ede40 167 select FSL_GUTS
7657c3a7
AH
168 help
169 This selects the Freescale eSDHC controller support.
3085e9c1 170
f0de8369
SG
171 If you have a controller with this interface, say Y or M here.
172
3085e9c1
AV
173 If unsure, say N.
174
1144ab5d 175config MMC_SDHCI_OF_HLWD
f0de8369
SG
176 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
177 depends on MMC_SDHCI_PLTFM
5f2e097c 178 depends on PPC
1144ab5d
AH
179 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
180 help
181 This selects the Secure Digital Host Controller Interface (SDHCI)
182 found in the "Hollywood" chipset of the Nintendo Wii video game
183 console.
184
f0de8369
SG
185 If you have a controller with this interface, say Y or M here.
186
1144ab5d
AH
187 If unsure, say N.
188
e438cf49
JZ
189config MMC_SDHCI_OF_DWCMSHC
190 tristate "SDHCI OF support for the Synopsys DWC MSHC"
191 depends on MMC_SDHCI_PLTFM
192 depends on OF
193 depends on COMMON_CLK
194 help
195 This selects Synopsys DesignWare Cores Mobile Storage Controller
196 support.
197 If you have a controller with this interface, say Y or M here.
198 If unsure, say N.
199
ff6af28f
MY
200config MMC_SDHCI_CADENCE
201 tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
202 depends on MMC_SDHCI_PLTFM
203 depends on OF
204 help
205 This selects the Cadence SD/SDIO/eMMC driver.
206
207 If you have a controller with this interface, say Y or M here.
208
209 If unsure, say N.
210
20b1597b 211config MMC_SDHCI_CNS3XXX
85d6509d 212 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
20b1597b 213 depends on ARCH_CNS3XXX
f0de8369 214 depends on MMC_SDHCI_PLTFM
20b1597b
AV
215 help
216 This selects the SDHCI support for CNS3xxx System-on-Chip devices.
217
f0de8369
SG
218 If you have a controller with this interface, say Y or M here.
219
20b1597b
AV
220 If unsure, say N.
221
95f25efe 222config MMC_SDHCI_ESDHC_IMX
95a2482a 223 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
2b795518 224 depends on ARCH_MXC
f0de8369 225 depends on MMC_SDHCI_PLTFM
95f25efe 226 select MMC_SDHCI_IO_ACCESSORS
bb6e3581 227 select MMC_CQHCI
95f25efe 228 help
95a2482a
SG
229 This selects the Freescale eSDHC/uSDHC controller support
230 found on i.MX25, i.MX35 i.MX5x and i.MX6x.
95f25efe 231
f0de8369
SG
232 If you have a controller with this interface, say Y or M here.
233
95f25efe
WS
234 If unsure, say N.
235
985b1aa0 236config MMC_SDHCI_DOVE
85d6509d 237 tristate "SDHCI support on Marvell's Dove SoC"
ec4422ac 238 depends on ARCH_DOVE || MACH_DOVE
f0de8369 239 depends on MMC_SDHCI_PLTFM
985b1aa0
MR
240 select MMC_SDHCI_IO_ACCESSORS
241 help
242 This selects the Secure Digital Host Controller Interface in
243 Marvell's Dove SoC.
244
f0de8369
SG
245 If you have a controller with this interface, say Y or M here.
246
985b1aa0
MR
247 If unsure, say N.
248
03d2bfc8 249config MMC_SDHCI_TEGRA
85d6509d
SG
250 tristate "SDHCI platform support for the Tegra SD/MMC Controller"
251 depends on ARCH_TEGRA
f0de8369 252 depends on MMC_SDHCI_PLTFM
03d2bfc8 253 select MMC_SDHCI_IO_ACCESSORS
3c4019f9 254 select MMC_CQHCI
03d2bfc8
OJ
255 help
256 This selects the Tegra SD/MMC controller. If you have a Tegra
257 platform with SD or MMC devices, say Y or M here.
258
259 If unsure, say N.
260
0d1bb41a
BD
261config MMC_SDHCI_S3C
262 tristate "SDHCI support on Samsung S3C SoC"
930a6f70 263 depends on MMC_SDHCI && PLAT_SAMSUNG
0d1bb41a
BD
264 help
265 This selects the Secure Digital Host Controller Interface (SDHCI)
266 often referrered to as the HSMMC block in some of the Samsung S3C
267 range of SoC.
268
0d1bb41a
BD
269 If you have a controller with this interface, say Y or M here.
270
271 If unsure, say N.
272
b3b665b0
BS
273config MMC_SDHCI_SIRF
274 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
275 depends on ARCH_SIRF
276 depends on MMC_SDHCI_PLTFM
a1b0b977 277 select MMC_SDHCI_IO_ACCESSORS
b3b665b0
BS
278 help
279 This selects the SDHCI support for SiRF System-on-Chip devices.
280
281 If you have a controller with this interface, say Y or M here.
282
283 If unsure, say N.
284
a702c8ab
ZG
285config MMC_SDHCI_PXAV3
286 tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
287 depends on CLKDEV_LOOKUP
5d01b768 288 depends on MMC_SDHCI_PLTFM
daa3054f 289 depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
a702c8ab
ZG
290 default CPU_MMP2
291 help
292 This selects the Marvell(R) PXAV3 SD Host Controller.
293 If you have a MMP2 platform with SD Host Controller
294 and a card slot, say Y or M here.
295
296 If unsure, say N.
297
9f5d71e4
ZG
298config MMC_SDHCI_PXAV2
299 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
300 depends on CLKDEV_LOOKUP
5d01b768 301 depends on MMC_SDHCI_PLTFM
8a8735eb 302 depends on ARCH_MMP || COMPILE_TEST
9f5d71e4
ZG
303 default CPU_PXA910
304 help
305 This selects the Marvell(R) PXAV2 SD Host Controller.
306 If you have a PXA9XX platform with SD Host Controller
307 and a card slot, say Y or M here.
308
309 If unsure, say N.
310
c63b3cba
VK
311config MMC_SDHCI_SPEAR
312 tristate "SDHCI support on ST SPEAr platform"
313 depends on MMC_SDHCI && PLAT_SPEAR
bbd7f0a2 314 depends on OF
c63b3cba
VK
315 help
316 This selects the Secure Digital Host Controller Interface (SDHCI)
317 often referrered to as the HSMMC block in some of the ST SPEAR range
318 of SoC
319
320 If you have a controller with this interface, say Y or M here.
321
322 If unsure, say N.
323
0d1bb41a
BD
324config MMC_SDHCI_S3C_DMA
325 bool "DMA support on S3C SDHCI"
86147c84 326 depends on MMC_SDHCI_S3C
0d1bb41a
BD
327 help
328 Enable DMA support on the Samsung S3C SDHCI glue. The DMA
329 has proved to be problematic if the controller encounters
330 certain errors, and thus should be treated with care.
331
332 YMMV.
333
01ebea1b
CD
334config MMC_SDHCI_BCM_KONA
335 tristate "SDHCI support on Broadcom KONA platform"
fc2bd2e4 336 depends on ARCH_BCM_MOBILE
5d01b768 337 depends on MMC_SDHCI_PLTFM
01ebea1b
CD
338 help
339 This selects the Broadcom Kona Secure Digital Host Controller
340 Interface(SDHCI) support.
341 This is used in Broadcom mobile SoCs.
342
343 If you have a controller with this interface, say Y or M here.
344
87a50745
VY
345config MMC_SDHCI_F_SDH30
346 tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
347 depends on MMC_SDHCI_PLTFM
90e1d8cc 348 depends on OF || ACPI
87a50745
VY
349 help
350 This selects the Secure Digital Host Controller Interface (SDHCI)
351 Needed by some Fujitsu SoC for MMC / SD / SDIO support.
352 If you have a controller with this interface, say Y or M here.
353
354 If unsure, say N.
355
b580c52d 356config MMC_SDHCI_IPROC
77cb7d3a
SW
357 tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
358 depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
b580c52d 359 depends on MMC_SDHCI_PLTFM
7c7ba433 360 depends on OF || ACPI
b580c52d
SB
361 default ARCH_BCM_IPROC
362 select MMC_SDHCI_IO_ACCESSORS
363 help
364 This selects the iProc SD/MMC controller.
365
77cb7d3a 366 If you have a BCM2835 or IPROC platform with SD or MMC devices,
b580c52d
SB
367 say Y or M here.
368
369 If unsure, say N.
370
51c5d844 371config MMC_MESON_GX
e79dc1b4 372 tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
51c5d844
KH
373 depends on ARCH_MESON && MMC
374 help
375 This selects support for the Amlogic SD/MMC Host Controller
e79dc1b4 376 found on the S905/GX*/AXG family of SoCs. This controller is
51c5d844
KH
377 MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
378
379 If you have a controller with this interface, say Y here.
380
ed80a13b
CC
381config MMC_MESON_MX_SDIO
382 tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
383 depends on ARCH_MESON || COMPILE_TEST
384 depends on COMMON_CLK
ed80a13b
CC
385 depends on OF
386 help
387 This selects support for the SD/MMC Host Controller on
388 Amlogic Meson6, Meson8 and Meson8b SoCs.
389
390 If you have a controller with this interface, say Y or M here.
391 If unsure, say N.
392
1b66e94e
JJ
393config MMC_MOXART
394 tristate "MOXART SD/MMC Host Controller support"
395 depends on ARCH_MOXART && MMC
396 help
397 This selects support for the MOXART SD/MMC Host Controller.
398 MOXA provides one multi-functional card reader which can
399 be found on some embedded hardware such as UC-7112-LX.
400 If you have a controller with this interface, say Y here.
401
f52d9c4f
PG
402config MMC_SDHCI_ST
403 tristate "SDHCI support on STMicroelectronics SoC"
2feada5b 404 depends on ARCH_STI || FSP2
f52d9c4f
PG
405 depends on MMC_SDHCI_PLTFM
406 select MMC_SDHCI_IO_ACCESSORS
407 help
408 This selects the Secure Digital Host Controller Interface in
409 STMicroelectronics SoCs.
410
411 If you have a controller with this interface, say Y or M here.
412 If unsure, say N.
413
1c6a0718
PO
414config MMC_OMAP
415 tristate "TI OMAP Multimedia Card Interface support"
790864dc 416 depends on ARCH_OMAP
60a549fc 417 depends on TPS65010 || !MACH_OMAP_H2
1c6a0718
PO
418 help
419 This selects the TI OMAP Multimedia card Interface.
420 If you have an OMAP board with a Multimedia Card slot,
421 say Y or M here.
422
423 If unsure, say N.
424
a45c6cb8
MC
425config MMC_OMAP_HS
426 tristate "TI OMAP High Speed Multimedia Card Interface support"
a7cedab6 427 depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
a45c6cb8
MC
428 help
429 This selects the TI OMAP High Speed Multimedia card Interface.
bcf24e1d
AB
430 If you have an omap2plus board with a Multimedia Card slot,
431 say Y or M here.
a45c6cb8
MC
432
433 If unsure, say N.
434
1c6a0718
PO
435config MMC_WBSD
436 tristate "Winbond W83L51xD SD/MMC Card Interface support"
790864dc 437 depends on ISA_DMA_API
1c6a0718
PO
438 help
439 This selects the Winbond(R) W83L51xD Secure digital and
6f549034 440 Multimedia card Interface.
1c6a0718
PO
441 If you have a machine with a integrated W83L518D or W83L519D
442 SD/MMC card reader, say Y or M here.
443
444 If unsure, say N.
445
c5413ad8
OR
446config MMC_ALCOR
447 tristate "Alcor Micro/Alcor Link SD/MMC controller"
448 depends on MISC_ALCOR_PCI
449 help
450 Say Y here to include driver code to support SD/MMC card interface
451 of Alcor Micro PCI-E card reader
452
1c6a0718
PO
453config MMC_AU1X
454 tristate "Alchemy AU1XX0 MMC Card Interface support"
37663860 455 depends on MIPS_ALCHEMY
1c6a0718
PO
456 help
457 This selects the AMD Alchemy(R) Multimedia card interface.
458 If you have a Alchemy platform with a MMC slot, say Y or M here.
459
460 If unsure, say N.
461
7d2be074 462config MMC_ATMELMCI
d6a20deb 463 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
ef4b160f 464 depends on ARCH_AT91
7d2be074 465 help
ef4b160f
AS
466 This selects the Atmel Multimedia Card Interface driver.
467 If you have an AT91 platform with a Multimedia Card slot,
468 say Y or M here.
7d2be074
HS
469
470 If unsure, say N.
471
0eb0d9f4
GD
472config MMC_SDHCI_MSM
473 tristate "Qualcomm SDHCI Controller Support"
6096d7a8 474 depends on ARCH_QCOM || (ARM && COMPILE_TEST)
0eb0d9f4 475 depends on MMC_SDHCI_PLTFM
99d570da 476 select MMC_SDHCI_IO_ACCESSORS
0eb0d9f4
GD
477 help
478 This selects the Secure Digital Host Controller Interface (SDHCI)
479 support present in Qualcomm SOCs. The controller supports
480 SD/MMC/SDIO devices.
481
482 If you have a controller with this interface, say Y or M here.
483
484 If unsure, say N.
485
d96be879 486config MMC_MXC
c7ceab02
AG
487 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
488 depends on ARCH_MXC || PPC_MPC512x
d96be879 489 help
c7ceab02
AG
490 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
491 Multimedia Card Interface. If you have an i.MX or MPC512x platform
492 with a Multimedia Card slot, say Y or M here.
1c6a0718
PO
493
494 If unsure, say N.
495
e4243f13
SG
496config MMC_MXS
497 tristate "Freescale MXS Multimedia Card Interface support"
498 depends on ARCH_MXS && MXS_DMA
499 help
500 This selects the Freescale SSP MMC controller found on MXS based
501 platforms like mx23/28.
502
503 If unsure, say N.
504
1c6a0718 505config MMC_TIFM_SD
86147c84
KC
506 tristate "TI Flash Media MMC/SD Interface support"
507 depends on PCI
1c6a0718
PO
508 select TIFM_CORE
509 help
510 Say Y here if you want to be able to access MMC/SD cards with
511 the Texas Instruments(R) Flash Media card reader, found in many
512 laptops.
513 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
514 probably also need appropriate card reader host adapter, such as
515 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
516 (TIFM_7XX1)'.
517
6f549034 518 To compile this driver as a module, choose M here: the
1c6a0718
PO
519 module will be called tifm_sd.
520
236caa7c
MS
521config MMC_MVSDIO
522 tristate "Marvell MMC/SD/SDIO host driver"
523 depends on PLAT_ORION
17da6783 524 depends on OF
236caa7c
MS
525 ---help---
526 This selects the Marvell SDIO host driver.
527 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
528 SoC controllers.
529
530 To compile this driver as a module, choose M here: the
531 module will be called mvsdio.
532
b4cff454 533config MMC_DAVINCI
6f549034
EWI
534 tristate "TI DAVINCI Multimedia Card Interface support"
535 depends on ARCH_DAVINCI
536 help
537 This selects the TI DAVINCI Multimedia card Interface.
538 If you have an DAVINCI board with a Multimedia Card slot,
539 say Y or M here. If unsure, say N.
b4cff454 540
85c34d2e
ML
541config MMC_GOLDFISH
542 tristate "goldfish qemu Multimedia Card Interface support"
7f8a9a7e 543 depends on GOLDFISH || COMPILE_TEST
85c34d2e
ML
544 help
545 This selects the Goldfish Multimedia card Interface emulation
546 found on the Goldfish Android virtual device emulation.
547
15a0580c 548config MMC_SPI
57105737 549 tristate "MMC/SD/SDIO over SPI"
e176c255 550 depends on SPI_MASTER && HAS_DMA
15a0580c
DB
551 select CRC7
552 select CRC_ITU_T
553 help
692105b8 554 Some systems access MMC/SD/SDIO cards using a SPI controller
57105737
PO
555 instead of using a "native" MMC/SD/SDIO controller. This has a
556 disadvantage of being relatively high overhead, but a compensating
557 advantage of working on many systems without dedicated MMC/SD/SDIO
558 controllers.
15a0580c
DB
559
560 If unsure, or if your system has no SPI master driver, say N.
561
be518018
TK
562config MMC_S3C
563 tristate "Samsung S3C SD/MMC Card Interface support"
b130d5c2 564 depends on ARCH_S3C24XX
b45e4b50 565 depends on S3C24XX_DMAC
be518018
TK
566 help
567 This selects a driver for the MCI interface found in
6f549034 568 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
be518018
TK
569 If you have a board based on one of those and a MMC/SD
570 slot, say Y or M here.
571
572 If unsure, say N.
573
5a2c4fe0 574config MMC_S3C_HW_SDIO_IRQ
6f549034
EWI
575 bool "Hardware support for SDIO IRQ"
576 depends on MMC_S3C
577 help
578 Enable the hardware support for SDIO interrupts instead of using
579 the generic polling code.
5a2c4fe0 580
26f14947
BD
581choice
582 prompt "Samsung S3C SD/MMC transfer code"
583 depends on MMC_S3C
584
585config MMC_S3C_PIO
586 bool "Use PIO transfers only"
587 help
588 Use PIO to transfer data between memory and the hardware.
589
590 PIO is slower than DMA as it requires CPU instructions to
591 move the data. This has been the traditional default for
592 the S3C MCI driver.
593
594config MMC_S3C_DMA
86147c84 595 bool "Use DMA transfers only"
26f14947
BD
596 help
597 Use DMA to transfer data between memory and the hardare.
598
599 Currently, the DMA support in this driver seems to not be
600 working properly and needs to be debugged before this
601 option is useful.
602
26f14947
BD
603endchoice
604
6a36913a 605config MMC_SDRICOH_CS
86147c84
KC
606 tristate "MMC/SD driver for Ricoh Bay1Controllers"
607 depends on PCI && PCMCIA
6a36913a
SS
608 help
609 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
610 card whenever you insert a MMC or SD card into the card slot.
611
612 To compile this driver as a module, choose M here: the
613 module will be called sdricoh_cs.
614
fb8bd90f
CZ
615config MMC_SDHCI_SPRD
616 tristate "Spreadtrum SDIO host Controller"
617 depends on ARCH_SPRD
618 depends on MMC_SDHCI_PLTFM
619 select MMC_SDHCI_IO_ACCESSORS
620 help
621 This selects the SDIO Host Controller in Spreadtrum
622 SoCs, this driver supports R11(IP version: R11P0).
623
624 If you have a controller with this interface, say Y or M here.
625
626 If unsure, say N.
627
b6147490
GL
628config MMC_TMIO_CORE
629 tristate
630
4a48998f
IM
631config MMC_TMIO
632 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
42051e8a 633 depends on MFD_TMIO || MFD_ASIC3
b6147490 634 select MMC_TMIO_CORE
4a48998f
IM
635 help
636 This provides support for the SD/MMC cell found in TC6393XB,
e6f2c7ad 637 T7L66XB and also HTC ASIC3
5f5bac82 638
42051e8a 639config MMC_SDHI
b5b6a5f4 640 tristate "Renesas SDHI SD/SDIO controller support"
49312c1f 641 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
42051e8a
GL
642 select MMC_TMIO_CORE
643 help
644 This provides support for the SDHI SD/SDIO controller found in
b5b6a5f4 645 Renesas SuperH, ARM and ARM64 based SoCs
42051e8a 646
2a68ea78
SH
647config MMC_SDHI_SYS_DMAC
648 tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
1d6efe08 649 depends on MMC_SDHI
c813e10a 650 default MMC_SDHI if (SUPERH || ARM)
2a68ea78
SH
651 help
652 This provides DMA support for SDHI SD/SDIO controllers
653 using SYS-DMAC via DMA Engine. This supports the controllers
654 found in SuperH and Renesas ARM based SoCs.
655
656config MMC_SDHI_INTERNAL_DMAC
657 tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
9706b472 658 depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
1d6efe08 659 depends on MMC_SDHI
9706b472 660 default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
2a68ea78
SH
661 help
662 This provides DMA support for SDHI SD/SDIO controllers
663 using on-chip bus mastering. This supports the controllers
9706b472
CB
664 found in arm64 based SoCs. This controller is also found in
665 some RZ family SoCs.
2a68ea78 666
3fd784f7
MY
667config MMC_UNIPHIER
668 tristate "UniPhier SD/eMMC Host Controller support"
669 depends on ARCH_UNIPHIER || COMPILE_TEST
670 depends on OF
671 select MMC_TMIO_CORE
672 help
673 This provides support for the SD/eMMC controller found in
674 UniPhier SoCs. The eMMC variant of this controller is used
675 only for 32-bit SoCs.
676
5f5bac82
MM
677config MMC_CB710
678 tristate "ENE CB710 MMC/SD Interface support"
0244ad00 679 depends on PCI
5f5bac82
MM
680 select CB710_CORE
681 help
682 This option enables support for MMC/SD part of ENE CB710/720 Flash
683 memory card reader found in some laptops (ie. some versions of
684 HP Compaq nx9500).
685
686 This driver can also be built as a module. If so, the module
687 will be called cb710-mmc.
688
f0bf7f61
HW
689config MMC_VIA_SDMMC
690 tristate "VIA SD/MMC Card Reader Driver"
691 depends on PCI
692 help
693 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
694 VIA provides one multi-functional card reader which integrated into
695 some motherboards manufactured by VIA. This card reader supports
696 SD/MMC/SDHC.
697 If you have a controller with this interface, say Y or M here.
698
699 If unsure, say N.
eb962d5b 700
01d95843
SH
701config MMC_CAVIUM_OCTEON
702 tristate "Cavium OCTEON SD/MMC Card Interface support"
703 depends on CAVIUM_OCTEON_SOC
704 help
705 This selects Cavium OCTEON SD/MMC card Interface.
706 If you have an OCTEON board with a Multimedia Card slot,
707 say Y or M here.
708
709 If unsure, say N.
710
166bac38
JG
711config MMC_CAVIUM_THUNDERX
712 tristate "Cavium ThunderX SD/MMC Card Interface support"
713 depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
62467bbb 714 depends on GPIO_THUNDERX
166bac38
JG
715 depends on OF_ADDRESS
716 help
717 This selects Cavium ThunderX SD/MMC Card Interface.
718 If you have an Cavium ARM64 board with a Multimedia Card slot
719 or builtin eMMC chip say Y or M here. If built as a module
720 the module will be called thunderx_mmc.ko.
721
f95f3850
WN
722config MMC_DW
723 tristate "Synopsys DesignWare Memory Card Interface"
c34346b2 724 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
f95f3850
WN
725 help
726 This selects support for the Synopsys DesignWare Mobile Storage IP
727 block, this provides host support for SD and MMC interfaces, in both
3fc7eaef 728 PIO, internal DMA mode and external DMA mode.
f95f3850 729
62ca8034
SH
730config MMC_DW_PLTFM
731 tristate "Synopsys Designware MCI Support as platform device"
732 depends on MMC_DW
733 default y
734 help
735 This selects the common helper functions support for Host Controller
736 Interface based platform driver. Please select this option if the IP
737 is present as a platform device. This is the common interface for the
738 Synopsys Designware IP.
739
740 If you have a controller with this interface, say Y or M here.
741
742 If unsure, say Y.
743
86958dcc
LS
744config MMC_DW_BLUEFIELD
745 tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
746 depends on MMC_DW
747 select MMC_DW_PLTFM
748 help
749 This selects support for Mellanox BlueField SoC specific extensions to
750 the Synopsys DesignWare Memory Card Interface driver. Select this
751 option for platforms based on Mellanox BlueField SoC's.
752
c3665006 753config MMC_DW_EXYNOS
e41e85cc 754 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
c3665006
TA
755 depends on MMC_DW
756 select MMC_DW_PLTFM
757 help
758 This selects support for Samsung Exynos SoC specific extensions to the
759 Synopsys DesignWare Memory Card Interface driver. Select this option
760 for platforms based on Exynos4 and Exynos5 SoC's.
761
e382ab74 762config MMC_DW_HI3798CV200
763 tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
764 depends on MMC_DW
765 select MMC_DW_PLTFM
766 help
767 This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
768 Synopsys DesignWare Memory Card Interface driver. Select this option
769 for platforms based on HiSilicon Hi3798CV200 SoC.
770
036f29d5
ZG
771config MMC_DW_K3
772 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
773 depends on MMC_DW
774 select MMC_DW_PLTFM
036f29d5
ZG
775 help
776 This selects support for Hisilicon K3 SoC specific extensions to the
777 Synopsys DesignWare Memory Card Interface driver. Select this option
778 for platforms based on Hisilicon K3 SoC's.
779
62ca8034
SH
780config MMC_DW_PCI
781 tristate "Synopsys Designware MCI support on PCI bus"
782 depends on MMC_DW && PCI
783 help
784 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
785 Select this option if the IP is present on PCI platform.
786
787 If you have a controller with this interface, say Y or M here.
788
789 If unsure, say N.
790
4cdc2ec1 791config MMC_DW_ROCKCHIP
792 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
793 depends on MMC_DW && ARCH_ROCKCHIP
794 select MMC_DW_PLTFM
795 help
796 This selects support for Rockchip SoC specific extensions to the
797 Synopsys DesignWare Memory Card Interface driver. Select this option
798 for platforms based on RK3066, RK3188 and RK3288 SoC's.
799
a8c643ad
JN
800config MMC_DW_ZX
801 tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
802 depends on MMC_DW && ARCH_ZX
803 select MMC_DW_PLTFM
804 help
805 This selects support for ZTE SoC specific extensions to the
806 Synopsys DesignWare Memory Card Interface driver. Select this option
807 for platforms based on ZX296718 SoC's.
808
fdc50a94
YG
809config MMC_SH_MMCIF
810 tristate "SuperH Internal MMCIF support"
49312c1f 811 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
fdc50a94 812 help
ba9e9157
WS
813 This selects the MMC Host Interface controller (MMCIF) found in various
814 Renesas SoCs for SH and ARM architectures.
fdc50a94 815
61bfbdb8
LPC
816
817config MMC_JZ4740
6a78768a 818 tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
685bc885 819 depends on MIPS
61bfbdb8 820 help
6a78768a
AS
821 This selects support for the SD/MMC controller on Ingenic
822 JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
823
61bfbdb8
LPC
824 If you have a board based on such a SoC and with a SD/MMC slot,
825 say Y or M here.
53f3a9e2 826
88095e7b
TO
827config MMC_VUB300
828 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
829 depends on USB
830 help
831 This selects support for Elan Digital Systems' VUB300 chip.
832
833 The VUB300 is a USB-SDIO Host Controller Interface chip
834 that enables the host computer to use SDIO/SD/MMC cards
835 via a USB 2.0 or USB 1.1 host.
836
837 The VUB300 chip will be found in both physically separate
838 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
839
840 The VUB300 chip supports SD and MMC memory cards in addition
841 to single and multifunction SDIO cards.
842
843 Some SDIO cards will need a firmware file to be loaded and
844 sent to VUB300 chip in order to achieve better data throughput.
845 Download these "Offload Pseudocode" from Elan Digital Systems'
846 web-site http://www.elandigitalsystems.com/support/downloads.php
847 and put them in /lib/firmware. Note that without these additional
848 firmware files the VUB300 chip will still function, but not at
849 the best obtainable data rate.
850
851 To compile this mmc host controller driver as a module,
852 choose M here: the module will be called vub300.
853
854 If you have a computer with an embedded VUB300 chip
855 or if you intend connecting a USB adapter based on a
856 VUB300 chip say Y or M here.
857
53f3a9e2
DV
858config MMC_USHC
859 tristate "USB SD Host Controller (USHC) support"
860 depends on USB
861 help
862 This selects support for USB SD Host Controllers based on
863 the Cypress Astoria chip with firmware compliant with CSR's
864 USB SD Host Controller specification (CS-118793-SP).
865
866 CSR boards with this device include: USB<>SDIO (M1985v2),
867 and Ultrasira.
868
869 Note: These controllers only support SDIO cards and do not
870 support MMC or SD memory cards.
3a96dff0
TP
871
872config MMC_WMT
873 tristate "Wondermedia SD/MMC Host Controller support"
874 depends on ARCH_VT8500
875 default y
876 help
877 This selects support for the SD/MMC Host Controller on
878 Wondermedia WM8505/WM8650 based SoCs.
879
880 To compile this driver as a module, choose M here: the
881 module will be called wmt-sdmmc.
6a5971d8 882
75fa9ea6
GL
883config MMC_USDHI6ROL0
884 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
1ef94740 885 depends on HAS_DMA
75fa9ea6
GL
886 help
887 This selects support for the Renesas USDHI6ROL0 SD/SDIO
888 Host Controller
889
2c94b645
WW
890config MMC_REALTEK_PCI
891 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
e455b69d 892 depends on MISC_RTSX_PCI
2c94b645
WW
893 help
894 Say Y here to include driver code to support SD/MMC card interface
895 of Realtek PCI-E card reader
c7f6558d
RT
896
897config MMC_REALTEK_USB
898 tristate "Realtek USB SD/MMC Card Interface Driver"
e455b69d 899 depends on MISC_RTSX_USB
c7f6558d
RT
900 help
901 Say Y here to include driver code to support SD/MMC card interface
902 of Realtek RTS5129/39 series card reader
19b7f796
DL
903
904config MMC_SUNXI
905 tristate "Allwinner sunxi SD/MMC Host Controller support"
906 depends on ARCH_SUNXI
907 help
908 This selects support for the SD/MMC Host Controller on
909 Allwinner sunxi SoCs.
a5eb8bbd 910
a4080225
VG
911config MMC_CQHCI
912 tristate "Command Queue Host Controller Interface support"
913 depends on HAS_DMA
914 help
915 This selects the Command Queue Host Controller Interface (CQHCI)
916 support present in host controllers of Qualcomm Technologies, Inc
917 amongst others.
918 This controller supports eMMC devices with command queue support.
919
920 If you have a controller with this interface, say Y or M here.
921
922 If unsure, say N.
923
a5eb8bbd
OZ
924config MMC_TOSHIBA_PCI
925 tristate "Toshiba Type A SD/MMC Card Interface Driver"
926 depends on PCI
20848903 927
660fc733
EA
928config MMC_BCM2835
929 tristate "Broadcom BCM2835 SDHOST MMC Controller support"
930 depends on ARCH_BCM2835 || COMPILE_TEST
660fc733
EA
931 help
932 This selects the BCM2835 SDHOST MMC controller. If you have
933 a BCM2835 platform with SD or MMC devices, say Y or M here.
934
935 Note that the BCM2835 has two SD controllers: The Arasan
936 sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
937 sdhost controller (supported by this driver).
938
939 If unsure, say N.
940
20848903
CJ
941config MMC_MTK
942 tristate "MediaTek SD/MMC Card Interface support"
c2b22fff 943 depends on HAS_DMA
20848903
CJ
944 help
945 This selects the MediaTek(R) Secure digital and Multimedia card Interface.
946 If you have a machine with a integrated SD/MMC card reader, say Y or M here.
947 This is needed if support for any SD/SDIO/MMC devices is required.
948 If unsure, say N.
5d9460d7
AP
949
950config MMC_SDHCI_MICROCHIP_PIC32
6f549034
EWI
951 tristate "Microchip PIC32MZDA SDHCI support"
952 depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
953 help
954 This selects the Secure Digital Host Controller Interface (SDHCI)
955 for PIC32MZDA platform.
956
957 If you have a controller with this interface, say Y or M here.
5d9460d7 958
6f549034 959 If unsure, say N.
5d9460d7 960
476bf3d6
AC
961config MMC_SDHCI_BRCMSTB
962 tristate "Broadcom SDIO/SD/MMC support"
963 depends on ARCH_BRCMSTB || BMIPS_GENERIC
964 depends on MMC_SDHCI_PLTFM
965 default y
966 help
967 This selects support for the SDIO/SD/MMC Host Controller on
968 Broadcom STB SoCs.
969
970 If unsure, say Y.
3a3748db
HZ
971
972config MMC_SDHCI_XENON
973 tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
974 depends on MMC_SDHCI_PLTFM
975 help
976 This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
977 If you have a controller with this interface, say Y or M here.
978 If unsure, say N.
7d326930
KVA
979
980config MMC_SDHCI_OMAP
981 tristate "TI SDHCI Controller Support"
982 depends on MMC_SDHCI_PLTFM && OF
961de0a8 983 select THERMAL
287b1da6 984 imply TI_SOC_THERMAL
7d326930
KVA
985 help
986 This selects the Secure Digital Host Controller Interface (SDHCI)
987 support present in TI's DRA7 SOCs. The controller supports
988 SD/MMC/SDIO devices.
989
990 If you have a controller with this interface, say Y or M here.
991
992 If unsure, say N.
41fd4cae
FA
993
994config MMC_SDHCI_AM654
995 tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
996 depends on MMC_SDHCI_PLTFM && OF
997 help
998 This selects the Secure Digital Host Controller Interface (SDHCI)
999 support present in TI's AM654 SOCs. The controller supports
1000 SD/MMC/SDIO devices.
1001
1002 If you have a controller with this interface, say Y or M here.
1003
1004 If unsure, say N.