xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision d52788b3)
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
97e51df6ceSBen Chuang	select MMC_SDHCI_IO_ACCESSORS
98b8c86fc5SPierre Ossman	help
99b8c86fc5SPierre Ossman	  This selects the PCI Secure Digital Host Controller Interface.
100b8c86fc5SPierre Ossman	  Most controllers found today are PCI devices.
101b8c86fc5SPierre Ossman
1021c6a0718SPierre Ossman	  If you have a controller with this interface, say Y or M here.
1031c6a0718SPierre Ossman
1041c6a0718SPierre Ossman	  If unsure, say N.
1051c6a0718SPierre Ossman
1065ae70296SPhilip Langdaleconfig MMC_RICOH_MMC
10786147c84SKees Cook	bool "Ricoh MMC Controller Disabler"
108b8c86fc5SPierre Ossman	depends on MMC_SDHCI_PCI
109ba2f7325SJean Delvare	default y
1105ae70296SPhilip Langdale	help
11103cd8f7eSMaxim Levitsky	  This adds a pci quirk to disable Ricoh MMC Controller. This
1125ae70296SPhilip Langdale	  proprietary controller is unnecessary because the SDHCI driver
1135ae70296SPhilip Langdale	  supports MMC cards on the SD controller, but if it is not
1145ae70296SPhilip Langdale	  disabled, it will steal the MMC cards away - rendering them
11503cd8f7eSMaxim Levitsky	  useless. It is safe to select this even if you don't
1165ae70296SPhilip Langdale	  have a Ricoh based card reader.
1175ae70296SPhilip Langdale
1185ae70296SPhilip Langdale	  If unsure, say Y.
1195ae70296SPhilip Langdale
120c4e05037SAdrian Hunterconfig MMC_SDHCI_ACPI
121c4e05037SAdrian Hunter	tristate "SDHCI support for ACPI enumerated SDHCI controllers"
122c2eda8abSSinan Kaya	depends on MMC_SDHCI && ACPI && PCI
1236e1c7d61SAdrian Hunter	select IOSF_MBI if X86
124c4e05037SAdrian Hunter	help
125c4e05037SAdrian Hunter	  This selects support for ACPI enumerated SDHCI controllers,
126c4e05037SAdrian Hunter	  identified by ACPI Compatibility ID PNP0D40 or specific
127c4e05037SAdrian Hunter	  ACPI Hardware IDs.
128c4e05037SAdrian Hunter
129c4e05037SAdrian Hunter	  If you have a controller with this interface, say Y or M here.
130c4e05037SAdrian Hunter
131c4e05037SAdrian Hunter	  If unsure, say N.
132c4e05037SAdrian Hunter
133f0de8369SShawn Guoconfig MMC_SDHCI_PLTFM
134f0de8369SShawn Guo	tristate "SDHCI platform and OF driver helper"
13538576af1SShawn Guo	depends on MMC_SDHCI
136f0de8369SShawn Guo	help
137f0de8369SShawn Guo	  This selects the common helper functions support for Secure Digital
138f0de8369SShawn Guo	  Host Controller Interface based platform and OF drivers.
139f0de8369SShawn Guo
140f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
141f0de8369SShawn Guo
142f0de8369SShawn Guo	  If unsure, say N.
143f0de8369SShawn Guo
144e3ec3a3dSSoren Brinkmannconfig MMC_SDHCI_OF_ARASAN
145e3ec3a3dSSoren Brinkmann	tristate "SDHCI OF support for the Arasan SDHCI controllers"
146e3ec3a3dSSoren Brinkmann	depends on MMC_SDHCI_PLTFM
147e3ec3a3dSSoren Brinkmann	depends on OF
148c390f211SDouglas Anderson	depends on COMMON_CLK
14984362d79SShawn Lin	select MMC_CQHCI
150e3ec3a3dSSoren Brinkmann	help
151e3ec3a3dSSoren Brinkmann	  This selects the Arasan Secure Digital Host Controller Interface
152e3ec3a3dSSoren Brinkmann	  (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
153e3ec3a3dSSoren Brinkmann
154e3ec3a3dSSoren Brinkmann	  If you have a controller with this interface, say Y or M here.
155e3ec3a3dSSoren Brinkmann
156e3ec3a3dSSoren Brinkmann	  If unsure, say N.
157e3ec3a3dSSoren Brinkmann
158bb7b8ec6SAndrew Jefferyconfig MMC_SDHCI_OF_ASPEED
159bb7b8ec6SAndrew Jeffery	tristate "SDHCI OF support for the ASPEED SDHCI controller"
160bb7b8ec6SAndrew Jeffery	depends on MMC_SDHCI_PLTFM
16172976643SAndrew Jeffery	depends on OF && OF_ADDRESS
16296790622SIvan Mikhaylov	select MMC_SDHCI_IO_ACCESSORS
163bb7b8ec6SAndrew Jeffery	help
164bb7b8ec6SAndrew Jeffery	  This selects the ASPEED Secure Digital Host Controller Interface.
165bb7b8ec6SAndrew Jeffery
166bb7b8ec6SAndrew Jeffery	  If you have a controller with this interface, say Y or M here. You
167bb7b8ec6SAndrew Jeffery	  also need to enable an appropriate bus interface.
168bb7b8ec6SAndrew Jeffery
169bb7b8ec6SAndrew Jeffery	  If unsure, say N.
170bb7b8ec6SAndrew Jeffery
1710bbcd225SAndrew Jefferyconfig MMC_SDHCI_OF_ASPEED_TEST
172291cd54eSDavid Gow	bool "Tests for the ASPEED SDHCI driver" if !KUNIT_ALL_TESTS
173291cd54eSDavid Gow	depends on MMC_SDHCI_OF_ASPEED && KUNIT
174*d52788b3SDavid Gow	depends on (MMC_SDHCI_OF_ASPEED=m || KUNIT=y)
175291cd54eSDavid Gow	default KUNIT_ALL_TESTS
1760bbcd225SAndrew Jeffery	help
1770bbcd225SAndrew Jeffery	  Enable KUnit tests for the ASPEED SDHCI driver. Select this
1780bbcd225SAndrew Jeffery	  option only if you will boot the kernel for the purpose of running
1790bbcd225SAndrew Jeffery	  unit tests (e.g. under UML or qemu).
1800bbcd225SAndrew Jeffery
1810bbcd225SAndrew Jeffery	  The KUnit tests generally exercise parts of the driver that do not
1820bbcd225SAndrew Jeffery	  directly touch the hardware, for example, the phase correction
1830bbcd225SAndrew Jeffery	  calculations.
1840bbcd225SAndrew Jeffery
1850bbcd225SAndrew Jeffery	  If unsure, say N.
1860bbcd225SAndrew Jeffery
187bb5f8ea4Sludovic.desroches@atmel.comconfig MMC_SDHCI_OF_AT91
188bb5f8ea4Sludovic.desroches@atmel.com	tristate "SDHCI OF support for the Atmel SDMMC controller"
189bb5f8ea4Sludovic.desroches@atmel.com	depends on MMC_SDHCI_PLTFM
190ca2d13ecSMasahiro Yamada	depends on OF && HAVE_CLK
191bb5f8ea4Sludovic.desroches@atmel.com	help
192bb5f8ea4Sludovic.desroches@atmel.com	  This selects the Atmel SDMMC driver
193bb5f8ea4Sludovic.desroches@atmel.com
194f0de8369SShawn Guoconfig MMC_SDHCI_OF_ESDHC
195f0de8369SShawn Guo	tristate "SDHCI OF support for the Freescale eSDHC controller"
196f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
19754d84544SKrzysztof Kozlowski	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
1982ca63524Syangbo lu	select MMC_SDHCI_IO_ACCESSORS
199151ede40Syangbo lu	select FSL_GUTS
2007657c3a7SAlbert Herranz	help
2017657c3a7SAlbert Herranz	  This selects the Freescale eSDHC controller support.
2023085e9c1SAnton Vorontsov
203f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
204f0de8369SShawn Guo
2053085e9c1SAnton Vorontsov	  If unsure, say N.
2063085e9c1SAnton Vorontsov
2071144ab5dSAlbert Herranzconfig MMC_SDHCI_OF_HLWD
208f0de8369SShawn Guo	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
209f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
2105f2e097cSKevin Hao	depends on PPC
2111144ab5dSAlbert Herranz	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
2121144ab5dSAlbert Herranz	help
2131144ab5dSAlbert Herranz	  This selects the Secure Digital Host Controller Interface (SDHCI)
2141144ab5dSAlbert Herranz	  found in the "Hollywood" chipset of the Nintendo Wii video game
2151144ab5dSAlbert Herranz	  console.
2161144ab5dSAlbert Herranz
217f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
218f0de8369SShawn Guo
2191144ab5dSAlbert Herranz	  If unsure, say N.
2201144ab5dSAlbert Herranz
221e438cf49SJisheng Zhangconfig MMC_SDHCI_OF_DWCMSHC
222e438cf49SJisheng Zhang	tristate "SDHCI OF support for the Synopsys DWC MSHC"
223e438cf49SJisheng Zhang	depends on MMC_SDHCI_PLTFM
224e438cf49SJisheng Zhang	depends on OF
225e438cf49SJisheng Zhang	depends on COMMON_CLK
226e438cf49SJisheng Zhang	help
227e438cf49SJisheng Zhang	  This selects Synopsys DesignWare Cores Mobile Storage Controller
228e438cf49SJisheng Zhang	  support.
229e438cf49SJisheng Zhang	  If you have a controller with this interface, say Y or M here.
230e438cf49SJisheng Zhang	  If unsure, say N.
231e438cf49SJisheng Zhang
23243611afbSLars Povlsenconfig MMC_SDHCI_OF_SPARX5
23343611afbSLars Povlsen	tristate "SDHCI OF support for the MCHP Sparx5 SoC"
23443611afbSLars Povlsen	depends on MMC_SDHCI_PLTFM
23554d84544SKrzysztof Kozlowski	depends on ARCH_SPARX5 || COMPILE_TEST
23643611afbSLars Povlsen	help
23743611afbSLars Povlsen	  This selects the Secure Digital Host Controller Interface (SDHCI)
23843611afbSLars Povlsen	  found in the MCHP Sparx5 SoC.
23943611afbSLars Povlsen
24043611afbSLars Povlsen	  If you have a Sparx5 SoC with this interface, say Y or M here.
24143611afbSLars Povlsen
24243611afbSLars Povlsen	  If unsure, say N.
24343611afbSLars Povlsen
244ff6af28fSMasahiro Yamadaconfig MMC_SDHCI_CADENCE
245ff6af28fSMasahiro Yamada	tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
246ff6af28fSMasahiro Yamada	depends on MMC_SDHCI_PLTFM
247ff6af28fSMasahiro Yamada	depends on OF
248ff6af28fSMasahiro Yamada	help
249ff6af28fSMasahiro Yamada	  This selects the Cadence SD/SDIO/eMMC driver.
250ff6af28fSMasahiro Yamada
251ff6af28fSMasahiro Yamada	  If you have a controller with this interface, say Y or M here.
252ff6af28fSMasahiro Yamada
253ff6af28fSMasahiro Yamada	  If unsure, say N.
254ff6af28fSMasahiro Yamada
25520b1597bSAnton Vorontsovconfig MMC_SDHCI_CNS3XXX
25685d6509dSShawn Guo	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
25754d84544SKrzysztof Kozlowski	depends on ARCH_CNS3XXX || COMPILE_TEST
258f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
25920b1597bSAnton Vorontsov	help
26020b1597bSAnton Vorontsov	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
26120b1597bSAnton Vorontsov
262f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
263f0de8369SShawn Guo
26420b1597bSAnton Vorontsov	  If unsure, say N.
26520b1597bSAnton Vorontsov
266a5a944d2SAngelo Dureghelloconfig MMC_SDHCI_ESDHC_MCF
267a5a944d2SAngelo Dureghello	tristate "SDHCI support for the Freescale eSDHC ColdFire controller"
268a5a944d2SAngelo Dureghello	depends on M5441x
269a5a944d2SAngelo Dureghello	depends on MMC_SDHCI_PLTFM
270a5a944d2SAngelo Dureghello	select MMC_SDHCI_IO_ACCESSORS
271a5a944d2SAngelo Dureghello	help
272a5a944d2SAngelo Dureghello	  This selects the Freescale eSDHC controller support for
273a5a944d2SAngelo Dureghello	  ColdFire mcf5441x devices.
274a5a944d2SAngelo Dureghello
275a5a944d2SAngelo Dureghello	  If you have a controller with this interface, say Y or M here.
276a5a944d2SAngelo Dureghello
277a5a944d2SAngelo Dureghello	  If unsure, say N.
278a5a944d2SAngelo Dureghello
27995f25efeSWolfram Sangconfig MMC_SDHCI_ESDHC_IMX
28095a2482aSShawn Guo	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
28154d84544SKrzysztof Kozlowski	depends on ARCH_MXC || COMPILE_TEST
282f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
283ebe9572fSFabio Estevam	depends on OF
28495f25efeSWolfram Sang	select MMC_SDHCI_IO_ACCESSORS
285bb6e3581SBOUGH CHEN	select MMC_CQHCI
28695f25efeSWolfram Sang	help
28795a2482aSShawn Guo	  This selects the Freescale eSDHC/uSDHC controller support
28895a2482aSShawn Guo	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
28995f25efeSWolfram Sang
290f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
291f0de8369SShawn Guo
29295f25efeSWolfram Sang	  If unsure, say N.
29395f25efeSWolfram Sang
294985b1aa0SMike Rapoportconfig MMC_SDHCI_DOVE
29585d6509dSShawn Guo	tristate "SDHCI support on Marvell's Dove SoC"
29654d84544SKrzysztof Kozlowski	depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST
297f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
298985b1aa0SMike Rapoport	select MMC_SDHCI_IO_ACCESSORS
299985b1aa0SMike Rapoport	help
300985b1aa0SMike Rapoport	  This selects the Secure Digital Host Controller Interface in
301985b1aa0SMike Rapoport	  Marvell's Dove SoC.
302985b1aa0SMike Rapoport
303f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
304f0de8369SShawn Guo
305985b1aa0SMike Rapoport	  If unsure, say N.
306985b1aa0SMike Rapoport
30703d2bfc8SOlof Johanssonconfig MMC_SDHCI_TEGRA
30885d6509dSShawn Guo	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
30954d84544SKrzysztof Kozlowski	depends on ARCH_TEGRA || COMPILE_TEST
310f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
31103d2bfc8SOlof Johansson	select MMC_SDHCI_IO_ACCESSORS
3123c4019f9SSowjanya Komatineni	select MMC_CQHCI
31303d2bfc8SOlof Johansson	help
31403d2bfc8SOlof Johansson	  This selects the Tegra SD/MMC controller. If you have a Tegra
31503d2bfc8SOlof Johansson	  platform with SD or MMC devices, say Y or M here.
31603d2bfc8SOlof Johansson
31703d2bfc8SOlof Johansson	  If unsure, say N.
31803d2bfc8SOlof Johansson
3190d1bb41aSBen Dooksconfig MMC_SDHCI_S3C
32046cdda97SKrzysztof Kozlowski	tristate "SDHCI support on Samsung S3C/S5P/Exynos SoC"
32154d84544SKrzysztof Kozlowski	depends on MMC_SDHCI
322e731f314SLinus Torvalds	depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
3230d1bb41aSBen Dooks	help
3240d1bb41aSBen Dooks	  This selects the Secure Digital Host Controller Interface (SDHCI)
3250d1bb41aSBen Dooks	  often referrered to as the HSMMC block in some of the Samsung S3C
32646cdda97SKrzysztof Kozlowski	  (S3C2416, S3C2443, S3C6410), S5Pv210 and Exynos (Exynso4210,
32746cdda97SKrzysztof Kozlowski	  Exynos4412) SoCs.
3280d1bb41aSBen Dooks
32946cdda97SKrzysztof Kozlowski	  If you have a controller with this interface (thereforeyou build for
33046cdda97SKrzysztof Kozlowski	  such Samsung SoC), say Y or M here.
3310d1bb41aSBen Dooks
3320d1bb41aSBen Dooks	  If unsure, say N.
3330d1bb41aSBen Dooks
334a702c8abSZhangfei Gaoconfig MMC_SDHCI_PXAV3
335a702c8abSZhangfei Gao	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
3362f4574ddSArnd Bergmann	depends on HAVE_CLK
3375d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
338daa3054fSJean Delvare	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
339a702c8abSZhangfei Gao	default CPU_MMP2
340a702c8abSZhangfei Gao	help
341a702c8abSZhangfei Gao	  This selects the Marvell(R) PXAV3 SD Host Controller.
342a702c8abSZhangfei Gao	  If you have a MMP2 platform with SD Host Controller
343a702c8abSZhangfei Gao	  and a card slot, say Y or M here.
344a702c8abSZhangfei Gao
345a702c8abSZhangfei Gao	  If unsure, say N.
346a702c8abSZhangfei Gao
3479f5d71e4SZhangfei Gaoconfig MMC_SDHCI_PXAV2
3489f5d71e4SZhangfei Gao	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
3492f4574ddSArnd Bergmann	depends on HAVE_CLK
3505d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
3518a8735ebSJean Delvare	depends on ARCH_MMP || COMPILE_TEST
3529f5d71e4SZhangfei Gao	default CPU_PXA910
3539f5d71e4SZhangfei Gao	help
3549f5d71e4SZhangfei Gao	  This selects the Marvell(R) PXAV2 SD Host Controller.
3559f5d71e4SZhangfei Gao	  If you have a PXA9XX platform with SD Host Controller
3569f5d71e4SZhangfei Gao	  and a card slot, say Y or M here.
3579f5d71e4SZhangfei Gao
3589f5d71e4SZhangfei Gao	  If unsure, say N.
3599f5d71e4SZhangfei Gao
360c63b3cbaSViresh KUMARconfig MMC_SDHCI_SPEAR
361c63b3cbaSViresh KUMAR	tristate "SDHCI support on ST SPEAr platform"
36254d84544SKrzysztof Kozlowski	depends on MMC_SDHCI
36354d84544SKrzysztof Kozlowski	depends on PLAT_SPEAR || COMPILE_TEST
364bbd7f0a2SUlf Hansson	depends on OF
365c63b3cbaSViresh KUMAR	help
366c63b3cbaSViresh KUMAR	  This selects the Secure Digital Host Controller Interface (SDHCI)
367c63b3cbaSViresh KUMAR	  often referrered to as the HSMMC block in some of the ST SPEAR range
368c63b3cbaSViresh KUMAR	  of SoC
369c63b3cbaSViresh KUMAR
370c63b3cbaSViresh KUMAR	  If you have a controller with this interface, say Y or M here.
371c63b3cbaSViresh KUMAR
372c63b3cbaSViresh KUMAR	  If unsure, say N.
373c63b3cbaSViresh KUMAR
3740d1bb41aSBen Dooksconfig MMC_SDHCI_S3C_DMA
3750d1bb41aSBen Dooks	bool "DMA support on S3C SDHCI"
37686147c84SKees Cook	depends on MMC_SDHCI_S3C
3770d1bb41aSBen Dooks	help
3780d1bb41aSBen Dooks	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
3790d1bb41aSBen Dooks	  has proved to be problematic if the controller encounters
3800d1bb41aSBen Dooks	  certain errors, and thus should be treated with care.
3810d1bb41aSBen Dooks
3820d1bb41aSBen Dooks	  YMMV.
3830d1bb41aSBen Dooks
38401ebea1bSChristian Daudtconfig MMC_SDHCI_BCM_KONA
38501ebea1bSChristian Daudt	tristate "SDHCI support on Broadcom KONA platform"
38654d84544SKrzysztof Kozlowski	depends on ARCH_BCM_MOBILE || COMPILE_TEST
3875d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
38801ebea1bSChristian Daudt	help
38901ebea1bSChristian Daudt	  This selects the Broadcom Kona Secure Digital Host Controller
39001ebea1bSChristian Daudt	  Interface(SDHCI) support.
39101ebea1bSChristian Daudt	  This is used in Broadcom mobile SoCs.
39201ebea1bSChristian Daudt
39301ebea1bSChristian Daudt	  If you have a controller with this interface, say Y or M here.
39401ebea1bSChristian Daudt
39587a50745SVincent Yangconfig MMC_SDHCI_F_SDH30
39687a50745SVincent Yang	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
39787a50745SVincent Yang	depends on MMC_SDHCI_PLTFM
39890e1d8ccSArd Biesheuvel	depends on OF || ACPI
39987a50745SVincent Yang	help
40087a50745SVincent Yang	  This selects the Secure Digital Host Controller Interface (SDHCI)
40187a50745SVincent Yang	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
40287a50745SVincent Yang	  If you have a controller with this interface, say Y or M here.
40387a50745SVincent Yang
40487a50745SVincent Yang	  If unsure, say N.
40587a50745SVincent Yang
406dd79b7e3STakao Oritoconfig MMC_SDHCI_MILBEAUT
407dd79b7e3STakao Orito	tristate "SDHCI support for Socionext Milbeaut Serieas using F_SDH30"
408dd79b7e3STakao Orito	depends on MMC_SDHCI_PLTFM
409dd79b7e3STakao Orito	depends on OF
410dd79b7e3STakao Orito	help
411dd79b7e3STakao Orito	  This selects the Secure Digital Host Controller Interface (SDHCI)
412dd79b7e3STakao Orito	  Needed by Milbeaut SoC for MMC / SD / SDIO support.
413dd79b7e3STakao Orito	  If you have a controller with this interface, say Y or M here.
414dd79b7e3STakao Orito
415dd79b7e3STakao Orito	  If unsure, say N.
416dd79b7e3STakao Orito
417b580c52dSScott Brandenconfig MMC_SDHCI_IPROC
41877cb7d3aSStefan Wahren	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
41998b5ce4cSAl Cooper	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || ARCH_BRCMSTB || COMPILE_TEST
420b580c52dSScott Branden	depends on MMC_SDHCI_PLTFM
4217c7ba433SSrinath Mannam	depends on OF || ACPI
422b580c52dSScott Branden	default ARCH_BCM_IPROC
423b580c52dSScott Branden	select MMC_SDHCI_IO_ACCESSORS
424b580c52dSScott Branden	help
425b580c52dSScott Branden	  This selects the iProc SD/MMC controller.
426b580c52dSScott Branden
42777cb7d3aSStefan Wahren	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
428b580c52dSScott Branden	  say Y or M here.
429b580c52dSScott Branden
430b580c52dSScott Branden	  If unsure, say N.
431b580c52dSScott Branden
43251c5d844SKevin Hilmanconfig MMC_MESON_GX
433e79dc1b4SNan Li	tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
43454d84544SKrzysztof Kozlowski	depends on ARCH_MESON|| COMPILE_TEST
4353157b035SRandy Dunlap	depends on COMMON_CLK
43651c5d844SKevin Hilman	help
43751c5d844SKevin Hilman	  This selects support for the Amlogic SD/MMC Host Controller
438e79dc1b4SNan Li	  found on the S905/GX*/AXG family of SoCs.  This controller is
43951c5d844SKevin Hilman	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
44051c5d844SKevin Hilman
44151c5d844SKevin Hilman	  If you have a controller with this interface, say Y here.
44251c5d844SKevin Hilman
443e4bf1b09SMartin Blumenstinglconfig MMC_MESON_MX_SDHC
444e4bf1b09SMartin Blumenstingl	tristate "Amlogic Meson SDHC Host Controller support"
445e4bf1b09SMartin Blumenstingl	depends on (ARM && ARCH_MESON) || COMPILE_TEST
446e4bf1b09SMartin Blumenstingl	depends on COMMON_CLK
447e4bf1b09SMartin Blumenstingl	depends on OF
448e4bf1b09SMartin Blumenstingl	help
449e4bf1b09SMartin Blumenstingl	  This selects support for the SDHC Host Controller on
450e4bf1b09SMartin Blumenstingl	  Amlogic Meson6, Meson8, Meson8b and Meson8m2 SoCs.
451e4bf1b09SMartin Blumenstingl	  The controller supports the SD/SDIO Spec 3.x and eMMC Spec 4.5x
452e4bf1b09SMartin Blumenstingl	  with 1, 4, and 8 bit bus widths.
453e4bf1b09SMartin Blumenstingl
454e4bf1b09SMartin Blumenstingl	  If you have a controller with this interface, say Y or M here.
455e4bf1b09SMartin Blumenstingl	  If unsure, say N.
456e4bf1b09SMartin Blumenstingl
457ed80a13bSCarlo Caioneconfig MMC_MESON_MX_SDIO
458ed80a13bSCarlo Caione	tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
459ed80a13bSCarlo Caione	depends on ARCH_MESON || COMPILE_TEST
460ed80a13bSCarlo Caione	depends on COMMON_CLK
4613fd2fdb3SStephen Boyd	depends on OF_ADDRESS
462ed80a13bSCarlo Caione	help
463ed80a13bSCarlo Caione	  This selects support for the SD/MMC Host Controller on
464ed80a13bSCarlo Caione	  Amlogic Meson6, Meson8 and Meson8b SoCs.
465ed80a13bSCarlo Caione
466ed80a13bSCarlo Caione	  If you have a controller with this interface, say Y or M here.
467ed80a13bSCarlo Caione	  If unsure, say N.
468ed80a13bSCarlo Caione
4691b66e94eSJonas Jensenconfig MMC_MOXART
4701b66e94eSJonas Jensen	tristate "MOXART SD/MMC Host Controller support"
47154d84544SKrzysztof Kozlowski	depends on ARCH_MOXART || COMPILE_TEST
4721b66e94eSJonas Jensen	help
4731b66e94eSJonas Jensen	  This selects support for the MOXART SD/MMC Host Controller.
4741b66e94eSJonas Jensen	  MOXA provides one multi-functional card reader which can
4751b66e94eSJonas Jensen	  be found on some embedded hardware such as UC-7112-LX.
4761b66e94eSJonas Jensen	  If you have a controller with this interface, say Y here.
4771b66e94eSJonas Jensen
478f52d9c4fSPeter Griffinconfig MMC_SDHCI_ST
479f52d9c4fSPeter Griffin	tristate "SDHCI support on STMicroelectronics SoC"
48054d84544SKrzysztof Kozlowski	depends on ARCH_STI || FSP2 || COMPILE_TEST
481f52d9c4fSPeter Griffin	depends on MMC_SDHCI_PLTFM
482f52d9c4fSPeter Griffin	select MMC_SDHCI_IO_ACCESSORS
483f52d9c4fSPeter Griffin	help
484f52d9c4fSPeter Griffin	  This selects the Secure Digital Host Controller Interface in
485f52d9c4fSPeter Griffin	  STMicroelectronics SoCs.
486f52d9c4fSPeter Griffin
487f52d9c4fSPeter Griffin	  If you have a controller with this interface, say Y or M here.
488f52d9c4fSPeter Griffin	  If unsure, say N.
489f52d9c4fSPeter Griffin
4901c6a0718SPierre Ossmanconfig MMC_OMAP
4911c6a0718SPierre Ossman	tristate "TI OMAP Multimedia Card Interface support"
492790864dcSJan Engelhardt	depends on ARCH_OMAP
49360a549fcSArnd Bergmann	depends on TPS65010 || !MACH_OMAP_H2
4941c6a0718SPierre Ossman	help
4951c6a0718SPierre Ossman	  This selects the TI OMAP Multimedia card Interface.
4961c6a0718SPierre Ossman	  If you have an OMAP board with a Multimedia Card slot,
4971c6a0718SPierre Ossman	  say Y or M here.
4981c6a0718SPierre Ossman
4991c6a0718SPierre Ossman	  If unsure, say N.
5001c6a0718SPierre Ossman
501a45c6cb8SMadhusudhan Chikkatureconfig MMC_OMAP_HS
502a45c6cb8SMadhusudhan Chikkature	tristate "TI OMAP High Speed Multimedia Card Interface support"
503a7cedab6SLokesh Vutla	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
504a45c6cb8SMadhusudhan Chikkature	help
505a45c6cb8SMadhusudhan Chikkature	  This selects the TI OMAP High Speed Multimedia card Interface.
506bcf24e1dSAmarinder Bindra	  If you have an omap2plus board with a Multimedia Card slot,
507bcf24e1dSAmarinder Bindra	  say Y or M here.
508a45c6cb8SMadhusudhan Chikkature
509a45c6cb8SMadhusudhan Chikkature	  If unsure, say N.
510a45c6cb8SMadhusudhan Chikkature
5111c6a0718SPierre Ossmanconfig MMC_WBSD
5121c6a0718SPierre Ossman	tristate "Winbond W83L51xD SD/MMC Card Interface support"
513f95a387cSArnd Bergmann	depends on ISA_DMA_API
5141c6a0718SPierre Ossman	help
5151c6a0718SPierre Ossman	  This selects the Winbond(R) W83L51xD Secure digital and
5161c6a0718SPierre Ossman	  Multimedia card Interface.
5171c6a0718SPierre Ossman	  If you have a machine with a integrated W83L518D or W83L519D
5181c6a0718SPierre Ossman	  SD/MMC card reader, say Y or M here.
5191c6a0718SPierre Ossman
5201c6a0718SPierre Ossman	  If unsure, say N.
5211c6a0718SPierre Ossman
522c5413ad8SOleksij Rempelconfig MMC_ALCOR
523c5413ad8SOleksij Rempel	tristate "Alcor Micro/Alcor Link SD/MMC controller"
524c5413ad8SOleksij Rempel	depends on MISC_ALCOR_PCI
525c5413ad8SOleksij Rempel	help
526c5413ad8SOleksij Rempel	  Say Y here to include driver code to support SD/MMC card interface
527c5413ad8SOleksij Rempel	  of Alcor Micro PCI-E card reader
528c5413ad8SOleksij Rempel
5291c6a0718SPierre Ossmanconfig MMC_AU1X
5301c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
53137663860SManuel Lauss	depends on MIPS_ALCHEMY
5321c6a0718SPierre Ossman	help
5331c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
5341c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
5351c6a0718SPierre Ossman
5361c6a0718SPierre Ossman	  If unsure, say N.
5371c6a0718SPierre Ossman
5387d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
539d6a20debSLudovic Desroches	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
540ef4b160fSAndy Shevchenko	depends on ARCH_AT91
5417d2be074SHaavard Skinnemoen	help
542ef4b160fSAndy Shevchenko	  This selects the Atmel Multimedia Card Interface driver.
543ef4b160fSAndy Shevchenko	  If you have an AT91 platform with a Multimedia Card slot,
544ef4b160fSAndy Shevchenko	  say Y or M here.
5457d2be074SHaavard Skinnemoen
5467d2be074SHaavard Skinnemoen	  If unsure, say N.
5477d2be074SHaavard Skinnemoen
5480eb0d9f4SGeorgi Djakovconfig MMC_SDHCI_MSM
5490eb0d9f4SGeorgi Djakov	tristate "Qualcomm SDHCI Controller Support"
550d425e42dSAlex Dewar	depends on ARCH_QCOM || COMPILE_TEST
5510eb0d9f4SGeorgi Djakov	depends on MMC_SDHCI_PLTFM
55299d570daSVijay Viswanath	select MMC_SDHCI_IO_ACCESSORS
55387a8df0dSRitesh Harjani	select MMC_CQHCI
554424953cfSArnd Bergmann	select QCOM_SCM if MMC_CRYPTO
5550eb0d9f4SGeorgi Djakov	help
5560eb0d9f4SGeorgi Djakov	  This selects the Secure Digital Host Controller Interface (SDHCI)
5570eb0d9f4SGeorgi Djakov	  support present in Qualcomm SOCs. The controller supports
5580eb0d9f4SGeorgi Djakov	  SD/MMC/SDIO devices.
5590eb0d9f4SGeorgi Djakov
5600eb0d9f4SGeorgi Djakov	  If you have a controller with this interface, say Y or M here.
5610eb0d9f4SGeorgi Djakov
5620eb0d9f4SGeorgi Djakov	  If unsure, say N.
5630eb0d9f4SGeorgi Djakov
564d96be879SSascha Hauerconfig MMC_MXC
565c7ceab02SAnatolij Gustschin	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
566c7ceab02SAnatolij Gustschin	depends on ARCH_MXC || PPC_MPC512x
567d96be879SSascha Hauer	help
568c7ceab02SAnatolij Gustschin	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
569c7ceab02SAnatolij Gustschin	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
570c7ceab02SAnatolij Gustschin	  with a Multimedia Card slot, say Y or M here.
571d96be879SSascha Hauer
572d96be879SSascha Hauer	  If unsure, say N.
573d96be879SSascha Hauer
574e4243f13SShawn Guoconfig MMC_MXS
575e4243f13SShawn Guo	tristate "Freescale MXS Multimedia Card Interface support"
576e4243f13SShawn Guo	depends on ARCH_MXS && MXS_DMA
577e4243f13SShawn Guo	help
578e4243f13SShawn Guo	  This selects the Freescale SSP MMC controller found on MXS based
579e4243f13SShawn Guo	  platforms like mx23/28.
580e4243f13SShawn Guo
581e4243f13SShawn Guo	  If unsure, say N.
582e4243f13SShawn Guo
5831c6a0718SPierre Ossmanconfig MMC_TIFM_SD
58486147c84SKees Cook	tristate "TI Flash Media MMC/SD Interface support"
58586147c84SKees Cook	depends on PCI
5861c6a0718SPierre Ossman	select TIFM_CORE
5871c6a0718SPierre Ossman	help
5881c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
5891c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
5901c6a0718SPierre Ossman	  laptops.
5911c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
5921c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
5931c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
5941c6a0718SPierre Ossman	  (TIFM_7XX1)'.
5951c6a0718SPierre Ossman
5961c6a0718SPierre Ossman	  To compile this driver as a module, choose M here: the
5971c6a0718SPierre Ossman	  module will be called tifm_sd.
5981c6a0718SPierre Ossman
599236caa7cSMaen Suleimanconfig MMC_MVSDIO
600236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
60154d84544SKrzysztof Kozlowski	depends on PLAT_ORION || (COMPILE_TEST && ARM)
60217da6783SLinus Walleij	depends on OF
603a7f7f624SMasahiro Yamada	help
604236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
605236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
606236caa7cSMaen Suleiman	  SoC controllers.
607236caa7cSMaen Suleiman
608236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
609236caa7cSMaen Suleiman	  module will be called mvsdio.
610236caa7cSMaen Suleiman
611b4cff454SVipin Bhandariconfig MMC_DAVINCI
612b4cff454SVipin Bhandari	tristate "TI DAVINCI Multimedia Card Interface support"
61354d84544SKrzysztof Kozlowski	depends on ARCH_DAVINCI || COMPILE_TEST
614b4cff454SVipin Bhandari	help
615b4cff454SVipin Bhandari	  This selects the TI DAVINCI Multimedia card Interface.
616b4cff454SVipin Bhandari	  If you have an DAVINCI board with a Multimedia Card slot,
617b4cff454SVipin Bhandari	  say Y or M here.  If unsure, say N.
618b4cff454SVipin Bhandari
61915a0580cSDavid Brownellconfig MMC_SPI
62057105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
621a395acf0SUlf Hansson	depends on SPI_MASTER
62215a0580cSDavid Brownell	select CRC7
62315a0580cSDavid Brownell	select CRC_ITU_T
62415a0580cSDavid Brownell	help
625692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
62657105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
62757105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
62857105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
62957105737SPierre Ossman	  controllers.
63015a0580cSDavid Brownell
63115a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
63215a0580cSDavid Brownell
633be518018SThomas Kleffelconfig MMC_S3C
634be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
6351b0e4a21SKrzysztof Kozlowski	depends on ARCH_S3C24XX || COMPILE_TEST
6361b0e4a21SKrzysztof Kozlowski	depends on S3C24XX_DMAC || COMPILE_TEST
637be518018SThomas Kleffel	help
638be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
639be518018SThomas Kleffel	  Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
640be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
641be518018SThomas Kleffel	  slot, say Y or M here.
642be518018SThomas Kleffel
643be518018SThomas Kleffel	  If unsure, say N.
644be518018SThomas Kleffel
6455a2c4fe0SBen Dooksconfig MMC_S3C_HW_SDIO_IRQ
6465a2c4fe0SBen Dooks	bool "Hardware support for SDIO IRQ"
6475a2c4fe0SBen Dooks	depends on MMC_S3C
6485a2c4fe0SBen Dooks	help
6495a2c4fe0SBen Dooks	  Enable the hardware support for SDIO interrupts instead of using
6505a2c4fe0SBen Dooks	  the generic polling code.
6515a2c4fe0SBen Dooks
65226f14947SBen Dookschoice
65326f14947SBen Dooks	prompt "Samsung S3C SD/MMC transfer code"
65426f14947SBen Dooks	depends on MMC_S3C
65526f14947SBen Dooks
65626f14947SBen Dooksconfig MMC_S3C_PIO
65726f14947SBen Dooks	bool "Use PIO transfers only"
65826f14947SBen Dooks	help
65926f14947SBen Dooks	  Use PIO to transfer data between memory and the hardware.
66026f14947SBen Dooks
66126f14947SBen Dooks	  PIO is slower than DMA as it requires CPU instructions to
66226f14947SBen Dooks	  move the data. This has been the traditional default for
66326f14947SBen Dooks	  the S3C MCI driver.
66426f14947SBen Dooks
66526f14947SBen Dooksconfig MMC_S3C_DMA
66686147c84SKees Cook	bool "Use DMA transfers only"
66726f14947SBen Dooks	help
668fde71a3eSColin Ian King	  Use DMA to transfer data between memory and the hardware.
66926f14947SBen Dooks
67026f14947SBen Dooks	  Currently, the DMA support in this driver seems to not be
67126f14947SBen Dooks	  working properly and needs to be debugged before this
67226f14947SBen Dooks	  option is useful.
67326f14947SBen Dooks
67426f14947SBen Dooksendchoice
67526f14947SBen Dooks
6766a36913aSSascha Sommerconfig MMC_SDRICOH_CS
67786147c84SKees Cook	tristate "MMC/SD driver for Ricoh Bay1Controllers"
67886147c84SKees Cook	depends on PCI && PCMCIA
6796a36913aSSascha Sommer	help
6806a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
6816a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
6826a36913aSSascha Sommer
6836a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
6846a36913aSSascha Sommer	  module will be called sdricoh_cs.
6856a36913aSSascha Sommer
686fb8bd90fSChunyan Zhangconfig MMC_SDHCI_SPRD
687fb8bd90fSChunyan Zhang	tristate "Spreadtrum SDIO host Controller"
68854d84544SKrzysztof Kozlowski	depends on ARCH_SPRD || COMPILE_TEST
689fb8bd90fSChunyan Zhang	depends on MMC_SDHCI_PLTFM
690fb8bd90fSChunyan Zhang	select MMC_SDHCI_IO_ACCESSORS
691f4498549SBaolin Wang	select MMC_HSQ
692fb8bd90fSChunyan Zhang	help
693fb8bd90fSChunyan Zhang	  This selects the SDIO Host Controller in Spreadtrum
694fb8bd90fSChunyan Zhang	  SoCs, this driver supports R11(IP version: R11P0).
695fb8bd90fSChunyan Zhang
696fb8bd90fSChunyan Zhang	  If you have a controller with this interface, say Y or M here.
697fb8bd90fSChunyan Zhang
698fb8bd90fSChunyan Zhang	  If unsure, say N.
699fb8bd90fSChunyan Zhang
700b6147490SGuennadi Liakhovetskiconfig MMC_TMIO_CORE
701b6147490SGuennadi Liakhovetski	tristate
702b6147490SGuennadi Liakhovetski
7034a48998fSIan Moltonconfig MMC_TMIO
7044a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
70554d84544SKrzysztof Kozlowski	depends on MFD_TMIO || MFD_ASIC3 || COMPILE_TEST
706b6147490SGuennadi Liakhovetski	select MMC_TMIO_CORE
7074a48998fSIan Molton	help
7084a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
709e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
7105f5bac82SMichał Mirosław
71142051e8aSGuennadi Liakhovetskiconfig MMC_SDHI
712b5b6a5f4SSimon Horman	tristate "Renesas SDHI SD/SDIO controller support"
71349312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
71442051e8aSGuennadi Liakhovetski	select MMC_TMIO_CORE
715b4d86f37SWolfram Sang	select RESET_CONTROLLER if ARCH_RENESAS
71642051e8aSGuennadi Liakhovetski	help
71742051e8aSGuennadi Liakhovetski	  This provides support for the SDHI SD/SDIO controller found in
718b5b6a5f4SSimon Horman	  Renesas SuperH, ARM and ARM64 based SoCs
71942051e8aSGuennadi Liakhovetski
7202a68ea78SSimon Hormanconfig MMC_SDHI_SYS_DMAC
7212a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
7221d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
723c813e10aSMasahiro Yamada	default MMC_SDHI if (SUPERH || ARM)
7242a68ea78SSimon Horman	help
7252a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
7262a68ea78SSimon Horman	  using SYS-DMAC via DMA Engine. This supports the controllers
7272a68ea78SSimon Horman	  found in SuperH and Renesas ARM based SoCs.
7282a68ea78SSimon Horman
7292a68ea78SSimon Hormanconfig MMC_SDHI_INTERNAL_DMAC
7302a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
7319706b472SChris Brandt	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
7321d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
7339706b472SChris Brandt	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
7342a68ea78SSimon Horman	help
7352a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
7362a68ea78SSimon Horman	  using on-chip bus mastering. This supports the controllers
7379706b472SChris Brandt	  found in arm64 based SoCs. This controller is also found in
7389706b472SChris Brandt	  some RZ family SoCs.
7392a68ea78SSimon Horman
7403fd784f7SMasahiro Yamadaconfig MMC_UNIPHIER
7413fd784f7SMasahiro Yamada	tristate "UniPhier SD/eMMC Host Controller support"
7423fd784f7SMasahiro Yamada	depends on ARCH_UNIPHIER || COMPILE_TEST
7433fd784f7SMasahiro Yamada	depends on OF
7443fd784f7SMasahiro Yamada	select MMC_TMIO_CORE
7453fd784f7SMasahiro Yamada	help
7463fd784f7SMasahiro Yamada	  This provides support for the SD/eMMC controller found in
7473fd784f7SMasahiro Yamada	  UniPhier SoCs. The eMMC variant of this controller is used
7483fd784f7SMasahiro Yamada	  only for 32-bit SoCs.
7493fd784f7SMasahiro Yamada
7505f5bac82SMichał Mirosławconfig MMC_CB710
7515f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
7520244ad00SMartin Schwidefsky	depends on PCI
7535f5bac82SMichał Mirosław	select CB710_CORE
7545f5bac82SMichał Mirosław	help
7555f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
7565f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
7575f5bac82SMichał Mirosław	  HP Compaq nx9500).
7585f5bac82SMichał Mirosław
7595f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
7605f5bac82SMichał Mirosław	  will be called cb710-mmc.
7615f5bac82SMichał Mirosław
762f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
763f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
764f0bf7f61SHarald Welte	depends on PCI
765f0bf7f61SHarald Welte	help
766f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
767f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
768f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
769f0bf7f61SHarald Welte	  SD/MMC/SDHC.
770f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
771f0bf7f61SHarald Welte
772f0bf7f61SHarald Welte	  If unsure, say N.
773eb962d5bSCliff Cai
77401d95843SSteven J. Hillconfig MMC_CAVIUM_OCTEON
77501d95843SSteven J. Hill	tristate "Cavium OCTEON SD/MMC Card Interface support"
77601d95843SSteven J. Hill	depends on CAVIUM_OCTEON_SOC
77701d95843SSteven J. Hill	help
77801d95843SSteven J. Hill	  This selects Cavium OCTEON SD/MMC card Interface.
77901d95843SSteven J. Hill	  If you have an OCTEON board with a Multimedia Card slot,
78001d95843SSteven J. Hill	  say Y or M here.
78101d95843SSteven J. Hill
78201d95843SSteven J. Hill	  If unsure, say N.
78301d95843SSteven J. Hill
784166bac38SJan Glauberconfig MMC_CAVIUM_THUNDERX
785166bac38SJan Glauber	tristate "Cavium ThunderX SD/MMC Card Interface support"
786166bac38SJan Glauber	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
78762467bbbSJan Glauber	depends on GPIO_THUNDERX
788166bac38SJan Glauber	depends on OF_ADDRESS
789166bac38SJan Glauber	help
790166bac38SJan Glauber	  This selects Cavium ThunderX SD/MMC Card Interface.
791166bac38SJan Glauber	  If you have an Cavium ARM64 board with a Multimedia Card slot
792166bac38SJan Glauber	  or builtin eMMC chip say Y or M here. If built as a module
793166bac38SJan Glauber	  the module will be called thunderx_mmc.ko.
794166bac38SJan Glauber
795f95f3850SWill Newtonconfig MMC_DW
796f95f3850SWill Newton	tristate "Synopsys DesignWare Memory Card Interface"
797ce54fb38SGuo Ren	depends on ARC || ARM || ARM64 || MIPS || RISCV || CSKY || COMPILE_TEST
798f95f3850SWill Newton	help
799f95f3850SWill Newton	  This selects support for the Synopsys DesignWare Mobile Storage IP
800f95f3850SWill Newton	  block, this provides host support for SD and MMC interfaces, in both
8013fc7eaefSShawn Lin	  PIO, internal DMA mode and external DMA mode.
802f95f3850SWill Newton
80362ca8034SShashidhar Hiremathconfig MMC_DW_PLTFM
80462ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI Support as platform device"
80562ca8034SShashidhar Hiremath	depends on MMC_DW
80662ca8034SShashidhar Hiremath	default y
80762ca8034SShashidhar Hiremath	help
80862ca8034SShashidhar Hiremath	  This selects the common helper functions support for Host Controller
80962ca8034SShashidhar Hiremath	  Interface based platform driver. Please select this option if the IP
81062ca8034SShashidhar Hiremath	  is present as a platform device. This is the common interface for the
81162ca8034SShashidhar Hiremath	  Synopsys Designware IP.
81262ca8034SShashidhar Hiremath
81362ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
81462ca8034SShashidhar Hiremath
81562ca8034SShashidhar Hiremath	  If unsure, say Y.
81662ca8034SShashidhar Hiremath
81786958dccSLiming Sunconfig MMC_DW_BLUEFIELD
81886958dccSLiming Sun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
81986958dccSLiming Sun	depends on MMC_DW
82086958dccSLiming Sun	select MMC_DW_PLTFM
82186958dccSLiming Sun	help
82286958dccSLiming Sun	  This selects support for Mellanox BlueField SoC specific extensions to
82386958dccSLiming Sun	  the Synopsys DesignWare Memory Card Interface driver. Select this
82486958dccSLiming Sun	  option for platforms based on Mellanox BlueField SoC's.
82586958dccSLiming Sun
826c3665006SThomas Abrahamconfig MMC_DW_EXYNOS
827e41e85ccSMasanari Iida	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
828c3665006SThomas Abraham	depends on MMC_DW
829c3665006SThomas Abraham	select MMC_DW_PLTFM
830c3665006SThomas Abraham	help
831c3665006SThomas Abraham	  This selects support for Samsung Exynos SoC specific extensions to the
832c3665006SThomas Abraham	  Synopsys DesignWare Memory Card Interface driver. Select this option
833c3665006SThomas Abraham	  for platforms based on Exynos4 and Exynos5 SoC's.
834c3665006SThomas Abraham
835e382ab74Stianshuliangconfig MMC_DW_HI3798CV200
836e382ab74Stianshuliang	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
837e382ab74Stianshuliang	depends on MMC_DW
838e382ab74Stianshuliang	select MMC_DW_PLTFM
839e382ab74Stianshuliang	help
840e382ab74Stianshuliang	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
841e382ab74Stianshuliang	  Synopsys DesignWare Memory Card Interface driver. Select this option
842e382ab74Stianshuliang	  for platforms based on HiSilicon Hi3798CV200 SoC.
843e382ab74Stianshuliang
844036f29d5SZhangfei Gaoconfig MMC_DW_K3
845036f29d5SZhangfei Gao	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
846036f29d5SZhangfei Gao	depends on MMC_DW
847036f29d5SZhangfei Gao	select MMC_DW_PLTFM
848036f29d5SZhangfei Gao	help
849036f29d5SZhangfei Gao	  This selects support for Hisilicon K3 SoC specific extensions to the
850036f29d5SZhangfei Gao	  Synopsys DesignWare Memory Card Interface driver. Select this option
851036f29d5SZhangfei Gao	  for platforms based on Hisilicon K3 SoC's.
852036f29d5SZhangfei Gao
85362ca8034SShashidhar Hiremathconfig MMC_DW_PCI
85462ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI support on PCI bus"
85562ca8034SShashidhar Hiremath	depends on MMC_DW && PCI
85662ca8034SShashidhar Hiremath	help
85762ca8034SShashidhar Hiremath	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
85862ca8034SShashidhar Hiremath	  Select this option if the IP is present on PCI platform.
85962ca8034SShashidhar Hiremath
86062ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
86162ca8034SShashidhar Hiremath
86262ca8034SShashidhar Hiremath	  If unsure, say N.
86362ca8034SShashidhar Hiremath
8644cdc2ec1Saddy keconfig MMC_DW_ROCKCHIP
8654cdc2ec1Saddy ke	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
8664cdc2ec1Saddy ke	depends on MMC_DW && ARCH_ROCKCHIP
8674cdc2ec1Saddy ke	select MMC_DW_PLTFM
8684cdc2ec1Saddy ke	help
8694cdc2ec1Saddy ke	  This selects support for Rockchip SoC specific extensions to the
8704cdc2ec1Saddy ke	  Synopsys DesignWare Memory Card Interface driver. Select this option
8714cdc2ec1Saddy ke	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
8724cdc2ec1Saddy ke
873fdc50a94SYusuke Godaconfig MMC_SH_MMCIF
874fdc50a94SYusuke Goda	tristate "SuperH Internal MMCIF support"
87549312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
876fdc50a94SYusuke Goda	help
877ba9e9157SWolfram Sang	  This selects the MMC Host Interface controller (MMCIF) found in various
878ba9e9157SWolfram Sang	  Renesas SoCs for SH and ARM architectures.
879fdc50a94SYusuke Goda
88061bfbdb8SLars-Peter Clausen
88161bfbdb8SLars-Peter Clausenconfig MMC_JZ4740
8826a78768aSAlex Smith	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
883685bc885SPaul Cercueil	depends on MIPS
88461bfbdb8SLars-Peter Clausen	help
8856a78768aSAlex Smith	  This selects support for the SD/MMC controller on Ingenic
8866a78768aSAlex Smith	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
8876a78768aSAlex Smith
88861bfbdb8SLars-Peter Clausen	  If you have a board based on such a SoC and with a SD/MMC slot,
88961bfbdb8SLars-Peter Clausen	  say Y or M here.
89053f3a9e2SDavid Vrabel
89188095e7bSTony Olechconfig MMC_VUB300
89288095e7bSTony Olech	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
89388095e7bSTony Olech	depends on USB
89488095e7bSTony Olech	help
89588095e7bSTony Olech	  This selects support for Elan Digital Systems' VUB300 chip.
89688095e7bSTony Olech
89788095e7bSTony Olech	  The VUB300 is a USB-SDIO Host Controller Interface chip
89888095e7bSTony Olech	  that enables the host computer to use SDIO/SD/MMC cards
89988095e7bSTony Olech	  via a USB 2.0 or USB 1.1 host.
90088095e7bSTony Olech
90188095e7bSTony Olech	  The VUB300 chip will be found in both physically separate
90288095e7bSTony Olech	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
90388095e7bSTony Olech
90488095e7bSTony Olech	  The VUB300 chip supports SD and MMC memory cards in addition
90588095e7bSTony Olech	  to single and multifunction SDIO cards.
90688095e7bSTony Olech
90788095e7bSTony Olech	  Some SDIO cards will need a firmware file to be loaded and
90888095e7bSTony Olech	  sent to VUB300 chip in order to achieve better data throughput.
90988095e7bSTony Olech	  Download these "Offload Pseudocode" from Elan Digital Systems'
91088095e7bSTony Olech	  web-site http://www.elandigitalsystems.com/support/downloads.php
91188095e7bSTony Olech	  and put them in /lib/firmware. Note that without these additional
91288095e7bSTony Olech	  firmware files the VUB300 chip will still function, but not at
91388095e7bSTony Olech	  the best obtainable data rate.
91488095e7bSTony Olech
91588095e7bSTony Olech	  To compile this mmc host controller driver as a module,
91688095e7bSTony Olech	  choose M here: the module will be called vub300.
91788095e7bSTony Olech
91888095e7bSTony Olech	  If you have a computer with an embedded VUB300 chip
91988095e7bSTony Olech	  or if you intend connecting a USB adapter based on a
92088095e7bSTony Olech	  VUB300 chip say Y or M here.
92188095e7bSTony Olech
92253f3a9e2SDavid Vrabelconfig MMC_USHC
92353f3a9e2SDavid Vrabel	tristate "USB SD Host Controller (USHC) support"
92453f3a9e2SDavid Vrabel	depends on USB
92553f3a9e2SDavid Vrabel	help
92653f3a9e2SDavid Vrabel	  This selects support for USB SD Host Controllers based on
92753f3a9e2SDavid Vrabel	  the Cypress Astoria chip with firmware compliant with CSR's
92853f3a9e2SDavid Vrabel	  USB SD Host Controller specification (CS-118793-SP).
92953f3a9e2SDavid Vrabel
93053f3a9e2SDavid Vrabel	  CSR boards with this device include: USB<>SDIO (M1985v2),
93153f3a9e2SDavid Vrabel	  and Ultrasira.
93253f3a9e2SDavid Vrabel
93353f3a9e2SDavid Vrabel	  Note: These controllers only support SDIO cards and do not
93453f3a9e2SDavid Vrabel	  support MMC or SD memory cards.
9353a96dff0STony Prisk
9363a96dff0STony Priskconfig MMC_WMT
9373a96dff0STony Prisk	tristate "Wondermedia SD/MMC Host Controller support"
9383a96dff0STony Prisk	depends on ARCH_VT8500
9393a96dff0STony Prisk	default y
9403a96dff0STony Prisk	help
9413a96dff0STony Prisk	  This selects support for the SD/MMC Host Controller on
9423a96dff0STony Prisk	  Wondermedia WM8505/WM8650 based SoCs.
9433a96dff0STony Prisk
9443a96dff0STony Prisk	  To compile this driver as a module, choose M here: the
9453a96dff0STony Prisk	  module will be called wmt-sdmmc.
9466a5971d8SLinus Torvalds
94775fa9ea6SGuennadi Liakhovetskiconfig MMC_USDHI6ROL0
94875fa9ea6SGuennadi Liakhovetski	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
9491ef94740SGeert Uytterhoeven	depends on HAS_DMA
95075fa9ea6SGuennadi Liakhovetski	help
95175fa9ea6SGuennadi Liakhovetski	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
95275fa9ea6SGuennadi Liakhovetski	  Host Controller
95375fa9ea6SGuennadi Liakhovetski
9542c94b645SWei WANGconfig MMC_REALTEK_PCI
9552c94b645SWei WANG	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
956e455b69dSRui Feng	depends on MISC_RTSX_PCI
9572c94b645SWei WANG	help
9582c94b645SWei WANG	  Say Y here to include driver code to support SD/MMC card interface
9592c94b645SWei WANG	  of Realtek PCI-E card reader
960c7f6558dSRoger Tseng
961c7f6558dSRoger Tsengconfig MMC_REALTEK_USB
962c7f6558dSRoger Tseng	tristate "Realtek USB SD/MMC Card Interface Driver"
963e455b69dSRui Feng	depends on MISC_RTSX_USB
964c7f6558dSRoger Tseng	help
965c7f6558dSRoger Tseng	  Say Y here to include driver code to support SD/MMC card interface
966c7f6558dSRoger Tseng	  of Realtek RTS5129/39 series card reader
96719b7f796SDavid Lanzendörfer
96819b7f796SDavid Lanzendörferconfig MMC_SUNXI
96919b7f796SDavid Lanzendörfer	tristate "Allwinner sunxi SD/MMC Host Controller support"
97054d84544SKrzysztof Kozlowski	depends on ARCH_SUNXI || COMPILE_TEST
97191389c39SSamuel Holland	depends on SUNXI_CCU
97219b7f796SDavid Lanzendörfer	help
97319b7f796SDavid Lanzendörfer	  This selects support for the SD/MMC Host Controller on
97419b7f796SDavid Lanzendörfer	  Allwinner sunxi SoCs.
975a5eb8bbdSOndrej Zary
976a4080225SVenkat Gopalakrishnanconfig MMC_CQHCI
977a4080225SVenkat Gopalakrishnan	tristate "Command Queue Host Controller Interface support"
978a4080225SVenkat Gopalakrishnan	depends on HAS_DMA
979a4080225SVenkat Gopalakrishnan	help
980a4080225SVenkat Gopalakrishnan	  This selects the Command Queue Host Controller Interface (CQHCI)
981a4080225SVenkat Gopalakrishnan	  support present in host controllers of Qualcomm Technologies, Inc
982a4080225SVenkat Gopalakrishnan	  amongst others.
983a4080225SVenkat Gopalakrishnan	  This controller supports eMMC devices with command queue support.
984a4080225SVenkat Gopalakrishnan
985a4080225SVenkat Gopalakrishnan	  If you have a controller with this interface, say Y or M here.
986a4080225SVenkat Gopalakrishnan
987a4080225SVenkat Gopalakrishnan	  If unsure, say N.
988a4080225SVenkat Gopalakrishnan
989511ce378SBaolin Wangconfig MMC_HSQ
990511ce378SBaolin Wang	tristate "MMC Host Software Queue support"
991511ce378SBaolin Wang	help
992511ce378SBaolin Wang	  This selects the MMC Host Software Queue support. This may increase
993511ce378SBaolin Wang	  performance, if the host controller and its driver supports it.
994511ce378SBaolin Wang
995511ce378SBaolin Wang	  If you have a controller/driver supporting this interface, say Y or M
996511ce378SBaolin Wang	  here.
997511ce378SBaolin Wang
998511ce378SBaolin Wang	  If unsure, say N.
999511ce378SBaolin Wang
1000a5eb8bbdSOndrej Zaryconfig MMC_TOSHIBA_PCI
1001a5eb8bbdSOndrej Zary	tristate "Toshiba Type A SD/MMC Card Interface Driver"
1002a5eb8bbdSOndrej Zary	depends on PCI
100320848903SChaotian Jing
1004660fc733SEric Anholtconfig MMC_BCM2835
1005660fc733SEric Anholt	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
1006660fc733SEric Anholt	depends on ARCH_BCM2835 || COMPILE_TEST
1007660fc733SEric Anholt	help
1008660fc733SEric Anholt	  This selects the BCM2835 SDHOST MMC controller. If you have
1009660fc733SEric Anholt	  a BCM2835 platform with SD or MMC devices, say Y or M here.
1010660fc733SEric Anholt
1011660fc733SEric Anholt	  Note that the BCM2835 has two SD controllers: The Arasan
1012660fc733SEric Anholt	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
1013660fc733SEric Anholt	  sdhost controller (supported by this driver).
1014660fc733SEric Anholt
1015660fc733SEric Anholt	  If unsure, say N.
1016660fc733SEric Anholt
101720848903SChaotian Jingconfig MMC_MTK
101820848903SChaotian Jing	tristate "MediaTek SD/MMC Card Interface support"
1019c2b22fffSGeert Uytterhoeven	depends on HAS_DMA
1020b61d468dSKrzysztof Kozlowski	depends on COMMON_CLK
102126c2b19eSNeilBrown	select REGULATOR
102288bd652bSChun-Hung Wu	select MMC_CQHCI
102320848903SChaotian Jing	help
102420848903SChaotian Jing	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
102520848903SChaotian Jing	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
102620848903SChaotian Jing	  This is needed if support for any SD/SDIO/MMC devices is required.
102720848903SChaotian Jing	  If unsure, say N.
10285d9460d7SAndrei Pistirica
10295d9460d7SAndrei Pistiricaconfig MMC_SDHCI_MICROCHIP_PIC32
10305d9460d7SAndrei Pistirica	tristate "Microchip PIC32MZDA SDHCI support"
10315d9460d7SAndrei Pistirica	depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
10325d9460d7SAndrei Pistirica	help
10335d9460d7SAndrei Pistirica	  This selects the Secure Digital Host Controller Interface (SDHCI)
10345d9460d7SAndrei Pistirica	  for PIC32MZDA platform.
10355d9460d7SAndrei Pistirica
10365d9460d7SAndrei Pistirica	  If you have a controller with this interface, say Y or M here.
10375d9460d7SAndrei Pistirica
10385d9460d7SAndrei Pistirica	  If unsure, say N.
10396f549034SEnrico Weigelt, metux IT consult
1040476bf3d6SAl Cooperconfig MMC_SDHCI_BRCMSTB
1041476bf3d6SAl Cooper	tristate "Broadcom SDIO/SD/MMC support"
1042476bf3d6SAl Cooper	depends on ARCH_BRCMSTB || BMIPS_GENERIC
1043476bf3d6SAl Cooper	depends on MMC_SDHCI_PLTFM
1044d46ba2d1SAl Cooper	select MMC_CQHCI
1045476bf3d6SAl Cooper	default y
1046476bf3d6SAl Cooper	help
1047476bf3d6SAl Cooper	  This selects support for the SDIO/SD/MMC Host Controller on
1048476bf3d6SAl Cooper	  Broadcom STB SoCs.
1049476bf3d6SAl Cooper
1050476bf3d6SAl Cooper	  If unsure, say Y.
10513a3748dbSHu Ziji
10523a3748dbSHu Zijiconfig MMC_SDHCI_XENON
10533a3748dbSHu Ziji	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
10543a3748dbSHu Ziji	depends on MMC_SDHCI_PLTFM
10553a3748dbSHu Ziji	help
10563a3748dbSHu Ziji	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
10573a3748dbSHu Ziji	  If you have a controller with this interface, say Y or M here.
10583a3748dbSHu Ziji	  If unsure, say N.
10597d326930SKishon Vijay Abraham I
10607d326930SKishon Vijay Abraham Iconfig MMC_SDHCI_OMAP
10617d326930SKishon Vijay Abraham I	tristate "TI SDHCI Controller Support"
10627d326930SKishon Vijay Abraham I	depends on MMC_SDHCI_PLTFM && OF
1063961de0a8SFaiz Abbas	select THERMAL
1064287b1da6SFaiz Abbas	imply TI_SOC_THERMAL
1065195fadb7SChunyan Zhang	select MMC_SDHCI_EXTERNAL_DMA if DMA_ENGINE
10667d326930SKishon Vijay Abraham I	help
10677d326930SKishon Vijay Abraham I	  This selects the Secure Digital Host Controller Interface (SDHCI)
10687d326930SKishon Vijay Abraham I	  support present in TI's DRA7 SOCs. The controller supports
10697d326930SKishon Vijay Abraham I	  SD/MMC/SDIO devices.
10707d326930SKishon Vijay Abraham I
10717d326930SKishon Vijay Abraham I	  If you have a controller with this interface, say Y or M here.
10727d326930SKishon Vijay Abraham I
10737d326930SKishon Vijay Abraham I	  If unsure, say N.
107441fd4caeSFaiz Abbas
107541fd4caeSFaiz Abbasconfig MMC_SDHCI_AM654
107641fd4caeSFaiz Abbas	tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
107759592cc1SYueHaibing	depends on MMC_SDHCI_PLTFM && OF && REGMAP_MMIO
1078e374e875SFaiz Abbas	select MMC_SDHCI_IO_ACCESSORS
1079f545702bSFaiz Abbas	select MMC_CQHCI
108041fd4caeSFaiz Abbas	help
108141fd4caeSFaiz Abbas	  This selects the Secure Digital Host Controller Interface (SDHCI)
108241fd4caeSFaiz Abbas	  support present in TI's AM654 SOCs. The controller supports
108341fd4caeSFaiz Abbas	  SD/MMC/SDIO devices.
108441fd4caeSFaiz Abbas
108541fd4caeSFaiz Abbas	  If you have a controller with this interface, say Y or M here.
108641fd4caeSFaiz Abbas
108741fd4caeSFaiz Abbas	  If unsure, say N.
1088ff65ffe4SManivannan Sadhasivam
1089ff65ffe4SManivannan Sadhasivamconfig MMC_OWL
1090ff65ffe4SManivannan Sadhasivam	tristate "Actions Semi Owl SD/MMC Host Controller support"
1091ff65ffe4SManivannan Sadhasivam	depends on HAS_DMA
1092ff65ffe4SManivannan Sadhasivam	depends on ARCH_ACTIONS || COMPILE_TEST
1093ff65ffe4SManivannan Sadhasivam	help
1094ff65ffe4SManivannan Sadhasivam	  This selects support for the SD/MMC Host Controller on
1095ff65ffe4SManivannan Sadhasivam	  Actions Semi Owl SoCs.
109618e762e3SChunyan Zhang
109718e762e3SChunyan Zhangconfig MMC_SDHCI_EXTERNAL_DMA
109818e762e3SChunyan Zhang	bool
109992e09910SGabriel Somlo
110092e09910SGabriel Somloconfig MMC_LITEX
110192e09910SGabriel Somlo	tristate "LiteX MMC Host Controller support"
110292e09910SGabriel Somlo	depends on ((PPC_MICROWATT || LITEX) && OF && HAVE_CLK) || COMPILE_TEST
110392e09910SGabriel Somlo	select REGULATOR
110492e09910SGabriel Somlo	select REGULATOR_FIXED_VOLTAGE
110592e09910SGabriel Somlo	help
110692e09910SGabriel Somlo	  This selects support for the MMC Host Controller found in LiteX SoCs.
110792e09910SGabriel Somlo
110892e09910SGabriel Somlo	  To compile this driver as a module, choose M here: the
110992e09910SGabriel Somlo	  module will be called litex_mmc.
111092e09910SGabriel Somlo
111192e09910SGabriel Somlo	  If unsure, say N.
1112