xref: /linux/drivers/mmc/host/Kconfig (revision 151ede40fd6999b0bdf5fd508e6035cf02b5dc8b)
1#
2# MMC/SD host controller drivers
3#
4
5comment "MMC/SD/SDIO Host Controller Drivers"
6
7config MMC_ARMMMCI
8	tristate "ARM AMBA Multimedia Card Interface support"
9	depends on ARM_AMBA
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
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
28config MMC_PXA
29	tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
30	depends on ARCH_PXA
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
39	tristate "Secure Digital Host Controller Interface support"
40	depends on HAS_DMA
41	help
42	  This selects the generic Secure Digital Host Controller Interface.
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.
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
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
58config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
59	bool
60	depends on MMC_SDHCI
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
70	  This is the case for the Nintendo Wii SDHCI.
71
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
79	  If you have a controller with this interface, say Y or M here.
80
81	  If unsure, say N.
82
83config MMC_RICOH_MMC
84	bool "Ricoh MMC Controller Disabler"
85	depends on MMC_SDHCI_PCI
86	default y
87	help
88	  This adds a pci quirk to disable Ricoh MMC Controller. This
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
92	  useless. It is safe to select this even if you don't
93	  have a Ricoh based card reader.
94
95	  If unsure, say Y.
96
97config MMC_SDHCI_ACPI
98	tristate "SDHCI support for ACPI enumerated SDHCI controllers"
99	depends on MMC_SDHCI && ACPI
100	select IOSF_MBI if X86
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
110config MMC_SDHCI_PLTFM
111	tristate "SDHCI platform and OF driver helper"
112	depends on MMC_SDHCI
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
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
125	depends on COMMON_CLK
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
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
138	select MMC_SDHCI_IO_ACCESSORS
139	help
140	  This selects the Atmel SDMMC driver
141
142config MMC_SDHCI_OF_ESDHC
143	tristate "SDHCI OF support for the Freescale eSDHC controller"
144	depends on MMC_SDHCI_PLTFM
145	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
146	select MMC_SDHCI_IO_ACCESSORS
147	select FSL_GUTS
148	help
149	  This selects the Freescale eSDHC controller support.
150
151	  If you have a controller with this interface, say Y or M here.
152
153	  If unsure, say N.
154
155config MMC_SDHCI_OF_HLWD
156	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
157	depends on MMC_SDHCI_PLTFM
158	depends on PPC
159	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
160	help
161	  This selects the Secure Digital Host Controller Interface (SDHCI)
162	  found in the "Hollywood" chipset of the Nintendo Wii video game
163	  console.
164
165	  If you have a controller with this interface, say Y or M here.
166
167	  If unsure, say N.
168
169config MMC_SDHCI_CNS3XXX
170	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
171	depends on ARCH_CNS3XXX
172	depends on MMC_SDHCI_PLTFM
173	help
174	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
175
176	  If you have a controller with this interface, say Y or M here.
177
178	  If unsure, say N.
179
180config MMC_SDHCI_ESDHC_IMX
181	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
182	depends on ARCH_MXC
183	depends on MMC_SDHCI_PLTFM
184	select MMC_SDHCI_IO_ACCESSORS
185	help
186	  This selects the Freescale eSDHC/uSDHC controller support
187	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
188
189	  If you have a controller with this interface, say Y or M here.
190
191	  If unsure, say N.
192
193config MMC_SDHCI_DOVE
194	tristate "SDHCI support on Marvell's Dove SoC"
195	depends on ARCH_DOVE || MACH_DOVE
196	depends on MMC_SDHCI_PLTFM
197	select MMC_SDHCI_IO_ACCESSORS
198	help
199	  This selects the Secure Digital Host Controller Interface in
200	  Marvell's Dove SoC.
201
202	  If you have a controller with this interface, say Y or M here.
203
204	  If unsure, say N.
205
206config MMC_SDHCI_TEGRA
207	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
208	depends on ARCH_TEGRA
209	depends on MMC_SDHCI_PLTFM
210	select MMC_SDHCI_IO_ACCESSORS
211	help
212	  This selects the Tegra SD/MMC controller. If you have a Tegra
213	  platform with SD or MMC devices, say Y or M here.
214
215	  If unsure, say N.
216
217config MMC_SDHCI_S3C
218	tristate "SDHCI support on Samsung S3C SoC"
219	depends on MMC_SDHCI && PLAT_SAMSUNG
220	help
221	  This selects the Secure Digital Host Controller Interface (SDHCI)
222	  often referrered to as the HSMMC block in some of the Samsung S3C
223	  range of SoC.
224
225	  If you have a controller with this interface, say Y or M here.
226
227	  If unsure, say N.
228
229config MMC_SDHCI_SIRF
230	tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
231	depends on ARCH_SIRF
232	depends on MMC_SDHCI_PLTFM
233	select MMC_SDHCI_IO_ACCESSORS
234	help
235	  This selects the SDHCI support for SiRF System-on-Chip devices.
236
237	  If you have a controller with this interface, say Y or M here.
238
239	  If unsure, say N.
240
241config MMC_SDHCI_PXAV3
242	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
243	depends on CLKDEV_LOOKUP
244	depends on MMC_SDHCI_PLTFM
245	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
246	default CPU_MMP2
247	help
248	  This selects the Marvell(R) PXAV3 SD Host Controller.
249	  If you have a MMP2 platform with SD Host Controller
250	  and a card slot, say Y or M here.
251
252	  If unsure, say N.
253
254config MMC_SDHCI_PXAV2
255	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
256	depends on CLKDEV_LOOKUP
257	depends on MMC_SDHCI_PLTFM
258	depends on ARCH_MMP || COMPILE_TEST
259	default CPU_PXA910
260	help
261	  This selects the Marvell(R) PXAV2 SD Host Controller.
262	  If you have a PXA9XX platform with SD Host Controller
263	  and a card slot, say Y or M here.
264
265	  If unsure, say N.
266
267config MMC_SDHCI_SPEAR
268	tristate "SDHCI support on ST SPEAr platform"
269	depends on MMC_SDHCI && PLAT_SPEAR
270	depends on OF
271	help
272	  This selects the Secure Digital Host Controller Interface (SDHCI)
273	  often referrered to as the HSMMC block in some of the ST SPEAR range
274	  of SoC
275
276	  If you have a controller with this interface, say Y or M here.
277
278	  If unsure, say N.
279
280config MMC_SDHCI_S3C_DMA
281	bool "DMA support on S3C SDHCI"
282	depends on MMC_SDHCI_S3C
283	help
284	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
285	  has proved to be problematic if the controller encounters
286	  certain errors, and thus should be treated with care.
287
288	  YMMV.
289
290config MMC_SDHCI_BCM_KONA
291	tristate "SDHCI support on Broadcom KONA platform"
292	depends on ARCH_BCM_MOBILE
293	depends on MMC_SDHCI_PLTFM
294	help
295	  This selects the Broadcom Kona Secure Digital Host Controller
296	  Interface(SDHCI) support.
297	  This is used in Broadcom mobile SoCs.
298
299	  If you have a controller with this interface, say Y or M here.
300
301config MMC_SDHCI_F_SDH30
302	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
303	depends on MMC_SDHCI_PLTFM
304	depends on OF
305	help
306	  This selects the Secure Digital Host Controller Interface (SDHCI)
307	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
308	  If you have a controller with this interface, say Y or M here.
309
310	  If unsure, say N.
311
312config MMC_SDHCI_IPROC
313	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
314	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
315	depends on MMC_SDHCI_PLTFM
316	default ARCH_BCM_IPROC
317	select MMC_SDHCI_IO_ACCESSORS
318	help
319	  This selects the iProc SD/MMC controller.
320
321	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
322	  say Y or M here.
323
324	  If unsure, say N.
325
326config MMC_MESON_GX
327	tristate "Amlogic S905/GX* SD/MMC Host Controller support"
328	depends on ARCH_MESON && MMC
329	help
330	  This selects support for the Amlogic SD/MMC Host Controller
331	  found on the S905/GX* family of SoCs.  This controller is
332	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
333
334	  If you have a controller with this interface, say Y here.
335
336config MMC_MOXART
337	tristate "MOXART SD/MMC Host Controller support"
338	depends on ARCH_MOXART && MMC
339	help
340	  This selects support for the MOXART SD/MMC Host Controller.
341	  MOXA provides one multi-functional card reader which can
342	  be found on some embedded hardware such as UC-7112-LX.
343	  If you have a controller with this interface, say Y here.
344
345config MMC_SDHCI_ST
346	tristate "SDHCI support on STMicroelectronics SoC"
347	depends on ARCH_STI
348	depends on MMC_SDHCI_PLTFM
349	select MMC_SDHCI_IO_ACCESSORS
350	help
351	  This selects the Secure Digital Host Controller Interface in
352	  STMicroelectronics SoCs.
353
354	  If you have a controller with this interface, say Y or M here.
355	  If unsure, say N.
356
357config MMC_OMAP
358	tristate "TI OMAP Multimedia Card Interface support"
359	depends on ARCH_OMAP
360	depends on TPS65010 || !MACH_OMAP_H2
361	help
362	  This selects the TI OMAP Multimedia card Interface.
363	  If you have an OMAP board with a Multimedia Card slot,
364	  say Y or M here.
365
366	  If unsure, say N.
367
368config MMC_OMAP_HS
369	tristate "TI OMAP High Speed Multimedia Card Interface support"
370	depends on HAS_DMA
371	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
372	help
373	  This selects the TI OMAP High Speed Multimedia card Interface.
374	  If you have an omap2plus board with a Multimedia Card slot,
375	  say Y or M here.
376
377	  If unsure, say N.
378
379config MMC_WBSD
380	tristate "Winbond W83L51xD SD/MMC Card Interface support"
381	depends on ISA_DMA_API
382	help
383	  This selects the Winbond(R) W83L51xD Secure digital and
384          Multimedia card Interface.
385	  If you have a machine with a integrated W83L518D or W83L519D
386	  SD/MMC card reader, say Y or M here.
387
388	  If unsure, say N.
389
390config MMC_AU1X
391	tristate "Alchemy AU1XX0 MMC Card Interface support"
392	depends on MIPS_ALCHEMY
393	help
394	  This selects the AMD Alchemy(R) Multimedia card interface.
395	  If you have a Alchemy platform with a MMC slot, say Y or M here.
396
397	  If unsure, say N.
398
399config MMC_ATMELMCI
400	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
401	depends on AVR32 || ARCH_AT91
402	help
403	  This selects the Atmel Multimedia Card Interface driver. If
404	  you have an AT32 (AVR32) or AT91 platform with a Multimedia
405	  Card slot, say Y or M here.
406
407	  If unsure, say N.
408
409config MMC_SDHCI_MSM
410	tristate "Qualcomm SDHCI Controller Support"
411	depends on ARCH_QCOM || (ARM && COMPILE_TEST)
412	depends on MMC_SDHCI_PLTFM
413	help
414	  This selects the Secure Digital Host Controller Interface (SDHCI)
415	  support present in Qualcomm SOCs. The controller supports
416	  SD/MMC/SDIO devices.
417
418	  If you have a controller with this interface, say Y or M here.
419
420	  If unsure, say N.
421
422config MMC_MXC
423	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
424	depends on ARCH_MXC || PPC_MPC512x
425	help
426	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
427	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
428	  with a Multimedia Card slot, say Y or M here.
429
430	  If unsure, say N.
431
432config MMC_MXS
433	tristate "Freescale MXS Multimedia Card Interface support"
434	depends on ARCH_MXS && MXS_DMA
435	help
436	  This selects the Freescale SSP MMC controller found on MXS based
437	  platforms like mx23/28.
438
439	  If unsure, say N.
440
441config MMC_TIFM_SD
442	tristate "TI Flash Media MMC/SD Interface support"
443	depends on PCI
444	select TIFM_CORE
445	help
446	  Say Y here if you want to be able to access MMC/SD cards with
447	  the Texas Instruments(R) Flash Media card reader, found in many
448	  laptops.
449	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
450	  probably also need appropriate card reader host adapter, such as
451	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
452	  (TIFM_7XX1)'.
453
454          To compile this driver as a module, choose M here: the
455	  module will be called tifm_sd.
456
457config MMC_MVSDIO
458	tristate "Marvell MMC/SD/SDIO host driver"
459	depends on PLAT_ORION
460	depends on OF
461	---help---
462	  This selects the Marvell SDIO host driver.
463	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
464	  SoC controllers.
465
466	  To compile this driver as a module, choose M here: the
467	  module will be called mvsdio.
468
469config MMC_DAVINCI
470        tristate "TI DAVINCI Multimedia Card Interface support"
471        depends on ARCH_DAVINCI
472        help
473          This selects the TI DAVINCI Multimedia card Interface.
474          If you have an DAVINCI board with a Multimedia Card slot,
475          say Y or M here.  If unsure, say N.
476
477config MMC_GOLDFISH
478	tristate "goldfish qemu Multimedia Card Interface support"
479	depends on HAS_DMA
480	depends on GOLDFISH || COMPILE_TEST
481	help
482	  This selects the Goldfish Multimedia card Interface emulation
483	  found on the Goldfish Android virtual device emulation.
484
485config MMC_SPI
486	tristate "MMC/SD/SDIO over SPI"
487	depends on SPI_MASTER && !HIGHMEM && HAS_DMA
488	select CRC7
489	select CRC_ITU_T
490	help
491	  Some systems access MMC/SD/SDIO cards using a SPI controller
492	  instead of using a "native" MMC/SD/SDIO controller.  This has a
493	  disadvantage of being relatively high overhead, but a compensating
494	  advantage of working on many systems without dedicated MMC/SD/SDIO
495	  controllers.
496
497	  If unsure, or if your system has no SPI master driver, say N.
498
499config MMC_S3C
500	tristate "Samsung S3C SD/MMC Card Interface support"
501	depends on ARCH_S3C24XX
502	depends on S3C24XX_DMAC
503	help
504	  This selects a driver for the MCI interface found in
505          Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
506	  If you have a board based on one of those and a MMC/SD
507	  slot, say Y or M here.
508
509	  If unsure, say N.
510
511config MMC_S3C_HW_SDIO_IRQ
512       bool "Hardware support for SDIO IRQ"
513       depends on MMC_S3C
514       help
515         Enable the hardware support for SDIO interrupts instead of using
516	 the generic polling code.
517
518choice
519	prompt "Samsung S3C SD/MMC transfer code"
520	depends on MMC_S3C
521
522config MMC_S3C_PIO
523	bool "Use PIO transfers only"
524	help
525	  Use PIO to transfer data between memory and the hardware.
526
527	  PIO is slower than DMA as it requires CPU instructions to
528	  move the data. This has been the traditional default for
529	  the S3C MCI driver.
530
531config MMC_S3C_DMA
532	bool "Use DMA transfers only"
533	help
534	  Use DMA to transfer data between memory and the hardare.
535
536	  Currently, the DMA support in this driver seems to not be
537	  working properly and needs to be debugged before this
538	  option is useful.
539
540endchoice
541
542config MMC_SDRICOH_CS
543	tristate "MMC/SD driver for Ricoh Bay1Controllers"
544	depends on PCI && PCMCIA
545	help
546	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
547	  card whenever you insert a MMC or SD card into the card slot.
548
549	  To compile this driver as a module, choose M here: the
550	  module will be called sdricoh_cs.
551
552config MMC_TMIO_CORE
553	tristate
554
555config MMC_TMIO
556	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
557	depends on MFD_TMIO || MFD_ASIC3
558	select MMC_TMIO_CORE
559	help
560	  This provides support for the SD/MMC cell found in TC6393XB,
561	  T7L66XB and also HTC ASIC3
562
563config MMC_SDHI
564	tristate "SH-Mobile SDHI SD/SDIO controller support"
565	depends on SUPERH || ARM || ARM64
566	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
567	select MMC_TMIO_CORE
568	help
569	  This provides support for the SDHI SD/SDIO controller found in
570	  SuperH and ARM SH-Mobile SoCs
571
572config MMC_CB710
573	tristate "ENE CB710 MMC/SD Interface support"
574	depends on PCI
575	select CB710_CORE
576	help
577	  This option enables support for MMC/SD part of ENE CB710/720 Flash
578	  memory card reader found in some laptops (ie. some versions of
579	  HP Compaq nx9500).
580
581	  This driver can also be built as a module. If so, the module
582	  will be called cb710-mmc.
583
584config MMC_VIA_SDMMC
585	tristate "VIA SD/MMC Card Reader Driver"
586	depends on PCI
587	help
588	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
589	  VIA provides one multi-functional card reader which integrated into
590	  some motherboards manufactured by VIA. This card reader supports
591	  SD/MMC/SDHC.
592	  If you have a controller with this interface, say Y or M here.
593
594	  If unsure, say N.
595
596config SDH_BFIN
597	tristate "Blackfin Secure Digital Host support"
598	depends on (BF54x && !BF544) || (BF51x && !BF512)
599	help
600	  If you say yes here you will get support for the Blackfin on-chip
601	  Secure Digital Host interface.  This includes support for MMC and
602	  SD cards.
603
604	  To compile this driver as a module, choose M here: the
605	  module will be called bfin_sdh.
606
607	  If unsure, say N.
608
609config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
610	bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
611	depends on SDH_BFIN
612	help
613	  If you say yes here SD-Cards may work on the EZkit.
614
615config MMC_DW
616	tristate "Synopsys DesignWare Memory Card Interface"
617	depends on HAS_DMA
618	depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
619	help
620	  This selects support for the Synopsys DesignWare Mobile Storage IP
621	  block, this provides host support for SD and MMC interfaces, in both
622	  PIO, internal DMA mode and external DMA mode.
623
624config MMC_DW_PLTFM
625	tristate "Synopsys Designware MCI Support as platform device"
626	depends on MMC_DW
627	default y
628	help
629	  This selects the common helper functions support for Host Controller
630	  Interface based platform driver. Please select this option if the IP
631	  is present as a platform device. This is the common interface for the
632	  Synopsys Designware IP.
633
634	  If you have a controller with this interface, say Y or M here.
635
636	  If unsure, say Y.
637
638config MMC_DW_EXYNOS
639	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
640	depends on MMC_DW
641	select MMC_DW_PLTFM
642	help
643	  This selects support for Samsung Exynos SoC specific extensions to the
644	  Synopsys DesignWare Memory Card Interface driver. Select this option
645	  for platforms based on Exynos4 and Exynos5 SoC's.
646
647config MMC_DW_K3
648	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
649	depends on MMC_DW
650	select MMC_DW_PLTFM
651	help
652	  This selects support for Hisilicon K3 SoC specific extensions to the
653	  Synopsys DesignWare Memory Card Interface driver. Select this option
654	  for platforms based on Hisilicon K3 SoC's.
655
656config MMC_DW_PCI
657	tristate "Synopsys Designware MCI support on PCI bus"
658	depends on MMC_DW && PCI
659	help
660	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
661	  Select this option if the IP is present on PCI platform.
662
663	  If you have a controller with this interface, say Y or M here.
664
665	  If unsure, say N.
666
667config MMC_DW_ROCKCHIP
668	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
669	depends on MMC_DW && ARCH_ROCKCHIP
670	select MMC_DW_PLTFM
671	help
672	  This selects support for Rockchip SoC specific extensions to the
673	  Synopsys DesignWare Memory Card Interface driver. Select this option
674	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
675
676config MMC_SH_MMCIF
677	tristate "SuperH Internal MMCIF support"
678	depends on HAS_DMA
679	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
680	help
681	  This selects the MMC Host Interface controller (MMCIF) found in various
682	  Renesas SoCs for SH and ARM architectures.
683
684
685config MMC_JZ4740
686	tristate "JZ4740 SD/Multimedia Card Interface support"
687	depends on MACH_JZ4740
688	help
689	  This selects support for the SD/MMC controller on Ingenic JZ4740
690	  SoCs.
691	  If you have a board based on such a SoC and with a SD/MMC slot,
692	  say Y or M here.
693
694config MMC_VUB300
695	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
696	depends on USB
697	help
698	  This selects support for Elan Digital Systems' VUB300 chip.
699
700	  The VUB300 is a USB-SDIO Host Controller Interface chip
701	  that enables the host computer to use SDIO/SD/MMC cards
702	  via a USB 2.0 or USB 1.1 host.
703
704	  The VUB300 chip will be found in both physically separate
705	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
706
707	  The VUB300 chip supports SD and MMC memory cards in addition
708	  to single and multifunction SDIO cards.
709
710	  Some SDIO cards will need a firmware file to be loaded and
711	  sent to VUB300 chip in order to achieve better data throughput.
712	  Download these "Offload Pseudocode" from Elan Digital Systems'
713	  web-site http://www.elandigitalsystems.com/support/downloads.php
714	  and put them in /lib/firmware. Note that without these additional
715	  firmware files the VUB300 chip will still function, but not at
716	  the best obtainable data rate.
717
718	  To compile this mmc host controller driver as a module,
719	  choose M here: the module will be called vub300.
720
721	  If you have a computer with an embedded VUB300 chip
722	  or if you intend connecting a USB adapter based on a
723	  VUB300 chip say Y or M here.
724
725config MMC_USHC
726	tristate "USB SD Host Controller (USHC) support"
727	depends on USB
728	help
729	  This selects support for USB SD Host Controllers based on
730	  the Cypress Astoria chip with firmware compliant with CSR's
731	  USB SD Host Controller specification (CS-118793-SP).
732
733	  CSR boards with this device include: USB<>SDIO (M1985v2),
734	  and Ultrasira.
735
736	  Note: These controllers only support SDIO cards and do not
737	  support MMC or SD memory cards.
738
739config MMC_WMT
740	tristate "Wondermedia SD/MMC Host Controller support"
741	depends on ARCH_VT8500
742	default y
743	help
744	  This selects support for the SD/MMC Host Controller on
745	  Wondermedia WM8505/WM8650 based SoCs.
746
747	  To compile this driver as a module, choose M here: the
748	  module will be called wmt-sdmmc.
749
750config MMC_USDHI6ROL0
751	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
752	depends on HAS_DMA
753	help
754	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
755	  Host Controller
756
757config MMC_REALTEK_PCI
758	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
759	depends on MFD_RTSX_PCI
760	help
761	  Say Y here to include driver code to support SD/MMC card interface
762	  of Realtek PCI-E card reader
763
764config MMC_REALTEK_USB
765	tristate "Realtek USB SD/MMC Card Interface Driver"
766	depends on MFD_RTSX_USB
767	help
768	  Say Y here to include driver code to support SD/MMC card interface
769	  of Realtek RTS5129/39 series card reader
770
771config MMC_SUNXI
772	tristate "Allwinner sunxi SD/MMC Host Controller support"
773	depends on ARCH_SUNXI
774	help
775	  This selects support for the SD/MMC Host Controller on
776	  Allwinner sunxi SoCs.
777
778config MMC_TOSHIBA_PCI
779	tristate "Toshiba Type A SD/MMC Card Interface Driver"
780	depends on PCI
781	help
782
783config MMC_MTK
784	tristate "MediaTek SD/MMC Card Interface support"
785	depends on HAS_DMA
786	help
787	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
788	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
789	  This is needed if support for any SD/SDIO/MMC devices is required.
790	  If unsure, say N.
791
792config MMC_SDHCI_MICROCHIP_PIC32
793        tristate "Microchip PIC32MZDA SDHCI support"
794        depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
795        help
796          This selects the Secure Digital Host Controller Interface (SDHCI)
797          for PIC32MZDA platform.
798
799          If you have a controller with this interface, say Y or M here.
800
801          If unsure, say N.
802config MMC_SDHCI_BRCMSTB
803	tristate "Broadcom SDIO/SD/MMC support"
804	depends on ARCH_BRCMSTB || BMIPS_GENERIC
805	depends on MMC_SDHCI_PLTFM
806	default y
807	help
808	  This selects support for the SDIO/SD/MMC Host Controller on
809	  Broadcom STB SoCs.
810
811	  If unsure, say Y.
812