blob: 5115445cded1ca0670ce5c528be26033cca43cad [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"
Sebastian Hesselbarthec4422a2014-05-19 20:02:51 +0200171 depends on ARCH_DOVE || MACH_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
Jonas Jensen1b66e942014-04-09 15:54:11 +0200286config MMC_MOXART
287 tristate "MOXART SD/MMC Host Controller support"
288 depends on ARCH_MOXART && MMC
289 help
290 This selects support for the MOXART SD/MMC Host Controller.
291 MOXA provides one multi-functional card reader which can
292 be found on some embedded hardware such as UC-7112-LX.
293 If you have a controller with this interface, say Y here.
294
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100295config MMC_OMAP
296 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200297 depends on ARCH_OMAP
Arnd Bergmann60a549f2014-06-05 23:14:40 +0200298 depends on TPS65010 || !MACH_OMAP_H2
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100299 help
300 This selects the TI OMAP Multimedia card Interface.
301 If you have an OMAP board with a Multimedia Card slot,
302 say Y or M here.
303
304 If unsure, say N.
305
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100306config MMC_OMAP_HS
307 tristate "TI OMAP High Speed Multimedia Card Interface support"
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530308 depends on ARCH_OMAP2PLUS || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100309 help
310 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530311 If you have an omap2plus board with a Multimedia Card slot,
312 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100313
314 If unsure, say N.
315
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100316config MMC_WBSD
317 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200318 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100319 help
320 This selects the Winbond(R) W83L51xD Secure digital and
321 Multimedia card Interface.
322 If you have a machine with a integrated W83L518D or W83L519D
323 SD/MMC card reader, say Y or M here.
324
325 If unsure, say N.
326
327config MMC_AU1X
328 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200329 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100330 help
331 This selects the AMD Alchemy(R) Multimedia card interface.
332 If you have a Alchemy platform with a MMC slot, say Y or M here.
333
334 If unsure, say N.
335
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200336config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100337 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Rob Emanuele04d699c2009-09-22 16:45:19 -0700338 depends on AVR32 || ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200339 help
340 This selects the Atmel Multimedia Card Interface driver. If
Rob Emanuele04d699c2009-09-22 16:45:19 -0700341 you have an AT32 (AVR32) or AT91 platform with a Multimedia
342 Card slot, say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200343
344 If unsure, say N.
345
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200346config MMC_SDHCI_MSM
347 tristate "Qualcomm SDHCI Controller Support"
348 depends on ARCH_QCOM
349 depends on MMC_SDHCI_PLTFM
350 help
351 This selects the Secure Digital Host Controller Interface (SDHCI)
352 support present in Qualcomm SOCs. The controller supports
353 SD/MMC/SDIO devices.
354
355 If you have a controller with this interface, say Y or M here.
356
357 If unsure, say N.
358
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530359config MMC_MSM
360 tristate "Qualcomm SDCC Controller Support"
Stephen Boyd67d55ce2013-12-30 13:15:28 -0800361 depends on MMC && (ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50)
San Mehat9d2bd732009-09-22 16:44:22 -0700362 help
363 This provides support for the SD/MMC cell found in the
Sahitya Tummalaeba3f132010-07-29 16:58:01 +0530364 MSM and QSD SOCs from Qualcomm. The controller also has
365 support for SDIO devices.
San Mehat9d2bd732009-09-22 16:44:22 -0700366
Sascha Hauerd96be872009-01-06 17:04:14 +0100367config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200368 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
369 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100370 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200371 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
372 Multimedia Card Interface. If you have an i.MX or MPC512x platform
373 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100374
375 If unsure, say N.
376
Shawn Guoe4243f12011-02-21 18:35:28 +0800377config MMC_MXS
378 tristate "Freescale MXS Multimedia Card Interface support"
379 depends on ARCH_MXS && MXS_DMA
380 help
381 This selects the Freescale SSP MMC controller found on MXS based
382 platforms like mx23/28.
383
384 If unsure, say N.
385
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100386config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700387 tristate "TI Flash Media MMC/SD Interface support"
388 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100389 select TIFM_CORE
390 help
391 Say Y here if you want to be able to access MMC/SD cards with
392 the Texas Instruments(R) Flash Media card reader, found in many
393 laptops.
394 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
395 probably also need appropriate card reader host adapter, such as
396 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
397 (TIFM_7XX1)'.
398
399 To compile this driver as a module, choose M here: the
400 module will be called tifm_sd.
401
Maen Suleiman236caa72009-02-14 03:07:26 -0500402config MMC_MVSDIO
403 tristate "Marvell MMC/SD/SDIO host driver"
404 depends on PLAT_ORION
405 ---help---
406 This selects the Marvell SDIO host driver.
407 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
408 SoC controllers.
409
410 To compile this driver as a module, choose M here: the
411 module will be called mvsdio.
412
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800413config MMC_DAVINCI
414 tristate "TI DAVINCI Multimedia Card Interface support"
415 depends on ARCH_DAVINCI
416 help
417 This selects the TI DAVINCI Multimedia card Interface.
418 If you have an DAVINCI board with a Multimedia Card slot,
419 say Y or M here. If unsure, say N.
420
Mike Lockwood85c34d22013-01-21 23:43:46 +0000421config MMC_GOLDFISH
422 tristate "goldfish qemu Multimedia Card Interface support"
423 depends on GOLDFISH
424 help
425 This selects the Goldfish Multimedia card Interface emulation
426 found on the Goldfish Android virtual device emulation.
427
David Brownell15a05802007-08-08 09:12:54 -0700428config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200429 tristate "MMC/SD/SDIO over SPI"
Pierre Ossman1ea4f442008-09-07 13:07:57 +0200430 depends on SPI_MASTER && !HIGHMEM && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700431 select CRC7
432 select CRC_ITU_T
433 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100434 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200435 instead of using a "native" MMC/SD/SDIO controller. This has a
436 disadvantage of being relatively high overhead, but a compensating
437 advantage of working on many systems without dedicated MMC/SD/SDIO
438 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700439
440 If unsure, or if your system has no SPI master driver, say N.
441
Thomas Kleffelbe518012008-06-30 22:40:24 +0100442config MMC_S3C
443 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900444 depends on ARCH_S3C24XX
Thomas Kleffelbe518012008-06-30 22:40:24 +0100445 help
446 This selects a driver for the MCI interface found in
447 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
448 If you have a board based on one of those and a MMC/SD
449 slot, say Y or M here.
450
451 If unsure, say N.
452
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700453config MMC_S3C_HW_SDIO_IRQ
454 bool "Hardware support for SDIO IRQ"
455 depends on MMC_S3C
456 help
457 Enable the hardware support for SDIO interrupts instead of using
458 the generic polling code.
459
Ben Dooks26f14942009-10-01 15:44:18 -0700460choice
461 prompt "Samsung S3C SD/MMC transfer code"
462 depends on MMC_S3C
463
464config MMC_S3C_PIO
465 bool "Use PIO transfers only"
466 help
467 Use PIO to transfer data between memory and the hardware.
468
469 PIO is slower than DMA as it requires CPU instructions to
470 move the data. This has been the traditional default for
471 the S3C MCI driver.
472
473config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700474 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700475 help
476 Use DMA to transfer data between memory and the hardare.
477
478 Currently, the DMA support in this driver seems to not be
479 working properly and needs to be debugged before this
480 option is useful.
481
482config MMC_S3C_PIODMA
Kees Cook86147c82012-10-02 11:17:47 -0700483 bool "Support for both PIO and DMA"
Ben Dooks26f14942009-10-01 15:44:18 -0700484 help
485 Compile both the PIO and DMA transfer routines into the
486 driver and let the platform select at run-time which one
487 is best.
488
489 See notes for the DMA option.
490
491endchoice
492
Sascha Sommer6a369132008-07-15 14:21:29 +0200493config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700494 tristate "MMC/SD driver for Ricoh Bay1Controllers"
495 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200496 help
497 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
498 card whenever you insert a MMC or SD card into the card slot.
499
500 To compile this driver as a module, choose M here: the
501 module will be called sdricoh_cs.
502
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100503config MMC_TMIO_CORE
504 tristate
505
Ian Molton4a489982008-07-15 16:02:21 +0100506config MMC_TMIO
507 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100508 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100509 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100510 help
511 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200512 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200513
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100514config MMC_SDHI
515 tristate "SH-Mobile SDHI SD/SDIO controller support"
Laurent Pinchartff0fa482013-11-27 02:18:29 +0100516 depends on SUPERH || ARM
517 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100518 select MMC_TMIO_CORE
519 help
520 This provides support for the SDHI SD/SDIO controller found in
521 SuperH and ARM SH-Mobile SoCs
522
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200523config MMC_CB710
524 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200525 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200526 select CB710_CORE
527 help
528 This option enables support for MMC/SD part of ENE CB710/720 Flash
529 memory card reader found in some laptops (ie. some versions of
530 HP Compaq nx9500).
531
532 This driver can also be built as a module. If so, the module
533 will be called cb710-mmc.
534
Harald Weltef0bf7f62009-06-17 20:22:39 +0200535config MMC_VIA_SDMMC
536 tristate "VIA SD/MMC Card Reader Driver"
537 depends on PCI
538 help
539 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
540 VIA provides one multi-functional card reader which integrated into
541 some motherboards manufactured by VIA. This card reader supports
542 SD/MMC/SDHC.
543 If you have a controller with this interface, say Y or M here.
544
545 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800546
547config SDH_BFIN
548 tristate "Blackfin Secure Digital Host support"
Mike Frysinger05dabcc2010-03-05 13:43:24 -0800549 depends on (BF54x && !BF544) || (BF51x && !BF512)
Cliff Caieb962d52009-12-14 18:01:32 -0800550 help
551 If you say yes here you will get support for the Blackfin on-chip
552 Secure Digital Host interface. This includes support for MMC and
553 SD cards.
554
555 To compile this driver as a module, choose M here: the
556 module will be called bfin_sdh.
557
558 If unsure, say N.
559
560config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND
561 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround"
562 depends on SDH_BFIN
563 help
564 If you say yes here SD-Cards may work on the EZkit.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700565
Will Newtonf95f3852011-01-02 01:11:59 -0500566config MMC_DW
567 tristate "Synopsys DesignWare Memory Card Interface"
Mischa Jonkerb7d06c82013-08-28 20:40:29 +0200568 depends on ARC || ARM
Will Newtonf95f3852011-01-02 01:11:59 -0500569 help
570 This selects support for the Synopsys DesignWare Mobile Storage IP
571 block, this provides host support for SD and MMC interfaces, in both
572 PIO and external DMA modes.
573
574config MMC_DW_IDMAC
575 bool "Internal DMAC interface"
576 depends on MMC_DW
577 help
578 This selects support for the internal DMAC block within the Synopsys
579 Designware Mobile Storage IP block. This disables the external DMA
580 interface.
581
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530582config MMC_DW_PLTFM
583 tristate "Synopsys Designware MCI Support as platform device"
584 depends on MMC_DW
585 default y
586 help
587 This selects the common helper functions support for Host Controller
588 Interface based platform driver. Please select this option if the IP
589 is present as a platform device. This is the common interface for the
590 Synopsys Designware IP.
591
592 If you have a controller with this interface, say Y or M here.
593
594 If unsure, say Y.
595
Thomas Abrahamc3665002012-09-17 18:16:43 +0000596config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900597 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000598 depends on MMC_DW
599 select MMC_DW_PLTFM
600 help
601 This selects support for Samsung Exynos SoC specific extensions to the
602 Synopsys DesignWare Memory Card Interface driver. Select this option
603 for platforms based on Exynos4 and Exynos5 SoC's.
604
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800605config MMC_DW_K3
606 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
607 depends on MMC_DW
608 select MMC_DW_PLTFM
609 select MMC_DW_IDMAC
610 help
611 This selects support for Hisilicon K3 SoC specific extensions to the
612 Synopsys DesignWare Memory Card Interface driver. Select this option
613 for platforms based on Hisilicon K3 SoC's.
614
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530615config MMC_DW_PCI
616 tristate "Synopsys Designware MCI support on PCI bus"
617 depends on MMC_DW && PCI
618 help
619 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
620 Select this option if the IP is present on PCI platform.
621
622 If you have a controller with this interface, say Y or M here.
623
624 If unsure, say N.
625
Yusuke Godafdc50a92010-05-26 14:41:59 -0700626config MMC_SH_MMCIF
627 tristate "SuperH Internal MMCIF support"
Laurent Pinchart9ccb0bd2013-11-27 02:18:30 +0100628 depends on MMC_BLOCK
629 depends on SUPERH || ARCH_SHMOBILE || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700630 help
Uwe Kleine-Königb5950762010-11-01 15:38:34 -0400631 This selects the MMC Host Interface controller (MMCIF).
Yusuke Godafdc50a92010-05-26 14:41:59 -0700632
633 This driver supports MMCIF in sh7724/sh7757/sh7372.
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000634
635config MMC_JZ4740
636 tristate "JZ4740 SD/Multimedia Card Interface support"
637 depends on MACH_JZ4740
638 help
639 This selects support for the SD/MMC controller on Ingenic JZ4740
640 SoCs.
641 If you have a board based on such a SoC and with a SD/MMC slot,
642 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000643
Tony Olech88095e72011-05-14 16:48:13 -0400644config MMC_VUB300
645 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
646 depends on USB
647 help
648 This selects support for Elan Digital Systems' VUB300 chip.
649
650 The VUB300 is a USB-SDIO Host Controller Interface chip
651 that enables the host computer to use SDIO/SD/MMC cards
652 via a USB 2.0 or USB 1.1 host.
653
654 The VUB300 chip will be found in both physically separate
655 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
656
657 The VUB300 chip supports SD and MMC memory cards in addition
658 to single and multifunction SDIO cards.
659
660 Some SDIO cards will need a firmware file to be loaded and
661 sent to VUB300 chip in order to achieve better data throughput.
662 Download these "Offload Pseudocode" from Elan Digital Systems'
663 web-site http://www.elandigitalsystems.com/support/downloads.php
664 and put them in /lib/firmware. Note that without these additional
665 firmware files the VUB300 chip will still function, but not at
666 the best obtainable data rate.
667
668 To compile this mmc host controller driver as a module,
669 choose M here: the module will be called vub300.
670
671 If you have a computer with an embedded VUB300 chip
672 or if you intend connecting a USB adapter based on a
673 VUB300 chip say Y or M here.
674
David Vrabel53f3a9e2010-09-02 14:15:08 +0000675config MMC_USHC
676 tristate "USB SD Host Controller (USHC) support"
677 depends on USB
678 help
679 This selects support for USB SD Host Controllers based on
680 the Cypress Astoria chip with firmware compliant with CSR's
681 USB SD Host Controller specification (CS-118793-SP).
682
683 CSR boards with this device include: USB<>SDIO (M1985v2),
684 and Ultrasira.
685
686 Note: These controllers only support SDIO cards and do not
687 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300688
689config MMC_WMT
690 tristate "Wondermedia SD/MMC Host Controller support"
691 depends on ARCH_VT8500
692 default y
693 help
694 This selects support for the SD/MMC Host Controller on
695 Wondermedia WM8505/WM8650 based SoCs.
696
697 To compile this driver as a module, choose M here: the
698 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800699
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200700config MMC_USDHI6ROL0
701 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
702 help
703 This selects support for the Renesas USDHI6ROL0 SD/SDIO
704 Host Controller
705
Wei WANG2c94b642012-11-09 20:53:34 +0800706config MMC_REALTEK_PCI
707 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
708 depends on MFD_RTSX_PCI
709 help
710 Say Y here to include driver code to support SD/MMC card interface
711 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800712
713config MMC_REALTEK_USB
714 tristate "Realtek USB SD/MMC Card Interface Driver"
715 depends on MFD_RTSX_USB
716 help
717 Say Y here to include driver code to support SD/MMC card interface
718 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200719
720config MMC_SUNXI
721 tristate "Allwinner sunxi SD/MMC Host Controller support"
722 depends on ARCH_SUNXI
723 help
724 This selects support for the SD/MMC Host Controller on
725 Allwinner sunxi SoCs.