xref: /openbmc/u-boot/drivers/mmc/Kconfig (revision e5e7a7c2)
172d42badSNobuhiro Iwamatsumenu "MMC Host controller Support"
272d42badSNobuhiro Iwamatsu
37a777f6dSMaxime Ripardconfig MMC
4c2726995SMasahiro Yamada	bool "MMC/SD/SDIO card support"
5c2726995SMasahiro Yamada	default ARM || PPC || SANDBOX
67a777f6dSMaxime Ripard	help
7c2726995SMasahiro Yamada	  This selects MultiMediaCard, Secure Digital and Secure
8c2726995SMasahiro Yamada	  Digital I/O support.
9c2726995SMasahiro Yamada
10c2726995SMasahiro Yamada	  If you want MMC/SD/SDIO support, you should say Y here and
11c2726995SMasahiro Yamada	  also to your specific host controller driver.
127a777f6dSMaxime Ripard
13e7ecf7cbSSimon Glassconfig DM_MMC
14e7ecf7cbSSimon Glass	bool "Enable MMC controllers using Driver Model"
15e7ecf7cbSSimon Glass	depends on DM
16e7ecf7cbSSimon Glass	help
1762a3b7ddSRobert P. J. Day	  This enables the MultiMediaCard (MMC) uclass which supports MMC and
18e7ecf7cbSSimon Glass	  Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.)
19e7ecf7cbSSimon Glass	  and non-removable (e.g. eMMC chip) devices are supported. These
20e7ecf7cbSSimon Glass	  appear as block devices in U-Boot and can support filesystems such
21e7ecf7cbSSimon Glass	  as EXT4 and FAT.
22e7ecf7cbSSimon Glass
238ca51e51SSimon Glassconfig DM_MMC_OPS
248ca51e51SSimon Glass	bool "Support MMC controller operations using Driver Model"
258ca51e51SSimon Glass	depends on DM_MMC
26252788b4SSimon Glass	default y if DM_MMC
278ca51e51SSimon Glass	help
288ca51e51SSimon Glass	  Driver model provides a means of supporting device operations. This
298ca51e51SSimon Glass	  option moves MMC operations under the control of driver model. The
308ca51e51SSimon Glass	  option will be removed as soon as all DM_MMC drivers use it, as it
318ca51e51SSimon Glass	  will the only supported behaviour.
328ca51e51SSimon Glass
33e298c46aSMasahiro Yamadaif MMC
34e298c46aSMasahiro Yamada
35b5b838f1SMarek Vasutconfig SPL_MMC_TINY
36b5b838f1SMarek Vasut	bool "Tiny MMC framework in SPL"
37b5b838f1SMarek Vasut	help
38b5b838f1SMarek Vasut	  Enable MMC framework tinification support. This option is useful if
39b5b838f1SMarek Vasut	  if your SPL is extremely size constrained. Heed the warning, enable
40b5b838f1SMarek Vasut	  this option if and only if you know exactly what you are doing, if
41b5b838f1SMarek Vasut	  you are reading this help text, you most likely have no idea :-)
42b5b838f1SMarek Vasut
43b5b838f1SMarek Vasut	  The MMC framework is reduced to bare minimum to be useful. No malloc
44b5b838f1SMarek Vasut	  support is needed for the MMC framework operation with this option
45b5b838f1SMarek Vasut	  enabled. The framework supports exactly one MMC device and exactly
46b5b838f1SMarek Vasut	  one MMC driver. The MMC driver can be adjusted to avoid any malloc
47b5b838f1SMarek Vasut	  operations too, which can remove the need for malloc support in SPL
48b5b838f1SMarek Vasut	  and thus further reduce footprint.
49b5b838f1SMarek Vasut
509d11d12aSMateusz Kulikowskiconfig MSM_SDHCI
519d11d12aSMateusz Kulikowski	bool "Qualcomm SDHCI controller"
524b00bdb7SSimon Glass	depends on DM_MMC && BLK && DM_MMC_OPS
53e1ce61fbSMasahiro Yamada	depends on MMC_SDHCI
549d11d12aSMateusz Kulikowski	help
559d11d12aSMateusz Kulikowski	  Enables support for SDHCI 2.0 controller present on some Qualcomm
569d11d12aSMateusz Kulikowski          Snapdragon devices. This device is compatible with eMMC v4.5 and
579d11d12aSMateusz Kulikowski          SD 3.0 specifications. Both SD and eMMC devices are supported.
589d11d12aSMateusz Kulikowski	  Card-detect gpios are not supported.
599d11d12aSMateusz Kulikowski
60a0d0d86fSWenyou Yangconfig ATMEL_SDHCI
61a0d0d86fSWenyou Yang	bool "Atmel SDHCI controller support"
62a0d0d86fSWenyou Yang	depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
63e1ce61fbSMasahiro Yamada	depends on MMC_SDHCI
64a0d0d86fSWenyou Yang	help
65a0d0d86fSWenyou Yang	  This enables support for the Atmel SDHCI controller, which supports
66a0d0d86fSWenyou Yang	  the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD
67a0d0d86fSWenyou Yang	  Memory Card Specification V3.0, and the SDIO V3.0 specification.
68a0d0d86fSWenyou Yang	  It is compliant with the SD Host Controller Standard V3.0
69a0d0d86fSWenyou Yang	  specification.
70a0d0d86fSWenyou Yang
71a8cb4fb5SSimon Glassconfig ROCKCHIP_DWMMC
72a8cb4fb5SSimon Glass	bool "Rockchip SD/MMC controller support"
73a8cb4fb5SSimon Glass	depends on DM_MMC && OF_CONTROL
74a8cb4fb5SSimon Glass	help
75a8cb4fb5SSimon Glass	  This enables support for the Rockchip SD/MMM controller, which is
76a8cb4fb5SSimon Glass	  based on Designware IP. The device is compatible with at least
77a8cb4fb5SSimon Glass	  SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
78a8cb4fb5SSimon Glass	  as removeable SD and micro-SD cards.
79a8cb4fb5SSimon Glass
8072d42badSNobuhiro Iwamatsuconfig SH_SDHI
8172d42badSNobuhiro Iwamatsu	bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
8272d42badSNobuhiro Iwamatsu	depends on RMOBILE
8372d42badSNobuhiro Iwamatsu	help
8472d42badSNobuhiro Iwamatsu	  Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
8572d42badSNobuhiro Iwamatsu
86102142c9SAndrei Pistiricaconfig PIC32_SDHCI
87102142c9SAndrei Pistirica	bool "Microchip PIC32 on-chip SDHCI support"
88102142c9SAndrei Pistirica	depends on DM_MMC && MACH_PIC32
89e1ce61fbSMasahiro Yamada	depends on MMC_SDHCI
90102142c9SAndrei Pistirica	help
91102142c9SAndrei Pistirica	  Support for Microchip PIC32 SDHCI controller.
92102142c9SAndrei Pistirica
93ce0335f2SMichal Simekconfig ZYNQ_SDHCI
94ce0335f2SMichal Simek	bool "Arasan SDHCI controller support"
959c4132b5SMichal Simek	depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
96e1ce61fbSMasahiro Yamada	depends on MMC_SDHCI
97ce0335f2SMichal Simek	help
98ce0335f2SMichal Simek	  Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
99ce0335f2SMichal Simek
10079c83065SKever Yangconfig ROCKCHIP_SDHCI
10179c83065SKever Yang	bool "Arasan SDHCI controller for Rockchip support"
10279c83065SKever Yang	depends on DM_MMC && BLK && DM_MMC_OPS
103e1ce61fbSMasahiro Yamada	depends on MMC_SDHCI
10479c83065SKever Yang	help
10579c83065SKever Yang	  Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
10679c83065SKever Yang
107a111bfbfSMasahiro Yamadaconfig MMC_UNIPHIER
108a111bfbfSMasahiro Yamada	bool "UniPhier SD/MMC Host Controller support"
109a111bfbfSMasahiro Yamada	depends on ARCH_UNIPHIER
11014f47234SMasahiro Yamada	depends on BLK
1113937404fSMasahiro Yamada	select DM_MMC_OPS
112a111bfbfSMasahiro Yamada	help
113a111bfbfSMasahiro Yamada	  This selects support for the SD/MMC Host Controller on UniPhier SoCs.
114a111bfbfSMasahiro Yamada
115f376a3cbSSimon Glassconfig SANDBOX_MMC
116f376a3cbSSimon Glass	bool "Sandbox MMC support"
117f376a3cbSSimon Glass	depends on MMC && SANDBOX
118f376a3cbSSimon Glass	help
119f376a3cbSSimon Glass	  This select a dummy sandbox MMC driver. At present this does nothing
120f376a3cbSSimon Glass	  other than allow sandbox to be build with MMC support. This
121f376a3cbSSimon Glass	  improves build coverage for sandbox and makes it easier to detect
122f376a3cbSSimon Glass	  MMC build errors with sandbox.
123f376a3cbSSimon Glass
124e1ce61fbSMasahiro Yamadaconfig MMC_SDHCI
125e1ce61fbSMasahiro Yamada	bool "Secure Digital Host Controller Interface support"
126e1ce61fbSMasahiro Yamada	help
127e1ce61fbSMasahiro Yamada	  This selects the generic Secure Digital Host Controller Interface.
128e1ce61fbSMasahiro Yamada	  It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
129e1ce61fbSMasahiro Yamada	  and Toshiba(R). Most controllers found in laptops are of this type.
130e1ce61fbSMasahiro Yamada
131e1ce61fbSMasahiro Yamada	  If you have a controller with this interface, say Y here.
132e1ce61fbSMasahiro Yamada
133e1ce61fbSMasahiro Yamada	  If unsure, say N.
134e1ce61fbSMasahiro Yamada
1353d3a74ccSMasahiro Yamadaconfig MMC_SDHCI_IO_ACCESSORS
1363d3a74ccSMasahiro Yamada	bool
1373d3a74ccSMasahiro Yamada	depends on MMC_SDHCI
1383d3a74ccSMasahiro Yamada	help
1393d3a74ccSMasahiro Yamada	  This is silent Kconfig symbol that is selected by the drivers that
1403d3a74ccSMasahiro Yamada	  need to overwrite SDHCI IO memory accessors.
1413d3a74ccSMasahiro Yamada
14245a68fe2SMasahiro Yamadaconfig MMC_SDHCI_SDMA
14345a68fe2SMasahiro Yamada	bool "Support SDHCI SDMA"
14445a68fe2SMasahiro Yamada	depends on MMC_SDHCI
14545a68fe2SMasahiro Yamada	help
14645a68fe2SMasahiro Yamada	  This enables support for the SDMA (Single Operation DMA) defined
14745a68fe2SMasahiro Yamada	  in the SD Host Controller Standard Specification Version 1.00 .
14845a68fe2SMasahiro Yamada
14945a68fe2SMasahiro Yamadaconfig MMC_SDHCI_BCM2835
15045a68fe2SMasahiro Yamada	tristate "SDHCI support for the BCM2835 SD/MMC Controller"
15145a68fe2SMasahiro Yamada	depends on ARCH_BCM283X
15245a68fe2SMasahiro Yamada	depends on MMC_SDHCI
1533d3a74ccSMasahiro Yamada	select MMC_SDHCI_IO_ACCESSORS
15445a68fe2SMasahiro Yamada	help
15545a68fe2SMasahiro Yamada	  This selects the BCM2835 SD/MMC controller.
15645a68fe2SMasahiro Yamada
15745a68fe2SMasahiro Yamada	  If you have a BCM2835 platform with SD or MMC devices,
15845a68fe2SMasahiro Yamada	  say Y here.
15945a68fe2SMasahiro Yamada
16045a68fe2SMasahiro Yamada	  If unsure, say N.
16145a68fe2SMasahiro Yamada
162*e5e7a7c2SMasahiro Yamadaconfig MMC_SDHCI_CADENCE
163*e5e7a7c2SMasahiro Yamada	bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
164*e5e7a7c2SMasahiro Yamada	depends on BLK && DM_MMC_OPS
165*e5e7a7c2SMasahiro Yamada	depends on MMC_SDHCI
166*e5e7a7c2SMasahiro Yamada	depends on OF_CONTROL
167*e5e7a7c2SMasahiro Yamada	help
168*e5e7a7c2SMasahiro Yamada	  This selects the Cadence SD/SDIO/eMMC driver.
169*e5e7a7c2SMasahiro Yamada
170*e5e7a7c2SMasahiro Yamada	  If you have a controller with this interface, say Y here.
171*e5e7a7c2SMasahiro Yamada
172*e5e7a7c2SMasahiro Yamada	  If unsure, say N.
173*e5e7a7c2SMasahiro Yamada
17445a68fe2SMasahiro Yamadaconfig MMC_SDHCI_KONA
17545a68fe2SMasahiro Yamada	bool "SDHCI support on Broadcom KONA platform"
17645a68fe2SMasahiro Yamada	depends on MMC_SDHCI
17745a68fe2SMasahiro Yamada	help
17845a68fe2SMasahiro Yamada	  This selects the Broadcom Kona Secure Digital Host Controller
17945a68fe2SMasahiro Yamada	  Interface(SDHCI) support.
18045a68fe2SMasahiro Yamada	  This is used in Broadcom mobile SoCs.
18145a68fe2SMasahiro Yamada
18245a68fe2SMasahiro Yamada	  If you have a controller with this interface, say Y here.
18345a68fe2SMasahiro Yamada
18445a68fe2SMasahiro Yamadaconfig MMC_SDHCI_MV
18545a68fe2SMasahiro Yamada	bool "SDHCI support on Marvell platform"
18645a68fe2SMasahiro Yamada	depends on ARCH_MVEBU
18745a68fe2SMasahiro Yamada	depends on MMC_SDHCI
18845a68fe2SMasahiro Yamada	help
18945a68fe2SMasahiro Yamada	  This selects the Secure Digital Host Controller Interface on
19045a68fe2SMasahiro Yamada	  Marvell platform.
19145a68fe2SMasahiro Yamada
19245a68fe2SMasahiro Yamada	  If you have a controller with this interface, say Y here.
19345a68fe2SMasahiro Yamada
19445a68fe2SMasahiro Yamada	  If unsure, say N.
19545a68fe2SMasahiro Yamada
19645a68fe2SMasahiro Yamadaconfig MMC_SDHCI_S5P
19745a68fe2SMasahiro Yamada	bool "SDHCI support on Samsung S5P SoC"
19845a68fe2SMasahiro Yamada	depends on MMC_SDHCI
19945a68fe2SMasahiro Yamada	help
20045a68fe2SMasahiro Yamada	  This selects the Secure Digital Host Controller Interface (SDHCI)
20145a68fe2SMasahiro Yamada	  on Samsung S5P SoCs.
20245a68fe2SMasahiro Yamada
20345a68fe2SMasahiro Yamada	  If you have a controller with this interface, say Y here.
20445a68fe2SMasahiro Yamada
20545a68fe2SMasahiro Yamada	  If unsure, say N.
20645a68fe2SMasahiro Yamada
20745a68fe2SMasahiro Yamadaconfig MMC_SDHCI_SPEAR
20845a68fe2SMasahiro Yamada	bool "SDHCI support on ST SPEAr platform"
20945a68fe2SMasahiro Yamada	depends on MMC_SDHCI
21045a68fe2SMasahiro Yamada	help
21145a68fe2SMasahiro Yamada	  This selects the Secure Digital Host Controller Interface (SDHCI)
21245a68fe2SMasahiro Yamada	  often referrered to as the HSMMC block in some of the ST SPEAR range
21345a68fe2SMasahiro Yamada	  of SoC
21445a68fe2SMasahiro Yamada
21545a68fe2SMasahiro Yamada	  If you have a controller with this interface, say Y here.
21645a68fe2SMasahiro Yamada
21745a68fe2SMasahiro Yamada	  If unsure, say N.
21845a68fe2SMasahiro Yamada
219e298c46aSMasahiro Yamadaendif
220e298c46aSMasahiro Yamada
22172d42badSNobuhiro Iwamatsuendmenu
222c01e4a1aSYork Sun
223c01e4a1aSYork Sunconfig SYS_FSL_ERRATUM_ESDHC111
224c01e4a1aSYork Sun	bool
225c01e4a1aSYork Sun
226c01e4a1aSYork Sunconfig SYS_FSL_ERRATUM_ESDHC13
227c01e4a1aSYork Sun	bool
228c01e4a1aSYork Sun
229c01e4a1aSYork Sunconfig SYS_FSL_ERRATUM_ESDHC135
230c01e4a1aSYork Sun	bool
231c01e4a1aSYork Sun
232c01e4a1aSYork Sunconfig SYS_FSL_ERRATUM_ESDHC_A001
233c01e4a1aSYork Sun	bool
234