blob: 8a1e3498261e9301cffad18889c5392e6751b7a6 [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
Albert Herranz1144ab52009-12-17 15:27:20 -080070 This is the case for the Freescale eSDHC and 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
Kevin Hao5f2e0972015-02-26 20:08:21 +0800143 depends on PPC
Albert Herranz7657c3a2009-12-17 15:27:20 -0800144 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
145 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
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530369 depends on ARCH_OMAP2PLUS || 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
458 ---help---
459 This selects the Marvell SDIO host driver.
460 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
461 SoC controllers.
462
463 To compile this driver as a module, choose M here: the
464 module will be called mvsdio.
465
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800466config MMC_DAVINCI
467 tristate "TI DAVINCI Multimedia Card Interface support"
468 depends on ARCH_DAVINCI
469 help
470 This selects the TI DAVINCI Multimedia card Interface.
471 If you have an DAVINCI board with a Multimedia Card slot,
472 say Y or M here. If unsure, say N.
473
Mike Lockwood85c34d22013-01-21 23:43:46 +0000474config MMC_GOLDFISH
475 tristate "goldfish qemu Multimedia Card Interface support"
476 depends on GOLDFISH
477 help
478 This selects the Goldfish Multimedia card Interface emulation
479 found on the Goldfish Android virtual device emulation.
480
David Brownell15a05802007-08-08 09:12:54 -0700481config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200482 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200483 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700484 select CRC7
485 select CRC_ITU_T
486 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100487 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200488 instead of using a "native" MMC/SD/SDIO controller. This has a
489 disadvantage of being relatively high overhead, but a compensating
490 advantage of working on many systems without dedicated MMC/SD/SDIO
491 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700492
493 If unsure, or if your system has no SPI master driver, say N.
494
Thomas Kleffelbe518012008-06-30 22:40:24 +0100495config MMC_S3C
496 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900497 depends on ARCH_S3C24XX
Vasily Khoruzhickb45e4b52014-06-01 20:22:09 +0300498 depends on S3C24XX_DMAC
Thomas Kleffelbe518012008-06-30 22:40:24 +0100499 help
500 This selects a driver for the MCI interface found in
501 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
502 If you have a board based on one of those and a MMC/SD
503 slot, say Y or M here.
504
505 If unsure, say N.
506
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700507config MMC_S3C_HW_SDIO_IRQ
508 bool "Hardware support for SDIO IRQ"
509 depends on MMC_S3C
510 help
511 Enable the hardware support for SDIO interrupts instead of using
512 the generic polling code.
513
Ben Dooks26f14942009-10-01 15:44:18 -0700514choice
515 prompt "Samsung S3C SD/MMC transfer code"
516 depends on MMC_S3C
517
518config MMC_S3C_PIO
519 bool "Use PIO transfers only"
520 help
521 Use PIO to transfer data between memory and the hardware.
522
523 PIO is slower than DMA as it requires CPU instructions to
524 move the data. This has been the traditional default for
525 the S3C MCI driver.
526
527config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700528 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700529 help
530 Use DMA to transfer data between memory and the hardare.
531
532 Currently, the DMA support in this driver seems to not be
533 working properly and needs to be debugged before this
534 option is useful.
535
Ben Dooks26f14942009-10-01 15:44:18 -0700536endchoice
537
Sascha Sommer6a369132008-07-15 14:21:29 +0200538config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700539 tristate "MMC/SD driver for Ricoh Bay1Controllers"
540 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200541 help
542 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
543 card whenever you insert a MMC or SD card into the card slot.
544
545 To compile this driver as a module, choose M here: the
546 module will be called sdricoh_cs.
547
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100548config MMC_TMIO_CORE
549 tristate
550
Ian Molton4a489982008-07-15 16:02:21 +0100551config MMC_TMIO
552 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100553 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100554 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100555 help
556 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200557 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200558
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100559config MMC_SDHI
560 tristate "SH-Mobile SDHI SD/SDIO controller support"
Laurent Pinchartff0fa482013-11-27 02:18:29 +0100561 depends on SUPERH || ARM
562 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100563 select MMC_TMIO_CORE
564 help
565 This provides support for the SDHI SD/SDIO controller found in
566 SuperH and ARM SH-Mobile SoCs
567
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200568config MMC_CB710
569 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200570 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200571 select CB710_CORE
572 help
573 This option enables support for MMC/SD part of ENE CB710/720 Flash
574 memory card reader found in some laptops (ie. some versions of
575 HP Compaq nx9500).
576
577 This driver can also be built as a module. If so, the module
578 will be called cb710-mmc.
579
Harald Weltef0bf7f62009-06-17 20:22:39 +0200580config MMC_VIA_SDMMC
581 tristate "VIA SD/MMC Card Reader Driver"
582 depends on PCI
583 help
584 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
585 VIA provides one multi-functional card reader which integrated into
586 some motherboards manufactured by VIA. This card reader supports
587 SD/MMC/SDHC.
588 If you have a controller with this interface, say Y or M here.
589
590 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800591
592config SDH_BFIN
593 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800594 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800595 help
596 If you say yes here you will get support for the Blackfin on-chip
597 Secure Digital Host interface. This includes support for MMC and
598 SD cards.
599
600 To compile this driver as a module, choose M here: the
601 module will be called bfin_sdh.
602
603 If unsure, say N.
604
605config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
606 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
607 depends on SDH_BFIN
608 help
609 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700610
Will Newtonf95f3852011-01-02 01:11:59 -0500611config MMC_DW
612 tristate "Synopsys DesignWare Memory Card Interface"
Andrew Bresticker0857c692014-08-14 09:45:27 -0700613 depends on HAS_DMA
Alim Akhtarc34346b2014-08-29 15:54:51 +0530614 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
Will Newtonf95f3852011-01-02 01:11:59 -0500615 help
616 This selects support for the Synopsys DesignWare Mobile Storage IP
617 block, this provides host support for SD and MMC interfaces, in both
618 PIO and external DMA modes.
619
620config MMC_DW_IDMAC
621 bool "Internal DMAC interface"
622 depends on MMC_DW
623 help
624 This selects support for the internal DMAC block within the Synopsys
625 Designware Mobile Storage IP block. This disables the external DMA
626 interface.
627
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530628config MMC_DW_PLTFM
629 tristate "Synopsys Designware MCI Support as platform device"
630 depends on MMC_DW
631 default y
632 help
633 This selects the common helper functions support for Host Controller
634 Interface based platform driver. Please select this option if the IP
635 is present as a platform device. This is the common interface for the
636 Synopsys Designware IP.
637
638 If you have a controller with this interface, say Y or M here.
639
640 If unsure, say Y.
641
Thomas Abrahamc3665002012-09-17 18:16:43 +0000642config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900643 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000644 depends on MMC_DW
645 select MMC_DW_PLTFM
646 help
647 This selects support for Samsung Exynos SoC specific extensions to the
648 Synopsys DesignWare Memory Card Interface driver. Select this option
649 for platforms based on Exynos4 and Exynos5 SoC's.
650
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800651config MMC_DW_K3
652 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
653 depends on MMC_DW
654 select MMC_DW_PLTFM
655 select MMC_DW_IDMAC
656 help
657 This selects support for Hisilicon K3 SoC specific extensions to the
658 Synopsys DesignWare Memory Card Interface driver. Select this option
659 for platforms based on Hisilicon K3 SoC's.
660
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530661config MMC_DW_PCI
662 tristate "Synopsys Designware MCI support on PCI bus"
663 depends on MMC_DW && PCI
664 help
665 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
666 Select this option if the IP is present on PCI platform.
667
668 If you have a controller with this interface, say Y or M here.
669
670 If unsure, say N.
671
addy ke4cdc2ec2014-08-19 12:36:14 +0800672config MMC_DW_ROCKCHIP
673 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
674 depends on MMC_DW && ARCH_ROCKCHIP
675 select MMC_DW_PLTFM
676 help
677 This selects support for Rockchip SoC specific extensions to the
678 Synopsys DesignWare Memory Card Interface driver. Select this option
679 for platforms based on RK3066, RK3188 and RK3288 SoC's.
680
Yusuke Godafdc50a92010-05-26 14:41:59 -0700681config MMC_SH_MMCIF
682 tristate "SuperH Internal MMCIF support"
Geert Uytterhoeven0e7d4372014-07-09 20:52:41 +0200683 depends on MMC_BLOCK && HAS_DMA
Laurent Pinchart9ccb0bd2013-11-27 02:18:30 +0100684 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700685 help
Uwe Kleine-Königb5950762010-11-01 15:38:34 -0400686 This selects the MMC Host Interface controller (MMCIF).
Yusuke Godafdc50a92010-05-26 14:41:59 -0700687
688 This driver supports MMCIF in sh7724/sh7757/sh7372.
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000689
690config MMC_JZ4740
691 tristate "JZ4740 SD/Multimedia Card Interface support"
692 depends on MACH_JZ4740
693 help
694 This selects support for the SD/MMC controller on Ingenic JZ4740
695 SoCs.
696 If you have a board based on such a SoC and with a SD/MMC slot,
697 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000698
Tony Olech88095e72011-05-14 16:48:13 -0400699config MMC_VUB300
700 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
701 depends on USB
702 help
703 This selects support for Elan Digital Systems' VUB300 chip.
704
705 The VUB300 is a USB-SDIO Host Controller Interface chip
706 that enables the host computer to use SDIO/SD/MMC cards
707 via a USB 2.0 or USB 1.1 host.
708
709 The VUB300 chip will be found in both physically separate
710 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
711
712 The VUB300 chip supports SD and MMC memory cards in addition
713 to single and multifunction SDIO cards.
714
715 Some SDIO cards will need a firmware file to be loaded and
716 sent to VUB300 chip in order to achieve better data throughput.
717 Download these "Offload Pseudocode" from Elan Digital Systems'
718 web-site http://www.elandigitalsystems.com/support/downloads.php
719 and put them in /lib/firmware. Note that without these additional
720 firmware files the VUB300 chip will still function, but not at
721 the best obtainable data rate.
722
723 To compile this mmc host controller driver as a module,
724 choose M here: the module will be called vub300.
725
726 If you have a computer with an embedded VUB300 chip
727 or if you intend connecting a USB adapter based on a
728 VUB300 chip say Y or M here.
729
David Vrabel53f3a9e2010-09-02 14:15:08 +0000730config MMC_USHC
731 tristate "USB SD Host Controller (USHC) support"
732 depends on USB
733 help
734 This selects support for USB SD Host Controllers based on
735 the Cypress Astoria chip with firmware compliant with CSR's
736 USB SD Host Controller specification (CS-118793-SP).
737
738 CSR boards with this device include: USB<>SDIO (M1985v2),
739 and Ultrasira.
740
741 Note: These controllers only support SDIO cards and do not
742 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300743
744config MMC_WMT
745 tristate "Wondermedia SD/MMC Host Controller support"
746 depends on ARCH_VT8500
747 default y
748 help
749 This selects support for the SD/MMC Host Controller on
750 Wondermedia WM8505/WM8650 based SoCs.
751
752 To compile this driver as a module, choose M here: the
753 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800754
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200755config MMC_USDHI6ROL0
756 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
Geert Uytterhoeven1ef94742014-07-09 20:52:42 +0200757 depends on HAS_DMA
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200758 help
759 This selects support for the Renesas USDHI6ROL0 SD/SDIO
760 Host Controller
761
Wei WANG2c94b642012-11-09 20:53:34 +0800762config MMC_REALTEK_PCI
763 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
764 depends on MFD_RTSX_PCI
765 help
766 Say Y here to include driver code to support SD/MMC card interface
767 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800768
769config MMC_REALTEK_USB
770 tristate "Realtek USB SD/MMC Card Interface Driver"
771 depends on MFD_RTSX_USB
772 help
773 Say Y here to include driver code to support SD/MMC card interface
774 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200775
776config MMC_SUNXI
777 tristate "Allwinner sunxi SD/MMC Host Controller support"
778 depends on ARCH_SUNXI
779 help
780 This selects support for the SD/MMC Host Controller on
781 Allwinner sunxi SoCs.
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100782
783config MMC_TOSHIBA_PCI
784 tristate "Toshiba Type A SD/MMC Card Interface Driver"
785 depends on PCI
786 help
Chaotian Jing20848902015-06-15 19:20:48 +0800787
788config MMC_MTK
789 tristate "MediaTek SD/MMC Card Interface support"
Geert Uytterhoevenc2b22ff2015-06-26 14:09:26 +0200790 depends on HAS_DMA
Chaotian Jing20848902015-06-15 19:20:48 +0800791 help
792 This selects the MediaTek(R) Secure digital and Multimedia card Interface.
793 If you have a machine with a integrated SD/MMC card reader, say Y or M here.
794 This is needed if support for any SD/SDIO/MMC devices is required.
795 If unsure, say N.