blob: 1526b8a10b094e88e52275e46446ff3e8b66afdf [file] [log] [blame]
Pierre Ossman1c6a0712007-02-11 19:57:36 +01001#
2# MMC/SD host controller drivers
3#
4
Pierre Ossman57105732008-09-07 13:16:58 +02005comment "MMC/SD/SDIO Host Controller Drivers"
Pierre Ossman1c6a0712007-02-11 19:57:36 +01006
7config MMC_ARMMMCI
8 tristate "ARM AMBA Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +02009 depends on ARM_AMBA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010010 help
11 This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
12 Interface (PL180 and PL181) support. If you have an ARM(R)
13 platform with a Multimedia Card slot, say Y or M here.
14
15 If unsure, say N.
16
Srinivas Kandagatla9cb15142014-07-29 03:50:30 +010017config MMC_QCOM_DML
18 tristate "Qualcomm Data Mover for SD Card Controller"
19 depends on MMC_ARMMMCI && QCOM_BAM_DMA
20 default y
21 help
22 This selects the Qualcomm Data Mover lite/local on SD Card controller.
23 This option will enable the dma to work correctly, if you are using
24 Qcom SOCs and MMC, you would probably need this option to get DMA working.
25
26 if unsure, say N.
27
Pierre Ossman1c6a0712007-02-11 19:57:36 +010028config MMC_PXA
29 tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +020030 depends on ARCH_PXA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010031 help
32 This selects the Intel(R) PXA(R) Multimedia card Interface.
33 If you have a PXA(R) platform with a Multimedia Card slot,
34 say Y or M here.
35
36 If unsure, say N.
37
38config MMC_SDHCI
Pierre Ossman34671dc2008-01-05 23:18:58 +010039 tristate "Secure Digital Host Controller Interface support"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010040 depends on HAS_DMA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010041 help
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010042 This selects the generic Secure Digital Host Controller Interface.
Pierre Ossman1c6a0712007-02-11 19:57:36 +010043 It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
44 and Toshiba(R). Most controllers found in laptops are of this type.
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010045
46 If you have a controller with this interface, say Y or M here. You
47 also need to enable an appropriate bus interface.
48
49 If unsure, say N.
50
Anton Vorontsov4e4141a2009-03-17 00:13:46 +030051config MMC_SDHCI_IO_ACCESSORS
52 bool
53 depends on MMC_SDHCI
54 help
55 This is silent Kconfig symbol that is selected by the drivers that
56 need to overwrite SDHCI IO memory accessors.
57
Albert Herranz7657c3a2009-12-17 15:27:20 -080058config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
59 bool
Jean Delvare82813b72015-01-26 11:35:44 +010060 depends on MMC_SDHCI
Albert Herranz7657c3a2009-12-17 15:27:20 -080061 select MMC_SDHCI_IO_ACCESSORS
62 help
63 This option is selected by drivers running on big endian hosts
64 and performing I/O to a SDHCI controller through a bus that
65 implements a hardware byte swapper using a 32-bit datum.
66 This endian mapping mode is called "data invariance" and
67 has the effect of scrambling the addresses and formats of data
68 accessed in sizes other than the datum size.
69
yangbo lu2ca63522015-10-08 18:36:47 +080070 This is the case for the Nintendo Wii SDHCI.
Albert Herranz7657c3a2009-12-17 15:27:20 -080071
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010072config MMC_SDHCI_PCI
73 tristate "SDHCI support on PCI bus"
74 depends on MMC_SDHCI && PCI
75 help
76 This selects the PCI Secure Digital Host Controller Interface.
77 Most controllers found today are PCI devices.
78
Pierre Ossman1c6a0712007-02-11 19:57:36 +010079 If you have a controller with this interface, say Y or M here.
80
81 If unsure, say N.
82
Philip Langdale5ae70292007-09-15 12:54:08 -070083config MMC_RICOH_MMC
Kees Cook86147c82012-10-02 11:17:47 -070084 bool "Ricoh MMC Controller Disabler"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010085 depends on MMC_SDHCI_PCI
Jean Delvareba2f7322015-01-26 11:44:15 +010086 default y
Philip Langdale5ae70292007-09-15 12:54:08 -070087 help
Maxim Levitsky03cd8f72010-03-05 13:43:20 -080088 This adds a pci quirk to disable Ricoh MMC Controller. This
Philip Langdale5ae70292007-09-15 12:54:08 -070089 proprietary controller is unnecessary because the SDHCI driver
90 supports MMC cards on the SD controller, but if it is not
91 disabled, it will steal the MMC cards away - rendering them
Maxim Levitsky03cd8f72010-03-05 13:43:20 -080092 useless. It is safe to select this even if you don't
Philip Langdale5ae70292007-09-15 12:54:08 -070093 have a Ricoh based card reader.
94
Philip Langdale5ae70292007-09-15 12:54:08 -070095 If unsure, say Y.
96
Adrian Hunterc4e05032012-11-23 21:17:34 +010097config MMC_SDHCI_ACPI
98 tristate "SDHCI support for ACPI enumerated SDHCI controllers"
99 depends on MMC_SDHCI && ACPI
100 help
101 This selects support for ACPI enumerated SDHCI controllers,
102 identified by ACPI Compatibility ID PNP0D40 or specific
103 ACPI Hardware IDs.
104
105 If you have a controller with this interface, say Y or M here.
106
107 If unsure, say N.
108
Shawn Guof0de8362011-06-02 10:57:50 +0800109config MMC_SDHCI_PLTFM
110 tristate "SDHCI platform and OF driver helper"
Shawn Guo38576af2011-05-27 23:48:14 +0800111 depends on MMC_SDHCI
Shawn Guof0de8362011-06-02 10:57:50 +0800112 help
113 This selects the common helper functions support for Secure Digital
114 Host Controller Interface based platform and OF drivers.
115
116 If you have a controller with this interface, say Y or M here.
117
118 If unsure, say N.
119
Soren Brinkmanne3ec3a32013-12-02 10:02:36 -0800120config MMC_SDHCI_OF_ARASAN
121 tristate "SDHCI OF support for the Arasan SDHCI controllers"
122 depends on MMC_SDHCI_PLTFM
123 depends on OF
124 help
125 This selects the Arasan Secure Digital Host Controller Interface
126 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
127
128 If you have a controller with this interface, say Y or M here.
129
130 If unsure, say N.
131
ludovic.desroches@atmel.combb5f8ea2015-07-29 16:22:47 +0200132config MMC_SDHCI_OF_AT91
133 tristate "SDHCI OF support for the Atmel SDMMC controller"
134 depends on MMC_SDHCI_PLTFM
135 depends on OF
136 select MMC_SDHCI_IO_ACCESSORS
137 help
138 This selects the Atmel SDMMC driver
139
Shawn Guof0de8362011-06-02 10:57:50 +0800140config MMC_SDHCI_OF_ESDHC
141 tristate "SDHCI OF support for the Freescale eSDHC controller"
142 depends on MMC_SDHCI_PLTFM
yangbo lu2ca63522015-10-08 18:36:47 +0800143 depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
144 select MMC_SDHCI_IO_ACCESSORS
Albert Herranz7657c3a2009-12-17 15:27:20 -0800145 help
146 This selects the Freescale eSDHC controller support.
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300147
Shawn Guof0de8362011-06-02 10:57:50 +0800148 If you have a controller with this interface, say Y or M here.
149
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300150 If unsure, say N.
151
Albert Herranz1144ab52009-12-17 15:27:20 -0800152config MMC_SDHCI_OF_HLWD
Shawn Guof0de8362011-06-02 10:57:50 +0800153 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
154 depends on MMC_SDHCI_PLTFM
Kevin Hao5f2e0972015-02-26 20:08:21 +0800155 depends on PPC
Albert Herranz1144ab52009-12-17 15:27:20 -0800156 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
157 help
158 This selects the Secure Digital Host Controller Interface (SDHCI)
159 found in the "Hollywood" chipset of the Nintendo Wii video game
160 console.
161
Shawn Guof0de8362011-06-02 10:57:50 +0800162 If you have a controller with this interface, say Y or M here.
163
Albert Herranz1144ab52009-12-17 15:27:20 -0800164 If unsure, say N.
165
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700166config MMC_SDHCI_CNS3XXX
Shawn Guo85d65092011-05-27 23:48:12 +0800167 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700168 depends on ARCH_CNS3XXX
Shawn Guof0de8362011-06-02 10:57:50 +0800169 depends on MMC_SDHCI_PLTFM
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700170 help
171 This selects the SDHCI support for CNS3xxx System-on-Chip devices.
172
Shawn Guof0de8362011-06-02 10:57:50 +0800173 If you have a controller with this interface, say Y or M here.
174
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700175 If unsure, say N.
176
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200177config MMC_SDHCI_ESDHC_IMX
Shawn Guo95a24822011-09-19 17:32:21 +0800178 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
Sascha Hauer2b795512011-08-24 08:41:08 +0200179 depends on ARCH_MXC
Shawn Guof0de8362011-06-02 10:57:50 +0800180 depends on MMC_SDHCI_PLTFM
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200181 select MMC_SDHCI_IO_ACCESSORS
182 help
Shawn Guo95a24822011-09-19 17:32:21 +0800183 This selects the Freescale eSDHC/uSDHC controller support
184 found on i.MX25, i.MX35 i.MX5x and i.MX6x.
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200185
Shawn Guof0de8362011-06-02 10:57:50 +0800186 If you have a controller with this interface, say Y or M here.
187
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200188 If unsure, say N.
189
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500190config MMC_SDHCI_DOVE
Shawn Guo85d65092011-05-27 23:48:12 +0800191 tristate "SDHCI support on Marvell's Dove SoC"
Sebastian Hesselbarthec4422a2014-05-19 20:02:51 +0200192 depends on ARCH_DOVE || MACH_DOVE
Shawn Guof0de8362011-06-02 10:57:50 +0800193 depends on MMC_SDHCI_PLTFM
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500194 select MMC_SDHCI_IO_ACCESSORS
195 help
196 This selects the Secure Digital Host Controller Interface in
197 Marvell's Dove SoC.
198
Shawn Guof0de8362011-06-02 10:57:50 +0800199 If you have a controller with this interface, say Y or M here.
200
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500201 If unsure, say N.
202
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500203config MMC_SDHCI_TEGRA
Shawn Guo85d65092011-05-27 23:48:12 +0800204 tristate "SDHCI platform support for the Tegra SD/MMC Controller"
205 depends on ARCH_TEGRA
Shawn Guof0de8362011-06-02 10:57:50 +0800206 depends on MMC_SDHCI_PLTFM
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500207 select MMC_SDHCI_IO_ACCESSORS
208 help
209 This selects the Tegra SD/MMC controller. If you have a Tegra
210 platform with SD or MMC devices, say Y or M here.
211
212 If unsure, say N.
213
Ben Dooks0d1bb412009-06-14 13:52:37 +0100214config MMC_SDHCI_S3C
215 tristate "SDHCI support on Samsung S3C SoC"
Kyungmin Park930a6f72010-08-19 14:13:35 -0700216 depends on MMC_SDHCI && PLAT_SAMSUNG
Ben Dooks0d1bb412009-06-14 13:52:37 +0100217 help
218 This selects the Secure Digital Host Controller Interface (SDHCI)
219 often referrered to as the HSMMC block in some of the Samsung S3C
220 range of SoC.
221
Ben Dooks0d1bb412009-06-14 13:52:37 +0100222 If you have a controller with this interface, say Y or M here.
223
224 If unsure, say N.
225
Barry Songb3b665b2013-03-21 16:27:19 +0800226config MMC_SDHCI_SIRF
227 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
228 depends on ARCH_SIRF
229 depends on MMC_SDHCI_PLTFM
Weijun Yanga1b0b972015-04-27 08:15:14 +0000230 select MMC_SDHCI_IO_ACCESSORS
Barry Songb3b665b2013-03-21 16:27:19 +0800231 help
232 This selects the SDHCI support for SiRF System-on-Chip devices.
233
234 If you have a controller with this interface, say Y or M here.
235
236 If unsure, say N.
237
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800238config MMC_SDHCI_PXAV3
239 tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
240 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200241 depends on MMC_SDHCI_PLTFM
Jean Delvaredaa30542015-02-23 11:30:40 +0100242 depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800243 default CPU_MMP2
244 help
245 This selects the Marvell(R) PXAV3 SD Host Controller.
246 If you have a MMP2 platform with SD Host Controller
247 and a card slot, say Y or M here.
248
249 If unsure, say N.
250
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800251config MMC_SDHCI_PXAV2
252 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
253 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200254 depends on MMC_SDHCI_PLTFM
Jean Delvare8a8735e2015-01-26 11:23:28 +0100255 depends on ARCH_MMP || COMPILE_TEST
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800256 default CPU_PXA910
257 help
258 This selects the Marvell(R) PXAV2 SD Host Controller.
259 If you have a PXA9XX platform with SD Host Controller
260 and a card slot, say Y or M here.
261
262 If unsure, say N.
263
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700264config MMC_SDHCI_SPEAR
265 tristate "SDHCI support on ST SPEAr platform"
266 depends on MMC_SDHCI && PLAT_SPEAR
Ulf Hanssonbbd7f0a2015-03-04 14:57:44 +0100267 depends on OF
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700268 help
269 This selects the Secure Digital Host Controller Interface (SDHCI)
270 often referrered to as the HSMMC block in some of the ST SPEAR range
271 of SoC
272
273 If you have a controller with this interface, say Y or M here.
274
275 If unsure, say N.
276
Ben Dooks0d1bb412009-06-14 13:52:37 +0100277config MMC_SDHCI_S3C_DMA
278 bool "DMA support on S3C SDHCI"
Kees Cook86147c82012-10-02 11:17:47 -0700279 depends on MMC_SDHCI_S3C
Ben Dooks0d1bb412009-06-14 13:52:37 +0100280 help
281 Enable DMA support on the Samsung S3C SDHCI glue. The DMA
282 has proved to be problematic if the controller encounters
283 certain errors, and thus should be treated with care.
284
285 YMMV.
286
Christian Daudt01ebea12013-06-20 14:26:37 -0700287config MMC_SDHCI_BCM_KONA
288 tristate "SDHCI support on Broadcom KONA platform"
Christian Daudtfc2bd2e2013-09-23 10:20:35 -0700289 depends on ARCH_BCM_MOBILE
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200290 depends on MMC_SDHCI_PLTFM
Christian Daudt01ebea12013-06-20 14:26:37 -0700291 help
292 This selects the Broadcom Kona Secure Digital Host Controller
293 Interface(SDHCI) support.
294 This is used in Broadcom mobile SoCs.
295
296 If you have a controller with this interface, say Y or M here.
297
Stephen Warren1a947152013-01-02 22:34:49 -0700298config MMC_SDHCI_BCM2835
299 tristate "SDHCI platform support for the BCM2835 SD/MMC Controller"
300 depends on ARCH_BCM2835
301 depends on MMC_SDHCI_PLTFM
302 select MMC_SDHCI_IO_ACCESSORS
303 help
304 This selects the BCM2835 SD/MMC controller. If you have a BCM2835
305 platform with SD or MMC devices, say Y or M here.
306
307 If unsure, say N.
308
Vincent Yang87a50742015-01-20 16:05:18 +0800309config MMC_SDHCI_F_SDH30
310 tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
311 depends on MMC_SDHCI_PLTFM
312 depends on OF
313 help
314 This selects the Secure Digital Host Controller Interface (SDHCI)
315 Needed by some Fujitsu SoC for MMC / SD / SDIO support.
316 If you have a controller with this interface, say Y or M here.
317
318 If unsure, say N.
319
Scott Brandenb580c522015-02-09 16:06:30 -0800320config MMC_SDHCI_IPROC
321 tristate "SDHCI platform support for the iProc SD/MMC Controller"
322 depends on ARCH_BCM_IPROC || COMPILE_TEST
323 depends on MMC_SDHCI_PLTFM
324 default ARCH_BCM_IPROC
325 select MMC_SDHCI_IO_ACCESSORS
326 help
327 This selects the iProc SD/MMC controller.
328
329 If you have an IPROC platform with SD or MMC devices,
330 say Y or M here.
331
332 If unsure, say N.
333
Jonas Jensen1b66e942014-04-09 15:54:11 +0200334config MMC_MOXART
335 tristate "MOXART SD/MMC Host Controller support"
336 depends on ARCH_MOXART && MMC
337 help
338 This selects support for the MOXART SD/MMC Host Controller.
339 MOXA provides one multi-functional card reader which can
340 be found on some embedded hardware such as UC-7112-LX.
341 If you have a controller with this interface, say Y here.
342
Peter Griffinf52d9c42014-07-09 16:07:32 +0100343config MMC_SDHCI_ST
344 tristate "SDHCI support on STMicroelectronics SoC"
345 depends on ARCH_STI
346 depends on MMC_SDHCI_PLTFM
347 select MMC_SDHCI_IO_ACCESSORS
348 help
349 This selects the Secure Digital Host Controller Interface in
350 STMicroelectronics SoCs.
351
352 If you have a controller with this interface, say Y or M here.
353 If unsure, say N.
354
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100355config MMC_OMAP
356 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200357 depends on ARCH_OMAP
Arnd Bergmann60a549f2014-06-05 23:14:40 +0200358 depends on TPS65010 || !MACH_OMAP_H2
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100359 help
360 This selects the TI OMAP Multimedia card Interface.
361 If you have an OMAP board with a Multimedia Card slot,
362 say Y or M here.
363
364 If unsure, say N.
365
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100366config MMC_OMAP_HS
367 tristate "TI OMAP High Speed Multimedia Card Interface support"
Geert Uytterhoevenc00c5942014-07-09 20:52:40 +0200368 depends on HAS_DMA
Lokesh Vutlaa7cedab2015-10-20 16:50:06 -0500369 depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100370 help
371 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530372 If you have an omap2plus board with a Multimedia Card slot,
373 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100374
375 If unsure, say N.
376
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100377config MMC_WBSD
378 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200379 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100380 help
381 This selects the Winbond(R) W83L51xD Secure digital and
382 Multimedia card Interface.
383 If you have a machine with a integrated W83L518D or W83L519D
384 SD/MMC card reader, say Y or M here.
385
386 If unsure, say N.
387
388config MMC_AU1X
389 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200390 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100391 help
392 This selects the AMD Alchemy(R) Multimedia card interface.
393 If you have a Alchemy platform with a MMC slot, say Y or M here.
394
395 If unsure, say N.
396
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200397config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100398 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Rob Emanuele04d699c2009-09-22 16:45:19 -0700399 depends on AVR32 || ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200400 help
401 This selects the Atmel Multimedia Card Interface driver. If
Rob Emanuele04d699c2009-09-22 16:45:19 -0700402 you have an AT32 (AVR32) or AT91 platform with a Multimedia
403 Card slot, say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200404
405 If unsure, say N.
406
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200407config MMC_SDHCI_MSM
408 tristate "Qualcomm SDHCI Controller Support"
Georgi Djakov6096d7a2014-07-11 20:48:13 +0300409 depends on ARCH_QCOM || (ARM && COMPILE_TEST)
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200410 depends on MMC_SDHCI_PLTFM
411 help
412 This selects the Secure Digital Host Controller Interface (SDHCI)
413 support present in Qualcomm SOCs. The controller supports
414 SD/MMC/SDIO devices.
415
416 If you have a controller with this interface, say Y or M here.
417
418 If unsure, say N.
419
Sascha Hauerd96be872009-01-06 17:04:14 +0100420config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200421 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
422 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100423 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200424 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
425 Multimedia Card Interface. If you have an i.MX or MPC512x platform
426 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100427
428 If unsure, say N.
429
Shawn Guoe4243f12011-02-21 18:35:28 +0800430config MMC_MXS
431 tristate "Freescale MXS Multimedia Card Interface support"
432 depends on ARCH_MXS && MXS_DMA
433 help
434 This selects the Freescale SSP MMC controller found on MXS based
435 platforms like mx23/28.
436
437 If unsure, say N.
438
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100439config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700440 tristate "TI Flash Media MMC/SD Interface support"
441 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100442 select TIFM_CORE
443 help
444 Say Y here if you want to be able to access MMC/SD cards with
445 the Texas Instruments(R) Flash Media card reader, found in many
446 laptops.
447 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
448 probably also need appropriate card reader host adapter, such as
449 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
450 (TIFM_7XX1)'.
451
452 To compile this driver as a module, choose M here: the
453 module will be called tifm_sd.
454
Maen Suleiman236caa72009-02-14 03:07:26 -0500455config MMC_MVSDIO
456 tristate "Marvell MMC/SD/SDIO host driver"
457 depends on PLAT_ORION
Linus Walleij17da6782015-11-25 14:57:57 +0100458 depends on OF
Maen Suleiman236caa72009-02-14 03:07:26 -0500459 ---help---
460 This selects the Marvell SDIO host driver.
461 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
462 SoC controllers.
463
464 To compile this driver as a module, choose M here: the
465 module will be called mvsdio.
466
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800467config MMC_DAVINCI
468 tristate "TI DAVINCI Multimedia Card Interface support"
469 depends on ARCH_DAVINCI
470 help
471 This selects the TI DAVINCI Multimedia card Interface.
472 If you have an DAVINCI board with a Multimedia Card slot,
473 say Y or M here. If unsure, say N.
474
Mike Lockwood85c34d22013-01-21 23:43:46 +0000475config MMC_GOLDFISH
476 tristate "goldfish qemu Multimedia Card Interface support"
Geert Uytterhoeven3d3587722015-11-09 10:36:01 +0100477 depends on HAS_DMA
Luis de Bethencourt7f8a9a72015-10-10 17:08:32 +0100478 depends on GOLDFISH || COMPILE_TEST
Mike Lockwood85c34d22013-01-21 23:43:46 +0000479 help
480 This selects the Goldfish Multimedia card Interface emulation
481 found on the Goldfish Android virtual device emulation.
482
David Brownell15a05802007-08-08 09:12:54 -0700483config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200484 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200485 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700486 select CRC7
487 select CRC_ITU_T
488 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100489 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200490 instead of using a "native" MMC/SD/SDIO controller. This has a
491 disadvantage of being relatively high overhead, but a compensating
492 advantage of working on many systems without dedicated MMC/SD/SDIO
493 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700494
495 If unsure, or if your system has no SPI master driver, say N.
496
Thomas Kleffelbe518012008-06-30 22:40:24 +0100497config MMC_S3C
498 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900499 depends on ARCH_S3C24XX
Vasily Khoruzhickb45e4b52014-06-01 20:22:09 +0300500 depends on S3C24XX_DMAC
Thomas Kleffelbe518012008-06-30 22:40:24 +0100501 help
502 This selects a driver for the MCI interface found in
503 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
504 If you have a board based on one of those and a MMC/SD
505 slot, say Y or M here.
506
507 If unsure, say N.
508
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700509config MMC_S3C_HW_SDIO_IRQ
510 bool "Hardware support for SDIO IRQ"
511 depends on MMC_S3C
512 help
513 Enable the hardware support for SDIO interrupts instead of using
514 the generic polling code.
515
Ben Dooks26f14942009-10-01 15:44:18 -0700516choice
517 prompt "Samsung S3C SD/MMC transfer code"
518 depends on MMC_S3C
519
520config MMC_S3C_PIO
521 bool "Use PIO transfers only"
522 help
523 Use PIO to transfer data between memory and the hardware.
524
525 PIO is slower than DMA as it requires CPU instructions to
526 move the data. This has been the traditional default for
527 the S3C MCI driver.
528
529config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700530 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700531 help
532 Use DMA to transfer data between memory and the hardare.
533
534 Currently, the DMA support in this driver seems to not be
535 working properly and needs to be debugged before this
536 option is useful.
537
Ben Dooks26f14942009-10-01 15:44:18 -0700538endchoice
539
Sascha Sommer6a369132008-07-15 14:21:29 +0200540config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700541 tristate "MMC/SD driver for Ricoh Bay1Controllers"
542 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200543 help
544 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
545 card whenever you insert a MMC or SD card into the card slot.
546
547 To compile this driver as a module, choose M here: the
548 module will be called sdricoh_cs.
549
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100550config MMC_TMIO_CORE
551 tristate
552
Ian Molton4a489982008-07-15 16:02:21 +0100553config MMC_TMIO
554 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100555 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100556 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100557 help
558 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200559 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200560
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100561config MMC_SDHI
562 tristate "SH-Mobile SDHI SD/SDIO controller support"
Laurent Pinchartff0fa482013-11-27 02:18:29 +0100563 depends on SUPERH || ARM
564 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100565 select MMC_TMIO_CORE
566 help
567 This provides support for the SDHI SD/SDIO controller found in
568 SuperH and ARM SH-Mobile SoCs
569
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200570config MMC_CB710
571 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200572 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200573 select CB710_CORE
574 help
575 This option enables support for MMC/SD part of ENE CB710/720 Flash
576 memory card reader found in some laptops (ie. some versions of
577 HP Compaq nx9500).
578
579 This driver can also be built as a module. If so, the module
580 will be called cb710-mmc.
581
Harald Weltef0bf7f62009-06-17 20:22:39 +0200582config MMC_VIA_SDMMC
583 tristate "VIA SD/MMC Card Reader Driver"
584 depends on PCI
585 help
586 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
587 VIA provides one multi-functional card reader which integrated into
588 some motherboards manufactured by VIA. This card reader supports
589 SD/MMC/SDHC.
590 If you have a controller with this interface, say Y or M here.
591
592 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800593
594config SDH_BFIN
595 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800596 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800597 help
598 If you say yes here you will get support for the Blackfin on-chip
599 Secure Digital Host interface. This includes support for MMC and
600 SD cards.
601
602 To compile this driver as a module, choose M here: the
603 module will be called bfin_sdh.
604
605 If unsure, say N.
606
607config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
608 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
609 depends on SDH_BFIN
610 help
611 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700612
Will Newtonf95f3852011-01-02 01:11:59 -0500613config MMC_DW
614 tristate "Synopsys DesignWare Memory Card Interface"
Andrew Bresticker0857c692014-08-14 09:45:27 -0700615 depends on HAS_DMA
Alim Akhtarc34346b2014-08-29 15:54:51 +0530616 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
Will Newtonf95f3852011-01-02 01:11:59 -0500617 help
618 This selects support for the Synopsys DesignWare Mobile Storage IP
619 block, this provides host support for SD and MMC interfaces, in both
Shawn Lin3fc7eae2015-09-16 14:41:23 +0800620 PIO, internal DMA mode and external DMA mode.
Will Newtonf95f3852011-01-02 01:11:59 -0500621
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530622config MMC_DW_PLTFM
623 tristate "Synopsys Designware MCI Support as platform device"
624 depends on MMC_DW
625 default y
626 help
627 This selects the common helper functions support for Host Controller
628 Interface based platform driver. Please select this option if the IP
629 is present as a platform device. This is the common interface for the
630 Synopsys Designware IP.
631
632 If you have a controller with this interface, say Y or M here.
633
634 If unsure, say Y.
635
Thomas Abrahamc3665002012-09-17 18:16:43 +0000636config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900637 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000638 depends on MMC_DW
639 select MMC_DW_PLTFM
640 help
641 This selects support for Samsung Exynos SoC specific extensions to the
642 Synopsys DesignWare Memory Card Interface driver. Select this option
643 for platforms based on Exynos4 and Exynos5 SoC's.
644
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800645config MMC_DW_K3
646 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
647 depends on MMC_DW
648 select MMC_DW_PLTFM
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800649 help
650 This selects support for Hisilicon K3 SoC specific extensions to the
651 Synopsys DesignWare Memory Card Interface driver. Select this option
652 for platforms based on Hisilicon K3 SoC's.
653
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530654config MMC_DW_PCI
655 tristate "Synopsys Designware MCI support on PCI bus"
656 depends on MMC_DW && PCI
657 help
658 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
659 Select this option if the IP is present on PCI platform.
660
661 If you have a controller with this interface, say Y or M here.
662
663 If unsure, say N.
664
addy ke4cdc2ec2014-08-19 12:36:14 +0800665config MMC_DW_ROCKCHIP
666 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
667 depends on MMC_DW && ARCH_ROCKCHIP
668 select MMC_DW_PLTFM
669 help
670 This selects support for Rockchip SoC specific extensions to the
671 Synopsys DesignWare Memory Card Interface driver. Select this option
672 for platforms based on RK3066, RK3188 and RK3288 SoC's.
673
Yusuke Godafdc50a92010-05-26 14:41:59 -0700674config MMC_SH_MMCIF
675 tristate "SuperH Internal MMCIF support"
Geert Uytterhoeven0e7d4372014-07-09 20:52:41 +0200676 depends on MMC_BLOCK && HAS_DMA
Laurent Pinchart9ccb0bd2013-11-27 02:18:30 +0100677 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700678 help
Uwe Kleine-Königb5950762010-11-01 15:38:34 -0400679 This selects the MMC Host Interface controller (MMCIF).
Yusuke Godafdc50a92010-05-26 14:41:59 -0700680
681 This driver supports MMCIF in sh7724/sh7757/sh7372.
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000682
683config MMC_JZ4740
684 tristate "JZ4740 SD/Multimedia Card Interface support"
685 depends on MACH_JZ4740
686 help
687 This selects support for the SD/MMC controller on Ingenic JZ4740
688 SoCs.
689 If you have a board based on such a SoC and with a SD/MMC slot,
690 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000691
Tony Olech88095e72011-05-14 16:48:13 -0400692config MMC_VUB300
693 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
694 depends on USB
695 help
696 This selects support for Elan Digital Systems' VUB300 chip.
697
698 The VUB300 is a USB-SDIO Host Controller Interface chip
699 that enables the host computer to use SDIO/SD/MMC cards
700 via a USB 2.0 or USB 1.1 host.
701
702 The VUB300 chip will be found in both physically separate
703 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
704
705 The VUB300 chip supports SD and MMC memory cards in addition
706 to single and multifunction SDIO cards.
707
708 Some SDIO cards will need a firmware file to be loaded and
709 sent to VUB300 chip in order to achieve better data throughput.
710 Download these "Offload Pseudocode" from Elan Digital Systems'
711 web-site http://www.elandigitalsystems.com/support/downloads.php
712 and put them in /lib/firmware. Note that without these additional
713 firmware files the VUB300 chip will still function, but not at
714 the best obtainable data rate.
715
716 To compile this mmc host controller driver as a module,
717 choose M here: the module will be called vub300.
718
719 If you have a computer with an embedded VUB300 chip
720 or if you intend connecting a USB adapter based on a
721 VUB300 chip say Y or M here.
722
David Vrabel53f3a9e2010-09-02 14:15:08 +0000723config MMC_USHC
724 tristate "USB SD Host Controller (USHC) support"
725 depends on USB
726 help
727 This selects support for USB SD Host Controllers based on
728 the Cypress Astoria chip with firmware compliant with CSR's
729 USB SD Host Controller specification (CS-118793-SP).
730
731 CSR boards with this device include: USB<>SDIO (M1985v2),
732 and Ultrasira.
733
734 Note: These controllers only support SDIO cards and do not
735 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300736
737config MMC_WMT
738 tristate "Wondermedia SD/MMC Host Controller support"
739 depends on ARCH_VT8500
740 default y
741 help
742 This selects support for the SD/MMC Host Controller on
743 Wondermedia WM8505/WM8650 based SoCs.
744
745 To compile this driver as a module, choose M here: the
746 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800747
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200748config MMC_USDHI6ROL0
749 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
Geert Uytterhoeven1ef94742014-07-09 20:52:42 +0200750 depends on HAS_DMA
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200751 help
752 This selects support for the Renesas USDHI6ROL0 SD/SDIO
753 Host Controller
754
Wei WANG2c94b642012-11-09 20:53:34 +0800755config MMC_REALTEK_PCI
756 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
757 depends on MFD_RTSX_PCI
758 help
759 Say Y here to include driver code to support SD/MMC card interface
760 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800761
762config MMC_REALTEK_USB
763 tristate "Realtek USB SD/MMC Card Interface Driver"
764 depends on MFD_RTSX_USB
765 help
766 Say Y here to include driver code to support SD/MMC card interface
767 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200768
769config MMC_SUNXI
770 tristate "Allwinner sunxi SD/MMC Host Controller support"
771 depends on ARCH_SUNXI
772 help
773 This selects support for the SD/MMC Host Controller on
774 Allwinner sunxi SoCs.
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100775
776config MMC_TOSHIBA_PCI
777 tristate "Toshiba Type A SD/MMC Card Interface Driver"
778 depends on PCI
779 help
Chaotian Jing20848902015-06-15 19:20:48 +0800780
781config MMC_MTK
782 tristate "MediaTek SD/MMC Card Interface support"
Geert Uytterhoevenc2b22ff2015-06-26 14:09:26 +0200783 depends on HAS_DMA
Chaotian Jing20848902015-06-15 19:20:48 +0800784 help
785 This selects the MediaTek(R) Secure digital and Multimedia card Interface.
786 If you have a machine with a integrated SD/MMC card reader, say Y or M here.
787 This is needed if support for any SD/SDIO/MMC devices is required.
788 If unsure, say N.