blob: 8555a7afa056782bd05e134b570a07f654077c89 [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
17config MMC_PXA
18 tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +020019 depends on ARCH_PXA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010020 help
21 This selects the Intel(R) PXA(R) Multimedia card Interface.
22 If you have a PXA(R) platform with a Multimedia Card slot,
23 say Y or M here.
24
25 If unsure, say N.
26
27config MMC_SDHCI
Pierre Ossman34671dc2008-01-05 23:18:58 +010028 tristate "Secure Digital Host Controller Interface support"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010029 depends on HAS_DMA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010030 help
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010031 This selects the generic Secure Digital Host Controller Interface.
Pierre Ossman1c6a0712007-02-11 19:57:36 +010032 It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
33 and Toshiba(R). Most controllers found in laptops are of this type.
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010034
35 If you have a controller with this interface, say Y or M here. You
36 also need to enable an appropriate bus interface.
37
38 If unsure, say N.
39
Anton Vorontsov4e4141a2009-03-17 00:13:46 +030040config MMC_SDHCI_IO_ACCESSORS
41 bool
42 depends on MMC_SDHCI
43 help
44 This is silent Kconfig symbol that is selected by the drivers that
45 need to overwrite SDHCI IO memory accessors.
46
Albert Herranz7657c3a2009-12-17 15:27:20 -080047config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
48 bool
49 select MMC_SDHCI_IO_ACCESSORS
50 help
51 This option is selected by drivers running on big endian hosts
52 and performing I/O to a SDHCI controller through a bus that
53 implements a hardware byte swapper using a 32-bit datum.
54 This endian mapping mode is called "data invariance" and
55 has the effect of scrambling the addresses and formats of data
56 accessed in sizes other than the datum size.
57
Albert Herranz1144ab52009-12-17 15:27:20 -080058 This is the case for the Freescale eSDHC and Nintendo Wii SDHCI.
Albert Herranz7657c3a2009-12-17 15:27:20 -080059
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010060config MMC_SDHCI_PCI
61 tristate "SDHCI support on PCI bus"
62 depends on MMC_SDHCI && PCI
63 help
64 This selects the PCI Secure Digital Host Controller Interface.
65 Most controllers found today are PCI devices.
66
Pierre Ossman1c6a0712007-02-11 19:57:36 +010067 If you have a controller with this interface, say Y or M here.
68
69 If unsure, say N.
70
Philip Langdale5ae70292007-09-15 12:54:08 -070071config MMC_RICOH_MMC
Kees Cook86147c82012-10-02 11:17:47 -070072 bool "Ricoh MMC Controller Disabler"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010073 depends on MMC_SDHCI_PCI
Philip Langdale5ae70292007-09-15 12:54:08 -070074 help
Maxim Levitsky03cd8f72010-03-05 13:43:20 -080075 This adds a pci quirk to disable Ricoh MMC Controller. This
Philip Langdale5ae70292007-09-15 12:54:08 -070076 proprietary controller is unnecessary because the SDHCI driver
77 supports MMC cards on the SD controller, but if it is not
78 disabled, it will steal the MMC cards away - rendering them
Maxim Levitsky03cd8f72010-03-05 13:43:20 -080079 useless. It is safe to select this even if you don't
Philip Langdale5ae70292007-09-15 12:54:08 -070080 have a Ricoh based card reader.
81
Philip Langdale5ae70292007-09-15 12:54:08 -070082 If unsure, say Y.
83
Adrian Hunterc4e05032012-11-23 21:17:34 +010084config MMC_SDHCI_ACPI
85 tristate "SDHCI support for ACPI enumerated SDHCI controllers"
86 depends on MMC_SDHCI && ACPI
87 help
88 This selects support for ACPI enumerated SDHCI controllers,
89 identified by ACPI Compatibility ID PNP0D40 or specific
90 ACPI Hardware IDs.
91
92 If you have a controller with this interface, say Y or M here.
93
94 If unsure, say N.
95
Shawn Guof0de8362011-06-02 10:57:50 +080096config MMC_SDHCI_PLTFM
97 tristate "SDHCI platform and OF driver helper"
Shawn Guo38576af2011-05-27 23:48:14 +080098 depends on MMC_SDHCI
Shawn Guof0de8362011-06-02 10:57:50 +080099 help
100 This selects the common helper functions support for Secure Digital
101 Host Controller Interface based platform and OF drivers.
102
103 If you have a controller with this interface, say Y or M here.
104
105 If unsure, say N.
106
Soren Brinkmanne3ec3a32013-12-02 10:02:36 -0800107config MMC_SDHCI_OF_ARASAN
108 tristate "SDHCI OF support for the Arasan SDHCI controllers"
109 depends on MMC_SDHCI_PLTFM
110 depends on OF
111 help
112 This selects the Arasan Secure Digital Host Controller Interface
113 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
114
115 If you have a controller with this interface, say Y or M here.
116
117 If unsure, say N.
118
Shawn Guof0de8362011-06-02 10:57:50 +0800119config MMC_SDHCI_OF_ESDHC
120 tristate "SDHCI OF support for the Freescale eSDHC controller"
121 depends on MMC_SDHCI_PLTFM
Rob Herring236cdc72011-01-03 11:56:38 -0600122 depends on PPC_OF
Albert Herranz7657c3a2009-12-17 15:27:20 -0800123 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
124 help
125 This selects the Freescale eSDHC controller support.
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300126
Shawn Guof0de8362011-06-02 10:57:50 +0800127 If you have a controller with this interface, say Y or M here.
128
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300129 If unsure, say N.
130
Albert Herranz1144ab52009-12-17 15:27:20 -0800131config MMC_SDHCI_OF_HLWD
Shawn Guof0de8362011-06-02 10:57:50 +0800132 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
133 depends on MMC_SDHCI_PLTFM
Rob Herring236cdc72011-01-03 11:56:38 -0600134 depends on PPC_OF
Albert Herranz1144ab52009-12-17 15:27:20 -0800135 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
136 help
137 This selects the Secure Digital Host Controller Interface (SDHCI)
138 found in the "Hollywood" chipset of the Nintendo Wii video game
139 console.
140
Shawn Guof0de8362011-06-02 10:57:50 +0800141 If you have a controller with this interface, say Y or M here.
142
Albert Herranz1144ab52009-12-17 15:27:20 -0800143 If unsure, say N.
144
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700145config MMC_SDHCI_CNS3XXX
Shawn Guo85d65092011-05-27 23:48:12 +0800146 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700147 depends on ARCH_CNS3XXX
Shawn Guof0de8362011-06-02 10:57:50 +0800148 depends on MMC_SDHCI_PLTFM
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700149 help
150 This selects the SDHCI support for CNS3xxx System-on-Chip devices.
151
Shawn Guof0de8362011-06-02 10:57:50 +0800152 If you have a controller with this interface, say Y or M here.
153
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700154 If unsure, say N.
155
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200156config MMC_SDHCI_ESDHC_IMX
Shawn Guo95a24822011-09-19 17:32:21 +0800157 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
Sascha Hauer2b795512011-08-24 08:41:08 +0200158 depends on ARCH_MXC
Shawn Guof0de8362011-06-02 10:57:50 +0800159 depends on MMC_SDHCI_PLTFM
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200160 select MMC_SDHCI_IO_ACCESSORS
161 help
Shawn Guo95a24822011-09-19 17:32:21 +0800162 This selects the Freescale eSDHC/uSDHC controller support
163 found on i.MX25, i.MX35 i.MX5x and i.MX6x.
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200164
Shawn Guof0de8362011-06-02 10:57:50 +0800165 If you have a controller with this interface, say Y or M here.
166
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200167 If unsure, say N.
168
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500169config MMC_SDHCI_DOVE
Shawn Guo85d65092011-05-27 23:48:12 +0800170 tristate "SDHCI support on Marvell's Dove SoC"
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500171 depends on ARCH_DOVE
Shawn Guof0de8362011-06-02 10:57:50 +0800172 depends on MMC_SDHCI_PLTFM
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500173 select MMC_SDHCI_IO_ACCESSORS
174 help
175 This selects the Secure Digital Host Controller Interface in
176 Marvell's Dove SoC.
177
Shawn Guof0de8362011-06-02 10:57:50 +0800178 If you have a controller with this interface, say Y or M here.
179
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500180 If unsure, say N.
181
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500182config MMC_SDHCI_TEGRA
Shawn Guo85d65092011-05-27 23:48:12 +0800183 tristate "SDHCI platform support for the Tegra SD/MMC Controller"
184 depends on ARCH_TEGRA
Shawn Guof0de8362011-06-02 10:57:50 +0800185 depends on MMC_SDHCI_PLTFM
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500186 select MMC_SDHCI_IO_ACCESSORS
187 help
188 This selects the Tegra SD/MMC controller. If you have a Tegra
189 platform with SD or MMC devices, say Y or M here.
190
191 If unsure, say N.
192
Ben Dooks0d1bb412009-06-14 13:52:37 +0100193config MMC_SDHCI_S3C
194 tristate "SDHCI support on Samsung S3C SoC"
Kyungmin Park930a6f72010-08-19 14:13:35 -0700195 depends on MMC_SDHCI && PLAT_SAMSUNG
Ben Dooks0d1bb412009-06-14 13:52:37 +0100196 help
197 This selects the Secure Digital Host Controller Interface (SDHCI)
198 often referrered to as the HSMMC block in some of the Samsung S3C
199 range of SoC.
200
Ben Dooks0d1bb412009-06-14 13:52:37 +0100201 If you have a controller with this interface, say Y or M here.
202
203 If unsure, say N.
204
Barry Songb3b665b2013-03-21 16:27:19 +0800205config MMC_SDHCI_SIRF
206 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
207 depends on ARCH_SIRF
208 depends on MMC_SDHCI_PLTFM
209 help
210 This selects the SDHCI support for SiRF System-on-Chip devices.
211
212 If you have a controller with this interface, say Y or M here.
213
214 If unsure, say N.
215
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800216config MMC_SDHCI_PXAV3
217 tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
218 depends on CLKDEV_LOOKUP
219 select MMC_SDHCI
220 select MMC_SDHCI_PLTFM
221 default CPU_MMP2
222 help
223 This selects the Marvell(R) PXAV3 SD Host Controller.
224 If you have a MMP2 platform with SD Host Controller
225 and a card slot, say Y or M here.
226
227 If unsure, say N.
228
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800229config MMC_SDHCI_PXAV2
230 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
231 depends on CLKDEV_LOOKUP
232 select MMC_SDHCI
233 select MMC_SDHCI_PLTFM
234 default CPU_PXA910
235 help
236 This selects the Marvell(R) PXAV2 SD Host Controller.
237 If you have a PXA9XX platform with SD Host Controller
238 and a card slot, say Y or M here.
239
240 If unsure, say N.
241
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700242config MMC_SDHCI_SPEAR
243 tristate "SDHCI support on ST SPEAr platform"
244 depends on MMC_SDHCI && PLAT_SPEAR
245 help
246 This selects the Secure Digital Host Controller Interface (SDHCI)
247 often referrered to as the HSMMC block in some of the ST SPEAR range
248 of SoC
249
250 If you have a controller with this interface, say Y or M here.
251
252 If unsure, say N.
253
Ben Dooks0d1bb412009-06-14 13:52:37 +0100254config MMC_SDHCI_S3C_DMA
255 bool "DMA support on S3C SDHCI"
Kees Cook86147c82012-10-02 11:17:47 -0700256 depends on MMC_SDHCI_S3C
Ben Dooks0d1bb412009-06-14 13:52:37 +0100257 help
258 Enable DMA support on the Samsung S3C SDHCI glue. The DMA
259 has proved to be problematic if the controller encounters
260 certain errors, and thus should be treated with care.
261
262 YMMV.
263
Christian Daudt01ebea12013-06-20 14:26:37 -0700264config MMC_SDHCI_BCM_KONA
265 tristate "SDHCI support on Broadcom KONA platform"
Christian Daudtfc2bd2e2013-09-23 10:20:35 -0700266 depends on ARCH_BCM_MOBILE
Christian Daudt01ebea12013-06-20 14:26:37 -0700267 select MMC_SDHCI_PLTFM
268 help
269 This selects the Broadcom Kona Secure Digital Host Controller
270 Interface(SDHCI) support.
271 This is used in Broadcom mobile SoCs.
272
273 If you have a controller with this interface, say Y or M here.
274
Stephen Warren1a947152013-01-02 22:34:49 -0700275config MMC_SDHCI_BCM2835
276 tristate "SDHCI platform support for the BCM2835 SD/MMC Controller"
277 depends on ARCH_BCM2835
278 depends on MMC_SDHCI_PLTFM
279 select MMC_SDHCI_IO_ACCESSORS
280 help
281 This selects the BCM2835 SD/MMC controller. If you have a BCM2835
282 platform with SD or MMC devices, say Y or M here.
283
284 If unsure, say N.
285
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100286config MMC_OMAP
287 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200288 depends on ARCH_OMAP
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100289 select TPS65010 if MACH_OMAP_H2
290 help
291 This selects the TI OMAP Multimedia card Interface.
292 If you have an OMAP board with a Multimedia Card slot,
293 say Y or M here.
294
295 If unsure, say N.
296
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100297config MMC_OMAP_HS
298 tristate "TI OMAP High Speed Multimedia Card Interface support"
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530299 depends on ARCH_OMAP2PLUS || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100300 help
301 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530302 If you have an omap2plus board with a Multimedia Card slot,
303 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100304
305 If unsure, say N.
306
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100307config MMC_WBSD
308 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200309 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100310 help
311 This selects the Winbond(R) W83L51xD Secure digital and
312 Multimedia card Interface.
313 If you have a machine with a integrated W83L518D or W83L519D
314 SD/MMC card reader, say Y or M here.
315
316 If unsure, say N.
317
318config MMC_AU1X
319 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200320 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100321 help
322 This selects the AMD Alchemy(R) Multimedia card interface.
323 If you have a Alchemy platform with a MMC slot, say Y or M here.
324
325 If unsure, say N.
326
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200327config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100328 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Rob Emanuele04d699c2009-09-22 16:45:19 -0700329 depends on AVR32 || ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200330 help
331 This selects the Atmel Multimedia Card Interface driver. If
Rob Emanuele04d699c2009-09-22 16:45:19 -0700332 you have an AT32 (AVR32) or AT91 platform with a Multimedia
333 Card slot, say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200334
335 If unsure, say N.
336
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530337config MMC_MSM
338 tristate "Qualcomm SDCC Controller Support"
Stephen Boyd67d55ce2013-12-30 13:15:28 -0800339 depends on MMC && (ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50)
San Mehat9d2bd732009-09-22 16:44:22 -0700340 help
341 This provides support for the SD/MMC cell found in the
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530342 MSM and QSD SOCs from Qualcomm. The controller also has
343 support for SDIO devices.
San Mehat9d2bd732009-09-22 16:44:22 -0700344
Sascha Hauerd96be872009-01-06 17:04:14 +0100345config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200346 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
347 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100348 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200349 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
350 Multimedia Card Interface. If you have an i.MX or MPC512x platform
351 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100352
353 If unsure, say N.
354
Shawn Guoe4243f12011-02-21 18:35:28 +0800355config MMC_MXS
356 tristate "Freescale MXS Multimedia Card Interface support"
357 depends on ARCH_MXS && MXS_DMA
358 help
359 This selects the Freescale SSP MMC controller found on MXS based
360 platforms like mx23/28.
361
362 If unsure, say N.
363
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100364config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700365 tristate "TI Flash Media MMC/SD Interface support"
366 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100367 select TIFM_CORE
368 help
369 Say Y here if you want to be able to access MMC/SD cards with
370 the Texas Instruments(R) Flash Media card reader, found in many
371 laptops.
372 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
373 probably also need appropriate card reader host adapter, such as
374 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
375 (TIFM_7XX1)'.
376
377 To compile this driver as a module, choose M here: the
378 module will be called tifm_sd.
379
Maen Suleiman236caa72009-02-14 03:07:26 -0500380config MMC_MVSDIO
381 tristate "Marvell MMC/SD/SDIO host driver"
382 depends on PLAT_ORION
383 ---help---
384 This selects the Marvell SDIO host driver.
385 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
386 SoC controllers.
387
388 To compile this driver as a module, choose M here: the
389 module will be called mvsdio.
390
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800391config MMC_DAVINCI
392 tristate "TI DAVINCI Multimedia Card Interface support"
393 depends on ARCH_DAVINCI
394 help
395 This selects the TI DAVINCI Multimedia card Interface.
396 If you have an DAVINCI board with a Multimedia Card slot,
397 say Y or M here. If unsure, say N.
398
Mike Lockwood85c34d22013-01-21 23:43:46 +0000399config MMC_GOLDFISH
400 tristate "goldfish qemu Multimedia Card Interface support"
401 depends on GOLDFISH
402 help
403 This selects the Goldfish Multimedia card Interface emulation
404 found on the Goldfish Android virtual device emulation.
405
David Brownell15a05802007-08-08 09:12:54 -0700406config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200407 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200408 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700409 select CRC7
410 select CRC_ITU_T
411 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100412 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200413 instead of using a "native" MMC/SD/SDIO controller. This has a
414 disadvantage of being relatively high overhead, but a compensating
415 advantage of working on many systems without dedicated MMC/SD/SDIO
416 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700417
418 If unsure, or if your system has no SPI master driver, say N.
419
Thomas Kleffelbe518012008-06-30 22:40:24 +0100420config MMC_S3C
421 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900422 depends on ARCH_S3C24XX
Thomas Kleffelbe518012008-06-30 22:40:24 +0100423 help
424 This selects a driver for the MCI interface found in
425 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
426 If you have a board based on one of those and a MMC/SD
427 slot, say Y or M here.
428
429 If unsure, say N.
430
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700431config MMC_S3C_HW_SDIO_IRQ
432 bool "Hardware support for SDIO IRQ"
433 depends on MMC_S3C
434 help
435 Enable the hardware support for SDIO interrupts instead of using
436 the generic polling code.
437
Ben Dooks26f14942009-10-01 15:44:18 -0700438choice
439 prompt "Samsung S3C SD/MMC transfer code"
440 depends on MMC_S3C
441
442config MMC_S3C_PIO
443 bool "Use PIO transfers only"
444 help
445 Use PIO to transfer data between memory and the hardware.
446
447 PIO is slower than DMA as it requires CPU instructions to
448 move the data. This has been the traditional default for
449 the S3C MCI driver.
450
451config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700452 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700453 help
454 Use DMA to transfer data between memory and the hardare.
455
456 Currently, the DMA support in this driver seems to not be
457 working properly and needs to be debugged before this
458 option is useful.
459
460config MMC_S3C_PIODMA
Kees Cook86147c82012-10-02 11:17:47 -0700461 bool "Support for both PIO and DMA"
Ben Dooks26f14942009-10-01 15:44:18 -0700462 help
463 Compile both the PIO and DMA transfer routines into the
464 driver and let the platform select at run-time which one
465 is best.
466
467 See notes for the DMA option.
468
469endchoice
470
Sascha Sommer6a369132008-07-15 14:21:29 +0200471config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700472 tristate "MMC/SD driver for Ricoh Bay1Controllers"
473 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200474 help
475 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
476 card whenever you insert a MMC or SD card into the card slot.
477
478 To compile this driver as a module, choose M here: the
479 module will be called sdricoh_cs.
480
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100481config MMC_TMIO_CORE
482 tristate
483
Ian Molton4a489982008-07-15 16:02:21 +0100484config MMC_TMIO
485 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100486 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100487 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100488 help
489 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200490 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200491
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100492config MMC_SDHI
493 tristate "SH-Mobile SDHI SD/SDIO controller support"
Laurent Pinchartff0fa482013-11-27 02:18:29 +0100494 depends on SUPERH || ARM
495 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100496 select MMC_TMIO_CORE
497 help
498 This provides support for the SDHI SD/SDIO controller found in
499 SuperH and ARM SH-Mobile SoCs
500
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200501config MMC_CB710
502 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200503 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200504 select CB710_CORE
505 help
506 This option enables support for MMC/SD part of ENE CB710/720 Flash
507 memory card reader found in some laptops (ie. some versions of
508 HP Compaq nx9500).
509
510 This driver can also be built as a module. If so, the module
511 will be called cb710-mmc.
512
Harald Weltef0bf7f62009-06-17 20:22:39 +0200513config MMC_VIA_SDMMC
514 tristate "VIA SD/MMC Card Reader Driver"
515 depends on PCI
516 help
517 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
518 VIA provides one multi-functional card reader which integrated into
519 some motherboards manufactured by VIA. This card reader supports
520 SD/MMC/SDHC.
521 If you have a controller with this interface, say Y or M here.
522
523 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800524
525config SDH_BFIN
526 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800527 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800528 help
529 If you say yes here you will get support for the Blackfin on-chip
530 Secure Digital Host interface. This includes support for MMC and
531 SD cards.
532
533 To compile this driver as a module, choose M here: the
534 module will be called bfin_sdh.
535
536 If unsure, say N.
537
538config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
539 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
540 depends on SDH_BFIN
541 help
542 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700543
Will Newtonf95f3852011-01-02 01:11:59 -0500544config MMC_DW
545 tristate "Synopsys DesignWare Memory Card Interface"
Mischa Jonkerb7d06c82013-08-28 20:40:29 +0200546 depends on ARC || ARM
Will Newtonf95f3852011-01-02 01:11:59 -0500547 help
548 This selects support for the Synopsys DesignWare Mobile Storage IP
549 block, this provides host support for SD and MMC interfaces, in both
550 PIO and external DMA modes.
551
552config MMC_DW_IDMAC
553 bool "Internal DMAC interface"
554 depends on MMC_DW
555 help
556 This selects support for the internal DMAC block within the Synopsys
557 Designware Mobile Storage IP block. This disables the external DMA
558 interface.
559
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530560config MMC_DW_PLTFM
561 tristate "Synopsys Designware MCI Support as platform device"
562 depends on MMC_DW
563 default y
564 help
565 This selects the common helper functions support for Host Controller
566 Interface based platform driver. Please select this option if the IP
567 is present as a platform device. This is the common interface for the
568 Synopsys Designware IP.
569
570 If you have a controller with this interface, say Y or M here.
571
572 If unsure, say Y.
573
Thomas Abrahamc3665002012-09-17 18:16:43 +0000574config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900575 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000576 depends on MMC_DW
577 select MMC_DW_PLTFM
578 help
579 This selects support for Samsung Exynos SoC specific extensions to the
580 Synopsys DesignWare Memory Card Interface driver. Select this option
581 for platforms based on Exynos4 and Exynos5 SoC's.
582
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800583config MMC_DW_K3
584 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
585 depends on MMC_DW
586 select MMC_DW_PLTFM
587 select MMC_DW_IDMAC
588 help
589 This selects support for Hisilicon K3 SoC specific extensions to the
590 Synopsys DesignWare Memory Card Interface driver. Select this option
591 for platforms based on Hisilicon K3 SoC's.
592
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530593config MMC_DW_PCI
594 tristate "Synopsys Designware MCI support on PCI bus"
595 depends on MMC_DW && PCI
596 help
597 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
598 Select this option if the IP is present on PCI platform.
599
600 If you have a controller with this interface, say Y or M here.
601
602 If unsure, say N.
603
Yusuke Godafdc50a92010-05-26 14:41:59 -0700604config MMC_SH_MMCIF
605 tristate "SuperH Internal MMCIF support"
Laurent Pinchart9ccb0bd2013-11-27 02:18:30 +0100606 depends on MMC_BLOCK
607 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700608 help
Uwe Kleine-Königb5950762010-11-01 15:38:34 -0400609 This selects the MMC Host Interface controller (MMCIF).
Yusuke Godafdc50a92010-05-26 14:41:59 -0700610
611 This driver supports MMCIF in sh7724/sh7757/sh7372.
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000612
613config MMC_JZ4740
614 tristate "JZ4740 SD/Multimedia Card Interface support"
615 depends on MACH_JZ4740
616 help
617 This selects support for the SD/MMC controller on Ingenic JZ4740
618 SoCs.
619 If you have a board based on such a SoC and with a SD/MMC slot,
620 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000621
Tony Olech88095e72011-05-14 16:48:13 -0400622config MMC_VUB300
623 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
624 depends on USB
625 help
626 This selects support for Elan Digital Systems' VUB300 chip.
627
628 The VUB300 is a USB-SDIO Host Controller Interface chip
629 that enables the host computer to use SDIO/SD/MMC cards
630 via a USB 2.0 or USB 1.1 host.
631
632 The VUB300 chip will be found in both physically separate
633 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
634
635 The VUB300 chip supports SD and MMC memory cards in addition
636 to single and multifunction SDIO cards.
637
638 Some SDIO cards will need a firmware file to be loaded and
639 sent to VUB300 chip in order to achieve better data throughput.
640 Download these "Offload Pseudocode" from Elan Digital Systems'
641 web-site http://www.elandigitalsystems.com/support/downloads.php
642 and put them in /lib/firmware. Note that without these additional
643 firmware files the VUB300 chip will still function, but not at
644 the best obtainable data rate.
645
646 To compile this mmc host controller driver as a module,
647 choose M here: the module will be called vub300.
648
649 If you have a computer with an embedded VUB300 chip
650 or if you intend connecting a USB adapter based on a
651 VUB300 chip say Y or M here.
652
David Vrabel53f3a9e2010-09-02 14:15:08 +0000653config MMC_USHC
654 tristate "USB SD Host Controller (USHC) support"
655 depends on USB
656 help
657 This selects support for USB SD Host Controllers based on
658 the Cypress Astoria chip with firmware compliant with CSR's
659 USB SD Host Controller specification (CS-118793-SP).
660
661 CSR boards with this device include: USB<>SDIO (M1985v2),
662 and Ultrasira.
663
664 Note: These controllers only support SDIO cards and do not
665 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300666
667config MMC_WMT
668 tristate "Wondermedia SD/MMC Host Controller support"
669 depends on ARCH_VT8500
670 default y
671 help
672 This selects support for the SD/MMC Host Controller on
673 Wondermedia WM8505/WM8650 based SoCs.
674
675 To compile this driver as a module, choose M here: the
676 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800677
Wei WANG2c94b642012-11-09 20:53:34 +0800678config MMC_REALTEK_PCI
679 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
680 depends on MFD_RTSX_PCI
681 help
682 Say Y here to include driver code to support SD/MMC card interface
683 of Realtek PCI-E card reader