xref: /openbmc/u-boot/drivers/mmc/Kconfig (revision e2ee3014)
1menu "MMC Host controller Support"
2
3config MMC
4	bool "Enable MMC support"
5	depends on ARCH_SUNXI || SANDBOX
6	help
7	  TODO: Move all architectures to use this option
8
9config DM_MMC
10	bool "Enable MMC controllers using Driver Model"
11	depends on DM
12	help
13	  This enables the MultiMediaCard (MMC) uclass which supports MMC and
14	  Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.)
15	  and non-removable (e.g. eMMC chip) devices are supported. These
16	  appear as block devices in U-Boot and can support filesystems such
17	  as EXT4 and FAT.
18
19config DM_MMC_OPS
20	bool "Support MMC controller operations using Driver Model"
21	depends on DM_MMC
22	default y if DM_MMC
23	help
24	  Driver model provides a means of supporting device operations. This
25	  option moves MMC operations under the control of driver model. The
26	  option will be removed as soon as all DM_MMC drivers use it, as it
27	  will the only supported behaviour.
28
29config SPL_MMC_TINY
30	bool "Tiny MMC framework in SPL"
31	help
32	  Enable MMC framework tinification support. This option is useful if
33	  if your SPL is extremely size constrained. Heed the warning, enable
34	  this option if and only if you know exactly what you are doing, if
35	  you are reading this help text, you most likely have no idea :-)
36
37	  The MMC framework is reduced to bare minimum to be useful. No malloc
38	  support is needed for the MMC framework operation with this option
39	  enabled. The framework supports exactly one MMC device and exactly
40	  one MMC driver. The MMC driver can be adjusted to avoid any malloc
41	  operations too, which can remove the need for malloc support in SPL
42	  and thus further reduce footprint.
43
44config MSM_SDHCI
45	bool "Qualcomm SDHCI controller"
46	depends on DM_MMC && BLK && DM_MMC_OPS
47	help
48	  Enables support for SDHCI 2.0 controller present on some Qualcomm
49          Snapdragon devices. This device is compatible with eMMC v4.5 and
50          SD 3.0 specifications. Both SD and eMMC devices are supported.
51	  Card-detect gpios are not supported.
52
53config ATMEL_SDHCI
54	bool "Atmel SDHCI controller support"
55	depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
56	help
57	  This enables support for the Atmel SDHCI controller, which supports
58	  the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD
59	  Memory Card Specification V3.0, and the SDIO V3.0 specification.
60	  It is compliant with the SD Host Controller Standard V3.0
61	  specification.
62
63config ROCKCHIP_DWMMC
64	bool "Rockchip SD/MMC controller support"
65	depends on DM_MMC && OF_CONTROL
66	help
67	  This enables support for the Rockchip SD/MMM controller, which is
68	  based on Designware IP. The device is compatible with at least
69	  SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
70	  as removeable SD and micro-SD cards.
71
72config SH_SDHI
73	bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
74	depends on RMOBILE
75	help
76	  Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
77
78config PIC32_SDHCI
79	bool "Microchip PIC32 on-chip SDHCI support"
80	depends on DM_MMC && MACH_PIC32
81	help
82	  Support for Microchip PIC32 SDHCI controller.
83
84config ZYNQ_SDHCI
85	bool "Arasan SDHCI controller support"
86	depends on DM_MMC && OF_CONTROL
87	help
88	  Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
89
90config ROCKCHIP_SDHCI
91	bool "Arasan SDHCI controller for Rockchip support"
92	depends on DM_MMC && BLK && DM_MMC_OPS
93	help
94	  Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
95
96config MMC_UNIPHIER
97	bool "UniPhier SD/MMC Host Controller support"
98	depends on ARCH_UNIPHIER
99	depends on BLK
100	select DM_MMC_OPS
101	help
102	  This selects support for the SD/MMC Host Controller on UniPhier SoCs.
103
104config SANDBOX_MMC
105	bool "Sandbox MMC support"
106	depends on MMC && SANDBOX
107	help
108	  This select a dummy sandbox MMC driver. At present this does nothing
109	  other than allow sandbox to be build with MMC support. This
110	  improves build coverage for sandbox and makes it easier to detect
111	  MMC build errors with sandbox.
112
113endmenu
114