xref: /openbmc/u-boot/drivers/mmc/Kconfig (revision 55ed3b46)
1menu "MMC Host controller Support"
2
3config 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
13config 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
23config 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
33if MMC
34
35config 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
50config 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
60config 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
71config MMC_DW
72	bool "Synopsys DesignWare Memory Card Interface"
73	help
74	  This selects support for the Synopsys DesignWare Mobile Storage IP
75	  block, this provides host support for SD and MMC interfaces, in both
76	  PIO, internal DMA mode and external DMA mode.
77
78config MMC_DW_ROCKCHIP
79	bool "Rockchip SD/MMC controller support"
80	depends on DM_MMC && OF_CONTROL
81	depends on MMC_DW
82	help
83	  This enables support for the Rockchip SD/MMM controller, which is
84	  based on Designware IP. The device is compatible with at least
85	  SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
86	  as removeable SD and micro-SD cards.
87
88config SH_SDHI
89	bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
90	depends on RMOBILE
91	help
92	  Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
93
94config PIC32_SDHCI
95	bool "Microchip PIC32 on-chip SDHCI support"
96	depends on DM_MMC && MACH_PIC32
97	depends on MMC_SDHCI
98	help
99	  Support for Microchip PIC32 SDHCI controller.
100
101config ZYNQ_SDHCI
102	bool "Arasan SDHCI controller support"
103	depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
104	depends on MMC_SDHCI
105	help
106	  Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
107
108config ROCKCHIP_SDHCI
109	bool "Arasan SDHCI controller for Rockchip support"
110	depends on DM_MMC && BLK && DM_MMC_OPS
111	depends on MMC_SDHCI
112	help
113	  Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
114
115config MMC_UNIPHIER
116	bool "UniPhier SD/MMC Host Controller support"
117	depends on ARCH_UNIPHIER
118	depends on BLK && DM_MMC_OPS
119	depends on OF_CONTROL
120	help
121	  This selects support for the SD/MMC Host Controller on UniPhier SoCs.
122
123config SANDBOX_MMC
124	bool "Sandbox MMC support"
125	depends on MMC && SANDBOX
126	help
127	  This select a dummy sandbox MMC driver. At present this does nothing
128	  other than allow sandbox to be build with MMC support. This
129	  improves build coverage for sandbox and makes it easier to detect
130	  MMC build errors with sandbox.
131
132config MMC_SDHCI
133	bool "Secure Digital Host Controller Interface support"
134	help
135	  This selects the generic Secure Digital Host Controller Interface.
136	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
137	  and Toshiba(R). Most controllers found in laptops are of this type.
138
139	  If you have a controller with this interface, say Y here.
140
141	  If unsure, say N.
142
143config MMC_SDHCI_IO_ACCESSORS
144	bool
145	depends on MMC_SDHCI
146	help
147	  This is silent Kconfig symbol that is selected by the drivers that
148	  need to overwrite SDHCI IO memory accessors.
149
150config MMC_SDHCI_SDMA
151	bool "Support SDHCI SDMA"
152	depends on MMC_SDHCI
153	help
154	  This enables support for the SDMA (Single Operation DMA) defined
155	  in the SD Host Controller Standard Specification Version 1.00 .
156
157config MMC_SDHCI_BCM2835
158	tristate "SDHCI support for the BCM2835 SD/MMC Controller"
159	depends on ARCH_BCM283X
160	depends on MMC_SDHCI
161	select MMC_SDHCI_IO_ACCESSORS
162	help
163	  This selects the BCM2835 SD/MMC controller.
164
165	  If you have a BCM2835 platform with SD or MMC devices,
166	  say Y here.
167
168	  If unsure, say N.
169
170config MMC_SDHCI_CADENCE
171	bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
172	depends on BLK && DM_MMC_OPS
173	depends on MMC_SDHCI
174	depends on OF_CONTROL
175	help
176	  This selects the Cadence SD/SDIO/eMMC driver.
177
178	  If you have a controller with this interface, say Y here.
179
180	  If unsure, say N.
181
182config MMC_SDHCI_KONA
183	bool "SDHCI support on Broadcom KONA platform"
184	depends on MMC_SDHCI
185	help
186	  This selects the Broadcom Kona Secure Digital Host Controller
187	  Interface(SDHCI) support.
188	  This is used in Broadcom mobile SoCs.
189
190	  If you have a controller with this interface, say Y here.
191
192config MMC_SDHCI_MV
193	bool "SDHCI support on Marvell platform"
194	depends on ARCH_MVEBU
195	depends on MMC_SDHCI
196	help
197	  This selects the Secure Digital Host Controller Interface on
198	  Marvell platform.
199
200	  If you have a controller with this interface, say Y here.
201
202	  If unsure, say N.
203
204config MMC_SDHCI_S5P
205	bool "SDHCI support on Samsung S5P SoC"
206	depends on MMC_SDHCI
207	help
208	  This selects the Secure Digital Host Controller Interface (SDHCI)
209	  on Samsung S5P SoCs.
210
211	  If you have a controller with this interface, say Y here.
212
213	  If unsure, say N.
214
215config MMC_SDHCI_SPEAR
216	bool "SDHCI support on ST SPEAr platform"
217	depends on MMC_SDHCI
218	help
219	  This selects the Secure Digital Host Controller Interface (SDHCI)
220	  often referrered to as the HSMMC block in some of the ST SPEAR range
221	  of SoC
222
223	  If you have a controller with this interface, say Y here.
224
225	  If unsure, say N.
226
227endif
228
229endmenu
230
231config SYS_FSL_ERRATUM_ESDHC111
232	bool
233
234config SYS_FSL_ERRATUM_ESDHC13
235	bool
236
237config SYS_FSL_ERRATUM_ESDHC135
238	bool
239
240config SYS_FSL_ERRATUM_ESDHC_A001
241	bool
242