xref: /openbmc/u-boot/drivers/mmc/Kconfig (revision 505cf475)
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 ROCKCHIP_DWMMC
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
80config 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
86config 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
93config 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
100config 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
107config 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
115config 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
124config 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
135config 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
142config 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
149config 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
162config 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
174config 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
184config 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
196config 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
207config 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
219endif
220
221endmenu
222
223config SYS_FSL_ERRATUM_ESDHC111
224	bool
225
226config SYS_FSL_ERRATUM_ESDHC13
227	bool
228
229config SYS_FSL_ERRATUM_ESDHC135
230	bool
231
232config SYS_FSL_ERRATUM_ESDHC_A001
233	bool
234