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