xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision ec8f24b7)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
21c6a0718SPierre Ossman#
31c6a0718SPierre Ossman# MMC/SD host controller drivers
41c6a0718SPierre Ossman#
51c6a0718SPierre Ossman
657105737SPierre Ossmancomment "MMC/SD/SDIO Host Controller Drivers"
71c6a0718SPierre Ossman
803596b92SShawn Linconfig MMC_DEBUG
9b4f146f5SWolfram Sang	bool "MMC host drivers debugging"
1003596b92SShawn Lin	depends on MMC != n
1103596b92SShawn Lin	help
1203596b92SShawn Lin	  This is an option for use by developers; most people should
1303596b92SShawn Lin	  say N here. This enables MMC host driver debugging. And further
1403596b92SShawn Lin	  added host drivers please don't invent their private macro for
1503596b92SShawn Lin	  debugging.
1603596b92SShawn Lin
171c6a0718SPierre Ossmanconfig MMC_ARMMMCI
181c6a0718SPierre Ossman	tristate "ARM AMBA Multimedia Card Interface support"
19790864dcSJan Engelhardt	depends on ARM_AMBA
201c6a0718SPierre Ossman	help
211c6a0718SPierre Ossman	  This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
221c6a0718SPierre Ossman	  Interface (PL180 and PL181) support.  If you have an ARM(R)
231c6a0718SPierre Ossman	  platform with a Multimedia Card slot, say Y or M here.
241c6a0718SPierre Ossman
251c6a0718SPierre Ossman	  If unsure, say N.
261c6a0718SPierre Ossman
279cb15142SSrinivas Kandagatlaconfig MMC_QCOM_DML
281ac99066SSrinivas Kandagatla	bool "Qualcomm Data Mover for SD Card Controller"
299cb15142SSrinivas Kandagatla	depends on MMC_ARMMMCI && QCOM_BAM_DMA
309cb15142SSrinivas Kandagatla	default y
319cb15142SSrinivas Kandagatla	help
329cb15142SSrinivas Kandagatla	  This selects the Qualcomm Data Mover lite/local on SD Card controller.
339cb15142SSrinivas Kandagatla	  This option will enable the dma to work correctly, if you are using
349cb15142SSrinivas Kandagatla	  Qcom SOCs and MMC, you would probably need this option to get DMA working.
359cb15142SSrinivas Kandagatla
369cb15142SSrinivas Kandagatla	  if unsure, say N.
379cb15142SSrinivas Kandagatla
3846b723ddSLudovic Barreconfig MMC_STM32_SDMMC
3946b723ddSLudovic Barre	bool "STMicroelectronics STM32 SDMMC Controller"
4046b723ddSLudovic Barre	depends on MMC_ARMMMCI
4146b723ddSLudovic Barre	default y
4246b723ddSLudovic Barre	help
4346b723ddSLudovic Barre	  This selects the STMicroelectronics STM32 SDMMC host controller.
4446b723ddSLudovic Barre	  If you have a STM32 sdmmc host with internal DMA say Y here.
4546b723ddSLudovic Barre
4646b723ddSLudovic Barre	  If unsure, say N.
4746b723ddSLudovic Barre
481c6a0718SPierre Ossmanconfig MMC_PXA
491c6a0718SPierre Ossman	tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
50790864dcSJan Engelhardt	depends on ARCH_PXA
511c6a0718SPierre Ossman	help
521c6a0718SPierre Ossman	  This selects the Intel(R) PXA(R) Multimedia card Interface.
531c6a0718SPierre Ossman	  If you have a PXA(R) platform with a Multimedia Card slot,
541c6a0718SPierre Ossman	  say Y or M here.
551c6a0718SPierre Ossman
561c6a0718SPierre Ossman	  If unsure, say N.
571c6a0718SPierre Ossman
581c6a0718SPierre Ossmanconfig MMC_SDHCI
5934671dc2SPierre Ossman	tristate "Secure Digital Host Controller Interface support"
60b8c86fc5SPierre Ossman	depends on HAS_DMA
611c6a0718SPierre Ossman	help
62b8c86fc5SPierre Ossman	  This selects the generic Secure Digital Host Controller Interface.
631c6a0718SPierre Ossman	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
641c6a0718SPierre Ossman	  and Toshiba(R). Most controllers found in laptops are of this type.
65b8c86fc5SPierre Ossman
66b8c86fc5SPierre Ossman	  If you have a controller with this interface, say Y or M here. You
67b8c86fc5SPierre Ossman	  also need to enable an appropriate bus interface.
68b8c86fc5SPierre Ossman
69b8c86fc5SPierre Ossman	  If unsure, say N.
70b8c86fc5SPierre Ossman
714e4141a5SAnton Vorontsovconfig MMC_SDHCI_IO_ACCESSORS
724e4141a5SAnton Vorontsov	bool
734e4141a5SAnton Vorontsov	depends on MMC_SDHCI
744e4141a5SAnton Vorontsov	help
754e4141a5SAnton Vorontsov	  This is silent Kconfig symbol that is selected by the drivers that
764e4141a5SAnton Vorontsov	  need to overwrite SDHCI IO memory accessors.
774e4141a5SAnton Vorontsov
787657c3a7SAlbert Herranzconfig MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
797657c3a7SAlbert Herranz	bool
8082813b71SJean Delvare	depends on MMC_SDHCI
817657c3a7SAlbert Herranz	select MMC_SDHCI_IO_ACCESSORS
827657c3a7SAlbert Herranz	help
837657c3a7SAlbert Herranz	  This option is selected by drivers running on big endian hosts
847657c3a7SAlbert Herranz	  and performing I/O to a SDHCI controller through a bus that
857657c3a7SAlbert Herranz	  implements a hardware byte swapper using a 32-bit datum.
867657c3a7SAlbert Herranz	  This endian mapping mode is called "data invariance" and
877657c3a7SAlbert Herranz	  has the effect of scrambling the addresses and formats of data
887657c3a7SAlbert Herranz	  accessed in sizes other than the datum size.
897657c3a7SAlbert Herranz
902ca63524Syangbo lu	  This is the case for the Nintendo Wii SDHCI.
917657c3a7SAlbert Herranz
92b8c86fc5SPierre Ossmanconfig MMC_SDHCI_PCI
93b8c86fc5SPierre Ossman	tristate "SDHCI support on PCI bus"
94b8c86fc5SPierre Ossman	depends on MMC_SDHCI && PCI
958ee82bdaSAdrian Hunter	select MMC_CQHCI
960a49a619SAdrian Hunter	select IOSF_MBI if X86
97b8c86fc5SPierre Ossman	help
98b8c86fc5SPierre Ossman	  This selects the PCI Secure Digital Host Controller Interface.
99b8c86fc5SPierre Ossman	  Most controllers found today are PCI devices.
100b8c86fc5SPierre Ossman
1011c6a0718SPierre Ossman	  If you have a controller with this interface, say Y or M here.
1021c6a0718SPierre Ossman
1031c6a0718SPierre Ossman	  If unsure, say N.
1041c6a0718SPierre Ossman
1055ae70296SPhilip Langdaleconfig MMC_RICOH_MMC
10686147c84SKees Cook	bool "Ricoh MMC Controller Disabler"
107b8c86fc5SPierre Ossman	depends on MMC_SDHCI_PCI
108ba2f7325SJean Delvare	default y
1095ae70296SPhilip Langdale	help
11003cd8f7eSMaxim Levitsky	  This adds a pci quirk to disable Ricoh MMC Controller. This
1115ae70296SPhilip Langdale	  proprietary controller is unnecessary because the SDHCI driver
1125ae70296SPhilip Langdale	  supports MMC cards on the SD controller, but if it is not
1135ae70296SPhilip Langdale	  disabled, it will steal the MMC cards away - rendering them
11403cd8f7eSMaxim Levitsky	  useless. It is safe to select this even if you don't
1155ae70296SPhilip Langdale	  have a Ricoh based card reader.
1165ae70296SPhilip Langdale
1175ae70296SPhilip Langdale	  If unsure, say Y.
1185ae70296SPhilip Langdale
119c4e05037SAdrian Hunterconfig MMC_SDHCI_ACPI
120c4e05037SAdrian Hunter	tristate "SDHCI support for ACPI enumerated SDHCI controllers"
121c2eda8abSSinan Kaya	depends on MMC_SDHCI && ACPI && PCI
1226e1c7d61SAdrian Hunter	select IOSF_MBI if X86
123c4e05037SAdrian Hunter	help
124c4e05037SAdrian Hunter	  This selects support for ACPI enumerated SDHCI controllers,
125c4e05037SAdrian Hunter	  identified by ACPI Compatibility ID PNP0D40 or specific
126c4e05037SAdrian Hunter	  ACPI Hardware IDs.
127c4e05037SAdrian Hunter
128c4e05037SAdrian Hunter	  If you have a controller with this interface, say Y or M here.
129c4e05037SAdrian Hunter
130c4e05037SAdrian Hunter	  If unsure, say N.
131c4e05037SAdrian Hunter
132f0de8369SShawn Guoconfig MMC_SDHCI_PLTFM
133f0de8369SShawn Guo	tristate "SDHCI platform and OF driver helper"
13438576af1SShawn Guo	depends on MMC_SDHCI
135f0de8369SShawn Guo	help
136f0de8369SShawn Guo	  This selects the common helper functions support for Secure Digital
137f0de8369SShawn Guo	  Host Controller Interface based platform and OF drivers.
138f0de8369SShawn Guo
139f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
140f0de8369SShawn Guo
141f0de8369SShawn Guo	  If unsure, say N.
142f0de8369SShawn Guo
143e3ec3a3dSSoren Brinkmannconfig MMC_SDHCI_OF_ARASAN
144e3ec3a3dSSoren Brinkmann	tristate "SDHCI OF support for the Arasan SDHCI controllers"
145e3ec3a3dSSoren Brinkmann	depends on MMC_SDHCI_PLTFM
146e3ec3a3dSSoren Brinkmann	depends on OF
147c390f211SDouglas Anderson	depends on COMMON_CLK
14884362d79SShawn Lin	select MMC_CQHCI
149e3ec3a3dSSoren Brinkmann	help
150e3ec3a3dSSoren Brinkmann	  This selects the Arasan Secure Digital Host Controller Interface
151e3ec3a3dSSoren Brinkmann	  (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
152e3ec3a3dSSoren Brinkmann
153e3ec3a3dSSoren Brinkmann	  If you have a controller with this interface, say Y or M here.
154e3ec3a3dSSoren Brinkmann
155e3ec3a3dSSoren Brinkmann	  If unsure, say N.
156e3ec3a3dSSoren Brinkmann
157bb5f8ea4Sludovic.desroches@atmel.comconfig MMC_SDHCI_OF_AT91
158bb5f8ea4Sludovic.desroches@atmel.com	tristate "SDHCI OF support for the Atmel SDMMC controller"
159bb5f8ea4Sludovic.desroches@atmel.com	depends on MMC_SDHCI_PLTFM
160bb5f8ea4Sludovic.desroches@atmel.com	depends on OF
161bb5f8ea4Sludovic.desroches@atmel.com	help
162bb5f8ea4Sludovic.desroches@atmel.com	  This selects the Atmel SDMMC driver
163bb5f8ea4Sludovic.desroches@atmel.com
164f0de8369SShawn Guoconfig MMC_SDHCI_OF_ESDHC
165f0de8369SShawn Guo	tristate "SDHCI OF support for the Freescale eSDHC controller"
166f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
1672ca63524Syangbo lu	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
1682ca63524Syangbo lu	select MMC_SDHCI_IO_ACCESSORS
169151ede40Syangbo lu	select FSL_GUTS
1707657c3a7SAlbert Herranz	help
1717657c3a7SAlbert Herranz	  This selects the Freescale eSDHC controller support.
1723085e9c1SAnton Vorontsov
173f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
174f0de8369SShawn Guo
1753085e9c1SAnton Vorontsov	  If unsure, say N.
1763085e9c1SAnton Vorontsov
1771144ab5dSAlbert Herranzconfig MMC_SDHCI_OF_HLWD
178f0de8369SShawn Guo	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
179f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
1805f2e097cSKevin Hao	depends on PPC
1811144ab5dSAlbert Herranz	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
1821144ab5dSAlbert Herranz	help
1831144ab5dSAlbert Herranz	  This selects the Secure Digital Host Controller Interface (SDHCI)
1841144ab5dSAlbert Herranz	  found in the "Hollywood" chipset of the Nintendo Wii video game
1851144ab5dSAlbert Herranz	  console.
1861144ab5dSAlbert Herranz
187f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
188f0de8369SShawn Guo
1891144ab5dSAlbert Herranz	  If unsure, say N.
1901144ab5dSAlbert Herranz
191e438cf49SJisheng Zhangconfig MMC_SDHCI_OF_DWCMSHC
192e438cf49SJisheng Zhang	tristate "SDHCI OF support for the Synopsys DWC MSHC"
193e438cf49SJisheng Zhang	depends on MMC_SDHCI_PLTFM
194e438cf49SJisheng Zhang	depends on OF
195e438cf49SJisheng Zhang	depends on COMMON_CLK
196e438cf49SJisheng Zhang	help
197e438cf49SJisheng Zhang	  This selects Synopsys DesignWare Cores Mobile Storage Controller
198e438cf49SJisheng Zhang	  support.
199e438cf49SJisheng Zhang	  If you have a controller with this interface, say Y or M here.
200e438cf49SJisheng Zhang	  If unsure, say N.
201e438cf49SJisheng Zhang
202ff6af28fSMasahiro Yamadaconfig MMC_SDHCI_CADENCE
203ff6af28fSMasahiro Yamada	tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
204ff6af28fSMasahiro Yamada	depends on MMC_SDHCI_PLTFM
205ff6af28fSMasahiro Yamada	depends on OF
206ff6af28fSMasahiro Yamada	help
207ff6af28fSMasahiro Yamada	  This selects the Cadence SD/SDIO/eMMC driver.
208ff6af28fSMasahiro Yamada
209ff6af28fSMasahiro Yamada	  If you have a controller with this interface, say Y or M here.
210ff6af28fSMasahiro Yamada
211ff6af28fSMasahiro Yamada	  If unsure, say N.
212ff6af28fSMasahiro Yamada
21320b1597bSAnton Vorontsovconfig MMC_SDHCI_CNS3XXX
21485d6509dSShawn Guo	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
21520b1597bSAnton Vorontsov	depends on ARCH_CNS3XXX
216f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
21720b1597bSAnton Vorontsov	help
21820b1597bSAnton Vorontsov	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
21920b1597bSAnton Vorontsov
220f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
221f0de8369SShawn Guo
22220b1597bSAnton Vorontsov	  If unsure, say N.
22320b1597bSAnton Vorontsov
22495f25efeSWolfram Sangconfig MMC_SDHCI_ESDHC_IMX
22595a2482aSShawn Guo	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
2262b795518SSascha Hauer	depends on ARCH_MXC
227f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
22895f25efeSWolfram Sang	select MMC_SDHCI_IO_ACCESSORS
229bb6e3581SBOUGH CHEN	select MMC_CQHCI
23095f25efeSWolfram Sang	help
23195a2482aSShawn Guo	  This selects the Freescale eSDHC/uSDHC controller support
23295a2482aSShawn Guo	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
23395f25efeSWolfram Sang
234f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
235f0de8369SShawn Guo
23695f25efeSWolfram Sang	  If unsure, say N.
23795f25efeSWolfram Sang
238985b1aa0SMike Rapoportconfig MMC_SDHCI_DOVE
23985d6509dSShawn Guo	tristate "SDHCI support on Marvell's Dove SoC"
240ec4422acSSebastian Hesselbarth	depends on ARCH_DOVE || MACH_DOVE
241f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
242985b1aa0SMike Rapoport	select MMC_SDHCI_IO_ACCESSORS
243985b1aa0SMike Rapoport	help
244985b1aa0SMike Rapoport	  This selects the Secure Digital Host Controller Interface in
245985b1aa0SMike Rapoport	  Marvell's Dove SoC.
246985b1aa0SMike Rapoport
247f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
248f0de8369SShawn Guo
249985b1aa0SMike Rapoport	  If unsure, say N.
250985b1aa0SMike Rapoport
25103d2bfc8SOlof Johanssonconfig MMC_SDHCI_TEGRA
25285d6509dSShawn Guo	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
25385d6509dSShawn Guo	depends on ARCH_TEGRA
254f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
25503d2bfc8SOlof Johansson	select MMC_SDHCI_IO_ACCESSORS
2563c4019f9SSowjanya Komatineni	select MMC_CQHCI
25703d2bfc8SOlof Johansson	help
25803d2bfc8SOlof Johansson	  This selects the Tegra SD/MMC controller. If you have a Tegra
25903d2bfc8SOlof Johansson	  platform with SD or MMC devices, say Y or M here.
26003d2bfc8SOlof Johansson
26103d2bfc8SOlof Johansson	  If unsure, say N.
26203d2bfc8SOlof Johansson
2630d1bb41aSBen Dooksconfig MMC_SDHCI_S3C
2640d1bb41aSBen Dooks	tristate "SDHCI support on Samsung S3C SoC"
265930a6f70SKyungmin Park	depends on MMC_SDHCI && PLAT_SAMSUNG
2660d1bb41aSBen Dooks	help
2670d1bb41aSBen Dooks	  This selects the Secure Digital Host Controller Interface (SDHCI)
2680d1bb41aSBen Dooks	  often referrered to as the HSMMC block in some of the Samsung S3C
2690d1bb41aSBen Dooks	  range of SoC.
2700d1bb41aSBen Dooks
2710d1bb41aSBen Dooks	  If you have a controller with this interface, say Y or M here.
2720d1bb41aSBen Dooks
2730d1bb41aSBen Dooks	  If unsure, say N.
2740d1bb41aSBen Dooks
275b3b665b0SBarry Songconfig MMC_SDHCI_SIRF
276b3b665b0SBarry Song	tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
277b3b665b0SBarry Song	depends on ARCH_SIRF
278b3b665b0SBarry Song	depends on MMC_SDHCI_PLTFM
279a1b0b977SWeijun Yang	select MMC_SDHCI_IO_ACCESSORS
280b3b665b0SBarry Song	help
281b3b665b0SBarry Song	  This selects the SDHCI support for SiRF System-on-Chip devices.
282b3b665b0SBarry Song
283b3b665b0SBarry Song	  If you have a controller with this interface, say Y or M here.
284b3b665b0SBarry Song
285b3b665b0SBarry Song	  If unsure, say N.
286b3b665b0SBarry Song
287a702c8abSZhangfei Gaoconfig MMC_SDHCI_PXAV3
288a702c8abSZhangfei Gao	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
289a702c8abSZhangfei Gao	depends on CLKDEV_LOOKUP
2905d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
291daa3054fSJean Delvare	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
292a702c8abSZhangfei Gao	default CPU_MMP2
293a702c8abSZhangfei Gao	help
294a702c8abSZhangfei Gao	  This selects the Marvell(R) PXAV3 SD Host Controller.
295a702c8abSZhangfei Gao	  If you have a MMP2 platform with SD Host Controller
296a702c8abSZhangfei Gao	  and a card slot, say Y or M here.
297a702c8abSZhangfei Gao
298a702c8abSZhangfei Gao	  If unsure, say N.
299a702c8abSZhangfei Gao
3009f5d71e4SZhangfei Gaoconfig MMC_SDHCI_PXAV2
3019f5d71e4SZhangfei Gao	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
3029f5d71e4SZhangfei Gao	depends on CLKDEV_LOOKUP
3035d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
3048a8735ebSJean Delvare	depends on ARCH_MMP || COMPILE_TEST
3059f5d71e4SZhangfei Gao	default CPU_PXA910
3069f5d71e4SZhangfei Gao	help
3079f5d71e4SZhangfei Gao	  This selects the Marvell(R) PXAV2 SD Host Controller.
3089f5d71e4SZhangfei Gao	  If you have a PXA9XX platform with SD Host Controller
3099f5d71e4SZhangfei Gao	  and a card slot, say Y or M here.
3109f5d71e4SZhangfei Gao
3119f5d71e4SZhangfei Gao	  If unsure, say N.
3129f5d71e4SZhangfei Gao
313c63b3cbaSViresh KUMARconfig MMC_SDHCI_SPEAR
314c63b3cbaSViresh KUMAR	tristate "SDHCI support on ST SPEAr platform"
315c63b3cbaSViresh KUMAR	depends on MMC_SDHCI && PLAT_SPEAR
316bbd7f0a2SUlf Hansson	depends on OF
317c63b3cbaSViresh KUMAR	help
318c63b3cbaSViresh KUMAR	  This selects the Secure Digital Host Controller Interface (SDHCI)
319c63b3cbaSViresh KUMAR	  often referrered to as the HSMMC block in some of the ST SPEAR range
320c63b3cbaSViresh KUMAR	  of SoC
321c63b3cbaSViresh KUMAR
322c63b3cbaSViresh KUMAR	  If you have a controller with this interface, say Y or M here.
323c63b3cbaSViresh KUMAR
324c63b3cbaSViresh KUMAR	  If unsure, say N.
325c63b3cbaSViresh KUMAR
3260d1bb41aSBen Dooksconfig MMC_SDHCI_S3C_DMA
3270d1bb41aSBen Dooks	bool "DMA support on S3C SDHCI"
32886147c84SKees Cook	depends on MMC_SDHCI_S3C
3290d1bb41aSBen Dooks	help
3300d1bb41aSBen Dooks	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
3310d1bb41aSBen Dooks	  has proved to be problematic if the controller encounters
3320d1bb41aSBen Dooks	  certain errors, and thus should be treated with care.
3330d1bb41aSBen Dooks
3340d1bb41aSBen Dooks	  YMMV.
3350d1bb41aSBen Dooks
33601ebea1bSChristian Daudtconfig MMC_SDHCI_BCM_KONA
33701ebea1bSChristian Daudt	tristate "SDHCI support on Broadcom KONA platform"
338fc2bd2e4SChristian Daudt	depends on ARCH_BCM_MOBILE
3395d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
34001ebea1bSChristian Daudt	help
34101ebea1bSChristian Daudt	  This selects the Broadcom Kona Secure Digital Host Controller
34201ebea1bSChristian Daudt	  Interface(SDHCI) support.
34301ebea1bSChristian Daudt	  This is used in Broadcom mobile SoCs.
34401ebea1bSChristian Daudt
34501ebea1bSChristian Daudt	  If you have a controller with this interface, say Y or M here.
34601ebea1bSChristian Daudt
34787a50745SVincent Yangconfig MMC_SDHCI_F_SDH30
34887a50745SVincent Yang	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
34987a50745SVincent Yang	depends on MMC_SDHCI_PLTFM
35090e1d8ccSArd Biesheuvel	depends on OF || ACPI
35187a50745SVincent Yang	help
35287a50745SVincent Yang	  This selects the Secure Digital Host Controller Interface (SDHCI)
35387a50745SVincent Yang	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
35487a50745SVincent Yang	  If you have a controller with this interface, say Y or M here.
35587a50745SVincent Yang
35687a50745SVincent Yang	  If unsure, say N.
35787a50745SVincent Yang
358b580c52dSScott Brandenconfig MMC_SDHCI_IPROC
35977cb7d3aSStefan Wahren	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
36077cb7d3aSStefan Wahren	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
361b580c52dSScott Branden	depends on MMC_SDHCI_PLTFM
3627c7ba433SSrinath Mannam	depends on OF || ACPI
363b580c52dSScott Branden	default ARCH_BCM_IPROC
364b580c52dSScott Branden	select MMC_SDHCI_IO_ACCESSORS
365b580c52dSScott Branden	help
366b580c52dSScott Branden	  This selects the iProc SD/MMC controller.
367b580c52dSScott Branden
36877cb7d3aSStefan Wahren	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
369b580c52dSScott Branden	  say Y or M here.
370b580c52dSScott Branden
371b580c52dSScott Branden	  If unsure, say N.
372b580c52dSScott Branden
37351c5d844SKevin Hilmanconfig MMC_MESON_GX
374e79dc1b4SNan Li	tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
37551c5d844SKevin Hilman	depends on ARCH_MESON && MMC
37651c5d844SKevin Hilman	help
37751c5d844SKevin Hilman	  This selects support for the Amlogic SD/MMC Host Controller
378e79dc1b4SNan Li	  found on the S905/GX*/AXG family of SoCs.  This controller is
37951c5d844SKevin Hilman	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
38051c5d844SKevin Hilman
38151c5d844SKevin Hilman	  If you have a controller with this interface, say Y here.
38251c5d844SKevin Hilman
383ed80a13bSCarlo Caioneconfig MMC_MESON_MX_SDIO
384ed80a13bSCarlo Caione	tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
385ed80a13bSCarlo Caione	depends on ARCH_MESON || COMPILE_TEST
386ed80a13bSCarlo Caione	depends on COMMON_CLK
387ed80a13bSCarlo Caione	depends on OF
388ed80a13bSCarlo Caione	help
389ed80a13bSCarlo Caione	  This selects support for the SD/MMC Host Controller on
390ed80a13bSCarlo Caione	  Amlogic Meson6, Meson8 and Meson8b SoCs.
391ed80a13bSCarlo Caione
392ed80a13bSCarlo Caione	  If you have a controller with this interface, say Y or M here.
393ed80a13bSCarlo Caione	  If unsure, say N.
394ed80a13bSCarlo Caione
3951b66e94eSJonas Jensenconfig MMC_MOXART
3961b66e94eSJonas Jensen	tristate "MOXART SD/MMC Host Controller support"
3971b66e94eSJonas Jensen	depends on ARCH_MOXART && MMC
3981b66e94eSJonas Jensen	help
3991b66e94eSJonas Jensen	  This selects support for the MOXART SD/MMC Host Controller.
4001b66e94eSJonas Jensen	  MOXA provides one multi-functional card reader which can
4011b66e94eSJonas Jensen	  be found on some embedded hardware such as UC-7112-LX.
4021b66e94eSJonas Jensen	  If you have a controller with this interface, say Y here.
4031b66e94eSJonas Jensen
404f52d9c4fSPeter Griffinconfig MMC_SDHCI_ST
405f52d9c4fSPeter Griffin	tristate "SDHCI support on STMicroelectronics SoC"
4062feada5bSIvan Mikhaylov	depends on ARCH_STI || FSP2
407f52d9c4fSPeter Griffin	depends on MMC_SDHCI_PLTFM
408f52d9c4fSPeter Griffin	select MMC_SDHCI_IO_ACCESSORS
409f52d9c4fSPeter Griffin	help
410f52d9c4fSPeter Griffin	  This selects the Secure Digital Host Controller Interface in
411f52d9c4fSPeter Griffin	  STMicroelectronics SoCs.
412f52d9c4fSPeter Griffin
413f52d9c4fSPeter Griffin	  If you have a controller with this interface, say Y or M here.
414f52d9c4fSPeter Griffin	  If unsure, say N.
415f52d9c4fSPeter Griffin
4161c6a0718SPierre Ossmanconfig MMC_OMAP
4171c6a0718SPierre Ossman	tristate "TI OMAP Multimedia Card Interface support"
418790864dcSJan Engelhardt	depends on ARCH_OMAP
41960a549fcSArnd Bergmann	depends on TPS65010 || !MACH_OMAP_H2
4201c6a0718SPierre Ossman	help
4211c6a0718SPierre Ossman	  This selects the TI OMAP Multimedia card Interface.
4221c6a0718SPierre Ossman	  If you have an OMAP board with a Multimedia Card slot,
4231c6a0718SPierre Ossman	  say Y or M here.
4241c6a0718SPierre Ossman
4251c6a0718SPierre Ossman	  If unsure, say N.
4261c6a0718SPierre Ossman
427a45c6cb8SMadhusudhan Chikkatureconfig MMC_OMAP_HS
428a45c6cb8SMadhusudhan Chikkature	tristate "TI OMAP High Speed Multimedia Card Interface support"
429a7cedab6SLokesh Vutla	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
430a45c6cb8SMadhusudhan Chikkature	help
431a45c6cb8SMadhusudhan Chikkature	  This selects the TI OMAP High Speed Multimedia card Interface.
432bcf24e1dSAmarinder Bindra	  If you have an omap2plus board with a Multimedia Card slot,
433bcf24e1dSAmarinder Bindra	  say Y or M here.
434a45c6cb8SMadhusudhan Chikkature
435a45c6cb8SMadhusudhan Chikkature	  If unsure, say N.
436a45c6cb8SMadhusudhan Chikkature
4371c6a0718SPierre Ossmanconfig MMC_WBSD
4381c6a0718SPierre Ossman	tristate "Winbond W83L51xD SD/MMC Card Interface support"
439790864dcSJan Engelhardt	depends on ISA_DMA_API
4401c6a0718SPierre Ossman	help
4411c6a0718SPierre Ossman	  This selects the Winbond(R) W83L51xD Secure digital and
4421c6a0718SPierre Ossman	  Multimedia card Interface.
4431c6a0718SPierre Ossman	  If you have a machine with a integrated W83L518D or W83L519D
4441c6a0718SPierre Ossman	  SD/MMC card reader, say Y or M here.
4451c6a0718SPierre Ossman
4461c6a0718SPierre Ossman	  If unsure, say N.
4471c6a0718SPierre Ossman
448c5413ad8SOleksij Rempelconfig MMC_ALCOR
449c5413ad8SOleksij Rempel	tristate "Alcor Micro/Alcor Link SD/MMC controller"
450c5413ad8SOleksij Rempel	depends on MISC_ALCOR_PCI
451c5413ad8SOleksij Rempel	help
452c5413ad8SOleksij Rempel	  Say Y here to include driver code to support SD/MMC card interface
453c5413ad8SOleksij Rempel	  of Alcor Micro PCI-E card reader
454c5413ad8SOleksij Rempel
4551c6a0718SPierre Ossmanconfig MMC_AU1X
4561c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
45737663860SManuel Lauss	depends on MIPS_ALCHEMY
4581c6a0718SPierre Ossman	help
4591c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
4601c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
4611c6a0718SPierre Ossman
4621c6a0718SPierre Ossman	  If unsure, say N.
4631c6a0718SPierre Ossman
4647d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
465d6a20debSLudovic Desroches	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
466ef4b160fSAndy Shevchenko	depends on ARCH_AT91
4677d2be074SHaavard Skinnemoen	help
468ef4b160fSAndy Shevchenko	  This selects the Atmel Multimedia Card Interface driver.
469ef4b160fSAndy Shevchenko	  If you have an AT91 platform with a Multimedia Card slot,
470ef4b160fSAndy Shevchenko	  say Y or M here.
4717d2be074SHaavard Skinnemoen
4727d2be074SHaavard Skinnemoen	  If unsure, say N.
4737d2be074SHaavard Skinnemoen
4740eb0d9f4SGeorgi Djakovconfig MMC_SDHCI_MSM
4750eb0d9f4SGeorgi Djakov	tristate "Qualcomm SDHCI Controller Support"
4766096d7a8SGeorgi Djakov	depends on ARCH_QCOM || (ARM && COMPILE_TEST)
4770eb0d9f4SGeorgi Djakov	depends on MMC_SDHCI_PLTFM
47899d570daSVijay Viswanath	select MMC_SDHCI_IO_ACCESSORS
4790eb0d9f4SGeorgi Djakov	help
4800eb0d9f4SGeorgi Djakov	  This selects the Secure Digital Host Controller Interface (SDHCI)
4810eb0d9f4SGeorgi Djakov	  support present in Qualcomm SOCs. The controller supports
4820eb0d9f4SGeorgi Djakov	  SD/MMC/SDIO devices.
4830eb0d9f4SGeorgi Djakov
4840eb0d9f4SGeorgi Djakov	  If you have a controller with this interface, say Y or M here.
4850eb0d9f4SGeorgi Djakov
4860eb0d9f4SGeorgi Djakov	  If unsure, say N.
4870eb0d9f4SGeorgi Djakov
488d96be879SSascha Hauerconfig MMC_MXC
489c7ceab02SAnatolij Gustschin	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
490c7ceab02SAnatolij Gustschin	depends on ARCH_MXC || PPC_MPC512x
491d96be879SSascha Hauer	help
492c7ceab02SAnatolij Gustschin	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
493c7ceab02SAnatolij Gustschin	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
494c7ceab02SAnatolij Gustschin	  with a Multimedia Card slot, say Y or M here.
495d96be879SSascha Hauer
496d96be879SSascha Hauer	  If unsure, say N.
497d96be879SSascha Hauer
498e4243f13SShawn Guoconfig MMC_MXS
499e4243f13SShawn Guo	tristate "Freescale MXS Multimedia Card Interface support"
500e4243f13SShawn Guo	depends on ARCH_MXS && MXS_DMA
501e4243f13SShawn Guo	help
502e4243f13SShawn Guo	  This selects the Freescale SSP MMC controller found on MXS based
503e4243f13SShawn Guo	  platforms like mx23/28.
504e4243f13SShawn Guo
505e4243f13SShawn Guo	  If unsure, say N.
506e4243f13SShawn Guo
5071c6a0718SPierre Ossmanconfig MMC_TIFM_SD
50886147c84SKees Cook	tristate "TI Flash Media MMC/SD Interface support"
50986147c84SKees Cook	depends on PCI
5101c6a0718SPierre Ossman	select TIFM_CORE
5111c6a0718SPierre Ossman	help
5121c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
5131c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
5141c6a0718SPierre Ossman	  laptops.
5151c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
5161c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
5171c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
5181c6a0718SPierre Ossman	  (TIFM_7XX1)'.
5191c6a0718SPierre Ossman
5201c6a0718SPierre Ossman	  To compile this driver as a module, choose M here: the
5211c6a0718SPierre Ossman	  module will be called tifm_sd.
5221c6a0718SPierre Ossman
523236caa7cSMaen Suleimanconfig MMC_MVSDIO
524236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
525236caa7cSMaen Suleiman	depends on PLAT_ORION
52617da6783SLinus Walleij	depends on OF
527236caa7cSMaen Suleiman	---help---
528236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
529236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
530236caa7cSMaen Suleiman	  SoC controllers.
531236caa7cSMaen Suleiman
532236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
533236caa7cSMaen Suleiman	  module will be called mvsdio.
534236caa7cSMaen Suleiman
535b4cff454SVipin Bhandariconfig MMC_DAVINCI
536b4cff454SVipin Bhandari	tristate "TI DAVINCI Multimedia Card Interface support"
537b4cff454SVipin Bhandari	depends on ARCH_DAVINCI
538b4cff454SVipin Bhandari	help
539b4cff454SVipin Bhandari	  This selects the TI DAVINCI Multimedia card Interface.
540b4cff454SVipin Bhandari	  If you have an DAVINCI board with a Multimedia Card slot,
541b4cff454SVipin Bhandari	  say Y or M here.  If unsure, say N.
542b4cff454SVipin Bhandari
54385c34d2eSMike Lockwoodconfig MMC_GOLDFISH
54485c34d2eSMike Lockwood	tristate "goldfish qemu Multimedia Card Interface support"
5457f8a9a7eSLuis de Bethencourt	depends on GOLDFISH || COMPILE_TEST
54685c34d2eSMike Lockwood	help
54785c34d2eSMike Lockwood	  This selects the Goldfish Multimedia card Interface emulation
54885c34d2eSMike Lockwood	  found on the Goldfish Android virtual device emulation.
54985c34d2eSMike Lockwood
55015a0580cSDavid Brownellconfig MMC_SPI
55157105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
552e176c255SIan Molton	depends on SPI_MASTER && HAS_DMA
55315a0580cSDavid Brownell	select CRC7
55415a0580cSDavid Brownell	select CRC_ITU_T
55515a0580cSDavid Brownell	help
556692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
55757105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
55857105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
55957105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
56057105737SPierre Ossman	  controllers.
56115a0580cSDavid Brownell
56215a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
56315a0580cSDavid Brownell
564be518018SThomas Kleffelconfig MMC_S3C
565be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
566b130d5c2SKukjin Kim	depends on ARCH_S3C24XX
567b45e4b50SVasily Khoruzhick	depends on S3C24XX_DMAC
568be518018SThomas Kleffel	help
569be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
570be518018SThomas Kleffel	  Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
571be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
572be518018SThomas Kleffel	  slot, say Y or M here.
573be518018SThomas Kleffel
574be518018SThomas Kleffel	  If unsure, say N.
575be518018SThomas Kleffel
5765a2c4fe0SBen Dooksconfig MMC_S3C_HW_SDIO_IRQ
5775a2c4fe0SBen Dooks	bool "Hardware support for SDIO IRQ"
5785a2c4fe0SBen Dooks	depends on MMC_S3C
5795a2c4fe0SBen Dooks	help
5805a2c4fe0SBen Dooks	  Enable the hardware support for SDIO interrupts instead of using
5815a2c4fe0SBen Dooks	  the generic polling code.
5825a2c4fe0SBen Dooks
58326f14947SBen Dookschoice
58426f14947SBen Dooks	prompt "Samsung S3C SD/MMC transfer code"
58526f14947SBen Dooks	depends on MMC_S3C
58626f14947SBen Dooks
58726f14947SBen Dooksconfig MMC_S3C_PIO
58826f14947SBen Dooks	bool "Use PIO transfers only"
58926f14947SBen Dooks	help
59026f14947SBen Dooks	  Use PIO to transfer data between memory and the hardware.
59126f14947SBen Dooks
59226f14947SBen Dooks	  PIO is slower than DMA as it requires CPU instructions to
59326f14947SBen Dooks	  move the data. This has been the traditional default for
59426f14947SBen Dooks	  the S3C MCI driver.
59526f14947SBen Dooks
59626f14947SBen Dooksconfig MMC_S3C_DMA
59786147c84SKees Cook	bool "Use DMA transfers only"
59826f14947SBen Dooks	help
59926f14947SBen Dooks	  Use DMA to transfer data between memory and the hardare.
60026f14947SBen Dooks
60126f14947SBen Dooks	  Currently, the DMA support in this driver seems to not be
60226f14947SBen Dooks	  working properly and needs to be debugged before this
60326f14947SBen Dooks	  option is useful.
60426f14947SBen Dooks
60526f14947SBen Dooksendchoice
60626f14947SBen Dooks
6076a36913aSSascha Sommerconfig MMC_SDRICOH_CS
60886147c84SKees Cook	tristate "MMC/SD driver for Ricoh Bay1Controllers"
60986147c84SKees Cook	depends on PCI && PCMCIA
6106a36913aSSascha Sommer	help
6116a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
6126a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
6136a36913aSSascha Sommer
6146a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
6156a36913aSSascha Sommer	  module will be called sdricoh_cs.
6166a36913aSSascha Sommer
617fb8bd90fSChunyan Zhangconfig MMC_SDHCI_SPRD
618fb8bd90fSChunyan Zhang	tristate "Spreadtrum SDIO host Controller"
619fb8bd90fSChunyan Zhang	depends on ARCH_SPRD
620fb8bd90fSChunyan Zhang	depends on MMC_SDHCI_PLTFM
621fb8bd90fSChunyan Zhang	select MMC_SDHCI_IO_ACCESSORS
622fb8bd90fSChunyan Zhang	help
623fb8bd90fSChunyan Zhang	  This selects the SDIO Host Controller in Spreadtrum
624fb8bd90fSChunyan Zhang	  SoCs, this driver supports R11(IP version: R11P0).
625fb8bd90fSChunyan Zhang
626fb8bd90fSChunyan Zhang	  If you have a controller with this interface, say Y or M here.
627fb8bd90fSChunyan Zhang
628fb8bd90fSChunyan Zhang	  If unsure, say N.
629fb8bd90fSChunyan Zhang
630b6147490SGuennadi Liakhovetskiconfig MMC_TMIO_CORE
631b6147490SGuennadi Liakhovetski	tristate
632b6147490SGuennadi Liakhovetski
6334a48998fSIan Moltonconfig MMC_TMIO
6344a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
63542051e8aSGuennadi Liakhovetski	depends on MFD_TMIO || MFD_ASIC3
636b6147490SGuennadi Liakhovetski	select MMC_TMIO_CORE
6374a48998fSIan Molton	help
6384a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
639e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
6405f5bac82SMichał Mirosław
64142051e8aSGuennadi Liakhovetskiconfig MMC_SDHI
642b5b6a5f4SSimon Horman	tristate "Renesas SDHI SD/SDIO controller support"
64349312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
64442051e8aSGuennadi Liakhovetski	select MMC_TMIO_CORE
64542051e8aSGuennadi Liakhovetski	help
64642051e8aSGuennadi Liakhovetski	  This provides support for the SDHI SD/SDIO controller found in
647b5b6a5f4SSimon Horman	  Renesas SuperH, ARM and ARM64 based SoCs
64842051e8aSGuennadi Liakhovetski
6492a68ea78SSimon Hormanconfig MMC_SDHI_SYS_DMAC
6502a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
6511d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
652c813e10aSMasahiro Yamada	default MMC_SDHI if (SUPERH || ARM)
6532a68ea78SSimon Horman	help
6542a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6552a68ea78SSimon Horman	  using SYS-DMAC via DMA Engine. This supports the controllers
6562a68ea78SSimon Horman	  found in SuperH and Renesas ARM based SoCs.
6572a68ea78SSimon Horman
6582a68ea78SSimon Hormanconfig MMC_SDHI_INTERNAL_DMAC
6592a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
6609706b472SChris Brandt	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
6611d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
6629706b472SChris Brandt	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
6632a68ea78SSimon Horman	help
6642a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6652a68ea78SSimon Horman	  using on-chip bus mastering. This supports the controllers
6669706b472SChris Brandt	  found in arm64 based SoCs. This controller is also found in
6679706b472SChris Brandt	  some RZ family SoCs.
6682a68ea78SSimon Horman
6693fd784f7SMasahiro Yamadaconfig MMC_UNIPHIER
6703fd784f7SMasahiro Yamada	tristate "UniPhier SD/eMMC Host Controller support"
6713fd784f7SMasahiro Yamada	depends on ARCH_UNIPHIER || COMPILE_TEST
6723fd784f7SMasahiro Yamada	depends on OF
6733fd784f7SMasahiro Yamada	select MMC_TMIO_CORE
6743fd784f7SMasahiro Yamada	help
6753fd784f7SMasahiro Yamada	  This provides support for the SD/eMMC controller found in
6763fd784f7SMasahiro Yamada	  UniPhier SoCs. The eMMC variant of this controller is used
6773fd784f7SMasahiro Yamada	  only for 32-bit SoCs.
6783fd784f7SMasahiro Yamada
6795f5bac82SMichał Mirosławconfig MMC_CB710
6805f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
6810244ad00SMartin Schwidefsky	depends on PCI
6825f5bac82SMichał Mirosław	select CB710_CORE
6835f5bac82SMichał Mirosław	help
6845f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
6855f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
6865f5bac82SMichał Mirosław	  HP Compaq nx9500).
6875f5bac82SMichał Mirosław
6885f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
6895f5bac82SMichał Mirosław	  will be called cb710-mmc.
6905f5bac82SMichał Mirosław
691f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
692f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
693f0bf7f61SHarald Welte	depends on PCI
694f0bf7f61SHarald Welte	help
695f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
696f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
697f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
698f0bf7f61SHarald Welte	  SD/MMC/SDHC.
699f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
700f0bf7f61SHarald Welte
701f0bf7f61SHarald Welte	  If unsure, say N.
702eb962d5bSCliff Cai
70301d95843SSteven J. Hillconfig MMC_CAVIUM_OCTEON
70401d95843SSteven J. Hill	tristate "Cavium OCTEON SD/MMC Card Interface support"
70501d95843SSteven J. Hill	depends on CAVIUM_OCTEON_SOC
70601d95843SSteven J. Hill	help
70701d95843SSteven J. Hill	  This selects Cavium OCTEON SD/MMC card Interface.
70801d95843SSteven J. Hill	  If you have an OCTEON board with a Multimedia Card slot,
70901d95843SSteven J. Hill	  say Y or M here.
71001d95843SSteven J. Hill
71101d95843SSteven J. Hill	  If unsure, say N.
71201d95843SSteven J. Hill
713166bac38SJan Glauberconfig MMC_CAVIUM_THUNDERX
714166bac38SJan Glauber	tristate "Cavium ThunderX SD/MMC Card Interface support"
715166bac38SJan Glauber	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
71662467bbbSJan Glauber	depends on GPIO_THUNDERX
717166bac38SJan Glauber	depends on OF_ADDRESS
718166bac38SJan Glauber	help
719166bac38SJan Glauber	  This selects Cavium ThunderX SD/MMC Card Interface.
720166bac38SJan Glauber	  If you have an Cavium ARM64 board with a Multimedia Card slot
721166bac38SJan Glauber	  or builtin eMMC chip say Y or M here. If built as a module
722166bac38SJan Glauber	  the module will be called thunderx_mmc.ko.
723166bac38SJan Glauber
724f95f3850SWill Newtonconfig MMC_DW
725f95f3850SWill Newton	tristate "Synopsys DesignWare Memory Card Interface"
726c34346b2SAlim Akhtar	depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
727f95f3850SWill Newton	help
728f95f3850SWill Newton	  This selects support for the Synopsys DesignWare Mobile Storage IP
729f95f3850SWill Newton	  block, this provides host support for SD and MMC interfaces, in both
7303fc7eaefSShawn Lin	  PIO, internal DMA mode and external DMA mode.
731f95f3850SWill Newton
73262ca8034SShashidhar Hiremathconfig MMC_DW_PLTFM
73362ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI Support as platform device"
73462ca8034SShashidhar Hiremath	depends on MMC_DW
73562ca8034SShashidhar Hiremath	default y
73662ca8034SShashidhar Hiremath	help
73762ca8034SShashidhar Hiremath	  This selects the common helper functions support for Host Controller
73862ca8034SShashidhar Hiremath	  Interface based platform driver. Please select this option if the IP
73962ca8034SShashidhar Hiremath	  is present as a platform device. This is the common interface for the
74062ca8034SShashidhar Hiremath	  Synopsys Designware IP.
74162ca8034SShashidhar Hiremath
74262ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
74362ca8034SShashidhar Hiremath
74462ca8034SShashidhar Hiremath	  If unsure, say Y.
74562ca8034SShashidhar Hiremath
74686958dccSLiming Sunconfig MMC_DW_BLUEFIELD
74786958dccSLiming Sun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
74886958dccSLiming Sun	depends on MMC_DW
74986958dccSLiming Sun	select MMC_DW_PLTFM
75086958dccSLiming Sun	help
75186958dccSLiming Sun	  This selects support for Mellanox BlueField SoC specific extensions to
75286958dccSLiming Sun	  the Synopsys DesignWare Memory Card Interface driver. Select this
75386958dccSLiming Sun	  option for platforms based on Mellanox BlueField SoC's.
75486958dccSLiming Sun
755c3665006SThomas Abrahamconfig MMC_DW_EXYNOS
756e41e85ccSMasanari Iida	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
757c3665006SThomas Abraham	depends on MMC_DW
758c3665006SThomas Abraham	select MMC_DW_PLTFM
759c3665006SThomas Abraham	help
760c3665006SThomas Abraham	  This selects support for Samsung Exynos SoC specific extensions to the
761c3665006SThomas Abraham	  Synopsys DesignWare Memory Card Interface driver. Select this option
762c3665006SThomas Abraham	  for platforms based on Exynos4 and Exynos5 SoC's.
763c3665006SThomas Abraham
764e382ab74Stianshuliangconfig MMC_DW_HI3798CV200
765e382ab74Stianshuliang	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
766e382ab74Stianshuliang	depends on MMC_DW
767e382ab74Stianshuliang	select MMC_DW_PLTFM
768e382ab74Stianshuliang	help
769e382ab74Stianshuliang	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
770e382ab74Stianshuliang	  Synopsys DesignWare Memory Card Interface driver. Select this option
771e382ab74Stianshuliang	  for platforms based on HiSilicon Hi3798CV200 SoC.
772e382ab74Stianshuliang
773036f29d5SZhangfei Gaoconfig MMC_DW_K3
774036f29d5SZhangfei Gao	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
775036f29d5SZhangfei Gao	depends on MMC_DW
776036f29d5SZhangfei Gao	select MMC_DW_PLTFM
777036f29d5SZhangfei Gao	help
778036f29d5SZhangfei Gao	  This selects support for Hisilicon K3 SoC specific extensions to the
779036f29d5SZhangfei Gao	  Synopsys DesignWare Memory Card Interface driver. Select this option
780036f29d5SZhangfei Gao	  for platforms based on Hisilicon K3 SoC's.
781036f29d5SZhangfei Gao
78262ca8034SShashidhar Hiremathconfig MMC_DW_PCI
78362ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI support on PCI bus"
78462ca8034SShashidhar Hiremath	depends on MMC_DW && PCI
78562ca8034SShashidhar Hiremath	help
78662ca8034SShashidhar Hiremath	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
78762ca8034SShashidhar Hiremath	  Select this option if the IP is present on PCI platform.
78862ca8034SShashidhar Hiremath
78962ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
79062ca8034SShashidhar Hiremath
79162ca8034SShashidhar Hiremath	  If unsure, say N.
79262ca8034SShashidhar Hiremath
7934cdc2ec1Saddy keconfig MMC_DW_ROCKCHIP
7944cdc2ec1Saddy ke	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
7954cdc2ec1Saddy ke	depends on MMC_DW && ARCH_ROCKCHIP
7964cdc2ec1Saddy ke	select MMC_DW_PLTFM
7974cdc2ec1Saddy ke	help
7984cdc2ec1Saddy ke	  This selects support for Rockchip SoC specific extensions to the
7994cdc2ec1Saddy ke	  Synopsys DesignWare Memory Card Interface driver. Select this option
8004cdc2ec1Saddy ke	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
8014cdc2ec1Saddy ke
802a8c643adSJun Nieconfig MMC_DW_ZX
803a8c643adSJun Nie	tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
804a8c643adSJun Nie	depends on MMC_DW && ARCH_ZX
805a8c643adSJun Nie	select MMC_DW_PLTFM
806a8c643adSJun Nie	help
807a8c643adSJun Nie	  This selects support for ZTE SoC specific extensions to the
808a8c643adSJun Nie	  Synopsys DesignWare Memory Card Interface driver. Select this option
809a8c643adSJun Nie	  for platforms based on ZX296718 SoC's.
810a8c643adSJun Nie
811fdc50a94SYusuke Godaconfig MMC_SH_MMCIF
812fdc50a94SYusuke Goda	tristate "SuperH Internal MMCIF support"
81349312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
814fdc50a94SYusuke Goda	help
815ba9e9157SWolfram Sang	  This selects the MMC Host Interface controller (MMCIF) found in various
816ba9e9157SWolfram Sang	  Renesas SoCs for SH and ARM architectures.
817fdc50a94SYusuke Goda
81861bfbdb8SLars-Peter Clausen
81961bfbdb8SLars-Peter Clausenconfig MMC_JZ4740
8206a78768aSAlex Smith	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
821685bc885SPaul Cercueil	depends on MIPS
82261bfbdb8SLars-Peter Clausen	help
8236a78768aSAlex Smith	  This selects support for the SD/MMC controller on Ingenic
8246a78768aSAlex Smith	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
8256a78768aSAlex Smith
82661bfbdb8SLars-Peter Clausen	  If you have a board based on such a SoC and with a SD/MMC slot,
82761bfbdb8SLars-Peter Clausen	  say Y or M here.
82853f3a9e2SDavid Vrabel
82988095e7bSTony Olechconfig MMC_VUB300
83088095e7bSTony Olech	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
83188095e7bSTony Olech	depends on USB
83288095e7bSTony Olech	help
83388095e7bSTony Olech	  This selects support for Elan Digital Systems' VUB300 chip.
83488095e7bSTony Olech
83588095e7bSTony Olech	  The VUB300 is a USB-SDIO Host Controller Interface chip
83688095e7bSTony Olech	  that enables the host computer to use SDIO/SD/MMC cards
83788095e7bSTony Olech	  via a USB 2.0 or USB 1.1 host.
83888095e7bSTony Olech
83988095e7bSTony Olech	  The VUB300 chip will be found in both physically separate
84088095e7bSTony Olech	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
84188095e7bSTony Olech
84288095e7bSTony Olech	  The VUB300 chip supports SD and MMC memory cards in addition
84388095e7bSTony Olech	  to single and multifunction SDIO cards.
84488095e7bSTony Olech
84588095e7bSTony Olech	  Some SDIO cards will need a firmware file to be loaded and
84688095e7bSTony Olech	  sent to VUB300 chip in order to achieve better data throughput.
84788095e7bSTony Olech	  Download these "Offload Pseudocode" from Elan Digital Systems'
84888095e7bSTony Olech	  web-site http://www.elandigitalsystems.com/support/downloads.php
84988095e7bSTony Olech	  and put them in /lib/firmware. Note that without these additional
85088095e7bSTony Olech	  firmware files the VUB300 chip will still function, but not at
85188095e7bSTony Olech	  the best obtainable data rate.
85288095e7bSTony Olech
85388095e7bSTony Olech	  To compile this mmc host controller driver as a module,
85488095e7bSTony Olech	  choose M here: the module will be called vub300.
85588095e7bSTony Olech
85688095e7bSTony Olech	  If you have a computer with an embedded VUB300 chip
85788095e7bSTony Olech	  or if you intend connecting a USB adapter based on a
85888095e7bSTony Olech	  VUB300 chip say Y or M here.
85988095e7bSTony Olech
86053f3a9e2SDavid Vrabelconfig MMC_USHC
86153f3a9e2SDavid Vrabel	tristate "USB SD Host Controller (USHC) support"
86253f3a9e2SDavid Vrabel	depends on USB
86353f3a9e2SDavid Vrabel	help
86453f3a9e2SDavid Vrabel	  This selects support for USB SD Host Controllers based on
86553f3a9e2SDavid Vrabel	  the Cypress Astoria chip with firmware compliant with CSR's
86653f3a9e2SDavid Vrabel	  USB SD Host Controller specification (CS-118793-SP).
86753f3a9e2SDavid Vrabel
86853f3a9e2SDavid Vrabel	  CSR boards with this device include: USB<>SDIO (M1985v2),
86953f3a9e2SDavid Vrabel	  and Ultrasira.
87053f3a9e2SDavid Vrabel
87153f3a9e2SDavid Vrabel	  Note: These controllers only support SDIO cards and do not
87253f3a9e2SDavid Vrabel	  support MMC or SD memory cards.
8733a96dff0STony Prisk
8743a96dff0STony Priskconfig MMC_WMT
8753a96dff0STony Prisk	tristate "Wondermedia SD/MMC Host Controller support"
8763a96dff0STony Prisk	depends on ARCH_VT8500
8773a96dff0STony Prisk	default y
8783a96dff0STony Prisk	help
8793a96dff0STony Prisk	  This selects support for the SD/MMC Host Controller on
8803a96dff0STony Prisk	  Wondermedia WM8505/WM8650 based SoCs.
8813a96dff0STony Prisk
8823a96dff0STony Prisk	  To compile this driver as a module, choose M here: the
8833a96dff0STony Prisk	  module will be called wmt-sdmmc.
8846a5971d8SLinus Torvalds
88575fa9ea6SGuennadi Liakhovetskiconfig MMC_USDHI6ROL0
88675fa9ea6SGuennadi Liakhovetski	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
8871ef94740SGeert Uytterhoeven	depends on HAS_DMA
88875fa9ea6SGuennadi Liakhovetski	help
88975fa9ea6SGuennadi Liakhovetski	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
89075fa9ea6SGuennadi Liakhovetski	  Host Controller
89175fa9ea6SGuennadi Liakhovetski
8922c94b645SWei WANGconfig MMC_REALTEK_PCI
8932c94b645SWei WANG	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
894e455b69dSRui Feng	depends on MISC_RTSX_PCI
8952c94b645SWei WANG	help
8962c94b645SWei WANG	  Say Y here to include driver code to support SD/MMC card interface
8972c94b645SWei WANG	  of Realtek PCI-E card reader
898c7f6558dSRoger Tseng
899c7f6558dSRoger Tsengconfig MMC_REALTEK_USB
900c7f6558dSRoger Tseng	tristate "Realtek USB SD/MMC Card Interface Driver"
901e455b69dSRui Feng	depends on MISC_RTSX_USB
902c7f6558dSRoger Tseng	help
903c7f6558dSRoger Tseng	  Say Y here to include driver code to support SD/MMC card interface
904c7f6558dSRoger Tseng	  of Realtek RTS5129/39 series card reader
90519b7f796SDavid Lanzendörfer
90619b7f796SDavid Lanzendörferconfig MMC_SUNXI
90719b7f796SDavid Lanzendörfer	tristate "Allwinner sunxi SD/MMC Host Controller support"
90819b7f796SDavid Lanzendörfer	depends on ARCH_SUNXI
90919b7f796SDavid Lanzendörfer	help
91019b7f796SDavid Lanzendörfer	  This selects support for the SD/MMC Host Controller on
91119b7f796SDavid Lanzendörfer	  Allwinner sunxi SoCs.
912a5eb8bbdSOndrej Zary
913a4080225SVenkat Gopalakrishnanconfig MMC_CQHCI
914a4080225SVenkat Gopalakrishnan	tristate "Command Queue Host Controller Interface support"
915a4080225SVenkat Gopalakrishnan	depends on HAS_DMA
916a4080225SVenkat Gopalakrishnan	help
917a4080225SVenkat Gopalakrishnan	  This selects the Command Queue Host Controller Interface (CQHCI)
918a4080225SVenkat Gopalakrishnan	  support present in host controllers of Qualcomm Technologies, Inc
919a4080225SVenkat Gopalakrishnan	  amongst others.
920a4080225SVenkat Gopalakrishnan	  This controller supports eMMC devices with command queue support.
921a4080225SVenkat Gopalakrishnan
922a4080225SVenkat Gopalakrishnan	  If you have a controller with this interface, say Y or M here.
923a4080225SVenkat Gopalakrishnan
924a4080225SVenkat Gopalakrishnan	  If unsure, say N.
925a4080225SVenkat Gopalakrishnan
926a5eb8bbdSOndrej Zaryconfig MMC_TOSHIBA_PCI
927a5eb8bbdSOndrej Zary	tristate "Toshiba Type A SD/MMC Card Interface Driver"
928a5eb8bbdSOndrej Zary	depends on PCI
92920848903SChaotian Jing
930660fc733SEric Anholtconfig MMC_BCM2835
931660fc733SEric Anholt	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
932660fc733SEric Anholt	depends on ARCH_BCM2835 || COMPILE_TEST
933660fc733SEric Anholt	help
934660fc733SEric Anholt	  This selects the BCM2835 SDHOST MMC controller. If you have
935660fc733SEric Anholt	  a BCM2835 platform with SD or MMC devices, say Y or M here.
936660fc733SEric Anholt
937660fc733SEric Anholt	  Note that the BCM2835 has two SD controllers: The Arasan
938660fc733SEric Anholt	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
939660fc733SEric Anholt	  sdhost controller (supported by this driver).
940660fc733SEric Anholt
941660fc733SEric Anholt	  If unsure, say N.
942660fc733SEric Anholt
94320848903SChaotian Jingconfig MMC_MTK
94420848903SChaotian Jing	tristate "MediaTek SD/MMC Card Interface support"
945c2b22fffSGeert Uytterhoeven	depends on HAS_DMA
94626c2b19eSNeilBrown	select REGULATOR
94720848903SChaotian Jing	help
94820848903SChaotian Jing	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
94920848903SChaotian Jing	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
95020848903SChaotian Jing	  This is needed if support for any SD/SDIO/MMC devices is required.
95120848903SChaotian Jing	  If unsure, say N.
9525d9460d7SAndrei Pistirica
9535d9460d7SAndrei Pistiricaconfig MMC_SDHCI_MICROCHIP_PIC32
9545d9460d7SAndrei Pistirica	tristate "Microchip PIC32MZDA SDHCI support"
9555d9460d7SAndrei Pistirica	depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
9565d9460d7SAndrei Pistirica	help
9575d9460d7SAndrei Pistirica	  This selects the Secure Digital Host Controller Interface (SDHCI)
9585d9460d7SAndrei Pistirica	  for PIC32MZDA platform.
9595d9460d7SAndrei Pistirica
9605d9460d7SAndrei Pistirica	  If you have a controller with this interface, say Y or M here.
9615d9460d7SAndrei Pistirica
9625d9460d7SAndrei Pistirica	  If unsure, say N.
9636f549034SEnrico Weigelt, metux IT consult
964476bf3d6SAl Cooperconfig MMC_SDHCI_BRCMSTB
965476bf3d6SAl Cooper	tristate "Broadcom SDIO/SD/MMC support"
966476bf3d6SAl Cooper	depends on ARCH_BRCMSTB || BMIPS_GENERIC
967476bf3d6SAl Cooper	depends on MMC_SDHCI_PLTFM
968476bf3d6SAl Cooper	default y
969476bf3d6SAl Cooper	help
970476bf3d6SAl Cooper	  This selects support for the SDIO/SD/MMC Host Controller on
971476bf3d6SAl Cooper	  Broadcom STB SoCs.
972476bf3d6SAl Cooper
973476bf3d6SAl Cooper	  If unsure, say Y.
9743a3748dbSHu Ziji
9753a3748dbSHu Zijiconfig MMC_SDHCI_XENON
9763a3748dbSHu Ziji	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
9773a3748dbSHu Ziji	depends on MMC_SDHCI_PLTFM
9783a3748dbSHu Ziji	help
9793a3748dbSHu Ziji	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
9803a3748dbSHu Ziji	  If you have a controller with this interface, say Y or M here.
9813a3748dbSHu Ziji	  If unsure, say N.
9827d326930SKishon Vijay Abraham I
9837d326930SKishon Vijay Abraham Iconfig MMC_SDHCI_OMAP
9847d326930SKishon Vijay Abraham I	tristate "TI SDHCI Controller Support"
9857d326930SKishon Vijay Abraham I	depends on MMC_SDHCI_PLTFM && OF
986961de0a8SFaiz Abbas	select THERMAL
987287b1da6SFaiz Abbas	imply TI_SOC_THERMAL
9887d326930SKishon Vijay Abraham I	help
9897d326930SKishon Vijay Abraham I	  This selects the Secure Digital Host Controller Interface (SDHCI)
9907d326930SKishon Vijay Abraham I	  support present in TI's DRA7 SOCs. The controller supports
9917d326930SKishon Vijay Abraham I	  SD/MMC/SDIO devices.
9927d326930SKishon Vijay Abraham I
9937d326930SKishon Vijay Abraham I	  If you have a controller with this interface, say Y or M here.
9947d326930SKishon Vijay Abraham I
9957d326930SKishon Vijay Abraham I	  If unsure, say N.
99641fd4caeSFaiz Abbas
99741fd4caeSFaiz Abbasconfig MMC_SDHCI_AM654
99841fd4caeSFaiz Abbas	tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
99941fd4caeSFaiz Abbas	depends on MMC_SDHCI_PLTFM && OF
1000e374e875SFaiz Abbas	select MMC_SDHCI_IO_ACCESSORS
100141fd4caeSFaiz Abbas	help
100241fd4caeSFaiz Abbas	  This selects the Secure Digital Host Controller Interface (SDHCI)
100341fd4caeSFaiz Abbas	  support present in TI's AM654 SOCs. The controller supports
100441fd4caeSFaiz Abbas	  SD/MMC/SDIO devices.
100541fd4caeSFaiz Abbas
100641fd4caeSFaiz Abbas	  If you have a controller with this interface, say Y or M here.
100741fd4caeSFaiz Abbas
100841fd4caeSFaiz Abbas	  If unsure, say N.
1009