blob: 882bfe53fa384a5ba5a1ecc9d4e00e8edf9dd76f [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
Jonas Jensen1b66e942014-04-09 15:54:11 +0200295config MMC_MOXART
296 tristate "MOXART SD/MMC Host Controller support"
297 depends on ARCH_MOXART && MMC
298 help
299 This selects support for the MOXART SD/MMC Host Controller.
300 MOXA provides one multi-functional card reader which can
301 be found on some embedded hardware such as UC-7112-LX.
302 If you have a controller with this interface, say Y here.
303
Peter Griffinf52d9c42014-07-09 16:07:32 +0100304config MMC_SDHCI_ST
305 tristate "SDHCI support on STMicroelectronics SoC"
306 depends on ARCH_STI
307 depends on MMC_SDHCI_PLTFM
308 select MMC_SDHCI_IO_ACCESSORS
309 help
310 This selects the Secure Digital Host Controller Interface in
311 STMicroelectronics SoCs.
312
313 If you have a controller with this interface, say Y or M here.
314 If unsure, say N.
315
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100316config MMC_OMAP
317 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200318 depends on ARCH_OMAP
Arnd Bergmann60a549f2014-06-05 23:14:40 +0200319 depends on TPS65010 || !MACH_OMAP_H2
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100320 help
321 This selects the TI OMAP Multimedia card Interface.
322 If you have an OMAP board with a Multimedia Card slot,
323 say Y or M here.
324
325 If unsure, say N.
326
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100327config MMC_OMAP_HS
328 tristate "TI OMAP High Speed Multimedia Card Interface support"
Geert Uytterhoevenc00c5942014-07-09 20:52:40 +0200329 depends on HAS_DMA
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530330 depends on ARCH_OMAP2PLUS || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100331 help
332 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530333 If you have an omap2plus board with a Multimedia Card slot,
334 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100335
336 If unsure, say N.
337
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100338config MMC_WBSD
339 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200340 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100341 help
342 This selects the Winbond(R) W83L51xD Secure digital and
343 Multimedia card Interface.
344 If you have a machine with a integrated W83L518D or W83L519D
345 SD/MMC card reader, say Y or M here.
346
347 If unsure, say N.
348
349config MMC_AU1X
350 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200351 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100352 help
353 This selects the AMD Alchemy(R) Multimedia card interface.
354 If you have a Alchemy platform with a MMC slot, say Y or M here.
355
356 If unsure, say N.
357
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200358config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100359 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Rob Emanuele04d699c2009-09-22 16:45:19 -0700360 depends on AVR32 || ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200361 help
362 This selects the Atmel Multimedia Card Interface driver. If
Rob Emanuele04d699c2009-09-22 16:45:19 -0700363 you have an AT32 (AVR32) or AT91 platform with a Multimedia
364 Card slot, say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200365
366 If unsure, say N.
367
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200368config MMC_SDHCI_MSM
369 tristate "Qualcomm SDHCI Controller Support"
Georgi Djakov6096d7a2014-07-11 20:48:13 +0300370 depends on ARCH_QCOM || (ARM && COMPILE_TEST)
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200371 depends on MMC_SDHCI_PLTFM
372 help
373 This selects the Secure Digital Host Controller Interface (SDHCI)
374 support present in Qualcomm SOCs. The controller supports
375 SD/MMC/SDIO devices.
376
377 If you have a controller with this interface, say Y or M here.
378
379 If unsure, say N.
380
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530381config MMC_MSM
382 tristate "Qualcomm SDCC Controller Support"
Stephen Boyd67d55ce2013-12-30 13:15:28 -0800383 depends on MMC && (ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50)
San Mehat9d2bd732009-09-22 16:44:22 -0700384 help
385 This provides support for the SD/MMC cell found in the
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530386 MSM and QSD SOCs from Qualcomm. The controller also has
387 support for SDIO devices.
San Mehat9d2bd732009-09-22 16:44:22 -0700388
Sascha Hauerd96be872009-01-06 17:04:14 +0100389config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200390 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
391 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100392 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200393 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
394 Multimedia Card Interface. If you have an i.MX or MPC512x platform
395 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100396
397 If unsure, say N.
398
Shawn Guoe4243f12011-02-21 18:35:28 +0800399config MMC_MXS
400 tristate "Freescale MXS Multimedia Card Interface support"
401 depends on ARCH_MXS && MXS_DMA
402 help
403 This selects the Freescale SSP MMC controller found on MXS based
404 platforms like mx23/28.
405
406 If unsure, say N.
407
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100408config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700409 tristate "TI Flash Media MMC/SD Interface support"
410 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100411 select TIFM_CORE
412 help
413 Say Y here if you want to be able to access MMC/SD cards with
414 the Texas Instruments(R) Flash Media card reader, found in many
415 laptops.
416 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
417 probably also need appropriate card reader host adapter, such as
418 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
419 (TIFM_7XX1)'.
420
421 To compile this driver as a module, choose M here: the
422 module will be called tifm_sd.
423
Maen Suleiman236caa72009-02-14 03:07:26 -0500424config MMC_MVSDIO
425 tristate "Marvell MMC/SD/SDIO host driver"
426 depends on PLAT_ORION
427 ---help---
428 This selects the Marvell SDIO host driver.
429 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
430 SoC controllers.
431
432 To compile this driver as a module, choose M here: the
433 module will be called mvsdio.
434
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800435config MMC_DAVINCI
436 tristate "TI DAVINCI Multimedia Card Interface support"
437 depends on ARCH_DAVINCI
438 help
439 This selects the TI DAVINCI Multimedia card Interface.
440 If you have an DAVINCI board with a Multimedia Card slot,
441 say Y or M here. If unsure, say N.
442
Mike Lockwood85c34d22013-01-21 23:43:46 +0000443config MMC_GOLDFISH
444 tristate "goldfish qemu Multimedia Card Interface support"
445 depends on GOLDFISH
446 help
447 This selects the Goldfish Multimedia card Interface emulation
448 found on the Goldfish Android virtual device emulation.
449
David Brownell15a05802007-08-08 09:12:54 -0700450config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200451 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200452 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700453 select CRC7
454 select CRC_ITU_T
455 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100456 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200457 instead of using a "native" MMC/SD/SDIO controller. This has a
458 disadvantage of being relatively high overhead, but a compensating
459 advantage of working on many systems without dedicated MMC/SD/SDIO
460 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700461
462 If unsure, or if your system has no SPI master driver, say N.
463
Thomas Kleffelbe518012008-06-30 22:40:24 +0100464config MMC_S3C
465 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900466 depends on ARCH_S3C24XX
Vasily Khoruzhickb45e4b52014-06-01 20:22:09 +0300467 depends on S3C24XX_DMAC
Thomas Kleffelbe518012008-06-30 22:40:24 +0100468 help
469 This selects a driver for the MCI interface found in
470 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
471 If you have a board based on one of those and a MMC/SD
472 slot, say Y or M here.
473
474 If unsure, say N.
475
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700476config MMC_S3C_HW_SDIO_IRQ
477 bool "Hardware support for SDIO IRQ"
478 depends on MMC_S3C
479 help
480 Enable the hardware support for SDIO interrupts instead of using
481 the generic polling code.
482
Ben Dooks26f14942009-10-01 15:44:18 -0700483choice
484 prompt "Samsung S3C SD/MMC transfer code"
485 depends on MMC_S3C
486
487config MMC_S3C_PIO
488 bool "Use PIO transfers only"
489 help
490 Use PIO to transfer data between memory and the hardware.
491
492 PIO is slower than DMA as it requires CPU instructions to
493 move the data. This has been the traditional default for
494 the S3C MCI driver.
495
496config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700497 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700498 help
499 Use DMA to transfer data between memory and the hardare.
500
501 Currently, the DMA support in this driver seems to not be
502 working properly and needs to be debugged before this
503 option is useful.
504
Ben Dooks26f14942009-10-01 15:44:18 -0700505endchoice
506
Sascha Sommer6a369132008-07-15 14:21:29 +0200507config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700508 tristate "MMC/SD driver for Ricoh Bay1Controllers"
509 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200510 help
511 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
512 card whenever you insert a MMC or SD card into the card slot.
513
514 To compile this driver as a module, choose M here: the
515 module will be called sdricoh_cs.
516
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100517config MMC_TMIO_CORE
518 tristate
519
Ian Molton4a489982008-07-15 16:02:21 +0100520config MMC_TMIO
521 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100522 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100523 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100524 help
525 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200526 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200527
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100528config MMC_SDHI
529 tristate "SH-Mobile SDHI SD/SDIO controller support"
Laurent Pinchartff0fa482013-11-27 02:18:29 +0100530 depends on SUPERH || ARM
531 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100532 select MMC_TMIO_CORE
533 help
534 This provides support for the SDHI SD/SDIO controller found in
535 SuperH and ARM SH-Mobile SoCs
536
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200537config MMC_CB710
538 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200539 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200540 select CB710_CORE
541 help
542 This option enables support for MMC/SD part of ENE CB710/720 Flash
543 memory card reader found in some laptops (ie. some versions of
544 HP Compaq nx9500).
545
546 This driver can also be built as a module. If so, the module
547 will be called cb710-mmc.
548
Harald Weltef0bf7f62009-06-17 20:22:39 +0200549config MMC_VIA_SDMMC
550 tristate "VIA SD/MMC Card Reader Driver"
551 depends on PCI
552 help
553 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
554 VIA provides one multi-functional card reader which integrated into
555 some motherboards manufactured by VIA. This card reader supports
556 SD/MMC/SDHC.
557 If you have a controller with this interface, say Y or M here.
558
559 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800560
561config SDH_BFIN
562 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800563 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800564 help
565 If you say yes here you will get support for the Blackfin on-chip
566 Secure Digital Host interface. This includes support for MMC and
567 SD cards.
568
569 To compile this driver as a module, choose M here: the
570 module will be called bfin_sdh.
571
572 If unsure, say N.
573
574config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
575 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
576 depends on SDH_BFIN
577 help
578 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700579
Will Newtonf95f3852011-01-02 01:11:59 -0500580config MMC_DW
581 tristate "Synopsys DesignWare Memory Card Interface"
Andrew Bresticker0857c692014-08-14 09:45:27 -0700582 depends on HAS_DMA
Andrew Brestickerb1dec122014-08-14 09:45:28 -0700583 depends on ARC || ARM || MIPS || COMPILE_TEST
Will Newtonf95f3852011-01-02 01:11:59 -0500584 help
585 This selects support for the Synopsys DesignWare Mobile Storage IP
586 block, this provides host support for SD and MMC interfaces, in both
587 PIO and external DMA modes.
588
589config MMC_DW_IDMAC
590 bool "Internal DMAC interface"
591 depends on MMC_DW
592 help
593 This selects support for the internal DMAC block within the Synopsys
594 Designware Mobile Storage IP block. This disables the external DMA
595 interface.
596
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530597config MMC_DW_PLTFM
598 tristate "Synopsys Designware MCI Support as platform device"
599 depends on MMC_DW
600 default y
601 help
602 This selects the common helper functions support for Host Controller
603 Interface based platform driver. Please select this option if the IP
604 is present as a platform device. This is the common interface for the
605 Synopsys Designware IP.
606
607 If you have a controller with this interface, say Y or M here.
608
609 If unsure, say Y.
610
Thomas Abrahamc3665002012-09-17 18:16:43 +0000611config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900612 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000613 depends on MMC_DW
614 select MMC_DW_PLTFM
615 help
616 This selects support for Samsung Exynos SoC specific extensions to the
617 Synopsys DesignWare Memory Card Interface driver. Select this option
618 for platforms based on Exynos4 and Exynos5 SoC's.
619
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800620config MMC_DW_K3
621 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
622 depends on MMC_DW
623 select MMC_DW_PLTFM
624 select MMC_DW_IDMAC
625 help
626 This selects support for Hisilicon K3 SoC specific extensions to the
627 Synopsys DesignWare Memory Card Interface driver. Select this option
628 for platforms based on Hisilicon K3 SoC's.
629
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530630config MMC_DW_PCI
631 tristate "Synopsys Designware MCI support on PCI bus"
632 depends on MMC_DW && PCI
633 help
634 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
635 Select this option if the IP is present on PCI platform.
636
637 If you have a controller with this interface, say Y or M here.
638
639 If unsure, say N.
640
addy ke4cdc2ec2014-08-19 12:36:14 +0800641config MMC_DW_ROCKCHIP
642 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
643 depends on MMC_DW && ARCH_ROCKCHIP
644 select MMC_DW_PLTFM
645 help
646 This selects support for Rockchip SoC specific extensions to the
647 Synopsys DesignWare Memory Card Interface driver. Select this option
648 for platforms based on RK3066, RK3188 and RK3288 SoC's.
649
Yusuke Godafdc50a92010-05-26 14:41:59 -0700650config MMC_SH_MMCIF
651 tristate "SuperH Internal MMCIF support"
Geert Uytterhoeven0e7d4372014-07-09 20:52:41 +0200652 depends on MMC_BLOCK && HAS_DMA
Laurent Pinchart9ccb0bd2013-11-27 02:18:30 +0100653 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700654 help
Uwe Kleine-Königb5950762010-11-01 15:38:34 -0400655 This selects the MMC Host Interface controller (MMCIF).
Yusuke Godafdc50a92010-05-26 14:41:59 -0700656
657 This driver supports MMCIF in sh7724/sh7757/sh7372.
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000658
659config MMC_JZ4740
660 tristate "JZ4740 SD/Multimedia Card Interface support"
661 depends on MACH_JZ4740
662 help
663 This selects support for the SD/MMC controller on Ingenic JZ4740
664 SoCs.
665 If you have a board based on such a SoC and with a SD/MMC slot,
666 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000667
Tony Olech88095e72011-05-14 16:48:13 -0400668config MMC_VUB300
669 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
670 depends on USB
671 help
672 This selects support for Elan Digital Systems' VUB300 chip.
673
674 The VUB300 is a USB-SDIO Host Controller Interface chip
675 that enables the host computer to use SDIO/SD/MMC cards
676 via a USB 2.0 or USB 1.1 host.
677
678 The VUB300 chip will be found in both physically separate
679 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
680
681 The VUB300 chip supports SD and MMC memory cards in addition
682 to single and multifunction SDIO cards.
683
684 Some SDIO cards will need a firmware file to be loaded and
685 sent to VUB300 chip in order to achieve better data throughput.
686 Download these "Offload Pseudocode" from Elan Digital Systems'
687 web-site http://www.elandigitalsystems.com/support/downloads.php
688 and put them in /lib/firmware. Note that without these additional
689 firmware files the VUB300 chip will still function, but not at
690 the best obtainable data rate.
691
692 To compile this mmc host controller driver as a module,
693 choose M here: the module will be called vub300.
694
695 If you have a computer with an embedded VUB300 chip
696 or if you intend connecting a USB adapter based on a
697 VUB300 chip say Y or M here.
698
David Vrabel53f3a9e2010-09-02 14:15:08 +0000699config MMC_USHC
700 tristate "USB SD Host Controller (USHC) support"
701 depends on USB
702 help
703 This selects support for USB SD Host Controllers based on
704 the Cypress Astoria chip with firmware compliant with CSR's
705 USB SD Host Controller specification (CS-118793-SP).
706
707 CSR boards with this device include: USB<>SDIO (M1985v2),
708 and Ultrasira.
709
710 Note: These controllers only support SDIO cards and do not
711 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300712
713config MMC_WMT
714 tristate "Wondermedia SD/MMC Host Controller support"
715 depends on ARCH_VT8500
716 default y
717 help
718 This selects support for the SD/MMC Host Controller on
719 Wondermedia WM8505/WM8650 based SoCs.
720
721 To compile this driver as a module, choose M here: the
722 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800723
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200724config MMC_USDHI6ROL0
725 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
Geert Uytterhoeven1ef94742014-07-09 20:52:42 +0200726 depends on HAS_DMA
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200727 help
728 This selects support for the Renesas USDHI6ROL0 SD/SDIO
729 Host Controller
730
Wei WANG2c94b642012-11-09 20:53:34 +0800731config MMC_REALTEK_PCI
732 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
733 depends on MFD_RTSX_PCI
734 help
735 Say Y here to include driver code to support SD/MMC card interface
736 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800737
738config MMC_REALTEK_USB
739 tristate "Realtek USB SD/MMC Card Interface Driver"
740 depends on MFD_RTSX_USB
741 help
742 Say Y here to include driver code to support SD/MMC card interface
743 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200744
745config MMC_SUNXI
746 tristate "Allwinner sunxi SD/MMC Host Controller support"
747 depends on ARCH_SUNXI
748 help
749 This selects support for the SD/MMC Host Controller on
750 Allwinner sunxi SoCs.
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100751
752config MMC_TOSHIBA_PCI
753 tristate "Toshiba Type A SD/MMC Card Interface Driver"
754 depends on PCI
755 help