blob: 0b5c87114369f627487364fcb7f8ade3517ff89e [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
Adrian Hunter6e1c7d62016-04-15 14:06:57 +0300100 select IOSF_MBI if X86
Adrian Hunterc4e05032012-11-23 21:17:34 +0100101 help
102 This selects support for ACPI enumerated SDHCI controllers,
103 identified by ACPI Compatibility ID PNP0D40 or specific
104 ACPI Hardware IDs.
105
106 If you have a controller with this interface, say Y or M here.
107
108 If unsure, say N.
109
Shawn Guof0de8362011-06-02 10:57:50 +0800110config MMC_SDHCI_PLTFM
111 tristate "SDHCI platform and OF driver helper"
Shawn Guo38576af2011-05-27 23:48:14 +0800112 depends on MMC_SDHCI
Shawn Guof0de8362011-06-02 10:57:50 +0800113 help
114 This selects the common helper functions support for Secure Digital
115 Host Controller Interface based platform and OF drivers.
116
117 If you have a controller with this interface, say Y or M here.
118
119 If unsure, say N.
120
Soren Brinkmanne3ec3a32013-12-02 10:02:36 -0800121config MMC_SDHCI_OF_ARASAN
122 tristate "SDHCI OF support for the Arasan SDHCI controllers"
123 depends on MMC_SDHCI_PLTFM
124 depends on OF
125 help
126 This selects the Arasan Secure Digital Host Controller Interface
127 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
128
129 If you have a controller with this interface, say Y or M here.
130
131 If unsure, say N.
132
ludovic.desroches@atmel.combb5f8ea2015-07-29 16:22:47 +0200133config MMC_SDHCI_OF_AT91
134 tristate "SDHCI OF support for the Atmel SDMMC controller"
135 depends on MMC_SDHCI_PLTFM
136 depends on OF
137 select MMC_SDHCI_IO_ACCESSORS
138 help
139 This selects the Atmel SDMMC driver
140
Shawn Guof0de8362011-06-02 10:57:50 +0800141config MMC_SDHCI_OF_ESDHC
142 tristate "SDHCI OF support for the Freescale eSDHC controller"
143 depends on MMC_SDHCI_PLTFM
yangbo lu2ca63522015-10-08 18:36:47 +0800144 depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
145 select MMC_SDHCI_IO_ACCESSORS
Albert Herranz7657c3a2009-12-17 15:27:20 -0800146 help
147 This selects the Freescale eSDHC controller support.
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300148
Shawn Guof0de8362011-06-02 10:57:50 +0800149 If you have a controller with this interface, say Y or M here.
150
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300151 If unsure, say N.
152
Albert Herranz1144ab52009-12-17 15:27:20 -0800153config MMC_SDHCI_OF_HLWD
Shawn Guof0de8362011-06-02 10:57:50 +0800154 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
155 depends on MMC_SDHCI_PLTFM
Kevin Hao5f2e0972015-02-26 20:08:21 +0800156 depends on PPC
Albert Herranz1144ab52009-12-17 15:27:20 -0800157 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
158 help
159 This selects the Secure Digital Host Controller Interface (SDHCI)
160 found in the "Hollywood" chipset of the Nintendo Wii video game
161 console.
162
Shawn Guof0de8362011-06-02 10:57:50 +0800163 If you have a controller with this interface, say Y or M here.
164
Albert Herranz1144ab52009-12-17 15:27:20 -0800165 If unsure, say N.
166
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700167config MMC_SDHCI_CNS3XXX
Shawn Guo85d65092011-05-27 23:48:12 +0800168 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700169 depends on ARCH_CNS3XXX
Shawn Guof0de8362011-06-02 10:57:50 +0800170 depends on MMC_SDHCI_PLTFM
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700171 help
172 This selects the SDHCI support for CNS3xxx System-on-Chip devices.
173
Shawn Guof0de8362011-06-02 10:57:50 +0800174 If you have a controller with this interface, say Y or M here.
175
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700176 If unsure, say N.
177
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200178config MMC_SDHCI_ESDHC_IMX
Shawn Guo95a24822011-09-19 17:32:21 +0800179 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
Sascha Hauer2b795512011-08-24 08:41:08 +0200180 depends on ARCH_MXC
Shawn Guof0de8362011-06-02 10:57:50 +0800181 depends on MMC_SDHCI_PLTFM
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200182 select MMC_SDHCI_IO_ACCESSORS
183 help
Shawn Guo95a24822011-09-19 17:32:21 +0800184 This selects the Freescale eSDHC/uSDHC controller support
185 found on i.MX25, i.MX35 i.MX5x and i.MX6x.
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200186
Shawn Guof0de8362011-06-02 10:57:50 +0800187 If you have a controller with this interface, say Y or M here.
188
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200189 If unsure, say N.
190
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500191config MMC_SDHCI_DOVE
Shawn Guo85d65092011-05-27 23:48:12 +0800192 tristate "SDHCI support on Marvell's Dove SoC"
Sebastian Hesselbarthec4422a2014-05-19 20:02:51 +0200193 depends on ARCH_DOVE || MACH_DOVE
Shawn Guof0de8362011-06-02 10:57:50 +0800194 depends on MMC_SDHCI_PLTFM
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500195 select MMC_SDHCI_IO_ACCESSORS
196 help
197 This selects the Secure Digital Host Controller Interface in
198 Marvell's Dove SoC.
199
Shawn Guof0de8362011-06-02 10:57:50 +0800200 If you have a controller with this interface, say Y or M here.
201
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500202 If unsure, say N.
203
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500204config MMC_SDHCI_TEGRA
Shawn Guo85d65092011-05-27 23:48:12 +0800205 tristate "SDHCI platform support for the Tegra SD/MMC Controller"
206 depends on ARCH_TEGRA
Shawn Guof0de8362011-06-02 10:57:50 +0800207 depends on MMC_SDHCI_PLTFM
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500208 select MMC_SDHCI_IO_ACCESSORS
209 help
210 This selects the Tegra SD/MMC controller. If you have a Tegra
211 platform with SD or MMC devices, say Y or M here.
212
213 If unsure, say N.
214
Ben Dooks0d1bb412009-06-14 13:52:37 +0100215config MMC_SDHCI_S3C
216 tristate "SDHCI support on Samsung S3C SoC"
Kyungmin Park930a6f72010-08-19 14:13:35 -0700217 depends on MMC_SDHCI && PLAT_SAMSUNG
Ben Dooks0d1bb412009-06-14 13:52:37 +0100218 help
219 This selects the Secure Digital Host Controller Interface (SDHCI)
220 often referrered to as the HSMMC block in some of the Samsung S3C
221 range of SoC.
222
Ben Dooks0d1bb412009-06-14 13:52:37 +0100223 If you have a controller with this interface, say Y or M here.
224
225 If unsure, say N.
226
Barry Songb3b665b2013-03-21 16:27:19 +0800227config MMC_SDHCI_SIRF
228 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
229 depends on ARCH_SIRF
230 depends on MMC_SDHCI_PLTFM
Weijun Yanga1b0b972015-04-27 08:15:14 +0000231 select MMC_SDHCI_IO_ACCESSORS
Barry Songb3b665b2013-03-21 16:27:19 +0800232 help
233 This selects the SDHCI support for SiRF System-on-Chip devices.
234
235 If you have a controller with this interface, say Y or M here.
236
237 If unsure, say N.
238
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800239config MMC_SDHCI_PXAV3
240 tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
241 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200242 depends on MMC_SDHCI_PLTFM
Jean Delvaredaa30542015-02-23 11:30:40 +0100243 depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800244 default CPU_MMP2
245 help
246 This selects the Marvell(R) PXAV3 SD Host Controller.
247 If you have a MMP2 platform with SD Host Controller
248 and a card slot, say Y or M here.
249
250 If unsure, say N.
251
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800252config MMC_SDHCI_PXAV2
253 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
254 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200255 depends on MMC_SDHCI_PLTFM
Jean Delvare8a8735e2015-01-26 11:23:28 +0100256 depends on ARCH_MMP || COMPILE_TEST
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800257 default CPU_PXA910
258 help
259 This selects the Marvell(R) PXAV2 SD Host Controller.
260 If you have a PXA9XX platform with SD Host Controller
261 and a card slot, say Y or M here.
262
263 If unsure, say N.
264
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700265config MMC_SDHCI_SPEAR
266 tristate "SDHCI support on ST SPEAr platform"
267 depends on MMC_SDHCI && PLAT_SPEAR
Ulf Hanssonbbd7f0a2015-03-04 14:57:44 +0100268 depends on OF
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700269 help
270 This selects the Secure Digital Host Controller Interface (SDHCI)
271 often referrered to as the HSMMC block in some of the ST SPEAR range
272 of SoC
273
274 If you have a controller with this interface, say Y or M here.
275
276 If unsure, say N.
277
Ben Dooks0d1bb412009-06-14 13:52:37 +0100278config MMC_SDHCI_S3C_DMA
279 bool "DMA support on S3C SDHCI"
Kees Cook86147c82012-10-02 11:17:47 -0700280 depends on MMC_SDHCI_S3C
Ben Dooks0d1bb412009-06-14 13:52:37 +0100281 help
282 Enable DMA support on the Samsung S3C SDHCI glue. The DMA
283 has proved to be problematic if the controller encounters
284 certain errors, and thus should be treated with care.
285
286 YMMV.
287
Christian Daudt01ebea12013-06-20 14:26:37 -0700288config MMC_SDHCI_BCM_KONA
289 tristate "SDHCI support on Broadcom KONA platform"
Christian Daudtfc2bd2e2013-09-23 10:20:35 -0700290 depends on ARCH_BCM_MOBILE
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200291 depends on MMC_SDHCI_PLTFM
Christian Daudt01ebea12013-06-20 14:26:37 -0700292 help
293 This selects the Broadcom Kona Secure Digital Host Controller
294 Interface(SDHCI) support.
295 This is used in Broadcom mobile SoCs.
296
297 If you have a controller with this interface, say Y or M here.
298
Vincent Yang87a50742015-01-20 16:05:18 +0800299config MMC_SDHCI_F_SDH30
300 tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
301 depends on MMC_SDHCI_PLTFM
302 depends on OF
303 help
304 This selects the Secure Digital Host Controller Interface (SDHCI)
305 Needed by some Fujitsu SoC for MMC / SD / SDIO support.
306 If you have a controller with this interface, say Y or M here.
307
308 If unsure, say N.
309
Scott Brandenb580c522015-02-09 16:06:30 -0800310config MMC_SDHCI_IPROC
Stefan Wahren77cb7d32016-01-27 22:25:41 +0000311 tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
312 depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
Scott Brandenb580c522015-02-09 16:06:30 -0800313 depends on MMC_SDHCI_PLTFM
314 default ARCH_BCM_IPROC
315 select MMC_SDHCI_IO_ACCESSORS
316 help
317 This selects the iProc SD/MMC controller.
318
Stefan Wahren77cb7d32016-01-27 22:25:41 +0000319 If you have a BCM2835 or IPROC platform with SD or MMC devices,
Scott Brandenb580c522015-02-09 16:06:30 -0800320 say Y or M here.
321
322 If unsure, say N.
323
Jonas Jensen1b66e942014-04-09 15:54:11 +0200324config MMC_MOXART
325 tristate "MOXART SD/MMC Host Controller support"
326 depends on ARCH_MOXART && MMC
327 help
328 This selects support for the MOXART SD/MMC Host Controller.
329 MOXA provides one multi-functional card reader which can
330 be found on some embedded hardware such as UC-7112-LX.
331 If you have a controller with this interface, say Y here.
332
Peter Griffinf52d9c42014-07-09 16:07:32 +0100333config MMC_SDHCI_ST
334 tristate "SDHCI support on STMicroelectronics SoC"
335 depends on ARCH_STI
336 depends on MMC_SDHCI_PLTFM
337 select MMC_SDHCI_IO_ACCESSORS
338 help
339 This selects the Secure Digital Host Controller Interface in
340 STMicroelectronics SoCs.
341
342 If you have a controller with this interface, say Y or M here.
343 If unsure, say N.
344
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100345config MMC_OMAP
346 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200347 depends on ARCH_OMAP
Arnd Bergmann60a549f2014-06-05 23:14:40 +0200348 depends on TPS65010 || !MACH_OMAP_H2
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100349 help
350 This selects the TI OMAP Multimedia card Interface.
351 If you have an OMAP board with a Multimedia Card slot,
352 say Y or M here.
353
354 If unsure, say N.
355
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100356config MMC_OMAP_HS
357 tristate "TI OMAP High Speed Multimedia Card Interface support"
Geert Uytterhoevenc00c5942014-07-09 20:52:40 +0200358 depends on HAS_DMA
Lokesh Vutlaa7cedab2015-10-20 16:50:06 -0500359 depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100360 help
361 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530362 If you have an omap2plus board with a Multimedia Card slot,
363 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100364
365 If unsure, say N.
366
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100367config MMC_WBSD
368 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200369 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100370 help
371 This selects the Winbond(R) W83L51xD Secure digital and
372 Multimedia card Interface.
373 If you have a machine with a integrated W83L518D or W83L519D
374 SD/MMC card reader, say Y or M here.
375
376 If unsure, say N.
377
378config MMC_AU1X
379 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200380 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100381 help
382 This selects the AMD Alchemy(R) Multimedia card interface.
383 If you have a Alchemy platform with a MMC slot, say Y or M here.
384
385 If unsure, say N.
386
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200387config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100388 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Rob Emanuele04d699c2009-09-22 16:45:19 -0700389 depends on AVR32 || ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200390 help
391 This selects the Atmel Multimedia Card Interface driver. If
Rob Emanuele04d699c2009-09-22 16:45:19 -0700392 you have an AT32 (AVR32) or AT91 platform with a Multimedia
393 Card slot, say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200394
395 If unsure, say N.
396
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200397config MMC_SDHCI_MSM
398 tristate "Qualcomm SDHCI Controller Support"
Georgi Djakov6096d7a82014-07-11 20:48:13 +0300399 depends on ARCH_QCOM || (ARM && COMPILE_TEST)
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200400 depends on MMC_SDHCI_PLTFM
401 help
402 This selects the Secure Digital Host Controller Interface (SDHCI)
403 support present in Qualcomm SOCs. The controller supports
404 SD/MMC/SDIO devices.
405
406 If you have a controller with this interface, say Y or M here.
407
408 If unsure, say N.
409
Sascha Hauerd96be872009-01-06 17:04:14 +0100410config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200411 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
412 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100413 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200414 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
415 Multimedia Card Interface. If you have an i.MX or MPC512x platform
416 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100417
418 If unsure, say N.
419
Shawn Guoe4243f12011-02-21 18:35:28 +0800420config MMC_MXS
421 tristate "Freescale MXS Multimedia Card Interface support"
422 depends on ARCH_MXS && MXS_DMA
423 help
424 This selects the Freescale SSP MMC controller found on MXS based
425 platforms like mx23/28.
426
427 If unsure, say N.
428
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100429config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700430 tristate "TI Flash Media MMC/SD Interface support"
431 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100432 select TIFM_CORE
433 help
434 Say Y here if you want to be able to access MMC/SD cards with
435 the Texas Instruments(R) Flash Media card reader, found in many
436 laptops.
437 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
438 probably also need appropriate card reader host adapter, such as
439 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
440 (TIFM_7XX1)'.
441
442 To compile this driver as a module, choose M here: the
443 module will be called tifm_sd.
444
Maen Suleiman236caa72009-02-14 03:07:26 -0500445config MMC_MVSDIO
446 tristate "Marvell MMC/SD/SDIO host driver"
447 depends on PLAT_ORION
Linus Walleij17da6782015-11-25 14:57:57 +0100448 depends on OF
Maen Suleiman236caa72009-02-14 03:07:26 -0500449 ---help---
450 This selects the Marvell SDIO host driver.
451 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
452 SoC controllers.
453
454 To compile this driver as a module, choose M here: the
455 module will be called mvsdio.
456
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800457config MMC_DAVINCI
458 tristate "TI DAVINCI Multimedia Card Interface support"
459 depends on ARCH_DAVINCI
460 help
461 This selects the TI DAVINCI Multimedia card Interface.
462 If you have an DAVINCI board with a Multimedia Card slot,
463 say Y or M here. If unsure, say N.
464
Mike Lockwood85c34d22013-01-21 23:43:46 +0000465config MMC_GOLDFISH
466 tristate "goldfish qemu Multimedia Card Interface support"
Geert Uytterhoeven3d3587722015-11-09 10:36:01 +0100467 depends on HAS_DMA
Luis de Bethencourt7f8a9a72015-10-10 17:08:32 +0100468 depends on GOLDFISH || COMPILE_TEST
Mike Lockwood85c34d22013-01-21 23:43:46 +0000469 help
470 This selects the Goldfish Multimedia card Interface emulation
471 found on the Goldfish Android virtual device emulation.
472
David Brownell15a05802007-08-08 09:12:54 -0700473config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200474 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200475 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700476 select CRC7
477 select CRC_ITU_T
478 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100479 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200480 instead of using a "native" MMC/SD/SDIO controller. This has a
481 disadvantage of being relatively high overhead, but a compensating
482 advantage of working on many systems without dedicated MMC/SD/SDIO
483 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700484
485 If unsure, or if your system has no SPI master driver, say N.
486
Thomas Kleffelbe518012008-06-30 22:40:24 +0100487config MMC_S3C
488 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900489 depends on ARCH_S3C24XX
Vasily Khoruzhickb45e4b52014-06-01 20:22:09 +0300490 depends on S3C24XX_DMAC
Thomas Kleffelbe518012008-06-30 22:40:24 +0100491 help
492 This selects a driver for the MCI interface found in
493 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
494 If you have a board based on one of those and a MMC/SD
495 slot, say Y or M here.
496
497 If unsure, say N.
498
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700499config MMC_S3C_HW_SDIO_IRQ
500 bool "Hardware support for SDIO IRQ"
501 depends on MMC_S3C
502 help
503 Enable the hardware support for SDIO interrupts instead of using
504 the generic polling code.
505
Ben Dooks26f14942009-10-01 15:44:18 -0700506choice
507 prompt "Samsung S3C SD/MMC transfer code"
508 depends on MMC_S3C
509
510config MMC_S3C_PIO
511 bool "Use PIO transfers only"
512 help
513 Use PIO to transfer data between memory and the hardware.
514
515 PIO is slower than DMA as it requires CPU instructions to
516 move the data. This has been the traditional default for
517 the S3C MCI driver.
518
519config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700520 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700521 help
522 Use DMA to transfer data between memory and the hardare.
523
524 Currently, the DMA support in this driver seems to not be
525 working properly and needs to be debugged before this
526 option is useful.
527
Ben Dooks26f14942009-10-01 15:44:18 -0700528endchoice
529
Sascha Sommer6a369132008-07-15 14:21:29 +0200530config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700531 tristate "MMC/SD driver for Ricoh Bay1Controllers"
532 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200533 help
534 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
535 card whenever you insert a MMC or SD card into the card slot.
536
537 To compile this driver as a module, choose M here: the
538 module will be called sdricoh_cs.
539
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100540config MMC_TMIO_CORE
541 tristate
542
Ian Molton4a489982008-07-15 16:02:21 +0100543config MMC_TMIO
544 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100545 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100546 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100547 help
548 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200549 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200550
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100551config MMC_SDHI
552 tristate "SH-Mobile SDHI SD/SDIO controller support"
Wolfram Sanga72e8b12016-02-15 16:01:48 +0100553 depends on SUPERH || ARM || ARM64
Simon Horman49312c12016-02-24 11:39:33 +0900554 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100555 select MMC_TMIO_CORE
556 help
557 This provides support for the SDHI SD/SDIO controller found in
558 SuperH and ARM SH-Mobile SoCs
559
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200560config MMC_CB710
561 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200562 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200563 select CB710_CORE
564 help
565 This option enables support for MMC/SD part of ENE CB710/720 Flash
566 memory card reader found in some laptops (ie. some versions of
567 HP Compaq nx9500).
568
569 This driver can also be built as a module. If so, the module
570 will be called cb710-mmc.
571
Harald Weltef0bf7f62009-06-17 20:22:39 +0200572config MMC_VIA_SDMMC
573 tristate "VIA SD/MMC Card Reader Driver"
574 depends on PCI
575 help
576 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
577 VIA provides one multi-functional card reader which integrated into
578 some motherboards manufactured by VIA. This card reader supports
579 SD/MMC/SDHC.
580 If you have a controller with this interface, say Y or M here.
581
582 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800583
584config SDH_BFIN
585 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800586 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800587 help
588 If you say yes here you will get support for the Blackfin on-chip
589 Secure Digital Host interface. This includes support for MMC and
590 SD cards.
591
592 To compile this driver as a module, choose M here: the
593 module will be called bfin_sdh.
594
595 If unsure, say N.
596
597config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
598 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
599 depends on SDH_BFIN
600 help
601 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700602
Will Newtonf95f3852011-01-02 01:11:59 -0500603config MMC_DW
604 tristate "Synopsys DesignWare Memory Card Interface"
Andrew Bresticker0857c692014-08-14 09:45:27 -0700605 depends on HAS_DMA
Alim Akhtarc34346b2014-08-29 15:54:51 +0530606 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
Will Newtonf95f3852011-01-02 01:11:59 -0500607 help
608 This selects support for the Synopsys DesignWare Mobile Storage IP
609 block, this provides host support for SD and MMC interfaces, in both
Shawn Lin3fc7eae2015-09-16 14:41:23 +0800610 PIO, internal DMA mode and external DMA mode.
Will Newtonf95f3852011-01-02 01:11:59 -0500611
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530612config MMC_DW_PLTFM
613 tristate "Synopsys Designware MCI Support as platform device"
614 depends on MMC_DW
615 default y
616 help
617 This selects the common helper functions support for Host Controller
618 Interface based platform driver. Please select this option if the IP
619 is present as a platform device. This is the common interface for the
620 Synopsys Designware IP.
621
622 If you have a controller with this interface, say Y or M here.
623
624 If unsure, say Y.
625
Thomas Abrahamc3665002012-09-17 18:16:43 +0000626config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900627 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000628 depends on MMC_DW
629 select MMC_DW_PLTFM
630 help
631 This selects support for Samsung Exynos SoC specific extensions to the
632 Synopsys DesignWare Memory Card Interface driver. Select this option
633 for platforms based on Exynos4 and Exynos5 SoC's.
634
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800635config MMC_DW_K3
636 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
637 depends on MMC_DW
638 select MMC_DW_PLTFM
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800639 help
640 This selects support for Hisilicon K3 SoC specific extensions to the
641 Synopsys DesignWare Memory Card Interface driver. Select this option
642 for platforms based on Hisilicon K3 SoC's.
643
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530644config MMC_DW_PCI
645 tristate "Synopsys Designware MCI support on PCI bus"
646 depends on MMC_DW && PCI
647 help
648 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
649 Select this option if the IP is present on PCI platform.
650
651 If you have a controller with this interface, say Y or M here.
652
653 If unsure, say N.
654
addy ke4cdc2ec2014-08-19 12:36:14 +0800655config MMC_DW_ROCKCHIP
656 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
657 depends on MMC_DW && ARCH_ROCKCHIP
658 select MMC_DW_PLTFM
659 help
660 This selects support for Rockchip SoC specific extensions to the
661 Synopsys DesignWare Memory Card Interface driver. Select this option
662 for platforms based on RK3066, RK3188 and RK3288 SoC's.
663
Yusuke Godafdc50a92010-05-26 14:41:59 -0700664config MMC_SH_MMCIF
665 tristate "SuperH Internal MMCIF support"
Wolfram Sang963b14f2016-01-25 20:19:14 +0100666 depends on HAS_DMA
Simon Horman49312c12016-02-24 11:39:33 +0900667 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700668 help
Wolfram Sangba9e9152016-04-26 22:34:46 +0200669 This selects the MMC Host Interface controller (MMCIF) found in various
670 Renesas SoCs for SH and ARM architectures.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700671
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000672
673config MMC_JZ4740
674 tristate "JZ4740 SD/Multimedia Card Interface support"
675 depends on MACH_JZ4740
676 help
677 This selects support for the SD/MMC controller on Ingenic JZ4740
678 SoCs.
679 If you have a board based on such a SoC and with a SD/MMC slot,
680 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000681
Tony Olech88095e72011-05-14 16:48:13 -0400682config MMC_VUB300
683 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
684 depends on USB
685 help
686 This selects support for Elan Digital Systems' VUB300 chip.
687
688 The VUB300 is a USB-SDIO Host Controller Interface chip
689 that enables the host computer to use SDIO/SD/MMC cards
690 via a USB 2.0 or USB 1.1 host.
691
692 The VUB300 chip will be found in both physically separate
693 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
694
695 The VUB300 chip supports SD and MMC memory cards in addition
696 to single and multifunction SDIO cards.
697
698 Some SDIO cards will need a firmware file to be loaded and
699 sent to VUB300 chip in order to achieve better data throughput.
700 Download these "Offload Pseudocode" from Elan Digital Systems'
701 web-site http://www.elandigitalsystems.com/support/downloads.php
702 and put them in /lib/firmware. Note that without these additional
703 firmware files the VUB300 chip will still function, but not at
704 the best obtainable data rate.
705
706 To compile this mmc host controller driver as a module,
707 choose M here: the module will be called vub300.
708
709 If you have a computer with an embedded VUB300 chip
710 or if you intend connecting a USB adapter based on a
711 VUB300 chip say Y or M here.
712
David Vrabel53f3a9e2010-09-02 14:15:08 +0000713config MMC_USHC
714 tristate "USB SD Host Controller (USHC) support"
715 depends on USB
716 help
717 This selects support for USB SD Host Controllers based on
718 the Cypress Astoria chip with firmware compliant with CSR's
719 USB SD Host Controller specification (CS-118793-SP).
720
721 CSR boards with this device include: USB<>SDIO (M1985v2),
722 and Ultrasira.
723
724 Note: These controllers only support SDIO cards and do not
725 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300726
727config MMC_WMT
728 tristate "Wondermedia SD/MMC Host Controller support"
729 depends on ARCH_VT8500
730 default y
731 help
732 This selects support for the SD/MMC Host Controller on
733 Wondermedia WM8505/WM8650 based SoCs.
734
735 To compile this driver as a module, choose M here: the
736 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800737
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200738config MMC_USDHI6ROL0
739 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
Geert Uytterhoeven1ef94742014-07-09 20:52:42 +0200740 depends on HAS_DMA
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200741 help
742 This selects support for the Renesas USDHI6ROL0 SD/SDIO
743 Host Controller
744
Wei WANG2c94b642012-11-09 20:53:34 +0800745config MMC_REALTEK_PCI
746 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
747 depends on MFD_RTSX_PCI
748 help
749 Say Y here to include driver code to support SD/MMC card interface
750 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800751
752config MMC_REALTEK_USB
753 tristate "Realtek USB SD/MMC Card Interface Driver"
754 depends on MFD_RTSX_USB
755 help
756 Say Y here to include driver code to support SD/MMC card interface
757 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200758
759config MMC_SUNXI
760 tristate "Allwinner sunxi SD/MMC Host Controller support"
761 depends on ARCH_SUNXI
762 help
763 This selects support for the SD/MMC Host Controller on
764 Allwinner sunxi SoCs.
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100765
766config MMC_TOSHIBA_PCI
767 tristate "Toshiba Type A SD/MMC Card Interface Driver"
768 depends on PCI
769 help
Chaotian Jing20848902015-06-15 19:20:48 +0800770
771config MMC_MTK
772 tristate "MediaTek SD/MMC Card Interface support"
Geert Uytterhoevenc2b22ff2015-06-26 14:09:26 +0200773 depends on HAS_DMA
Chaotian Jing20848902015-06-15 19:20:48 +0800774 help
775 This selects the MediaTek(R) Secure digital and Multimedia card Interface.
776 If you have a machine with a integrated SD/MMC card reader, say Y or M here.
777 This is needed if support for any SD/SDIO/MMC devices is required.
778 If unsure, say N.
Andrei Pistirica5d9460d2016-01-13 18:15:45 -0700779
780config MMC_SDHCI_MICROCHIP_PIC32
781 tristate "Microchip PIC32MZDA SDHCI support"
782 depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
783 help
784 This selects the Secure Digital Host Controller Interface (SDHCI)
785 for PIC32MZDA platform.
786
787 If you have a controller with this interface, say Y or M here.
788
789 If unsure, say N.
Al Cooper476bf3d2016-06-16 12:47:16 -0400790config MMC_SDHCI_BRCMSTB
791 tristate "Broadcom SDIO/SD/MMC support"
792 depends on ARCH_BRCMSTB || BMIPS_GENERIC
793 depends on MMC_SDHCI_PLTFM
794 default y
795 help
796 This selects support for the SDIO/SD/MMC Host Controller on
797 Broadcom STB SoCs.
798
799 If unsure, say Y.