xref: /openbmc/linux/drivers/mmc/host/Kconfig (revision 04d699c3)
11c6a0718SPierre Ossman#
21c6a0718SPierre Ossman# MMC/SD host controller drivers
31c6a0718SPierre Ossman#
41c6a0718SPierre Ossman
557105737SPierre Ossmancomment "MMC/SD/SDIO Host Controller Drivers"
61c6a0718SPierre Ossman
71c6a0718SPierre Ossmanconfig MMC_ARMMMCI
81c6a0718SPierre Ossman	tristate "ARM AMBA Multimedia Card Interface support"
9790864dcSJan Engelhardt	depends on ARM_AMBA
101c6a0718SPierre Ossman	help
111c6a0718SPierre Ossman	  This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
121c6a0718SPierre Ossman	  Interface (PL180 and PL181) support.  If you have an ARM(R)
131c6a0718SPierre Ossman	  platform with a Multimedia Card slot, say Y or M here.
141c6a0718SPierre Ossman
151c6a0718SPierre Ossman	  If unsure, say N.
161c6a0718SPierre Ossman
171c6a0718SPierre Ossmanconfig MMC_PXA
181c6a0718SPierre Ossman	tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
19790864dcSJan Engelhardt	depends on ARCH_PXA
201c6a0718SPierre Ossman	help
211c6a0718SPierre Ossman	  This selects the Intel(R) PXA(R) Multimedia card Interface.
221c6a0718SPierre Ossman	  If you have a PXA(R) platform with a Multimedia Card slot,
231c6a0718SPierre Ossman	  say Y or M here.
241c6a0718SPierre Ossman
251c6a0718SPierre Ossman	  If unsure, say N.
261c6a0718SPierre Ossman
271c6a0718SPierre Ossmanconfig MMC_SDHCI
2834671dc2SPierre Ossman	tristate "Secure Digital Host Controller Interface support"
29b8c86fc5SPierre Ossman	depends on HAS_DMA
301c6a0718SPierre Ossman	help
31b8c86fc5SPierre Ossman	  This selects the generic Secure Digital Host Controller Interface.
321c6a0718SPierre Ossman	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
331c6a0718SPierre Ossman	  and Toshiba(R). Most controllers found in laptops are of this type.
34b8c86fc5SPierre Ossman
35b8c86fc5SPierre Ossman	  If you have a controller with this interface, say Y or M here. You
36b8c86fc5SPierre Ossman	  also need to enable an appropriate bus interface.
37b8c86fc5SPierre Ossman
38b8c86fc5SPierre Ossman	  If unsure, say N.
39b8c86fc5SPierre Ossman
404e4141a5SAnton Vorontsovconfig MMC_SDHCI_IO_ACCESSORS
414e4141a5SAnton Vorontsov	bool
424e4141a5SAnton Vorontsov	depends on MMC_SDHCI
434e4141a5SAnton Vorontsov	help
444e4141a5SAnton Vorontsov	  This is silent Kconfig symbol that is selected by the drivers that
454e4141a5SAnton Vorontsov	  need to overwrite SDHCI IO memory accessors.
464e4141a5SAnton Vorontsov
47b8c86fc5SPierre Ossmanconfig MMC_SDHCI_PCI
48b8c86fc5SPierre Ossman	tristate "SDHCI support on PCI bus"
49b8c86fc5SPierre Ossman	depends on MMC_SDHCI && PCI
50b8c86fc5SPierre Ossman	help
51b8c86fc5SPierre Ossman	  This selects the PCI Secure Digital Host Controller Interface.
52b8c86fc5SPierre Ossman	  Most controllers found today are PCI devices.
53b8c86fc5SPierre Ossman
541c6a0718SPierre Ossman	  If you have a controller with this interface, say Y or M here.
551c6a0718SPierre Ossman
561c6a0718SPierre Ossman	  If unsure, say N.
571c6a0718SPierre Ossman
585ae70296SPhilip Langdaleconfig MMC_RICOH_MMC
595ae70296SPhilip Langdale	tristate "Ricoh MMC Controller Disabler  (EXPERIMENTAL)"
60b8c86fc5SPierre Ossman	depends on MMC_SDHCI_PCI
615ae70296SPhilip Langdale	help
625ae70296SPhilip Langdale	  This selects the disabler for the Ricoh MMC Controller. This
635ae70296SPhilip Langdale	  proprietary controller is unnecessary because the SDHCI driver
645ae70296SPhilip Langdale	  supports MMC cards on the SD controller, but if it is not
655ae70296SPhilip Langdale	  disabled, it will steal the MMC cards away - rendering them
665ae70296SPhilip Langdale	  useless. It is safe to select this driver even if you don't
675ae70296SPhilip Langdale	  have a Ricoh based card reader.
685ae70296SPhilip Langdale
695ae70296SPhilip Langdale
705ae70296SPhilip Langdale	  To compile this driver as a module, choose M here:
715ae70296SPhilip Langdale	  the module will be called ricoh_mmc.
725ae70296SPhilip Langdale
735ae70296SPhilip Langdale	  If unsure, say Y.
745ae70296SPhilip Langdale
753085e9c1SAnton Vorontsovconfig MMC_SDHCI_OF
763085e9c1SAnton Vorontsov	tristate "SDHCI support on OpenFirmware platforms"
773085e9c1SAnton Vorontsov	depends on MMC_SDHCI && PPC_OF
783085e9c1SAnton Vorontsov	select MMC_SDHCI_IO_ACCESSORS
793085e9c1SAnton Vorontsov	help
803085e9c1SAnton Vorontsov	  This selects the OF support for Secure Digital Host Controller
813085e9c1SAnton Vorontsov	  Interfaces. So far, only the Freescale eSDHC controller is known
823085e9c1SAnton Vorontsov	  to exist on OF platforms.
833085e9c1SAnton Vorontsov
843085e9c1SAnton Vorontsov	  If unsure, say N.
853085e9c1SAnton Vorontsov
86a3456a2dSRichard Röjforsconfig MMC_SDHCI_PLTFM
87a3456a2dSRichard Röjfors	tristate "SDHCI support on the platform specific bus"
88a3456a2dSRichard Röjfors	depends on MMC_SDHCI
89a3456a2dSRichard Röjfors	help
90a3456a2dSRichard Röjfors	  This selects the platform specific bus support for Secure Digital Host
91a3456a2dSRichard Röjfors	  Controller Interface.
92a3456a2dSRichard Röjfors
93a3456a2dSRichard Röjfors	  If you have a controller with this interface, say Y or M here.
94a3456a2dSRichard Röjfors
95a3456a2dSRichard Röjfors	  If unsure, say N.
96a3456a2dSRichard Röjfors
970d1bb41aSBen Dooksconfig MMC_SDHCI_S3C
980d1bb41aSBen Dooks	tristate "SDHCI support on Samsung S3C SoC"
990d1bb41aSBen Dooks	depends on MMC_SDHCI && (PLAT_S3C24XX || PLAT_S3C64XX)
1000d1bb41aSBen Dooks	help
1010d1bb41aSBen Dooks	  This selects the Secure Digital Host Controller Interface (SDHCI)
1020d1bb41aSBen Dooks	  often referrered to as the HSMMC block in some of the Samsung S3C
1030d1bb41aSBen Dooks	  range of SoC.
1040d1bb41aSBen Dooks
1050d1bb41aSBen Dooks	  Note, due to the problems with DMA, the DMA support is only
1060d1bb41aSBen Dooks	  available with CONFIG_EXPERIMENTAL is selected.
1070d1bb41aSBen Dooks
1080d1bb41aSBen Dooks	  If you have a controller with this interface, say Y or M here.
1090d1bb41aSBen Dooks
1100d1bb41aSBen Dooks	  If unsure, say N.
1110d1bb41aSBen Dooks
1120d1bb41aSBen Dooksconfig MMC_SDHCI_S3C_DMA
1130d1bb41aSBen Dooks	bool "DMA support on S3C SDHCI"
1140d1bb41aSBen Dooks	depends on MMC_SDHCI_S3C && EXPERIMENTAL
1150d1bb41aSBen Dooks	help
1160d1bb41aSBen Dooks	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
1170d1bb41aSBen Dooks	  has proved to be problematic if the controller encounters
1180d1bb41aSBen Dooks	  certain errors, and thus should be treated with care.
1190d1bb41aSBen Dooks
1200d1bb41aSBen Dooks	  YMMV.
1210d1bb41aSBen Dooks
1221c6a0718SPierre Ossmanconfig MMC_OMAP
1231c6a0718SPierre Ossman	tristate "TI OMAP Multimedia Card Interface support"
124790864dcSJan Engelhardt	depends on ARCH_OMAP
1251c6a0718SPierre Ossman	select TPS65010 if MACH_OMAP_H2
1261c6a0718SPierre Ossman	help
1271c6a0718SPierre Ossman	  This selects the TI OMAP Multimedia card Interface.
1281c6a0718SPierre Ossman	  If you have an OMAP board with a Multimedia Card slot,
1291c6a0718SPierre Ossman	  say Y or M here.
1301c6a0718SPierre Ossman
1311c6a0718SPierre Ossman	  If unsure, say N.
1321c6a0718SPierre Ossman
133a45c6cb8SMadhusudhan Chikkatureconfig MMC_OMAP_HS
134a45c6cb8SMadhusudhan Chikkature	tristate "TI OMAP High Speed Multimedia Card Interface support"
135a45c6cb8SMadhusudhan Chikkature	depends on ARCH_OMAP2430 || ARCH_OMAP3
136a45c6cb8SMadhusudhan Chikkature	help
137a45c6cb8SMadhusudhan Chikkature	  This selects the TI OMAP High Speed Multimedia card Interface.
138a45c6cb8SMadhusudhan Chikkature	  If you have an OMAP2430 or OMAP3 board with a Multimedia Card slot,
139a45c6cb8SMadhusudhan Chikkature	  say Y or M here.
140a45c6cb8SMadhusudhan Chikkature
141a45c6cb8SMadhusudhan Chikkature	  If unsure, say N.
142a45c6cb8SMadhusudhan Chikkature
1431c6a0718SPierre Ossmanconfig MMC_WBSD
1441c6a0718SPierre Ossman	tristate "Winbond W83L51xD SD/MMC Card Interface support"
145790864dcSJan Engelhardt	depends on ISA_DMA_API
1461c6a0718SPierre Ossman	help
1471c6a0718SPierre Ossman	  This selects the Winbond(R) W83L51xD Secure digital and
1481c6a0718SPierre Ossman          Multimedia card Interface.
1491c6a0718SPierre Ossman	  If you have a machine with a integrated W83L518D or W83L519D
1501c6a0718SPierre Ossman	  SD/MMC card reader, say Y or M here.
1511c6a0718SPierre Ossman
1521c6a0718SPierre Ossman	  If unsure, say N.
1531c6a0718SPierre Ossman
1541c6a0718SPierre Ossmanconfig MMC_AU1X
1551c6a0718SPierre Ossman	tristate "Alchemy AU1XX0 MMC Card Interface support"
156790864dcSJan Engelhardt	depends on SOC_AU1200
1571c6a0718SPierre Ossman	help
1581c6a0718SPierre Ossman	  This selects the AMD Alchemy(R) Multimedia card interface.
1591c6a0718SPierre Ossman	  If you have a Alchemy platform with a MMC slot, say Y or M here.
1601c6a0718SPierre Ossman
1611c6a0718SPierre Ossman	  If unsure, say N.
1621c6a0718SPierre Ossman
16304d699c3SRob Emanuelechoice
16404d699c3SRob Emanuele	prompt "Atmel SD/MMC Driver"
16504d699c3SRob Emanuele	default MMC_ATMELMCI if AVR32
16604d699c3SRob Emanuele	help
16704d699c3SRob Emanuele	  Choose which driver to use for the Atmel MCI Silicon
16804d699c3SRob Emanuele
1691c6a0718SPierre Ossmanconfig MMC_AT91
1701c6a0718SPierre Ossman	tristate "AT91 SD/MMC Card Interface support"
171790864dcSJan Engelhardt	depends on ARCH_AT91
1721c6a0718SPierre Ossman	help
1731c6a0718SPierre Ossman	  This selects the AT91 MCI controller.
1741c6a0718SPierre Ossman
1751c6a0718SPierre Ossman	  If unsure, say N.
1761c6a0718SPierre Ossman
1777d2be074SHaavard Skinnemoenconfig MMC_ATMELMCI
1787d2be074SHaavard Skinnemoen	tristate "Atmel Multimedia Card Interface support"
17904d699c3SRob Emanuele	depends on AVR32 || ARCH_AT91
1807d2be074SHaavard Skinnemoen	help
1817d2be074SHaavard Skinnemoen	  This selects the Atmel Multimedia Card Interface driver. If
18204d699c3SRob Emanuele	  you have an AT32 (AVR32) or AT91 platform with a Multimedia
18304d699c3SRob Emanuele	  Card slot, say Y or M here.
1847d2be074SHaavard Skinnemoen
1857d2be074SHaavard Skinnemoen	  If unsure, say N.
1867d2be074SHaavard Skinnemoen
18704d699c3SRob Emanueleendchoice
18804d699c3SRob Emanuele
18965e8b083SHaavard Skinnemoenconfig MMC_ATMELMCI_DMA
19065e8b083SHaavard Skinnemoen	bool "Atmel MCI DMA support (EXPERIMENTAL)"
19104d699c3SRob Emanuele	depends on MMC_ATMELMCI && AVR32 && DMA_ENGINE && EXPERIMENTAL
19265e8b083SHaavard Skinnemoen	help
19365e8b083SHaavard Skinnemoen	  Say Y here to have the Atmel MCI driver use a DMA engine to
19465e8b083SHaavard Skinnemoen	  do data transfers and thus increase the throughput and
19565e8b083SHaavard Skinnemoen	  reduce the CPU utilization. Note that this is highly
19665e8b083SHaavard Skinnemoen	  experimental and may cause the driver to lock up.
19765e8b083SHaavard Skinnemoen
19865e8b083SHaavard Skinnemoen	  If unsure, say N.
19965e8b083SHaavard Skinnemoen
2001c6a0718SPierre Ossmanconfig MMC_IMX
2011c6a0718SPierre Ossman	tristate "Motorola i.MX Multimedia Card Interface support"
2028c8fdbc9SSascha Hauer	depends on ARCH_MX1
2031c6a0718SPierre Ossman	help
2041c6a0718SPierre Ossman	  This selects the Motorola i.MX Multimedia card Interface.
2051c6a0718SPierre Ossman	  If you have a i.MX platform with a Multimedia Card slot,
2061c6a0718SPierre Ossman	  say Y or M here.
2071c6a0718SPierre Ossman
2081c6a0718SPierre Ossman	  If unsure, say N.
2091c6a0718SPierre Ossman
2109d2bd738SSan Mehatconfig MMC_MSM7X00A
2119d2bd738SSan Mehat	tristate "Qualcomm MSM 7X00A SDCC Controller Support"
2129d2bd738SSan Mehat	depends on MMC && ARCH_MSM
2139d2bd738SSan Mehat	help
2149d2bd738SSan Mehat	  This provides support for the SD/MMC cell found in the
2159d2bd738SSan Mehat          MSM 7X00A controllers from Qualcomm.
2169d2bd738SSan Mehat
217d96be879SSascha Hauerconfig MMC_MXC
218d96be879SSascha Hauer	tristate "Freescale i.MX2/3 Multimedia Card Interface support"
219d96be879SSascha Hauer	depends on ARCH_MXC
220d96be879SSascha Hauer	help
221d96be879SSascha Hauer	  This selects the Freescale i.MX2/3 Multimedia card Interface.
222d96be879SSascha Hauer	  If you have a i.MX platform with a Multimedia Card slot,
223d96be879SSascha Hauer	  say Y or M here.
224d96be879SSascha Hauer
225d96be879SSascha Hauer	  If unsure, say N.
226d96be879SSascha Hauer
2271c6a0718SPierre Ossmanconfig MMC_TIFM_SD
2281c6a0718SPierre Ossman	tristate "TI Flash Media MMC/SD Interface support  (EXPERIMENTAL)"
229790864dcSJan Engelhardt	depends on EXPERIMENTAL && PCI
2301c6a0718SPierre Ossman	select TIFM_CORE
2311c6a0718SPierre Ossman	help
2321c6a0718SPierre Ossman	  Say Y here if you want to be able to access MMC/SD cards with
2331c6a0718SPierre Ossman	  the Texas Instruments(R) Flash Media card reader, found in many
2341c6a0718SPierre Ossman	  laptops.
2351c6a0718SPierre Ossman	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
2361c6a0718SPierre Ossman	  probably also need appropriate card reader host adapter, such as
2371c6a0718SPierre Ossman	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
2381c6a0718SPierre Ossman	  (TIFM_7XX1)'.
2391c6a0718SPierre Ossman
2401c6a0718SPierre Ossman          To compile this driver as a module, choose M here: the
2411c6a0718SPierre Ossman	  module will be called tifm_sd.
2421c6a0718SPierre Ossman
243236caa7cSMaen Suleimanconfig MMC_MVSDIO
244236caa7cSMaen Suleiman	tristate "Marvell MMC/SD/SDIO host driver"
245236caa7cSMaen Suleiman	depends on PLAT_ORION
246236caa7cSMaen Suleiman	---help---
247236caa7cSMaen Suleiman	  This selects the Marvell SDIO host driver.
248236caa7cSMaen Suleiman	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
249236caa7cSMaen Suleiman	  SoC controllers.
250236caa7cSMaen Suleiman
251236caa7cSMaen Suleiman	  To compile this driver as a module, choose M here: the
252236caa7cSMaen Suleiman	  module will be called mvsdio.
253236caa7cSMaen Suleiman
25415a0580cSDavid Brownellconfig MMC_SPI
25557105737SPierre Ossman	tristate "MMC/SD/SDIO over SPI"
2561ea4f444SPierre Ossman	depends on SPI_MASTER && !HIGHMEM && HAS_DMA
25715a0580cSDavid Brownell	select CRC7
25815a0580cSDavid Brownell	select CRC_ITU_T
25915a0580cSDavid Brownell	help
260692105b8SMatt LaPlante	  Some systems access MMC/SD/SDIO cards using a SPI controller
26157105737SPierre Ossman	  instead of using a "native" MMC/SD/SDIO controller.  This has a
26257105737SPierre Ossman	  disadvantage of being relatively high overhead, but a compensating
26357105737SPierre Ossman	  advantage of working on many systems without dedicated MMC/SD/SDIO
26457105737SPierre Ossman	  controllers.
26515a0580cSDavid Brownell
26615a0580cSDavid Brownell	  If unsure, or if your system has no SPI master driver, say N.
26715a0580cSDavid Brownell
268be518018SThomas Kleffelconfig MMC_S3C
269be518018SThomas Kleffel	tristate "Samsung S3C SD/MMC Card Interface support"
2701ea4f444SPierre Ossman	depends on ARCH_S3C2410
271be518018SThomas Kleffel	help
272be518018SThomas Kleffel	  This selects a driver for the MCI interface found in
273be518018SThomas Kleffel          Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
274be518018SThomas Kleffel	  If you have a board based on one of those and a MMC/SD
275be518018SThomas Kleffel	  slot, say Y or M here.
276be518018SThomas Kleffel
277be518018SThomas Kleffel	  If unsure, say N.
278be518018SThomas Kleffel
2796a36913aSSascha Sommerconfig MMC_SDRICOH_CS
2806a36913aSSascha Sommer	tristate "MMC/SD driver for Ricoh Bay1Controllers (EXPERIMENTAL)"
2811ea4f444SPierre Ossman	depends on EXPERIMENTAL && PCI && PCMCIA
2826a36913aSSascha Sommer	help
2836a36913aSSascha Sommer	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
2846a36913aSSascha Sommer	  card whenever you insert a MMC or SD card into the card slot.
2856a36913aSSascha Sommer
2866a36913aSSascha Sommer	  To compile this driver as a module, choose M here: the
2876a36913aSSascha Sommer	  module will be called sdricoh_cs.
2886a36913aSSascha Sommer
2894a48998fSIan Moltonconfig MMC_TMIO
2904a48998fSIan Molton	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
291e6f2c7adSPhilipp Zabel	depends on MFD_TMIO || MFD_ASIC3
2924a48998fSIan Molton	help
2934a48998fSIan Molton	  This provides support for the SD/MMC cell found in TC6393XB,
294e6f2c7adSPhilipp Zabel	  T7L66XB and also HTC ASIC3
2955f5bac82SMichał Mirosław
2965f5bac82SMichał Mirosławconfig MMC_CB710
2975f5bac82SMichał Mirosław	tristate "ENE CB710 MMC/SD Interface support"
2985f5bac82SMichał Mirosław	depends on PCI
2995f5bac82SMichał Mirosław	select CB710_CORE
3005f5bac82SMichał Mirosław	help
3015f5bac82SMichał Mirosław	  This option enables support for MMC/SD part of ENE CB710/720 Flash
3025f5bac82SMichał Mirosław	  memory card reader found in some laptops (ie. some versions of
3035f5bac82SMichał Mirosław	  HP Compaq nx9500).
3045f5bac82SMichał Mirosław
3055f5bac82SMichał Mirosław	  This driver can also be built as a module. If so, the module
3065f5bac82SMichał Mirosław	  will be called cb710-mmc.
3075f5bac82SMichał Mirosław
308f0bf7f61SHarald Welteconfig MMC_VIA_SDMMC
309f0bf7f61SHarald Welte	tristate "VIA SD/MMC Card Reader Driver"
310f0bf7f61SHarald Welte	depends on PCI
311f0bf7f61SHarald Welte	help
312f0bf7f61SHarald Welte	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
313f0bf7f61SHarald Welte	  VIA provides one multi-functional card reader which integrated into
314f0bf7f61SHarald Welte	  some motherboards manufactured by VIA. This card reader supports
315f0bf7f61SHarald Welte	  SD/MMC/SDHC.
316f0bf7f61SHarald Welte	  If you have a controller with this interface, say Y or M here.
317f0bf7f61SHarald Welte
318f0bf7f61SHarald Welte	  If unsure, say N.
319