Nobuhiro Iwamatsu | 3ec5f86 | 2014-12-17 08:03:00 +0900 | [diff] [blame] | 1 | menu "MMC Host controller Support" |
| 2 | |
Maxime Ripard | 4f78074 | 2015-10-15 22:04:05 +0200 | [diff] [blame] | 3 | config MMC |
Masahiro Yamada | a5ed4be | 2016-12-07 22:10:26 +0900 | [diff] [blame] | 4 | bool "MMC/SD/SDIO card support" |
| 5 | default ARM || PPC || SANDBOX |
Maxime Ripard | 4f78074 | 2015-10-15 22:04:05 +0200 | [diff] [blame] | 6 | help |
Masahiro Yamada | a5ed4be | 2016-12-07 22:10:26 +0900 | [diff] [blame] | 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. |
Maxime Ripard | 4f78074 | 2015-10-15 22:04:05 +0200 | [diff] [blame] | 12 | |
Masahiro Yamada | 7bbebd1 | 2017-01-30 19:46:49 +0900 | [diff] [blame] | 13 | config GENERIC_MMC |
| 14 | bool "Generic MMC driver framework" |
| 15 | default MMC |
| 16 | |
Simon Glass | 1e8eb1b | 2015-06-23 15:38:48 -0600 | [diff] [blame] | 17 | config DM_MMC |
| 18 | bool "Enable MMC controllers using Driver Model" |
| 19 | depends on DM |
| 20 | help |
Robert P. J. Day | 8d56db9 | 2016-07-15 13:44:45 -0400 | [diff] [blame] | 21 | This enables the MultiMediaCard (MMC) uclass which supports MMC and |
Simon Glass | 1e8eb1b | 2015-06-23 15:38:48 -0600 | [diff] [blame] | 22 | Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.) |
| 23 | and non-removable (e.g. eMMC chip) devices are supported. These |
| 24 | appear as block devices in U-Boot and can support filesystems such |
| 25 | as EXT4 and FAT. |
| 26 | |
Simon Glass | 394dfc0 | 2016-06-12 23:30:22 -0600 | [diff] [blame] | 27 | config DM_MMC_OPS |
| 28 | bool "Support MMC controller operations using Driver Model" |
| 29 | depends on DM_MMC |
Simon Glass | 0bf1f49 | 2016-10-01 14:43:19 -0600 | [diff] [blame] | 30 | default y if DM_MMC |
Simon Glass | 394dfc0 | 2016-06-12 23:30:22 -0600 | [diff] [blame] | 31 | help |
| 32 | Driver model provides a means of supporting device operations. This |
| 33 | option moves MMC operations under the control of driver model. The |
| 34 | option will be removed as soon as all DM_MMC drivers use it, as it |
| 35 | will the only supported behaviour. |
| 36 | |
Masahiro Yamada | e8b9972 | 2016-12-07 22:10:27 +0900 | [diff] [blame] | 37 | if MMC |
| 38 | |
Marek Vasut | f537e39 | 2016-12-01 02:06:33 +0100 | [diff] [blame] | 39 | config SPL_MMC_TINY |
| 40 | bool "Tiny MMC framework in SPL" |
| 41 | help |
| 42 | Enable MMC framework tinification support. This option is useful if |
| 43 | if your SPL is extremely size constrained. Heed the warning, enable |
| 44 | this option if and only if you know exactly what you are doing, if |
| 45 | you are reading this help text, you most likely have no idea :-) |
| 46 | |
| 47 | The MMC framework is reduced to bare minimum to be useful. No malloc |
| 48 | support is needed for the MMC framework operation with this option |
| 49 | enabled. The framework supports exactly one MMC device and exactly |
| 50 | one MMC driver. The MMC driver can be adjusted to avoid any malloc |
| 51 | operations too, which can remove the need for malloc support in SPL |
| 52 | and thus further reduce footprint. |
| 53 | |
Mateusz Kulikowski | a00b0c0 | 2016-03-31 23:12:16 +0200 | [diff] [blame] | 54 | config MSM_SDHCI |
| 55 | bool "Qualcomm SDHCI controller" |
Simon Glass | 8612025 | 2016-06-12 23:30:31 -0600 | [diff] [blame] | 56 | depends on DM_MMC && BLK && DM_MMC_OPS |
Masahiro Yamada | 7db8c17 | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 57 | depends on MMC_SDHCI |
Mateusz Kulikowski | a00b0c0 | 2016-03-31 23:12:16 +0200 | [diff] [blame] | 58 | help |
| 59 | Enables support for SDHCI 2.0 controller present on some Qualcomm |
| 60 | Snapdragon devices. This device is compatible with eMMC v4.5 and |
| 61 | SD 3.0 specifications. Both SD and eMMC devices are supported. |
| 62 | Card-detect gpios are not supported. |
| 63 | |
Wenyou Yang | 83e88a4 | 2016-08-10 10:51:05 +0800 | [diff] [blame] | 64 | config ATMEL_SDHCI |
| 65 | bool "Atmel SDHCI controller support" |
| 66 | depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91 |
Masahiro Yamada | 7db8c17 | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 67 | depends on MMC_SDHCI |
Wenyou Yang | 83e88a4 | 2016-08-10 10:51:05 +0800 | [diff] [blame] | 68 | help |
| 69 | This enables support for the Atmel SDHCI controller, which supports |
| 70 | the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD |
| 71 | Memory Card Specification V3.0, and the SDIO V3.0 specification. |
| 72 | It is compliant with the SD Host Controller Standard V3.0 |
| 73 | specification. |
| 74 | |
Masahiro Yamada | b2c8868 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 75 | config MMC_DAVINCI |
| 76 | bool "TI DAVINCI Multimedia Card Interface support" |
| 77 | depends on ARCH_DAVINCI |
| 78 | default y |
| 79 | help |
| 80 | This selects the TI DAVINCI Multimedia card Interface. |
| 81 | If you have an DAVINCI board with a Multimedia Card slot, |
| 82 | say Y here. If unsure, say N. |
| 83 | |
Masahiro Yamada | 7942e91 | 2017-01-10 13:32:04 +0900 | [diff] [blame] | 84 | config MMC_DW |
| 85 | bool "Synopsys DesignWare Memory Card Interface" |
| 86 | help |
| 87 | This selects support for the Synopsys DesignWare Mobile Storage IP |
| 88 | block, this provides host support for SD and MMC interfaces, in both |
| 89 | PIO, internal DMA mode and external DMA mode. |
| 90 | |
Masahiro Yamada | f1ad728 | 2017-01-10 13:32:05 +0900 | [diff] [blame] | 91 | config MMC_DW_EXYNOS |
| 92 | bool "Exynos specific extensions for Synopsys DW Memory Card Interface" |
| 93 | depends on ARCH_EXYNOS |
| 94 | depends on MMC_DW |
| 95 | default y |
| 96 | help |
| 97 | This selects support for Samsung Exynos SoC specific extensions to the |
| 98 | Synopsys DesignWare Memory Card Interface driver. Select this option |
| 99 | for platforms based on Exynos4 and Exynos5 SoC's. |
| 100 | |
| 101 | config MMC_DW_K3 |
| 102 | bool "K3 specific extensions for Synopsys DW Memory Card Interface" |
| 103 | depends on MMC_DW |
| 104 | help |
| 105 | This selects support for Hisilicon K3 SoC specific extensions to the |
| 106 | Synopsys DesignWare Memory Card Interface driver. Select this option |
| 107 | for platforms based on Hisilicon K3 SoC's. |
| 108 | |
Masahiro Yamada | dc607f8 | 2017-01-10 13:32:03 +0900 | [diff] [blame] | 109 | config MMC_DW_ROCKCHIP |
Simon Glass | 4ecaa6d | 2015-08-30 16:55:37 -0600 | [diff] [blame] | 110 | bool "Rockchip SD/MMC controller support" |
| 111 | depends on DM_MMC && OF_CONTROL |
Masahiro Yamada | 7942e91 | 2017-01-10 13:32:04 +0900 | [diff] [blame] | 112 | depends on MMC_DW |
Simon Glass | 4ecaa6d | 2015-08-30 16:55:37 -0600 | [diff] [blame] | 113 | help |
| 114 | This enables support for the Rockchip SD/MMM controller, which is |
| 115 | based on Designware IP. The device is compatible with at least |
| 116 | SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well |
| 117 | as removeable SD and micro-SD cards. |
| 118 | |
Masahiro Yamada | f1ad728 | 2017-01-10 13:32:05 +0900 | [diff] [blame] | 119 | config MMC_DW_SOCFPGA |
| 120 | bool "SOCFPGA specific extensions for Synopsys DW Memory Card Interface" |
| 121 | depends on ARCH_SOCFPGA |
| 122 | depends on MMC_DW |
| 123 | default y |
| 124 | help |
| 125 | This selects support for Altera SOCFPGA specific extensions to the |
| 126 | Synopsys DesignWare Memory Card Interface driver. Select this option |
| 127 | for platforms based on Altera SOCFPGA. |
| 128 | |
Masahiro Yamada | b2c8868 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 129 | config MMC_MXC |
| 130 | bool "Freescale i.MX21/27/31 or MPC512x Multimedia Card support" |
| 131 | help |
| 132 | This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x |
| 133 | Multimedia Card Interface. If you have an i.MX or MPC512x platform |
| 134 | with a Multimedia Card slot, say Y here. |
| 135 | |
| 136 | If unsure, say N. |
| 137 | |
| 138 | config MMC_MXS |
| 139 | bool "Freescale MXS Multimedia Card Interface support" |
| 140 | help |
| 141 | This selects the Freescale SSP MMC controller found on MXS based |
| 142 | platforms like mx23/28. |
| 143 | |
| 144 | If unsure, say N. |
| 145 | |
| 146 | config MMC_OMAP_HS |
| 147 | bool "TI OMAP High Speed Multimedia Card Interface support" |
| 148 | help |
| 149 | This selects the TI OMAP High Speed Multimedia card Interface. |
| 150 | If you have an omap2plus board with a Multimedia Card slot, |
| 151 | say Y here. |
| 152 | |
| 153 | If unsure, say N. |
| 154 | |
Nobuhiro Iwamatsu | 3ec5f86 | 2014-12-17 08:03:00 +0900 | [diff] [blame] | 155 | config SH_SDHI |
| 156 | bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support" |
| 157 | depends on RMOBILE |
| 158 | help |
| 159 | Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform |
| 160 | |
Andrei Pistirica | be03317 | 2016-01-28 15:30:18 +0530 | [diff] [blame] | 161 | config PIC32_SDHCI |
| 162 | bool "Microchip PIC32 on-chip SDHCI support" |
| 163 | depends on DM_MMC && MACH_PIC32 |
Masahiro Yamada | 7db8c17 | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 164 | depends on MMC_SDHCI |
Andrei Pistirica | be03317 | 2016-01-28 15:30:18 +0530 | [diff] [blame] | 165 | help |
| 166 | Support for Microchip PIC32 SDHCI controller. |
| 167 | |
Masahiro Yamada | a0cfcc0 | 2016-02-18 19:52:48 +0900 | [diff] [blame] | 168 | config MMC_UNIPHIER |
| 169 | bool "UniPhier SD/MMC Host Controller support" |
| 170 | depends on ARCH_UNIPHIER |
Masahiro Yamada | c232653 | 2016-12-30 23:20:14 +0900 | [diff] [blame] | 171 | depends on BLK && DM_MMC_OPS |
| 172 | depends on OF_CONTROL |
Masahiro Yamada | a0cfcc0 | 2016-02-18 19:52:48 +0900 | [diff] [blame] | 173 | help |
| 174 | This selects support for the SD/MMC Host Controller on UniPhier SoCs. |
| 175 | |
Masahiro Yamada | 54f7cfc | 2017-01-30 19:46:50 +0900 | [diff] [blame] | 176 | config MMC_SANDBOX |
Simon Glass | f9eebac | 2016-05-01 13:52:42 -0600 | [diff] [blame] | 177 | bool "Sandbox MMC support" |
Masahiro Yamada | 54f7cfc | 2017-01-30 19:46:50 +0900 | [diff] [blame] | 178 | depends on SANDBOX |
| 179 | depends on BLK && DM_MMC_OPS && OF_CONTROL |
Simon Glass | f9eebac | 2016-05-01 13:52:42 -0600 | [diff] [blame] | 180 | help |
| 181 | This select a dummy sandbox MMC driver. At present this does nothing |
| 182 | other than allow sandbox to be build with MMC support. This |
| 183 | improves build coverage for sandbox and makes it easier to detect |
| 184 | MMC build errors with sandbox. |
| 185 | |
Masahiro Yamada | 7db8c17 | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 186 | config MMC_SDHCI |
| 187 | bool "Secure Digital Host Controller Interface support" |
| 188 | help |
| 189 | This selects the generic Secure Digital Host Controller Interface. |
| 190 | It is used by manufacturers such as Texas Instruments(R), Ricoh(R) |
| 191 | and Toshiba(R). Most controllers found in laptops are of this type. |
| 192 | |
| 193 | If you have a controller with this interface, say Y here. |
| 194 | |
| 195 | If unsure, say N. |
| 196 | |
Masahiro Yamada | bfd110f | 2016-12-07 22:10:30 +0900 | [diff] [blame] | 197 | config MMC_SDHCI_IO_ACCESSORS |
| 198 | bool |
| 199 | depends on MMC_SDHCI |
| 200 | help |
| 201 | This is silent Kconfig symbol that is selected by the drivers that |
| 202 | need to overwrite SDHCI IO memory accessors. |
| 203 | |
Masahiro Yamada | 124f6ce | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 204 | config MMC_SDHCI_SDMA |
| 205 | bool "Support SDHCI SDMA" |
| 206 | depends on MMC_SDHCI |
| 207 | help |
| 208 | This enables support for the SDMA (Single Operation DMA) defined |
| 209 | in the SD Host Controller Standard Specification Version 1.00 . |
| 210 | |
| 211 | config MMC_SDHCI_BCM2835 |
| 212 | tristate "SDHCI support for the BCM2835 SD/MMC Controller" |
| 213 | depends on ARCH_BCM283X |
| 214 | depends on MMC_SDHCI |
Masahiro Yamada | bfd110f | 2016-12-07 22:10:30 +0900 | [diff] [blame] | 215 | select MMC_SDHCI_IO_ACCESSORS |
Masahiro Yamada | 124f6ce | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 216 | help |
| 217 | This selects the BCM2835 SD/MMC controller. |
| 218 | |
| 219 | If you have a BCM2835 platform with SD or MMC devices, |
| 220 | say Y here. |
| 221 | |
| 222 | If unsure, say N. |
| 223 | |
Masahiro Yamada | dcbc443 | 2016-12-30 22:41:46 +0900 | [diff] [blame] | 224 | config MMC_SDHCI_CADENCE |
| 225 | bool "SDHCI support for the Cadence SD/SDIO/eMMC controller" |
| 226 | depends on BLK && DM_MMC_OPS |
| 227 | depends on MMC_SDHCI |
| 228 | depends on OF_CONTROL |
| 229 | help |
| 230 | This selects the Cadence SD/SDIO/eMMC driver. |
| 231 | |
| 232 | If you have a controller with this interface, say Y here. |
| 233 | |
| 234 | If unsure, say N. |
| 235 | |
Masahiro Yamada | 124f6ce | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 236 | config MMC_SDHCI_KONA |
| 237 | bool "SDHCI support on Broadcom KONA platform" |
| 238 | depends on MMC_SDHCI |
| 239 | help |
| 240 | This selects the Broadcom Kona Secure Digital Host Controller |
| 241 | Interface(SDHCI) support. |
| 242 | This is used in Broadcom mobile SoCs. |
| 243 | |
| 244 | If you have a controller with this interface, say Y here. |
| 245 | |
| 246 | config MMC_SDHCI_MV |
| 247 | bool "SDHCI support on Marvell platform" |
| 248 | depends on ARCH_MVEBU |
| 249 | depends on MMC_SDHCI |
| 250 | help |
| 251 | This selects the Secure Digital Host Controller Interface on |
| 252 | Marvell platform. |
| 253 | |
| 254 | If you have a controller with this interface, say Y here. |
| 255 | |
| 256 | If unsure, say N. |
| 257 | |
Masahiro Yamada | babe026 | 2017-01-30 19:46:52 +0900 | [diff] [blame^] | 258 | config MMC_SDHCI_ROCKCHIP |
| 259 | bool "Arasan SDHCI controller for Rockchip support" |
| 260 | depends on ARCH_ROCKCHIP |
| 261 | depends on DM_MMC && BLK && DM_MMC_OPS |
| 262 | depends on MMC_SDHCI |
| 263 | help |
| 264 | Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform |
| 265 | |
Masahiro Yamada | 124f6ce | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 266 | config MMC_SDHCI_S5P |
| 267 | bool "SDHCI support on Samsung S5P SoC" |
| 268 | depends on MMC_SDHCI |
| 269 | help |
| 270 | This selects the Secure Digital Host Controller Interface (SDHCI) |
| 271 | on Samsung S5P SoCs. |
| 272 | |
| 273 | If you have a controller with this interface, say Y here. |
| 274 | |
| 275 | If unsure, say N. |
| 276 | |
| 277 | config MMC_SDHCI_SPEAR |
| 278 | bool "SDHCI support on ST SPEAr platform" |
| 279 | depends on MMC_SDHCI |
| 280 | help |
| 281 | This selects the Secure Digital Host Controller Interface (SDHCI) |
| 282 | often referrered to as the HSMMC block in some of the ST SPEAR range |
| 283 | of SoC |
| 284 | |
| 285 | If you have a controller with this interface, say Y here. |
| 286 | |
| 287 | If unsure, say N. |
| 288 | |
Stefan Roese | 121fc56 | 2016-12-09 15:03:28 +0100 | [diff] [blame] | 289 | config MMC_SDHCI_XENON |
| 290 | bool "SDHCI support for the Xenon SDHCI controller" |
| 291 | depends on MMC_SDHCI && DM_MMC && OF_CONTROL |
| 292 | help |
| 293 | Support for Xenon SDHCI host controller on Marvell Armada 3700 |
| 294 | 7k/8k ARM SoCs platforms |
| 295 | |
| 296 | If you have a controller with this interface, say Y here. |
| 297 | |
| 298 | If unsure, say N. |
| 299 | |
Masahiro Yamada | b2c8868 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 300 | config MMC_SDHCI_TEGRA |
| 301 | bool "SDHCI platform support for the Tegra SD/MMC Controller" |
| 302 | depends on TEGRA |
| 303 | default y |
| 304 | help |
| 305 | This selects the Tegra SD/MMC controller. If you have a Tegra |
| 306 | platform with SD or MMC devices, say Y here. |
| 307 | |
| 308 | If unsure, say N. |
| 309 | |
Masahiro Yamada | 168c57d | 2017-01-30 19:46:51 +0900 | [diff] [blame] | 310 | config MMC_SDHCI_ZYNQ |
| 311 | bool "Arasan SDHCI controller support" |
| 312 | depends on ARCH_ZYNQ || ARCH_ZYNQMP |
| 313 | depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS |
| 314 | depends on MMC_SDHCI |
| 315 | help |
| 316 | Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform |
| 317 | |
Masahiro Yamada | b2c8868 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 318 | config MMC_SUNXI |
| 319 | bool "Allwinner sunxi SD/MMC Host Controller support" |
Masahiro Yamada | 41ff529 | 2017-01-12 12:16:15 +0900 | [diff] [blame] | 320 | depends on ARCH_SUNXI && !UART0_PORT_F |
Masahiro Yamada | b2c8868 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 321 | default y |
| 322 | help |
| 323 | This selects support for the SD/MMC Host Controller on |
| 324 | Allwinner sunxi SoCs. |
| 325 | |
Masahiro Yamada | e8b9972 | 2016-12-07 22:10:27 +0900 | [diff] [blame] | 326 | endif |
| 327 | |
Nobuhiro Iwamatsu | 3ec5f86 | 2014-12-17 08:03:00 +0900 | [diff] [blame] | 328 | endmenu |
York Sun | 097e360 | 2016-12-28 08:43:42 -0800 | [diff] [blame] | 329 | |
| 330 | config SYS_FSL_ERRATUM_ESDHC111 |
| 331 | bool |
| 332 | |
| 333 | config SYS_FSL_ERRATUM_ESDHC13 |
| 334 | bool |
| 335 | |
| 336 | config SYS_FSL_ERRATUM_ESDHC135 |
| 337 | bool |
| 338 | |
| 339 | config SYS_FSL_ERRATUM_ESDHC_A001 |
| 340 | bool |