mmc: rockchip: rename CONFIG_ROCKCHIP_SDHCI to CONFIG_MMC_SDHCI_ROCKCHIP
[platform/kernel/u-boot.git] / drivers / mmc / Kconfig
1 menu "MMC Host controller Support"
2
3 config MMC
4         bool "MMC/SD/SDIO card support"
5         default ARM || PPC || SANDBOX
6         help
7           This selects MultiMediaCard, Secure Digital and Secure
8           Digital I/O support.
9
10           If you want MMC/SD/SDIO support, you should say Y here and
11           also to your specific host controller driver.
12
13 config GENERIC_MMC
14         bool "Generic MMC driver framework"
15         default MMC
16
17 config DM_MMC
18         bool "Enable MMC controllers using Driver Model"
19         depends on DM
20         help
21           This enables the MultiMediaCard (MMC) uclass which supports MMC and
22           Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.)
23           and non-removable (e.g. eMMC chip) devices are supported. These
24           appear as block devices in U-Boot and can support filesystems such
25           as EXT4 and FAT.
26
27 config DM_MMC_OPS
28         bool "Support MMC controller operations using Driver Model"
29         depends on DM_MMC
30         default y if DM_MMC
31         help
32           Driver model provides a means of supporting device operations. This
33           option moves MMC operations under the control of driver model. The
34           option will be removed as soon as all DM_MMC drivers use it, as it
35           will the only supported behaviour.
36
37 if MMC
38
39 config SPL_MMC_TINY
40         bool "Tiny MMC framework in SPL"
41         help
42           Enable MMC framework tinification support. This option is useful if
43           if your SPL is extremely size constrained. Heed the warning, enable
44           this option if and only if you know exactly what you are doing, if
45           you are reading this help text, you most likely have no idea :-)
46
47           The MMC framework is reduced to bare minimum to be useful. No malloc
48           support is needed for the MMC framework operation with this option
49           enabled. The framework supports exactly one MMC device and exactly
50           one MMC driver. The MMC driver can be adjusted to avoid any malloc
51           operations too, which can remove the need for malloc support in SPL
52           and thus further reduce footprint.
53
54 config MSM_SDHCI
55         bool "Qualcomm SDHCI controller"
56         depends on DM_MMC && BLK && DM_MMC_OPS
57         depends on MMC_SDHCI
58         help
59           Enables support for SDHCI 2.0 controller present on some Qualcomm
60           Snapdragon devices. This device is compatible with eMMC v4.5 and
61           SD 3.0 specifications. Both SD and eMMC devices are supported.
62           Card-detect gpios are not supported.
63
64 config ATMEL_SDHCI
65         bool "Atmel SDHCI controller support"
66         depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
67         depends on MMC_SDHCI
68         help
69           This enables support for the Atmel SDHCI controller, which supports
70           the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD
71           Memory Card Specification V3.0, and the SDIO V3.0 specification.
72           It is compliant with the SD Host Controller Standard V3.0
73           specification.
74
75 config MMC_DAVINCI
76         bool "TI DAVINCI Multimedia Card Interface support"
77         depends on ARCH_DAVINCI
78         default y
79         help
80           This selects the TI DAVINCI Multimedia card Interface.
81           If you have an DAVINCI board with a Multimedia Card slot,
82           say Y here.  If unsure, say N.
83
84 config MMC_DW
85         bool "Synopsys DesignWare Memory Card Interface"
86         help
87           This selects support for the Synopsys DesignWare Mobile Storage IP
88           block, this provides host support for SD and MMC interfaces, in both
89           PIO, internal DMA mode and external DMA mode.
90
91 config MMC_DW_EXYNOS
92         bool "Exynos specific extensions for Synopsys DW Memory Card Interface"
93         depends on ARCH_EXYNOS
94         depends on MMC_DW
95         default y
96         help
97           This selects support for Samsung Exynos SoC specific extensions to the
98           Synopsys DesignWare Memory Card Interface driver. Select this option
99           for platforms based on Exynos4 and Exynos5 SoC's.
100
101 config MMC_DW_K3
102         bool "K3 specific extensions for Synopsys DW Memory Card Interface"
103         depends on MMC_DW
104         help
105           This selects support for Hisilicon K3 SoC specific extensions to the
106           Synopsys DesignWare Memory Card Interface driver. Select this option
107           for platforms based on Hisilicon K3 SoC's.
108
109 config MMC_DW_ROCKCHIP
110         bool "Rockchip SD/MMC controller support"
111         depends on DM_MMC && OF_CONTROL
112         depends on MMC_DW
113         help
114           This enables support for the Rockchip SD/MMM controller, which is
115           based on Designware IP. The device is compatible with at least
116           SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
117           as removeable SD and micro-SD cards.
118
119 config MMC_DW_SOCFPGA
120         bool "SOCFPGA specific extensions for Synopsys DW Memory Card Interface"
121         depends on ARCH_SOCFPGA
122         depends on MMC_DW
123         default y
124         help
125           This selects support for Altera SOCFPGA specific extensions to the
126           Synopsys DesignWare Memory Card Interface driver. Select this option
127           for platforms based on Altera SOCFPGA.
128
129 config MMC_MXC
130         bool "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
131         help
132           This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
133           Multimedia Card Interface. If you have an i.MX or MPC512x platform
134           with a Multimedia Card slot, say Y here.
135
136           If unsure, say N.
137
138 config MMC_MXS
139         bool "Freescale MXS Multimedia Card Interface support"
140         help
141           This selects the Freescale SSP MMC controller found on MXS based
142           platforms like mx23/28.
143
144           If unsure, say N.
145
146 config MMC_OMAP_HS
147         bool "TI OMAP High Speed Multimedia Card Interface support"
148         help
149           This selects the TI OMAP High Speed Multimedia card Interface.
150           If you have an omap2plus board with a Multimedia Card slot,
151           say Y here.
152
153           If unsure, say N.
154
155 config SH_SDHI
156         bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
157         depends on RMOBILE
158         help
159           Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
160
161 config PIC32_SDHCI
162         bool "Microchip PIC32 on-chip SDHCI support"
163         depends on DM_MMC && MACH_PIC32
164         depends on MMC_SDHCI
165         help
166           Support for Microchip PIC32 SDHCI controller.
167
168 config MMC_UNIPHIER
169         bool "UniPhier SD/MMC Host Controller support"
170         depends on ARCH_UNIPHIER
171         depends on BLK && DM_MMC_OPS
172         depends on OF_CONTROL
173         help
174           This selects support for the SD/MMC Host Controller on UniPhier SoCs.
175
176 config MMC_SANDBOX
177         bool "Sandbox MMC support"
178         depends on SANDBOX
179         depends on BLK && DM_MMC_OPS && OF_CONTROL
180         help
181           This select a dummy sandbox MMC driver. At present this does nothing
182           other than allow sandbox to be build with MMC support. This
183           improves build coverage for sandbox and makes it easier to detect
184           MMC build errors with sandbox.
185
186 config MMC_SDHCI
187         bool "Secure Digital Host Controller Interface support"
188         help
189           This selects the generic Secure Digital Host Controller Interface.
190           It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
191           and Toshiba(R). Most controllers found in laptops are of this type.
192
193           If you have a controller with this interface, say Y here.
194
195           If unsure, say N.
196
197 config MMC_SDHCI_IO_ACCESSORS
198         bool
199         depends on MMC_SDHCI
200         help
201           This is silent Kconfig symbol that is selected by the drivers that
202           need to overwrite SDHCI IO memory accessors.
203
204 config MMC_SDHCI_SDMA
205         bool "Support SDHCI SDMA"
206         depends on MMC_SDHCI
207         help
208           This enables support for the SDMA (Single Operation DMA) defined
209           in the SD Host Controller Standard Specification Version 1.00 .
210
211 config MMC_SDHCI_BCM2835
212         tristate "SDHCI support for the BCM2835 SD/MMC Controller"
213         depends on ARCH_BCM283X
214         depends on MMC_SDHCI
215         select MMC_SDHCI_IO_ACCESSORS
216         help
217           This selects the BCM2835 SD/MMC controller.
218
219           If you have a BCM2835 platform with SD or MMC devices,
220           say Y here.
221
222           If unsure, say N.
223
224 config MMC_SDHCI_CADENCE
225         bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
226         depends on BLK && DM_MMC_OPS
227         depends on MMC_SDHCI
228         depends on OF_CONTROL
229         help
230           This selects the Cadence SD/SDIO/eMMC driver.
231
232           If you have a controller with this interface, say Y here.
233
234           If unsure, say N.
235
236 config MMC_SDHCI_KONA
237         bool "SDHCI support on Broadcom KONA platform"
238         depends on MMC_SDHCI
239         help
240           This selects the Broadcom Kona Secure Digital Host Controller
241           Interface(SDHCI) support.
242           This is used in Broadcom mobile SoCs.
243
244           If you have a controller with this interface, say Y here.
245
246 config MMC_SDHCI_MV
247         bool "SDHCI support on Marvell platform"
248         depends on ARCH_MVEBU
249         depends on MMC_SDHCI
250         help
251           This selects the Secure Digital Host Controller Interface on
252           Marvell platform.
253
254           If you have a controller with this interface, say Y here.
255
256           If unsure, say N.
257
258 config MMC_SDHCI_ROCKCHIP
259         bool "Arasan SDHCI controller for Rockchip support"
260         depends on ARCH_ROCKCHIP
261         depends on DM_MMC && BLK && DM_MMC_OPS
262         depends on MMC_SDHCI
263         help
264           Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
265
266 config MMC_SDHCI_S5P
267         bool "SDHCI support on Samsung S5P SoC"
268         depends on MMC_SDHCI
269         help
270           This selects the Secure Digital Host Controller Interface (SDHCI)
271           on Samsung S5P SoCs.
272
273           If you have a controller with this interface, say Y here.
274
275           If unsure, say N.
276
277 config MMC_SDHCI_SPEAR
278         bool "SDHCI support on ST SPEAr platform"
279         depends on MMC_SDHCI
280         help
281           This selects the Secure Digital Host Controller Interface (SDHCI)
282           often referrered to as the HSMMC block in some of the ST SPEAR range
283           of SoC
284
285           If you have a controller with this interface, say Y here.
286
287           If unsure, say N.
288
289 config MMC_SDHCI_XENON
290         bool "SDHCI support for the Xenon SDHCI controller"
291         depends on MMC_SDHCI && DM_MMC && OF_CONTROL
292         help
293           Support for Xenon SDHCI host controller on Marvell Armada 3700
294           7k/8k ARM SoCs platforms
295
296           If you have a controller with this interface, say Y here.
297
298           If unsure, say N.
299
300 config MMC_SDHCI_TEGRA
301         bool "SDHCI platform support for the Tegra SD/MMC Controller"
302         depends on TEGRA
303         default y
304         help
305           This selects the Tegra SD/MMC controller. If you have a Tegra
306           platform with SD or MMC devices, say Y here.
307
308           If unsure, say N.
309
310 config MMC_SDHCI_ZYNQ
311         bool "Arasan SDHCI controller support"
312         depends on ARCH_ZYNQ || ARCH_ZYNQMP
313         depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
314         depends on MMC_SDHCI
315         help
316           Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
317
318 config MMC_SUNXI
319         bool "Allwinner sunxi SD/MMC Host Controller support"
320         depends on ARCH_SUNXI && !UART0_PORT_F
321         default y
322         help
323           This selects support for the SD/MMC Host Controller on
324           Allwinner sunxi SoCs.
325
326 endif
327
328 endmenu
329
330 config SYS_FSL_ERRATUM_ESDHC111
331         bool
332
333 config SYS_FSL_ERRATUM_ESDHC13
334         bool
335
336 config SYS_FSL_ERRATUM_ESDHC135
337         bool
338
339 config SYS_FSL_ERRATUM_ESDHC_A001
340         bool