xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision 0a49a619)
11c6a0718SPierre Ossman#
21c6a0718SPierre Ossman# MMC/SD host controller drivers
31c6a0718SPierre Ossman#
41c6a0718SPierre Ossman
557105737SPierre Ossmancomment "MMC/SD/SDIO Host Controller Drivers"
61c6a0718SPierre Ossman
703596b92SShawn Linconfig MMC_DEBUG
8b4f146f5SWolfram Sang	bool "MMC host drivers debugging"
903596b92SShawn Lin	depends on MMC != n
1003596b92SShawn Lin	help
1103596b92SShawn Lin	  This is an option for use by developers; most people should
1203596b92SShawn Lin	  say N here. This enables MMC host driver debugging. And further
1303596b92SShawn Lin	  added host drivers please don't invent their private macro for
1403596b92SShawn Lin	  debugging.
1503596b92SShawn Lin
161c6a0718SPierre Ossmanconfig MMC_ARMMMCI
171c6a0718SPierre Ossman	tristate "ARM AMBA Multimedia Card Interface support"
18790864dcSJan Engelhardt	depends on ARM_AMBA
191c6a0718SPierre Ossman	help
201c6a0718SPierre Ossman	  This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
211c6a0718SPierre Ossman	  Interface (PL180 and PL181) support.  If you have an ARM(R)
221c6a0718SPierre Ossman	  platform with a Multimedia Card slot, say Y or M here.
231c6a0718SPierre Ossman
241c6a0718SPierre Ossman	  If unsure, say N.
251c6a0718SPierre Ossman
269cb15142SSrinivas Kandagatlaconfig MMC_QCOM_DML
271ac99066SSrinivas Kandagatla	bool "Qualcomm Data Mover for SD Card Controller"
289cb15142SSrinivas Kandagatla	depends on MMC_ARMMMCI && QCOM_BAM_DMA
299cb15142SSrinivas Kandagatla	default y
309cb15142SSrinivas Kandagatla	help
319cb15142SSrinivas Kandagatla	  This selects the Qualcomm Data Mover lite/local on SD Card controller.
329cb15142SSrinivas Kandagatla	  This option will enable the dma to work correctly, if you are using
339cb15142SSrinivas Kandagatla	  Qcom SOCs and MMC, you would probably need this option to get DMA working.
349cb15142SSrinivas Kandagatla
359cb15142SSrinivas Kandagatla	  if unsure, say N.
369cb15142SSrinivas Kandagatla
3746b723ddSLudovic Barreconfig MMC_STM32_SDMMC
3846b723ddSLudovic Barre	bool "STMicroelectronics STM32 SDMMC Controller"
3946b723ddSLudovic Barre	depends on MMC_ARMMMCI
4046b723ddSLudovic Barre	default y
4146b723ddSLudovic Barre	help
4246b723ddSLudovic Barre	  This selects the STMicroelectronics STM32 SDMMC host controller.
4346b723ddSLudovic Barre	  If you have a STM32 sdmmc host with internal DMA say Y here.
4446b723ddSLudovic Barre
4546b723ddSLudovic Barre	  If unsure, say N.
4646b723ddSLudovic Barre
471c6a0718SPierre Ossmanconfig MMC_PXA
481c6a0718SPierre Ossman	tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
49790864dcSJan Engelhardt	depends on ARCH_PXA
501c6a0718SPierre Ossman	help
511c6a0718SPierre Ossman	  This selects the Intel(R) PXA(R) Multimedia card Interface.
521c6a0718SPierre Ossman	  If you have a PXA(R) platform with a Multimedia Card slot,
531c6a0718SPierre Ossman	  say Y or M here.
541c6a0718SPierre Ossman
551c6a0718SPierre Ossman	  If unsure, say N.
561c6a0718SPierre Ossman
571c6a0718SPierre Ossmanconfig MMC_SDHCI
5834671dc2SPierre Ossman	tristate "Secure Digital Host Controller Interface support"
59b8c86fc5SPierre Ossman	depends on HAS_DMA
601c6a0718SPierre Ossman	help
61b8c86fc5SPierre Ossman	  This selects the generic Secure Digital Host Controller Interface.
621c6a0718SPierre Ossman	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
631c6a0718SPierre Ossman	  and Toshiba(R). Most controllers found in laptops are of this type.
64b8c86fc5SPierre Ossman
65b8c86fc5SPierre Ossman	  If you have a controller with this interface, say Y or M here. You
66b8c86fc5SPierre Ossman	  also need to enable an appropriate bus interface.
67b8c86fc5SPierre Ossman
68b8c86fc5SPierre Ossman	  If unsure, say N.
69b8c86fc5SPierre Ossman
704e4141a5SAnton Vorontsovconfig MMC_SDHCI_IO_ACCESSORS
714e4141a5SAnton Vorontsov	bool
724e4141a5SAnton Vorontsov	depends on MMC_SDHCI
734e4141a5SAnton Vorontsov	help
744e4141a5SAnton Vorontsov	  This is silent Kconfig symbol that is selected by the drivers that
754e4141a5SAnton Vorontsov	  need to overwrite SDHCI IO memory accessors.
764e4141a5SAnton Vorontsov
777657c3a7SAlbert Herranzconfig MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
787657c3a7SAlbert Herranz	bool
7982813b71SJean Delvare	depends on MMC_SDHCI
807657c3a7SAlbert Herranz	select MMC_SDHCI_IO_ACCESSORS
817657c3a7SAlbert Herranz	help
827657c3a7SAlbert Herranz	  This option is selected by drivers running on big endian hosts
837657c3a7SAlbert Herranz	  and performing I/O to a SDHCI controller through a bus that
847657c3a7SAlbert Herranz	  implements a hardware byte swapper using a 32-bit datum.
857657c3a7SAlbert Herranz	  This endian mapping mode is called "data invariance" and
867657c3a7SAlbert Herranz	  has the effect of scrambling the addresses and formats of data
877657c3a7SAlbert Herranz	  accessed in sizes other than the datum size.
887657c3a7SAlbert Herranz
892ca63524Syangbo lu	  This is the case for the Nintendo Wii SDHCI.
907657c3a7SAlbert Herranz
91b8c86fc5SPierre Ossmanconfig MMC_SDHCI_PCI
92b8c86fc5SPierre Ossman	tristate "SDHCI support on PCI bus"
93b8c86fc5SPierre Ossman	depends on MMC_SDHCI && PCI
948ee82bdaSAdrian Hunter	select MMC_CQHCI
95*0a49a619SAdrian Hunter	select IOSF_MBI if X86
96b8c86fc5SPierre Ossman	help
97b8c86fc5SPierre Ossman	  This selects the PCI Secure Digital Host Controller Interface.
98b8c86fc5SPierre Ossman	  Most controllers found today are PCI devices.
99b8c86fc5SPierre Ossman
1001c6a0718SPierre Ossman	  If you have a controller with this interface, say Y or M here.
1011c6a0718SPierre Ossman
1021c6a0718SPierre Ossman	  If unsure, say N.
1031c6a0718SPierre Ossman
1045ae70296SPhilip Langdaleconfig MMC_RICOH_MMC
10586147c84SKees Cook	bool "Ricoh MMC Controller Disabler"
106b8c86fc5SPierre Ossman	depends on MMC_SDHCI_PCI
107ba2f7325SJean Delvare	default y
1085ae70296SPhilip Langdale	help
10903cd8f7eSMaxim Levitsky	  This adds a pci quirk to disable Ricoh MMC Controller. This
1105ae70296SPhilip Langdale	  proprietary controller is unnecessary because the SDHCI driver
1115ae70296SPhilip Langdale	  supports MMC cards on the SD controller, but if it is not
1125ae70296SPhilip Langdale	  disabled, it will steal the MMC cards away - rendering them
11303cd8f7eSMaxim Levitsky	  useless. It is safe to select this even if you don't
1145ae70296SPhilip Langdale	  have a Ricoh based card reader.
1155ae70296SPhilip Langdale
1165ae70296SPhilip Langdale	  If unsure, say Y.
1175ae70296SPhilip Langdale
118c4e05037SAdrian Hunterconfig MMC_SDHCI_ACPI
119c4e05037SAdrian Hunter	tristate "SDHCI support for ACPI enumerated SDHCI controllers"
120c2eda8abSSinan Kaya	depends on MMC_SDHCI && ACPI && PCI
1216e1c7d61SAdrian Hunter	select IOSF_MBI if X86
122c4e05037SAdrian Hunter	help
123c4e05037SAdrian Hunter	  This selects support for ACPI enumerated SDHCI controllers,
124c4e05037SAdrian Hunter	  identified by ACPI Compatibility ID PNP0D40 or specific
125c4e05037SAdrian Hunter	  ACPI Hardware IDs.
126c4e05037SAdrian Hunter
127c4e05037SAdrian Hunter	  If you have a controller with this interface, say Y or M here.
128c4e05037SAdrian Hunter
129c4e05037SAdrian Hunter	  If unsure, say N.
130c4e05037SAdrian Hunter
131f0de8369SShawn Guoconfig MMC_SDHCI_PLTFM
132f0de8369SShawn Guo	tristate "SDHCI platform and OF driver helper"
13338576af1SShawn Guo	depends on MMC_SDHCI
134f0de8369SShawn Guo	help
135f0de8369SShawn Guo	  This selects the common helper functions support for Secure Digital
136f0de8369SShawn Guo	  Host Controller Interface based platform and OF drivers.
137f0de8369SShawn Guo
138f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
139f0de8369SShawn Guo
140f0de8369SShawn Guo	  If unsure, say N.
141f0de8369SShawn Guo
142e3ec3a3dSSoren Brinkmannconfig MMC_SDHCI_OF_ARASAN
143e3ec3a3dSSoren Brinkmann	tristate "SDHCI OF support for the Arasan SDHCI controllers"
144e3ec3a3dSSoren Brinkmann	depends on MMC_SDHCI_PLTFM
145e3ec3a3dSSoren Brinkmann	depends on OF
146c390f211SDouglas Anderson	depends on COMMON_CLK
14784362d79SShawn Lin	select MMC_CQHCI
148e3ec3a3dSSoren Brinkmann	help
149e3ec3a3dSSoren Brinkmann	  This selects the Arasan Secure Digital Host Controller Interface
150e3ec3a3dSSoren Brinkmann	  (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
151e3ec3a3dSSoren Brinkmann
152e3ec3a3dSSoren Brinkmann	  If you have a controller with this interface, say Y or M here.
153e3ec3a3dSSoren Brinkmann
154e3ec3a3dSSoren Brinkmann	  If unsure, say N.
155e3ec3a3dSSoren Brinkmann
156bb5f8ea4Sludovic.desroches@atmel.comconfig MMC_SDHCI_OF_AT91
157bb5f8ea4Sludovic.desroches@atmel.com	tristate "SDHCI OF support for the Atmel SDMMC controller"
158bb5f8ea4Sludovic.desroches@atmel.com	depends on MMC_SDHCI_PLTFM
159bb5f8ea4Sludovic.desroches@atmel.com	depends on OF
160bb5f8ea4Sludovic.desroches@atmel.com	help
161bb5f8ea4Sludovic.desroches@atmel.com	  This selects the Atmel SDMMC driver
162bb5f8ea4Sludovic.desroches@atmel.com
163f0de8369SShawn Guoconfig MMC_SDHCI_OF_ESDHC
164f0de8369SShawn Guo	tristate "SDHCI OF support for the Freescale eSDHC controller"
165f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
1662ca63524Syangbo lu	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
1672ca63524Syangbo lu	select MMC_SDHCI_IO_ACCESSORS
168151ede40Syangbo lu	select FSL_GUTS
1697657c3a7SAlbert Herranz	help
1707657c3a7SAlbert Herranz	  This selects the Freescale eSDHC controller support.
1713085e9c1SAnton Vorontsov
172f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
173f0de8369SShawn Guo
1743085e9c1SAnton Vorontsov	  If unsure, say N.
1753085e9c1SAnton Vorontsov
1761144ab5dSAlbert Herranzconfig MMC_SDHCI_OF_HLWD
177f0de8369SShawn Guo	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
178f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
1795f2e097cSKevin Hao	depends on PPC
1801144ab5dSAlbert Herranz	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
1811144ab5dSAlbert Herranz	help
1821144ab5dSAlbert Herranz	  This selects the Secure Digital Host Controller Interface (SDHCI)
1831144ab5dSAlbert Herranz	  found in the "Hollywood" chipset of the Nintendo Wii video game
1841144ab5dSAlbert Herranz	  console.
1851144ab5dSAlbert Herranz
186f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
187f0de8369SShawn Guo
1881144ab5dSAlbert Herranz	  If unsure, say N.
1891144ab5dSAlbert Herranz
190e438cf49SJisheng Zhangconfig MMC_SDHCI_OF_DWCMSHC
191e438cf49SJisheng Zhang	tristate "SDHCI OF support for the Synopsys DWC MSHC"
192e438cf49SJisheng Zhang	depends on MMC_SDHCI_PLTFM
193e438cf49SJisheng Zhang	depends on OF
194e438cf49SJisheng Zhang	depends on COMMON_CLK
195e438cf49SJisheng Zhang	help
196e438cf49SJisheng Zhang	  This selects Synopsys DesignWare Cores Mobile Storage Controller
197e438cf49SJisheng Zhang	  support.
198e438cf49SJisheng Zhang	  If you have a controller with this interface, say Y or M here.
199e438cf49SJisheng Zhang	  If unsure, say N.
200e438cf49SJisheng Zhang
201ff6af28fSMasahiro Yamadaconfig MMC_SDHCI_CADENCE
202ff6af28fSMasahiro Yamada	tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
203ff6af28fSMasahiro Yamada	depends on MMC_SDHCI_PLTFM
204ff6af28fSMasahiro Yamada	depends on OF
205ff6af28fSMasahiro Yamada	help
206ff6af28fSMasahiro Yamada	  This selects the Cadence SD/SDIO/eMMC driver.
207ff6af28fSMasahiro Yamada
208ff6af28fSMasahiro Yamada	  If you have a controller with this interface, say Y or M here.
209ff6af28fSMasahiro Yamada
210ff6af28fSMasahiro Yamada	  If unsure, say N.
211ff6af28fSMasahiro Yamada
21220b1597bSAnton Vorontsovconfig MMC_SDHCI_CNS3XXX
21385d6509dSShawn Guo	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
21420b1597bSAnton Vorontsov	depends on ARCH_CNS3XXX
215f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
21620b1597bSAnton Vorontsov	help
21720b1597bSAnton Vorontsov	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
21820b1597bSAnton Vorontsov
219f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
220f0de8369SShawn Guo
22120b1597bSAnton Vorontsov	  If unsure, say N.
22220b1597bSAnton Vorontsov
22395f25efeSWolfram Sangconfig MMC_SDHCI_ESDHC_IMX
22495a2482aSShawn Guo	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
2252b795518SSascha Hauer	depends on ARCH_MXC
226f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
22795f25efeSWolfram Sang	select MMC_SDHCI_IO_ACCESSORS
228bb6e3581SBOUGH CHEN	select MMC_CQHCI
22995f25efeSWolfram Sang	help
23095a2482aSShawn Guo	  This selects the Freescale eSDHC/uSDHC controller support
23195a2482aSShawn Guo	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
23295f25efeSWolfram Sang
233f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
234f0de8369SShawn Guo
23595f25efeSWolfram Sang	  If unsure, say N.
23695f25efeSWolfram Sang
237985b1aa0SMike Rapoportconfig MMC_SDHCI_DOVE
23885d6509dSShawn Guo	tristate "SDHCI support on Marvell's Dove SoC"
239ec4422acSSebastian Hesselbarth	depends on ARCH_DOVE || MACH_DOVE
240f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
241985b1aa0SMike Rapoport	select MMC_SDHCI_IO_ACCESSORS
242985b1aa0SMike Rapoport	help
243985b1aa0SMike Rapoport	  This selects the Secure Digital Host Controller Interface in
244985b1aa0SMike Rapoport	  Marvell's Dove SoC.
245985b1aa0SMike Rapoport
246f0de8369SShawn Guo	  If you have a controller with this interface, say Y or M here.
247f0de8369SShawn Guo
248985b1aa0SMike Rapoport	  If unsure, say N.
249985b1aa0SMike Rapoport
25003d2bfc8SOlof Johanssonconfig MMC_SDHCI_TEGRA
25185d6509dSShawn Guo	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
25285d6509dSShawn Guo	depends on ARCH_TEGRA
253f0de8369SShawn Guo	depends on MMC_SDHCI_PLTFM
25403d2bfc8SOlof Johansson	select MMC_SDHCI_IO_ACCESSORS
2553c4019f9SSowjanya Komatineni	select MMC_CQHCI
25603d2bfc8SOlof Johansson	help
25703d2bfc8SOlof Johansson	  This selects the Tegra SD/MMC controller. If you have a Tegra
25803d2bfc8SOlof Johansson	  platform with SD or MMC devices, say Y or M here.
25903d2bfc8SOlof Johansson
26003d2bfc8SOlof Johansson	  If unsure, say N.
26103d2bfc8SOlof Johansson
2620d1bb41aSBen Dooksconfig MMC_SDHCI_S3C
2630d1bb41aSBen Dooks	tristate "SDHCI support on Samsung S3C SoC"
264930a6f70SKyungmin Park	depends on MMC_SDHCI && PLAT_SAMSUNG
2650d1bb41aSBen Dooks	help
2660d1bb41aSBen Dooks	  This selects the Secure Digital Host Controller Interface (SDHCI)
2670d1bb41aSBen Dooks	  often referrered to as the HSMMC block in some of the Samsung S3C
2680d1bb41aSBen Dooks	  range of SoC.
2690d1bb41aSBen Dooks
2700d1bb41aSBen Dooks	  If you have a controller with this interface, say Y or M here.
2710d1bb41aSBen Dooks
2720d1bb41aSBen Dooks	  If unsure, say N.
2730d1bb41aSBen Dooks
274b3b665b0SBarry Songconfig MMC_SDHCI_SIRF
275b3b665b0SBarry Song	tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
276b3b665b0SBarry Song	depends on ARCH_SIRF
277b3b665b0SBarry Song	depends on MMC_SDHCI_PLTFM
278a1b0b977SWeijun Yang	select MMC_SDHCI_IO_ACCESSORS
279b3b665b0SBarry Song	help
280b3b665b0SBarry Song	  This selects the SDHCI support for SiRF System-on-Chip devices.
281b3b665b0SBarry Song
282b3b665b0SBarry Song	  If you have a controller with this interface, say Y or M here.
283b3b665b0SBarry Song
284b3b665b0SBarry Song	  If unsure, say N.
285b3b665b0SBarry Song
286a702c8abSZhangfei Gaoconfig MMC_SDHCI_PXAV3
287a702c8abSZhangfei Gao	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
288a702c8abSZhangfei Gao	depends on CLKDEV_LOOKUP
2895d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
290daa3054fSJean Delvare	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
291a702c8abSZhangfei Gao	default CPU_MMP2
292a702c8abSZhangfei Gao	help
293a702c8abSZhangfei Gao	  This selects the Marvell(R) PXAV3 SD Host Controller.
294a702c8abSZhangfei Gao	  If you have a MMP2 platform with SD Host Controller
295a702c8abSZhangfei Gao	  and a card slot, say Y or M here.
296a702c8abSZhangfei Gao
297a702c8abSZhangfei Gao	  If unsure, say N.
298a702c8abSZhangfei Gao
2999f5d71e4SZhangfei Gaoconfig MMC_SDHCI_PXAV2
3009f5d71e4SZhangfei Gao	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
3019f5d71e4SZhangfei Gao	depends on CLKDEV_LOOKUP
3025d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
3038a8735ebSJean Delvare	depends on ARCH_MMP || COMPILE_TEST
3049f5d71e4SZhangfei Gao	default CPU_PXA910
3059f5d71e4SZhangfei Gao	help
3069f5d71e4SZhangfei Gao	  This selects the Marvell(R) PXAV2 SD Host Controller.
3079f5d71e4SZhangfei Gao	  If you have a PXA9XX platform with SD Host Controller
3089f5d71e4SZhangfei Gao	  and a card slot, say Y or M here.
3099f5d71e4SZhangfei Gao
3109f5d71e4SZhangfei Gao	  If unsure, say N.
3119f5d71e4SZhangfei Gao
312c63b3cbaSViresh KUMARconfig MMC_SDHCI_SPEAR
313c63b3cbaSViresh KUMAR	tristate "SDHCI support on ST SPEAr platform"
314c63b3cbaSViresh KUMAR	depends on MMC_SDHCI && PLAT_SPEAR
315bbd7f0a2SUlf Hansson	depends on OF
316c63b3cbaSViresh KUMAR	help
317c63b3cbaSViresh KUMAR	  This selects the Secure Digital Host Controller Interface (SDHCI)
318c63b3cbaSViresh KUMAR	  often referrered to as the HSMMC block in some of the ST SPEAR range
319c63b3cbaSViresh KUMAR	  of SoC
320c63b3cbaSViresh KUMAR
321c63b3cbaSViresh KUMAR	  If you have a controller with this interface, say Y or M here.
322c63b3cbaSViresh KUMAR
323c63b3cbaSViresh KUMAR	  If unsure, say N.
324c63b3cbaSViresh KUMAR
3250d1bb41aSBen Dooksconfig MMC_SDHCI_S3C_DMA
3260d1bb41aSBen Dooks	bool "DMA support on S3C SDHCI"
32786147c84SKees Cook	depends on MMC_SDHCI_S3C
3280d1bb41aSBen Dooks	help
3290d1bb41aSBen Dooks	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
3300d1bb41aSBen Dooks	  has proved to be problematic if the controller encounters
3310d1bb41aSBen Dooks	  certain errors, and thus should be treated with care.
3320d1bb41aSBen Dooks
3330d1bb41aSBen Dooks	  YMMV.
3340d1bb41aSBen Dooks
33501ebea1bSChristian Daudtconfig MMC_SDHCI_BCM_KONA
33601ebea1bSChristian Daudt	tristate "SDHCI support on Broadcom KONA platform"
337fc2bd2e4SChristian Daudt	depends on ARCH_BCM_MOBILE
3385d01b768SArnd Bergmann	depends on MMC_SDHCI_PLTFM
33901ebea1bSChristian Daudt	help
34001ebea1bSChristian Daudt	  This selects the Broadcom Kona Secure Digital Host Controller
34101ebea1bSChristian Daudt	  Interface(SDHCI) support.
34201ebea1bSChristian Daudt	  This is used in Broadcom mobile SoCs.
34301ebea1bSChristian Daudt
34401ebea1bSChristian Daudt	  If you have a controller with this interface, say Y or M here.
34501ebea1bSChristian Daudt
34687a50745SVincent Yangconfig MMC_SDHCI_F_SDH30
34787a50745SVincent Yang	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
34887a50745SVincent Yang	depends on MMC_SDHCI_PLTFM
34990e1d8ccSArd Biesheuvel	depends on OF || ACPI
35087a50745SVincent Yang	help
35187a50745SVincent Yang	  This selects the Secure Digital Host Controller Interface (SDHCI)
35287a50745SVincent Yang	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
35387a50745SVincent Yang	  If you have a controller with this interface, say Y or M here.
35487a50745SVincent Yang
35587a50745SVincent Yang	  If unsure, say N.
35687a50745SVincent Yang
357b580c52dSScott Brandenconfig MMC_SDHCI_IPROC
35877cb7d3aSStefan Wahren	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
35977cb7d3aSStefan Wahren	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
360b580c52dSScott Branden	depends on MMC_SDHCI_PLTFM
3617c7ba433SSrinath Mannam	depends on OF || ACPI
362b580c52dSScott Branden	default ARCH_BCM_IPROC
363b580c52dSScott Branden	select MMC_SDHCI_IO_ACCESSORS
364b580c52dSScott Branden	help
365b580c52dSScott Branden	  This selects the iProc SD/MMC controller.
366b580c52dSScott Branden
36777cb7d3aSStefan Wahren	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
368b580c52dSScott Branden	  say Y or M here.
369b580c52dSScott Branden
370b580c52dSScott Branden	  If unsure, say N.
371b580c52dSScott Branden
37251c5d844SKevin Hilmanconfig MMC_MESON_GX
373e79dc1b4SNan Li	tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
37451c5d844SKevin Hilman	depends on ARCH_MESON && MMC
37551c5d844SKevin Hilman	help
37651c5d844SKevin Hilman	  This selects support for the Amlogic SD/MMC Host Controller
377e79dc1b4SNan Li	  found on the S905/GX*/AXG family of SoCs.  This controller is
37851c5d844SKevin Hilman	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
37951c5d844SKevin Hilman
38051c5d844SKevin Hilman	  If you have a controller with this interface, say Y here.
38151c5d844SKevin Hilman
382ed80a13bSCarlo Caioneconfig MMC_MESON_MX_SDIO
383ed80a13bSCarlo Caione	tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
384ed80a13bSCarlo Caione	depends on ARCH_MESON || COMPILE_TEST
385ed80a13bSCarlo Caione	depends on COMMON_CLK
386ed80a13bSCarlo Caione	depends on OF
387ed80a13bSCarlo Caione	help
388ed80a13bSCarlo Caione	  This selects support for the SD/MMC Host Controller on
389ed80a13bSCarlo Caione	  Amlogic Meson6, Meson8 and Meson8b SoCs.
390ed80a13bSCarlo Caione
391ed80a13bSCarlo Caione	  If you have a controller with this interface, say Y or M here.
392ed80a13bSCarlo Caione	  If unsure, say N.
393ed80a13bSCarlo Caione
3941b66e94eSJonas Jensenconfig MMC_MOXART
3951b66e94eSJonas Jensen	tristate "MOXART SD/MMC Host Controller support"
3961b66e94eSJonas Jensen	depends on ARCH_MOXART && MMC
3971b66e94eSJonas Jensen	help
3981b66e94eSJonas Jensen	  This selects support for the MOXART SD/MMC Host Controller.
3991b66e94eSJonas Jensen	  MOXA provides one multi-functional card reader which can
4001b66e94eSJonas Jensen	  be found on some embedded hardware such as UC-7112-LX.
4011b66e94eSJonas Jensen	  If you have a controller with this interface, say Y here.
4021b66e94eSJonas Jensen
403f52d9c4fSPeter Griffinconfig MMC_SDHCI_ST
404f52d9c4fSPeter Griffin	tristate "SDHCI support on STMicroelectronics SoC"
4052feada5bSIvan Mikhaylov	depends on ARCH_STI || FSP2
406f52d9c4fSPeter Griffin	depends on MMC_SDHCI_PLTFM
407f52d9c4fSPeter Griffin	select MMC_SDHCI_IO_ACCESSORS
408f52d9c4fSPeter Griffin	help
409f52d9c4fSPeter Griffin	  This selects the Secure Digital Host Controller Interface in
410f52d9c4fSPeter Griffin	  STMicroelectronics SoCs.
411f52d9c4fSPeter Griffin
412f52d9c4fSPeter Griffin	  If you have a controller with this interface, say Y or M here.
413f52d9c4fSPeter Griffin	  If unsure, say N.
414f52d9c4fSPeter Griffin
4151c6a0718SPierre Ossmanconfig MMC_OMAP
4161c6a0718SPierre Ossman	tristate "TI OMAP Multimedia Card Interface support"
417790864dcSJan Engelhardt	depends on ARCH_OMAP
41860a549fcSArnd Bergmann	depends on TPS65010 || !MACH_OMAP_H2
4191c6a0718SPierre Ossman	help
4201c6a0718SPierre Ossman	  This selects the TI OMAP Multimedia card Interface.
4211c6a0718SPierre Ossman	  If you have an OMAP board with a Multimedia Card slot,
4221c6a0718SPierre Ossman	  say Y or M here.
4231c6a0718SPierre Ossman
4241c6a0718SPierre Ossman	  If unsure, say N.
4251c6a0718SPierre Ossman
426a45c6cb8SMadhusudhan Chikkatureconfig MMC_OMAP_HS
427a45c6cb8SMadhusudhan Chikkature	tristate "TI OMAP High Speed Multimedia Card Interface support"
428a7cedab6SLokesh Vutla	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
429a45c6cb8SMadhusudhan Chikkature	help
430a45c6cb8SMadhusudhan Chikkature	  This selects the TI OMAP High Speed Multimedia card Interface.
431bcf24e1dSAmarinder Bindra	  If you have an omap2plus board with a Multimedia Card slot,
432bcf24e1dSAmarinder Bindra	  say Y or M here.
433a45c6cb8SMadhusudhan Chikkature
434a45c6cb8SMadhusudhan Chikkature	  If unsure, say N.
435a45c6cb8SMadhusudhan Chikkature
4361c6a0718SPierre Ossmanconfig MMC_WBSD
4371c6a0718SPierre Ossman	tristate "Winbond W83L51xD SD/MMC Card Interface support"
438790864dcSJan Engelhardt	depends on ISA_DMA_API
4391c6a0718SPierre Ossman	help
4401c6a0718SPierre Ossman	  This selects the Winbond(R) W83L51xD Secure digital and
4411c6a0718SPierre Ossman	  Multimedia card Interface.
4421c6a0718SPierre Ossman	  If you have a machine with a integrated W83L518D or W83L519D
4431c6a0718SPierre Ossman	  SD/MMC card reader, say Y or M here.
4441c6a0718SPierre Ossman
4451c6a0718SPierre Ossman	  If unsure, say N.
4461c6a0718SPierre Ossman
447c5413ad8SOleksij Rempelconfig MMC_ALCOR
448c5413ad8SOleksij Rempel	tristate "Alcor Micro/Alcor Link SD/MMC controller"
449c5413ad8SOleksij Rempel	depends on MISC_ALCOR_PCI
450c5413ad8SOleksij Rempel	help
451c5413ad8SOleksij Rempel	  Say Y here to include driver code to support SD/MMC card interface
452c5413ad8SOleksij Rempel	  of Alcor Micro PCI-E card reader
453c5413ad8SOleksij Rempel
4541c6a0718SPierre Ossmanconfig MMC_AU1X
4551c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
45637663860SManuel Lauss	depends on MIPS_ALCHEMY
4571c6a0718SPierre Ossman	help
4581c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
4591c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
4601c6a0718SPierre Ossman
4611c6a0718SPierre Ossman	  If unsure, say N.
4621c6a0718SPierre Ossman
4637d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
464d6a20debSLudovic Desroches	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
465ef4b160fSAndy Shevchenko	depends on ARCH_AT91
4667d2be074SHaavard Skinnemoen	help
467ef4b160fSAndy Shevchenko	  This selects the Atmel Multimedia Card Interface driver.
468ef4b160fSAndy Shevchenko	  If you have an AT91 platform with a Multimedia Card slot,
469ef4b160fSAndy Shevchenko	  say Y or M here.
4707d2be074SHaavard Skinnemoen
4717d2be074SHaavard Skinnemoen	  If unsure, say N.
4727d2be074SHaavard Skinnemoen
4730eb0d9f4SGeorgi Djakovconfig MMC_SDHCI_MSM
4740eb0d9f4SGeorgi Djakov	tristate "Qualcomm SDHCI Controller Support"
4756096d7a8SGeorgi Djakov	depends on ARCH_QCOM || (ARM && COMPILE_TEST)
4760eb0d9f4SGeorgi Djakov	depends on MMC_SDHCI_PLTFM
47799d570daSVijay Viswanath	select MMC_SDHCI_IO_ACCESSORS
4780eb0d9f4SGeorgi Djakov	help
4790eb0d9f4SGeorgi Djakov	  This selects the Secure Digital Host Controller Interface (SDHCI)
4800eb0d9f4SGeorgi Djakov	  support present in Qualcomm SOCs. The controller supports
4810eb0d9f4SGeorgi Djakov	  SD/MMC/SDIO devices.
4820eb0d9f4SGeorgi Djakov
4830eb0d9f4SGeorgi Djakov	  If you have a controller with this interface, say Y or M here.
4840eb0d9f4SGeorgi Djakov
4850eb0d9f4SGeorgi Djakov	  If unsure, say N.
4860eb0d9f4SGeorgi Djakov
487d96be879SSascha Hauerconfig MMC_MXC
488c7ceab02SAnatolij Gustschin	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
489c7ceab02SAnatolij Gustschin	depends on ARCH_MXC || PPC_MPC512x
490d96be879SSascha Hauer	help
491c7ceab02SAnatolij Gustschin	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
492c7ceab02SAnatolij Gustschin	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
493c7ceab02SAnatolij Gustschin	  with a Multimedia Card slot, say Y or M here.
494d96be879SSascha Hauer
495d96be879SSascha Hauer	  If unsure, say N.
496d96be879SSascha Hauer
497e4243f13SShawn Guoconfig MMC_MXS
498e4243f13SShawn Guo	tristate "Freescale MXS Multimedia Card Interface support"
499e4243f13SShawn Guo	depends on ARCH_MXS && MXS_DMA
500e4243f13SShawn Guo	help
501e4243f13SShawn Guo	  This selects the Freescale SSP MMC controller found on MXS based
502e4243f13SShawn Guo	  platforms like mx23/28.
503e4243f13SShawn Guo
504e4243f13SShawn Guo	  If unsure, say N.
505e4243f13SShawn Guo
5061c6a0718SPierre Ossmanconfig MMC_TIFM_SD
50786147c84SKees Cook	tristate "TI Flash Media MMC/SD Interface support"
50886147c84SKees Cook	depends on PCI
5091c6a0718SPierre Ossman	select TIFM_CORE
5101c6a0718SPierre Ossman	help
5111c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
5121c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
5131c6a0718SPierre Ossman	  laptops.
5141c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
5151c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
5161c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
5171c6a0718SPierre Ossman	  (TIFM_7XX1)'.
5181c6a0718SPierre Ossman
5191c6a0718SPierre Ossman	  To compile this driver as a module, choose M here: the
5201c6a0718SPierre Ossman	  module will be called tifm_sd.
5211c6a0718SPierre Ossman
522236caa7cSMaen Suleimanconfig MMC_MVSDIO
523236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
524236caa7cSMaen Suleiman	depends on PLAT_ORION
52517da6783SLinus Walleij	depends on OF
526236caa7cSMaen Suleiman	---help---
527236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
528236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
529236caa7cSMaen Suleiman	  SoC controllers.
530236caa7cSMaen Suleiman
531236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
532236caa7cSMaen Suleiman	  module will be called mvsdio.
533236caa7cSMaen Suleiman
534b4cff454SVipin Bhandariconfig MMC_DAVINCI
535b4cff454SVipin Bhandari	tristate "TI DAVINCI Multimedia Card Interface support"
536b4cff454SVipin Bhandari	depends on ARCH_DAVINCI
537b4cff454SVipin Bhandari	help
538b4cff454SVipin Bhandari	  This selects the TI DAVINCI Multimedia card Interface.
539b4cff454SVipin Bhandari	  If you have an DAVINCI board with a Multimedia Card slot,
540b4cff454SVipin Bhandari	  say Y or M here.  If unsure, say N.
541b4cff454SVipin Bhandari
54285c34d2eSMike Lockwoodconfig MMC_GOLDFISH
54385c34d2eSMike Lockwood	tristate "goldfish qemu Multimedia Card Interface support"
5447f8a9a7eSLuis de Bethencourt	depends on GOLDFISH || COMPILE_TEST
54585c34d2eSMike Lockwood	help
54685c34d2eSMike Lockwood	  This selects the Goldfish Multimedia card Interface emulation
54785c34d2eSMike Lockwood	  found on the Goldfish Android virtual device emulation.
54885c34d2eSMike Lockwood
54915a0580cSDavid Brownellconfig MMC_SPI
55057105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
551e176c255SIan Molton	depends on SPI_MASTER && HAS_DMA
55215a0580cSDavid Brownell	select CRC7
55315a0580cSDavid Brownell	select CRC_ITU_T
55415a0580cSDavid Brownell	help
555692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
55657105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
55757105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
55857105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
55957105737SPierre Ossman	  controllers.
56015a0580cSDavid Brownell
56115a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
56215a0580cSDavid Brownell
563be518018SThomas Kleffelconfig MMC_S3C
564be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
565b130d5c2SKukjin Kim	depends on ARCH_S3C24XX
566b45e4b50SVasily Khoruzhick	depends on S3C24XX_DMAC
567be518018SThomas Kleffel	help
568be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
569be518018SThomas Kleffel	  Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
570be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
571be518018SThomas Kleffel	  slot, say Y or M here.
572be518018SThomas Kleffel
573be518018SThomas Kleffel	  If unsure, say N.
574be518018SThomas Kleffel
5755a2c4fe0SBen Dooksconfig MMC_S3C_HW_SDIO_IRQ
5765a2c4fe0SBen Dooks	bool "Hardware support for SDIO IRQ"
5775a2c4fe0SBen Dooks	depends on MMC_S3C
5785a2c4fe0SBen Dooks	help
5795a2c4fe0SBen Dooks	  Enable the hardware support for SDIO interrupts instead of using
5805a2c4fe0SBen Dooks	  the generic polling code.
5815a2c4fe0SBen Dooks
58226f14947SBen Dookschoice
58326f14947SBen Dooks	prompt "Samsung S3C SD/MMC transfer code"
58426f14947SBen Dooks	depends on MMC_S3C
58526f14947SBen Dooks
58626f14947SBen Dooksconfig MMC_S3C_PIO
58726f14947SBen Dooks	bool "Use PIO transfers only"
58826f14947SBen Dooks	help
58926f14947SBen Dooks	  Use PIO to transfer data between memory and the hardware.
59026f14947SBen Dooks
59126f14947SBen Dooks	  PIO is slower than DMA as it requires CPU instructions to
59226f14947SBen Dooks	  move the data. This has been the traditional default for
59326f14947SBen Dooks	  the S3C MCI driver.
59426f14947SBen Dooks
59526f14947SBen Dooksconfig MMC_S3C_DMA
59686147c84SKees Cook	bool "Use DMA transfers only"
59726f14947SBen Dooks	help
59826f14947SBen Dooks	  Use DMA to transfer data between memory and the hardare.
59926f14947SBen Dooks
60026f14947SBen Dooks	  Currently, the DMA support in this driver seems to not be
60126f14947SBen Dooks	  working properly and needs to be debugged before this
60226f14947SBen Dooks	  option is useful.
60326f14947SBen Dooks
60426f14947SBen Dooksendchoice
60526f14947SBen Dooks
6066a36913aSSascha Sommerconfig MMC_SDRICOH_CS
60786147c84SKees Cook	tristate "MMC/SD driver for Ricoh Bay1Controllers"
60886147c84SKees Cook	depends on PCI && PCMCIA
6096a36913aSSascha Sommer	help
6106a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
6116a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
6126a36913aSSascha Sommer
6136a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
6146a36913aSSascha Sommer	  module will be called sdricoh_cs.
6156a36913aSSascha Sommer
616fb8bd90fSChunyan Zhangconfig MMC_SDHCI_SPRD
617fb8bd90fSChunyan Zhang	tristate "Spreadtrum SDIO host Controller"
618fb8bd90fSChunyan Zhang	depends on ARCH_SPRD
619fb8bd90fSChunyan Zhang	depends on MMC_SDHCI_PLTFM
620fb8bd90fSChunyan Zhang	select MMC_SDHCI_IO_ACCESSORS
621fb8bd90fSChunyan Zhang	help
622fb8bd90fSChunyan Zhang	  This selects the SDIO Host Controller in Spreadtrum
623fb8bd90fSChunyan Zhang	  SoCs, this driver supports R11(IP version: R11P0).
624fb8bd90fSChunyan Zhang
625fb8bd90fSChunyan Zhang	  If you have a controller with this interface, say Y or M here.
626fb8bd90fSChunyan Zhang
627fb8bd90fSChunyan Zhang	  If unsure, say N.
628fb8bd90fSChunyan Zhang
629b6147490SGuennadi Liakhovetskiconfig MMC_TMIO_CORE
630b6147490SGuennadi Liakhovetski	tristate
631b6147490SGuennadi Liakhovetski
6324a48998fSIan Moltonconfig MMC_TMIO
6334a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
63442051e8aSGuennadi Liakhovetski	depends on MFD_TMIO || MFD_ASIC3
635b6147490SGuennadi Liakhovetski	select MMC_TMIO_CORE
6364a48998fSIan Molton	help
6374a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
638e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
6395f5bac82SMichał Mirosław
64042051e8aSGuennadi Liakhovetskiconfig MMC_SDHI
641b5b6a5f4SSimon Horman	tristate "Renesas SDHI SD/SDIO controller support"
64249312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
64342051e8aSGuennadi Liakhovetski	select MMC_TMIO_CORE
64442051e8aSGuennadi Liakhovetski	help
64542051e8aSGuennadi Liakhovetski	  This provides support for the SDHI SD/SDIO controller found in
646b5b6a5f4SSimon Horman	  Renesas SuperH, ARM and ARM64 based SoCs
64742051e8aSGuennadi Liakhovetski
6482a68ea78SSimon Hormanconfig MMC_SDHI_SYS_DMAC
6492a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
6501d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
651c813e10aSMasahiro Yamada	default MMC_SDHI if (SUPERH || ARM)
6522a68ea78SSimon Horman	help
6532a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6542a68ea78SSimon Horman	  using SYS-DMAC via DMA Engine. This supports the controllers
6552a68ea78SSimon Horman	  found in SuperH and Renesas ARM based SoCs.
6562a68ea78SSimon Horman
6572a68ea78SSimon Hormanconfig MMC_SDHI_INTERNAL_DMAC
6582a68ea78SSimon Horman	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
6599706b472SChris Brandt	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
6601d6efe08SGeert Uytterhoeven	depends on MMC_SDHI
6619706b472SChris Brandt	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
6622a68ea78SSimon Horman	help
6632a68ea78SSimon Horman	  This provides DMA support for SDHI SD/SDIO controllers
6642a68ea78SSimon Horman	  using on-chip bus mastering. This supports the controllers
6659706b472SChris Brandt	  found in arm64 based SoCs. This controller is also found in
6669706b472SChris Brandt	  some RZ family SoCs.
6672a68ea78SSimon Horman
6683fd784f7SMasahiro Yamadaconfig MMC_UNIPHIER
6693fd784f7SMasahiro Yamada	tristate "UniPhier SD/eMMC Host Controller support"
6703fd784f7SMasahiro Yamada	depends on ARCH_UNIPHIER || COMPILE_TEST
6713fd784f7SMasahiro Yamada	depends on OF
6723fd784f7SMasahiro Yamada	select MMC_TMIO_CORE
6733fd784f7SMasahiro Yamada	help
6743fd784f7SMasahiro Yamada	  This provides support for the SD/eMMC controller found in
6753fd784f7SMasahiro Yamada	  UniPhier SoCs. The eMMC variant of this controller is used
6763fd784f7SMasahiro Yamada	  only for 32-bit SoCs.
6773fd784f7SMasahiro Yamada
6785f5bac82SMichał Mirosławconfig MMC_CB710
6795f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
6800244ad00SMartin Schwidefsky	depends on PCI
6815f5bac82SMichał Mirosław	select CB710_CORE
6825f5bac82SMichał Mirosław	help
6835f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
6845f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
6855f5bac82SMichał Mirosław	  HP Compaq nx9500).
6865f5bac82SMichał Mirosław
6875f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
6885f5bac82SMichał Mirosław	  will be called cb710-mmc.
6895f5bac82SMichał Mirosław
690f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
691f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
692f0bf7f61SHarald Welte	depends on PCI
693f0bf7f61SHarald Welte	help
694f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
695f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
696f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
697f0bf7f61SHarald Welte	  SD/MMC/SDHC.
698f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
699f0bf7f61SHarald Welte
700f0bf7f61SHarald Welte	  If unsure, say N.
701eb962d5bSCliff Cai
70201d95843SSteven J. Hillconfig MMC_CAVIUM_OCTEON
70301d95843SSteven J. Hill	tristate "Cavium OCTEON SD/MMC Card Interface support"
70401d95843SSteven J. Hill	depends on CAVIUM_OCTEON_SOC
70501d95843SSteven J. Hill	help
70601d95843SSteven J. Hill	  This selects Cavium OCTEON SD/MMC card Interface.
70701d95843SSteven J. Hill	  If you have an OCTEON board with a Multimedia Card slot,
70801d95843SSteven J. Hill	  say Y or M here.
70901d95843SSteven J. Hill
71001d95843SSteven J. Hill	  If unsure, say N.
71101d95843SSteven J. Hill
712166bac38SJan Glauberconfig MMC_CAVIUM_THUNDERX
713166bac38SJan Glauber	tristate "Cavium ThunderX SD/MMC Card Interface support"
714166bac38SJan Glauber	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
71562467bbbSJan Glauber	depends on GPIO_THUNDERX
716166bac38SJan Glauber	depends on OF_ADDRESS
717166bac38SJan Glauber	help
718166bac38SJan Glauber	  This selects Cavium ThunderX SD/MMC Card Interface.
719166bac38SJan Glauber	  If you have an Cavium ARM64 board with a Multimedia Card slot
720166bac38SJan Glauber	  or builtin eMMC chip say Y or M here. If built as a module
721166bac38SJan Glauber	  the module will be called thunderx_mmc.ko.
722166bac38SJan Glauber
723f95f3850SWill Newtonconfig MMC_DW
724f95f3850SWill Newton	tristate "Synopsys DesignWare Memory Card Interface"
725c34346b2SAlim Akhtar	depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
726f95f3850SWill Newton	help
727f95f3850SWill Newton	  This selects support for the Synopsys DesignWare Mobile Storage IP
728f95f3850SWill Newton	  block, this provides host support for SD and MMC interfaces, in both
7293fc7eaefSShawn Lin	  PIO, internal DMA mode and external DMA mode.
730f95f3850SWill Newton
73162ca8034SShashidhar Hiremathconfig MMC_DW_PLTFM
73262ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI Support as platform device"
73362ca8034SShashidhar Hiremath	depends on MMC_DW
73462ca8034SShashidhar Hiremath	default y
73562ca8034SShashidhar Hiremath	help
73662ca8034SShashidhar Hiremath	  This selects the common helper functions support for Host Controller
73762ca8034SShashidhar Hiremath	  Interface based platform driver. Please select this option if the IP
73862ca8034SShashidhar Hiremath	  is present as a platform device. This is the common interface for the
73962ca8034SShashidhar Hiremath	  Synopsys Designware IP.
74062ca8034SShashidhar Hiremath
74162ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
74262ca8034SShashidhar Hiremath
74362ca8034SShashidhar Hiremath	  If unsure, say Y.
74462ca8034SShashidhar Hiremath
74586958dccSLiming Sunconfig MMC_DW_BLUEFIELD
74686958dccSLiming Sun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
74786958dccSLiming Sun	depends on MMC_DW
74886958dccSLiming Sun	select MMC_DW_PLTFM
74986958dccSLiming Sun	help
75086958dccSLiming Sun	  This selects support for Mellanox BlueField SoC specific extensions to
75186958dccSLiming Sun	  the Synopsys DesignWare Memory Card Interface driver. Select this
75286958dccSLiming Sun	  option for platforms based on Mellanox BlueField SoC's.
75386958dccSLiming Sun
754c3665006SThomas Abrahamconfig MMC_DW_EXYNOS
755e41e85ccSMasanari Iida	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
756c3665006SThomas Abraham	depends on MMC_DW
757c3665006SThomas Abraham	select MMC_DW_PLTFM
758c3665006SThomas Abraham	help
759c3665006SThomas Abraham	  This selects support for Samsung Exynos SoC specific extensions to the
760c3665006SThomas Abraham	  Synopsys DesignWare Memory Card Interface driver. Select this option
761c3665006SThomas Abraham	  for platforms based on Exynos4 and Exynos5 SoC's.
762c3665006SThomas Abraham
763e382ab74Stianshuliangconfig MMC_DW_HI3798CV200
764e382ab74Stianshuliang	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
765e382ab74Stianshuliang	depends on MMC_DW
766e382ab74Stianshuliang	select MMC_DW_PLTFM
767e382ab74Stianshuliang	help
768e382ab74Stianshuliang	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
769e382ab74Stianshuliang	  Synopsys DesignWare Memory Card Interface driver. Select this option
770e382ab74Stianshuliang	  for platforms based on HiSilicon Hi3798CV200 SoC.
771e382ab74Stianshuliang
772036f29d5SZhangfei Gaoconfig MMC_DW_K3
773036f29d5SZhangfei Gao	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
774036f29d5SZhangfei Gao	depends on MMC_DW
775036f29d5SZhangfei Gao	select MMC_DW_PLTFM
776036f29d5SZhangfei Gao	help
777036f29d5SZhangfei Gao	  This selects support for Hisilicon K3 SoC specific extensions to the
778036f29d5SZhangfei Gao	  Synopsys DesignWare Memory Card Interface driver. Select this option
779036f29d5SZhangfei Gao	  for platforms based on Hisilicon K3 SoC's.
780036f29d5SZhangfei Gao
78162ca8034SShashidhar Hiremathconfig MMC_DW_PCI
78262ca8034SShashidhar Hiremath	tristate "Synopsys Designware MCI support on PCI bus"
78362ca8034SShashidhar Hiremath	depends on MMC_DW && PCI
78462ca8034SShashidhar Hiremath	help
78562ca8034SShashidhar Hiremath	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
78662ca8034SShashidhar Hiremath	  Select this option if the IP is present on PCI platform.
78762ca8034SShashidhar Hiremath
78862ca8034SShashidhar Hiremath	  If you have a controller with this interface, say Y or M here.
78962ca8034SShashidhar Hiremath
79062ca8034SShashidhar Hiremath	  If unsure, say N.
79162ca8034SShashidhar Hiremath
7924cdc2ec1Saddy keconfig MMC_DW_ROCKCHIP
7934cdc2ec1Saddy ke	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
7944cdc2ec1Saddy ke	depends on MMC_DW && ARCH_ROCKCHIP
7954cdc2ec1Saddy ke	select MMC_DW_PLTFM
7964cdc2ec1Saddy ke	help
7974cdc2ec1Saddy ke	  This selects support for Rockchip SoC specific extensions to the
7984cdc2ec1Saddy ke	  Synopsys DesignWare Memory Card Interface driver. Select this option
7994cdc2ec1Saddy ke	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
8004cdc2ec1Saddy ke
801a8c643adSJun Nieconfig MMC_DW_ZX
802a8c643adSJun Nie	tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
803a8c643adSJun Nie	depends on MMC_DW && ARCH_ZX
804a8c643adSJun Nie	select MMC_DW_PLTFM
805a8c643adSJun Nie	help
806a8c643adSJun Nie	  This selects support for ZTE SoC specific extensions to the
807a8c643adSJun Nie	  Synopsys DesignWare Memory Card Interface driver. Select this option
808a8c643adSJun Nie	  for platforms based on ZX296718 SoC's.
809a8c643adSJun Nie
810fdc50a94SYusuke Godaconfig MMC_SH_MMCIF
811fdc50a94SYusuke Goda	tristate "SuperH Internal MMCIF support"
81249312c1fSSimon Horman	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
813fdc50a94SYusuke Goda	help
814ba9e9157SWolfram Sang	  This selects the MMC Host Interface controller (MMCIF) found in various
815ba9e9157SWolfram Sang	  Renesas SoCs for SH and ARM architectures.
816fdc50a94SYusuke Goda
81761bfbdb8SLars-Peter Clausen
81861bfbdb8SLars-Peter Clausenconfig MMC_JZ4740
8196a78768aSAlex Smith	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
820685bc885SPaul Cercueil	depends on MIPS
82161bfbdb8SLars-Peter Clausen	help
8226a78768aSAlex Smith	  This selects support for the SD/MMC controller on Ingenic
8236a78768aSAlex Smith	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
8246a78768aSAlex Smith
82561bfbdb8SLars-Peter Clausen	  If you have a board based on such a SoC and with a SD/MMC slot,
82661bfbdb8SLars-Peter Clausen	  say Y or M here.
82753f3a9e2SDavid Vrabel
82888095e7bSTony Olechconfig MMC_VUB300
82988095e7bSTony Olech	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
83088095e7bSTony Olech	depends on USB
83188095e7bSTony Olech	help
83288095e7bSTony Olech	  This selects support for Elan Digital Systems' VUB300 chip.
83388095e7bSTony Olech
83488095e7bSTony Olech	  The VUB300 is a USB-SDIO Host Controller Interface chip
83588095e7bSTony Olech	  that enables the host computer to use SDIO/SD/MMC cards
83688095e7bSTony Olech	  via a USB 2.0 or USB 1.1 host.
83788095e7bSTony Olech
83888095e7bSTony Olech	  The VUB300 chip will be found in both physically separate
83988095e7bSTony Olech	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
84088095e7bSTony Olech
84188095e7bSTony Olech	  The VUB300 chip supports SD and MMC memory cards in addition
84288095e7bSTony Olech	  to single and multifunction SDIO cards.
84388095e7bSTony Olech
84488095e7bSTony Olech	  Some SDIO cards will need a firmware file to be loaded and
84588095e7bSTony Olech	  sent to VUB300 chip in order to achieve better data throughput.
84688095e7bSTony Olech	  Download these "Offload Pseudocode" from Elan Digital Systems'
84788095e7bSTony Olech	  web-site http://www.elandigitalsystems.com/support/downloads.php
84888095e7bSTony Olech	  and put them in /lib/firmware. Note that without these additional
84988095e7bSTony Olech	  firmware files the VUB300 chip will still function, but not at
85088095e7bSTony Olech	  the best obtainable data rate.
85188095e7bSTony Olech
85288095e7bSTony Olech	  To compile this mmc host controller driver as a module,
85388095e7bSTony Olech	  choose M here: the module will be called vub300.
85488095e7bSTony Olech
85588095e7bSTony Olech	  If you have a computer with an embedded VUB300 chip
85688095e7bSTony Olech	  or if you intend connecting a USB adapter based on a
85788095e7bSTony Olech	  VUB300 chip say Y or M here.
85888095e7bSTony Olech
85953f3a9e2SDavid Vrabelconfig MMC_USHC
86053f3a9e2SDavid Vrabel	tristate "USB SD Host Controller (USHC) support"
86153f3a9e2SDavid Vrabel	depends on USB
86253f3a9e2SDavid Vrabel	help
86353f3a9e2SDavid Vrabel	  This selects support for USB SD Host Controllers based on
86453f3a9e2SDavid Vrabel	  the Cypress Astoria chip with firmware compliant with CSR's
86553f3a9e2SDavid Vrabel	  USB SD Host Controller specification (CS-118793-SP).
86653f3a9e2SDavid Vrabel
86753f3a9e2SDavid Vrabel	  CSR boards with this device include: USB<>SDIO (M1985v2),
86853f3a9e2SDavid Vrabel	  and Ultrasira.
86953f3a9e2SDavid Vrabel
87053f3a9e2SDavid Vrabel	  Note: These controllers only support SDIO cards and do not
87153f3a9e2SDavid Vrabel	  support MMC or SD memory cards.
8723a96dff0STony Prisk
8733a96dff0STony Priskconfig MMC_WMT
8743a96dff0STony Prisk	tristate "Wondermedia SD/MMC Host Controller support"
8753a96dff0STony Prisk	depends on ARCH_VT8500
8763a96dff0STony Prisk	default y
8773a96dff0STony Prisk	help
8783a96dff0STony Prisk	  This selects support for the SD/MMC Host Controller on
8793a96dff0STony Prisk	  Wondermedia WM8505/WM8650 based SoCs.
8803a96dff0STony Prisk
8813a96dff0STony Prisk	  To compile this driver as a module, choose M here: the
8823a96dff0STony Prisk	  module will be called wmt-sdmmc.
8836a5971d8SLinus Torvalds
88475fa9ea6SGuennadi Liakhovetskiconfig MMC_USDHI6ROL0
88575fa9ea6SGuennadi Liakhovetski	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
8861ef94740SGeert Uytterhoeven	depends on HAS_DMA
88775fa9ea6SGuennadi Liakhovetski	help
88875fa9ea6SGuennadi Liakhovetski	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
88975fa9ea6SGuennadi Liakhovetski	  Host Controller
89075fa9ea6SGuennadi Liakhovetski
8912c94b645SWei WANGconfig MMC_REALTEK_PCI
8922c94b645SWei WANG	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
893e455b69dSRui Feng	depends on MISC_RTSX_PCI
8942c94b645SWei WANG	help
8952c94b645SWei WANG	  Say Y here to include driver code to support SD/MMC card interface
8962c94b645SWei WANG	  of Realtek PCI-E card reader
897c7f6558dSRoger Tseng
898c7f6558dSRoger Tsengconfig MMC_REALTEK_USB
899c7f6558dSRoger Tseng	tristate "Realtek USB SD/MMC Card Interface Driver"
900e455b69dSRui Feng	depends on MISC_RTSX_USB
901c7f6558dSRoger Tseng	help
902c7f6558dSRoger Tseng	  Say Y here to include driver code to support SD/MMC card interface
903c7f6558dSRoger Tseng	  of Realtek RTS5129/39 series card reader
90419b7f796SDavid Lanzendörfer
90519b7f796SDavid Lanzendörferconfig MMC_SUNXI
90619b7f796SDavid Lanzendörfer	tristate "Allwinner sunxi SD/MMC Host Controller support"
90719b7f796SDavid Lanzendörfer	depends on ARCH_SUNXI
90819b7f796SDavid Lanzendörfer	help
90919b7f796SDavid Lanzendörfer	  This selects support for the SD/MMC Host Controller on
91019b7f796SDavid Lanzendörfer	  Allwinner sunxi SoCs.
911a5eb8bbdSOndrej Zary
912a4080225SVenkat Gopalakrishnanconfig MMC_CQHCI
913a4080225SVenkat Gopalakrishnan	tristate "Command Queue Host Controller Interface support"
914a4080225SVenkat Gopalakrishnan	depends on HAS_DMA
915a4080225SVenkat Gopalakrishnan	help
916a4080225SVenkat Gopalakrishnan	  This selects the Command Queue Host Controller Interface (CQHCI)
917a4080225SVenkat Gopalakrishnan	  support present in host controllers of Qualcomm Technologies, Inc
918a4080225SVenkat Gopalakrishnan	  amongst others.
919a4080225SVenkat Gopalakrishnan	  This controller supports eMMC devices with command queue support.
920a4080225SVenkat Gopalakrishnan
921a4080225SVenkat Gopalakrishnan	  If you have a controller with this interface, say Y or M here.
922a4080225SVenkat Gopalakrishnan
923a4080225SVenkat Gopalakrishnan	  If unsure, say N.
924a4080225SVenkat Gopalakrishnan
925a5eb8bbdSOndrej Zaryconfig MMC_TOSHIBA_PCI
926a5eb8bbdSOndrej Zary	tristate "Toshiba Type A SD/MMC Card Interface Driver"
927a5eb8bbdSOndrej Zary	depends on PCI
92820848903SChaotian Jing
929660fc733SEric Anholtconfig MMC_BCM2835
930660fc733SEric Anholt	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
931660fc733SEric Anholt	depends on ARCH_BCM2835 || COMPILE_TEST
932660fc733SEric Anholt	help
933660fc733SEric Anholt	  This selects the BCM2835 SDHOST MMC controller. If you have
934660fc733SEric Anholt	  a BCM2835 platform with SD or MMC devices, say Y or M here.
935660fc733SEric Anholt
936660fc733SEric Anholt	  Note that the BCM2835 has two SD controllers: The Arasan
937660fc733SEric Anholt	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
938660fc733SEric Anholt	  sdhost controller (supported by this driver).
939660fc733SEric Anholt
940660fc733SEric Anholt	  If unsure, say N.
941660fc733SEric Anholt
94220848903SChaotian Jingconfig MMC_MTK
94320848903SChaotian Jing	tristate "MediaTek SD/MMC Card Interface support"
944c2b22fffSGeert Uytterhoeven	depends on HAS_DMA
94526c2b19eSNeilBrown	select REGULATOR
94620848903SChaotian Jing	help
94720848903SChaotian Jing	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
94820848903SChaotian Jing	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
94920848903SChaotian Jing	  This is needed if support for any SD/SDIO/MMC devices is required.
95020848903SChaotian Jing	  If unsure, say N.
9515d9460d7SAndrei Pistirica
9525d9460d7SAndrei Pistiricaconfig MMC_SDHCI_MICROCHIP_PIC32
9535d9460d7SAndrei Pistirica	tristate "Microchip PIC32MZDA SDHCI support"
9545d9460d7SAndrei Pistirica	depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
9555d9460d7SAndrei Pistirica	help
9565d9460d7SAndrei Pistirica	  This selects the Secure Digital Host Controller Interface (SDHCI)
9575d9460d7SAndrei Pistirica	  for PIC32MZDA platform.
9585d9460d7SAndrei Pistirica
9595d9460d7SAndrei Pistirica	  If you have a controller with this interface, say Y or M here.
9605d9460d7SAndrei Pistirica
9615d9460d7SAndrei Pistirica	  If unsure, say N.
9626f549034SEnrico Weigelt, metux IT consult
963476bf3d6SAl Cooperconfig MMC_SDHCI_BRCMSTB
964476bf3d6SAl Cooper	tristate "Broadcom SDIO/SD/MMC support"
965476bf3d6SAl Cooper	depends on ARCH_BRCMSTB || BMIPS_GENERIC
966476bf3d6SAl Cooper	depends on MMC_SDHCI_PLTFM
967476bf3d6SAl Cooper	default y
968476bf3d6SAl Cooper	help
969476bf3d6SAl Cooper	  This selects support for the SDIO/SD/MMC Host Controller on
970476bf3d6SAl Cooper	  Broadcom STB SoCs.
971476bf3d6SAl Cooper
972476bf3d6SAl Cooper	  If unsure, say Y.
9733a3748dbSHu Ziji
9743a3748dbSHu Zijiconfig MMC_SDHCI_XENON
9753a3748dbSHu Ziji	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
9763a3748dbSHu Ziji	depends on MMC_SDHCI_PLTFM
9773a3748dbSHu Ziji	help
9783a3748dbSHu Ziji	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
9793a3748dbSHu Ziji	  If you have a controller with this interface, say Y or M here.
9803a3748dbSHu Ziji	  If unsure, say N.
9817d326930SKishon Vijay Abraham I
9827d326930SKishon Vijay Abraham Iconfig MMC_SDHCI_OMAP
9837d326930SKishon Vijay Abraham I	tristate "TI SDHCI Controller Support"
9847d326930SKishon Vijay Abraham I	depends on MMC_SDHCI_PLTFM && OF
985961de0a8SFaiz Abbas	select THERMAL
986287b1da6SFaiz Abbas	imply TI_SOC_THERMAL
9877d326930SKishon Vijay Abraham I	help
9887d326930SKishon Vijay Abraham I	  This selects the Secure Digital Host Controller Interface (SDHCI)
9897d326930SKishon Vijay Abraham I	  support present in TI's DRA7 SOCs. The controller supports
9907d326930SKishon Vijay Abraham I	  SD/MMC/SDIO devices.
9917d326930SKishon Vijay Abraham I
9927d326930SKishon Vijay Abraham I	  If you have a controller with this interface, say Y or M here.
9937d326930SKishon Vijay Abraham I
9947d326930SKishon Vijay Abraham I	  If unsure, say N.
99541fd4caeSFaiz Abbas
99641fd4caeSFaiz Abbasconfig MMC_SDHCI_AM654
99741fd4caeSFaiz Abbas	tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
99841fd4caeSFaiz Abbas	depends on MMC_SDHCI_PLTFM && OF
999e374e875SFaiz Abbas	select MMC_SDHCI_IO_ACCESSORS
100041fd4caeSFaiz Abbas	help
100141fd4caeSFaiz Abbas	  This selects the Secure Digital Host Controller Interface (SDHCI)
100241fd4caeSFaiz Abbas	  support present in TI's AM654 SOCs. The controller supports
100341fd4caeSFaiz Abbas	  SD/MMC/SDIO devices.
100441fd4caeSFaiz Abbas
100541fd4caeSFaiz Abbas	  If you have a controller with this interface, say Y or M here.
100641fd4caeSFaiz Abbas
100741fd4caeSFaiz Abbas	  If unsure, say N.
1008