xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision 9706b472)
11c6a0718SPierre Ossman#
21c6a0718SPierre Ossman# MMC/SD host controller drivers
31c6a0718SPierre Ossman#
41c6a0718SPierre Ossman
557105737SPierre Ossmancomment "MMC/SD/SDIO Host Controller Drivers"
61c6a0718SPierre Ossman
703596b92SShawn Linconfig MMC_DEBUG
8b4f146f5SWolfram Sang	bool "MMC host drivers debugging"
903596b92SShawn Lin	depends on MMC != n
1003596b92SShawn Lin	help
1103596b92SShawn Lin	  This is an option for use by developers; most people should
1203596b92SShawn Lin	  say N here. This enables MMC host driver debugging. And further
1303596b92SShawn Lin	  added host drivers please don't invent their private macro for
1403596b92SShawn Lin	  debugging.
1503596b92SShawn Lin
161c6a0718SPierre Ossmanconfig MMC_ARMMMCI
171c6a0718SPierre Ossman	tristate "ARM AMBA Multimedia Card Interface support"
18790864dcSJan Engelhardt	depends on ARM_AMBA
191c6a0718SPierre Ossman	help
201c6a0718SPierre Ossman	  This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
211c6a0718SPierre Ossman	  Interface (PL180 and PL181) support.  If you have an ARM(R)
221c6a0718SPierre Ossman	  platform with a Multimedia Card slot, say Y or M here.
231c6a0718SPierre Ossman
241c6a0718SPierre Ossman	  If unsure, say N.
251c6a0718SPierre Ossman
269cb15142SSrinivas Kandagatlaconfig MMC_QCOM_DML
271ac99066SSrinivas Kandagatla	bool "Qualcomm Data Mover for SD Card Controller"
289cb15142SSrinivas Kandagatla	depends on MMC_ARMMMCI && QCOM_BAM_DMA
299cb15142SSrinivas Kandagatla	default y
309cb15142SSrinivas Kandagatla	help
319cb15142SSrinivas Kandagatla	  This selects the Qualcomm Data Mover lite/local on SD Card controller.
329cb15142SSrinivas Kandagatla	  This option will enable the dma to work correctly, if you are using
339cb15142SSrinivas Kandagatla	  Qcom SOCs and MMC, you would probably need this option to get DMA working.
349cb15142SSrinivas Kandagatla
359cb15142SSrinivas Kandagatla	  if unsure, say N.
369cb15142SSrinivas Kandagatla
3746b723ddSLudovic Barreconfig MMC_STM32_SDMMC
3846b723ddSLudovic Barre	bool "STMicroelectronics STM32 SDMMC Controller"
3946b723ddSLudovic Barre	depends on MMC_ARMMMCI
4046b723ddSLudovic Barre	default y
4146b723ddSLudovic Barre	help
4246b723ddSLudovic Barre	  This selects the STMicroelectronics STM32 SDMMC host controller.
4346b723ddSLudovic Barre	  If you have a STM32 sdmmc host with internal DMA say Y here.
4446b723ddSLudovic Barre
4546b723ddSLudovic Barre	  If unsure, say N.
4646b723ddSLudovic Barre
471c6a0718SPierre Ossmanconfig MMC_PXA
481c6a0718SPierre Ossman	tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
49790864dcSJan Engelhardt	depends on ARCH_PXA
501c6a0718SPierre Ossman	help
511c6a0718SPierre Ossman	  This selects the Intel(R) PXA(R) Multimedia card Interface.
521c6a0718SPierre Ossman	  If you have a PXA(R) platform with a Multimedia Card slot,
531c6a0718SPierre Ossman	  say Y or M here.
541c6a0718SPierre Ossman
551c6a0718SPierre Ossman	  If unsure, say N.
561c6a0718SPierre Ossman
571c6a0718SPierre Ossmanconfig MMC_SDHCI
5834671dc2SPierre Ossman	tristate "Secure Digital Host Controller Interface support"
59b8c86fc5SPierre Ossman	depends on HAS_DMA
601c6a0718SPierre Ossman	help
61b8c86fc5SPierre Ossman	  This selects the generic Secure Digital Host Controller Interface.
621c6a0718SPierre Ossman	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
631c6a0718SPierre Ossman	  and Toshiba(R). Most controllers found in laptops are of this type.
64b8c86fc5SPierre Ossman
65b8c86fc5SPierre Ossman	  If you have a controller with this interface, say Y or M here. You
66b8c86fc5SPierre Ossman	  also need to enable an appropriate bus interface.
67b8c86fc5SPierre Ossman
68b8c86fc5SPierre Ossman	  If unsure, say N.
69b8c86fc5SPierre Ossman
704e4141a5SAnton Vorontsovconfig MMC_SDHCI_IO_ACCESSORS
714e4141a5SAnton Vorontsov	bool
724e4141a5SAnton Vorontsov	depends on MMC_SDHCI
734e4141a5SAnton Vorontsov	help
744e4141a5SAnton Vorontsov	  This is silent Kconfig symbol that is selected by the drivers that
754e4141a5SAnton Vorontsov	  need to overwrite SDHCI IO memory accessors.
764e4141a5SAnton Vorontsov
777657c3a7SAlbert Herranzconfig MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
787657c3a7SAlbert Herranz	bool
7982813b71SJean Delvare	depends on MMC_SDHCI
807657c3a7SAlbert Herranz	select MMC_SDHCI_IO_ACCESSORS
817657c3a7SAlbert Herranz	help
827657c3a7SAlbert Herranz	  This option is selected by drivers running on big endian hosts
837657c3a7SAlbert Herranz	  and performing I/O to a SDHCI controller through a bus that
847657c3a7SAlbert Herranz	  implements a hardware byte swapper using a 32-bit datum.
857657c3a7SAlbert Herranz	  This endian mapping mode is called "data invariance" and
867657c3a7SAlbert Herranz	  has the effect of scrambling the addresses and formats of data
877657c3a7SAlbert Herranz	  accessed in sizes other than the datum size.
887657c3a7SAlbert Herranz
892ca63524Syangbo lu	  This is the case for the Nintendo Wii SDHCI.
907657c3a7SAlbert Herranz
91b8c86fc5SPierre Ossmanconfig MMC_SDHCI_PCI
92b8c86fc5SPierre Ossman	tristate "SDHCI support on PCI bus"
93b8c86fc5SPierre Ossman	depends on MMC_SDHCI && PCI
948ee82bdaSAdrian Hunter	select MMC_CQHCI
95b8c86fc5SPierre Ossman	help
96b8c86fc5SPierre Ossman	  This selects the PCI Secure Digital Host Controller Interface.
97b8c86fc5SPierre Ossman	  Most controllers found today are PCI devices.
98b8c86fc5SPierre Ossman
991c6a0718SPierre Ossman	  If you have a controller with this interface, say Y or M here.
1001c6a0718SPierre Ossman
1011c6a0718SPierre Ossman	  If unsure, say N.
1021c6a0718SPierre Ossman
1035ae70296SPhilip Langdaleconfig MMC_RICOH_MMC
10486147c84SKees Cook	bool "Ricoh MMC Controller Disabler"
105b8c86fc5SPierre Ossman	depends on MMC_SDHCI_PCI
106ba2f7325SJean Delvare	default y
1075ae70296SPhilip Langdale	help
10803cd8f7eSMaxim Levitsky	  This adds a pci quirk to disable Ricoh MMC Controller. This
1095ae70296SPhilip Langdale	  proprietary controller is unnecessary because the SDHCI driver
1105ae70296SPhilip Langdale	  supports MMC cards on the SD controller, but if it is not
1115ae70296SPhilip Langdale	  disabled, it will steal the MMC cards away - rendering them
11203cd8f7eSMaxim Levitsky	  useless. It is safe to select this even if you don't
1135ae70296SPhilip Langdale	  have a Ricoh based card reader.
1145ae70296SPhilip Langdale
1155ae70296SPhilip Langdale	  If unsure, say Y.
1165ae70296SPhilip Langdale
117c4e05037SAdrian Hunterconfig MMC_SDHCI_ACPI
118c4e05037SAdrian Hunter	tristate "SDHCI support for ACPI enumerated SDHCI controllers"
119c4e05037SAdrian Hunter	depends on MMC_SDHCI && ACPI
1206e1c7d61SAdrian Hunter	select IOSF_MBI if X86
121c4e05037SAdrian Hunter	help
122c4e05037SAdrian Hunter	  This selects support for ACPI enumerated SDHCI controllers,
123c4e05037SAdrian Hunter	  identified by ACPI Compatibility ID PNP0D40 or specific
124c4e05037SAdrian Hunter	  ACPI Hardware IDs.
125c4e05037SAdrian Hunter
126c4e05037SAdrian Hunter	  If you have a controller with this interface, say Y or M here.
127c4e05037SAdrian Hunter
128c4e05037SAdrian Hunter	  If unsure, say N.
129c4e05037SAdrian Hunter
130f0de8369SShawn Guoconfig MMC_SDHCI_PLTFM
131f0de8369SShawn Guo	tristate "SDHCI platform and OF driver helper"
13238576af1SShawn Guo	depends on MMC_SDHCI
133f0de8369SShawn Guo	help
134f0de8369SShawn Guo	  This selects the common helper functions support for Secure Digital
135f0de8369SShawn Guo	  Host Controller Interface based platform and OF drivers.
136f0de8369SShawn Guo
137f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
138f0de8369SShawn Guo
139f0de8369SShawn Guo	  If unsure, say N.
140f0de8369SShawn Guo
141e3ec3a3dSSoren Brinkmannconfig MMC_SDHCI_OF_ARASAN
142e3ec3a3dSSoren Brinkmann	tristate "SDHCI OF support for the Arasan SDHCI controllers"
143e3ec3a3dSSoren Brinkmann	depends on MMC_SDHCI_PLTFM
144e3ec3a3dSSoren Brinkmann	depends on OF
145c390f211SDouglas Anderson	depends on COMMON_CLK
14684362d79SShawn Lin	select MMC_CQHCI
147e3ec3a3dSSoren Brinkmann	help
148e3ec3a3dSSoren Brinkmann	  This selects the Arasan Secure Digital Host Controller Interface
149e3ec3a3dSSoren Brinkmann	  (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
150e3ec3a3dSSoren Brinkmann
151e3ec3a3dSSoren Brinkmann	  If you have a controller with this interface, say Y or M here.
152e3ec3a3dSSoren Brinkmann
153e3ec3a3dSSoren Brinkmann	  If unsure, say N.
154e3ec3a3dSSoren Brinkmann
155bb5f8ea4Sludovic.desroches@atmel.comconfig MMC_SDHCI_OF_AT91
156bb5f8ea4Sludovic.desroches@atmel.com	tristate "SDHCI OF support for the Atmel SDMMC controller"
157bb5f8ea4Sludovic.desroches@atmel.com	depends on MMC_SDHCI_PLTFM
158bb5f8ea4Sludovic.desroches@atmel.com	depends on OF
159bb5f8ea4Sludovic.desroches@atmel.com	help
160bb5f8ea4Sludovic.desroches@atmel.com	  This selects the Atmel SDMMC driver
161bb5f8ea4Sludovic.desroches@atmel.com
162f0de8369SShawn Guoconfig MMC_SDHCI_OF_ESDHC
163f0de8369SShawn Guo	tristate "SDHCI OF support for the Freescale eSDHC controller"
164f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
1652ca63524Syangbo lu	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
1662ca63524Syangbo lu	select MMC_SDHCI_IO_ACCESSORS
167151ede40Syangbo lu	select FSL_GUTS
1687657c3a7SAlbert Herranz	help
1697657c3a7SAlbert Herranz	  This selects the Freescale eSDHC controller support.
1703085e9c1SAnton Vorontsov
171f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
172f0de8369SShawn Guo
1733085e9c1SAnton Vorontsov	  If unsure, say N.
1743085e9c1SAnton Vorontsov
1751144ab5dSAlbert Herranzconfig MMC_SDHCI_OF_HLWD
176f0de8369SShawn Guo	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
177f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
1785f2e097cSKevin Hao	depends on PPC
1791144ab5dSAlbert Herranz	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
1801144ab5dSAlbert Herranz	help
1811144ab5dSAlbert Herranz	  This selects the Secure Digital Host Controller Interface (SDHCI)
1821144ab5dSAlbert Herranz	  found in the "Hollywood" chipset of the Nintendo Wii video game
1831144ab5dSAlbert Herranz	  console.
1841144ab5dSAlbert Herranz
185f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
186f0de8369SShawn Guo
1871144ab5dSAlbert Herranz	  If unsure, say N.
1881144ab5dSAlbert Herranz
189e438cf49SJisheng Zhangconfig MMC_SDHCI_OF_DWCMSHC
190e438cf49SJisheng Zhang	tristate "SDHCI OF support for the Synopsys DWC MSHC"
191e438cf49SJisheng Zhang	depends on MMC_SDHCI_PLTFM
192e438cf49SJisheng Zhang	depends on OF
193e438cf49SJisheng Zhang	depends on COMMON_CLK
194e438cf49SJisheng Zhang	help
195e438cf49SJisheng Zhang	  This selects Synopsys DesignWare Cores Mobile Storage Controller
196e438cf49SJisheng Zhang	  support.
197e438cf49SJisheng Zhang	  If you have a controller with this interface, say Y or M here.
198e438cf49SJisheng Zhang	  If unsure, say N.
199e438cf49SJisheng Zhang
200ff6af28fSMasahiro Yamadaconfig MMC_SDHCI_CADENCE
201ff6af28fSMasahiro Yamada	tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
202ff6af28fSMasahiro Yamada	depends on MMC_SDHCI_PLTFM
203ff6af28fSMasahiro Yamada	depends on OF
204ff6af28fSMasahiro Yamada	help
205ff6af28fSMasahiro Yamada	  This selects the Cadence SD/SDIO/eMMC driver.
206ff6af28fSMasahiro Yamada
207ff6af28fSMasahiro Yamada	  If you have a controller with this interface, say Y or M here.
208ff6af28fSMasahiro Yamada
209ff6af28fSMasahiro Yamada	  If unsure, say N.
210ff6af28fSMasahiro Yamada
21120b1597bSAnton Vorontsovconfig MMC_SDHCI_CNS3XXX
21285d6509dSShawn Guo	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
21320b1597bSAnton Vorontsov	depends on ARCH_CNS3XXX
214f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
21520b1597bSAnton Vorontsov	help
21620b1597bSAnton Vorontsov	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
21720b1597bSAnton Vorontsov
218f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
219f0de8369SShawn Guo
22020b1597bSAnton Vorontsov	  If unsure, say N.
22120b1597bSAnton Vorontsov
22295f25efeSWolfram Sangconfig MMC_SDHCI_ESDHC_IMX
22395a2482aSShawn Guo	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
2242b795518SSascha Hauer	depends on ARCH_MXC
225f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
22695f25efeSWolfram Sang	select MMC_SDHCI_IO_ACCESSORS
22795f25efeSWolfram Sang	help
22895a2482aSShawn Guo	  This selects the Freescale eSDHC/uSDHC controller support
22995a2482aSShawn Guo	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
23095f25efeSWolfram Sang
231f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
232f0de8369SShawn Guo
23395f25efeSWolfram Sang	  If unsure, say N.
23495f25efeSWolfram Sang
235985b1aa0SMike Rapoportconfig MMC_SDHCI_DOVE
23685d6509dSShawn Guo	tristate "SDHCI support on Marvell's Dove SoC"
237ec4422acSSebastian Hesselbarth	depends on ARCH_DOVE || MACH_DOVE
238f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
239985b1aa0SMike Rapoport	select MMC_SDHCI_IO_ACCESSORS
240985b1aa0SMike Rapoport	help
241985b1aa0SMike Rapoport	  This selects the Secure Digital Host Controller Interface in
242985b1aa0SMike Rapoport	  Marvell's Dove SoC.
243985b1aa0SMike Rapoport
244f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
245f0de8369SShawn Guo
246985b1aa0SMike Rapoport	  If unsure, say N.
247985b1aa0SMike Rapoport
24803d2bfc8SOlof Johanssonconfig MMC_SDHCI_TEGRA
24985d6509dSShawn Guo	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
25085d6509dSShawn Guo	depends on ARCH_TEGRA
251f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
25203d2bfc8SOlof Johansson	select MMC_SDHCI_IO_ACCESSORS
25303d2bfc8SOlof Johansson	help
25403d2bfc8SOlof Johansson	  This selects the Tegra SD/MMC controller. If you have a Tegra
25503d2bfc8SOlof Johansson	  platform with SD or MMC devices, say Y or M here.
25603d2bfc8SOlof Johansson
25703d2bfc8SOlof Johansson	  If unsure, say N.
25803d2bfc8SOlof Johansson
2590d1bb41aSBen Dooksconfig MMC_SDHCI_S3C
2600d1bb41aSBen Dooks	tristate "SDHCI support on Samsung S3C SoC"
261930a6f70SKyungmin Park	depends on MMC_SDHCI && PLAT_SAMSUNG
2620d1bb41aSBen Dooks	help
2630d1bb41aSBen Dooks	  This selects the Secure Digital Host Controller Interface (SDHCI)
2640d1bb41aSBen Dooks	  often referrered to as the HSMMC block in some of the Samsung S3C
2650d1bb41aSBen Dooks	  range of SoC.
2660d1bb41aSBen Dooks
2670d1bb41aSBen Dooks	  If you have a controller with this interface, say Y or M here.
2680d1bb41aSBen Dooks
2690d1bb41aSBen Dooks	  If unsure, say N.
2700d1bb41aSBen Dooks
271b3b665b0SBarry Songconfig MMC_SDHCI_SIRF
272b3b665b0SBarry Song	tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
273b3b665b0SBarry Song	depends on ARCH_SIRF
274b3b665b0SBarry Song	depends on MMC_SDHCI_PLTFM
275a1b0b977SWeijun Yang	select MMC_SDHCI_IO_ACCESSORS
276b3b665b0SBarry Song	help
277b3b665b0SBarry Song	  This selects the SDHCI support for SiRF System-on-Chip devices.
278b3b665b0SBarry Song
279b3b665b0SBarry Song	  If you have a controller with this interface, say Y or M here.
280b3b665b0SBarry Song
281b3b665b0SBarry Song	  If unsure, say N.
282b3b665b0SBarry Song
283a702c8abSZhangfei Gaoconfig MMC_SDHCI_PXAV3
284a702c8abSZhangfei Gao	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
285a702c8abSZhangfei Gao	depends on CLKDEV_LOOKUP
2865d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
287daa3054fSJean Delvare	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
288a702c8abSZhangfei Gao	default CPU_MMP2
289a702c8abSZhangfei Gao	help
290a702c8abSZhangfei Gao	  This selects the Marvell(R) PXAV3 SD Host Controller.
291a702c8abSZhangfei Gao	  If you have a MMP2 platform with SD Host Controller
292a702c8abSZhangfei Gao	  and a card slot, say Y or M here.
293a702c8abSZhangfei Gao
294a702c8abSZhangfei Gao	  If unsure, say N.
295a702c8abSZhangfei Gao
2969f5d71e4SZhangfei Gaoconfig MMC_SDHCI_PXAV2
2979f5d71e4SZhangfei Gao	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
2989f5d71e4SZhangfei Gao	depends on CLKDEV_LOOKUP
2995d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
3008a8735ebSJean Delvare	depends on ARCH_MMP || COMPILE_TEST
3019f5d71e4SZhangfei Gao	default CPU_PXA910
3029f5d71e4SZhangfei Gao	help
3039f5d71e4SZhangfei Gao	  This selects the Marvell(R) PXAV2 SD Host Controller.
3049f5d71e4SZhangfei Gao	  If you have a PXA9XX platform with SD Host Controller
3059f5d71e4SZhangfei Gao	  and a card slot, say Y or M here.
3069f5d71e4SZhangfei Gao
3079f5d71e4SZhangfei Gao	  If unsure, say N.
3089f5d71e4SZhangfei Gao
309c63b3cbaSViresh KUMARconfig MMC_SDHCI_SPEAR
310c63b3cbaSViresh KUMAR	tristate "SDHCI support on ST SPEAr platform"
311c63b3cbaSViresh KUMAR	depends on MMC_SDHCI && PLAT_SPEAR
312bbd7f0a2SUlf Hansson	depends on OF
313c63b3cbaSViresh KUMAR	help
314c63b3cbaSViresh KUMAR	  This selects the Secure Digital Host Controller Interface (SDHCI)
315c63b3cbaSViresh KUMAR	  often referrered to as the HSMMC block in some of the ST SPEAR range
316c63b3cbaSViresh KUMAR	  of SoC
317c63b3cbaSViresh KUMAR
318c63b3cbaSViresh KUMAR	  If you have a controller with this interface, say Y or M here.
319c63b3cbaSViresh KUMAR
320c63b3cbaSViresh KUMAR	  If unsure, say N.
321c63b3cbaSViresh KUMAR
3220d1bb41aSBen Dooksconfig MMC_SDHCI_S3C_DMA
3230d1bb41aSBen Dooks	bool "DMA support on S3C SDHCI"
32486147c84SKees Cook	depends on MMC_SDHCI_S3C
3250d1bb41aSBen Dooks	help
3260d1bb41aSBen Dooks	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
3270d1bb41aSBen Dooks	  has proved to be problematic if the controller encounters
3280d1bb41aSBen Dooks	  certain errors, and thus should be treated with care.
3290d1bb41aSBen Dooks
3300d1bb41aSBen Dooks	  YMMV.
3310d1bb41aSBen Dooks
33201ebea1bSChristian Daudtconfig MMC_SDHCI_BCM_KONA
33301ebea1bSChristian Daudt	tristate "SDHCI support on Broadcom KONA platform"
334fc2bd2e4SChristian Daudt	depends on ARCH_BCM_MOBILE
3355d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
33601ebea1bSChristian Daudt	help
33701ebea1bSChristian Daudt	  This selects the Broadcom Kona Secure Digital Host Controller
33801ebea1bSChristian Daudt	  Interface(SDHCI) support.
33901ebea1bSChristian Daudt	  This is used in Broadcom mobile SoCs.
34001ebea1bSChristian Daudt
34101ebea1bSChristian Daudt	  If you have a controller with this interface, say Y or M here.
34201ebea1bSChristian Daudt
34387a50745SVincent Yangconfig MMC_SDHCI_F_SDH30
34487a50745SVincent Yang	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
34587a50745SVincent Yang	depends on MMC_SDHCI_PLTFM
34690e1d8ccSArd Biesheuvel	depends on OF || ACPI
34787a50745SVincent Yang	help
34887a50745SVincent Yang	  This selects the Secure Digital Host Controller Interface (SDHCI)
34987a50745SVincent Yang	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
35087a50745SVincent Yang	  If you have a controller with this interface, say Y or M here.
35187a50745SVincent Yang
35287a50745SVincent Yang	  If unsure, say N.
35387a50745SVincent Yang
354b580c52dSScott Brandenconfig MMC_SDHCI_IPROC
35577cb7d3aSStefan Wahren	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
35677cb7d3aSStefan Wahren	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
357b580c52dSScott Branden	depends on MMC_SDHCI_PLTFM
3587c7ba433SSrinath Mannam	depends on OF || ACPI
359b580c52dSScott Branden	default ARCH_BCM_IPROC
360b580c52dSScott Branden	select MMC_SDHCI_IO_ACCESSORS
361b580c52dSScott Branden	help
362b580c52dSScott Branden	  This selects the iProc SD/MMC controller.
363b580c52dSScott Branden
36477cb7d3aSStefan Wahren	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
365b580c52dSScott Branden	  say Y or M here.
366b580c52dSScott Branden
367b580c52dSScott Branden	  If unsure, say N.
368b580c52dSScott Branden
36951c5d844SKevin Hilmanconfig MMC_MESON_GX
370e79dc1b4SNan Li	tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
37151c5d844SKevin Hilman	depends on ARCH_MESON && MMC
37251c5d844SKevin Hilman	help
37351c5d844SKevin Hilman	  This selects support for the Amlogic SD/MMC Host Controller
374e79dc1b4SNan Li	  found on the S905/GX*/AXG family of SoCs.  This controller is
37551c5d844SKevin Hilman	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
37651c5d844SKevin Hilman
37751c5d844SKevin Hilman	  If you have a controller with this interface, say Y here.
37851c5d844SKevin Hilman
379ed80a13bSCarlo Caioneconfig MMC_MESON_MX_SDIO
380ed80a13bSCarlo Caione	tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
381ed80a13bSCarlo Caione	depends on ARCH_MESON || COMPILE_TEST
382ed80a13bSCarlo Caione	depends on COMMON_CLK
383ed80a13bSCarlo Caione	depends on OF
384ed80a13bSCarlo Caione	help
385ed80a13bSCarlo Caione	  This selects support for the SD/MMC Host Controller on
386ed80a13bSCarlo Caione	  Amlogic Meson6, Meson8 and Meson8b SoCs.
387ed80a13bSCarlo Caione
388ed80a13bSCarlo Caione	  If you have a controller with this interface, say Y or M here.
389ed80a13bSCarlo Caione	  If unsure, say N.
390ed80a13bSCarlo Caione
3911b66e94eSJonas Jensenconfig MMC_MOXART
3921b66e94eSJonas Jensen	tristate "MOXART SD/MMC Host Controller support"
3931b66e94eSJonas Jensen	depends on ARCH_MOXART && MMC
3941b66e94eSJonas Jensen	help
3951b66e94eSJonas Jensen	  This selects support for the MOXART SD/MMC Host Controller.
3961b66e94eSJonas Jensen	  MOXA provides one multi-functional card reader which can
3971b66e94eSJonas Jensen	  be found on some embedded hardware such as UC-7112-LX.
3981b66e94eSJonas Jensen	  If you have a controller with this interface, say Y here.
3991b66e94eSJonas Jensen
400f52d9c4fSPeter Griffinconfig MMC_SDHCI_ST
401f52d9c4fSPeter Griffin	tristate "SDHCI support on STMicroelectronics SoC"
4022feada5bSIvan Mikhaylov	depends on ARCH_STI || FSP2
403f52d9c4fSPeter Griffin	depends on MMC_SDHCI_PLTFM
404f52d9c4fSPeter Griffin	select MMC_SDHCI_IO_ACCESSORS
405f52d9c4fSPeter Griffin	help
406f52d9c4fSPeter Griffin	  This selects the Secure Digital Host Controller Interface in
407f52d9c4fSPeter Griffin	  STMicroelectronics SoCs.
408f52d9c4fSPeter Griffin
409f52d9c4fSPeter Griffin	  If you have a controller with this interface, say Y or M here.
410f52d9c4fSPeter Griffin	  If unsure, say N.
411f52d9c4fSPeter Griffin
4121c6a0718SPierre Ossmanconfig MMC_OMAP
4131c6a0718SPierre Ossman	tristate "TI OMAP Multimedia Card Interface support"
414790864dcSJan Engelhardt	depends on ARCH_OMAP
41560a549fcSArnd Bergmann	depends on TPS65010 || !MACH_OMAP_H2
4161c6a0718SPierre Ossman	help
4171c6a0718SPierre Ossman	  This selects the TI OMAP Multimedia card Interface.
4181c6a0718SPierre Ossman	  If you have an OMAP board with a Multimedia Card slot,
4191c6a0718SPierre Ossman	  say Y or M here.
4201c6a0718SPierre Ossman
4211c6a0718SPierre Ossman	  If unsure, say N.
4221c6a0718SPierre Ossman
423a45c6cb8SMadhusudhan Chikkatureconfig MMC_OMAP_HS
424a45c6cb8SMadhusudhan Chikkature	tristate "TI OMAP High Speed Multimedia Card Interface support"
425a7cedab6SLokesh Vutla	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
426a45c6cb8SMadhusudhan Chikkature	help
427a45c6cb8SMadhusudhan Chikkature	  This selects the TI OMAP High Speed Multimedia card Interface.
428bcf24e1dSAmarinder Bindra	  If you have an omap2plus board with a Multimedia Card slot,
429bcf24e1dSAmarinder Bindra	  say Y or M here.
430a45c6cb8SMadhusudhan Chikkature
431a45c6cb8SMadhusudhan Chikkature	  If unsure, say N.
432a45c6cb8SMadhusudhan Chikkature
4331c6a0718SPierre Ossmanconfig MMC_WBSD
4341c6a0718SPierre Ossman	tristate "Winbond W83L51xD SD/MMC Card Interface support"
435790864dcSJan Engelhardt	depends on ISA_DMA_API
4361c6a0718SPierre Ossman	help
4371c6a0718SPierre Ossman	  This selects the Winbond(R) W83L51xD Secure digital and
4381c6a0718SPierre Ossman          Multimedia card Interface.
4391c6a0718SPierre Ossman	  If you have a machine with a integrated W83L518D or W83L519D
4401c6a0718SPierre Ossman	  SD/MMC card reader, say Y or M here.
4411c6a0718SPierre Ossman
4421c6a0718SPierre Ossman	  If unsure, say N.
4431c6a0718SPierre Ossman
4441c6a0718SPierre Ossmanconfig MMC_AU1X
4451c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
44637663860SManuel Lauss	depends on MIPS_ALCHEMY
4471c6a0718SPierre Ossman	help
4481c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
4491c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
4501c6a0718SPierre Ossman
4511c6a0718SPierre Ossman	  If unsure, say N.
4521c6a0718SPierre Ossman
4537d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
454d6a20debSLudovic Desroches	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
455ef4b160fSAndy Shevchenko	depends on ARCH_AT91
4567d2be074SHaavard Skinnemoen	help
457ef4b160fSAndy Shevchenko	  This selects the Atmel Multimedia Card Interface driver.
458ef4b160fSAndy Shevchenko	  If you have an AT91 platform with a Multimedia Card slot,
459ef4b160fSAndy Shevchenko	  say Y or M here.
4607d2be074SHaavard Skinnemoen
4617d2be074SHaavard Skinnemoen	  If unsure, say N.
4627d2be074SHaavard Skinnemoen
4630eb0d9f4SGeorgi Djakovconfig MMC_SDHCI_MSM
4640eb0d9f4SGeorgi Djakov	tristate "Qualcomm SDHCI Controller Support"
4656096d7a8SGeorgi Djakov	depends on ARCH_QCOM || (ARM && COMPILE_TEST)
4660eb0d9f4SGeorgi Djakov	depends on MMC_SDHCI_PLTFM
46799d570daSVijay Viswanath	select MMC_SDHCI_IO_ACCESSORS
4680eb0d9f4SGeorgi Djakov	help
4690eb0d9f4SGeorgi Djakov	  This selects the Secure Digital Host Controller Interface (SDHCI)
4700eb0d9f4SGeorgi Djakov	  support present in Qualcomm SOCs. The controller supports
4710eb0d9f4SGeorgi Djakov	  SD/MMC/SDIO devices.
4720eb0d9f4SGeorgi Djakov
4730eb0d9f4SGeorgi Djakov	  If you have a controller with this interface, say Y or M here.
4740eb0d9f4SGeorgi Djakov
4750eb0d9f4SGeorgi Djakov	  If unsure, say N.
4760eb0d9f4SGeorgi Djakov
477d96be879SSascha Hauerconfig MMC_MXC
478c7ceab02SAnatolij Gustschin	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
479c7ceab02SAnatolij Gustschin	depends on ARCH_MXC || PPC_MPC512x
480d96be879SSascha Hauer	help
481c7ceab02SAnatolij Gustschin	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
482c7ceab02SAnatolij Gustschin	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
483c7ceab02SAnatolij Gustschin	  with a Multimedia Card slot, say Y or M here.
484d96be879SSascha Hauer
485d96be879SSascha Hauer	  If unsure, say N.
486d96be879SSascha Hauer
487e4243f13SShawn Guoconfig MMC_MXS
488e4243f13SShawn Guo	tristate "Freescale MXS Multimedia Card Interface support"
489e4243f13SShawn Guo	depends on ARCH_MXS && MXS_DMA
490e4243f13SShawn Guo	help
491e4243f13SShawn Guo	  This selects the Freescale SSP MMC controller found on MXS based
492e4243f13SShawn Guo	  platforms like mx23/28.
493e4243f13SShawn Guo
494e4243f13SShawn Guo	  If unsure, say N.
495e4243f13SShawn Guo
4961c6a0718SPierre Ossmanconfig MMC_TIFM_SD
49786147c84SKees Cook	tristate "TI Flash Media MMC/SD Interface support"
49886147c84SKees Cook	depends on PCI
4991c6a0718SPierre Ossman	select TIFM_CORE
5001c6a0718SPierre Ossman	help
5011c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
5021c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
5031c6a0718SPierre Ossman	  laptops.
5041c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
5051c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
5061c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
5071c6a0718SPierre Ossman	  (TIFM_7XX1)'.
5081c6a0718SPierre Ossman
5091c6a0718SPierre Ossman          To compile this driver as a module, choose M here: the
5101c6a0718SPierre Ossman	  module will be called tifm_sd.
5111c6a0718SPierre Ossman
512236caa7cSMaen Suleimanconfig MMC_MVSDIO
513236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
514236caa7cSMaen Suleiman	depends on PLAT_ORION
51517da6783SLinus Walleij	depends on OF
516236caa7cSMaen Suleiman	---help---
517236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
518236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
519236caa7cSMaen Suleiman	  SoC controllers.
520236caa7cSMaen Suleiman
521236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
522236caa7cSMaen Suleiman	  module will be called mvsdio.
523236caa7cSMaen Suleiman
524b4cff454SVipin Bhandariconfig MMC_DAVINCI
525b4cff454SVipin Bhandari        tristate "TI DAVINCI Multimedia Card Interface support"
526b4cff454SVipin Bhandari        depends on ARCH_DAVINCI
527b4cff454SVipin Bhandari        help
528b4cff454SVipin Bhandari          This selects the TI DAVINCI Multimedia card Interface.
529b4cff454SVipin Bhandari          If you have an DAVINCI board with a Multimedia Card slot,
530b4cff454SVipin Bhandari          say Y or M here.  If unsure, say N.
531b4cff454SVipin Bhandari
53285c34d2eSMike Lockwoodconfig MMC_GOLDFISH
53385c34d2eSMike Lockwood	tristate "goldfish qemu Multimedia Card Interface support"
5347f8a9a7eSLuis de Bethencourt	depends on GOLDFISH || COMPILE_TEST
53585c34d2eSMike Lockwood	help
53685c34d2eSMike Lockwood	  This selects the Goldfish Multimedia card Interface emulation
53785c34d2eSMike Lockwood	  found on the Goldfish Android virtual device emulation.
53885c34d2eSMike Lockwood
53915a0580cSDavid Brownellconfig MMC_SPI
54057105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
541e176c255SIan Molton	depends on SPI_MASTER && HAS_DMA
54215a0580cSDavid Brownell	select CRC7
54315a0580cSDavid Brownell	select CRC_ITU_T
54415a0580cSDavid Brownell	help
545692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
54657105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
54757105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
54857105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
54957105737SPierre Ossman	  controllers.
55015a0580cSDavid Brownell
55115a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
55215a0580cSDavid Brownell
553be518018SThomas Kleffelconfig MMC_S3C
554be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
555b130d5c2SKukjin Kim	depends on ARCH_S3C24XX
556b45e4b50SVasily Khoruzhick	depends on S3C24XX_DMAC
557be518018SThomas Kleffel	help
558be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
559be518018SThomas Kleffel          Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
560be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
561be518018SThomas Kleffel	  slot, say Y or M here.
562be518018SThomas Kleffel
563be518018SThomas Kleffel	  If unsure, say N.
564be518018SThomas Kleffel
5655a2c4fe0SBen Dooksconfig MMC_S3C_HW_SDIO_IRQ
5665a2c4fe0SBen Dooks       bool "Hardware support for SDIO IRQ"
5675a2c4fe0SBen Dooks       depends on MMC_S3C
5685a2c4fe0SBen Dooks       help
5695a2c4fe0SBen Dooks         Enable the hardware support for SDIO interrupts instead of using
5705a2c4fe0SBen Dooks	 the generic polling code.
5715a2c4fe0SBen Dooks
57226f14947SBen Dookschoice
57326f14947SBen Dooks	prompt "Samsung S3C SD/MMC transfer code"
57426f14947SBen Dooks	depends on MMC_S3C
57526f14947SBen Dooks
57626f14947SBen Dooksconfig MMC_S3C_PIO
57726f14947SBen Dooks	bool "Use PIO transfers only"
57826f14947SBen Dooks	help
57926f14947SBen Dooks	  Use PIO to transfer data between memory and the hardware.
58026f14947SBen Dooks
58126f14947SBen Dooks	  PIO is slower than DMA as it requires CPU instructions to
58226f14947SBen Dooks	  move the data. This has been the traditional default for
58326f14947SBen Dooks	  the S3C MCI driver.
58426f14947SBen Dooks
58526f14947SBen Dooksconfig MMC_S3C_DMA
58686147c84SKees Cook	bool "Use DMA transfers only"
58726f14947SBen Dooks	help
58826f14947SBen Dooks	  Use DMA to transfer data between memory and the hardare.
58926f14947SBen Dooks
59026f14947SBen Dooks	  Currently, the DMA support in this driver seems to not be
59126f14947SBen Dooks	  working properly and needs to be debugged before this
59226f14947SBen Dooks	  option is useful.
59326f14947SBen Dooks
59426f14947SBen Dooksendchoice
59526f14947SBen Dooks
5966a36913aSSascha Sommerconfig MMC_SDRICOH_CS
59786147c84SKees Cook	tristate "MMC/SD driver for Ricoh Bay1Controllers"
59886147c84SKees Cook	depends on PCI && PCMCIA
5996a36913aSSascha Sommer	help
6006a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
6016a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
6026a36913aSSascha Sommer
6036a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
6046a36913aSSascha Sommer	  module will be called sdricoh_cs.
6056a36913aSSascha Sommer
606fb8bd90fSChunyan Zhangconfig MMC_SDHCI_SPRD
607fb8bd90fSChunyan Zhang	tristate "Spreadtrum SDIO host Controller"
608fb8bd90fSChunyan Zhang	depends on ARCH_SPRD
609fb8bd90fSChunyan Zhang	depends on MMC_SDHCI_PLTFM
610fb8bd90fSChunyan Zhang	select MMC_SDHCI_IO_ACCESSORS
611fb8bd90fSChunyan Zhang	help
612fb8bd90fSChunyan Zhang	  This selects the SDIO Host Controller in Spreadtrum
613fb8bd90fSChunyan Zhang	  SoCs, this driver supports R11(IP version: R11P0).
614fb8bd90fSChunyan Zhang
615fb8bd90fSChunyan Zhang	  If you have a controller with this interface, say Y or M here.
616fb8bd90fSChunyan Zhang
617fb8bd90fSChunyan Zhang	  If unsure, say N.
618fb8bd90fSChunyan Zhang
619b6147490SGuennadi Liakhovetskiconfig MMC_TMIO_CORE
620b6147490SGuennadi Liakhovetski	tristate
621b6147490SGuennadi Liakhovetski
6224a48998fSIan Moltonconfig MMC_TMIO
6234a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
62442051e8aSGuennadi Liakhovetski	depends on MFD_TMIO || MFD_ASIC3
625b6147490SGuennadi Liakhovetski	select MMC_TMIO_CORE
6264a48998fSIan Molton	help
6274a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
628e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
6295f5bac82SMichał Mirosław
63042051e8aSGuennadi Liakhovetskiconfig MMC_SDHI
631b5b6a5f4SSimon Horman	tristate "Renesas SDHI SD/SDIO controller support"
63249312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
63342051e8aSGuennadi Liakhovetski	select MMC_TMIO_CORE
63442051e8aSGuennadi Liakhovetski	help
63542051e8aSGuennadi Liakhovetski	  This provides support for the SDHI SD/SDIO controller found in
636b5b6a5f4SSimon Horman	  Renesas SuperH, ARM and ARM64 based SoCs
63742051e8aSGuennadi Liakhovetski
6382a68ea78SSimon Hormanconfig MMC_SDHI_SYS_DMAC
6392a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
6401d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
641c813e10aSMasahiro Yamada	default MMC_SDHI if (SUPERH || ARM)
6422a68ea78SSimon Horman	help
6432a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6442a68ea78SSimon Horman	  using SYS-DMAC via DMA Engine. This supports the controllers
6452a68ea78SSimon Horman	  found in SuperH and Renesas ARM based SoCs.
6462a68ea78SSimon Horman
6472a68ea78SSimon Hormanconfig MMC_SDHI_INTERNAL_DMAC
6482a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
649*9706b472SChris Brandt	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
6501d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
651*9706b472SChris Brandt	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
6522a68ea78SSimon Horman	help
6532a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6542a68ea78SSimon Horman	  using on-chip bus mastering. This supports the controllers
655*9706b472SChris Brandt	  found in arm64 based SoCs. This controller is also found in
656*9706b472SChris Brandt	  some RZ family SoCs.
6572a68ea78SSimon Horman
6583fd784f7SMasahiro Yamadaconfig MMC_UNIPHIER
6593fd784f7SMasahiro Yamada	tristate "UniPhier SD/eMMC Host Controller support"
6603fd784f7SMasahiro Yamada	depends on ARCH_UNIPHIER || COMPILE_TEST
6613fd784f7SMasahiro Yamada	depends on OF
6623fd784f7SMasahiro Yamada	select MMC_TMIO_CORE
6633fd784f7SMasahiro Yamada	help
6643fd784f7SMasahiro Yamada	  This provides support for the SD/eMMC controller found in
6653fd784f7SMasahiro Yamada	  UniPhier SoCs. The eMMC variant of this controller is used
6663fd784f7SMasahiro Yamada	  only for 32-bit SoCs.
6673fd784f7SMasahiro Yamada
6685f5bac82SMichał Mirosławconfig MMC_CB710
6695f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
6700244ad00SMartin Schwidefsky	depends on PCI
6715f5bac82SMichał Mirosław	select CB710_CORE
6725f5bac82SMichał Mirosław	help
6735f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
6745f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
6755f5bac82SMichał Mirosław	  HP Compaq nx9500).
6765f5bac82SMichał Mirosław
6775f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
6785f5bac82SMichał Mirosław	  will be called cb710-mmc.
6795f5bac82SMichał Mirosław
680f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
681f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
682f0bf7f61SHarald Welte	depends on PCI
683f0bf7f61SHarald Welte	help
684f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
685f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
686f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
687f0bf7f61SHarald Welte	  SD/MMC/SDHC.
688f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
689f0bf7f61SHarald Welte
690f0bf7f61SHarald Welte	  If unsure, say N.
691eb962d5bSCliff Cai
69201d95843SSteven J. Hillconfig MMC_CAVIUM_OCTEON
69301d95843SSteven J. Hill	tristate "Cavium OCTEON SD/MMC Card Interface support"
69401d95843SSteven J. Hill	depends on CAVIUM_OCTEON_SOC
69501d95843SSteven J. Hill	help
69601d95843SSteven J. Hill	  This selects Cavium OCTEON SD/MMC card Interface.
69701d95843SSteven J. Hill	  If you have an OCTEON board with a Multimedia Card slot,
69801d95843SSteven J. Hill	  say Y or M here.
69901d95843SSteven J. Hill
70001d95843SSteven J. Hill	  If unsure, say N.
70101d95843SSteven J. Hill
702166bac38SJan Glauberconfig MMC_CAVIUM_THUNDERX
703166bac38SJan Glauber	tristate "Cavium ThunderX SD/MMC Card Interface support"
704166bac38SJan Glauber	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
70562467bbbSJan Glauber	depends on GPIO_THUNDERX
706166bac38SJan Glauber	depends on OF_ADDRESS
707166bac38SJan Glauber	help
708166bac38SJan Glauber	  This selects Cavium ThunderX SD/MMC Card Interface.
709166bac38SJan Glauber	  If you have an Cavium ARM64 board with a Multimedia Card slot
710166bac38SJan Glauber	  or builtin eMMC chip say Y or M here. If built as a module
711166bac38SJan Glauber	  the module will be called thunderx_mmc.ko.
712166bac38SJan Glauber
713f95f3850SWill Newtonconfig MMC_DW
714f95f3850SWill Newton	tristate "Synopsys DesignWare Memory Card Interface"
715c34346b2SAlim Akhtar	depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
716f95f3850SWill Newton	help
717f95f3850SWill Newton	  This selects support for the Synopsys DesignWare Mobile Storage IP
718f95f3850SWill Newton	  block, this provides host support for SD and MMC interfaces, in both
7193fc7eaefSShawn Lin	  PIO, internal DMA mode and external DMA mode.
720f95f3850SWill Newton
72162ca8034SShashidhar Hiremathconfig MMC_DW_PLTFM
72262ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI Support as platform device"
72362ca8034SShashidhar Hiremath	depends on MMC_DW
72462ca8034SShashidhar Hiremath	default y
72562ca8034SShashidhar Hiremath	help
72662ca8034SShashidhar Hiremath	  This selects the common helper functions support for Host Controller
72762ca8034SShashidhar Hiremath	  Interface based platform driver. Please select this option if the IP
72862ca8034SShashidhar Hiremath	  is present as a platform device. This is the common interface for the
72962ca8034SShashidhar Hiremath	  Synopsys Designware IP.
73062ca8034SShashidhar Hiremath
73162ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
73262ca8034SShashidhar Hiremath
73362ca8034SShashidhar Hiremath	  If unsure, say Y.
73462ca8034SShashidhar Hiremath
73586958dccSLiming Sunconfig MMC_DW_BLUEFIELD
73686958dccSLiming Sun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
73786958dccSLiming Sun	depends on MMC_DW
73886958dccSLiming Sun	select MMC_DW_PLTFM
73986958dccSLiming Sun	help
74086958dccSLiming Sun	  This selects support for Mellanox BlueField SoC specific extensions to
74186958dccSLiming Sun	  the Synopsys DesignWare Memory Card Interface driver. Select this
74286958dccSLiming Sun	  option for platforms based on Mellanox BlueField SoC's.
74386958dccSLiming Sun
744c3665006SThomas Abrahamconfig MMC_DW_EXYNOS
745e41e85ccSMasanari Iida	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
746c3665006SThomas Abraham	depends on MMC_DW
747c3665006SThomas Abraham	select MMC_DW_PLTFM
748c3665006SThomas Abraham	help
749c3665006SThomas Abraham	  This selects support for Samsung Exynos SoC specific extensions to the
750c3665006SThomas Abraham	  Synopsys DesignWare Memory Card Interface driver. Select this option
751c3665006SThomas Abraham	  for platforms based on Exynos4 and Exynos5 SoC's.
752c3665006SThomas Abraham
753e382ab74Stianshuliangconfig MMC_DW_HI3798CV200
754e382ab74Stianshuliang	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
755e382ab74Stianshuliang	depends on MMC_DW
756e382ab74Stianshuliang	select MMC_DW_PLTFM
757e382ab74Stianshuliang	help
758e382ab74Stianshuliang	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
759e382ab74Stianshuliang	  Synopsys DesignWare Memory Card Interface driver. Select this option
760e382ab74Stianshuliang	  for platforms based on HiSilicon Hi3798CV200 SoC.
761e382ab74Stianshuliang
762036f29d5SZhangfei Gaoconfig MMC_DW_K3
763036f29d5SZhangfei Gao	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
764036f29d5SZhangfei Gao	depends on MMC_DW
765036f29d5SZhangfei Gao	select MMC_DW_PLTFM
766036f29d5SZhangfei Gao	help
767036f29d5SZhangfei Gao	  This selects support for Hisilicon K3 SoC specific extensions to the
768036f29d5SZhangfei Gao	  Synopsys DesignWare Memory Card Interface driver. Select this option
769036f29d5SZhangfei Gao	  for platforms based on Hisilicon K3 SoC's.
770036f29d5SZhangfei Gao
77162ca8034SShashidhar Hiremathconfig MMC_DW_PCI
77262ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI support on PCI bus"
77362ca8034SShashidhar Hiremath	depends on MMC_DW && PCI
77462ca8034SShashidhar Hiremath	help
77562ca8034SShashidhar Hiremath	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
77662ca8034SShashidhar Hiremath	  Select this option if the IP is present on PCI platform.
77762ca8034SShashidhar Hiremath
77862ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
77962ca8034SShashidhar Hiremath
78062ca8034SShashidhar Hiremath	  If unsure, say N.
78162ca8034SShashidhar Hiremath
7824cdc2ec1Saddy keconfig MMC_DW_ROCKCHIP
7834cdc2ec1Saddy ke	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
7844cdc2ec1Saddy ke	depends on MMC_DW && ARCH_ROCKCHIP
7854cdc2ec1Saddy ke	select MMC_DW_PLTFM
7864cdc2ec1Saddy ke	help
7874cdc2ec1Saddy ke	  This selects support for Rockchip SoC specific extensions to the
7884cdc2ec1Saddy ke	  Synopsys DesignWare Memory Card Interface driver. Select this option
7894cdc2ec1Saddy ke	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
7904cdc2ec1Saddy ke
791a8c643adSJun Nieconfig MMC_DW_ZX
792a8c643adSJun Nie	tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
793a8c643adSJun Nie	depends on MMC_DW && ARCH_ZX
794a8c643adSJun Nie	select MMC_DW_PLTFM
795a8c643adSJun Nie	help
796a8c643adSJun Nie	  This selects support for ZTE SoC specific extensions to the
797a8c643adSJun Nie	  Synopsys DesignWare Memory Card Interface driver. Select this option
798a8c643adSJun Nie	  for platforms based on ZX296718 SoC's.
799a8c643adSJun Nie
800fdc50a94SYusuke Godaconfig MMC_SH_MMCIF
801fdc50a94SYusuke Goda	tristate "SuperH Internal MMCIF support"
80249312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
803fdc50a94SYusuke Goda	help
804ba9e9157SWolfram Sang	  This selects the MMC Host Interface controller (MMCIF) found in various
805ba9e9157SWolfram Sang	  Renesas SoCs for SH and ARM architectures.
806fdc50a94SYusuke Goda
80761bfbdb8SLars-Peter Clausen
80861bfbdb8SLars-Peter Clausenconfig MMC_JZ4740
8096a78768aSAlex Smith	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
810685bc885SPaul Cercueil	depends on MIPS
81161bfbdb8SLars-Peter Clausen	help
8126a78768aSAlex Smith	  This selects support for the SD/MMC controller on Ingenic
8136a78768aSAlex Smith	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
8146a78768aSAlex Smith
81561bfbdb8SLars-Peter Clausen	  If you have a board based on such a SoC and with a SD/MMC slot,
81661bfbdb8SLars-Peter Clausen	  say Y or M here.
81753f3a9e2SDavid Vrabel
81888095e7bSTony Olechconfig MMC_VUB300
81988095e7bSTony Olech	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
82088095e7bSTony Olech	depends on USB
82188095e7bSTony Olech	help
82288095e7bSTony Olech	  This selects support for Elan Digital Systems' VUB300 chip.
82388095e7bSTony Olech
82488095e7bSTony Olech	  The VUB300 is a USB-SDIO Host Controller Interface chip
82588095e7bSTony Olech	  that enables the host computer to use SDIO/SD/MMC cards
82688095e7bSTony Olech	  via a USB 2.0 or USB 1.1 host.
82788095e7bSTony Olech
82888095e7bSTony Olech	  The VUB300 chip will be found in both physically separate
82988095e7bSTony Olech	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
83088095e7bSTony Olech
83188095e7bSTony Olech	  The VUB300 chip supports SD and MMC memory cards in addition
83288095e7bSTony Olech	  to single and multifunction SDIO cards.
83388095e7bSTony Olech
83488095e7bSTony Olech	  Some SDIO cards will need a firmware file to be loaded and
83588095e7bSTony Olech	  sent to VUB300 chip in order to achieve better data throughput.
83688095e7bSTony Olech	  Download these "Offload Pseudocode" from Elan Digital Systems'
83788095e7bSTony Olech	  web-site http://www.elandigitalsystems.com/support/downloads.php
83888095e7bSTony Olech	  and put them in /lib/firmware. Note that without these additional
83988095e7bSTony Olech	  firmware files the VUB300 chip will still function, but not at
84088095e7bSTony Olech	  the best obtainable data rate.
84188095e7bSTony Olech
84288095e7bSTony Olech	  To compile this mmc host controller driver as a module,
84388095e7bSTony Olech	  choose M here: the module will be called vub300.
84488095e7bSTony Olech
84588095e7bSTony Olech	  If you have a computer with an embedded VUB300 chip
84688095e7bSTony Olech	  or if you intend connecting a USB adapter based on a
84788095e7bSTony Olech	  VUB300 chip say Y or M here.
84888095e7bSTony Olech
84953f3a9e2SDavid Vrabelconfig MMC_USHC
85053f3a9e2SDavid Vrabel	tristate "USB SD Host Controller (USHC) support"
85153f3a9e2SDavid Vrabel	depends on USB
85253f3a9e2SDavid Vrabel	help
85353f3a9e2SDavid Vrabel	  This selects support for USB SD Host Controllers based on
85453f3a9e2SDavid Vrabel	  the Cypress Astoria chip with firmware compliant with CSR's
85553f3a9e2SDavid Vrabel	  USB SD Host Controller specification (CS-118793-SP).
85653f3a9e2SDavid Vrabel
85753f3a9e2SDavid Vrabel	  CSR boards with this device include: USB<>SDIO (M1985v2),
85853f3a9e2SDavid Vrabel	  and Ultrasira.
85953f3a9e2SDavid Vrabel
86053f3a9e2SDavid Vrabel	  Note: These controllers only support SDIO cards and do not
86153f3a9e2SDavid Vrabel	  support MMC or SD memory cards.
8623a96dff0STony Prisk
8633a96dff0STony Priskconfig MMC_WMT
8643a96dff0STony Prisk	tristate "Wondermedia SD/MMC Host Controller support"
8653a96dff0STony Prisk	depends on ARCH_VT8500
8663a96dff0STony Prisk	default y
8673a96dff0STony Prisk	help
8683a96dff0STony Prisk	  This selects support for the SD/MMC Host Controller on
8693a96dff0STony Prisk	  Wondermedia WM8505/WM8650 based SoCs.
8703a96dff0STony Prisk
8713a96dff0STony Prisk	  To compile this driver as a module, choose M here: the
8723a96dff0STony Prisk	  module will be called wmt-sdmmc.
8736a5971d8SLinus Torvalds
87475fa9ea6SGuennadi Liakhovetskiconfig MMC_USDHI6ROL0
87575fa9ea6SGuennadi Liakhovetski	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
8761ef94740SGeert Uytterhoeven	depends on HAS_DMA
87775fa9ea6SGuennadi Liakhovetski	help
87875fa9ea6SGuennadi Liakhovetski	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
87975fa9ea6SGuennadi Liakhovetski	  Host Controller
88075fa9ea6SGuennadi Liakhovetski
8812c94b645SWei WANGconfig MMC_REALTEK_PCI
8822c94b645SWei WANG	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
883e455b69dSRui Feng	depends on MISC_RTSX_PCI
8842c94b645SWei WANG	help
8852c94b645SWei WANG	  Say Y here to include driver code to support SD/MMC card interface
8862c94b645SWei WANG	  of Realtek PCI-E card reader
887c7f6558dSRoger Tseng
888c7f6558dSRoger Tsengconfig MMC_REALTEK_USB
889c7f6558dSRoger Tseng	tristate "Realtek USB SD/MMC Card Interface Driver"
890e455b69dSRui Feng	depends on MISC_RTSX_USB
891c7f6558dSRoger Tseng	help
892c7f6558dSRoger Tseng	  Say Y here to include driver code to support SD/MMC card interface
893c7f6558dSRoger Tseng	  of Realtek RTS5129/39 series card reader
89419b7f796SDavid Lanzendörfer
89519b7f796SDavid Lanzendörferconfig MMC_SUNXI
89619b7f796SDavid Lanzendörfer	tristate "Allwinner sunxi SD/MMC Host Controller support"
89719b7f796SDavid Lanzendörfer	depends on ARCH_SUNXI
89819b7f796SDavid Lanzendörfer	help
89919b7f796SDavid Lanzendörfer	  This selects support for the SD/MMC Host Controller on
90019b7f796SDavid Lanzendörfer	  Allwinner sunxi SoCs.
901a5eb8bbdSOndrej Zary
902a4080225SVenkat Gopalakrishnanconfig MMC_CQHCI
903a4080225SVenkat Gopalakrishnan	tristate "Command Queue Host Controller Interface support"
904a4080225SVenkat Gopalakrishnan	depends on HAS_DMA
905a4080225SVenkat Gopalakrishnan	help
906a4080225SVenkat Gopalakrishnan	  This selects the Command Queue Host Controller Interface (CQHCI)
907a4080225SVenkat Gopalakrishnan	  support present in host controllers of Qualcomm Technologies, Inc
908a4080225SVenkat Gopalakrishnan	  amongst others.
909a4080225SVenkat Gopalakrishnan	  This controller supports eMMC devices with command queue support.
910a4080225SVenkat Gopalakrishnan
911a4080225SVenkat Gopalakrishnan	  If you have a controller with this interface, say Y or M here.
912a4080225SVenkat Gopalakrishnan
913a4080225SVenkat Gopalakrishnan	  If unsure, say N.
914a4080225SVenkat Gopalakrishnan
915a5eb8bbdSOndrej Zaryconfig MMC_TOSHIBA_PCI
916a5eb8bbdSOndrej Zary	tristate "Toshiba Type A SD/MMC Card Interface Driver"
917a5eb8bbdSOndrej Zary	depends on PCI
91820848903SChaotian Jing
919660fc733SEric Anholtconfig MMC_BCM2835
920660fc733SEric Anholt	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
921660fc733SEric Anholt	depends on ARCH_BCM2835 || COMPILE_TEST
922660fc733SEric Anholt	help
923660fc733SEric Anholt	  This selects the BCM2835 SDHOST MMC controller. If you have
924660fc733SEric Anholt	  a BCM2835 platform with SD or MMC devices, say Y or M here.
925660fc733SEric Anholt
926660fc733SEric Anholt	  Note that the BCM2835 has two SD controllers: The Arasan
927660fc733SEric Anholt	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
928660fc733SEric Anholt	  sdhost controller (supported by this driver).
929660fc733SEric Anholt
930660fc733SEric Anholt	  If unsure, say N.
931660fc733SEric Anholt
93220848903SChaotian Jingconfig MMC_MTK
93320848903SChaotian Jing	tristate "MediaTek SD/MMC Card Interface support"
934c2b22fffSGeert Uytterhoeven	depends on HAS_DMA
93520848903SChaotian Jing	help
93620848903SChaotian Jing	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
93720848903SChaotian Jing	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
93820848903SChaotian Jing	  This is needed if support for any SD/SDIO/MMC devices is required.
93920848903SChaotian Jing	  If unsure, say N.
9405d9460d7SAndrei Pistirica
9415d9460d7SAndrei Pistiricaconfig MMC_SDHCI_MICROCHIP_PIC32
9425d9460d7SAndrei Pistirica        tristate "Microchip PIC32MZDA SDHCI support"
9435d9460d7SAndrei Pistirica        depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
9445d9460d7SAndrei Pistirica        help
9455d9460d7SAndrei Pistirica          This selects the Secure Digital Host Controller Interface (SDHCI)
9465d9460d7SAndrei Pistirica          for PIC32MZDA platform.
9475d9460d7SAndrei Pistirica
9485d9460d7SAndrei Pistirica          If you have a controller with this interface, say Y or M here.
9495d9460d7SAndrei Pistirica
9505d9460d7SAndrei Pistirica          If unsure, say N.
951476bf3d6SAl Cooperconfig MMC_SDHCI_BRCMSTB
952476bf3d6SAl Cooper	tristate "Broadcom SDIO/SD/MMC support"
953476bf3d6SAl Cooper	depends on ARCH_BRCMSTB || BMIPS_GENERIC
954476bf3d6SAl Cooper	depends on MMC_SDHCI_PLTFM
955476bf3d6SAl Cooper	default y
956476bf3d6SAl Cooper	help
957476bf3d6SAl Cooper	  This selects support for the SDIO/SD/MMC Host Controller on
958476bf3d6SAl Cooper	  Broadcom STB SoCs.
959476bf3d6SAl Cooper
960476bf3d6SAl Cooper	  If unsure, say Y.
9613a3748dbSHu Ziji
9623a3748dbSHu Zijiconfig MMC_SDHCI_XENON
9633a3748dbSHu Ziji	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
9643a3748dbSHu Ziji	depends on MMC_SDHCI_PLTFM
9653a3748dbSHu Ziji	help
9663a3748dbSHu Ziji	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
9673a3748dbSHu Ziji	  If you have a controller with this interface, say Y or M here.
9683a3748dbSHu Ziji	  If unsure, say N.
9697d326930SKishon Vijay Abraham I
9707d326930SKishon Vijay Abraham Iconfig MMC_SDHCI_OMAP
9717d326930SKishon Vijay Abraham I	tristate "TI SDHCI Controller Support"
9727d326930SKishon Vijay Abraham I	depends on MMC_SDHCI_PLTFM && OF
9737d326930SKishon Vijay Abraham I	help
9747d326930SKishon Vijay Abraham I	  This selects the Secure Digital Host Controller Interface (SDHCI)
9757d326930SKishon Vijay Abraham I	  support present in TI's DRA7 SOCs. The controller supports
9767d326930SKishon Vijay Abraham I	  SD/MMC/SDIO devices.
9777d326930SKishon Vijay Abraham I
9787d326930SKishon Vijay Abraham I	  If you have a controller with this interface, say Y or M here.
9797d326930SKishon Vijay Abraham I
9807d326930SKishon Vijay Abraham I	  If unsure, say N.
981