blob: e12e814837474a9ed5444180582b916ea5f9a64c [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Pierre Ossman1c6a0712007-02-11 19:57:36 +01002#
3# MMC/SD host controller drivers
4#
5
Pierre Ossman57105732008-09-07 13:16:58 +02006comment "MMC/SD/SDIO Host Controller Drivers"
Pierre Ossman1c6a0712007-02-11 19:57:36 +01007
Shawn Lin03596b92017-07-19 15:55:47 +08008config MMC_DEBUG
Wolfram Sangb4f146f52017-09-05 20:27:50 +02009 bool "MMC host drivers debugging"
Shawn Lin03596b92017-07-19 15:55:47 +080010 depends on MMC != n
11 help
12 This is an option for use by developers; most people should
13 say N here. This enables MMC host driver debugging. And further
14 added host drivers please don't invent their private macro for
15 debugging.
16
Pierre Ossman1c6a0712007-02-11 19:57:36 +010017config MMC_ARMMMCI
18 tristate "ARM AMBA Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +020019 depends on ARM_AMBA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010020 help
21 This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
22 Interface (PL180 and PL181) support. If you have an ARM(R)
23 platform with a Multimedia Card slot, say Y or M here.
24
25 If unsure, say N.
26
Srinivas Kandagatla9cb15142014-07-29 03:50:30 +010027config MMC_QCOM_DML
Srinivas Kandagatla1ac99062017-08-30 14:22:12 +020028 bool "Qualcomm Data Mover for SD Card Controller"
Srinivas Kandagatla9cb15142014-07-29 03:50:30 +010029 depends on MMC_ARMMMCI && QCOM_BAM_DMA
30 default y
31 help
32 This selects the Qualcomm Data Mover lite/local on SD Card controller.
33 This option will enable the dma to work correctly, if you are using
34 Qcom SOCs and MMC, you would probably need this option to get DMA working.
35
36 if unsure, say N.
37
Ludovic Barre46b723d2018-10-08 14:08:55 +020038config MMC_STM32_SDMMC
39 bool "STMicroelectronics STM32 SDMMC Controller"
40 depends on MMC_ARMMMCI
41 default y
42 help
43 This selects the STMicroelectronics STM32 SDMMC host controller.
44 If you have a STM32 sdmmc host with internal DMA say Y here.
45
46 If unsure, say N.
47
Pierre Ossman1c6a0712007-02-11 19:57:36 +010048config MMC_PXA
49 tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +020050 depends on ARCH_PXA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010051 help
52 This selects the Intel(R) PXA(R) Multimedia card Interface.
53 If you have a PXA(R) platform with a Multimedia Card slot,
54 say Y or M here.
55
56 If unsure, say N.
57
58config MMC_SDHCI
Pierre Ossman34671dc2008-01-05 23:18:58 +010059 tristate "Secure Digital Host Controller Interface support"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010060 depends on HAS_DMA
Pierre Ossman1c6a0712007-02-11 19:57:36 +010061 help
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010062 This selects the generic Secure Digital Host Controller Interface.
Pierre Ossman1c6a0712007-02-11 19:57:36 +010063 It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
64 and Toshiba(R). Most controllers found in laptops are of this type.
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010065
66 If you have a controller with this interface, say Y or M here. You
67 also need to enable an appropriate bus interface.
68
69 If unsure, say N.
70
Anton Vorontsov4e4141a2009-03-17 00:13:46 +030071config MMC_SDHCI_IO_ACCESSORS
72 bool
73 depends on MMC_SDHCI
74 help
75 This is silent Kconfig symbol that is selected by the drivers that
76 need to overwrite SDHCI IO memory accessors.
77
Albert Herranz7657c3a2009-12-17 15:27:20 -080078config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
79 bool
Jean Delvare82813b72015-01-26 11:35:44 +010080 depends on MMC_SDHCI
Albert Herranz7657c3a2009-12-17 15:27:20 -080081 select MMC_SDHCI_IO_ACCESSORS
82 help
83 This option is selected by drivers running on big endian hosts
84 and performing I/O to a SDHCI controller through a bus that
85 implements a hardware byte swapper using a 32-bit datum.
86 This endian mapping mode is called "data invariance" and
87 has the effect of scrambling the addresses and formats of data
88 accessed in sizes other than the datum size.
89
yangbo lu2ca63522015-10-08 18:36:47 +080090 This is the case for the Nintendo Wii SDHCI.
Albert Herranz7657c3a2009-12-17 15:27:20 -080091
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010092config MMC_SDHCI_PCI
93 tristate "SDHCI support on PCI bus"
94 depends on MMC_SDHCI && PCI
Adrian Hunter8ee82bd2017-11-29 15:41:06 +020095 select MMC_CQHCI
Adrian Hunter0a49a612019-05-06 11:38:53 +030096 select IOSF_MBI if X86
Ben Chuange51df6c2019-09-11 15:23:44 +080097 select MMC_SDHCI_IO_ACCESSORS
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +010098 help
99 This selects the PCI Secure Digital Host Controller Interface.
100 Most controllers found today are PCI devices.
101
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100102 If you have a controller with this interface, say Y or M here.
103
104 If unsure, say N.
105
Philip Langdale5ae70292007-09-15 12:54:08 -0700106config MMC_RICOH_MMC
Kees Cook86147c82012-10-02 11:17:47 -0700107 bool "Ricoh MMC Controller Disabler"
Pierre Ossmanb8c86fc2008-03-18 17:35:49 +0100108 depends on MMC_SDHCI_PCI
Jean Delvareba2f7322015-01-26 11:44:15 +0100109 default y
Philip Langdale5ae70292007-09-15 12:54:08 -0700110 help
Maxim Levitsky03cd8f72010-03-05 13:43:20 -0800111 This adds a pci quirk to disable Ricoh MMC Controller. This
Philip Langdale5ae70292007-09-15 12:54:08 -0700112 proprietary controller is unnecessary because the SDHCI driver
113 supports MMC cards on the SD controller, but if it is not
114 disabled, it will steal the MMC cards away - rendering them
Maxim Levitsky03cd8f72010-03-05 13:43:20 -0800115 useless. It is safe to select this even if you don't
Philip Langdale5ae70292007-09-15 12:54:08 -0700116 have a Ricoh based card reader.
117
Philip Langdale5ae70292007-09-15 12:54:08 -0700118 If unsure, say Y.
119
Adrian Hunterc4e05032012-11-23 21:17:34 +0100120config MMC_SDHCI_ACPI
121 tristate "SDHCI support for ACPI enumerated SDHCI controllers"
Sinan Kayac2eda8a2019-01-05 10:06:04 +0000122 depends on MMC_SDHCI && ACPI && PCI
Adrian Hunter6e1c7d62016-04-15 14:06:57 +0300123 select IOSF_MBI if X86
Adrian Hunterc4e05032012-11-23 21:17:34 +0100124 help
125 This selects support for ACPI enumerated SDHCI controllers,
126 identified by ACPI Compatibility ID PNP0D40 or specific
127 ACPI Hardware IDs.
128
129 If you have a controller with this interface, say Y or M here.
130
131 If unsure, say N.
132
Shawn Guof0de8362011-06-02 10:57:50 +0800133config MMC_SDHCI_PLTFM
134 tristate "SDHCI platform and OF driver helper"
Shawn Guo38576af2011-05-27 23:48:14 +0800135 depends on MMC_SDHCI
Shawn Guof0de8362011-06-02 10:57:50 +0800136 help
137 This selects the common helper functions support for Secure Digital
138 Host Controller Interface based platform and OF drivers.
139
140 If you have a controller with this interface, say Y or M here.
141
142 If unsure, say N.
143
Soren Brinkmanne3ec3a32013-12-02 10:02:36 -0800144config MMC_SDHCI_OF_ARASAN
145 tristate "SDHCI OF support for the Arasan SDHCI controllers"
146 depends on MMC_SDHCI_PLTFM
147 depends on OF
Douglas Andersonc390f212016-06-20 10:56:50 -0700148 depends on COMMON_CLK
Shawn Lin84362d72018-01-16 11:43:51 +0800149 select MMC_CQHCI
Soren Brinkmanne3ec3a32013-12-02 10:02:36 -0800150 help
151 This selects the Arasan Secure Digital Host Controller Interface
152 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
153
154 If you have a controller with this interface, say Y or M here.
155
156 If unsure, say N.
157
Andrew Jefferybb7b8ec2019-08-07 10:06:29 +0930158config MMC_SDHCI_OF_ASPEED
159 tristate "SDHCI OF support for the ASPEED SDHCI controller"
160 depends on MMC_SDHCI_PLTFM
Andrew Jeffery72976642019-09-04 11:51:20 +0930161 depends on OF && OF_ADDRESS
Andrew Jefferybb7b8ec2019-08-07 10:06:29 +0930162 help
163 This selects the ASPEED Secure Digital Host Controller Interface.
164
165 If you have a controller with this interface, say Y or M here. You
166 also need to enable an appropriate bus interface.
167
168 If unsure, say N.
169
ludovic.desroches@atmel.combb5f8ea2015-07-29 16:22:47 +0200170config MMC_SDHCI_OF_AT91
171 tristate "SDHCI OF support for the Atmel SDMMC controller"
172 depends on MMC_SDHCI_PLTFM
173 depends on OF
ludovic.desroches@atmel.combb5f8ea2015-07-29 16:22:47 +0200174 help
175 This selects the Atmel SDMMC driver
176
Shawn Guof0de8362011-06-02 10:57:50 +0800177config MMC_SDHCI_OF_ESDHC
178 tristate "SDHCI OF support for the Freescale eSDHC controller"
179 depends on MMC_SDHCI_PLTFM
yangbo lu2ca63522015-10-08 18:36:47 +0800180 depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE
181 select MMC_SDHCI_IO_ACCESSORS
yangbo lu151ede42016-11-09 11:14:12 +0800182 select FSL_GUTS
Albert Herranz7657c3a2009-12-17 15:27:20 -0800183 help
184 This selects the Freescale eSDHC controller support.
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300185
Shawn Guof0de8362011-06-02 10:57:50 +0800186 If you have a controller with this interface, say Y or M here.
187
Anton Vorontsov3085e9c2009-03-17 00:14:05 +0300188 If unsure, say N.
189
Albert Herranz1144ab52009-12-17 15:27:20 -0800190config MMC_SDHCI_OF_HLWD
Shawn Guof0de8362011-06-02 10:57:50 +0800191 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
192 depends on MMC_SDHCI_PLTFM
Kevin Hao5f2e0972015-02-26 20:08:21 +0800193 depends on PPC
Albert Herranz1144ab52009-12-17 15:27:20 -0800194 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
195 help
196 This selects the Secure Digital Host Controller Interface (SDHCI)
197 found in the "Hollywood" chipset of the Nintendo Wii video game
198 console.
199
Shawn Guof0de8362011-06-02 10:57:50 +0800200 If you have a controller with this interface, say Y or M here.
201
Albert Herranz1144ab52009-12-17 15:27:20 -0800202 If unsure, say N.
203
Jisheng Zhange438cf42018-07-06 15:23:55 +0800204config MMC_SDHCI_OF_DWCMSHC
205 tristate "SDHCI OF support for the Synopsys DWC MSHC"
206 depends on MMC_SDHCI_PLTFM
207 depends on OF
208 depends on COMMON_CLK
209 help
210 This selects Synopsys DesignWare Cores Mobile Storage Controller
211 support.
212 If you have a controller with this interface, say Y or M here.
213 If unsure, say N.
214
Masahiro Yamadaff6af282016-12-08 21:50:55 +0900215config MMC_SDHCI_CADENCE
216 tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
217 depends on MMC_SDHCI_PLTFM
218 depends on OF
219 help
220 This selects the Cadence SD/SDIO/eMMC driver.
221
222 If you have a controller with this interface, say Y or M here.
223
224 If unsure, say N.
225
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700226config MMC_SDHCI_CNS3XXX
Shawn Guo85d65092011-05-27 23:48:12 +0800227 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700228 depends on ARCH_CNS3XXX
Shawn Guof0de8362011-06-02 10:57:50 +0800229 depends on MMC_SDHCI_PLTFM
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700230 help
231 This selects the SDHCI support for CNS3xxx System-on-Chip devices.
232
Shawn Guof0de8362011-06-02 10:57:50 +0800233 If you have a controller with this interface, say Y or M here.
234
Anton Vorontsov20b1597b2010-08-10 18:01:49 -0700235 If unsure, say N.
236
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200237config MMC_SDHCI_ESDHC_IMX
Shawn Guo95a24822011-09-19 17:32:21 +0800238 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
Sascha Hauer2b795512011-08-24 08:41:08 +0200239 depends on ARCH_MXC
Shawn Guof0de8362011-06-02 10:57:50 +0800240 depends on MMC_SDHCI_PLTFM
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200241 select MMC_SDHCI_IO_ACCESSORS
BOUGH CHENbb6e3582019-01-07 10:11:39 +0000242 select MMC_CQHCI
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200243 help
Shawn Guo95a24822011-09-19 17:32:21 +0800244 This selects the Freescale eSDHC/uSDHC controller support
245 found on i.MX25, i.MX35 i.MX5x and i.MX6x.
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200246
Shawn Guof0de8362011-06-02 10:57:50 +0800247 If you have a controller with this interface, say Y or M here.
248
Wolfram Sang95f25ef2010-10-15 12:21:04 +0200249 If unsure, say N.
250
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500251config MMC_SDHCI_DOVE
Shawn Guo85d65092011-05-27 23:48:12 +0800252 tristate "SDHCI support on Marvell's Dove SoC"
Sebastian Hesselbarthec4422a2014-05-19 20:02:51 +0200253 depends on ARCH_DOVE || MACH_DOVE
Shawn Guof0de8362011-06-02 10:57:50 +0800254 depends on MMC_SDHCI_PLTFM
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500255 select MMC_SDHCI_IO_ACCESSORS
256 help
257 This selects the Secure Digital Host Controller Interface in
258 Marvell's Dove SoC.
259
Shawn Guof0de8362011-06-02 10:57:50 +0800260 If you have a controller with this interface, say Y or M here.
261
Mike Rapoport985b1aa2010-11-07 16:57:12 -0500262 If unsure, say N.
263
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500264config MMC_SDHCI_TEGRA
Shawn Guo85d65092011-05-27 23:48:12 +0800265 tristate "SDHCI platform support for the Tegra SD/MMC Controller"
266 depends on ARCH_TEGRA
Shawn Guof0de8362011-06-02 10:57:50 +0800267 depends on MMC_SDHCI_PLTFM
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500268 select MMC_SDHCI_IO_ACCESSORS
Sowjanya Komatineni3c4019f2019-01-23 11:30:54 -0800269 select MMC_CQHCI
Olof Johansson03d2bfc2011-01-01 23:52:56 -0500270 help
271 This selects the Tegra SD/MMC controller. If you have a Tegra
272 platform with SD or MMC devices, say Y or M here.
273
274 If unsure, say N.
275
Ben Dooks0d1bb412009-06-14 13:52:37 +0100276config MMC_SDHCI_S3C
277 tristate "SDHCI support on Samsung S3C SoC"
Kyungmin Park930a6f72010-08-19 14:13:35 -0700278 depends on MMC_SDHCI && PLAT_SAMSUNG
Ben Dooks0d1bb412009-06-14 13:52:37 +0100279 help
280 This selects the Secure Digital Host Controller Interface (SDHCI)
281 often referrered to as the HSMMC block in some of the Samsung S3C
282 range of SoC.
283
Ben Dooks0d1bb412009-06-14 13:52:37 +0100284 If you have a controller with this interface, say Y or M here.
285
286 If unsure, say N.
287
Barry Songb3b665b2013-03-21 16:27:19 +0800288config MMC_SDHCI_SIRF
289 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
290 depends on ARCH_SIRF
291 depends on MMC_SDHCI_PLTFM
Weijun Yanga1b0b972015-04-27 08:15:14 +0000292 select MMC_SDHCI_IO_ACCESSORS
Barry Songb3b665b2013-03-21 16:27:19 +0800293 help
294 This selects the SDHCI support for SiRF System-on-Chip devices.
295
296 If you have a controller with this interface, say Y or M here.
297
298 If unsure, say N.
299
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800300config MMC_SDHCI_PXAV3
301 tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
302 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200303 depends on MMC_SDHCI_PLTFM
Jean Delvaredaa30542015-02-23 11:30:40 +0100304 depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
Zhangfei Gaoa702c8a2011-06-08 17:41:57 +0800305 default CPU_MMP2
306 help
307 This selects the Marvell(R) PXAV3 SD Host Controller.
308 If you have a MMP2 platform with SD Host Controller
309 and a card slot, say Y or M here.
310
311 If unsure, say N.
312
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800313config MMC_SDHCI_PXAV2
314 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
315 depends on CLKDEV_LOOKUP
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200316 depends on MMC_SDHCI_PLTFM
Jean Delvare8a8735e2015-01-26 11:23:28 +0100317 depends on ARCH_MMP || COMPILE_TEST
Zhangfei Gao9f5d71e2011-06-08 17:41:58 +0800318 default CPU_PXA910
319 help
320 This selects the Marvell(R) PXAV2 SD Host Controller.
321 If you have a PXA9XX platform with SD Host Controller
322 and a card slot, say Y or M here.
323
324 If unsure, say N.
325
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700326config MMC_SDHCI_SPEAR
327 tristate "SDHCI support on ST SPEAr platform"
328 depends on MMC_SDHCI && PLAT_SPEAR
Ulf Hanssonbbd7f0a2015-03-04 14:57:44 +0100329 depends on OF
Viresh KUMARc63b3cb2010-05-26 14:42:10 -0700330 help
331 This selects the Secure Digital Host Controller Interface (SDHCI)
332 often referrered to as the HSMMC block in some of the ST SPEAR range
333 of SoC
334
335 If you have a controller with this interface, say Y or M here.
336
337 If unsure, say N.
338
Ben Dooks0d1bb412009-06-14 13:52:37 +0100339config MMC_SDHCI_S3C_DMA
340 bool "DMA support on S3C SDHCI"
Kees Cook86147c82012-10-02 11:17:47 -0700341 depends on MMC_SDHCI_S3C
Ben Dooks0d1bb412009-06-14 13:52:37 +0100342 help
343 Enable DMA support on the Samsung S3C SDHCI glue. The DMA
344 has proved to be problematic if the controller encounters
345 certain errors, and thus should be treated with care.
346
347 YMMV.
348
Christian Daudt01ebea12013-06-20 14:26:37 -0700349config MMC_SDHCI_BCM_KONA
350 tristate "SDHCI support on Broadcom KONA platform"
Christian Daudtfc2bd2e2013-09-23 10:20:35 -0700351 depends on ARCH_BCM_MOBILE
Arnd Bergmann5d01b762014-06-05 23:14:41 +0200352 depends on MMC_SDHCI_PLTFM
Christian Daudt01ebea12013-06-20 14:26:37 -0700353 help
354 This selects the Broadcom Kona Secure Digital Host Controller
355 Interface(SDHCI) support.
356 This is used in Broadcom mobile SoCs.
357
358 If you have a controller with this interface, say Y or M here.
359
Vincent Yang87a50742015-01-20 16:05:18 +0800360config MMC_SDHCI_F_SDH30
361 tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
362 depends on MMC_SDHCI_PLTFM
Ard Biesheuvel90e1d8c2018-01-08 15:44:19 +0000363 depends on OF || ACPI
Vincent Yang87a50742015-01-20 16:05:18 +0800364 help
365 This selects the Secure Digital Host Controller Interface (SDHCI)
366 Needed by some Fujitsu SoC for MMC / SD / SDIO support.
367 If you have a controller with this interface, say Y or M here.
368
369 If unsure, say N.
370
Takao Oritodd79b7e2019-09-10 10:41:06 +0900371config MMC_SDHCI_MILBEAUT
372 tristate "SDHCI support for Socionext Milbeaut Serieas using F_SDH30"
373 depends on MMC_SDHCI_PLTFM
374 depends on OF
375 help
376 This selects the Secure Digital Host Controller Interface (SDHCI)
377 Needed by Milbeaut SoC for MMC / SD / SDIO support.
378 If you have a controller with this interface, say Y or M here.
379
380 If unsure, say N.
381
Scott Brandenb580c522015-02-09 16:06:30 -0800382config MMC_SDHCI_IPROC
Stefan Wahren77cb7d32016-01-27 22:25:41 +0000383 tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
384 depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
Scott Brandenb580c522015-02-09 16:06:30 -0800385 depends on MMC_SDHCI_PLTFM
Srinath Mannam7c7ba432018-08-05 13:22:52 +0530386 depends on OF || ACPI
Scott Brandenb580c522015-02-09 16:06:30 -0800387 default ARCH_BCM_IPROC
388 select MMC_SDHCI_IO_ACCESSORS
389 help
390 This selects the iProc SD/MMC controller.
391
Stefan Wahren77cb7d32016-01-27 22:25:41 +0000392 If you have a BCM2835 or IPROC platform with SD or MMC devices,
Scott Brandenb580c522015-02-09 16:06:30 -0800393 say Y or M here.
394
395 If unsure, say N.
396
Kevin Hilman51c5d842016-10-19 11:18:24 -0700397config MMC_MESON_GX
Nan Lie79dc1b2018-04-03 18:06:51 +0800398 tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
Kevin Hilman51c5d842016-10-19 11:18:24 -0700399 depends on ARCH_MESON && MMC
400 help
401 This selects support for the Amlogic SD/MMC Host Controller
Nan Lie79dc1b2018-04-03 18:06:51 +0800402 found on the S905/GX*/AXG family of SoCs. This controller is
Kevin Hilman51c5d842016-10-19 11:18:24 -0700403 MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
404
405 If you have a controller with this interface, say Y here.
406
Carlo Caioneed80a132017-10-03 13:24:17 +0200407config MMC_MESON_MX_SDIO
408 tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
409 depends on ARCH_MESON || COMPILE_TEST
410 depends on COMMON_CLK
Carlo Caioneed80a132017-10-03 13:24:17 +0200411 depends on OF
412 help
413 This selects support for the SD/MMC Host Controller on
414 Amlogic Meson6, Meson8 and Meson8b SoCs.
415
416 If you have a controller with this interface, say Y or M here.
417 If unsure, say N.
418
Jonas Jensen1b66e942014-04-09 15:54:11 +0200419config MMC_MOXART
420 tristate "MOXART SD/MMC Host Controller support"
421 depends on ARCH_MOXART && MMC
422 help
423 This selects support for the MOXART SD/MMC Host Controller.
424 MOXA provides one multi-functional card reader which can
425 be found on some embedded hardware such as UC-7112-LX.
426 If you have a controller with this interface, say Y here.
427
Peter Griffinf52d9c42014-07-09 16:07:32 +0100428config MMC_SDHCI_ST
429 tristate "SDHCI support on STMicroelectronics SoC"
Ivan Mikhaylov2feada52017-06-30 14:53:30 +0300430 depends on ARCH_STI || FSP2
Peter Griffinf52d9c42014-07-09 16:07:32 +0100431 depends on MMC_SDHCI_PLTFM
432 select MMC_SDHCI_IO_ACCESSORS
433 help
434 This selects the Secure Digital Host Controller Interface in
435 STMicroelectronics SoCs.
436
437 If you have a controller with this interface, say Y or M here.
438 If unsure, say N.
439
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100440config MMC_OMAP
441 tristate "TI OMAP Multimedia Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200442 depends on ARCH_OMAP
Arnd Bergmann60a549f2014-06-05 23:14:40 +0200443 depends on TPS65010 || !MACH_OMAP_H2
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100444 help
445 This selects the TI OMAP Multimedia card Interface.
446 If you have an OMAP board with a Multimedia Card slot,
447 say Y or M here.
448
449 If unsure, say N.
450
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100451config MMC_OMAP_HS
452 tristate "TI OMAP High Speed Multimedia Card Interface support"
Lokesh Vutlaa7cedab2015-10-20 16:50:06 -0500453 depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100454 help
455 This selects the TI OMAP High Speed Multimedia card Interface.
Amarinder Bindrabcf24e12013-07-10 21:36:24 +0530456 If you have an omap2plus board with a Multimedia Card slot,
457 say Y or M here.
Madhusudhan Chikkaturea45c6cb2009-01-23 01:05:23 +0100458
459 If unsure, say N.
460
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100461config MMC_WBSD
462 tristate "Winbond W83L51xD SD/MMC Card Interface support"
Jan Engelhardt790864d2007-05-08 22:30:32 +0200463 depends on ISA_DMA_API
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100464 help
465 This selects the Winbond(R) W83L51xD Secure digital and
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100466 Multimedia card Interface.
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100467 If you have a machine with a integrated W83L518D or W83L519D
468 SD/MMC card reader, say Y or M here.
469
470 If unsure, say N.
471
Oleksij Rempelc5413ad2018-12-02 11:30:46 +0100472config MMC_ALCOR
473 tristate "Alcor Micro/Alcor Link SD/MMC controller"
474 depends on MISC_ALCOR_PCI
475 help
476 Say Y here to include driver code to support SD/MMC card interface
477 of Alcor Micro PCI-E card reader
478
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100479config MMC_AU1X
480 tristate "Alchemy AU1XX0 MMC Card Interface support"
Manuel Lauss3766386032011-08-12 11:39:45 +0200481 depends on MIPS_ALCHEMY
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100482 help
483 This selects the AMD Alchemy(R) Multimedia card interface.
484 If you have a Alchemy platform with a MMC slot, say Y or M here.
485
486 If unsure, say N.
487
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200488config MMC_ATMELMCI
Ludovic Desrochesd6a20de2012-10-29 15:27:55 +0100489 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
Andy Shevchenkoef4b1602017-05-09 20:21:17 +0300490 depends on ARCH_AT91
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200491 help
Andy Shevchenkoef4b1602017-05-09 20:21:17 +0300492 This selects the Atmel Multimedia Card Interface driver.
493 If you have an AT91 platform with a Multimedia Card slot,
494 say Y or M here.
Haavard Skinnemoen7d2be072008-06-30 18:35:03 +0200495
496 If unsure, say N.
497
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200498config MMC_SDHCI_MSM
499 tristate "Qualcomm SDHCI Controller Support"
Georgi Djakov6096d7a82014-07-11 20:48:13 +0300500 depends on ARCH_QCOM || (ARM && COMPILE_TEST)
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200501 depends on MMC_SDHCI_PLTFM
Vijay Viswanath99d570d2017-09-27 11:04:42 +0530502 select MMC_SDHCI_IO_ACCESSORS
Georgi Djakov0eb0d9f2014-03-10 17:37:12 +0200503 help
504 This selects the Secure Digital Host Controller Interface (SDHCI)
505 support present in Qualcomm SOCs. The controller supports
506 SD/MMC/SDIO devices.
507
508 If you have a controller with this interface, say Y or M here.
509
510 If unsure, say N.
511
Sascha Hauerd96be872009-01-06 17:04:14 +0100512config MMC_MXC
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200513 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
514 depends on ARCH_MXC || PPC_MPC512x
Sascha Hauerd96be872009-01-06 17:04:14 +0100515 help
Anatolij Gustschinc7ceab02013-04-08 23:28:06 +0200516 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
517 Multimedia Card Interface. If you have an i.MX or MPC512x platform
518 with a Multimedia Card slot, say Y or M here.
Sascha Hauerd96be872009-01-06 17:04:14 +0100519
520 If unsure, say N.
521
Shawn Guoe4243f12011-02-21 18:35:28 +0800522config MMC_MXS
523 tristate "Freescale MXS Multimedia Card Interface support"
524 depends on ARCH_MXS && MXS_DMA
525 help
526 This selects the Freescale SSP MMC controller found on MXS based
527 platforms like mx23/28.
528
529 If unsure, say N.
530
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100531config MMC_TIFM_SD
Kees Cook86147c82012-10-02 11:17:47 -0700532 tristate "TI Flash Media MMC/SD Interface support"
533 depends on PCI
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100534 select TIFM_CORE
535 help
536 Say Y here if you want to be able to access MMC/SD cards with
537 the Texas Instruments(R) Flash Media card reader, found in many
538 laptops.
539 This option 'selects' (turns on, enables) 'TIFM_CORE', but you
540 probably also need appropriate card reader host adapter, such as
541 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
542 (TIFM_7XX1)'.
543
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100544 To compile this driver as a module, choose M here: the
Pierre Ossman1c6a0712007-02-11 19:57:36 +0100545 module will be called tifm_sd.
546
Maen Suleiman236caa72009-02-14 03:07:26 -0500547config MMC_MVSDIO
548 tristate "Marvell MMC/SD/SDIO host driver"
549 depends on PLAT_ORION
Linus Walleij17da6782015-11-25 14:57:57 +0100550 depends on OF
Maen Suleiman236caa72009-02-14 03:07:26 -0500551 ---help---
552 This selects the Marvell SDIO host driver.
553 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
554 SoC controllers.
555
556 To compile this driver as a module, choose M here: the
557 module will be called mvsdio.
558
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800559config MMC_DAVINCI
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100560 tristate "TI DAVINCI Multimedia Card Interface support"
561 depends on ARCH_DAVINCI
562 help
563 This selects the TI DAVINCI Multimedia card Interface.
564 If you have an DAVINCI board with a Multimedia Card slot,
565 say Y or M here. If unsure, say N.
Vipin Bhandarib4cff452009-12-14 18:01:21 -0800566
Mike Lockwood85c34d22013-01-21 23:43:46 +0000567config MMC_GOLDFISH
568 tristate "goldfish qemu Multimedia Card Interface support"
Luis de Bethencourt7f8a9a72015-10-10 17:08:32 +0100569 depends on GOLDFISH || COMPILE_TEST
Mike Lockwood85c34d22013-01-21 23:43:46 +0000570 help
571 This selects the Goldfish Multimedia card Interface emulation
572 found on the Goldfish Android virtual device emulation.
573
David Brownell15a05802007-08-08 09:12:54 -0700574config MMC_SPI
Pierre Ossman57105732008-09-07 13:16:58 +0200575 tristate "MMC/SD/SDIO over SPI"
Ian Moltone176c252017-07-18 13:19:15 +0100576 depends on SPI_MASTER && HAS_DMA
David Brownell15a05802007-08-08 09:12:54 -0700577 select CRC7
578 select CRC_ITU_T
579 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100580 Some systems access MMC/SD/SDIO cards using a SPI controller
Pierre Ossman57105732008-09-07 13:16:58 +0200581 instead of using a "native" MMC/SD/SDIO controller. This has a
582 disadvantage of being relatively high overhead, but a compensating
583 advantage of working on many systems without dedicated MMC/SD/SDIO
584 controllers.
David Brownell15a05802007-08-08 09:12:54 -0700585
586 If unsure, or if your system has no SPI master driver, say N.
587
Thomas Kleffelbe518012008-06-30 22:40:24 +0100588config MMC_S3C
589 tristate "Samsung S3C SD/MMC Card Interface support"
Kukjin Kimb130d5c2012-02-03 14:29:23 +0900590 depends on ARCH_S3C24XX
Vasily Khoruzhickb45e4b52014-06-01 20:22:09 +0300591 depends on S3C24XX_DMAC
Thomas Kleffelbe518012008-06-30 22:40:24 +0100592 help
593 This selects a driver for the MCI interface found in
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100594 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
Thomas Kleffelbe518012008-06-30 22:40:24 +0100595 If you have a board based on one of those and a MMC/SD
596 slot, say Y or M here.
597
598 If unsure, say N.
599
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700600config MMC_S3C_HW_SDIO_IRQ
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100601 bool "Hardware support for SDIO IRQ"
602 depends on MMC_S3C
603 help
604 Enable the hardware support for SDIO interrupts instead of using
605 the generic polling code.
Ben Dooks5a2c4fe2009-10-01 15:44:20 -0700606
Ben Dooks26f14942009-10-01 15:44:18 -0700607choice
608 prompt "Samsung S3C SD/MMC transfer code"
609 depends on MMC_S3C
610
611config MMC_S3C_PIO
612 bool "Use PIO transfers only"
613 help
614 Use PIO to transfer data between memory and the hardware.
615
616 PIO is slower than DMA as it requires CPU instructions to
617 move the data. This has been the traditional default for
618 the S3C MCI driver.
619
620config MMC_S3C_DMA
Kees Cook86147c82012-10-02 11:17:47 -0700621 bool "Use DMA transfers only"
Ben Dooks26f14942009-10-01 15:44:18 -0700622 help
623 Use DMA to transfer data between memory and the hardare.
624
625 Currently, the DMA support in this driver seems to not be
626 working properly and needs to be debugged before this
627 option is useful.
628
Ben Dooks26f14942009-10-01 15:44:18 -0700629endchoice
630
Sascha Sommer6a369132008-07-15 14:21:29 +0200631config MMC_SDRICOH_CS
Kees Cook86147c82012-10-02 11:17:47 -0700632 tristate "MMC/SD driver for Ricoh Bay1Controllers"
633 depends on PCI && PCMCIA
Sascha Sommer6a369132008-07-15 14:21:29 +0200634 help
635 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
636 card whenever you insert a MMC or SD card into the card slot.
637
638 To compile this driver as a module, choose M here: the
639 module will be called sdricoh_cs.
640
Chunyan Zhangfb8bd902018-08-30 16:21:44 +0800641config MMC_SDHCI_SPRD
642 tristate "Spreadtrum SDIO host Controller"
643 depends on ARCH_SPRD
644 depends on MMC_SDHCI_PLTFM
645 select MMC_SDHCI_IO_ACCESSORS
646 help
647 This selects the SDIO Host Controller in Spreadtrum
648 SoCs, this driver supports R11(IP version: R11P0).
649
650 If you have a controller with this interface, say Y or M here.
651
652 If unsure, say N.
653
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100654config MMC_TMIO_CORE
655 tristate
656
Ian Molton4a489982008-07-15 16:02:21 +0100657config MMC_TMIO
658 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100659 depends on MFD_TMIO || MFD_ASIC3
Guennadi Liakhovetskib6147492011-03-23 12:42:44 +0100660 select MMC_TMIO_CORE
Ian Molton4a489982008-07-15 16:02:21 +0100661 help
662 This provides support for the SD/MMC cell found in TC6393XB,
Philipp Zabele6f2c7a2009-06-04 20:12:37 +0200663 T7L66XB and also HTC ASIC3
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200664
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100665config MMC_SDHI
Simon Hormanb5b6a5f2017-05-10 11:25:29 +0200666 tristate "Renesas SDHI SD/SDIO controller support"
Simon Horman49312c12016-02-24 11:39:33 +0900667 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100668 select MMC_TMIO_CORE
669 help
670 This provides support for the SDHI SD/SDIO controller found in
Simon Hormanb5b6a5f2017-05-10 11:25:29 +0200671 Renesas SuperH, ARM and ARM64 based SoCs
Guennadi Liakhovetski42051e82011-03-14 09:52:33 +0100672
Simon Horman2a68ea72017-06-21 16:00:29 +0200673config MMC_SDHI_SYS_DMAC
674 tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
Geert Uytterhoeven1d6efe02018-04-17 19:49:13 +0200675 depends on MMC_SDHI
Masahiro Yamadac813e102017-11-25 01:24:36 +0900676 default MMC_SDHI if (SUPERH || ARM)
Simon Horman2a68ea72017-06-21 16:00:29 +0200677 help
678 This provides DMA support for SDHI SD/SDIO controllers
679 using SYS-DMAC via DMA Engine. This supports the controllers
680 found in SuperH and Renesas ARM based SoCs.
681
682config MMC_SDHI_INTERNAL_DMAC
683 tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
Chris Brandt9706b472018-10-24 17:23:00 -0500684 depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
Geert Uytterhoeven1d6efe02018-04-17 19:49:13 +0200685 depends on MMC_SDHI
Chris Brandt9706b472018-10-24 17:23:00 -0500686 default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
Simon Horman2a68ea72017-06-21 16:00:29 +0200687 help
688 This provides DMA support for SDHI SD/SDIO controllers
689 using on-chip bus mastering. This supports the controllers
Chris Brandt9706b472018-10-24 17:23:00 -0500690 found in arm64 based SoCs. This controller is also found in
691 some RZ family SoCs.
Simon Horman2a68ea72017-06-21 16:00:29 +0200692
Masahiro Yamada3fd784f2018-08-23 13:44:18 +0900693config MMC_UNIPHIER
694 tristate "UniPhier SD/eMMC Host Controller support"
695 depends on ARCH_UNIPHIER || COMPILE_TEST
696 depends on OF
697 select MMC_TMIO_CORE
698 help
699 This provides support for the SD/eMMC controller found in
700 UniPhier SoCs. The eMMC variant of this controller is used
701 only for 32-bit SoCs.
702
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200703config MMC_CB710
704 tristate "ENE CB710 MMC/SD Interface support"
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200705 depends on PCI
Michał Mirosław5f5bac82009-05-22 20:33:59 +0200706 select CB710_CORE
707 help
708 This option enables support for MMC/SD part of ENE CB710/720 Flash
709 memory card reader found in some laptops (ie. some versions of
710 HP Compaq nx9500).
711
712 This driver can also be built as a module. If so, the module
713 will be called cb710-mmc.
714
Harald Weltef0bf7f62009-06-17 20:22:39 +0200715config MMC_VIA_SDMMC
716 tristate "VIA SD/MMC Card Reader Driver"
717 depends on PCI
718 help
719 This selects the VIA SD/MMC Card Reader driver, say Y or M here.
720 VIA provides one multi-functional card reader which integrated into
721 some motherboards manufactured by VIA. This card reader supports
722 SD/MMC/SDHC.
723 If you have a controller with this interface, say Y or M here.
724
725 If unsure, say N.
Cliff Caieb962d52009-12-14 18:01:32 -0800726
Steven J. Hill01d95842017-04-24 13:41:57 -0500727config MMC_CAVIUM_OCTEON
728 tristate "Cavium OCTEON SD/MMC Card Interface support"
729 depends on CAVIUM_OCTEON_SOC
730 help
731 This selects Cavium OCTEON SD/MMC card Interface.
732 If you have an OCTEON board with a Multimedia Card slot,
733 say Y or M here.
734
735 If unsure, say N.
736
Jan Glauber166bac382017-03-30 17:31:25 +0200737config MMC_CAVIUM_THUNDERX
738 tristate "Cavium ThunderX SD/MMC Card Interface support"
739 depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
Jan Glauber62467bb2017-10-02 14:02:41 +0200740 depends on GPIO_THUNDERX
Jan Glauber166bac382017-03-30 17:31:25 +0200741 depends on OF_ADDRESS
742 help
743 This selects Cavium ThunderX SD/MMC Card Interface.
744 If you have an Cavium ARM64 board with a Multimedia Card slot
745 or builtin eMMC chip say Y or M here. If built as a module
746 the module will be called thunderx_mmc.ko.
747
Will Newtonf95f3852011-01-02 01:11:59 -0500748config MMC_DW
749 tristate "Synopsys DesignWare Memory Card Interface"
Alim Akhtarc34346b2014-08-29 15:54:51 +0530750 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST
Will Newtonf95f3852011-01-02 01:11:59 -0500751 help
752 This selects support for the Synopsys DesignWare Mobile Storage IP
753 block, this provides host support for SD and MMC interfaces, in both
Shawn Lin3fc7eae2015-09-16 14:41:23 +0800754 PIO, internal DMA mode and external DMA mode.
Will Newtonf95f3852011-01-02 01:11:59 -0500755
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530756config MMC_DW_PLTFM
757 tristate "Synopsys Designware MCI Support as platform device"
758 depends on MMC_DW
759 default y
760 help
761 This selects the common helper functions support for Host Controller
762 Interface based platform driver. Please select this option if the IP
763 is present as a platform device. This is the common interface for the
764 Synopsys Designware IP.
765
766 If you have a controller with this interface, say Y or M here.
767
768 If unsure, say Y.
769
Liming Sun86958dc2018-05-08 14:46:48 -0400770config MMC_DW_BLUEFIELD
771 tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
772 depends on MMC_DW
773 select MMC_DW_PLTFM
774 help
775 This selects support for Mellanox BlueField SoC specific extensions to
776 the Synopsys DesignWare Memory Card Interface driver. Select this
777 option for platforms based on Mellanox BlueField SoC's.
778
Thomas Abrahamc3665002012-09-17 18:16:43 +0000779config MMC_DW_EXYNOS
Masanari Iidae41e85c2012-11-30 16:44:39 +0900780 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
Thomas Abrahamc3665002012-09-17 18:16:43 +0000781 depends on MMC_DW
782 select MMC_DW_PLTFM
783 help
784 This selects support for Samsung Exynos SoC specific extensions to the
785 Synopsys DesignWare Memory Card Interface driver. Select this option
786 for platforms based on Exynos4 and Exynos5 SoC's.
787
tianshuliange382ab72018-03-08 09:01:34 +0800788config MMC_DW_HI3798CV200
789 tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
790 depends on MMC_DW
791 select MMC_DW_PLTFM
792 help
793 This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
794 Synopsys DesignWare Memory Card Interface driver. Select this option
795 for platforms based on HiSilicon Hi3798CV200 SoC.
796
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800797config MMC_DW_K3
798 tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
799 depends on MMC_DW
800 select MMC_DW_PLTFM
Zhangfei Gao036f29d2014-01-09 22:35:11 +0800801 help
802 This selects support for Hisilicon K3 SoC specific extensions to the
803 Synopsys DesignWare Memory Card Interface driver. Select this option
804 for platforms based on Hisilicon K3 SoC's.
805
Shashidhar Hiremath62ca8032012-01-13 16:04:57 +0530806config MMC_DW_PCI
807 tristate "Synopsys Designware MCI support on PCI bus"
808 depends on MMC_DW && PCI
809 help
810 This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
811 Select this option if the IP is present on PCI platform.
812
813 If you have a controller with this interface, say Y or M here.
814
815 If unsure, say N.
816
addy ke4cdc2ec2014-08-19 12:36:14 +0800817config MMC_DW_ROCKCHIP
818 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
819 depends on MMC_DW && ARCH_ROCKCHIP
820 select MMC_DW_PLTFM
821 help
822 This selects support for Rockchip SoC specific extensions to the
823 Synopsys DesignWare Memory Card Interface driver. Select this option
824 for platforms based on RK3066, RK3188 and RK3288 SoC's.
825
Jun Niea8c643a2017-01-06 12:24:46 +0800826config MMC_DW_ZX
827 tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
828 depends on MMC_DW && ARCH_ZX
829 select MMC_DW_PLTFM
830 help
831 This selects support for ZTE SoC specific extensions to the
832 Synopsys DesignWare Memory Card Interface driver. Select this option
833 for platforms based on ZX296718 SoC's.
834
Yusuke Godafdc50a92010-05-26 14:41:59 -0700835config MMC_SH_MMCIF
836 tristate "SuperH Internal MMCIF support"
Simon Horman49312c12016-02-24 11:39:33 +0900837 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
Yusuke Godafdc50a92010-05-26 14:41:59 -0700838 help
Wolfram Sangba9e9152016-04-26 22:34:46 +0200839 This selects the MMC Host Interface controller (MMCIF) found in various
840 Renesas SoCs for SH and ARM architectures.
Yusuke Godafdc50a92010-05-26 14:41:59 -0700841
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000842
843config MMC_JZ4740
Alex Smith6a787682018-03-28 18:00:51 -0300844 tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
Paul Cercueil685bc882018-08-21 15:03:20 +0200845 depends on MIPS
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000846 help
Alex Smith6a787682018-03-28 18:00:51 -0300847 This selects support for the SD/MMC controller on Ingenic
848 JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
849
Lars-Peter Clausen61bfbdb2010-07-15 20:06:04 +0000850 If you have a board based on such a SoC and with a SD/MMC slot,
851 say Y or M here.
David Vrabel53f3a9e2010-09-02 14:15:08 +0000852
Tony Olech88095e72011-05-14 16:48:13 -0400853config MMC_VUB300
854 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
855 depends on USB
856 help
857 This selects support for Elan Digital Systems' VUB300 chip.
858
859 The VUB300 is a USB-SDIO Host Controller Interface chip
860 that enables the host computer to use SDIO/SD/MMC cards
861 via a USB 2.0 or USB 1.1 host.
862
863 The VUB300 chip will be found in both physically separate
864 USB to SDIO/SD/MMC adapters and embedded on some motherboards.
865
866 The VUB300 chip supports SD and MMC memory cards in addition
867 to single and multifunction SDIO cards.
868
869 Some SDIO cards will need a firmware file to be loaded and
870 sent to VUB300 chip in order to achieve better data throughput.
871 Download these "Offload Pseudocode" from Elan Digital Systems'
872 web-site http://www.elandigitalsystems.com/support/downloads.php
873 and put them in /lib/firmware. Note that without these additional
874 firmware files the VUB300 chip will still function, but not at
875 the best obtainable data rate.
876
877 To compile this mmc host controller driver as a module,
878 choose M here: the module will be called vub300.
879
880 If you have a computer with an embedded VUB300 chip
881 or if you intend connecting a USB adapter based on a
882 VUB300 chip say Y or M here.
883
David Vrabel53f3a9e2010-09-02 14:15:08 +0000884config MMC_USHC
885 tristate "USB SD Host Controller (USHC) support"
886 depends on USB
887 help
888 This selects support for USB SD Host Controllers based on
889 the Cypress Astoria chip with firmware compliant with CSR's
890 USB SD Host Controller specification (CS-118793-SP).
891
892 CSR boards with this device include: USB<>SDIO (M1985v2),
893 and Ultrasira.
894
895 Note: These controllers only support SDIO cards and do not
896 support MMC or SD memory cards.
Tony Prisk3a96dff2012-11-18 15:33:06 +1300897
898config MMC_WMT
899 tristate "Wondermedia SD/MMC Host Controller support"
900 depends on ARCH_VT8500
901 default y
902 help
903 This selects support for the SD/MMC Host Controller on
904 Wondermedia WM8505/WM8650 based SoCs.
905
906 To compile this driver as a module, choose M here: the
907 module will be called wmt-sdmmc.
Linus Torvalds6a5971d2012-12-11 13:56:38 -0800908
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200909config MMC_USDHI6ROL0
910 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
Geert Uytterhoeven1ef94742014-07-09 20:52:42 +0200911 depends on HAS_DMA
Guennadi Liakhovetski75fa9ea2014-05-31 20:38:51 +0200912 help
913 This selects support for the Renesas USDHI6ROL0 SD/SDIO
914 Host Controller
915
Wei WANG2c94b642012-11-09 20:53:34 +0800916config MMC_REALTEK_PCI
917 tristate "Realtek PCI-E SD/MMC Card Interface Driver"
Rui Fenge455b692017-11-29 17:08:03 +0800918 depends on MISC_RTSX_PCI
Wei WANG2c94b642012-11-09 20:53:34 +0800919 help
920 Say Y here to include driver code to support SD/MMC card interface
921 of Realtek PCI-E card reader
Roger Tsengc7f65582014-04-11 14:53:22 +0800922
923config MMC_REALTEK_USB
924 tristate "Realtek USB SD/MMC Card Interface Driver"
Rui Fenge455b692017-11-29 17:08:03 +0800925 depends on MISC_RTSX_USB
Roger Tsengc7f65582014-04-11 14:53:22 +0800926 help
927 Say Y here to include driver code to support SD/MMC card interface
928 of Realtek RTS5129/39 series card reader
David Lanzendörfer19b7f792014-05-12 14:04:48 +0200929
930config MMC_SUNXI
931 tristate "Allwinner sunxi SD/MMC Host Controller support"
932 depends on ARCH_SUNXI
933 help
934 This selects support for the SD/MMC Host Controller on
935 Allwinner sunxi SoCs.
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100936
Venkat Gopalakrishnana4080222017-11-29 15:41:05 +0200937config MMC_CQHCI
938 tristate "Command Queue Host Controller Interface support"
939 depends on HAS_DMA
940 help
941 This selects the Command Queue Host Controller Interface (CQHCI)
942 support present in host controllers of Qualcomm Technologies, Inc
943 amongst others.
944 This controller supports eMMC devices with command queue support.
945
946 If you have a controller with this interface, say Y or M here.
947
948 If unsure, say N.
949
Ondrej Zarya5eb8bb2014-11-11 17:54:55 +0100950config MMC_TOSHIBA_PCI
951 tristate "Toshiba Type A SD/MMC Card Interface Driver"
952 depends on PCI
Chaotian Jing20848902015-06-15 19:20:48 +0800953
Eric Anholt660fc732017-03-08 10:19:03 +0100954config MMC_BCM2835
955 tristate "Broadcom BCM2835 SDHOST MMC Controller support"
956 depends on ARCH_BCM2835 || COMPILE_TEST
Eric Anholt660fc732017-03-08 10:19:03 +0100957 help
958 This selects the BCM2835 SDHOST MMC controller. If you have
959 a BCM2835 platform with SD or MMC devices, say Y or M here.
960
961 Note that the BCM2835 has two SD controllers: The Arasan
962 sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
963 sdhost controller (supported by this driver).
964
965 If unsure, say N.
966
Chaotian Jing20848902015-06-15 19:20:48 +0800967config MMC_MTK
968 tristate "MediaTek SD/MMC Card Interface support"
Geert Uytterhoevenc2b22ff2015-06-26 14:09:26 +0200969 depends on HAS_DMA
NeilBrown26c2b192019-05-04 20:24:57 +1000970 select REGULATOR
Chaotian Jing20848902015-06-15 19:20:48 +0800971 help
972 This selects the MediaTek(R) Secure digital and Multimedia card Interface.
973 If you have a machine with a integrated SD/MMC card reader, say Y or M here.
974 This is needed if support for any SD/SDIO/MMC devices is required.
975 If unsure, say N.
Andrei Pistirica5d9460d2016-01-13 18:15:45 -0700976
977config MMC_SDHCI_MICROCHIP_PIC32
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100978 tristate "Microchip PIC32MZDA SDHCI support"
979 depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
980 help
981 This selects the Secure Digital Host Controller Interface (SDHCI)
982 for PIC32MZDA platform.
Andrei Pistirica5d9460d2016-01-13 18:15:45 -0700983
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100984 If you have a controller with this interface, say Y or M here.
Andrei Pistirica5d9460d2016-01-13 18:15:45 -0700985
Enrico Weigelt, metux IT consult6f5490342019-03-06 19:27:51 +0100986 If unsure, say N.
987
Al Cooper476bf3d2016-06-16 12:47:16 -0400988config MMC_SDHCI_BRCMSTB
989 tristate "Broadcom SDIO/SD/MMC support"
990 depends on ARCH_BRCMSTB || BMIPS_GENERIC
991 depends on MMC_SDHCI_PLTFM
992 default y
993 help
994 This selects support for the SDIO/SD/MMC Host Controller on
995 Broadcom STB SoCs.
996
997 If unsure, say Y.
Hu Ziji3a3748d2017-03-30 17:22:59 +0200998
999config MMC_SDHCI_XENON
1000 tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
1001 depends on MMC_SDHCI_PLTFM
1002 help
1003 This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
1004 If you have a controller with this interface, say Y or M here.
1005 If unsure, say N.
Kishon Vijay Abraham I7d326932017-09-06 17:15:55 +05301006
1007config MMC_SDHCI_OMAP
1008 tristate "TI SDHCI Controller Support"
1009 depends on MMC_SDHCI_PLTFM && OF
Faiz Abbas961de0a2018-12-11 19:52:53 +05301010 select THERMAL
Faiz Abbas287b1da2019-01-09 18:13:12 +05301011 imply TI_SOC_THERMAL
Kishon Vijay Abraham I7d326932017-09-06 17:15:55 +05301012 help
1013 This selects the Secure Digital Host Controller Interface (SDHCI)
1014 support present in TI's DRA7 SOCs. The controller supports
1015 SD/MMC/SDIO devices.
1016
1017 If you have a controller with this interface, say Y or M here.
1018
1019 If unsure, say N.
Faiz Abbas41fd4ca2018-12-11 00:05:07 +05301020
1021config MMC_SDHCI_AM654
1022 tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
YueHaibing59592cc2019-07-02 21:36:31 +08001023 depends on MMC_SDHCI_PLTFM && OF && REGMAP_MMIO
Faiz Abbase374e872019-04-01 18:28:04 +05301024 select MMC_SDHCI_IO_ACCESSORS
Faiz Abbas41fd4ca2018-12-11 00:05:07 +05301025 help
1026 This selects the Secure Digital Host Controller Interface (SDHCI)
1027 support present in TI's AM654 SOCs. The controller supports
1028 SD/MMC/SDIO devices.
1029
1030 If you have a controller with this interface, say Y or M here.
1031
1032 If unsure, say N.