blob: 85df91f55b63db1e0d54290d4e4002a32f02a217 [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
60 select MMC_SDHCI_IO_ACCESSORS
61 help
62 This option is selected by drivers running on big endian hosts
63 and performing I/O to a SDHCI controller through a bus that
64 implements a hardware byte swapper using a 32-bit datum.
65 This endian mapping mode is called "data invariance" and
66 has the effect of scrambling the addresses and formats of data
67 accessed in sizes other than the datum size.
68
Albert Herranz1144ab52009-12-17 15:27:20 -080069 This is the case for the Freescale eSDHC and Nintendo Wii SDHCI.
Albert Herranz7657c3a2009-12-17 15:27:20 -080070
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010071config MMC_SDHCI_PCI
72 tristate "SDHCI support on PCI bus"
73 depends on MMC_SDHCI && PCI
74 help
75 This selects the PCI Secure Digital Host Controller Interface.
76 Most controllers found today are PCI devices.
77
Pierre Ossman1c6a0712007-02-11 19:57:36 +010078 If you have a controller with this interface, say Y or M here.
79
80 If unsure, say N.
81
Philip Langdale5ae70292007-09-15 12:54:08 -070082config MMC_RICOH_MMC
Kees Cook86147c82012-10-02 11:17:47 -070083 bool "Ricoh MMC Controller Disabler"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010084 depends on MMC_SDHCI_PCI
Philip Langdale5ae70292007-09-15 12:54:08 -070085 help
Maxim Levitsky03cd8f72010-03-05 13:43:20 -080086 This adds a pci quirk to disable Ricoh MMC Controller. This
Philip Langdale5ae70292007-09-15 12:54:08 -070087 proprietary controller is unnecessary because the SDHCI driver
88 supports MMC cards on the SD controller, but if it is not
89 disabled, it will steal the MMC cards away - rendering them
Maxim Levitsky03cd8f72010-03-05 13:43:20 -080090 useless. It is safe to select this even if you don't
Philip Langdale5ae70292007-09-15 12:54:08 -070091 have a Ricoh based card reader.
92
Philip Langdale5ae70292007-09-15 12:54:08 -070093 If unsure, say Y.
94
Adrian Hunterc4e05032012-11-23 21:17:34 +010095config MMC_SDHCI_ACPI
96 tristate "SDHCI support for ACPI enumerated SDHCI controllers"
97 depends on MMC_SDHCI && ACPI
98 help
99 This selects support for ACPI enumerated SDHCI controllers,
100 identified by ACPI Compatibility ID PNP0D40 or specific
101 ACPI Hardware IDs.
102
103 If you have a controller with this interface, say Y or M here.
104
105 If unsure, say N.
106
Shawn Guof0de8362011-06-02 10:57:50 +0800107config MMC_SDHCI_PLTFM
108 tristate "SDHCI platform and OF driver helper"
Shawn Guo38576af2011-05-27 23:48:14 +0800109 depends on MMC_SDHCI
Shawn Guof0de8362011-06-02 10:57:50 +0800110 help
111 This selects the common helper functions support for Secure Digital
112 Host Controller Interface based platform and OF drivers.
113
114 If you have a controller with this interface, say Y or M here.
115
116 If unsure, say N.
117
Soren Brinkmanne3ec3a32013-12-02 10:02:36 -0800118config MMC_SDHCI_OF_ARASAN
119 tristate "SDHCI OF support for the Arasan SDHCI controllers"
120 depends on MMC_SDHCI_PLTFM
121 depends on OF
122 help
123 This selects the Arasan Secure Digital Host Controller Interface
124 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
125
126 If you have a controller with this interface, say Y or M here.
127
128 If unsure, say N.
129
Shawn Guof0de8362011-06-02 10:57:50 +0800130config MMC_SDHCI_OF_ESDHC
131 tristate "SDHCI OF support for the Freescale eSDHC controller"
132 depends on MMC_SDHCI_PLTFM
Rob Herring236cdc72011-01-03 11:56:38 -0600133 depends on PPC_OF
Albert Herranz7657c3a2009-12-17 15:27:20 -0800134 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
135 help
136 This selects the Freescale eSDHC controller support.
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300137
Shawn Guof0de8362011-06-02 10:57:50 +0800138 If you have a controller with this interface, say Y or M here.
139
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300140 If unsure, say N.
141
Albert Herranz1144ab52009-12-17 15:27:20 -0800142config MMC_SDHCI_OF_HLWD
Shawn Guof0de8362011-06-02 10:57:50 +0800143 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
144 depends on MMC_SDHCI_PLTFM
Rob Herring236cdc72011-01-03 11:56:38 -0600145 depends on PPC_OF
Albert Herranz1144ab52009-12-17 15:27:20 -0800146 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
147 help
148 This selects the Secure Digital Host Controller Interface (SDHCI)
149 found in the "Hollywood" chipset of the Nintendo Wii video game
150 console.
151
Shawn Guof0de8362011-06-02 10:57:50 +0800152 If you have a controller with this interface, say Y or M here.
153
Albert Herranz1144ab52009-12-17 15:27:20 -0800154 If unsure, say N.
155
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700156config MMC_SDHCI_CNS3XXX
Shawn Guo85d65092011-05-27 23:48:12 +0800157 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700158 depends on ARCH_CNS3XXX
Shawn Guof0de8362011-06-02 10:57:50 +0800159 depends on MMC_SDHCI_PLTFM
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700160 help
161 This selects the SDHCI support for CNS3xxx System-on-Chip devices.
162
Shawn Guof0de8362011-06-02 10:57:50 +0800163 If you have a controller with this interface, say Y or M here.
164
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700165 If unsure, say N.
166
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200167config MMC_SDHCI_ESDHC_IMX
Shawn Guo95a24822011-09-19 17:32:21 +0800168 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
Sascha Hauer2b795512011-08-24 08:41:08 +0200169 depends on ARCH_MXC
Shawn Guof0de8362011-06-02 10:57:50 +0800170 depends on MMC_SDHCI_PLTFM
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200171 select MMC_SDHCI_IO_ACCESSORS
172 help
Shawn Guo95a24822011-09-19 17:32:21 +0800173 This selects the Freescale eSDHC/uSDHC controller support
174 found on i.MX25, i.MX35 i.MX5x and i.MX6x.
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200175
Shawn Guof0de8362011-06-02 10:57:50 +0800176 If you have a controller with this interface, say Y or M here.
177
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200178 If unsure, say N.
179
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500180config MMC_SDHCI_DOVE
Shawn Guo85d65092011-05-27 23:48:12 +0800181 tristate "SDHCI support on Marvell's Dove SoC"
Sebastian Hesselbarthec4422a2014-05-19 20:02:51 +0200182 depends on ARCH_DOVE || MACH_DOVE
Shawn Guof0de8362011-06-02 10:57:50 +0800183 depends on MMC_SDHCI_PLTFM
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500184 select MMC_SDHCI_IO_ACCESSORS
185 help
186 This selects the Secure Digital Host Controller Interface in
187 Marvell's Dove SoC.
188
Shawn Guof0de8362011-06-02 10:57:50 +0800189 If you have a controller with this interface, say Y or M here.
190
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500191 If unsure, say N.
192
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500193config MMC_SDHCI_TEGRA
Shawn Guo85d65092011-05-27 23:48:12 +0800194 tristate "SDHCI platform support for the Tegra SD/MMC Controller"
195 depends on ARCH_TEGRA
Shawn Guof0de8362011-06-02 10:57:50 +0800196 depends on MMC_SDHCI_PLTFM
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500197 select MMC_SDHCI_IO_ACCESSORS
198 help
199 This selects the Tegra SD/MMC controller. If you have a Tegra
200 platform with SD or MMC devices, say Y or M here.
201
202 If unsure, say N.
203
Ben Dooks0d1bb412009-06-14 13:52:37 +0100204config MMC_SDHCI_S3C
205 tristate "SDHCI support on Samsung S3C SoC"
Kyungmin Park930a6f72010-08-19 14:13:35 -0700206 depends on MMC_SDHCI && PLAT_SAMSUNG
Ben Dooks0d1bb412009-06-14 13:52:37 +0100207 help
208 This selects the Secure Digital Host Controller Interface (SDHCI)
209 often referrered to as the HSMMC block in some of the Samsung S3C
210 range of SoC.
211
Ben Dooks0d1bb412009-06-14 13:52:37 +0100212 If you have a controller with this interface, say Y or M here.
213
214 If unsure, say N.
215
Barry Songb3b665b2013-03-21 16:27:19 +0800216config MMC_SDHCI_SIRF
217 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
218 depends on ARCH_SIRF
219 depends on MMC_SDHCI_PLTFM
220 help
221 This selects the SDHCI support for SiRF System-on-Chip devices.
222
223 If you have a controller with this interface, say Y or M here.
224
225 If unsure, say N.
226
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800227config MMC_SDHCI_PXAV3
228 tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
229 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200230 depends on MMC_SDHCI_PLTFM
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800231 default CPU_MMP2
232 help
233 This selects the Marvell(R) PXAV3 SD Host Controller.
234 If you have a MMP2 platform with SD Host Controller
235 and a card slot, say Y or M here.
236
237 If unsure, say N.
238
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800239config MMC_SDHCI_PXAV2
240 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
241 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200242 depends on MMC_SDHCI_PLTFM
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800243 default CPU_PXA910
244 help
245 This selects the Marvell(R) PXAV2 SD Host Controller.
246 If you have a PXA9XX platform with SD Host Controller
247 and a card slot, say Y or M here.
248
249 If unsure, say N.
250
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700251config MMC_SDHCI_SPEAR
252 tristate "SDHCI support on ST SPEAr platform"
253 depends on MMC_SDHCI && PLAT_SPEAR
254 help
255 This selects the Secure Digital Host Controller Interface (SDHCI)
256 often referrered to as the HSMMC block in some of the ST SPEAR range
257 of SoC
258
259 If you have a controller with this interface, say Y or M here.
260
261 If unsure, say N.
262
Ben Dooks0d1bb412009-06-14 13:52:37 +0100263config MMC_SDHCI_S3C_DMA
264 bool "DMA support on S3C SDHCI"
Kees Cook86147c82012-10-02 11:17:47 -0700265 depends on MMC_SDHCI_S3C
Ben Dooks0d1bb412009-06-14 13:52:37 +0100266 help
267 Enable DMA support on the Samsung S3C SDHCI glue. The DMA
268 has proved to be problematic if the controller encounters
269 certain errors, and thus should be treated with care.
270
271 YMMV.
272
Christian Daudt01ebea12013-06-20 14:26:37 -0700273config MMC_SDHCI_BCM_KONA
274 tristate "SDHCI support on Broadcom KONA platform"
Christian Daudtfc2bd2e2013-09-23 10:20:35 -0700275 depends on ARCH_BCM_MOBILE
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200276 depends on MMC_SDHCI_PLTFM
Christian Daudt01ebea12013-06-20 14:26:37 -0700277 help
278 This selects the Broadcom Kona Secure Digital Host Controller
279 Interface(SDHCI) support.
280 This is used in Broadcom mobile SoCs.
281
282 If you have a controller with this interface, say Y or M here.
283
Stephen Warren1a947152013-01-02 22:34:49 -0700284config MMC_SDHCI_BCM2835
285 tristate "SDHCI platform support for the BCM2835 SD/MMC Controller"
286 depends on ARCH_BCM2835
287 depends on MMC_SDHCI_PLTFM
288 select MMC_SDHCI_IO_ACCESSORS
289 help
290 This selects the BCM2835 SD/MMC controller. If you have a BCM2835
291 platform with SD or MMC devices, say Y or M here.
292
293 If unsure, say N.
294
Vincent Yang87a50742015-01-20 16:05:18 +0800295config MMC_SDHCI_F_SDH30
296 tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
297 depends on MMC_SDHCI_PLTFM
298 depends on OF
299 help
300 This selects the Secure Digital Host Controller Interface (SDHCI)
301 Needed by some Fujitsu SoC for MMC / SD / SDIO support.
302 If you have a controller with this interface, say Y or M here.
303
304 If unsure, say N.
305
Jonas Jensen1b66e942014-04-09 15:54:11 +0200306config MMC_MOXART
307 tristate "MOXART SD/MMC Host Controller support"
308 depends on ARCH_MOXART && MMC
309 help
310 This selects support for the MOXART SD/MMC Host Controller.
311 MOXA provides one multi-functional card reader which can
312 be found on some embedded hardware such as UC-7112-LX.
313 If you have a controller with this interface, say Y here.
314
Peter Griffinf52d9c42014-07-09 16:07:32 +0100315config MMC_SDHCI_ST
316 tristate "SDHCI support on STMicroelectronics SoC"
317 depends on ARCH_STI
318 depends on MMC_SDHCI_PLTFM
319 select MMC_SDHCI_IO_ACCESSORS
320 help
321 This selects the Secure Digital Host Controller Interface in
322 STMicroelectronics SoCs.
323
324 If you have a controller with this interface, say Y or M here.
325 If unsure, say N.
326
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100327config MMC_OMAP
328 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200329 depends on ARCH_OMAP
Arnd Bergmann60a549f2014-06-05 23:14:40 +0200330 depends on TPS65010 || !MACH_OMAP_H2
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100331 help
332 This selects the TI OMAP Multimedia card Interface.
333 If you have an OMAP board with a Multimedia Card slot,
334 say Y or M here.
335
336 If unsure, say N.
337
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100338config MMC_OMAP_HS
339 tristate "TI OMAP High Speed Multimedia Card Interface support"
Geert Uytterhoevenc00c5942014-07-09 20:52:40 +0200340 depends on HAS_DMA
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530341 depends on ARCH_OMAP2PLUS || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100342 help
343 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530344 If you have an omap2plus board with a Multimedia Card slot,
345 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100346
347 If unsure, say N.
348
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100349config MMC_WBSD
350 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200351 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100352 help
353 This selects the Winbond(R) W83L51xD Secure digital and
354 Multimedia card Interface.
355 If you have a machine with a integrated W83L518D or W83L519D
356 SD/MMC card reader, say Y or M here.
357
358 If unsure, say N.
359
360config MMC_AU1X
361 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200362 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100363 help
364 This selects the AMD Alchemy(R) Multimedia card interface.
365 If you have a Alchemy platform with a MMC slot, say Y or M here.
366
367 If unsure, say N.
368
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200369config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100370 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Rob Emanuele04d699c2009-09-22 16:45:19 -0700371 depends on AVR32 || ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200372 help
373 This selects the Atmel Multimedia Card Interface driver. If
Rob Emanuele04d699c2009-09-22 16:45:19 -0700374 you have an AT32 (AVR32) or AT91 platform with a Multimedia
375 Card slot, say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200376
377 If unsure, say N.
378
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200379config MMC_SDHCI_MSM
380 tristate "Qualcomm SDHCI Controller Support"
Georgi Djakov6096d7a82014-07-11 20:48:13 +0300381 depends on ARCH_QCOM || (ARM && COMPILE_TEST)
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200382 depends on MMC_SDHCI_PLTFM
383 help
384 This selects the Secure Digital Host Controller Interface (SDHCI)
385 support present in Qualcomm SOCs. The controller supports
386 SD/MMC/SDIO devices.
387
388 If you have a controller with this interface, say Y or M here.
389
390 If unsure, say N.
391
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530392config MMC_MSM
393 tristate "Qualcomm SDCC Controller Support"
Stephen Boyd67d55ce2013-12-30 13:15:28 -0800394 depends on MMC && (ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50)
San Mehat9d2bd732009-09-22 16:44:22 -0700395 help
396 This provides support for the SD/MMC cell found in the
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530397 MSM and QSD SOCs from Qualcomm. The controller also has
398 support for SDIO devices.
San Mehat9d2bd732009-09-22 16:44:22 -0700399
Sascha Hauerd96be872009-01-06 17:04:14 +0100400config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200401 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
402 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100403 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200404 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
405 Multimedia Card Interface. If you have an i.MX or MPC512x platform
406 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100407
408 If unsure, say N.
409
Shawn Guoe4243f12011-02-21 18:35:28 +0800410config MMC_MXS
411 tristate "Freescale MXS Multimedia Card Interface support"
412 depends on ARCH_MXS && MXS_DMA
413 help
414 This selects the Freescale SSP MMC controller found on MXS based
415 platforms like mx23/28.
416
417 If unsure, say N.
418
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100419config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700420 tristate "TI Flash Media MMC/SD Interface support"
421 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100422 select TIFM_CORE
423 help
424 Say Y here if you want to be able to access MMC/SD cards with
425 the Texas Instruments(R) Flash Media card reader, found in many
426 laptops.
427 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
428 probably also need appropriate card reader host adapter, such as
429 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
430 (TIFM_7XX1)'.
431
432 To compile this driver as a module, choose M here: the
433 module will be called tifm_sd.
434
Maen Suleiman236caa72009-02-14 03:07:26 -0500435config MMC_MVSDIO
436 tristate "Marvell MMC/SD/SDIO host driver"
437 depends on PLAT_ORION
438 ---help---
439 This selects the Marvell SDIO host driver.
440 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
441 SoC controllers.
442
443 To compile this driver as a module, choose M here: the
444 module will be called mvsdio.
445
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800446config MMC_DAVINCI
447 tristate "TI DAVINCI Multimedia Card Interface support"
448 depends on ARCH_DAVINCI
449 help
450 This selects the TI DAVINCI Multimedia card Interface.
451 If you have an DAVINCI board with a Multimedia Card slot,
452 say Y or M here. If unsure, say N.
453
Mike Lockwood85c34d22013-01-21 23:43:46 +0000454config MMC_GOLDFISH
455 tristate "goldfish qemu Multimedia Card Interface support"
456 depends on GOLDFISH
457 help
458 This selects the Goldfish Multimedia card Interface emulation
459 found on the Goldfish Android virtual device emulation.
460
David Brownell15a05802007-08-08 09:12:54 -0700461config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200462 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200463 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700464 select CRC7
465 select CRC_ITU_T
466 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100467 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200468 instead of using a "native" MMC/SD/SDIO controller. This has a
469 disadvantage of being relatively high overhead, but a compensating
470 advantage of working on many systems without dedicated MMC/SD/SDIO
471 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700472
473 If unsure, or if your system has no SPI master driver, say N.
474
Thomas Kleffelbe518012008-06-30 22:40:24 +0100475config MMC_S3C
476 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900477 depends on ARCH_S3C24XX
Vasily Khoruzhickb45e4b52014-06-01 20:22:09 +0300478 depends on S3C24XX_DMAC
Thomas Kleffelbe518012008-06-30 22:40:24 +0100479 help
480 This selects a driver for the MCI interface found in
481 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
482 If you have a board based on one of those and a MMC/SD
483 slot, say Y or M here.
484
485 If unsure, say N.
486
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700487config MMC_S3C_HW_SDIO_IRQ
488 bool "Hardware support for SDIO IRQ"
489 depends on MMC_S3C
490 help
491 Enable the hardware support for SDIO interrupts instead of using
492 the generic polling code.
493
Ben Dooks26f14942009-10-01 15:44:18 -0700494choice
495 prompt "Samsung S3C SD/MMC transfer code"
496 depends on MMC_S3C
497
498config MMC_S3C_PIO
499 bool "Use PIO transfers only"
500 help
501 Use PIO to transfer data between memory and the hardware.
502
503 PIO is slower than DMA as it requires CPU instructions to
504 move the data. This has been the traditional default for
505 the S3C MCI driver.
506
507config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700508 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700509 help
510 Use DMA to transfer data between memory and the hardare.
511
512 Currently, the DMA support in this driver seems to not be
513 working properly and needs to be debugged before this
514 option is useful.
515
Ben Dooks26f14942009-10-01 15:44:18 -0700516endchoice
517
Sascha Sommer6a369132008-07-15 14:21:29 +0200518config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700519 tristate "MMC/SD driver for Ricoh Bay1Controllers"
520 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200521 help
522 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
523 card whenever you insert a MMC or SD card into the card slot.
524
525 To compile this driver as a module, choose M here: the
526 module will be called sdricoh_cs.
527
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100528config MMC_TMIO_CORE
529 tristate
530
Ian Molton4a489982008-07-15 16:02:21 +0100531config MMC_TMIO
532 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100533 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100534 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100535 help
536 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200537 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200538
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100539config MMC_SDHI
540 tristate "SH-Mobile SDHI SD/SDIO controller support"
Laurent Pinchartff0fa482013-11-27 02:18:29 +0100541 depends on SUPERH || ARM
542 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100543 select MMC_TMIO_CORE
544 help
545 This provides support for the SDHI SD/SDIO controller found in
546 SuperH and ARM SH-Mobile SoCs
547
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200548config MMC_CB710
549 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200550 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200551 select CB710_CORE
552 help
553 This option enables support for MMC/SD part of ENE CB710/720 Flash
554 memory card reader found in some laptops (ie. some versions of
555 HP Compaq nx9500).
556
557 This driver can also be built as a module. If so, the module
558 will be called cb710-mmc.
559
Harald Weltef0bf7f62009-06-17 20:22:39 +0200560config MMC_VIA_SDMMC
561 tristate "VIA SD/MMC Card Reader Driver"
562 depends on PCI
563 help
564 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
565 VIA provides one multi-functional card reader which integrated into
566 some motherboards manufactured by VIA. This card reader supports
567 SD/MMC/SDHC.
568 If you have a controller with this interface, say Y or M here.
569
570 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800571
572config SDH_BFIN
573 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800574 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800575 help
576 If you say yes here you will get support for the Blackfin on-chip
577 Secure Digital Host interface. This includes support for MMC and
578 SD cards.
579
580 To compile this driver as a module, choose M here: the
581 module will be called bfin_sdh.
582
583 If unsure, say N.
584
585config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
586 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
587 depends on SDH_BFIN
588 help
589 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700590
Will Newtonf95f3852011-01-02 01:11:59 -0500591config MMC_DW
592 tristate "Synopsys DesignWare Memory Card Interface"
Andrew Bresticker0857c692014-08-14 09:45:27 -0700593 depends on HAS_DMA
Alim Akhtarc34346b2014-08-29 15:54:51 +0530594 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
Will Newtonf95f3852011-01-02 01:11:59 -0500595 help
596 This selects support for the Synopsys DesignWare Mobile Storage IP
597 block, this provides host support for SD and MMC interfaces, in both
598 PIO and external DMA modes.
599
600config MMC_DW_IDMAC
601 bool "Internal DMAC interface"
602 depends on MMC_DW
603 help
604 This selects support for the internal DMAC block within the Synopsys
605 Designware Mobile Storage IP block. This disables the external DMA
606 interface.
607
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530608config MMC_DW_PLTFM
609 tristate "Synopsys Designware MCI Support as platform device"
610 depends on MMC_DW
611 default y
612 help
613 This selects the common helper functions support for Host Controller
614 Interface based platform driver. Please select this option if the IP
615 is present as a platform device. This is the common interface for the
616 Synopsys Designware IP.
617
618 If you have a controller with this interface, say Y or M here.
619
620 If unsure, say Y.
621
Thomas Abrahamc3665002012-09-17 18:16:43 +0000622config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900623 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000624 depends on MMC_DW
625 select MMC_DW_PLTFM
626 help
627 This selects support for Samsung Exynos SoC specific extensions to the
628 Synopsys DesignWare Memory Card Interface driver. Select this option
629 for platforms based on Exynos4 and Exynos5 SoC's.
630
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800631config MMC_DW_K3
632 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
633 depends on MMC_DW
634 select MMC_DW_PLTFM
635 select MMC_DW_IDMAC
636 help
637 This selects support for Hisilicon K3 SoC specific extensions to the
638 Synopsys DesignWare Memory Card Interface driver. Select this option
639 for platforms based on Hisilicon K3 SoC's.
640
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530641config MMC_DW_PCI
642 tristate "Synopsys Designware MCI support on PCI bus"
643 depends on MMC_DW && PCI
644 help
645 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
646 Select this option if the IP is present on PCI platform.
647
648 If you have a controller with this interface, say Y or M here.
649
650 If unsure, say N.
651
addy ke4cdc2ec2014-08-19 12:36:14 +0800652config MMC_DW_ROCKCHIP
653 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
654 depends on MMC_DW && ARCH_ROCKCHIP
655 select MMC_DW_PLTFM
656 help
657 This selects support for Rockchip SoC specific extensions to the
658 Synopsys DesignWare Memory Card Interface driver. Select this option
659 for platforms based on RK3066, RK3188 and RK3288 SoC's.
660
Yusuke Godafdc50a92010-05-26 14:41:59 -0700661config MMC_SH_MMCIF
662 tristate "SuperH Internal MMCIF support"
Geert Uytterhoeven0e7d4372014-07-09 20:52:41 +0200663 depends on MMC_BLOCK && HAS_DMA
Laurent Pinchart9ccb0bd2013-11-27 02:18:30 +0100664 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700665 help
Uwe Kleine-Königb5950762010-11-01 15:38:34 -0400666 This selects the MMC Host Interface controller (MMCIF).
Yusuke Godafdc50a92010-05-26 14:41:59 -0700667
668 This driver supports MMCIF in sh7724/sh7757/sh7372.
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000669
670config MMC_JZ4740
671 tristate "JZ4740 SD/Multimedia Card Interface support"
672 depends on MACH_JZ4740
673 help
674 This selects support for the SD/MMC controller on Ingenic JZ4740
675 SoCs.
676 If you have a board based on such a SoC and with a SD/MMC slot,
677 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000678
Tony Olech88095e72011-05-14 16:48:13 -0400679config MMC_VUB300
680 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
681 depends on USB
682 help
683 This selects support for Elan Digital Systems' VUB300 chip.
684
685 The VUB300 is a USB-SDIO Host Controller Interface chip
686 that enables the host computer to use SDIO/SD/MMC cards
687 via a USB 2.0 or USB 1.1 host.
688
689 The VUB300 chip will be found in both physically separate
690 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
691
692 The VUB300 chip supports SD and MMC memory cards in addition
693 to single and multifunction SDIO cards.
694
695 Some SDIO cards will need a firmware file to be loaded and
696 sent to VUB300 chip in order to achieve better data throughput.
697 Download these "Offload Pseudocode" from Elan Digital Systems'
698 web-site http://www.elandigitalsystems.com/support/downloads.php
699 and put them in /lib/firmware. Note that without these additional
700 firmware files the VUB300 chip will still function, but not at
701 the best obtainable data rate.
702
703 To compile this mmc host controller driver as a module,
704 choose M here: the module will be called vub300.
705
706 If you have a computer with an embedded VUB300 chip
707 or if you intend connecting a USB adapter based on a
708 VUB300 chip say Y or M here.
709
David Vrabel53f3a9e2010-09-02 14:15:08 +0000710config MMC_USHC
711 tristate "USB SD Host Controller (USHC) support"
712 depends on USB
713 help
714 This selects support for USB SD Host Controllers based on
715 the Cypress Astoria chip with firmware compliant with CSR's
716 USB SD Host Controller specification (CS-118793-SP).
717
718 CSR boards with this device include: USB<>SDIO (M1985v2),
719 and Ultrasira.
720
721 Note: These controllers only support SDIO cards and do not
722 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300723
724config MMC_WMT
725 tristate "Wondermedia SD/MMC Host Controller support"
726 depends on ARCH_VT8500
727 default y
728 help
729 This selects support for the SD/MMC Host Controller on
730 Wondermedia WM8505/WM8650 based SoCs.
731
732 To compile this driver as a module, choose M here: the
733 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800734
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200735config MMC_USDHI6ROL0
736 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
Geert Uytterhoeven1ef94742014-07-09 20:52:42 +0200737 depends on HAS_DMA
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200738 help
739 This selects support for the Renesas USDHI6ROL0 SD/SDIO
740 Host Controller
741
Wei WANG2c94b642012-11-09 20:53:34 +0800742config MMC_REALTEK_PCI
743 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
744 depends on MFD_RTSX_PCI
745 help
746 Say Y here to include driver code to support SD/MMC card interface
747 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800748
749config MMC_REALTEK_USB
750 tristate "Realtek USB SD/MMC Card Interface Driver"
751 depends on MFD_RTSX_USB
752 help
753 Say Y here to include driver code to support SD/MMC card interface
754 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200755
756config MMC_SUNXI
757 tristate "Allwinner sunxi SD/MMC Host Controller support"
758 depends on ARCH_SUNXI
759 help
760 This selects support for the SD/MMC Host Controller on
761 Allwinner sunxi SoCs.
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100762
763config MMC_TOSHIBA_PCI
764 tristate "Toshiba Type A SD/MMC Card Interface Driver"
765 depends on PCI
766 help