e1f8f9dacfe495c452932561f239f600dd7cf114
[oweals/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 DM_MMC
14         bool "Enable MMC controllers using Driver Model"
15         depends on DM
16         help
17           This enables the MultiMediaCard (MMC) uclass which supports MMC and
18           Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.)
19           and non-removable (e.g. eMMC chip) devices are supported. These
20           appear as block devices in U-Boot and can support filesystems such
21           as EXT4 and FAT.
22
23 config DM_MMC_OPS
24         bool "Support MMC controller operations using Driver Model"
25         depends on DM_MMC
26         default y if DM_MMC
27         help
28           Driver model provides a means of supporting device operations. This
29           option moves MMC operations under the control of driver model. The
30           option will be removed as soon as all DM_MMC drivers use it, as it
31           will the only supported behaviour.
32
33 if MMC
34
35 config SPL_MMC_TINY
36         bool "Tiny MMC framework in SPL"
37         help
38           Enable MMC framework tinification support. This option is useful if
39           if your SPL is extremely size constrained. Heed the warning, enable
40           this option if and only if you know exactly what you are doing, if
41           you are reading this help text, you most likely have no idea :-)
42
43           The MMC framework is reduced to bare minimum to be useful. No malloc
44           support is needed for the MMC framework operation with this option
45           enabled. The framework supports exactly one MMC device and exactly
46           one MMC driver. The MMC driver can be adjusted to avoid any malloc
47           operations too, which can remove the need for malloc support in SPL
48           and thus further reduce footprint.
49
50 config MSM_SDHCI
51         bool "Qualcomm SDHCI controller"
52         depends on DM_MMC && BLK && DM_MMC_OPS
53         depends on MMC_SDHCI
54         help
55           Enables support for SDHCI 2.0 controller present on some Qualcomm
56           Snapdragon devices. This device is compatible with eMMC v4.5 and
57           SD 3.0 specifications. Both SD and eMMC devices are supported.
58           Card-detect gpios are not supported.
59
60 config ATMEL_SDHCI
61         bool "Atmel SDHCI controller support"
62         depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
63         depends on MMC_SDHCI
64         help
65           This enables support for the Atmel SDHCI controller, which supports
66           the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD
67           Memory Card Specification V3.0, and the SDIO V3.0 specification.
68           It is compliant with the SD Host Controller Standard V3.0
69           specification.
70
71 config MMC_DW_ROCKCHIP
72         bool "Rockchip SD/MMC controller support"
73         depends on DM_MMC && OF_CONTROL
74         help
75           This enables support for the Rockchip SD/MMM controller, which is
76           based on Designware IP. The device is compatible with at least
77           SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
78           as removeable SD and micro-SD cards.
79
80 config SH_SDHI
81         bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
82         depends on RMOBILE
83         help
84           Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
85
86 config PIC32_SDHCI
87         bool "Microchip PIC32 on-chip SDHCI support"
88         depends on DM_MMC && MACH_PIC32
89         depends on MMC_SDHCI
90         help
91           Support for Microchip PIC32 SDHCI controller.
92
93 config ZYNQ_SDHCI
94         bool "Arasan SDHCI controller support"
95         depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
96         depends on MMC_SDHCI
97         help
98           Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
99
100 config ROCKCHIP_SDHCI
101         bool "Arasan SDHCI controller for Rockchip support"
102         depends on DM_MMC && BLK && DM_MMC_OPS
103         depends on MMC_SDHCI
104         help
105           Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
106
107 config MMC_UNIPHIER
108         bool "UniPhier SD/MMC Host Controller support"
109         depends on ARCH_UNIPHIER
110         depends on BLK && DM_MMC_OPS
111         depends on OF_CONTROL
112         help
113           This selects support for the SD/MMC Host Controller on UniPhier SoCs.
114
115 config SANDBOX_MMC
116         bool "Sandbox MMC support"
117         depends on MMC && SANDBOX
118         help
119           This select a dummy sandbox MMC driver. At present this does nothing
120           other than allow sandbox to be build with MMC support. This
121           improves build coverage for sandbox and makes it easier to detect
122           MMC build errors with sandbox.
123
124 config MMC_SDHCI
125         bool "Secure Digital Host Controller Interface support"
126         help
127           This selects the generic Secure Digital Host Controller Interface.
128           It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
129           and Toshiba(R). Most controllers found in laptops are of this type.
130
131           If you have a controller with this interface, say Y here.
132
133           If unsure, say N.
134
135 config MMC_SDHCI_IO_ACCESSORS
136         bool
137         depends on MMC_SDHCI
138         help
139           This is silent Kconfig symbol that is selected by the drivers that
140           need to overwrite SDHCI IO memory accessors.
141
142 config MMC_SDHCI_SDMA
143         bool "Support SDHCI SDMA"
144         depends on MMC_SDHCI
145         help
146           This enables support for the SDMA (Single Operation DMA) defined
147           in the SD Host Controller Standard Specification Version 1.00 .
148
149 config MMC_SDHCI_BCM2835
150         tristate "SDHCI support for the BCM2835 SD/MMC Controller"
151         depends on ARCH_BCM283X
152         depends on MMC_SDHCI
153         select MMC_SDHCI_IO_ACCESSORS
154         help
155           This selects the BCM2835 SD/MMC controller.
156
157           If you have a BCM2835 platform with SD or MMC devices,
158           say Y here.
159
160           If unsure, say N.
161
162 config MMC_SDHCI_CADENCE
163         bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
164         depends on BLK && DM_MMC_OPS
165         depends on MMC_SDHCI
166         depends on OF_CONTROL
167         help
168           This selects the Cadence SD/SDIO/eMMC driver.
169
170           If you have a controller with this interface, say Y here.
171
172           If unsure, say N.
173
174 config MMC_SDHCI_KONA
175         bool "SDHCI support on Broadcom KONA platform"
176         depends on MMC_SDHCI
177         help
178           This selects the Broadcom Kona Secure Digital Host Controller
179           Interface(SDHCI) support.
180           This is used in Broadcom mobile SoCs.
181
182           If you have a controller with this interface, say Y here.
183
184 config MMC_SDHCI_MV
185         bool "SDHCI support on Marvell platform"
186         depends on ARCH_MVEBU
187         depends on MMC_SDHCI
188         help
189           This selects the Secure Digital Host Controller Interface on
190           Marvell platform.
191
192           If you have a controller with this interface, say Y here.
193
194           If unsure, say N.
195
196 config MMC_SDHCI_S5P
197         bool "SDHCI support on Samsung S5P SoC"
198         depends on MMC_SDHCI
199         help
200           This selects the Secure Digital Host Controller Interface (SDHCI)
201           on Samsung S5P SoCs.
202
203           If you have a controller with this interface, say Y here.
204
205           If unsure, say N.
206
207 config MMC_SDHCI_SPEAR
208         bool "SDHCI support on ST SPEAr platform"
209         depends on MMC_SDHCI
210         help
211           This selects the Secure Digital Host Controller Interface (SDHCI)
212           often referrered to as the HSMMC block in some of the ST SPEAR range
213           of SoC
214
215           If you have a controller with this interface, say Y here.
216
217           If unsure, say N.
218
219 endif
220
221 endmenu
222
223 config SYS_FSL_ERRATUM_ESDHC111
224         bool
225
226 config SYS_FSL_ERRATUM_ESDHC13
227         bool
228
229 config SYS_FSL_ERRATUM_ESDHC135
230         bool
231
232 config SYS_FSL_ERRATUM_ESDHC_A001
233         bool