Nobuhiro Iwamatsu | 72d42ba | 2014-12-17 08:03:00 +0900 | [diff] [blame] | 1 | menu "MMC Host controller Support" |
| 2 | |
Maxime Ripard | 7a777f6 | 2015-10-15 22:04:05 +0200 | [diff] [blame] | 3 | config MMC |
Masahiro Yamada | c272699 | 2016-12-07 22:10:26 +0900 | [diff] [blame] | 4 | bool "MMC/SD/SDIO card support" |
| 5 | default ARM || PPC || SANDBOX |
Maxime Ripard | 7a777f6 | 2015-10-15 22:04:05 +0200 | [diff] [blame] | 6 | help |
Masahiro Yamada | c272699 | 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 | 7a777f6 | 2015-10-15 22:04:05 +0200 | [diff] [blame] | 12 | |
Simon Glass | e7ecf7c | 2015-06-23 15:38:48 -0600 | [diff] [blame] | 13 | config DM_MMC |
| 14 | bool "Enable MMC controllers using Driver Model" |
| 15 | depends on DM |
| 16 | help |
Robert P. J. Day | 62a3b7d | 2016-07-15 13:44:45 -0400 | [diff] [blame] | 17 | This enables the MultiMediaCard (MMC) uclass which supports MMC and |
Simon Glass | e7ecf7c | 2015-06-23 15:38:48 -0600 | [diff] [blame] | 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 | |
Simon Glass | 8ca51e5 | 2016-06-12 23:30:22 -0600 | [diff] [blame] | 23 | config DM_MMC_OPS |
| 24 | bool "Support MMC controller operations using Driver Model" |
| 25 | depends on DM_MMC |
Simon Glass | 252788b | 2016-10-01 14:43:19 -0600 | [diff] [blame] | 26 | default y if DM_MMC |
Simon Glass | 8ca51e5 | 2016-06-12 23:30:22 -0600 | [diff] [blame] | 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 | |
Masahiro Yamada | e298c46 | 2016-12-07 22:10:27 +0900 | [diff] [blame] | 33 | if MMC |
| 34 | |
Marek Vasut | b5b838f | 2016-12-01 02:06:33 +0100 | [diff] [blame] | 35 | config 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 | |
Mateusz Kulikowski | 9d11d12 | 2016-03-31 23:12:16 +0200 | [diff] [blame] | 50 | config MSM_SDHCI |
| 51 | bool "Qualcomm SDHCI controller" |
Simon Glass | 4b00bdb | 2016-06-12 23:30:31 -0600 | [diff] [blame] | 52 | depends on DM_MMC && BLK && DM_MMC_OPS |
Masahiro Yamada | e1ce61f | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 53 | depends on MMC_SDHCI |
Mateusz Kulikowski | 9d11d12 | 2016-03-31 23:12:16 +0200 | [diff] [blame] | 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 | |
Wenyou Yang | a0d0d86 | 2016-08-10 10:51:05 +0800 | [diff] [blame] | 60 | config ATMEL_SDHCI |
| 61 | bool "Atmel SDHCI controller support" |
| 62 | depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91 |
Masahiro Yamada | e1ce61f | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 63 | depends on MMC_SDHCI |
Wenyou Yang | a0d0d86 | 2016-08-10 10:51:05 +0800 | [diff] [blame] | 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 | |
Masahiro Yamada | 1d2c050 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 71 | config MMC_DAVINCI |
| 72 | bool "TI DAVINCI Multimedia Card Interface support" |
| 73 | depends on ARCH_DAVINCI |
| 74 | default y |
| 75 | help |
| 76 | This selects the TI DAVINCI Multimedia card Interface. |
| 77 | If you have an DAVINCI board with a Multimedia Card slot, |
| 78 | say Y here. If unsure, say N. |
| 79 | |
Masahiro Yamada | 55ed3b4 | 2017-01-10 13:32:04 +0900 | [diff] [blame] | 80 | config MMC_DW |
| 81 | bool "Synopsys DesignWare Memory Card Interface" |
| 82 | help |
| 83 | This selects support for the Synopsys DesignWare Mobile Storage IP |
| 84 | block, this provides host support for SD and MMC interfaces, in both |
| 85 | PIO, internal DMA mode and external DMA mode. |
| 86 | |
Masahiro Yamada | ae4c81e | 2017-01-10 13:32:05 +0900 | [diff] [blame] | 87 | config MMC_DW_EXYNOS |
| 88 | bool "Exynos specific extensions for Synopsys DW Memory Card Interface" |
| 89 | depends on ARCH_EXYNOS |
| 90 | depends on MMC_DW |
| 91 | default y |
| 92 | help |
| 93 | This selects support for Samsung Exynos SoC specific extensions to the |
| 94 | Synopsys DesignWare Memory Card Interface driver. Select this option |
| 95 | for platforms based on Exynos4 and Exynos5 SoC's. |
| 96 | |
| 97 | config MMC_DW_K3 |
| 98 | bool "K3 specific extensions for Synopsys DW Memory Card Interface" |
| 99 | depends on MMC_DW |
| 100 | help |
| 101 | This selects support for Hisilicon K3 SoC specific extensions to the |
| 102 | Synopsys DesignWare Memory Card Interface driver. Select this option |
| 103 | for platforms based on Hisilicon K3 SoC's. |
| 104 | |
Masahiro Yamada | fed4408 | 2017-01-10 13:32:03 +0900 | [diff] [blame] | 105 | config MMC_DW_ROCKCHIP |
Simon Glass | a8cb4fb | 2015-08-30 16:55:37 -0600 | [diff] [blame] | 106 | bool "Rockchip SD/MMC controller support" |
| 107 | depends on DM_MMC && OF_CONTROL |
Masahiro Yamada | 55ed3b4 | 2017-01-10 13:32:04 +0900 | [diff] [blame] | 108 | depends on MMC_DW |
Simon Glass | a8cb4fb | 2015-08-30 16:55:37 -0600 | [diff] [blame] | 109 | help |
| 110 | This enables support for the Rockchip SD/MMM controller, which is |
| 111 | based on Designware IP. The device is compatible with at least |
| 112 | SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well |
| 113 | as removeable SD and micro-SD cards. |
| 114 | |
Masahiro Yamada | ae4c81e | 2017-01-10 13:32:05 +0900 | [diff] [blame] | 115 | config MMC_DW_SOCFPGA |
| 116 | bool "SOCFPGA specific extensions for Synopsys DW Memory Card Interface" |
| 117 | depends on ARCH_SOCFPGA |
| 118 | depends on MMC_DW |
| 119 | default y |
| 120 | help |
| 121 | This selects support for Altera SOCFPGA specific extensions to the |
| 122 | Synopsys DesignWare Memory Card Interface driver. Select this option |
| 123 | for platforms based on Altera SOCFPGA. |
| 124 | |
Masahiro Yamada | 1d2c050 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 125 | config MMC_MXC |
| 126 | bool "Freescale i.MX21/27/31 or MPC512x Multimedia Card support" |
| 127 | help |
| 128 | This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x |
| 129 | Multimedia Card Interface. If you have an i.MX or MPC512x platform |
| 130 | with a Multimedia Card slot, say Y here. |
| 131 | |
| 132 | If unsure, say N. |
| 133 | |
| 134 | config MMC_MXS |
| 135 | bool "Freescale MXS Multimedia Card Interface support" |
| 136 | help |
| 137 | This selects the Freescale SSP MMC controller found on MXS based |
| 138 | platforms like mx23/28. |
| 139 | |
| 140 | If unsure, say N. |
| 141 | |
| 142 | config MMC_OMAP_HS |
| 143 | bool "TI OMAP High Speed Multimedia Card Interface support" |
| 144 | help |
| 145 | This selects the TI OMAP High Speed Multimedia card Interface. |
| 146 | If you have an omap2plus board with a Multimedia Card slot, |
| 147 | say Y here. |
| 148 | |
| 149 | If unsure, say N. |
| 150 | |
Nobuhiro Iwamatsu | 72d42ba | 2014-12-17 08:03:00 +0900 | [diff] [blame] | 151 | config SH_SDHI |
| 152 | bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support" |
| 153 | depends on RMOBILE |
| 154 | help |
| 155 | Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform |
| 156 | |
Andrei Pistirica | 102142c | 2016-01-28 15:30:18 +0530 | [diff] [blame] | 157 | config PIC32_SDHCI |
| 158 | bool "Microchip PIC32 on-chip SDHCI support" |
| 159 | depends on DM_MMC && MACH_PIC32 |
Masahiro Yamada | e1ce61f | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 160 | depends on MMC_SDHCI |
Andrei Pistirica | 102142c | 2016-01-28 15:30:18 +0530 | [diff] [blame] | 161 | help |
| 162 | Support for Microchip PIC32 SDHCI controller. |
| 163 | |
Michal Simek | ce0335f | 2016-02-04 11:43:40 +0100 | [diff] [blame] | 164 | config ZYNQ_SDHCI |
| 165 | bool "Arasan SDHCI controller support" |
Michal Simek | 9c4132b | 2016-12-15 11:15:49 +0100 | [diff] [blame] | 166 | depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS |
Masahiro Yamada | e1ce61f | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 167 | depends on MMC_SDHCI |
Michal Simek | ce0335f | 2016-02-04 11:43:40 +0100 | [diff] [blame] | 168 | help |
| 169 | Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform |
| 170 | |
Kever Yang | 79c8306 | 2016-07-18 17:00:58 +0800 | [diff] [blame] | 171 | config ROCKCHIP_SDHCI |
| 172 | bool "Arasan SDHCI controller for Rockchip support" |
| 173 | depends on DM_MMC && BLK && DM_MMC_OPS |
Masahiro Yamada | e1ce61f | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 174 | depends on MMC_SDHCI |
Kever Yang | 79c8306 | 2016-07-18 17:00:58 +0800 | [diff] [blame] | 175 | help |
| 176 | Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform |
| 177 | |
Masahiro Yamada | a111bfb | 2016-02-18 19:52:48 +0900 | [diff] [blame] | 178 | config MMC_UNIPHIER |
| 179 | bool "UniPhier SD/MMC Host Controller support" |
| 180 | depends on ARCH_UNIPHIER |
Masahiro Yamada | 9c720c8 | 2016-12-30 23:20:14 +0900 | [diff] [blame] | 181 | depends on BLK && DM_MMC_OPS |
| 182 | depends on OF_CONTROL |
Masahiro Yamada | a111bfb | 2016-02-18 19:52:48 +0900 | [diff] [blame] | 183 | help |
| 184 | This selects support for the SD/MMC Host Controller on UniPhier SoCs. |
| 185 | |
Simon Glass | f376a3c | 2016-05-01 13:52:42 -0600 | [diff] [blame] | 186 | config SANDBOX_MMC |
| 187 | bool "Sandbox MMC support" |
| 188 | depends on MMC && SANDBOX |
| 189 | help |
| 190 | This select a dummy sandbox MMC driver. At present this does nothing |
| 191 | other than allow sandbox to be build with MMC support. This |
| 192 | improves build coverage for sandbox and makes it easier to detect |
| 193 | MMC build errors with sandbox. |
| 194 | |
Masahiro Yamada | e1ce61f | 2016-12-07 22:10:28 +0900 | [diff] [blame] | 195 | config MMC_SDHCI |
| 196 | bool "Secure Digital Host Controller Interface support" |
| 197 | help |
| 198 | This selects the generic Secure Digital Host Controller Interface. |
| 199 | It is used by manufacturers such as Texas Instruments(R), Ricoh(R) |
| 200 | and Toshiba(R). Most controllers found in laptops are of this type. |
| 201 | |
| 202 | If you have a controller with this interface, say Y here. |
| 203 | |
| 204 | If unsure, say N. |
| 205 | |
Masahiro Yamada | 3d3a74c | 2016-12-07 22:10:30 +0900 | [diff] [blame] | 206 | config MMC_SDHCI_IO_ACCESSORS |
| 207 | bool |
| 208 | depends on MMC_SDHCI |
| 209 | help |
| 210 | This is silent Kconfig symbol that is selected by the drivers that |
| 211 | need to overwrite SDHCI IO memory accessors. |
| 212 | |
Masahiro Yamada | 45a68fe | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 213 | config MMC_SDHCI_SDMA |
| 214 | bool "Support SDHCI SDMA" |
| 215 | depends on MMC_SDHCI |
| 216 | help |
| 217 | This enables support for the SDMA (Single Operation DMA) defined |
| 218 | in the SD Host Controller Standard Specification Version 1.00 . |
| 219 | |
| 220 | config MMC_SDHCI_BCM2835 |
| 221 | tristate "SDHCI support for the BCM2835 SD/MMC Controller" |
| 222 | depends on ARCH_BCM283X |
| 223 | depends on MMC_SDHCI |
Masahiro Yamada | 3d3a74c | 2016-12-07 22:10:30 +0900 | [diff] [blame] | 224 | select MMC_SDHCI_IO_ACCESSORS |
Masahiro Yamada | 45a68fe | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 225 | help |
| 226 | This selects the BCM2835 SD/MMC controller. |
| 227 | |
| 228 | If you have a BCM2835 platform with SD or MMC devices, |
| 229 | say Y here. |
| 230 | |
| 231 | If unsure, say N. |
| 232 | |
Masahiro Yamada | e5e7a7c | 2016-12-30 22:41:46 +0900 | [diff] [blame] | 233 | config MMC_SDHCI_CADENCE |
| 234 | bool "SDHCI support for the Cadence SD/SDIO/eMMC controller" |
| 235 | depends on BLK && DM_MMC_OPS |
| 236 | depends on MMC_SDHCI |
| 237 | depends on OF_CONTROL |
| 238 | help |
| 239 | This selects the Cadence SD/SDIO/eMMC driver. |
| 240 | |
| 241 | If you have a controller with this interface, say Y here. |
| 242 | |
| 243 | If unsure, say N. |
| 244 | |
Masahiro Yamada | 45a68fe | 2016-12-07 22:10:29 +0900 | [diff] [blame] | 245 | config MMC_SDHCI_KONA |
| 246 | bool "SDHCI support on Broadcom KONA platform" |
| 247 | depends on MMC_SDHCI |
| 248 | help |
| 249 | This selects the Broadcom Kona Secure Digital Host Controller |
| 250 | Interface(SDHCI) support. |
| 251 | This is used in Broadcom mobile SoCs. |
| 252 | |
| 253 | If you have a controller with this interface, say Y here. |
| 254 | |
| 255 | config MMC_SDHCI_MV |
| 256 | bool "SDHCI support on Marvell platform" |
| 257 | depends on ARCH_MVEBU |
| 258 | depends on MMC_SDHCI |
| 259 | help |
| 260 | This selects the Secure Digital Host Controller Interface on |
| 261 | Marvell platform. |
| 262 | |
| 263 | If you have a controller with this interface, say Y here. |
| 264 | |
| 265 | If unsure, say N. |
| 266 | |
| 267 | config MMC_SDHCI_S5P |
| 268 | bool "SDHCI support on Samsung S5P SoC" |
| 269 | depends on MMC_SDHCI |
| 270 | help |
| 271 | This selects the Secure Digital Host Controller Interface (SDHCI) |
| 272 | on Samsung S5P SoCs. |
| 273 | |
| 274 | If you have a controller with this interface, say Y here. |
| 275 | |
| 276 | If unsure, say N. |
| 277 | |
| 278 | config MMC_SDHCI_SPEAR |
| 279 | bool "SDHCI support on ST SPEAr platform" |
| 280 | depends on MMC_SDHCI |
| 281 | help |
| 282 | This selects the Secure Digital Host Controller Interface (SDHCI) |
| 283 | often referrered to as the HSMMC block in some of the ST SPEAR range |
| 284 | of SoC |
| 285 | |
| 286 | If you have a controller with this interface, say Y here. |
| 287 | |
| 288 | If unsure, say N. |
| 289 | |
Stefan Roese | b6acb5f | 2016-12-09 15:03:28 +0100 | [diff] [blame] | 290 | config MMC_SDHCI_XENON |
| 291 | bool "SDHCI support for the Xenon SDHCI controller" |
| 292 | depends on MMC_SDHCI && DM_MMC && OF_CONTROL |
| 293 | help |
| 294 | Support for Xenon SDHCI host controller on Marvell Armada 3700 |
| 295 | 7k/8k ARM SoCs platforms |
| 296 | |
| 297 | If you have a controller with this interface, say Y here. |
| 298 | |
| 299 | If unsure, say N. |
| 300 | |
Masahiro Yamada | 1d2c050 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 301 | config MMC_SDHCI_TEGRA |
| 302 | bool "SDHCI platform support for the Tegra SD/MMC Controller" |
| 303 | depends on TEGRA |
| 304 | default y |
| 305 | help |
| 306 | This selects the Tegra SD/MMC controller. If you have a Tegra |
| 307 | platform with SD or MMC devices, say Y here. |
| 308 | |
| 309 | If unsure, say N. |
| 310 | |
| 311 | config MMC_SUNXI |
| 312 | bool "Allwinner sunxi SD/MMC Host Controller support" |
Masahiro Yamada | 0ad178c | 2017-01-12 12:16:15 +0900 | [diff] [blame] | 313 | depends on ARCH_SUNXI && !UART0_PORT_F |
Masahiro Yamada | 1d2c050 | 2017-01-10 13:32:07 +0900 | [diff] [blame] | 314 | default y |
| 315 | help |
| 316 | This selects support for the SD/MMC Host Controller on |
| 317 | Allwinner sunxi SoCs. |
| 318 | |
Masahiro Yamada | e298c46 | 2016-12-07 22:10:27 +0900 | [diff] [blame] | 319 | endif |
| 320 | |
Nobuhiro Iwamatsu | 72d42ba | 2014-12-17 08:03:00 +0900 | [diff] [blame] | 321 | endmenu |
York Sun | c01e4a1 | 2016-12-28 08:43:42 -0800 | [diff] [blame] | 322 | |
| 323 | config SYS_FSL_ERRATUM_ESDHC111 |
| 324 | bool |
| 325 | |
| 326 | config SYS_FSL_ERRATUM_ESDHC13 |
| 327 | bool |
| 328 | |
| 329 | config SYS_FSL_ERRATUM_ESDHC135 |
| 330 | bool |
| 331 | |
| 332 | config SYS_FSL_ERRATUM_ESDHC_A001 |
| 333 | bool |