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