xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision 8d280b1d)
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"
1603eb12314SPeter Robinson	depends on ARCH_ASPEED || COMPILE_TEST
161bb7b8ec6SAndrew Jeffery	depends on MMC_SDHCI_PLTFM
16272976643SAndrew Jeffery	depends on OF && OF_ADDRESS
16396790622SIvan Mikhaylov	select MMC_SDHCI_IO_ACCESSORS
164bb7b8ec6SAndrew Jeffery	help
165bb7b8ec6SAndrew Jeffery	  This selects the ASPEED Secure Digital Host Controller Interface.
166bb7b8ec6SAndrew Jeffery
167bb7b8ec6SAndrew Jeffery	  If you have a controller with this interface, say Y or M here. You
168bb7b8ec6SAndrew Jeffery	  also need to enable an appropriate bus interface.
169bb7b8ec6SAndrew Jeffery
170bb7b8ec6SAndrew Jeffery	  If unsure, say N.
171bb7b8ec6SAndrew Jeffery
1720bbcd225SAndrew Jefferyconfig MMC_SDHCI_OF_ASPEED_TEST
173291cd54eSDavid Gow	bool "Tests for the ASPEED SDHCI driver" if !KUNIT_ALL_TESTS
174291cd54eSDavid Gow	depends on MMC_SDHCI_OF_ASPEED && KUNIT
175d52788b3SDavid Gow	depends on (MMC_SDHCI_OF_ASPEED=m || KUNIT=y)
176291cd54eSDavid Gow	default KUNIT_ALL_TESTS
1770bbcd225SAndrew Jeffery	help
1780bbcd225SAndrew Jeffery	  Enable KUnit tests for the ASPEED SDHCI driver. Select this
1790bbcd225SAndrew Jeffery	  option only if you will boot the kernel for the purpose of running
1800bbcd225SAndrew Jeffery	  unit tests (e.g. under UML or qemu).
1810bbcd225SAndrew Jeffery
1820bbcd225SAndrew Jeffery	  The KUnit tests generally exercise parts of the driver that do not
1830bbcd225SAndrew Jeffery	  directly touch the hardware, for example, the phase correction
1840bbcd225SAndrew Jeffery	  calculations.
1850bbcd225SAndrew Jeffery
1860bbcd225SAndrew Jeffery	  If unsure, say N.
1870bbcd225SAndrew Jeffery
188bb5f8ea4Sludovic.desroches@atmel.comconfig MMC_SDHCI_OF_AT91
189bb5f8ea4Sludovic.desroches@atmel.com	tristate "SDHCI OF support for the Atmel SDMMC controller"
190bb5f8ea4Sludovic.desroches@atmel.com	depends on MMC_SDHCI_PLTFM
191ca2d13ecSMasahiro Yamada	depends on OF && HAVE_CLK
192bb5f8ea4Sludovic.desroches@atmel.com	help
193bb5f8ea4Sludovic.desroches@atmel.com	  This selects the Atmel SDMMC driver
194bb5f8ea4Sludovic.desroches@atmel.com
195f0de8369SShawn Guoconfig MMC_SDHCI_OF_ESDHC
196f0de8369SShawn Guo	tristate "SDHCI OF support for the Freescale eSDHC controller"
197f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
19854d84544SKrzysztof Kozlowski	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
1992ca63524Syangbo lu	select MMC_SDHCI_IO_ACCESSORS
200151ede40Syangbo lu	select FSL_GUTS
2017657c3a7SAlbert Herranz	help
2027657c3a7SAlbert Herranz	  This selects the Freescale eSDHC controller support.
2033085e9c1SAnton Vorontsov
204f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
205f0de8369SShawn Guo
2063085e9c1SAnton Vorontsov	  If unsure, say N.
2073085e9c1SAnton Vorontsov
2081144ab5dSAlbert Herranzconfig MMC_SDHCI_OF_HLWD
209f0de8369SShawn Guo	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
210f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
2115f2e097cSKevin Hao	depends on PPC
2121144ab5dSAlbert Herranz	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
2131144ab5dSAlbert Herranz	help
2141144ab5dSAlbert Herranz	  This selects the Secure Digital Host Controller Interface (SDHCI)
2151144ab5dSAlbert Herranz	  found in the "Hollywood" chipset of the Nintendo Wii video game
2161144ab5dSAlbert Herranz	  console.
2171144ab5dSAlbert Herranz
218f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
219f0de8369SShawn Guo
2201144ab5dSAlbert Herranz	  If unsure, say N.
2211144ab5dSAlbert Herranz
222e438cf49SJisheng Zhangconfig MMC_SDHCI_OF_DWCMSHC
223e438cf49SJisheng Zhang	tristate "SDHCI OF support for the Synopsys DWC MSHC"
224e438cf49SJisheng Zhang	depends on MMC_SDHCI_PLTFM
225e438cf49SJisheng Zhang	depends on OF
226e438cf49SJisheng Zhang	depends on COMMON_CLK
227e438cf49SJisheng Zhang	help
228e438cf49SJisheng Zhang	  This selects Synopsys DesignWare Cores Mobile Storage Controller
229e438cf49SJisheng Zhang	  support.
230e438cf49SJisheng Zhang	  If you have a controller with this interface, say Y or M here.
231e438cf49SJisheng Zhang	  If unsure, say N.
232e438cf49SJisheng Zhang
23343611afbSLars Povlsenconfig MMC_SDHCI_OF_SPARX5
23443611afbSLars Povlsen	tristate "SDHCI OF support for the MCHP Sparx5 SoC"
23543611afbSLars Povlsen	depends on MMC_SDHCI_PLTFM
23654d84544SKrzysztof Kozlowski	depends on ARCH_SPARX5 || COMPILE_TEST
23743611afbSLars Povlsen	help
23843611afbSLars Povlsen	  This selects the Secure Digital Host Controller Interface (SDHCI)
23943611afbSLars Povlsen	  found in the MCHP Sparx5 SoC.
24043611afbSLars Povlsen
24143611afbSLars Povlsen	  If you have a Sparx5 SoC with this interface, say Y or M here.
24243611afbSLars Povlsen
24343611afbSLars Povlsen	  If unsure, say N.
24443611afbSLars Povlsen
245ff6af28fSMasahiro Yamadaconfig MMC_SDHCI_CADENCE
246ff6af28fSMasahiro Yamada	tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
247ff6af28fSMasahiro Yamada	depends on MMC_SDHCI_PLTFM
248ff6af28fSMasahiro Yamada	depends on OF
249ff6af28fSMasahiro Yamada	help
250ff6af28fSMasahiro Yamada	  This selects the Cadence SD/SDIO/eMMC driver.
251ff6af28fSMasahiro Yamada
252ff6af28fSMasahiro Yamada	  If you have a controller with this interface, say Y or M here.
253ff6af28fSMasahiro Yamada
254ff6af28fSMasahiro Yamada	  If unsure, say N.
255ff6af28fSMasahiro Yamada
25620b1597bSAnton Vorontsovconfig MMC_SDHCI_CNS3XXX
25785d6509dSShawn Guo	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
25854d84544SKrzysztof Kozlowski	depends on ARCH_CNS3XXX || COMPILE_TEST
259f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
26020b1597bSAnton Vorontsov	help
26120b1597bSAnton Vorontsov	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
26220b1597bSAnton Vorontsov
263f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
264f0de8369SShawn Guo
26520b1597bSAnton Vorontsov	  If unsure, say N.
26620b1597bSAnton Vorontsov
267a5a944d2SAngelo Dureghelloconfig MMC_SDHCI_ESDHC_MCF
268a5a944d2SAngelo Dureghello	tristate "SDHCI support for the Freescale eSDHC ColdFire controller"
269a5a944d2SAngelo Dureghello	depends on M5441x
270a5a944d2SAngelo Dureghello	depends on MMC_SDHCI_PLTFM
271a5a944d2SAngelo Dureghello	select MMC_SDHCI_IO_ACCESSORS
272a5a944d2SAngelo Dureghello	help
273a5a944d2SAngelo Dureghello	  This selects the Freescale eSDHC controller support for
274a5a944d2SAngelo Dureghello	  ColdFire mcf5441x devices.
275a5a944d2SAngelo Dureghello
276a5a944d2SAngelo Dureghello	  If you have a controller with this interface, say Y or M here.
277a5a944d2SAngelo Dureghello
278a5a944d2SAngelo Dureghello	  If unsure, say N.
279a5a944d2SAngelo Dureghello
28095f25efeSWolfram Sangconfig MMC_SDHCI_ESDHC_IMX
28195a2482aSShawn Guo	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
28254d84544SKrzysztof Kozlowski	depends on ARCH_MXC || COMPILE_TEST
283f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
284ebe9572fSFabio Estevam	depends on OF
28595f25efeSWolfram Sang	select MMC_SDHCI_IO_ACCESSORS
286bb6e3581SBOUGH CHEN	select MMC_CQHCI
28795f25efeSWolfram Sang	help
28895a2482aSShawn Guo	  This selects the Freescale eSDHC/uSDHC controller support
28995a2482aSShawn Guo	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
29095f25efeSWolfram Sang
291f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
292f0de8369SShawn Guo
29395f25efeSWolfram Sang	  If unsure, say N.
29495f25efeSWolfram Sang
295985b1aa0SMike Rapoportconfig MMC_SDHCI_DOVE
29685d6509dSShawn Guo	tristate "SDHCI support on Marvell's Dove SoC"
29754d84544SKrzysztof Kozlowski	depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST
298f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
299985b1aa0SMike Rapoport	select MMC_SDHCI_IO_ACCESSORS
300985b1aa0SMike Rapoport	help
301985b1aa0SMike Rapoport	  This selects the Secure Digital Host Controller Interface in
302985b1aa0SMike Rapoport	  Marvell's Dove SoC.
303985b1aa0SMike Rapoport
304f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
305f0de8369SShawn Guo
306985b1aa0SMike Rapoport	  If unsure, say N.
307985b1aa0SMike Rapoport
30803d2bfc8SOlof Johanssonconfig MMC_SDHCI_TEGRA
30985d6509dSShawn Guo	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
31054d84544SKrzysztof Kozlowski	depends on ARCH_TEGRA || COMPILE_TEST
311f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
31203d2bfc8SOlof Johansson	select MMC_SDHCI_IO_ACCESSORS
3133c4019f9SSowjanya Komatineni	select MMC_CQHCI
31403d2bfc8SOlof Johansson	help
31503d2bfc8SOlof Johansson	  This selects the Tegra SD/MMC controller. If you have a Tegra
31603d2bfc8SOlof Johansson	  platform with SD or MMC devices, say Y or M here.
31703d2bfc8SOlof Johansson
31803d2bfc8SOlof Johansson	  If unsure, say N.
31903d2bfc8SOlof Johansson
3200d1bb41aSBen Dooksconfig MMC_SDHCI_S3C
32146cdda97SKrzysztof Kozlowski	tristate "SDHCI support on Samsung S3C/S5P/Exynos SoC"
32254d84544SKrzysztof Kozlowski	depends on MMC_SDHCI
323e731f314SLinus Torvalds	depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
3240d1bb41aSBen Dooks	help
3250d1bb41aSBen Dooks	  This selects the Secure Digital Host Controller Interface (SDHCI)
3260d1bb41aSBen Dooks	  often referrered to as the HSMMC block in some of the Samsung S3C
32746cdda97SKrzysztof Kozlowski	  (S3C2416, S3C2443, S3C6410), S5Pv210 and Exynos (Exynso4210,
32846cdda97SKrzysztof Kozlowski	  Exynos4412) SoCs.
3290d1bb41aSBen Dooks
33046cdda97SKrzysztof Kozlowski	  If you have a controller with this interface (thereforeyou build for
33146cdda97SKrzysztof Kozlowski	  such Samsung SoC), say Y or M here.
3320d1bb41aSBen Dooks
3330d1bb41aSBen Dooks	  If unsure, say N.
3340d1bb41aSBen Dooks
335a702c8abSZhangfei Gaoconfig MMC_SDHCI_PXAV3
336a702c8abSZhangfei Gao	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
3372f4574ddSArnd Bergmann	depends on HAVE_CLK
3385d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
339daa3054fSJean Delvare	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
340a702c8abSZhangfei Gao	default CPU_MMP2
341a702c8abSZhangfei Gao	help
342a702c8abSZhangfei Gao	  This selects the Marvell(R) PXAV3 SD Host Controller.
343a702c8abSZhangfei Gao	  If you have a MMP2 platform with SD Host Controller
344a702c8abSZhangfei Gao	  and a card slot, say Y or M here.
345a702c8abSZhangfei Gao
346a702c8abSZhangfei Gao	  If unsure, say N.
347a702c8abSZhangfei Gao
3489f5d71e4SZhangfei Gaoconfig MMC_SDHCI_PXAV2
3499f5d71e4SZhangfei Gao	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
3502f4574ddSArnd Bergmann	depends on HAVE_CLK
3515d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
3528a8735ebSJean Delvare	depends on ARCH_MMP || COMPILE_TEST
3539f5d71e4SZhangfei Gao	default CPU_PXA910
3549f5d71e4SZhangfei Gao	help
3559f5d71e4SZhangfei Gao	  This selects the Marvell(R) PXAV2 SD Host Controller.
3569f5d71e4SZhangfei Gao	  If you have a PXA9XX platform with SD Host Controller
3579f5d71e4SZhangfei Gao	  and a card slot, say Y or M here.
3589f5d71e4SZhangfei Gao
3599f5d71e4SZhangfei Gao	  If unsure, say N.
3609f5d71e4SZhangfei Gao
361c63b3cbaSViresh KUMARconfig MMC_SDHCI_SPEAR
362c63b3cbaSViresh KUMAR	tristate "SDHCI support on ST SPEAr platform"
36354d84544SKrzysztof Kozlowski	depends on MMC_SDHCI
36454d84544SKrzysztof Kozlowski	depends on PLAT_SPEAR || COMPILE_TEST
365bbd7f0a2SUlf Hansson	depends on OF
366c63b3cbaSViresh KUMAR	help
367c63b3cbaSViresh KUMAR	  This selects the Secure Digital Host Controller Interface (SDHCI)
368c63b3cbaSViresh KUMAR	  often referrered to as the HSMMC block in some of the ST SPEAR range
369c63b3cbaSViresh KUMAR	  of SoC
370c63b3cbaSViresh KUMAR
371c63b3cbaSViresh KUMAR	  If you have a controller with this interface, say Y or M here.
372c63b3cbaSViresh KUMAR
373c63b3cbaSViresh KUMAR	  If unsure, say N.
374c63b3cbaSViresh KUMAR
3750d1bb41aSBen Dooksconfig MMC_SDHCI_S3C_DMA
3760d1bb41aSBen Dooks	bool "DMA support on S3C SDHCI"
37786147c84SKees Cook	depends on MMC_SDHCI_S3C
3780d1bb41aSBen Dooks	help
3790d1bb41aSBen Dooks	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
3800d1bb41aSBen Dooks	  has proved to be problematic if the controller encounters
3810d1bb41aSBen Dooks	  certain errors, and thus should be treated with care.
3820d1bb41aSBen Dooks
3830d1bb41aSBen Dooks	  YMMV.
3840d1bb41aSBen Dooks
38501ebea1bSChristian Daudtconfig MMC_SDHCI_BCM_KONA
38601ebea1bSChristian Daudt	tristate "SDHCI support on Broadcom KONA platform"
38754d84544SKrzysztof Kozlowski	depends on ARCH_BCM_MOBILE || COMPILE_TEST
3885d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
38901ebea1bSChristian Daudt	help
39001ebea1bSChristian Daudt	  This selects the Broadcom Kona Secure Digital Host Controller
39101ebea1bSChristian Daudt	  Interface(SDHCI) support.
39201ebea1bSChristian Daudt	  This is used in Broadcom mobile SoCs.
39301ebea1bSChristian Daudt
39401ebea1bSChristian Daudt	  If you have a controller with this interface, say Y or M here.
39501ebea1bSChristian Daudt
39687a50745SVincent Yangconfig MMC_SDHCI_F_SDH30
39787a50745SVincent Yang	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
39887a50745SVincent Yang	depends on MMC_SDHCI_PLTFM
39990e1d8ccSArd Biesheuvel	depends on OF || ACPI
40087a50745SVincent Yang	help
40187a50745SVincent Yang	  This selects the Secure Digital Host Controller Interface (SDHCI)
40287a50745SVincent Yang	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
40387a50745SVincent Yang	  If you have a controller with this interface, say Y or M here.
40487a50745SVincent Yang
40587a50745SVincent Yang	  If unsure, say N.
40687a50745SVincent Yang
407dd79b7e3STakao Oritoconfig MMC_SDHCI_MILBEAUT
408dd79b7e3STakao Orito	tristate "SDHCI support for Socionext Milbeaut Serieas using F_SDH30"
409dd79b7e3STakao Orito	depends on MMC_SDHCI_PLTFM
410dd79b7e3STakao Orito	depends on OF
411dd79b7e3STakao Orito	help
412dd79b7e3STakao Orito	  This selects the Secure Digital Host Controller Interface (SDHCI)
413dd79b7e3STakao Orito	  Needed by Milbeaut SoC for MMC / SD / SDIO support.
414dd79b7e3STakao Orito	  If you have a controller with this interface, say Y or M here.
415dd79b7e3STakao Orito
416dd79b7e3STakao Orito	  If unsure, say N.
417dd79b7e3STakao Orito
418b580c52dSScott Brandenconfig MMC_SDHCI_IPROC
41977cb7d3aSStefan Wahren	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
42098b5ce4cSAl Cooper	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || ARCH_BRCMSTB || COMPILE_TEST
421b580c52dSScott Branden	depends on MMC_SDHCI_PLTFM
4227c7ba433SSrinath Mannam	depends on OF || ACPI
423b580c52dSScott Branden	default ARCH_BCM_IPROC
424b580c52dSScott Branden	select MMC_SDHCI_IO_ACCESSORS
425b580c52dSScott Branden	help
426b580c52dSScott Branden	  This selects the iProc SD/MMC controller.
427b580c52dSScott Branden
42877cb7d3aSStefan Wahren	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
429b580c52dSScott Branden	  say Y or M here.
430b580c52dSScott Branden
431b580c52dSScott Branden	  If unsure, say N.
432b580c52dSScott Branden
43351c5d844SKevin Hilmanconfig MMC_MESON_GX
434e79dc1b4SNan Li	tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
43554d84544SKrzysztof Kozlowski	depends on ARCH_MESON|| COMPILE_TEST
4363157b035SRandy Dunlap	depends on COMMON_CLK
43751c5d844SKevin Hilman	help
43851c5d844SKevin Hilman	  This selects support for the Amlogic SD/MMC Host Controller
439e79dc1b4SNan Li	  found on the S905/GX*/AXG family of SoCs.  This controller is
44051c5d844SKevin Hilman	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
44151c5d844SKevin Hilman
44251c5d844SKevin Hilman	  If you have a controller with this interface, say Y here.
44351c5d844SKevin Hilman
444e4bf1b09SMartin Blumenstinglconfig MMC_MESON_MX_SDHC
445e4bf1b09SMartin Blumenstingl	tristate "Amlogic Meson SDHC Host Controller support"
446e4bf1b09SMartin Blumenstingl	depends on (ARM && ARCH_MESON) || COMPILE_TEST
447e4bf1b09SMartin Blumenstingl	depends on COMMON_CLK
448e4bf1b09SMartin Blumenstingl	depends on OF
449e4bf1b09SMartin Blumenstingl	help
450e4bf1b09SMartin Blumenstingl	  This selects support for the SDHC Host Controller on
451e4bf1b09SMartin Blumenstingl	  Amlogic Meson6, Meson8, Meson8b and Meson8m2 SoCs.
452e4bf1b09SMartin Blumenstingl	  The controller supports the SD/SDIO Spec 3.x and eMMC Spec 4.5x
453e4bf1b09SMartin Blumenstingl	  with 1, 4, and 8 bit bus widths.
454e4bf1b09SMartin Blumenstingl
455e4bf1b09SMartin Blumenstingl	  If you have a controller with this interface, say Y or M here.
456e4bf1b09SMartin Blumenstingl	  If unsure, say N.
457e4bf1b09SMartin Blumenstingl
458ed80a13bSCarlo Caioneconfig MMC_MESON_MX_SDIO
459ed80a13bSCarlo Caione	tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
460ed80a13bSCarlo Caione	depends on ARCH_MESON || COMPILE_TEST
461ed80a13bSCarlo Caione	depends on COMMON_CLK
4623fd2fdb3SStephen Boyd	depends on OF_ADDRESS
463ed80a13bSCarlo Caione	help
464ed80a13bSCarlo Caione	  This selects support for the SD/MMC Host Controller on
465ed80a13bSCarlo Caione	  Amlogic Meson6, Meson8 and Meson8b SoCs.
466ed80a13bSCarlo Caione
467ed80a13bSCarlo Caione	  If you have a controller with this interface, say Y or M here.
468ed80a13bSCarlo Caione	  If unsure, say N.
469ed80a13bSCarlo Caione
4701b66e94eSJonas Jensenconfig MMC_MOXART
4711b66e94eSJonas Jensen	tristate "MOXART SD/MMC Host Controller support"
47254d84544SKrzysztof Kozlowski	depends on ARCH_MOXART || COMPILE_TEST
4731b66e94eSJonas Jensen	help
4741b66e94eSJonas Jensen	  This selects support for the MOXART SD/MMC Host Controller.
4751b66e94eSJonas Jensen	  MOXA provides one multi-functional card reader which can
4761b66e94eSJonas Jensen	  be found on some embedded hardware such as UC-7112-LX.
4771b66e94eSJonas Jensen	  If you have a controller with this interface, say Y here.
4781b66e94eSJonas Jensen
479f52d9c4fSPeter Griffinconfig MMC_SDHCI_ST
480f52d9c4fSPeter Griffin	tristate "SDHCI support on STMicroelectronics SoC"
48154d84544SKrzysztof Kozlowski	depends on ARCH_STI || FSP2 || COMPILE_TEST
482f52d9c4fSPeter Griffin	depends on MMC_SDHCI_PLTFM
483f52d9c4fSPeter Griffin	select MMC_SDHCI_IO_ACCESSORS
484f52d9c4fSPeter Griffin	help
485f52d9c4fSPeter Griffin	  This selects the Secure Digital Host Controller Interface in
486f52d9c4fSPeter Griffin	  STMicroelectronics SoCs.
487f52d9c4fSPeter Griffin
488f52d9c4fSPeter Griffin	  If you have a controller with this interface, say Y or M here.
489f52d9c4fSPeter Griffin	  If unsure, say N.
490f52d9c4fSPeter Griffin
4911c6a0718SPierre Ossmanconfig MMC_OMAP
4921c6a0718SPierre Ossman	tristate "TI OMAP Multimedia Card Interface support"
493790864dcSJan Engelhardt	depends on ARCH_OMAP
49460a549fcSArnd Bergmann	depends on TPS65010 || !MACH_OMAP_H2
4951c6a0718SPierre Ossman	help
4961c6a0718SPierre Ossman	  This selects the TI OMAP Multimedia card Interface.
4971c6a0718SPierre Ossman	  If you have an OMAP board with a Multimedia Card slot,
4981c6a0718SPierre Ossman	  say Y or M here.
4991c6a0718SPierre Ossman
5001c6a0718SPierre Ossman	  If unsure, say N.
5011c6a0718SPierre Ossman
502a45c6cb8SMadhusudhan Chikkatureconfig MMC_OMAP_HS
503a45c6cb8SMadhusudhan Chikkature	tristate "TI OMAP High Speed Multimedia Card Interface support"
504a7cedab6SLokesh Vutla	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
505a45c6cb8SMadhusudhan Chikkature	help
506a45c6cb8SMadhusudhan Chikkature	  This selects the TI OMAP High Speed Multimedia card Interface.
507bcf24e1dSAmarinder Bindra	  If you have an omap2plus board with a Multimedia Card slot,
508bcf24e1dSAmarinder Bindra	  say Y or M here.
509a45c6cb8SMadhusudhan Chikkature
510a45c6cb8SMadhusudhan Chikkature	  If unsure, say N.
511a45c6cb8SMadhusudhan Chikkature
5121c6a0718SPierre Ossmanconfig MMC_WBSD
5131c6a0718SPierre Ossman	tristate "Winbond W83L51xD SD/MMC Card Interface support"
514f95a387cSArnd Bergmann	depends on ISA_DMA_API
5151c6a0718SPierre Ossman	help
5161c6a0718SPierre Ossman	  This selects the Winbond(R) W83L51xD Secure digital and
5171c6a0718SPierre Ossman	  Multimedia card Interface.
5181c6a0718SPierre Ossman	  If you have a machine with a integrated W83L518D or W83L519D
5191c6a0718SPierre Ossman	  SD/MMC card reader, say Y or M here.
5201c6a0718SPierre Ossman
5211c6a0718SPierre Ossman	  If unsure, say N.
5221c6a0718SPierre Ossman
523c5413ad8SOleksij Rempelconfig MMC_ALCOR
524c5413ad8SOleksij Rempel	tristate "Alcor Micro/Alcor Link SD/MMC controller"
525c5413ad8SOleksij Rempel	depends on MISC_ALCOR_PCI
526c5413ad8SOleksij Rempel	help
527c5413ad8SOleksij Rempel	  Say Y here to include driver code to support SD/MMC card interface
528c5413ad8SOleksij Rempel	  of Alcor Micro PCI-E card reader
529c5413ad8SOleksij Rempel
5301c6a0718SPierre Ossmanconfig MMC_AU1X
5311c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
53237663860SManuel Lauss	depends on MIPS_ALCHEMY
5331c6a0718SPierre Ossman	help
5341c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
5351c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
5361c6a0718SPierre Ossman
5371c6a0718SPierre Ossman	  If unsure, say N.
5381c6a0718SPierre Ossman
5397d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
540d6a20debSLudovic Desroches	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
541ef4b160fSAndy Shevchenko	depends on ARCH_AT91
5427d2be074SHaavard Skinnemoen	help
543ef4b160fSAndy Shevchenko	  This selects the Atmel Multimedia Card Interface driver.
544ef4b160fSAndy Shevchenko	  If you have an AT91 platform with a Multimedia Card slot,
545ef4b160fSAndy Shevchenko	  say Y or M here.
5467d2be074SHaavard Skinnemoen
5477d2be074SHaavard Skinnemoen	  If unsure, say N.
5487d2be074SHaavard Skinnemoen
5490eb0d9f4SGeorgi Djakovconfig MMC_SDHCI_MSM
5500eb0d9f4SGeorgi Djakov	tristate "Qualcomm SDHCI Controller Support"
551d425e42dSAlex Dewar	depends on ARCH_QCOM || COMPILE_TEST
5520eb0d9f4SGeorgi Djakov	depends on MMC_SDHCI_PLTFM
55399d570daSVijay Viswanath	select MMC_SDHCI_IO_ACCESSORS
55487a8df0dSRitesh Harjani	select MMC_CQHCI
555424953cfSArnd Bergmann	select QCOM_SCM if MMC_CRYPTO
5560eb0d9f4SGeorgi Djakov	help
5570eb0d9f4SGeorgi Djakov	  This selects the Secure Digital Host Controller Interface (SDHCI)
5580eb0d9f4SGeorgi Djakov	  support present in Qualcomm SOCs. The controller supports
5590eb0d9f4SGeorgi Djakov	  SD/MMC/SDIO devices.
5600eb0d9f4SGeorgi Djakov
5610eb0d9f4SGeorgi Djakov	  If you have a controller with this interface, say Y or M here.
5620eb0d9f4SGeorgi Djakov
5630eb0d9f4SGeorgi Djakov	  If unsure, say N.
5640eb0d9f4SGeorgi Djakov
565d96be879SSascha Hauerconfig MMC_MXC
566c7ceab02SAnatolij Gustschin	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
567c7ceab02SAnatolij Gustschin	depends on ARCH_MXC || PPC_MPC512x
568d96be879SSascha Hauer	help
569c7ceab02SAnatolij Gustschin	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
570c7ceab02SAnatolij Gustschin	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
571c7ceab02SAnatolij Gustschin	  with a Multimedia Card slot, say Y or M here.
572d96be879SSascha Hauer
573d96be879SSascha Hauer	  If unsure, say N.
574d96be879SSascha Hauer
575e4243f13SShawn Guoconfig MMC_MXS
576e4243f13SShawn Guo	tristate "Freescale MXS Multimedia Card Interface support"
577e4243f13SShawn Guo	depends on ARCH_MXS && MXS_DMA
578e4243f13SShawn Guo	help
579e4243f13SShawn Guo	  This selects the Freescale SSP MMC controller found on MXS based
580e4243f13SShawn Guo	  platforms like mx23/28.
581e4243f13SShawn Guo
582e4243f13SShawn Guo	  If unsure, say N.
583e4243f13SShawn Guo
5841c6a0718SPierre Ossmanconfig MMC_TIFM_SD
58586147c84SKees Cook	tristate "TI Flash Media MMC/SD Interface support"
58686147c84SKees Cook	depends on PCI
5871c6a0718SPierre Ossman	select TIFM_CORE
5881c6a0718SPierre Ossman	help
5891c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
5901c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
5911c6a0718SPierre Ossman	  laptops.
5921c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
5931c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
5941c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
5951c6a0718SPierre Ossman	  (TIFM_7XX1)'.
5961c6a0718SPierre Ossman
5971c6a0718SPierre Ossman	  To compile this driver as a module, choose M here: the
5981c6a0718SPierre Ossman	  module will be called tifm_sd.
5991c6a0718SPierre Ossman
600236caa7cSMaen Suleimanconfig MMC_MVSDIO
601236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
60254d84544SKrzysztof Kozlowski	depends on PLAT_ORION || (COMPILE_TEST && ARM)
60317da6783SLinus Walleij	depends on OF
604a7f7f624SMasahiro Yamada	help
605236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
606236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
607236caa7cSMaen Suleiman	  SoC controllers.
608236caa7cSMaen Suleiman
609236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
610236caa7cSMaen Suleiman	  module will be called mvsdio.
611236caa7cSMaen Suleiman
612b4cff454SVipin Bhandariconfig MMC_DAVINCI
613b4cff454SVipin Bhandari	tristate "TI DAVINCI Multimedia Card Interface support"
61454d84544SKrzysztof Kozlowski	depends on ARCH_DAVINCI || COMPILE_TEST
615b4cff454SVipin Bhandari	help
616b4cff454SVipin Bhandari	  This selects the TI DAVINCI Multimedia card Interface.
617b4cff454SVipin Bhandari	  If you have an DAVINCI board with a Multimedia Card slot,
618b4cff454SVipin Bhandari	  say Y or M here.  If unsure, say N.
619b4cff454SVipin Bhandari
62015a0580cSDavid Brownellconfig MMC_SPI
62157105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
622a395acf0SUlf Hansson	depends on SPI_MASTER
62315a0580cSDavid Brownell	select CRC7
62415a0580cSDavid Brownell	select CRC_ITU_T
62515a0580cSDavid Brownell	help
626692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
62757105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
62857105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
62957105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
63057105737SPierre Ossman	  controllers.
63115a0580cSDavid Brownell
63215a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
63315a0580cSDavid Brownell
634be518018SThomas Kleffelconfig MMC_S3C
635be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
6361b0e4a21SKrzysztof Kozlowski	depends on ARCH_S3C24XX || COMPILE_TEST
6371b0e4a21SKrzysztof Kozlowski	depends on S3C24XX_DMAC || COMPILE_TEST
638be518018SThomas Kleffel	help
639be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
640be518018SThomas Kleffel	  Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
641be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
642be518018SThomas Kleffel	  slot, say Y or M here.
643be518018SThomas Kleffel
644be518018SThomas Kleffel	  If unsure, say N.
645be518018SThomas Kleffel
6465a2c4fe0SBen Dooksconfig MMC_S3C_HW_SDIO_IRQ
6475a2c4fe0SBen Dooks	bool "Hardware support for SDIO IRQ"
6485a2c4fe0SBen Dooks	depends on MMC_S3C
6495a2c4fe0SBen Dooks	help
6505a2c4fe0SBen Dooks	  Enable the hardware support for SDIO interrupts instead of using
6515a2c4fe0SBen Dooks	  the generic polling code.
6525a2c4fe0SBen Dooks
65326f14947SBen Dookschoice
65426f14947SBen Dooks	prompt "Samsung S3C SD/MMC transfer code"
65526f14947SBen Dooks	depends on MMC_S3C
65626f14947SBen Dooks
65726f14947SBen Dooksconfig MMC_S3C_PIO
65826f14947SBen Dooks	bool "Use PIO transfers only"
65926f14947SBen Dooks	help
66026f14947SBen Dooks	  Use PIO to transfer data between memory and the hardware.
66126f14947SBen Dooks
66226f14947SBen Dooks	  PIO is slower than DMA as it requires CPU instructions to
66326f14947SBen Dooks	  move the data. This has been the traditional default for
66426f14947SBen Dooks	  the S3C MCI driver.
66526f14947SBen Dooks
66626f14947SBen Dooksconfig MMC_S3C_DMA
66786147c84SKees Cook	bool "Use DMA transfers only"
66826f14947SBen Dooks	help
669fde71a3eSColin Ian King	  Use DMA to transfer data between memory and the hardware.
67026f14947SBen Dooks
67126f14947SBen Dooks	  Currently, the DMA support in this driver seems to not be
67226f14947SBen Dooks	  working properly and needs to be debugged before this
67326f14947SBen Dooks	  option is useful.
67426f14947SBen Dooks
67526f14947SBen Dooksendchoice
67626f14947SBen Dooks
6776a36913aSSascha Sommerconfig MMC_SDRICOH_CS
67886147c84SKees Cook	tristate "MMC/SD driver for Ricoh Bay1Controllers"
67986147c84SKees Cook	depends on PCI && PCMCIA
6806a36913aSSascha Sommer	help
6816a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
6826a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
6836a36913aSSascha Sommer
6846a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
6856a36913aSSascha Sommer	  module will be called sdricoh_cs.
6866a36913aSSascha Sommer
687fb8bd90fSChunyan Zhangconfig MMC_SDHCI_SPRD
688fb8bd90fSChunyan Zhang	tristate "Spreadtrum SDIO host Controller"
68954d84544SKrzysztof Kozlowski	depends on ARCH_SPRD || COMPILE_TEST
690fb8bd90fSChunyan Zhang	depends on MMC_SDHCI_PLTFM
691fb8bd90fSChunyan Zhang	select MMC_SDHCI_IO_ACCESSORS
692f4498549SBaolin Wang	select MMC_HSQ
693fb8bd90fSChunyan Zhang	help
694fb8bd90fSChunyan Zhang	  This selects the SDIO Host Controller in Spreadtrum
695fb8bd90fSChunyan Zhang	  SoCs, this driver supports R11(IP version: R11P0).
696fb8bd90fSChunyan Zhang
697fb8bd90fSChunyan Zhang	  If you have a controller with this interface, say Y or M here.
698fb8bd90fSChunyan Zhang
699fb8bd90fSChunyan Zhang	  If unsure, say N.
700fb8bd90fSChunyan Zhang
701b6147490SGuennadi Liakhovetskiconfig MMC_TMIO_CORE
702b6147490SGuennadi Liakhovetski	tristate
703b6147490SGuennadi Liakhovetski
7044a48998fSIan Moltonconfig MMC_TMIO
7054a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
70654d84544SKrzysztof Kozlowski	depends on MFD_TMIO || MFD_ASIC3 || COMPILE_TEST
707b6147490SGuennadi Liakhovetski	select MMC_TMIO_CORE
7084a48998fSIan Molton	help
7094a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
710e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
7115f5bac82SMichał Mirosław
71242051e8aSGuennadi Liakhovetskiconfig MMC_SDHI
713b5b6a5f4SSimon Horman	tristate "Renesas SDHI SD/SDIO controller support"
71449312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
71542051e8aSGuennadi Liakhovetski	select MMC_TMIO_CORE
716b4d86f37SWolfram Sang	select RESET_CONTROLLER if ARCH_RENESAS
71742051e8aSGuennadi Liakhovetski	help
71842051e8aSGuennadi Liakhovetski	  This provides support for the SDHI SD/SDIO controller found in
719b5b6a5f4SSimon Horman	  Renesas SuperH, ARM and ARM64 based SoCs
72042051e8aSGuennadi Liakhovetski
7212a68ea78SSimon Hormanconfig MMC_SDHI_SYS_DMAC
7222a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
7231d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
724c813e10aSMasahiro Yamada	default MMC_SDHI if (SUPERH || ARM)
7252a68ea78SSimon Horman	help
7262a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
7272a68ea78SSimon Horman	  using SYS-DMAC via DMA Engine. This supports the controllers
7282a68ea78SSimon Horman	  found in SuperH and Renesas ARM based SoCs.
7292a68ea78SSimon Horman
7302a68ea78SSimon Hormanconfig MMC_SDHI_INTERNAL_DMAC
7312a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
7329706b472SChris Brandt	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
7331d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
7349706b472SChris Brandt	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
7352a68ea78SSimon Horman	help
7362a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
7372a68ea78SSimon Horman	  using on-chip bus mastering. This supports the controllers
7389706b472SChris Brandt	  found in arm64 based SoCs. This controller is also found in
7399706b472SChris Brandt	  some RZ family SoCs.
7402a68ea78SSimon Horman
7413fd784f7SMasahiro Yamadaconfig MMC_UNIPHIER
7423fd784f7SMasahiro Yamada	tristate "UniPhier SD/eMMC Host Controller support"
7433fd784f7SMasahiro Yamada	depends on ARCH_UNIPHIER || COMPILE_TEST
7443fd784f7SMasahiro Yamada	depends on OF
7453fd784f7SMasahiro Yamada	select MMC_TMIO_CORE
7463fd784f7SMasahiro Yamada	help
7473fd784f7SMasahiro Yamada	  This provides support for the SD/eMMC controller found in
7483fd784f7SMasahiro Yamada	  UniPhier SoCs. The eMMC variant of this controller is used
7493fd784f7SMasahiro Yamada	  only for 32-bit SoCs.
7503fd784f7SMasahiro Yamada
7515f5bac82SMichał Mirosławconfig MMC_CB710
7525f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
7530244ad00SMartin Schwidefsky	depends on PCI
7545f5bac82SMichał Mirosław	select CB710_CORE
7555f5bac82SMichał Mirosław	help
7565f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
7575f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
7585f5bac82SMichał Mirosław	  HP Compaq nx9500).
7595f5bac82SMichał Mirosław
7605f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
7615f5bac82SMichał Mirosław	  will be called cb710-mmc.
7625f5bac82SMichał Mirosław
763f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
764f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
765f0bf7f61SHarald Welte	depends on PCI
766f0bf7f61SHarald Welte	help
767f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
768f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
769f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
770f0bf7f61SHarald Welte	  SD/MMC/SDHC.
771f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
772f0bf7f61SHarald Welte
773f0bf7f61SHarald Welte	  If unsure, say N.
774eb962d5bSCliff Cai
77501d95843SSteven J. Hillconfig MMC_CAVIUM_OCTEON
77601d95843SSteven J. Hill	tristate "Cavium OCTEON SD/MMC Card Interface support"
77701d95843SSteven J. Hill	depends on CAVIUM_OCTEON_SOC
77801d95843SSteven J. Hill	help
77901d95843SSteven J. Hill	  This selects Cavium OCTEON SD/MMC card Interface.
78001d95843SSteven J. Hill	  If you have an OCTEON board with a Multimedia Card slot,
78101d95843SSteven J. Hill	  say Y or M here.
78201d95843SSteven J. Hill
78301d95843SSteven J. Hill	  If unsure, say N.
78401d95843SSteven J. Hill
785166bac38SJan Glauberconfig MMC_CAVIUM_THUNDERX
786166bac38SJan Glauber	tristate "Cavium ThunderX SD/MMC Card Interface support"
787166bac38SJan Glauber	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
78862467bbbSJan Glauber	depends on GPIO_THUNDERX
789166bac38SJan Glauber	depends on OF_ADDRESS
790166bac38SJan Glauber	help
791166bac38SJan Glauber	  This selects Cavium ThunderX SD/MMC Card Interface.
792166bac38SJan Glauber	  If you have an Cavium ARM64 board with a Multimedia Card slot
793166bac38SJan Glauber	  or builtin eMMC chip say Y or M here. If built as a module
794166bac38SJan Glauber	  the module will be called thunderx_mmc.ko.
795166bac38SJan Glauber
796f95f3850SWill Newtonconfig MMC_DW
797f95f3850SWill Newton	tristate "Synopsys DesignWare Memory Card Interface"
798ce54fb38SGuo Ren	depends on ARC || ARM || ARM64 || MIPS || RISCV || CSKY || COMPILE_TEST
799f95f3850SWill Newton	help
800f95f3850SWill Newton	  This selects support for the Synopsys DesignWare Mobile Storage IP
801f95f3850SWill Newton	  block, this provides host support for SD and MMC interfaces, in both
8023fc7eaefSShawn Lin	  PIO, internal DMA mode and external DMA mode.
803f95f3850SWill Newton
80462ca8034SShashidhar Hiremathconfig MMC_DW_PLTFM
80562ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI Support as platform device"
80662ca8034SShashidhar Hiremath	depends on MMC_DW
80762ca8034SShashidhar Hiremath	default y
80862ca8034SShashidhar Hiremath	help
80962ca8034SShashidhar Hiremath	  This selects the common helper functions support for Host Controller
81062ca8034SShashidhar Hiremath	  Interface based platform driver. Please select this option if the IP
81162ca8034SShashidhar Hiremath	  is present as a platform device. This is the common interface for the
81262ca8034SShashidhar Hiremath	  Synopsys Designware IP.
81362ca8034SShashidhar Hiremath
81462ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
81562ca8034SShashidhar Hiremath
81662ca8034SShashidhar Hiremath	  If unsure, say Y.
81762ca8034SShashidhar Hiremath
81886958dccSLiming Sunconfig MMC_DW_BLUEFIELD
81986958dccSLiming Sun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
82086958dccSLiming Sun	depends on MMC_DW
82186958dccSLiming Sun	select MMC_DW_PLTFM
82286958dccSLiming Sun	help
82386958dccSLiming Sun	  This selects support for Mellanox BlueField SoC specific extensions to
82486958dccSLiming Sun	  the Synopsys DesignWare Memory Card Interface driver. Select this
82586958dccSLiming Sun	  option for platforms based on Mellanox BlueField SoC's.
82686958dccSLiming Sun
827c3665006SThomas Abrahamconfig MMC_DW_EXYNOS
828e41e85ccSMasanari Iida	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
829c3665006SThomas Abraham	depends on MMC_DW
830c3665006SThomas Abraham	select MMC_DW_PLTFM
831c3665006SThomas Abraham	help
832c3665006SThomas Abraham	  This selects support for Samsung Exynos SoC specific extensions to the
833c3665006SThomas Abraham	  Synopsys DesignWare Memory Card Interface driver. Select this option
834c3665006SThomas Abraham	  for platforms based on Exynos4 and Exynos5 SoC's.
835c3665006SThomas Abraham
836e382ab74Stianshuliangconfig MMC_DW_HI3798CV200
837e382ab74Stianshuliang	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
838e382ab74Stianshuliang	depends on MMC_DW
839e382ab74Stianshuliang	select MMC_DW_PLTFM
840e382ab74Stianshuliang	help
841e382ab74Stianshuliang	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
842e382ab74Stianshuliang	  Synopsys DesignWare Memory Card Interface driver. Select this option
843e382ab74Stianshuliang	  for platforms based on HiSilicon Hi3798CV200 SoC.
844e382ab74Stianshuliang
845036f29d5SZhangfei Gaoconfig MMC_DW_K3
846036f29d5SZhangfei Gao	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
847036f29d5SZhangfei Gao	depends on MMC_DW
848036f29d5SZhangfei Gao	select MMC_DW_PLTFM
849036f29d5SZhangfei Gao	help
850036f29d5SZhangfei Gao	  This selects support for Hisilicon K3 SoC specific extensions to the
851036f29d5SZhangfei Gao	  Synopsys DesignWare Memory Card Interface driver. Select this option
852036f29d5SZhangfei Gao	  for platforms based on Hisilicon K3 SoC's.
853036f29d5SZhangfei Gao
85462ca8034SShashidhar Hiremathconfig MMC_DW_PCI
85562ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI support on PCI bus"
85662ca8034SShashidhar Hiremath	depends on MMC_DW && PCI
85762ca8034SShashidhar Hiremath	help
85862ca8034SShashidhar Hiremath	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
85962ca8034SShashidhar Hiremath	  Select this option if the IP is present on PCI platform.
86062ca8034SShashidhar Hiremath
86162ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
86262ca8034SShashidhar Hiremath
86362ca8034SShashidhar Hiremath	  If unsure, say N.
86462ca8034SShashidhar Hiremath
8654cdc2ec1Saddy keconfig MMC_DW_ROCKCHIP
8664cdc2ec1Saddy ke	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
8674cdc2ec1Saddy ke	depends on MMC_DW && ARCH_ROCKCHIP
8684cdc2ec1Saddy ke	select MMC_DW_PLTFM
8694cdc2ec1Saddy ke	help
8704cdc2ec1Saddy ke	  This selects support for Rockchip SoC specific extensions to the
8714cdc2ec1Saddy ke	  Synopsys DesignWare Memory Card Interface driver. Select this option
8724cdc2ec1Saddy ke	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
8734cdc2ec1Saddy ke
874fdc50a94SYusuke Godaconfig MMC_SH_MMCIF
875fdc50a94SYusuke Goda	tristate "SuperH Internal MMCIF support"
87649312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
877fdc50a94SYusuke Goda	help
878ba9e9157SWolfram Sang	  This selects the MMC Host Interface controller (MMCIF) found in various
879ba9e9157SWolfram Sang	  Renesas SoCs for SH and ARM architectures.
880fdc50a94SYusuke Goda
88161bfbdb8SLars-Peter Clausen
88261bfbdb8SLars-Peter Clausenconfig MMC_JZ4740
8836a78768aSAlex Smith	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
884685bc885SPaul Cercueil	depends on MIPS
88561bfbdb8SLars-Peter Clausen	help
8866a78768aSAlex Smith	  This selects support for the SD/MMC controller on Ingenic
8876a78768aSAlex Smith	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
8886a78768aSAlex Smith
88961bfbdb8SLars-Peter Clausen	  If you have a board based on such a SoC and with a SD/MMC slot,
89061bfbdb8SLars-Peter Clausen	  say Y or M here.
89153f3a9e2SDavid Vrabel
89288095e7bSTony Olechconfig MMC_VUB300
89388095e7bSTony Olech	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
89488095e7bSTony Olech	depends on USB
89588095e7bSTony Olech	help
89688095e7bSTony Olech	  This selects support for Elan Digital Systems' VUB300 chip.
89788095e7bSTony Olech
89888095e7bSTony Olech	  The VUB300 is a USB-SDIO Host Controller Interface chip
89988095e7bSTony Olech	  that enables the host computer to use SDIO/SD/MMC cards
90088095e7bSTony Olech	  via a USB 2.0 or USB 1.1 host.
90188095e7bSTony Olech
90288095e7bSTony Olech	  The VUB300 chip will be found in both physically separate
90388095e7bSTony Olech	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
90488095e7bSTony Olech
90588095e7bSTony Olech	  The VUB300 chip supports SD and MMC memory cards in addition
90688095e7bSTony Olech	  to single and multifunction SDIO cards.
90788095e7bSTony Olech
90888095e7bSTony Olech	  Some SDIO cards will need a firmware file to be loaded and
90988095e7bSTony Olech	  sent to VUB300 chip in order to achieve better data throughput.
91088095e7bSTony Olech	  Download these "Offload Pseudocode" from Elan Digital Systems'
91188095e7bSTony Olech	  web-site http://www.elandigitalsystems.com/support/downloads.php
91288095e7bSTony Olech	  and put them in /lib/firmware. Note that without these additional
91388095e7bSTony Olech	  firmware files the VUB300 chip will still function, but not at
91488095e7bSTony Olech	  the best obtainable data rate.
91588095e7bSTony Olech
91688095e7bSTony Olech	  To compile this mmc host controller driver as a module,
91788095e7bSTony Olech	  choose M here: the module will be called vub300.
91888095e7bSTony Olech
91988095e7bSTony Olech	  If you have a computer with an embedded VUB300 chip
92088095e7bSTony Olech	  or if you intend connecting a USB adapter based on a
92188095e7bSTony Olech	  VUB300 chip say Y or M here.
92288095e7bSTony Olech
92353f3a9e2SDavid Vrabelconfig MMC_USHC
92453f3a9e2SDavid Vrabel	tristate "USB SD Host Controller (USHC) support"
92553f3a9e2SDavid Vrabel	depends on USB
92653f3a9e2SDavid Vrabel	help
92753f3a9e2SDavid Vrabel	  This selects support for USB SD Host Controllers based on
92853f3a9e2SDavid Vrabel	  the Cypress Astoria chip with firmware compliant with CSR's
92953f3a9e2SDavid Vrabel	  USB SD Host Controller specification (CS-118793-SP).
93053f3a9e2SDavid Vrabel
93153f3a9e2SDavid Vrabel	  CSR boards with this device include: USB<>SDIO (M1985v2),
93253f3a9e2SDavid Vrabel	  and Ultrasira.
93353f3a9e2SDavid Vrabel
93453f3a9e2SDavid Vrabel	  Note: These controllers only support SDIO cards and do not
93553f3a9e2SDavid Vrabel	  support MMC or SD memory cards.
9363a96dff0STony Prisk
9373a96dff0STony Priskconfig MMC_WMT
9383a96dff0STony Prisk	tristate "Wondermedia SD/MMC Host Controller support"
9393a96dff0STony Prisk	depends on ARCH_VT8500
9403a96dff0STony Prisk	default y
9413a96dff0STony Prisk	help
9423a96dff0STony Prisk	  This selects support for the SD/MMC Host Controller on
9433a96dff0STony Prisk	  Wondermedia WM8505/WM8650 based SoCs.
9443a96dff0STony Prisk
9453a96dff0STony Prisk	  To compile this driver as a module, choose M here: the
9463a96dff0STony Prisk	  module will be called wmt-sdmmc.
9476a5971d8SLinus Torvalds
94875fa9ea6SGuennadi Liakhovetskiconfig MMC_USDHI6ROL0
94975fa9ea6SGuennadi Liakhovetski	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
9501ef94740SGeert Uytterhoeven	depends on HAS_DMA
95175fa9ea6SGuennadi Liakhovetski	help
95275fa9ea6SGuennadi Liakhovetski	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
95375fa9ea6SGuennadi Liakhovetski	  Host Controller
95475fa9ea6SGuennadi Liakhovetski
9552c94b645SWei WANGconfig MMC_REALTEK_PCI
9562c94b645SWei WANG	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
957e455b69dSRui Feng	depends on MISC_RTSX_PCI
9582c94b645SWei WANG	help
9592c94b645SWei WANG	  Say Y here to include driver code to support SD/MMC card interface
9602c94b645SWei WANG	  of Realtek PCI-E card reader
961c7f6558dSRoger Tseng
962c7f6558dSRoger Tsengconfig MMC_REALTEK_USB
963c7f6558dSRoger Tseng	tristate "Realtek USB SD/MMC Card Interface Driver"
964e455b69dSRui Feng	depends on MISC_RTSX_USB
965c7f6558dSRoger Tseng	help
966c7f6558dSRoger Tseng	  Say Y here to include driver code to support SD/MMC card interface
967c7f6558dSRoger Tseng	  of Realtek RTS5129/39 series card reader
96819b7f796SDavid Lanzendörfer
96919b7f796SDavid Lanzendörferconfig MMC_SUNXI
97019b7f796SDavid Lanzendörfer	tristate "Allwinner sunxi SD/MMC Host Controller support"
97154d84544SKrzysztof Kozlowski	depends on ARCH_SUNXI || COMPILE_TEST
97291389c39SSamuel Holland	depends on SUNXI_CCU
97319b7f796SDavid Lanzendörfer	help
97419b7f796SDavid Lanzendörfer	  This selects support for the SD/MMC Host Controller on
97519b7f796SDavid Lanzendörfer	  Allwinner sunxi SoCs.
976a5eb8bbdSOndrej Zary
977a4080225SVenkat Gopalakrishnanconfig MMC_CQHCI
978a4080225SVenkat Gopalakrishnan	tristate "Command Queue Host Controller Interface support"
979a4080225SVenkat Gopalakrishnan	depends on HAS_DMA
980a4080225SVenkat Gopalakrishnan	help
981a4080225SVenkat Gopalakrishnan	  This selects the Command Queue Host Controller Interface (CQHCI)
982a4080225SVenkat Gopalakrishnan	  support present in host controllers of Qualcomm Technologies, Inc
983a4080225SVenkat Gopalakrishnan	  amongst others.
984a4080225SVenkat Gopalakrishnan	  This controller supports eMMC devices with command queue support.
985a4080225SVenkat Gopalakrishnan
986a4080225SVenkat Gopalakrishnan	  If you have a controller with this interface, say Y or M here.
987a4080225SVenkat Gopalakrishnan
988a4080225SVenkat Gopalakrishnan	  If unsure, say N.
989a4080225SVenkat Gopalakrishnan
990511ce378SBaolin Wangconfig MMC_HSQ
991511ce378SBaolin Wang	tristate "MMC Host Software Queue support"
992511ce378SBaolin Wang	help
993511ce378SBaolin Wang	  This selects the MMC Host Software Queue support. This may increase
994511ce378SBaolin Wang	  performance, if the host controller and its driver supports it.
995511ce378SBaolin Wang
996511ce378SBaolin Wang	  If you have a controller/driver supporting this interface, say Y or M
997511ce378SBaolin Wang	  here.
998511ce378SBaolin Wang
999511ce378SBaolin Wang	  If unsure, say N.
1000511ce378SBaolin Wang
1001a5eb8bbdSOndrej Zaryconfig MMC_TOSHIBA_PCI
1002a5eb8bbdSOndrej Zary	tristate "Toshiba Type A SD/MMC Card Interface Driver"
1003a5eb8bbdSOndrej Zary	depends on PCI
100420848903SChaotian Jing
1005660fc733SEric Anholtconfig MMC_BCM2835
1006660fc733SEric Anholt	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
1007660fc733SEric Anholt	depends on ARCH_BCM2835 || COMPILE_TEST
1008660fc733SEric Anholt	help
1009660fc733SEric Anholt	  This selects the BCM2835 SDHOST MMC controller. If you have
1010660fc733SEric Anholt	  a BCM2835 platform with SD or MMC devices, say Y or M here.
1011660fc733SEric Anholt
1012660fc733SEric Anholt	  Note that the BCM2835 has two SD controllers: The Arasan
1013660fc733SEric Anholt	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
1014660fc733SEric Anholt	  sdhost controller (supported by this driver).
1015660fc733SEric Anholt
1016660fc733SEric Anholt	  If unsure, say N.
1017660fc733SEric Anholt
101820848903SChaotian Jingconfig MMC_MTK
101920848903SChaotian Jing	tristate "MediaTek SD/MMC Card Interface support"
1020c2b22fffSGeert Uytterhoeven	depends on HAS_DMA
1021b61d468dSKrzysztof Kozlowski	depends on COMMON_CLK
102226c2b19eSNeilBrown	select REGULATOR
102388bd652bSChun-Hung Wu	select MMC_CQHCI
102420848903SChaotian Jing	help
102520848903SChaotian Jing	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
102620848903SChaotian Jing	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
102720848903SChaotian Jing	  This is needed if support for any SD/SDIO/MMC devices is required.
102820848903SChaotian Jing	  If unsure, say N.
10295d9460d7SAndrei Pistirica
10305d9460d7SAndrei Pistiricaconfig MMC_SDHCI_MICROCHIP_PIC32
10315d9460d7SAndrei Pistirica	tristate "Microchip PIC32MZDA SDHCI support"
10325d9460d7SAndrei Pistirica	depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
10335d9460d7SAndrei Pistirica	help
10345d9460d7SAndrei Pistirica	  This selects the Secure Digital Host Controller Interface (SDHCI)
10355d9460d7SAndrei Pistirica	  for PIC32MZDA platform.
10365d9460d7SAndrei Pistirica
10375d9460d7SAndrei Pistirica	  If you have a controller with this interface, say Y or M here.
10385d9460d7SAndrei Pistirica
10395d9460d7SAndrei Pistirica	  If unsure, say N.
10406f549034SEnrico Weigelt, metux IT consult
1041476bf3d6SAl Cooperconfig MMC_SDHCI_BRCMSTB
1042476bf3d6SAl Cooper	tristate "Broadcom SDIO/SD/MMC support"
1043476bf3d6SAl Cooper	depends on ARCH_BRCMSTB || BMIPS_GENERIC
1044476bf3d6SAl Cooper	depends on MMC_SDHCI_PLTFM
1045d46ba2d1SAl Cooper	select MMC_CQHCI
1046476bf3d6SAl Cooper	default y
1047476bf3d6SAl Cooper	help
1048476bf3d6SAl Cooper	  This selects support for the SDIO/SD/MMC Host Controller on
1049476bf3d6SAl Cooper	  Broadcom STB SoCs.
1050476bf3d6SAl Cooper
1051476bf3d6SAl Cooper	  If unsure, say Y.
10523a3748dbSHu Ziji
10533a3748dbSHu Zijiconfig MMC_SDHCI_XENON
10543a3748dbSHu Ziji	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
10553a3748dbSHu Ziji	depends on MMC_SDHCI_PLTFM
10563a3748dbSHu Ziji	help
10573a3748dbSHu Ziji	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
10583a3748dbSHu Ziji	  If you have a controller with this interface, say Y or M here.
10593a3748dbSHu Ziji	  If unsure, say N.
10607d326930SKishon Vijay Abraham I
10617d326930SKishon Vijay Abraham Iconfig MMC_SDHCI_OMAP
10627d326930SKishon Vijay Abraham I	tristate "TI SDHCI Controller Support"
10637d326930SKishon Vijay Abraham I	depends on MMC_SDHCI_PLTFM && OF
1064961de0a8SFaiz Abbas	select THERMAL
1065287b1da6SFaiz Abbas	imply TI_SOC_THERMAL
1066195fadb7SChunyan Zhang	select MMC_SDHCI_EXTERNAL_DMA if DMA_ENGINE
10677d326930SKishon Vijay Abraham I	help
10687d326930SKishon Vijay Abraham I	  This selects the Secure Digital Host Controller Interface (SDHCI)
10697d326930SKishon Vijay Abraham I	  support present in TI's DRA7 SOCs. The controller supports
10707d326930SKishon Vijay Abraham I	  SD/MMC/SDIO devices.
10717d326930SKishon Vijay Abraham I
10727d326930SKishon Vijay Abraham I	  If you have a controller with this interface, say Y or M here.
10737d326930SKishon Vijay Abraham I
10747d326930SKishon Vijay Abraham I	  If unsure, say N.
107541fd4caeSFaiz Abbas
107641fd4caeSFaiz Abbasconfig MMC_SDHCI_AM654
107741fd4caeSFaiz Abbas	tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
1078*8d280b1dSBrian Norris	depends on MMC_SDHCI_PLTFM && OF
1079e374e875SFaiz Abbas	select MMC_SDHCI_IO_ACCESSORS
1080f545702bSFaiz Abbas	select MMC_CQHCI
1081*8d280b1dSBrian Norris	select REGMAP_MMIO
108241fd4caeSFaiz Abbas	help
108341fd4caeSFaiz Abbas	  This selects the Secure Digital Host Controller Interface (SDHCI)
108441fd4caeSFaiz Abbas	  support present in TI's AM654 SOCs. The controller supports
108541fd4caeSFaiz Abbas	  SD/MMC/SDIO devices.
108641fd4caeSFaiz Abbas
108741fd4caeSFaiz Abbas	  If you have a controller with this interface, say Y or M here.
108841fd4caeSFaiz Abbas
108941fd4caeSFaiz Abbas	  If unsure, say N.
1090ff65ffe4SManivannan Sadhasivam
1091ff65ffe4SManivannan Sadhasivamconfig MMC_OWL
1092ff65ffe4SManivannan Sadhasivam	tristate "Actions Semi Owl SD/MMC Host Controller support"
1093ff65ffe4SManivannan Sadhasivam	depends on HAS_DMA
1094ff65ffe4SManivannan Sadhasivam	depends on ARCH_ACTIONS || COMPILE_TEST
1095ff65ffe4SManivannan Sadhasivam	help
1096ff65ffe4SManivannan Sadhasivam	  This selects support for the SD/MMC Host Controller on
1097ff65ffe4SManivannan Sadhasivam	  Actions Semi Owl SoCs.
109818e762e3SChunyan Zhang
109918e762e3SChunyan Zhangconfig MMC_SDHCI_EXTERNAL_DMA
110018e762e3SChunyan Zhang	bool
110192e09910SGabriel Somlo
110292e09910SGabriel Somloconfig MMC_LITEX
110392e09910SGabriel Somlo	tristate "LiteX MMC Host Controller support"
110492e09910SGabriel Somlo	depends on ((PPC_MICROWATT || LITEX) && OF && HAVE_CLK) || COMPILE_TEST
110592e09910SGabriel Somlo	select REGULATOR
110692e09910SGabriel Somlo	select REGULATOR_FIXED_VOLTAGE
110792e09910SGabriel Somlo	help
110892e09910SGabriel Somlo	  This selects support for the MMC Host Controller found in LiteX SoCs.
110992e09910SGabriel Somlo
111092e09910SGabriel Somlo	  To compile this driver as a module, choose M here: the
111192e09910SGabriel Somlo	  module will be called litex_mmc.
111292e09910SGabriel Somlo
111392e09910SGabriel Somlo	  If unsure, say N.
1114