xref: /OK3568_Linux_fs/kernel/drivers/mmc/host/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# MMC/SD host controller drivers
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun
6*4882a593Smuzhiyuncomment "MMC/SD/SDIO Host Controller Drivers"
7*4882a593Smuzhiyun
8*4882a593Smuzhiyunconfig MMC_DEBUG
9*4882a593Smuzhiyun	bool "MMC host drivers debugging"
10*4882a593Smuzhiyun	depends on MMC != n
11*4882a593Smuzhiyun	help
12*4882a593Smuzhiyun	  This is an option for use by developers; most people should
13*4882a593Smuzhiyun	  say N here. This enables MMC host driver debugging. And further
14*4882a593Smuzhiyun	  added host drivers please don't invent their private macro for
15*4882a593Smuzhiyun	  debugging.
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunconfig MMC_ARMMMCI
18*4882a593Smuzhiyun	tristate "ARM AMBA Multimedia Card Interface support"
19*4882a593Smuzhiyun	depends on ARM_AMBA
20*4882a593Smuzhiyun	help
21*4882a593Smuzhiyun	  This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
22*4882a593Smuzhiyun	  Interface (PL180 and PL181) support.  If you have an ARM(R)
23*4882a593Smuzhiyun	  platform with a Multimedia Card slot, say Y or M here.
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun	  If unsure, say N.
26*4882a593Smuzhiyun
27*4882a593Smuzhiyunconfig MMC_QCOM_DML
28*4882a593Smuzhiyun	bool "Qualcomm Data Mover for SD Card Controller"
29*4882a593Smuzhiyun	depends on MMC_ARMMMCI && QCOM_BAM_DMA
30*4882a593Smuzhiyun	default y
31*4882a593Smuzhiyun	help
32*4882a593Smuzhiyun	  This selects the Qualcomm Data Mover lite/local on SD Card controller.
33*4882a593Smuzhiyun	  This option will enable the dma to work correctly, if you are using
34*4882a593Smuzhiyun	  Qcom SOCs and MMC, you would probably need this option to get DMA working.
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun	  if unsure, say N.
37*4882a593Smuzhiyun
38*4882a593Smuzhiyunconfig MMC_STM32_SDMMC
39*4882a593Smuzhiyun	bool "STMicroelectronics STM32 SDMMC Controller"
40*4882a593Smuzhiyun	depends on MMC_ARMMMCI
41*4882a593Smuzhiyun	default y
42*4882a593Smuzhiyun	help
43*4882a593Smuzhiyun	  This selects the STMicroelectronics STM32 SDMMC host controller.
44*4882a593Smuzhiyun	  If you have a STM32 sdmmc host with internal DMA say Y here.
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun	  If unsure, say N.
47*4882a593Smuzhiyun
48*4882a593Smuzhiyunconfig MMC_PXA
49*4882a593Smuzhiyun	tristate "Intel PXA25x/26x/27x Multimedia Card Interface support"
50*4882a593Smuzhiyun	depends on ARCH_PXA
51*4882a593Smuzhiyun	help
52*4882a593Smuzhiyun	  This selects the Intel(R) PXA(R) Multimedia card Interface.
53*4882a593Smuzhiyun	  If you have a PXA(R) platform with a Multimedia Card slot,
54*4882a593Smuzhiyun	  say Y or M here.
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun	  If unsure, say N.
57*4882a593Smuzhiyun
58*4882a593Smuzhiyunconfig MMC_SDHCI
59*4882a593Smuzhiyun	tristate "Secure Digital Host Controller Interface support"
60*4882a593Smuzhiyun	depends on HAS_DMA
61*4882a593Smuzhiyun	help
62*4882a593Smuzhiyun	  This selects the generic Secure Digital Host Controller Interface.
63*4882a593Smuzhiyun	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
64*4882a593Smuzhiyun	  and Toshiba(R). Most controllers found in laptops are of this type.
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here. You
67*4882a593Smuzhiyun	  also need to enable an appropriate bus interface.
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun	  If unsure, say N.
70*4882a593Smuzhiyun
71*4882a593Smuzhiyunconfig MMC_SDHCI_IO_ACCESSORS
72*4882a593Smuzhiyun	bool
73*4882a593Smuzhiyun	depends on MMC_SDHCI
74*4882a593Smuzhiyun	help
75*4882a593Smuzhiyun	  This is silent Kconfig symbol that is selected by the drivers that
76*4882a593Smuzhiyun	  need to overwrite SDHCI IO memory accessors.
77*4882a593Smuzhiyun
78*4882a593Smuzhiyunconfig MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
79*4882a593Smuzhiyun	bool
80*4882a593Smuzhiyun	depends on MMC_SDHCI
81*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
82*4882a593Smuzhiyun	help
83*4882a593Smuzhiyun	  This option is selected by drivers running on big endian hosts
84*4882a593Smuzhiyun	  and performing I/O to a SDHCI controller through a bus that
85*4882a593Smuzhiyun	  implements a hardware byte swapper using a 32-bit datum.
86*4882a593Smuzhiyun	  This endian mapping mode is called "data invariance" and
87*4882a593Smuzhiyun	  has the effect of scrambling the addresses and formats of data
88*4882a593Smuzhiyun	  accessed in sizes other than the datum size.
89*4882a593Smuzhiyun
90*4882a593Smuzhiyun	  This is the case for the Nintendo Wii SDHCI.
91*4882a593Smuzhiyun
92*4882a593Smuzhiyunconfig MMC_SDHCI_PCI
93*4882a593Smuzhiyun	tristate "SDHCI support on PCI bus"
94*4882a593Smuzhiyun	depends on MMC_SDHCI && PCI
95*4882a593Smuzhiyun	select MMC_CQHCI
96*4882a593Smuzhiyun	select IOSF_MBI if X86
97*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
98*4882a593Smuzhiyun	help
99*4882a593Smuzhiyun	  This selects the PCI Secure Digital Host Controller Interface.
100*4882a593Smuzhiyun	  Most controllers found today are PCI devices.
101*4882a593Smuzhiyun
102*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
103*4882a593Smuzhiyun
104*4882a593Smuzhiyun	  If unsure, say N.
105*4882a593Smuzhiyun
106*4882a593Smuzhiyunconfig MMC_RICOH_MMC
107*4882a593Smuzhiyun	bool "Ricoh MMC Controller Disabler"
108*4882a593Smuzhiyun	depends on MMC_SDHCI_PCI
109*4882a593Smuzhiyun	default y
110*4882a593Smuzhiyun	help
111*4882a593Smuzhiyun	  This adds a pci quirk to disable Ricoh MMC Controller. This
112*4882a593Smuzhiyun	  proprietary controller is unnecessary because the SDHCI driver
113*4882a593Smuzhiyun	  supports MMC cards on the SD controller, but if it is not
114*4882a593Smuzhiyun	  disabled, it will steal the MMC cards away - rendering them
115*4882a593Smuzhiyun	  useless. It is safe to select this even if you don't
116*4882a593Smuzhiyun	  have a Ricoh based card reader.
117*4882a593Smuzhiyun
118*4882a593Smuzhiyun	  If unsure, say Y.
119*4882a593Smuzhiyun
120*4882a593Smuzhiyunconfig MMC_SDHCI_ACPI
121*4882a593Smuzhiyun	tristate "SDHCI support for ACPI enumerated SDHCI controllers"
122*4882a593Smuzhiyun	depends on MMC_SDHCI && ACPI && PCI
123*4882a593Smuzhiyun	select IOSF_MBI if X86
124*4882a593Smuzhiyun	help
125*4882a593Smuzhiyun	  This selects support for ACPI enumerated SDHCI controllers,
126*4882a593Smuzhiyun	  identified by ACPI Compatibility ID PNP0D40 or specific
127*4882a593Smuzhiyun	  ACPI Hardware IDs.
128*4882a593Smuzhiyun
129*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
130*4882a593Smuzhiyun
131*4882a593Smuzhiyun	  If unsure, say N.
132*4882a593Smuzhiyun
133*4882a593Smuzhiyunconfig MMC_SDHCI_PLTFM
134*4882a593Smuzhiyun	tristate "SDHCI platform and OF driver helper"
135*4882a593Smuzhiyun	depends on MMC_SDHCI
136*4882a593Smuzhiyun	help
137*4882a593Smuzhiyun	  This selects the common helper functions support for Secure Digital
138*4882a593Smuzhiyun	  Host Controller Interface based platform and OF drivers.
139*4882a593Smuzhiyun
140*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
141*4882a593Smuzhiyun
142*4882a593Smuzhiyun	  If unsure, say N.
143*4882a593Smuzhiyun
144*4882a593Smuzhiyunconfig MMC_SDHCI_OF_ARASAN
145*4882a593Smuzhiyun	tristate "SDHCI OF support for the Arasan SDHCI controllers"
146*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
147*4882a593Smuzhiyun	depends on OF
148*4882a593Smuzhiyun	depends on COMMON_CLK
149*4882a593Smuzhiyun	select MMC_CQHCI
150*4882a593Smuzhiyun	help
151*4882a593Smuzhiyun	  This selects the Arasan Secure Digital Host Controller Interface
152*4882a593Smuzhiyun	  (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC.
153*4882a593Smuzhiyun
154*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
155*4882a593Smuzhiyun
156*4882a593Smuzhiyun	  If unsure, say N.
157*4882a593Smuzhiyun
158*4882a593Smuzhiyunconfig MMC_SDHCI_OF_ASPEED
159*4882a593Smuzhiyun	tristate "SDHCI OF support for the ASPEED SDHCI controller"
160*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
161*4882a593Smuzhiyun	depends on OF && OF_ADDRESS
162*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
163*4882a593Smuzhiyun	help
164*4882a593Smuzhiyun	  This selects the ASPEED Secure Digital Host Controller Interface.
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here. You
167*4882a593Smuzhiyun	  also need to enable an appropriate bus interface.
168*4882a593Smuzhiyun
169*4882a593Smuzhiyun	  If unsure, say N.
170*4882a593Smuzhiyun
171*4882a593Smuzhiyunconfig MMC_SDHCI_OF_AT91
172*4882a593Smuzhiyun	tristate "SDHCI OF support for the Atmel SDMMC controller"
173*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
174*4882a593Smuzhiyun	depends on OF && HAVE_CLK
175*4882a593Smuzhiyun	help
176*4882a593Smuzhiyun	  This selects the Atmel SDMMC driver
177*4882a593Smuzhiyun
178*4882a593Smuzhiyunconfig MMC_SDHCI_OF_ESDHC
179*4882a593Smuzhiyun	tristate "SDHCI OF support for the Freescale eSDHC controller"
180*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
181*4882a593Smuzhiyun	depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE || COMPILE_TEST
182*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
183*4882a593Smuzhiyun	select FSL_GUTS
184*4882a593Smuzhiyun	help
185*4882a593Smuzhiyun	  This selects the Freescale eSDHC controller support.
186*4882a593Smuzhiyun
187*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
188*4882a593Smuzhiyun
189*4882a593Smuzhiyun	  If unsure, say N.
190*4882a593Smuzhiyun
191*4882a593Smuzhiyunconfig MMC_SDHCI_OF_HLWD
192*4882a593Smuzhiyun	tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers"
193*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
194*4882a593Smuzhiyun	depends on PPC
195*4882a593Smuzhiyun	select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
196*4882a593Smuzhiyun	help
197*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
198*4882a593Smuzhiyun	  found in the "Hollywood" chipset of the Nintendo Wii video game
199*4882a593Smuzhiyun	  console.
200*4882a593Smuzhiyun
201*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
202*4882a593Smuzhiyun
203*4882a593Smuzhiyun	  If unsure, say N.
204*4882a593Smuzhiyun
205*4882a593Smuzhiyunconfig MMC_SDHCI_OF_DWCMSHC
206*4882a593Smuzhiyun	tristate "SDHCI OF support for the Synopsys DWC MSHC"
207*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
208*4882a593Smuzhiyun	depends on OF
209*4882a593Smuzhiyun	depends on COMMON_CLK
210*4882a593Smuzhiyun	select MMC_HSQ
211*4882a593Smuzhiyun	help
212*4882a593Smuzhiyun	  This selects Synopsys DesignWare Cores Mobile Storage Controller
213*4882a593Smuzhiyun	  support.
214*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
215*4882a593Smuzhiyun	  If unsure, say N.
216*4882a593Smuzhiyun
217*4882a593Smuzhiyunconfig MMC_SDHCI_OF_SPARX5
218*4882a593Smuzhiyun	tristate "SDHCI OF support for the MCHP Sparx5 SoC"
219*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
220*4882a593Smuzhiyun	depends on ARCH_SPARX5 || COMPILE_TEST
221*4882a593Smuzhiyun	help
222*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
223*4882a593Smuzhiyun	  found in the MCHP Sparx5 SoC.
224*4882a593Smuzhiyun
225*4882a593Smuzhiyun	  If you have a Sparx5 SoC with this interface, say Y or M here.
226*4882a593Smuzhiyun
227*4882a593Smuzhiyun	  If unsure, say N.
228*4882a593Smuzhiyun
229*4882a593Smuzhiyunconfig MMC_SDHCI_CADENCE
230*4882a593Smuzhiyun	tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller"
231*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
232*4882a593Smuzhiyun	depends on OF
233*4882a593Smuzhiyun	help
234*4882a593Smuzhiyun	  This selects the Cadence SD/SDIO/eMMC driver.
235*4882a593Smuzhiyun
236*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
237*4882a593Smuzhiyun
238*4882a593Smuzhiyun	  If unsure, say N.
239*4882a593Smuzhiyun
240*4882a593Smuzhiyunconfig MMC_SDHCI_CNS3XXX
241*4882a593Smuzhiyun	tristate "SDHCI support on the Cavium Networks CNS3xxx SoC"
242*4882a593Smuzhiyun	depends on ARCH_CNS3XXX || COMPILE_TEST
243*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
244*4882a593Smuzhiyun	help
245*4882a593Smuzhiyun	  This selects the SDHCI support for CNS3xxx System-on-Chip devices.
246*4882a593Smuzhiyun
247*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
248*4882a593Smuzhiyun
249*4882a593Smuzhiyun	  If unsure, say N.
250*4882a593Smuzhiyun
251*4882a593Smuzhiyunconfig MMC_SDHCI_ESDHC_MCF
252*4882a593Smuzhiyun	tristate "SDHCI support for the Freescale eSDHC ColdFire controller"
253*4882a593Smuzhiyun	depends on M5441x
254*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
255*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
256*4882a593Smuzhiyun	help
257*4882a593Smuzhiyun	  This selects the Freescale eSDHC controller support for
258*4882a593Smuzhiyun	  ColdFire mcf5441x devices.
259*4882a593Smuzhiyun
260*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
261*4882a593Smuzhiyun
262*4882a593Smuzhiyun	  If unsure, say N.
263*4882a593Smuzhiyun
264*4882a593Smuzhiyunconfig MMC_SDHCI_ESDHC_IMX
265*4882a593Smuzhiyun	tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller"
266*4882a593Smuzhiyun	depends on ARCH_MXC || COMPILE_TEST
267*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
268*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
269*4882a593Smuzhiyun	select MMC_CQHCI
270*4882a593Smuzhiyun	help
271*4882a593Smuzhiyun	  This selects the Freescale eSDHC/uSDHC controller support
272*4882a593Smuzhiyun	  found on i.MX25, i.MX35 i.MX5x and i.MX6x.
273*4882a593Smuzhiyun
274*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
275*4882a593Smuzhiyun
276*4882a593Smuzhiyun	  If unsure, say N.
277*4882a593Smuzhiyun
278*4882a593Smuzhiyunconfig MMC_SDHCI_DOVE
279*4882a593Smuzhiyun	tristate "SDHCI support on Marvell's Dove SoC"
280*4882a593Smuzhiyun	depends on ARCH_DOVE || MACH_DOVE || COMPILE_TEST
281*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
282*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
283*4882a593Smuzhiyun	help
284*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface in
285*4882a593Smuzhiyun	  Marvell's Dove SoC.
286*4882a593Smuzhiyun
287*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
288*4882a593Smuzhiyun
289*4882a593Smuzhiyun	  If unsure, say N.
290*4882a593Smuzhiyun
291*4882a593Smuzhiyunconfig MMC_SDHCI_TEGRA
292*4882a593Smuzhiyun	tristate "SDHCI platform support for the Tegra SD/MMC Controller"
293*4882a593Smuzhiyun	depends on ARCH_TEGRA || COMPILE_TEST
294*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
295*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
296*4882a593Smuzhiyun	select MMC_CQHCI
297*4882a593Smuzhiyun	help
298*4882a593Smuzhiyun	  This selects the Tegra SD/MMC controller. If you have a Tegra
299*4882a593Smuzhiyun	  platform with SD or MMC devices, say Y or M here.
300*4882a593Smuzhiyun
301*4882a593Smuzhiyun	  If unsure, say N.
302*4882a593Smuzhiyun
303*4882a593Smuzhiyunconfig MMC_SDHCI_S3C
304*4882a593Smuzhiyun	tristate "SDHCI support on Samsung S3C SoC"
305*4882a593Smuzhiyun	depends on MMC_SDHCI
306*4882a593Smuzhiyun	depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
307*4882a593Smuzhiyun	help
308*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
309*4882a593Smuzhiyun	  often referrered to as the HSMMC block in some of the Samsung S3C
310*4882a593Smuzhiyun	  range of SoC.
311*4882a593Smuzhiyun
312*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
313*4882a593Smuzhiyun
314*4882a593Smuzhiyun	  If unsure, say N.
315*4882a593Smuzhiyun
316*4882a593Smuzhiyunconfig MMC_SDHCI_SIRF
317*4882a593Smuzhiyun	tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs"
318*4882a593Smuzhiyun	depends on ARCH_SIRF || COMPILE_TEST
319*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
320*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
321*4882a593Smuzhiyun	help
322*4882a593Smuzhiyun	  This selects the SDHCI support for SiRF System-on-Chip devices.
323*4882a593Smuzhiyun
324*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
325*4882a593Smuzhiyun
326*4882a593Smuzhiyun	  If unsure, say N.
327*4882a593Smuzhiyun
328*4882a593Smuzhiyunconfig MMC_SDHCI_PXAV3
329*4882a593Smuzhiyun	tristate "Marvell MMP2 SD Host Controller support (PXAV3)"
330*4882a593Smuzhiyun	depends on CLKDEV_LOOKUP
331*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
332*4882a593Smuzhiyun	depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST
333*4882a593Smuzhiyun	default CPU_MMP2
334*4882a593Smuzhiyun	help
335*4882a593Smuzhiyun	  This selects the Marvell(R) PXAV3 SD Host Controller.
336*4882a593Smuzhiyun	  If you have a MMP2 platform with SD Host Controller
337*4882a593Smuzhiyun	  and a card slot, say Y or M here.
338*4882a593Smuzhiyun
339*4882a593Smuzhiyun	  If unsure, say N.
340*4882a593Smuzhiyun
341*4882a593Smuzhiyunconfig MMC_SDHCI_PXAV2
342*4882a593Smuzhiyun	tristate "Marvell PXA9XX SD Host Controller support (PXAV2)"
343*4882a593Smuzhiyun	depends on CLKDEV_LOOKUP
344*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
345*4882a593Smuzhiyun	depends on ARCH_MMP || COMPILE_TEST
346*4882a593Smuzhiyun	default CPU_PXA910
347*4882a593Smuzhiyun	help
348*4882a593Smuzhiyun	  This selects the Marvell(R) PXAV2 SD Host Controller.
349*4882a593Smuzhiyun	  If you have a PXA9XX platform with SD Host Controller
350*4882a593Smuzhiyun	  and a card slot, say Y or M here.
351*4882a593Smuzhiyun
352*4882a593Smuzhiyun	  If unsure, say N.
353*4882a593Smuzhiyun
354*4882a593Smuzhiyunconfig MMC_SDHCI_SPEAR
355*4882a593Smuzhiyun	tristate "SDHCI support on ST SPEAr platform"
356*4882a593Smuzhiyun	depends on MMC_SDHCI
357*4882a593Smuzhiyun	depends on PLAT_SPEAR || COMPILE_TEST
358*4882a593Smuzhiyun	depends on OF
359*4882a593Smuzhiyun	help
360*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
361*4882a593Smuzhiyun	  often referrered to as the HSMMC block in some of the ST SPEAR range
362*4882a593Smuzhiyun	  of SoC
363*4882a593Smuzhiyun
364*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
365*4882a593Smuzhiyun
366*4882a593Smuzhiyun	  If unsure, say N.
367*4882a593Smuzhiyun
368*4882a593Smuzhiyunconfig MMC_SDHCI_S3C_DMA
369*4882a593Smuzhiyun	bool "DMA support on S3C SDHCI"
370*4882a593Smuzhiyun	depends on MMC_SDHCI_S3C
371*4882a593Smuzhiyun	help
372*4882a593Smuzhiyun	  Enable DMA support on the Samsung S3C SDHCI glue. The DMA
373*4882a593Smuzhiyun	  has proved to be problematic if the controller encounters
374*4882a593Smuzhiyun	  certain errors, and thus should be treated with care.
375*4882a593Smuzhiyun
376*4882a593Smuzhiyun	  YMMV.
377*4882a593Smuzhiyun
378*4882a593Smuzhiyunconfig MMC_SDHCI_BCM_KONA
379*4882a593Smuzhiyun	tristate "SDHCI support on Broadcom KONA platform"
380*4882a593Smuzhiyun	depends on ARCH_BCM_MOBILE || COMPILE_TEST
381*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
382*4882a593Smuzhiyun	help
383*4882a593Smuzhiyun	  This selects the Broadcom Kona Secure Digital Host Controller
384*4882a593Smuzhiyun	  Interface(SDHCI) support.
385*4882a593Smuzhiyun	  This is used in Broadcom mobile SoCs.
386*4882a593Smuzhiyun
387*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
388*4882a593Smuzhiyun
389*4882a593Smuzhiyunconfig MMC_SDHCI_F_SDH30
390*4882a593Smuzhiyun	tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
391*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
392*4882a593Smuzhiyun	depends on OF || ACPI
393*4882a593Smuzhiyun	help
394*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
395*4882a593Smuzhiyun	  Needed by some Fujitsu SoC for MMC / SD / SDIO support.
396*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
397*4882a593Smuzhiyun
398*4882a593Smuzhiyun	  If unsure, say N.
399*4882a593Smuzhiyun
400*4882a593Smuzhiyunconfig MMC_SDHCI_MILBEAUT
401*4882a593Smuzhiyun	tristate "SDHCI support for Socionext Milbeaut Serieas using F_SDH30"
402*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
403*4882a593Smuzhiyun	depends on OF
404*4882a593Smuzhiyun	help
405*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
406*4882a593Smuzhiyun	  Needed by Milbeaut SoC for MMC / SD / SDIO support.
407*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
408*4882a593Smuzhiyun
409*4882a593Smuzhiyun	  If unsure, say N.
410*4882a593Smuzhiyun
411*4882a593Smuzhiyunconfig MMC_SDHCI_IPROC
412*4882a593Smuzhiyun	tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller"
413*4882a593Smuzhiyun	depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST
414*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
415*4882a593Smuzhiyun	depends on OF || ACPI
416*4882a593Smuzhiyun	default ARCH_BCM_IPROC
417*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
418*4882a593Smuzhiyun	help
419*4882a593Smuzhiyun	  This selects the iProc SD/MMC controller.
420*4882a593Smuzhiyun
421*4882a593Smuzhiyun	  If you have a BCM2835 or IPROC platform with SD or MMC devices,
422*4882a593Smuzhiyun	  say Y or M here.
423*4882a593Smuzhiyun
424*4882a593Smuzhiyun	  If unsure, say N.
425*4882a593Smuzhiyun
426*4882a593Smuzhiyunconfig MMC_MESON_GX
427*4882a593Smuzhiyun	tristate "Amlogic S905/GX*/AXG SD/MMC Host Controller support"
428*4882a593Smuzhiyun	depends on ARCH_MESON|| COMPILE_TEST
429*4882a593Smuzhiyun	depends on COMMON_CLK
430*4882a593Smuzhiyun	help
431*4882a593Smuzhiyun	  This selects support for the Amlogic SD/MMC Host Controller
432*4882a593Smuzhiyun	  found on the S905/GX*/AXG family of SoCs.  This controller is
433*4882a593Smuzhiyun	  MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces.
434*4882a593Smuzhiyun
435*4882a593Smuzhiyun	  If you have a controller with this interface, say Y here.
436*4882a593Smuzhiyun
437*4882a593Smuzhiyunconfig MMC_MESON_MX_SDHC
438*4882a593Smuzhiyun	tristate "Amlogic Meson SDHC Host Controller support"
439*4882a593Smuzhiyun	depends on (ARM && ARCH_MESON) || COMPILE_TEST
440*4882a593Smuzhiyun	depends on COMMON_CLK
441*4882a593Smuzhiyun	depends on OF
442*4882a593Smuzhiyun	help
443*4882a593Smuzhiyun	  This selects support for the SDHC Host Controller on
444*4882a593Smuzhiyun	  Amlogic Meson6, Meson8, Meson8b and Meson8m2 SoCs.
445*4882a593Smuzhiyun	  The controller supports the SD/SDIO Spec 3.x and eMMC Spec 4.5x
446*4882a593Smuzhiyun	  with 1, 4, and 8 bit bus widths.
447*4882a593Smuzhiyun
448*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
449*4882a593Smuzhiyun	  If unsure, say N.
450*4882a593Smuzhiyun
451*4882a593Smuzhiyunconfig MMC_MESON_MX_SDIO
452*4882a593Smuzhiyun	tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support"
453*4882a593Smuzhiyun	depends on ARCH_MESON || COMPILE_TEST
454*4882a593Smuzhiyun	depends on COMMON_CLK
455*4882a593Smuzhiyun	depends on OF_ADDRESS
456*4882a593Smuzhiyun	help
457*4882a593Smuzhiyun	  This selects support for the SD/MMC Host Controller on
458*4882a593Smuzhiyun	  Amlogic Meson6, Meson8 and Meson8b SoCs.
459*4882a593Smuzhiyun
460*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
461*4882a593Smuzhiyun	  If unsure, say N.
462*4882a593Smuzhiyun
463*4882a593Smuzhiyunconfig MMC_MOXART
464*4882a593Smuzhiyun	tristate "MOXART SD/MMC Host Controller support"
465*4882a593Smuzhiyun	depends on ARCH_MOXART || COMPILE_TEST
466*4882a593Smuzhiyun	help
467*4882a593Smuzhiyun	  This selects support for the MOXART SD/MMC Host Controller.
468*4882a593Smuzhiyun	  MOXA provides one multi-functional card reader which can
469*4882a593Smuzhiyun	  be found on some embedded hardware such as UC-7112-LX.
470*4882a593Smuzhiyun	  If you have a controller with this interface, say Y here.
471*4882a593Smuzhiyun
472*4882a593Smuzhiyunconfig MMC_SDHCI_ST
473*4882a593Smuzhiyun	tristate "SDHCI support on STMicroelectronics SoC"
474*4882a593Smuzhiyun	depends on ARCH_STI || FSP2 || COMPILE_TEST
475*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
476*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
477*4882a593Smuzhiyun	help
478*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface in
479*4882a593Smuzhiyun	  STMicroelectronics SoCs.
480*4882a593Smuzhiyun
481*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
482*4882a593Smuzhiyun	  If unsure, say N.
483*4882a593Smuzhiyun
484*4882a593Smuzhiyunconfig MMC_OMAP
485*4882a593Smuzhiyun	tristate "TI OMAP Multimedia Card Interface support"
486*4882a593Smuzhiyun	depends on ARCH_OMAP
487*4882a593Smuzhiyun	depends on TPS65010 || !MACH_OMAP_H2
488*4882a593Smuzhiyun	help
489*4882a593Smuzhiyun	  This selects the TI OMAP Multimedia card Interface.
490*4882a593Smuzhiyun	  If you have an OMAP board with a Multimedia Card slot,
491*4882a593Smuzhiyun	  say Y or M here.
492*4882a593Smuzhiyun
493*4882a593Smuzhiyun	  If unsure, say N.
494*4882a593Smuzhiyun
495*4882a593Smuzhiyunconfig MMC_OMAP_HS
496*4882a593Smuzhiyun	tristate "TI OMAP High Speed Multimedia Card Interface support"
497*4882a593Smuzhiyun	depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST
498*4882a593Smuzhiyun	help
499*4882a593Smuzhiyun	  This selects the TI OMAP High Speed Multimedia card Interface.
500*4882a593Smuzhiyun	  If you have an omap2plus board with a Multimedia Card slot,
501*4882a593Smuzhiyun	  say Y or M here.
502*4882a593Smuzhiyun
503*4882a593Smuzhiyun	  If unsure, say N.
504*4882a593Smuzhiyun
505*4882a593Smuzhiyunconfig MMC_WBSD
506*4882a593Smuzhiyun	tristate "Winbond W83L51xD SD/MMC Card Interface support"
507*4882a593Smuzhiyun	depends on ISA_DMA_API && !M68K
508*4882a593Smuzhiyun	help
509*4882a593Smuzhiyun	  This selects the Winbond(R) W83L51xD Secure digital and
510*4882a593Smuzhiyun	  Multimedia card Interface.
511*4882a593Smuzhiyun	  If you have a machine with a integrated W83L518D or W83L519D
512*4882a593Smuzhiyun	  SD/MMC card reader, say Y or M here.
513*4882a593Smuzhiyun
514*4882a593Smuzhiyun	  If unsure, say N.
515*4882a593Smuzhiyun
516*4882a593Smuzhiyunconfig MMC_ALCOR
517*4882a593Smuzhiyun	tristate "Alcor Micro/Alcor Link SD/MMC controller"
518*4882a593Smuzhiyun	depends on MISC_ALCOR_PCI
519*4882a593Smuzhiyun	help
520*4882a593Smuzhiyun	  Say Y here to include driver code to support SD/MMC card interface
521*4882a593Smuzhiyun	  of Alcor Micro PCI-E card reader
522*4882a593Smuzhiyun
523*4882a593Smuzhiyunconfig MMC_AU1X
524*4882a593Smuzhiyun	tristate "Alchemy AU1XX0 MMC Card Interface support"
525*4882a593Smuzhiyun	depends on MIPS_ALCHEMY
526*4882a593Smuzhiyun	help
527*4882a593Smuzhiyun	  This selects the AMD Alchemy(R) Multimedia card interface.
528*4882a593Smuzhiyun	  If you have a Alchemy platform with a MMC slot, say Y or M here.
529*4882a593Smuzhiyun
530*4882a593Smuzhiyun	  If unsure, say N.
531*4882a593Smuzhiyun
532*4882a593Smuzhiyunconfig MMC_ATMELMCI
533*4882a593Smuzhiyun	tristate "Atmel SD/MMC Driver (Multimedia Card Interface)"
534*4882a593Smuzhiyun	depends on ARCH_AT91
535*4882a593Smuzhiyun	help
536*4882a593Smuzhiyun	  This selects the Atmel Multimedia Card Interface driver.
537*4882a593Smuzhiyun	  If you have an AT91 platform with a Multimedia Card slot,
538*4882a593Smuzhiyun	  say Y or M here.
539*4882a593Smuzhiyun
540*4882a593Smuzhiyun	  If unsure, say N.
541*4882a593Smuzhiyun
542*4882a593Smuzhiyunconfig MMC_SDHCI_MSM
543*4882a593Smuzhiyun	tristate "Qualcomm SDHCI Controller Support"
544*4882a593Smuzhiyun	depends on ARCH_QCOM || COMPILE_TEST
545*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
546*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
547*4882a593Smuzhiyun	select MMC_CQHCI
548*4882a593Smuzhiyun	select QCOM_SCM if MMC_CRYPTO && ARCH_QCOM
549*4882a593Smuzhiyun	help
550*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
551*4882a593Smuzhiyun	  support present in Qualcomm SOCs. The controller supports
552*4882a593Smuzhiyun	  SD/MMC/SDIO devices.
553*4882a593Smuzhiyun
554*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
555*4882a593Smuzhiyun
556*4882a593Smuzhiyun	  If unsure, say N.
557*4882a593Smuzhiyun
558*4882a593Smuzhiyunconfig MMC_MXC
559*4882a593Smuzhiyun	tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
560*4882a593Smuzhiyun	depends on ARCH_MXC || PPC_MPC512x
561*4882a593Smuzhiyun	help
562*4882a593Smuzhiyun	  This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
563*4882a593Smuzhiyun	  Multimedia Card Interface. If you have an i.MX or MPC512x platform
564*4882a593Smuzhiyun	  with a Multimedia Card slot, say Y or M here.
565*4882a593Smuzhiyun
566*4882a593Smuzhiyun	  If unsure, say N.
567*4882a593Smuzhiyun
568*4882a593Smuzhiyunconfig MMC_MXS
569*4882a593Smuzhiyun	tristate "Freescale MXS Multimedia Card Interface support"
570*4882a593Smuzhiyun	depends on ARCH_MXS && MXS_DMA
571*4882a593Smuzhiyun	help
572*4882a593Smuzhiyun	  This selects the Freescale SSP MMC controller found on MXS based
573*4882a593Smuzhiyun	  platforms like mx23/28.
574*4882a593Smuzhiyun
575*4882a593Smuzhiyun	  If unsure, say N.
576*4882a593Smuzhiyun
577*4882a593Smuzhiyunconfig MMC_TIFM_SD
578*4882a593Smuzhiyun	tristate "TI Flash Media MMC/SD Interface support"
579*4882a593Smuzhiyun	depends on PCI
580*4882a593Smuzhiyun	select TIFM_CORE
581*4882a593Smuzhiyun	help
582*4882a593Smuzhiyun	  Say Y here if you want to be able to access MMC/SD cards with
583*4882a593Smuzhiyun	  the Texas Instruments(R) Flash Media card reader, found in many
584*4882a593Smuzhiyun	  laptops.
585*4882a593Smuzhiyun	  This option 'selects' (turns on, enables) 'TIFM_CORE', but you
586*4882a593Smuzhiyun	  probably also need appropriate card reader host adapter, such as
587*4882a593Smuzhiyun	  'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support
588*4882a593Smuzhiyun	  (TIFM_7XX1)'.
589*4882a593Smuzhiyun
590*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
591*4882a593Smuzhiyun	  module will be called tifm_sd.
592*4882a593Smuzhiyun
593*4882a593Smuzhiyunconfig MMC_MVSDIO
594*4882a593Smuzhiyun	tristate "Marvell MMC/SD/SDIO host driver"
595*4882a593Smuzhiyun	depends on PLAT_ORION || (COMPILE_TEST && ARM)
596*4882a593Smuzhiyun	depends on OF
597*4882a593Smuzhiyun	help
598*4882a593Smuzhiyun	  This selects the Marvell SDIO host driver.
599*4882a593Smuzhiyun	  SDIO may currently be found on the Kirkwood 88F6281 and 88F6192
600*4882a593Smuzhiyun	  SoC controllers.
601*4882a593Smuzhiyun
602*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
603*4882a593Smuzhiyun	  module will be called mvsdio.
604*4882a593Smuzhiyun
605*4882a593Smuzhiyunconfig MMC_DAVINCI
606*4882a593Smuzhiyun	tristate "TI DAVINCI Multimedia Card Interface support"
607*4882a593Smuzhiyun	depends on ARCH_DAVINCI || COMPILE_TEST
608*4882a593Smuzhiyun	help
609*4882a593Smuzhiyun	  This selects the TI DAVINCI Multimedia card Interface.
610*4882a593Smuzhiyun	  If you have an DAVINCI board with a Multimedia Card slot,
611*4882a593Smuzhiyun	  say Y or M here.  If unsure, say N.
612*4882a593Smuzhiyun
613*4882a593Smuzhiyunconfig MMC_GOLDFISH
614*4882a593Smuzhiyun	tristate "goldfish qemu Multimedia Card Interface support"
615*4882a593Smuzhiyun	depends on GOLDFISH || COMPILE_TEST
616*4882a593Smuzhiyun	help
617*4882a593Smuzhiyun	  This selects the Goldfish Multimedia card Interface emulation
618*4882a593Smuzhiyun	  found on the Goldfish Android virtual device emulation.
619*4882a593Smuzhiyun
620*4882a593Smuzhiyunconfig MMC_SPI
621*4882a593Smuzhiyun	tristate "MMC/SD/SDIO over SPI"
622*4882a593Smuzhiyun	depends on SPI_MASTER
623*4882a593Smuzhiyun	select CRC7
624*4882a593Smuzhiyun	select CRC_ITU_T
625*4882a593Smuzhiyun	help
626*4882a593Smuzhiyun	  Some systems access MMC/SD/SDIO cards using a SPI controller
627*4882a593Smuzhiyun	  instead of using a "native" MMC/SD/SDIO controller.  This has a
628*4882a593Smuzhiyun	  disadvantage of being relatively high overhead, but a compensating
629*4882a593Smuzhiyun	  advantage of working on many systems without dedicated MMC/SD/SDIO
630*4882a593Smuzhiyun	  controllers.
631*4882a593Smuzhiyun
632*4882a593Smuzhiyun	  If unsure, or if your system has no SPI master driver, say N.
633*4882a593Smuzhiyun
634*4882a593Smuzhiyunconfig MMC_S3C
635*4882a593Smuzhiyun	tristate "Samsung S3C SD/MMC Card Interface support"
636*4882a593Smuzhiyun	depends on ARCH_S3C24XX
637*4882a593Smuzhiyun	depends on S3C24XX_DMAC
638*4882a593Smuzhiyun	help
639*4882a593Smuzhiyun	  This selects a driver for the MCI interface found in
640*4882a593Smuzhiyun	  Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs.
641*4882a593Smuzhiyun	  If you have a board based on one of those and a MMC/SD
642*4882a593Smuzhiyun	  slot, say Y or M here.
643*4882a593Smuzhiyun
644*4882a593Smuzhiyun	  If unsure, say N.
645*4882a593Smuzhiyun
646*4882a593Smuzhiyunconfig MMC_S3C_HW_SDIO_IRQ
647*4882a593Smuzhiyun	bool "Hardware support for SDIO IRQ"
648*4882a593Smuzhiyun	depends on MMC_S3C
649*4882a593Smuzhiyun	help
650*4882a593Smuzhiyun	  Enable the hardware support for SDIO interrupts instead of using
651*4882a593Smuzhiyun	  the generic polling code.
652*4882a593Smuzhiyun
653*4882a593Smuzhiyunchoice
654*4882a593Smuzhiyun	prompt "Samsung S3C SD/MMC transfer code"
655*4882a593Smuzhiyun	depends on MMC_S3C
656*4882a593Smuzhiyun
657*4882a593Smuzhiyunconfig MMC_S3C_PIO
658*4882a593Smuzhiyun	bool "Use PIO transfers only"
659*4882a593Smuzhiyun	help
660*4882a593Smuzhiyun	  Use PIO to transfer data between memory and the hardware.
661*4882a593Smuzhiyun
662*4882a593Smuzhiyun	  PIO is slower than DMA as it requires CPU instructions to
663*4882a593Smuzhiyun	  move the data. This has been the traditional default for
664*4882a593Smuzhiyun	  the S3C MCI driver.
665*4882a593Smuzhiyun
666*4882a593Smuzhiyunconfig MMC_S3C_DMA
667*4882a593Smuzhiyun	bool "Use DMA transfers only"
668*4882a593Smuzhiyun	help
669*4882a593Smuzhiyun	  Use DMA to transfer data between memory and the hardare.
670*4882a593Smuzhiyun
671*4882a593Smuzhiyun	  Currently, the DMA support in this driver seems to not be
672*4882a593Smuzhiyun	  working properly and needs to be debugged before this
673*4882a593Smuzhiyun	  option is useful.
674*4882a593Smuzhiyun
675*4882a593Smuzhiyunendchoice
676*4882a593Smuzhiyun
677*4882a593Smuzhiyunconfig MMC_SDRICOH_CS
678*4882a593Smuzhiyun	tristate "MMC/SD driver for Ricoh Bay1Controllers"
679*4882a593Smuzhiyun	depends on PCI && PCMCIA
680*4882a593Smuzhiyun	help
681*4882a593Smuzhiyun	  Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA
682*4882a593Smuzhiyun	  card whenever you insert a MMC or SD card into the card slot.
683*4882a593Smuzhiyun
684*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
685*4882a593Smuzhiyun	  module will be called sdricoh_cs.
686*4882a593Smuzhiyun
687*4882a593Smuzhiyunconfig MMC_SDHCI_SPRD
688*4882a593Smuzhiyun	tristate "Spreadtrum SDIO host Controller"
689*4882a593Smuzhiyun	depends on ARCH_SPRD || COMPILE_TEST
690*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
691*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
692*4882a593Smuzhiyun	select MMC_HSQ
693*4882a593Smuzhiyun	help
694*4882a593Smuzhiyun	  This selects the SDIO Host Controller in Spreadtrum
695*4882a593Smuzhiyun	  SoCs, this driver supports R11(IP version: R11P0).
696*4882a593Smuzhiyun
697*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
698*4882a593Smuzhiyun
699*4882a593Smuzhiyun	  If unsure, say N.
700*4882a593Smuzhiyun
701*4882a593Smuzhiyunconfig MMC_TMIO_CORE
702*4882a593Smuzhiyun	tristate
703*4882a593Smuzhiyun
704*4882a593Smuzhiyunconfig MMC_TMIO
705*4882a593Smuzhiyun	tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support"
706*4882a593Smuzhiyun	depends on MFD_TMIO || MFD_ASIC3 || COMPILE_TEST
707*4882a593Smuzhiyun	select MMC_TMIO_CORE
708*4882a593Smuzhiyun	help
709*4882a593Smuzhiyun	  This provides support for the SD/MMC cell found in TC6393XB,
710*4882a593Smuzhiyun	  T7L66XB and also HTC ASIC3
711*4882a593Smuzhiyun
712*4882a593Smuzhiyunconfig MMC_SDHI
713*4882a593Smuzhiyun	tristate "Renesas SDHI SD/SDIO controller support"
714*4882a593Smuzhiyun	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
715*4882a593Smuzhiyun	select MMC_TMIO_CORE
716*4882a593Smuzhiyun	help
717*4882a593Smuzhiyun	  This provides support for the SDHI SD/SDIO controller found in
718*4882a593Smuzhiyun	  Renesas SuperH, ARM and ARM64 based SoCs
719*4882a593Smuzhiyun
720*4882a593Smuzhiyunconfig MMC_SDHI_SYS_DMAC
721*4882a593Smuzhiyun	tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC"
722*4882a593Smuzhiyun	depends on MMC_SDHI
723*4882a593Smuzhiyun	default MMC_SDHI if (SUPERH || ARM)
724*4882a593Smuzhiyun	help
725*4882a593Smuzhiyun	  This provides DMA support for SDHI SD/SDIO controllers
726*4882a593Smuzhiyun	  using SYS-DMAC via DMA Engine. This supports the controllers
727*4882a593Smuzhiyun	  found in SuperH and Renesas ARM based SoCs.
728*4882a593Smuzhiyun
729*4882a593Smuzhiyunconfig MMC_SDHI_INTERNAL_DMAC
730*4882a593Smuzhiyun	tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering"
731*4882a593Smuzhiyun	depends on ARM64 || ARCH_R7S9210 || ARCH_R8A77470 || COMPILE_TEST
732*4882a593Smuzhiyun	depends on MMC_SDHI
733*4882a593Smuzhiyun	default MMC_SDHI if (ARM64 || ARCH_R7S9210 || ARCH_R8A77470)
734*4882a593Smuzhiyun	help
735*4882a593Smuzhiyun	  This provides DMA support for SDHI SD/SDIO controllers
736*4882a593Smuzhiyun	  using on-chip bus mastering. This supports the controllers
737*4882a593Smuzhiyun	  found in arm64 based SoCs. This controller is also found in
738*4882a593Smuzhiyun	  some RZ family SoCs.
739*4882a593Smuzhiyun
740*4882a593Smuzhiyunconfig MMC_UNIPHIER
741*4882a593Smuzhiyun	tristate "UniPhier SD/eMMC Host Controller support"
742*4882a593Smuzhiyun	depends on ARCH_UNIPHIER || COMPILE_TEST
743*4882a593Smuzhiyun	depends on OF
744*4882a593Smuzhiyun	select MMC_TMIO_CORE
745*4882a593Smuzhiyun	help
746*4882a593Smuzhiyun	  This provides support for the SD/eMMC controller found in
747*4882a593Smuzhiyun	  UniPhier SoCs. The eMMC variant of this controller is used
748*4882a593Smuzhiyun	  only for 32-bit SoCs.
749*4882a593Smuzhiyun
750*4882a593Smuzhiyunconfig MMC_CB710
751*4882a593Smuzhiyun	tristate "ENE CB710 MMC/SD Interface support"
752*4882a593Smuzhiyun	depends on PCI
753*4882a593Smuzhiyun	select CB710_CORE
754*4882a593Smuzhiyun	help
755*4882a593Smuzhiyun	  This option enables support for MMC/SD part of ENE CB710/720 Flash
756*4882a593Smuzhiyun	  memory card reader found in some laptops (ie. some versions of
757*4882a593Smuzhiyun	  HP Compaq nx9500).
758*4882a593Smuzhiyun
759*4882a593Smuzhiyun	  This driver can also be built as a module. If so, the module
760*4882a593Smuzhiyun	  will be called cb710-mmc.
761*4882a593Smuzhiyun
762*4882a593Smuzhiyunconfig MMC_VIA_SDMMC
763*4882a593Smuzhiyun	tristate "VIA SD/MMC Card Reader Driver"
764*4882a593Smuzhiyun	depends on PCI
765*4882a593Smuzhiyun	help
766*4882a593Smuzhiyun	  This selects the VIA SD/MMC Card Reader driver, say Y or M here.
767*4882a593Smuzhiyun	  VIA provides one multi-functional card reader which integrated into
768*4882a593Smuzhiyun	  some motherboards manufactured by VIA. This card reader supports
769*4882a593Smuzhiyun	  SD/MMC/SDHC.
770*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
771*4882a593Smuzhiyun
772*4882a593Smuzhiyun	  If unsure, say N.
773*4882a593Smuzhiyun
774*4882a593Smuzhiyunconfig MMC_CAVIUM_OCTEON
775*4882a593Smuzhiyun	tristate "Cavium OCTEON SD/MMC Card Interface support"
776*4882a593Smuzhiyun	depends on CAVIUM_OCTEON_SOC
777*4882a593Smuzhiyun	help
778*4882a593Smuzhiyun	  This selects Cavium OCTEON SD/MMC card Interface.
779*4882a593Smuzhiyun	  If you have an OCTEON board with a Multimedia Card slot,
780*4882a593Smuzhiyun	  say Y or M here.
781*4882a593Smuzhiyun
782*4882a593Smuzhiyun	  If unsure, say N.
783*4882a593Smuzhiyun
784*4882a593Smuzhiyunconfig MMC_CAVIUM_THUNDERX
785*4882a593Smuzhiyun	tristate "Cavium ThunderX SD/MMC Card Interface support"
786*4882a593Smuzhiyun	depends on PCI && 64BIT && (ARM64 || COMPILE_TEST)
787*4882a593Smuzhiyun	depends on GPIO_THUNDERX
788*4882a593Smuzhiyun	depends on OF_ADDRESS
789*4882a593Smuzhiyun	help
790*4882a593Smuzhiyun	  This selects Cavium ThunderX SD/MMC Card Interface.
791*4882a593Smuzhiyun	  If you have an Cavium ARM64 board with a Multimedia Card slot
792*4882a593Smuzhiyun	  or builtin eMMC chip say Y or M here. If built as a module
793*4882a593Smuzhiyun	  the module will be called thunderx_mmc.ko.
794*4882a593Smuzhiyun
795*4882a593Smuzhiyunconfig MMC_DW
796*4882a593Smuzhiyun	tristate "Synopsys DesignWare Memory Card Interface"
797*4882a593Smuzhiyun	depends on ARC || ARM || ARM64 || MIPS || RISCV || CSKY || COMPILE_TEST
798*4882a593Smuzhiyun	help
799*4882a593Smuzhiyun	  This selects support for the Synopsys DesignWare Mobile Storage IP
800*4882a593Smuzhiyun	  block, this provides host support for SD and MMC interfaces, in both
801*4882a593Smuzhiyun	  PIO, internal DMA mode and external DMA mode.
802*4882a593Smuzhiyun
803*4882a593Smuzhiyunconfig MMC_DW_PLTFM
804*4882a593Smuzhiyun	tristate "Synopsys Designware MCI Support as platform device"
805*4882a593Smuzhiyun	depends on MMC_DW
806*4882a593Smuzhiyun	default y
807*4882a593Smuzhiyun	help
808*4882a593Smuzhiyun	  This selects the common helper functions support for Host Controller
809*4882a593Smuzhiyun	  Interface based platform driver. Please select this option if the IP
810*4882a593Smuzhiyun	  is present as a platform device. This is the common interface for the
811*4882a593Smuzhiyun	  Synopsys Designware IP.
812*4882a593Smuzhiyun
813*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
814*4882a593Smuzhiyun
815*4882a593Smuzhiyun	  If unsure, say Y.
816*4882a593Smuzhiyun
817*4882a593Smuzhiyunconfig MMC_DW_BLUEFIELD
818*4882a593Smuzhiyun	tristate "BlueField specific extensions for Synopsys DW Memory Card Interface"
819*4882a593Smuzhiyun	depends on MMC_DW
820*4882a593Smuzhiyun	select MMC_DW_PLTFM
821*4882a593Smuzhiyun	help
822*4882a593Smuzhiyun	  This selects support for Mellanox BlueField SoC specific extensions to
823*4882a593Smuzhiyun	  the Synopsys DesignWare Memory Card Interface driver. Select this
824*4882a593Smuzhiyun	  option for platforms based on Mellanox BlueField SoC's.
825*4882a593Smuzhiyun
826*4882a593Smuzhiyunconfig MMC_DW_EXYNOS
827*4882a593Smuzhiyun	tristate "Exynos specific extensions for Synopsys DW Memory Card Interface"
828*4882a593Smuzhiyun	depends on MMC_DW
829*4882a593Smuzhiyun	select MMC_DW_PLTFM
830*4882a593Smuzhiyun	help
831*4882a593Smuzhiyun	  This selects support for Samsung Exynos SoC specific extensions to the
832*4882a593Smuzhiyun	  Synopsys DesignWare Memory Card Interface driver. Select this option
833*4882a593Smuzhiyun	  for platforms based on Exynos4 and Exynos5 SoC's.
834*4882a593Smuzhiyun
835*4882a593Smuzhiyunconfig MMC_DW_HI3798CV200
836*4882a593Smuzhiyun	tristate "Hi3798CV200 specific extensions for Synopsys DW Memory Card Interface"
837*4882a593Smuzhiyun	depends on MMC_DW
838*4882a593Smuzhiyun	select MMC_DW_PLTFM
839*4882a593Smuzhiyun	help
840*4882a593Smuzhiyun	  This selects support for HiSilicon Hi3798CV200 SoC specific extensions to the
841*4882a593Smuzhiyun	  Synopsys DesignWare Memory Card Interface driver. Select this option
842*4882a593Smuzhiyun	  for platforms based on HiSilicon Hi3798CV200 SoC.
843*4882a593Smuzhiyun
844*4882a593Smuzhiyunconfig MMC_DW_K3
845*4882a593Smuzhiyun	tristate "K3 specific extensions for Synopsys DW Memory Card Interface"
846*4882a593Smuzhiyun	depends on MMC_DW
847*4882a593Smuzhiyun	select MMC_DW_PLTFM
848*4882a593Smuzhiyun	help
849*4882a593Smuzhiyun	  This selects support for Hisilicon K3 SoC specific extensions to the
850*4882a593Smuzhiyun	  Synopsys DesignWare Memory Card Interface driver. Select this option
851*4882a593Smuzhiyun	  for platforms based on Hisilicon K3 SoC's.
852*4882a593Smuzhiyun
853*4882a593Smuzhiyunconfig MMC_DW_PCI
854*4882a593Smuzhiyun	tristate "Synopsys Designware MCI support on PCI bus"
855*4882a593Smuzhiyun	depends on MMC_DW && PCI
856*4882a593Smuzhiyun	help
857*4882a593Smuzhiyun	  This selects the PCI bus for the Synopsys Designware Mobile Storage IP.
858*4882a593Smuzhiyun	  Select this option if the IP is present on PCI platform.
859*4882a593Smuzhiyun
860*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
861*4882a593Smuzhiyun
862*4882a593Smuzhiyun	  If unsure, say N.
863*4882a593Smuzhiyun
864*4882a593Smuzhiyunconfig MMC_DW_ROCKCHIP
865*4882a593Smuzhiyun	tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface"
866*4882a593Smuzhiyun	depends on MMC_DW && ARCH_ROCKCHIP
867*4882a593Smuzhiyun	select MMC_DW_PLTFM
868*4882a593Smuzhiyun	help
869*4882a593Smuzhiyun	  This selects support for Rockchip SoC specific extensions to the
870*4882a593Smuzhiyun	  Synopsys DesignWare Memory Card Interface driver. Select this option
871*4882a593Smuzhiyun	  for platforms based on RK3066, RK3188 and RK3288 SoC's.
872*4882a593Smuzhiyun
873*4882a593Smuzhiyunconfig MMC_DW_ZX
874*4882a593Smuzhiyun	tristate "ZTE specific extensions for Synopsys DW Memory Card Interface"
875*4882a593Smuzhiyun	depends on MMC_DW && ARCH_ZX
876*4882a593Smuzhiyun	select MMC_DW_PLTFM
877*4882a593Smuzhiyun	help
878*4882a593Smuzhiyun	  This selects support for ZTE SoC specific extensions to the
879*4882a593Smuzhiyun	  Synopsys DesignWare Memory Card Interface driver. Select this option
880*4882a593Smuzhiyun	  for platforms based on ZX296718 SoC's.
881*4882a593Smuzhiyun
882*4882a593Smuzhiyunconfig MMC_SH_MMCIF
883*4882a593Smuzhiyun	tristate "SuperH Internal MMCIF support"
884*4882a593Smuzhiyun	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
885*4882a593Smuzhiyun	help
886*4882a593Smuzhiyun	  This selects the MMC Host Interface controller (MMCIF) found in various
887*4882a593Smuzhiyun	  Renesas SoCs for SH and ARM architectures.
888*4882a593Smuzhiyun
889*4882a593Smuzhiyun
890*4882a593Smuzhiyunconfig MMC_JZ4740
891*4882a593Smuzhiyun	tristate "Ingenic JZ47xx SD/Multimedia Card Interface support"
892*4882a593Smuzhiyun	depends on MIPS
893*4882a593Smuzhiyun	help
894*4882a593Smuzhiyun	  This selects support for the SD/MMC controller on Ingenic
895*4882a593Smuzhiyun	  JZ4740, JZ4750, JZ4770 and JZ4780 SoCs.
896*4882a593Smuzhiyun
897*4882a593Smuzhiyun	  If you have a board based on such a SoC and with a SD/MMC slot,
898*4882a593Smuzhiyun	  say Y or M here.
899*4882a593Smuzhiyun
900*4882a593Smuzhiyunconfig MMC_VUB300
901*4882a593Smuzhiyun	tristate "VUB300 USB to SDIO/SD/MMC Host Controller support"
902*4882a593Smuzhiyun	depends on USB
903*4882a593Smuzhiyun	help
904*4882a593Smuzhiyun	  This selects support for Elan Digital Systems' VUB300 chip.
905*4882a593Smuzhiyun
906*4882a593Smuzhiyun	  The VUB300 is a USB-SDIO Host Controller Interface chip
907*4882a593Smuzhiyun	  that enables the host computer to use SDIO/SD/MMC cards
908*4882a593Smuzhiyun	  via a USB 2.0 or USB 1.1 host.
909*4882a593Smuzhiyun
910*4882a593Smuzhiyun	  The VUB300 chip will be found in both physically separate
911*4882a593Smuzhiyun	  USB to SDIO/SD/MMC adapters and embedded on some motherboards.
912*4882a593Smuzhiyun
913*4882a593Smuzhiyun	  The VUB300 chip supports SD and MMC memory cards in addition
914*4882a593Smuzhiyun	  to single and multifunction SDIO cards.
915*4882a593Smuzhiyun
916*4882a593Smuzhiyun	  Some SDIO cards will need a firmware file to be loaded and
917*4882a593Smuzhiyun	  sent to VUB300 chip in order to achieve better data throughput.
918*4882a593Smuzhiyun	  Download these "Offload Pseudocode" from Elan Digital Systems'
919*4882a593Smuzhiyun	  web-site http://www.elandigitalsystems.com/support/downloads.php
920*4882a593Smuzhiyun	  and put them in /lib/firmware. Note that without these additional
921*4882a593Smuzhiyun	  firmware files the VUB300 chip will still function, but not at
922*4882a593Smuzhiyun	  the best obtainable data rate.
923*4882a593Smuzhiyun
924*4882a593Smuzhiyun	  To compile this mmc host controller driver as a module,
925*4882a593Smuzhiyun	  choose M here: the module will be called vub300.
926*4882a593Smuzhiyun
927*4882a593Smuzhiyun	  If you have a computer with an embedded VUB300 chip
928*4882a593Smuzhiyun	  or if you intend connecting a USB adapter based on a
929*4882a593Smuzhiyun	  VUB300 chip say Y or M here.
930*4882a593Smuzhiyun
931*4882a593Smuzhiyunconfig MMC_USHC
932*4882a593Smuzhiyun	tristate "USB SD Host Controller (USHC) support"
933*4882a593Smuzhiyun	depends on USB
934*4882a593Smuzhiyun	help
935*4882a593Smuzhiyun	  This selects support for USB SD Host Controllers based on
936*4882a593Smuzhiyun	  the Cypress Astoria chip with firmware compliant with CSR's
937*4882a593Smuzhiyun	  USB SD Host Controller specification (CS-118793-SP).
938*4882a593Smuzhiyun
939*4882a593Smuzhiyun	  CSR boards with this device include: USB<>SDIO (M1985v2),
940*4882a593Smuzhiyun	  and Ultrasira.
941*4882a593Smuzhiyun
942*4882a593Smuzhiyun	  Note: These controllers only support SDIO cards and do not
943*4882a593Smuzhiyun	  support MMC or SD memory cards.
944*4882a593Smuzhiyun
945*4882a593Smuzhiyunconfig MMC_WMT
946*4882a593Smuzhiyun	tristate "Wondermedia SD/MMC Host Controller support"
947*4882a593Smuzhiyun	depends on ARCH_VT8500
948*4882a593Smuzhiyun	default y
949*4882a593Smuzhiyun	help
950*4882a593Smuzhiyun	  This selects support for the SD/MMC Host Controller on
951*4882a593Smuzhiyun	  Wondermedia WM8505/WM8650 based SoCs.
952*4882a593Smuzhiyun
953*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
954*4882a593Smuzhiyun	  module will be called wmt-sdmmc.
955*4882a593Smuzhiyun
956*4882a593Smuzhiyunconfig MMC_USDHI6ROL0
957*4882a593Smuzhiyun	tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support"
958*4882a593Smuzhiyun	depends on HAS_DMA
959*4882a593Smuzhiyun	help
960*4882a593Smuzhiyun	  This selects support for the Renesas USDHI6ROL0 SD/SDIO
961*4882a593Smuzhiyun	  Host Controller
962*4882a593Smuzhiyun
963*4882a593Smuzhiyunconfig MMC_REALTEK_PCI
964*4882a593Smuzhiyun	tristate "Realtek PCI-E SD/MMC Card Interface Driver"
965*4882a593Smuzhiyun	depends on MISC_RTSX_PCI
966*4882a593Smuzhiyun	help
967*4882a593Smuzhiyun	  Say Y here to include driver code to support SD/MMC card interface
968*4882a593Smuzhiyun	  of Realtek PCI-E card reader
969*4882a593Smuzhiyun
970*4882a593Smuzhiyunconfig MMC_REALTEK_USB
971*4882a593Smuzhiyun	tristate "Realtek USB SD/MMC Card Interface Driver"
972*4882a593Smuzhiyun	depends on MISC_RTSX_USB
973*4882a593Smuzhiyun	help
974*4882a593Smuzhiyun	  Say Y here to include driver code to support SD/MMC card interface
975*4882a593Smuzhiyun	  of Realtek RTS5129/39 series card reader
976*4882a593Smuzhiyun
977*4882a593Smuzhiyunconfig MMC_SUNXI
978*4882a593Smuzhiyun	tristate "Allwinner sunxi SD/MMC Host Controller support"
979*4882a593Smuzhiyun	depends on ARCH_SUNXI || COMPILE_TEST
980*4882a593Smuzhiyun	help
981*4882a593Smuzhiyun	  This selects support for the SD/MMC Host Controller on
982*4882a593Smuzhiyun	  Allwinner sunxi SoCs.
983*4882a593Smuzhiyun
984*4882a593Smuzhiyunconfig MMC_CQHCI
985*4882a593Smuzhiyun	tristate "Command Queue Host Controller Interface support"
986*4882a593Smuzhiyun	depends on HAS_DMA
987*4882a593Smuzhiyun	help
988*4882a593Smuzhiyun	  This selects the Command Queue Host Controller Interface (CQHCI)
989*4882a593Smuzhiyun	  support present in host controllers of Qualcomm Technologies, Inc
990*4882a593Smuzhiyun	  amongst others.
991*4882a593Smuzhiyun	  This controller supports eMMC devices with command queue support.
992*4882a593Smuzhiyun
993*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
994*4882a593Smuzhiyun
995*4882a593Smuzhiyun	  If unsure, say N.
996*4882a593Smuzhiyun
997*4882a593Smuzhiyunconfig MMC_HSQ
998*4882a593Smuzhiyun	tristate "MMC Host Software Queue support"
999*4882a593Smuzhiyun	help
1000*4882a593Smuzhiyun	  This selects the MMC Host Software Queue support. This may increase
1001*4882a593Smuzhiyun	  performance, if the host controller and its driver supports it.
1002*4882a593Smuzhiyun
1003*4882a593Smuzhiyun	  If you have a controller/driver supporting this interface, say Y or M
1004*4882a593Smuzhiyun	  here.
1005*4882a593Smuzhiyun
1006*4882a593Smuzhiyun	  If unsure, say N.
1007*4882a593Smuzhiyun
1008*4882a593Smuzhiyunconfig MMC_TOSHIBA_PCI
1009*4882a593Smuzhiyun	tristate "Toshiba Type A SD/MMC Card Interface Driver"
1010*4882a593Smuzhiyun	depends on PCI
1011*4882a593Smuzhiyun
1012*4882a593Smuzhiyunconfig MMC_BCM2835
1013*4882a593Smuzhiyun	tristate "Broadcom BCM2835 SDHOST MMC Controller support"
1014*4882a593Smuzhiyun	depends on ARCH_BCM2835 || COMPILE_TEST
1015*4882a593Smuzhiyun	help
1016*4882a593Smuzhiyun	  This selects the BCM2835 SDHOST MMC controller. If you have
1017*4882a593Smuzhiyun	  a BCM2835 platform with SD or MMC devices, say Y or M here.
1018*4882a593Smuzhiyun
1019*4882a593Smuzhiyun	  Note that the BCM2835 has two SD controllers: The Arasan
1020*4882a593Smuzhiyun	  sdhci controller (supported by MMC_SDHCI_IPROC) and a custom
1021*4882a593Smuzhiyun	  sdhost controller (supported by this driver).
1022*4882a593Smuzhiyun
1023*4882a593Smuzhiyun	  If unsure, say N.
1024*4882a593Smuzhiyun
1025*4882a593Smuzhiyunconfig MMC_MTK
1026*4882a593Smuzhiyun	tristate "MediaTek SD/MMC Card Interface support"
1027*4882a593Smuzhiyun	depends on HAS_DMA
1028*4882a593Smuzhiyun	select REGULATOR
1029*4882a593Smuzhiyun	select MMC_CQHCI
1030*4882a593Smuzhiyun	help
1031*4882a593Smuzhiyun	  This selects the MediaTek(R) Secure digital and Multimedia card Interface.
1032*4882a593Smuzhiyun	  If you have a machine with a integrated SD/MMC card reader, say Y or M here.
1033*4882a593Smuzhiyun	  This is needed if support for any SD/SDIO/MMC devices is required.
1034*4882a593Smuzhiyun	  If unsure, say N.
1035*4882a593Smuzhiyun
1036*4882a593Smuzhiyunconfig MMC_SDHCI_MICROCHIP_PIC32
1037*4882a593Smuzhiyun	tristate "Microchip PIC32MZDA SDHCI support"
1038*4882a593Smuzhiyun	depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM
1039*4882a593Smuzhiyun	help
1040*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
1041*4882a593Smuzhiyun	  for PIC32MZDA platform.
1042*4882a593Smuzhiyun
1043*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
1044*4882a593Smuzhiyun
1045*4882a593Smuzhiyun	  If unsure, say N.
1046*4882a593Smuzhiyun
1047*4882a593Smuzhiyunconfig MMC_SDHCI_BRCMSTB
1048*4882a593Smuzhiyun	tristate "Broadcom SDIO/SD/MMC support"
1049*4882a593Smuzhiyun	depends on ARCH_BRCMSTB || BMIPS_GENERIC
1050*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
1051*4882a593Smuzhiyun	select MMC_CQHCI
1052*4882a593Smuzhiyun	default y
1053*4882a593Smuzhiyun	help
1054*4882a593Smuzhiyun	  This selects support for the SDIO/SD/MMC Host Controller on
1055*4882a593Smuzhiyun	  Broadcom STB SoCs.
1056*4882a593Smuzhiyun
1057*4882a593Smuzhiyun	  If unsure, say Y.
1058*4882a593Smuzhiyun
1059*4882a593Smuzhiyunconfig MMC_SDHCI_XENON
1060*4882a593Smuzhiyun	tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver"
1061*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM
1062*4882a593Smuzhiyun	help
1063*4882a593Smuzhiyun	  This selects Marvell Xenon eMMC/SD/SDIO SDHCI.
1064*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
1065*4882a593Smuzhiyun	  If unsure, say N.
1066*4882a593Smuzhiyun
1067*4882a593Smuzhiyunconfig MMC_SDHCI_OMAP
1068*4882a593Smuzhiyun	tristate "TI SDHCI Controller Support"
1069*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM && OF
1070*4882a593Smuzhiyun	select THERMAL
1071*4882a593Smuzhiyun	imply TI_SOC_THERMAL
1072*4882a593Smuzhiyun	select MMC_SDHCI_EXTERNAL_DMA if DMA_ENGINE
1073*4882a593Smuzhiyun	help
1074*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
1075*4882a593Smuzhiyun	  support present in TI's DRA7 SOCs. The controller supports
1076*4882a593Smuzhiyun	  SD/MMC/SDIO devices.
1077*4882a593Smuzhiyun
1078*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
1079*4882a593Smuzhiyun
1080*4882a593Smuzhiyun	  If unsure, say N.
1081*4882a593Smuzhiyun
1082*4882a593Smuzhiyunconfig MMC_SDHCI_AM654
1083*4882a593Smuzhiyun	tristate "Support for the SDHCI Controller in TI's AM654 SOCs"
1084*4882a593Smuzhiyun	depends on MMC_SDHCI_PLTFM && OF
1085*4882a593Smuzhiyun	select MMC_SDHCI_IO_ACCESSORS
1086*4882a593Smuzhiyun	select MMC_CQHCI
1087*4882a593Smuzhiyun	select REGMAP_MMIO
1088*4882a593Smuzhiyun	help
1089*4882a593Smuzhiyun	  This selects the Secure Digital Host Controller Interface (SDHCI)
1090*4882a593Smuzhiyun	  support present in TI's AM654 SOCs. The controller supports
1091*4882a593Smuzhiyun	  SD/MMC/SDIO devices.
1092*4882a593Smuzhiyun
1093*4882a593Smuzhiyun	  If you have a controller with this interface, say Y or M here.
1094*4882a593Smuzhiyun
1095*4882a593Smuzhiyun	  If unsure, say N.
1096*4882a593Smuzhiyun
1097*4882a593Smuzhiyunconfig MMC_OWL
1098*4882a593Smuzhiyun	tristate "Actions Semi Owl SD/MMC Host Controller support"
1099*4882a593Smuzhiyun	depends on HAS_DMA
1100*4882a593Smuzhiyun	depends on ARCH_ACTIONS || COMPILE_TEST
1101*4882a593Smuzhiyun	help
1102*4882a593Smuzhiyun	  This selects support for the SD/MMC Host Controller on
1103*4882a593Smuzhiyun	  Actions Semi Owl SoCs.
1104*4882a593Smuzhiyun
1105*4882a593Smuzhiyunconfig MMC_SDHCI_EXTERNAL_DMA
1106*4882a593Smuzhiyun	bool
1107