xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision 961de0a8)
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
444c5413ad8SOleksij Rempelconfig MMC_ALCOR
445c5413ad8SOleksij Rempel	tristate "Alcor Micro/Alcor Link SD/MMC controller"
446c5413ad8SOleksij Rempel	depends on MISC_ALCOR_PCI
447c5413ad8SOleksij Rempel	help
448c5413ad8SOleksij Rempel	  Say Y here to include driver code to support SD/MMC card interface
449c5413ad8SOleksij Rempel	  of Alcor Micro PCI-E card reader
450c5413ad8SOleksij Rempel
4511c6a0718SPierre Ossmanconfig MMC_AU1X
4521c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
45337663860SManuel Lauss	depends on MIPS_ALCHEMY
4541c6a0718SPierre Ossman	help
4551c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
4561c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
4571c6a0718SPierre Ossman
4581c6a0718SPierre Ossman	  If unsure, say N.
4591c6a0718SPierre Ossman
4607d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
461d6a20debSLudovic Desroches	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
462ef4b160fSAndy Shevchenko	depends on ARCH_AT91
4637d2be074SHaavard Skinnemoen	help
464ef4b160fSAndy Shevchenko	  This selects the Atmel Multimedia Card Interface driver.
465ef4b160fSAndy Shevchenko	  If you have an AT91 platform with a Multimedia Card slot,
466ef4b160fSAndy Shevchenko	  say Y or M here.
4677d2be074SHaavard Skinnemoen
4687d2be074SHaavard Skinnemoen	  If unsure, say N.
4697d2be074SHaavard Skinnemoen
4700eb0d9f4SGeorgi Djakovconfig MMC_SDHCI_MSM
4710eb0d9f4SGeorgi Djakov	tristate "Qualcomm SDHCI Controller Support"
4726096d7a8SGeorgi Djakov	depends on ARCH_QCOM || (ARM && COMPILE_TEST)
4730eb0d9f4SGeorgi Djakov	depends on MMC_SDHCI_PLTFM
47499d570daSVijay Viswanath	select MMC_SDHCI_IO_ACCESSORS
4750eb0d9f4SGeorgi Djakov	help
4760eb0d9f4SGeorgi Djakov	  This selects the Secure Digital Host Controller Interface (SDHCI)
4770eb0d9f4SGeorgi Djakov	  support present in Qualcomm SOCs. The controller supports
4780eb0d9f4SGeorgi Djakov	  SD/MMC/SDIO devices.
4790eb0d9f4SGeorgi Djakov
4800eb0d9f4SGeorgi Djakov	  If you have a controller with this interface, say Y or M here.
4810eb0d9f4SGeorgi Djakov
4820eb0d9f4SGeorgi Djakov	  If unsure, say N.
4830eb0d9f4SGeorgi Djakov
484d96be879SSascha Hauerconfig MMC_MXC
485c7ceab02SAnatolij Gustschin	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
486c7ceab02SAnatolij Gustschin	depends on ARCH_MXC || PPC_MPC512x
487d96be879SSascha Hauer	help
488c7ceab02SAnatolij Gustschin	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
489c7ceab02SAnatolij Gustschin	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
490c7ceab02SAnatolij Gustschin	  with a Multimedia Card slot, say Y or M here.
491d96be879SSascha Hauer
492d96be879SSascha Hauer	  If unsure, say N.
493d96be879SSascha Hauer
494e4243f13SShawn Guoconfig MMC_MXS
495e4243f13SShawn Guo	tristate "Freescale MXS Multimedia Card Interface support"
496e4243f13SShawn Guo	depends on ARCH_MXS && MXS_DMA
497e4243f13SShawn Guo	help
498e4243f13SShawn Guo	  This selects the Freescale SSP MMC controller found on MXS based
499e4243f13SShawn Guo	  platforms like mx23/28.
500e4243f13SShawn Guo
501e4243f13SShawn Guo	  If unsure, say N.
502e4243f13SShawn Guo
5031c6a0718SPierre Ossmanconfig MMC_TIFM_SD
50486147c84SKees Cook	tristate "TI Flash Media MMC/SD Interface support"
50586147c84SKees Cook	depends on PCI
5061c6a0718SPierre Ossman	select TIFM_CORE
5071c6a0718SPierre Ossman	help
5081c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
5091c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
5101c6a0718SPierre Ossman	  laptops.
5111c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
5121c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
5131c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
5141c6a0718SPierre Ossman	  (TIFM_7XX1)'.
5151c6a0718SPierre Ossman
5161c6a0718SPierre Ossman          To compile this driver as a module, choose M here: the
5171c6a0718SPierre Ossman	  module will be called tifm_sd.
5181c6a0718SPierre Ossman
519236caa7cSMaen Suleimanconfig MMC_MVSDIO
520236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
521236caa7cSMaen Suleiman	depends on PLAT_ORION
52217da6783SLinus Walleij	depends on OF
523236caa7cSMaen Suleiman	---help---
524236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
525236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
526236caa7cSMaen Suleiman	  SoC controllers.
527236caa7cSMaen Suleiman
528236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
529236caa7cSMaen Suleiman	  module will be called mvsdio.
530236caa7cSMaen Suleiman
531b4cff454SVipin Bhandariconfig MMC_DAVINCI
532b4cff454SVipin Bhandari        tristate "TI DAVINCI Multimedia Card Interface support"
533b4cff454SVipin Bhandari        depends on ARCH_DAVINCI
534b4cff454SVipin Bhandari        help
535b4cff454SVipin Bhandari          This selects the TI DAVINCI Multimedia card Interface.
536b4cff454SVipin Bhandari          If you have an DAVINCI board with a Multimedia Card slot,
537b4cff454SVipin Bhandari          say Y or M here.  If unsure, say N.
538b4cff454SVipin Bhandari
53985c34d2eSMike Lockwoodconfig MMC_GOLDFISH
54085c34d2eSMike Lockwood	tristate "goldfish qemu Multimedia Card Interface support"
5417f8a9a7eSLuis de Bethencourt	depends on GOLDFISH || COMPILE_TEST
54285c34d2eSMike Lockwood	help
54385c34d2eSMike Lockwood	  This selects the Goldfish Multimedia card Interface emulation
54485c34d2eSMike Lockwood	  found on the Goldfish Android virtual device emulation.
54585c34d2eSMike Lockwood
54615a0580cSDavid Brownellconfig MMC_SPI
54757105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
548e176c255SIan Molton	depends on SPI_MASTER && HAS_DMA
54915a0580cSDavid Brownell	select CRC7
55015a0580cSDavid Brownell	select CRC_ITU_T
55115a0580cSDavid Brownell	help
552692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
55357105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
55457105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
55557105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
55657105737SPierre Ossman	  controllers.
55715a0580cSDavid Brownell
55815a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
55915a0580cSDavid Brownell
560be518018SThomas Kleffelconfig MMC_S3C
561be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
562b130d5c2SKukjin Kim	depends on ARCH_S3C24XX
563b45e4b50SVasily Khoruzhick	depends on S3C24XX_DMAC
564be518018SThomas Kleffel	help
565be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
566be518018SThomas Kleffel          Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
567be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
568be518018SThomas Kleffel	  slot, say Y or M here.
569be518018SThomas Kleffel
570be518018SThomas Kleffel	  If unsure, say N.
571be518018SThomas Kleffel
5725a2c4fe0SBen Dooksconfig MMC_S3C_HW_SDIO_IRQ
5735a2c4fe0SBen Dooks       bool "Hardware support for SDIO IRQ"
5745a2c4fe0SBen Dooks       depends on MMC_S3C
5755a2c4fe0SBen Dooks       help
5765a2c4fe0SBen Dooks         Enable the hardware support for SDIO interrupts instead of using
5775a2c4fe0SBen Dooks	 the generic polling code.
5785a2c4fe0SBen Dooks
57926f14947SBen Dookschoice
58026f14947SBen Dooks	prompt "Samsung S3C SD/MMC transfer code"
58126f14947SBen Dooks	depends on MMC_S3C
58226f14947SBen Dooks
58326f14947SBen Dooksconfig MMC_S3C_PIO
58426f14947SBen Dooks	bool "Use PIO transfers only"
58526f14947SBen Dooks	help
58626f14947SBen Dooks	  Use PIO to transfer data between memory and the hardware.
58726f14947SBen Dooks
58826f14947SBen Dooks	  PIO is slower than DMA as it requires CPU instructions to
58926f14947SBen Dooks	  move the data. This has been the traditional default for
59026f14947SBen Dooks	  the S3C MCI driver.
59126f14947SBen Dooks
59226f14947SBen Dooksconfig MMC_S3C_DMA
59386147c84SKees Cook	bool "Use DMA transfers only"
59426f14947SBen Dooks	help
59526f14947SBen Dooks	  Use DMA to transfer data between memory and the hardare.
59626f14947SBen Dooks
59726f14947SBen Dooks	  Currently, the DMA support in this driver seems to not be
59826f14947SBen Dooks	  working properly and needs to be debugged before this
59926f14947SBen Dooks	  option is useful.
60026f14947SBen Dooks
60126f14947SBen Dooksendchoice
60226f14947SBen Dooks
6036a36913aSSascha Sommerconfig MMC_SDRICOH_CS
60486147c84SKees Cook	tristate "MMC/SD driver for Ricoh Bay1Controllers"
60586147c84SKees Cook	depends on PCI && PCMCIA
6066a36913aSSascha Sommer	help
6076a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
6086a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
6096a36913aSSascha Sommer
6106a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
6116a36913aSSascha Sommer	  module will be called sdricoh_cs.
6126a36913aSSascha Sommer
613fb8bd90fSChunyan Zhangconfig MMC_SDHCI_SPRD
614fb8bd90fSChunyan Zhang	tristate "Spreadtrum SDIO host Controller"
615fb8bd90fSChunyan Zhang	depends on ARCH_SPRD
616fb8bd90fSChunyan Zhang	depends on MMC_SDHCI_PLTFM
617fb8bd90fSChunyan Zhang	select MMC_SDHCI_IO_ACCESSORS
618fb8bd90fSChunyan Zhang	help
619fb8bd90fSChunyan Zhang	  This selects the SDIO Host Controller in Spreadtrum
620fb8bd90fSChunyan Zhang	  SoCs, this driver supports R11(IP version: R11P0).
621fb8bd90fSChunyan Zhang
622fb8bd90fSChunyan Zhang	  If you have a controller with this interface, say Y or M here.
623fb8bd90fSChunyan Zhang
624fb8bd90fSChunyan Zhang	  If unsure, say N.
625fb8bd90fSChunyan Zhang
626b6147490SGuennadi Liakhovetskiconfig MMC_TMIO_CORE
627b6147490SGuennadi Liakhovetski	tristate
628b6147490SGuennadi Liakhovetski
6294a48998fSIan Moltonconfig MMC_TMIO
6304a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
63142051e8aSGuennadi Liakhovetski	depends on MFD_TMIO || MFD_ASIC3
632b6147490SGuennadi Liakhovetski	select MMC_TMIO_CORE
6334a48998fSIan Molton	help
6344a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
635e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
6365f5bac82SMichał Mirosław
63742051e8aSGuennadi Liakhovetskiconfig MMC_SDHI
638b5b6a5f4SSimon Horman	tristate "Renesas SDHI SD/SDIO controller support"
63949312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
64042051e8aSGuennadi Liakhovetski	select MMC_TMIO_CORE
64142051e8aSGuennadi Liakhovetski	help
64242051e8aSGuennadi Liakhovetski	  This provides support for the SDHI SD/SDIO controller found in
643b5b6a5f4SSimon Horman	  Renesas SuperH, ARM and ARM64 based SoCs
64442051e8aSGuennadi Liakhovetski
6452a68ea78SSimon Hormanconfig MMC_SDHI_SYS_DMAC
6462a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
6471d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
648c813e10aSMasahiro Yamada	default MMC_SDHI if (SUPERH || ARM)
6492a68ea78SSimon Horman	help
6502a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6512a68ea78SSimon Horman	  using SYS-DMAC via DMA Engine. This supports the controllers
6522a68ea78SSimon Horman	  found in SuperH and Renesas ARM based SoCs.
6532a68ea78SSimon Horman
6542a68ea78SSimon Hormanconfig MMC_SDHI_INTERNAL_DMAC
6552a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
6569706b472SChris Brandt	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
6571d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
6589706b472SChris Brandt	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
6592a68ea78SSimon Horman	help
6602a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6612a68ea78SSimon Horman	  using on-chip bus mastering. This supports the controllers
6629706b472SChris Brandt	  found in arm64 based SoCs. This controller is also found in
6639706b472SChris Brandt	  some RZ family SoCs.
6642a68ea78SSimon Horman
6653fd784f7SMasahiro Yamadaconfig MMC_UNIPHIER
6663fd784f7SMasahiro Yamada	tristate "UniPhier SD/eMMC Host Controller support"
6673fd784f7SMasahiro Yamada	depends on ARCH_UNIPHIER || COMPILE_TEST
6683fd784f7SMasahiro Yamada	depends on OF
6693fd784f7SMasahiro Yamada	select MMC_TMIO_CORE
6703fd784f7SMasahiro Yamada	help
6713fd784f7SMasahiro Yamada	  This provides support for the SD/eMMC controller found in
6723fd784f7SMasahiro Yamada	  UniPhier SoCs. The eMMC variant of this controller is used
6733fd784f7SMasahiro Yamada	  only for 32-bit SoCs.
6743fd784f7SMasahiro Yamada
6755f5bac82SMichał Mirosławconfig MMC_CB710
6765f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
6770244ad00SMartin Schwidefsky	depends on PCI
6785f5bac82SMichał Mirosław	select CB710_CORE
6795f5bac82SMichał Mirosław	help
6805f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
6815f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
6825f5bac82SMichał Mirosław	  HP Compaq nx9500).
6835f5bac82SMichał Mirosław
6845f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
6855f5bac82SMichał Mirosław	  will be called cb710-mmc.
6865f5bac82SMichał Mirosław
687f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
688f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
689f0bf7f61SHarald Welte	depends on PCI
690f0bf7f61SHarald Welte	help
691f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
692f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
693f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
694f0bf7f61SHarald Welte	  SD/MMC/SDHC.
695f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
696f0bf7f61SHarald Welte
697f0bf7f61SHarald Welte	  If unsure, say N.
698eb962d5bSCliff Cai
69901d95843SSteven J. Hillconfig MMC_CAVIUM_OCTEON
70001d95843SSteven J. Hill	tristate "Cavium OCTEON SD/MMC Card Interface support"
70101d95843SSteven J. Hill	depends on CAVIUM_OCTEON_SOC
70201d95843SSteven J. Hill	help
70301d95843SSteven J. Hill	  This selects Cavium OCTEON SD/MMC card Interface.
70401d95843SSteven J. Hill	  If you have an OCTEON board with a Multimedia Card slot,
70501d95843SSteven J. Hill	  say Y or M here.
70601d95843SSteven J. Hill
70701d95843SSteven J. Hill	  If unsure, say N.
70801d95843SSteven J. Hill
709166bac38SJan Glauberconfig MMC_CAVIUM_THUNDERX
710166bac38SJan Glauber	tristate "Cavium ThunderX SD/MMC Card Interface support"
711166bac38SJan Glauber	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
71262467bbbSJan Glauber	depends on GPIO_THUNDERX
713166bac38SJan Glauber	depends on OF_ADDRESS
714166bac38SJan Glauber	help
715166bac38SJan Glauber	  This selects Cavium ThunderX SD/MMC Card Interface.
716166bac38SJan Glauber	  If you have an Cavium ARM64 board with a Multimedia Card slot
717166bac38SJan Glauber	  or builtin eMMC chip say Y or M here. If built as a module
718166bac38SJan Glauber	  the module will be called thunderx_mmc.ko.
719166bac38SJan Glauber
720f95f3850SWill Newtonconfig MMC_DW
721f95f3850SWill Newton	tristate "Synopsys DesignWare Memory Card Interface"
722c34346b2SAlim Akhtar	depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
723f95f3850SWill Newton	help
724f95f3850SWill Newton	  This selects support for the Synopsys DesignWare Mobile Storage IP
725f95f3850SWill Newton	  block, this provides host support for SD and MMC interfaces, in both
7263fc7eaefSShawn Lin	  PIO, internal DMA mode and external DMA mode.
727f95f3850SWill Newton
72862ca8034SShashidhar Hiremathconfig MMC_DW_PLTFM
72962ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI Support as platform device"
73062ca8034SShashidhar Hiremath	depends on MMC_DW
73162ca8034SShashidhar Hiremath	default y
73262ca8034SShashidhar Hiremath	help
73362ca8034SShashidhar Hiremath	  This selects the common helper functions support for Host Controller
73462ca8034SShashidhar Hiremath	  Interface based platform driver. Please select this option if the IP
73562ca8034SShashidhar Hiremath	  is present as a platform device. This is the common interface for the
73662ca8034SShashidhar Hiremath	  Synopsys Designware IP.
73762ca8034SShashidhar Hiremath
73862ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
73962ca8034SShashidhar Hiremath
74062ca8034SShashidhar Hiremath	  If unsure, say Y.
74162ca8034SShashidhar Hiremath
74286958dccSLiming Sunconfig MMC_DW_BLUEFIELD
74386958dccSLiming Sun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
74486958dccSLiming Sun	depends on MMC_DW
74586958dccSLiming Sun	select MMC_DW_PLTFM
74686958dccSLiming Sun	help
74786958dccSLiming Sun	  This selects support for Mellanox BlueField SoC specific extensions to
74886958dccSLiming Sun	  the Synopsys DesignWare Memory Card Interface driver. Select this
74986958dccSLiming Sun	  option for platforms based on Mellanox BlueField SoC's.
75086958dccSLiming Sun
751c3665006SThomas Abrahamconfig MMC_DW_EXYNOS
752e41e85ccSMasanari Iida	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
753c3665006SThomas Abraham	depends on MMC_DW
754c3665006SThomas Abraham	select MMC_DW_PLTFM
755c3665006SThomas Abraham	help
756c3665006SThomas Abraham	  This selects support for Samsung Exynos SoC specific extensions to the
757c3665006SThomas Abraham	  Synopsys DesignWare Memory Card Interface driver. Select this option
758c3665006SThomas Abraham	  for platforms based on Exynos4 and Exynos5 SoC's.
759c3665006SThomas Abraham
760e382ab74Stianshuliangconfig MMC_DW_HI3798CV200
761e382ab74Stianshuliang	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
762e382ab74Stianshuliang	depends on MMC_DW
763e382ab74Stianshuliang	select MMC_DW_PLTFM
764e382ab74Stianshuliang	help
765e382ab74Stianshuliang	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
766e382ab74Stianshuliang	  Synopsys DesignWare Memory Card Interface driver. Select this option
767e382ab74Stianshuliang	  for platforms based on HiSilicon Hi3798CV200 SoC.
768e382ab74Stianshuliang
769036f29d5SZhangfei Gaoconfig MMC_DW_K3
770036f29d5SZhangfei Gao	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
771036f29d5SZhangfei Gao	depends on MMC_DW
772036f29d5SZhangfei Gao	select MMC_DW_PLTFM
773036f29d5SZhangfei Gao	help
774036f29d5SZhangfei Gao	  This selects support for Hisilicon K3 SoC specific extensions to the
775036f29d5SZhangfei Gao	  Synopsys DesignWare Memory Card Interface driver. Select this option
776036f29d5SZhangfei Gao	  for platforms based on Hisilicon K3 SoC's.
777036f29d5SZhangfei Gao
77862ca8034SShashidhar Hiremathconfig MMC_DW_PCI
77962ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI support on PCI bus"
78062ca8034SShashidhar Hiremath	depends on MMC_DW && PCI
78162ca8034SShashidhar Hiremath	help
78262ca8034SShashidhar Hiremath	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
78362ca8034SShashidhar Hiremath	  Select this option if the IP is present on PCI platform.
78462ca8034SShashidhar Hiremath
78562ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
78662ca8034SShashidhar Hiremath
78762ca8034SShashidhar Hiremath	  If unsure, say N.
78862ca8034SShashidhar Hiremath
7894cdc2ec1Saddy keconfig MMC_DW_ROCKCHIP
7904cdc2ec1Saddy ke	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
7914cdc2ec1Saddy ke	depends on MMC_DW && ARCH_ROCKCHIP
7924cdc2ec1Saddy ke	select MMC_DW_PLTFM
7934cdc2ec1Saddy ke	help
7944cdc2ec1Saddy ke	  This selects support for Rockchip SoC specific extensions to the
7954cdc2ec1Saddy ke	  Synopsys DesignWare Memory Card Interface driver. Select this option
7964cdc2ec1Saddy ke	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
7974cdc2ec1Saddy ke
798a8c643adSJun Nieconfig MMC_DW_ZX
799a8c643adSJun Nie	tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
800a8c643adSJun Nie	depends on MMC_DW && ARCH_ZX
801a8c643adSJun Nie	select MMC_DW_PLTFM
802a8c643adSJun Nie	help
803a8c643adSJun Nie	  This selects support for ZTE SoC specific extensions to the
804a8c643adSJun Nie	  Synopsys DesignWare Memory Card Interface driver. Select this option
805a8c643adSJun Nie	  for platforms based on ZX296718 SoC's.
806a8c643adSJun Nie
807fdc50a94SYusuke Godaconfig MMC_SH_MMCIF
808fdc50a94SYusuke Goda	tristate "SuperH Internal MMCIF support"
80949312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
810fdc50a94SYusuke Goda	help
811ba9e9157SWolfram Sang	  This selects the MMC Host Interface controller (MMCIF) found in various
812ba9e9157SWolfram Sang	  Renesas SoCs for SH and ARM architectures.
813fdc50a94SYusuke Goda
81461bfbdb8SLars-Peter Clausen
81561bfbdb8SLars-Peter Clausenconfig MMC_JZ4740
8166a78768aSAlex Smith	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
817685bc885SPaul Cercueil	depends on MIPS
81861bfbdb8SLars-Peter Clausen	help
8196a78768aSAlex Smith	  This selects support for the SD/MMC controller on Ingenic
8206a78768aSAlex Smith	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
8216a78768aSAlex Smith
82261bfbdb8SLars-Peter Clausen	  If you have a board based on such a SoC and with a SD/MMC slot,
82361bfbdb8SLars-Peter Clausen	  say Y or M here.
82453f3a9e2SDavid Vrabel
82588095e7bSTony Olechconfig MMC_VUB300
82688095e7bSTony Olech	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
82788095e7bSTony Olech	depends on USB
82888095e7bSTony Olech	help
82988095e7bSTony Olech	  This selects support for Elan Digital Systems' VUB300 chip.
83088095e7bSTony Olech
83188095e7bSTony Olech	  The VUB300 is a USB-SDIO Host Controller Interface chip
83288095e7bSTony Olech	  that enables the host computer to use SDIO/SD/MMC cards
83388095e7bSTony Olech	  via a USB 2.0 or USB 1.1 host.
83488095e7bSTony Olech
83588095e7bSTony Olech	  The VUB300 chip will be found in both physically separate
83688095e7bSTony Olech	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
83788095e7bSTony Olech
83888095e7bSTony Olech	  The VUB300 chip supports SD and MMC memory cards in addition
83988095e7bSTony Olech	  to single and multifunction SDIO cards.
84088095e7bSTony Olech
84188095e7bSTony Olech	  Some SDIO cards will need a firmware file to be loaded and
84288095e7bSTony Olech	  sent to VUB300 chip in order to achieve better data throughput.
84388095e7bSTony Olech	  Download these "Offload Pseudocode" from Elan Digital Systems'
84488095e7bSTony Olech	  web-site http://www.elandigitalsystems.com/support/downloads.php
84588095e7bSTony Olech	  and put them in /lib/firmware. Note that without these additional
84688095e7bSTony Olech	  firmware files the VUB300 chip will still function, but not at
84788095e7bSTony Olech	  the best obtainable data rate.
84888095e7bSTony Olech
84988095e7bSTony Olech	  To compile this mmc host controller driver as a module,
85088095e7bSTony Olech	  choose M here: the module will be called vub300.
85188095e7bSTony Olech
85288095e7bSTony Olech	  If you have a computer with an embedded VUB300 chip
85388095e7bSTony Olech	  or if you intend connecting a USB adapter based on a
85488095e7bSTony Olech	  VUB300 chip say Y or M here.
85588095e7bSTony Olech
85653f3a9e2SDavid Vrabelconfig MMC_USHC
85753f3a9e2SDavid Vrabel	tristate "USB SD Host Controller (USHC) support"
85853f3a9e2SDavid Vrabel	depends on USB
85953f3a9e2SDavid Vrabel	help
86053f3a9e2SDavid Vrabel	  This selects support for USB SD Host Controllers based on
86153f3a9e2SDavid Vrabel	  the Cypress Astoria chip with firmware compliant with CSR's
86253f3a9e2SDavid Vrabel	  USB SD Host Controller specification (CS-118793-SP).
86353f3a9e2SDavid Vrabel
86453f3a9e2SDavid Vrabel	  CSR boards with this device include: USB<>SDIO (M1985v2),
86553f3a9e2SDavid Vrabel	  and Ultrasira.
86653f3a9e2SDavid Vrabel
86753f3a9e2SDavid Vrabel	  Note: These controllers only support SDIO cards and do not
86853f3a9e2SDavid Vrabel	  support MMC or SD memory cards.
8693a96dff0STony Prisk
8703a96dff0STony Priskconfig MMC_WMT
8713a96dff0STony Prisk	tristate "Wondermedia SD/MMC Host Controller support"
8723a96dff0STony Prisk	depends on ARCH_VT8500
8733a96dff0STony Prisk	default y
8743a96dff0STony Prisk	help
8753a96dff0STony Prisk	  This selects support for the SD/MMC Host Controller on
8763a96dff0STony Prisk	  Wondermedia WM8505/WM8650 based SoCs.
8773a96dff0STony Prisk
8783a96dff0STony Prisk	  To compile this driver as a module, choose M here: the
8793a96dff0STony Prisk	  module will be called wmt-sdmmc.
8806a5971d8SLinus Torvalds
88175fa9ea6SGuennadi Liakhovetskiconfig MMC_USDHI6ROL0
88275fa9ea6SGuennadi Liakhovetski	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
8831ef94740SGeert Uytterhoeven	depends on HAS_DMA
88475fa9ea6SGuennadi Liakhovetski	help
88575fa9ea6SGuennadi Liakhovetski	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
88675fa9ea6SGuennadi Liakhovetski	  Host Controller
88775fa9ea6SGuennadi Liakhovetski
8882c94b645SWei WANGconfig MMC_REALTEK_PCI
8892c94b645SWei WANG	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
890e455b69dSRui Feng	depends on MISC_RTSX_PCI
8912c94b645SWei WANG	help
8922c94b645SWei WANG	  Say Y here to include driver code to support SD/MMC card interface
8932c94b645SWei WANG	  of Realtek PCI-E card reader
894c7f6558dSRoger Tseng
895c7f6558dSRoger Tsengconfig MMC_REALTEK_USB
896c7f6558dSRoger Tseng	tristate "Realtek USB SD/MMC Card Interface Driver"
897e455b69dSRui Feng	depends on MISC_RTSX_USB
898c7f6558dSRoger Tseng	help
899c7f6558dSRoger Tseng	  Say Y here to include driver code to support SD/MMC card interface
900c7f6558dSRoger Tseng	  of Realtek RTS5129/39 series card reader
90119b7f796SDavid Lanzendörfer
90219b7f796SDavid Lanzendörferconfig MMC_SUNXI
90319b7f796SDavid Lanzendörfer	tristate "Allwinner sunxi SD/MMC Host Controller support"
90419b7f796SDavid Lanzendörfer	depends on ARCH_SUNXI
90519b7f796SDavid Lanzendörfer	help
90619b7f796SDavid Lanzendörfer	  This selects support for the SD/MMC Host Controller on
90719b7f796SDavid Lanzendörfer	  Allwinner sunxi SoCs.
908a5eb8bbdSOndrej Zary
909a4080225SVenkat Gopalakrishnanconfig MMC_CQHCI
910a4080225SVenkat Gopalakrishnan	tristate "Command Queue Host Controller Interface support"
911a4080225SVenkat Gopalakrishnan	depends on HAS_DMA
912a4080225SVenkat Gopalakrishnan	help
913a4080225SVenkat Gopalakrishnan	  This selects the Command Queue Host Controller Interface (CQHCI)
914a4080225SVenkat Gopalakrishnan	  support present in host controllers of Qualcomm Technologies, Inc
915a4080225SVenkat Gopalakrishnan	  amongst others.
916a4080225SVenkat Gopalakrishnan	  This controller supports eMMC devices with command queue support.
917a4080225SVenkat Gopalakrishnan
918a4080225SVenkat Gopalakrishnan	  If you have a controller with this interface, say Y or M here.
919a4080225SVenkat Gopalakrishnan
920a4080225SVenkat Gopalakrishnan	  If unsure, say N.
921a4080225SVenkat Gopalakrishnan
922a5eb8bbdSOndrej Zaryconfig MMC_TOSHIBA_PCI
923a5eb8bbdSOndrej Zary	tristate "Toshiba Type A SD/MMC Card Interface Driver"
924a5eb8bbdSOndrej Zary	depends on PCI
92520848903SChaotian Jing
926660fc733SEric Anholtconfig MMC_BCM2835
927660fc733SEric Anholt	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
928660fc733SEric Anholt	depends on ARCH_BCM2835 || COMPILE_TEST
929660fc733SEric Anholt	help
930660fc733SEric Anholt	  This selects the BCM2835 SDHOST MMC controller. If you have
931660fc733SEric Anholt	  a BCM2835 platform with SD or MMC devices, say Y or M here.
932660fc733SEric Anholt
933660fc733SEric Anholt	  Note that the BCM2835 has two SD controllers: The Arasan
934660fc733SEric Anholt	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
935660fc733SEric Anholt	  sdhost controller (supported by this driver).
936660fc733SEric Anholt
937660fc733SEric Anholt	  If unsure, say N.
938660fc733SEric Anholt
93920848903SChaotian Jingconfig MMC_MTK
94020848903SChaotian Jing	tristate "MediaTek SD/MMC Card Interface support"
941c2b22fffSGeert Uytterhoeven	depends on HAS_DMA
94220848903SChaotian Jing	help
94320848903SChaotian Jing	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
94420848903SChaotian Jing	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
94520848903SChaotian Jing	  This is needed if support for any SD/SDIO/MMC devices is required.
94620848903SChaotian Jing	  If unsure, say N.
9475d9460d7SAndrei Pistirica
9485d9460d7SAndrei Pistiricaconfig MMC_SDHCI_MICROCHIP_PIC32
9495d9460d7SAndrei Pistirica        tristate "Microchip PIC32MZDA SDHCI support"
9505d9460d7SAndrei Pistirica        depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
9515d9460d7SAndrei Pistirica        help
9525d9460d7SAndrei Pistirica          This selects the Secure Digital Host Controller Interface (SDHCI)
9535d9460d7SAndrei Pistirica          for PIC32MZDA platform.
9545d9460d7SAndrei Pistirica
9555d9460d7SAndrei Pistirica          If you have a controller with this interface, say Y or M here.
9565d9460d7SAndrei Pistirica
9575d9460d7SAndrei Pistirica          If unsure, say N.
958476bf3d6SAl Cooperconfig MMC_SDHCI_BRCMSTB
959476bf3d6SAl Cooper	tristate "Broadcom SDIO/SD/MMC support"
960476bf3d6SAl Cooper	depends on ARCH_BRCMSTB || BMIPS_GENERIC
961476bf3d6SAl Cooper	depends on MMC_SDHCI_PLTFM
962476bf3d6SAl Cooper	default y
963476bf3d6SAl Cooper	help
964476bf3d6SAl Cooper	  This selects support for the SDIO/SD/MMC Host Controller on
965476bf3d6SAl Cooper	  Broadcom STB SoCs.
966476bf3d6SAl Cooper
967476bf3d6SAl Cooper	  If unsure, say Y.
9683a3748dbSHu Ziji
9693a3748dbSHu Zijiconfig MMC_SDHCI_XENON
9703a3748dbSHu Ziji	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
9713a3748dbSHu Ziji	depends on MMC_SDHCI_PLTFM
9723a3748dbSHu Ziji	help
9733a3748dbSHu Ziji	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
9743a3748dbSHu Ziji	  If you have a controller with this interface, say Y or M here.
9753a3748dbSHu Ziji	  If unsure, say N.
9767d326930SKishon Vijay Abraham I
9777d326930SKishon Vijay Abraham Iconfig MMC_SDHCI_OMAP
9787d326930SKishon Vijay Abraham I	tristate "TI SDHCI Controller Support"
9797d326930SKishon Vijay Abraham I	depends on MMC_SDHCI_PLTFM && OF
980961de0a8SFaiz Abbas	select THERMAL
981961de0a8SFaiz Abbas	select TI_SOC_THERMAL
9827d326930SKishon Vijay Abraham I	help
9837d326930SKishon Vijay Abraham I	  This selects the Secure Digital Host Controller Interface (SDHCI)
9847d326930SKishon Vijay Abraham I	  support present in TI's DRA7 SOCs. The controller supports
9857d326930SKishon Vijay Abraham I	  SD/MMC/SDIO devices.
9867d326930SKishon Vijay Abraham I
9877d326930SKishon Vijay Abraham I	  If you have a controller with this interface, say Y or M here.
9887d326930SKishon Vijay Abraham I
9897d326930SKishon Vijay Abraham I	  If unsure, say N.
99041fd4caeSFaiz Abbas
99141fd4caeSFaiz Abbasconfig MMC_SDHCI_AM654
99241fd4caeSFaiz Abbas	tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
99341fd4caeSFaiz Abbas	depends on MMC_SDHCI_PLTFM && OF
99441fd4caeSFaiz Abbas	help
99541fd4caeSFaiz Abbas	  This selects the Secure Digital Host Controller Interface (SDHCI)
99641fd4caeSFaiz Abbas	  support present in TI's AM654 SOCs. The controller supports
99741fd4caeSFaiz Abbas	  SD/MMC/SDIO devices.
99841fd4caeSFaiz Abbas
99941fd4caeSFaiz Abbas	  If you have a controller with this interface, say Y or M here.
100041fd4caeSFaiz Abbas
100141fd4caeSFaiz Abbas	  If unsure, say N.
1002