1menu "MMC Host controller Support" 2 3config MMC 4 bool "MMC/SD/SDIO card support" 5 default ARM || PPC || SANDBOX 6 select HAVE_BLOCK_DEVICE 7 help 8 This selects MultiMediaCard, Secure Digital and Secure 9 Digital I/O support. 10 11 If you want MMC/SD/SDIO support, you should say Y here and 12 also to your specific host controller driver. 13 14config MMC_WRITE 15 bool "support for MMC/SD write operations" 16 depends on MMC 17 default y 18 help 19 Enable write access to MMC and SD Cards 20 21config MMC_BROKEN_CD 22 bool "Poll for broken card detection case" 23 help 24 If card detection feature is broken, just poll to detect. 25 26config DM_MMC 27 bool "Enable MMC controllers using Driver Model" 28 depends on DM 29 help 30 This enables the MultiMediaCard (MMC) uclass which supports MMC and 31 Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.) 32 and non-removable (e.g. eMMC chip) devices are supported. These 33 appear as block devices in U-Boot and can support filesystems such 34 as EXT4 and FAT. 35 36config SPL_DM_MMC 37 bool "Enable MMC controllers using Driver Model in SPL" 38 depends on SPL_DM && DM_MMC 39 default y 40 help 41 This enables the MultiMediaCard (MMC) uclass which supports MMC and 42 Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.) 43 and non-removable (e.g. eMMC chip) devices are supported. These 44 appear as block devices in U-Boot and can support filesystems such 45 as EXT4 and FAT. 46 47if MMC 48 49config MMC_SPI 50 bool "Support for SPI-based MMC controller" 51 depends on DM_MMC && DM_SPI 52 help 53 This selects SPI-based MMC controllers. 54 If you have an MMC controller on a SPI bus, say Y here. 55 56 If unsure, say N. 57 58config MMC_SPI_CRC_ON 59 bool "Support CRC for SPI-based MMC controller" 60 depends on MMC_SPI 61 default y 62 help 63 This enables CRC for SPI-based MMC controllers. 64 65 If unsure, say N. 66 67config ARM_PL180_MMCI 68 bool "ARM AMBA Multimedia Card Interface and compatible support" 69 depends on DM_MMC && OF_CONTROL 70 help 71 This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card 72 Interface (PL180, PL181 and compatible) support. 73 If you have an ARM(R) platform with a Multimedia Card slot, 74 say Y or M here. 75 76config MMC_QUIRKS 77 bool "Enable quirks" 78 default y 79 help 80 Some cards and hosts may sometimes behave unexpectedly (quirks). 81 This option enable workarounds to handle those quirks. Some of them 82 are enabled by default, other may require additional flags or are 83 enabled by the host driver. 84 85config MMC_HW_PARTITIONING 86 bool "Support for HW partitioning command(eMMC)" 87 default y 88 help 89 This adds a command and an API to do hardware partitioning on eMMC 90 devices. 91 92config SUPPORT_EMMC_RPMB 93 bool "Support eMMC replay protected memory block (RPMB)" 94 imply CMD_MMC_RPMB 95 help 96 Enable support for reading, writing and programming the 97 key for the Replay Protection Memory Block partition in eMMC. 98 99config SUPPORT_EMMC_BOOT 100 bool "Support some additional features of the eMMC boot partitions" 101 help 102 Enable support for eMMC boot partitions. This also enables 103 extensions within the mmc command. 104 105config MMC_IO_VOLTAGE 106 bool "Support IO voltage configuration" 107 help 108 IO voltage configuration allows selecting the voltage level of the IO 109 lines (not the level of main supply). This is required for UHS 110 support. For eMMC this not mandatory, but not enabling this option may 111 prevent the driver of using the faster modes. 112 113config SPL_MMC_IO_VOLTAGE 114 bool "Support IO voltage configuration in SPL" 115 default n 116 help 117 IO voltage configuration allows selecting the voltage level of the IO 118 lines (not the level of main supply). This is required for UHS 119 support. For eMMC this not mandatory, but not enabling this option may 120 prevent the driver of using the faster modes. 121 122config MMC_UHS_SUPPORT 123 bool "enable UHS support" 124 depends on MMC_IO_VOLTAGE 125 help 126 The Ultra High Speed (UHS) bus is available on some SDHC and SDXC 127 cards. The IO voltage must be switchable from 3.3v to 1.8v. The bus 128 frequency can go up to 208MHz (SDR104) 129 130config SPL_MMC_UHS_SUPPORT 131 bool "enable UHS support in SPL" 132 depends on SPL_MMC_IO_VOLTAGE 133 help 134 The Ultra High Speed (UHS) bus is available on some SDHC and SDXC 135 cards. The IO voltage must be switchable from 3.3v to 1.8v. The bus 136 frequency can go up to 208MHz (SDR104) 137 138config MMC_HS400_ES_SUPPORT 139 bool "enable HS400 Enhanced Strobe support" 140 help 141 The HS400 Enhanced Strobe mode is support by some eMMC. The bus 142 frequency is up to 200MHz. This mode does not tune the IO. 143 144config SPL_MMC_HS400_ES_SUPPORT 145 bool "enable HS400 Enhanced Strobe support in SPL" 146 help 147 The HS400 Enhanced Strobe mode is support by some eMMC. The bus 148 frequency is up to 200MHz. This mode does not tune the IO. 149 150config MMC_HS400_SUPPORT 151 bool "enable HS400 support" 152 select MMC_HS200_SUPPORT 153 help 154 The HS400 mode is support by some eMMC. The bus frequency is up to 155 200MHz. This mode requires tuning the IO. 156 157config SPL_MMC_HS400_SUPPORT 158 bool "enable HS400 support in SPL" 159 select SPL_MMC_HS200_SUPPORT 160 help 161 The HS400 mode is support by some eMMC. The bus frequency is up to 162 200MHz. This mode requires tuning the IO. 163 164config MMC_HS200_SUPPORT 165 bool "enable HS200 support" 166 help 167 The HS200 mode is support by some eMMC. The bus frequency is up to 168 200MHz. This mode requires tuning the IO. 169 170config SPL_MMC_HS200_SUPPORT 171 bool "enable HS200 support in SPL" 172 help 173 The HS200 mode is support by some eMMC. The bus frequency is up to 174 200MHz. This mode requires tuning the IO. 175 176config MMC_VERBOSE 177 bool "Output more information about the MMC" 178 default y 179 help 180 Enable the output of more information about the card such as the 181 operating mode. 182 183config MMC_TRACE 184 bool "MMC debugging" 185 default n 186 help 187 This is an option for use by developer. Enable MMC core debugging. 188 189 If you need to see the MMC core message, say Y. 190 191config MMC_DAVINCI 192 bool "TI DAVINCI Multimedia Card Interface support" 193 depends on ARCH_DAVINCI 194 default y 195 help 196 This selects the TI DAVINCI Multimedia card Interface. 197 If you have an DAVINCI board with a Multimedia Card slot, 198 say Y here. If unsure, say N. 199 200config MMC_DW 201 bool "Synopsys DesignWare Memory Card Interface" 202 select BOUNCE_BUFFER 203 help 204 This selects support for the Synopsys DesignWare Mobile Storage IP 205 block, this provides host support for SD and MMC interfaces, in both 206 PIO, internal DMA mode and external DMA mode. 207 208config MMC_DW_CORTINA 209 bool "Cortina specific extensions for Synopsys DW Memory Card Interface" 210 depends on DM_MMC 211 depends on MMC_DW 212 depends on BLK 213 default n 214 help 215 This selects support for Cortina SoC specific extensions to the 216 Synopsys DesignWare Memory Card Interface driver. Select this option 217 for platforms based on Cortina CAxxxx Soc's. 218 219config MMC_DW_EXYNOS 220 bool "Exynos specific extensions for Synopsys DW Memory Card Interface" 221 depends on ARCH_EXYNOS 222 depends on MMC_DW 223 default y 224 help 225 This selects support for Samsung Exynos SoC specific extensions to the 226 Synopsys DesignWare Memory Card Interface driver. Select this option 227 for platforms based on Exynos4 and Exynos5 SoC's. 228 229config MMC_DW_K3 230 bool "K3 specific extensions for Synopsys DW Memory Card Interface" 231 depends on MMC_DW 232 help 233 This selects support for Hisilicon K3 SoC specific extensions to the 234 Synopsys DesignWare Memory Card Interface driver. Select this option 235 for platforms based on Hisilicon K3 SoC's. 236 237config MMC_DW_ROCKCHIP 238 bool "Rockchip SD/MMC controller support" 239 depends on DM_MMC && OF_CONTROL 240 depends on MMC_DW 241 help 242 This enables support for the Rockchip SD/MMM controller, which is 243 based on Designware IP. The device is compatible with at least 244 SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well 245 as removeable SD and micro-SD cards. 246 247config MMC_DW_SOCFPGA 248 bool "SOCFPGA specific extensions for Synopsys DW Memory Card Interface" 249 depends on ARCH_SOCFPGA 250 depends on MMC_DW 251 default y 252 help 253 This selects support for Altera SOCFPGA specific extensions to the 254 Synopsys DesignWare Memory Card Interface driver. Select this option 255 for platforms based on Altera SOCFPGA. 256 257config MMC_DW_SNPS 258 bool "Extensions for DW Memory Card Interface used in Synopsys ARC devboards" 259 depends on MMC_DW 260 depends on DM_MMC 261 depends on OF_CONTROL 262 depends on CLK 263 help 264 This selects support for Synopsys DesignWare Memory Card Interface driver 265 extensions used in various Synopsys ARC devboards. 266 267config MMC_MESON_GX 268 bool "Meson GX EMMC controller support" 269 depends on DM_MMC && BLK && ARCH_MESON 270 help 271 Support for EMMC host controller on Meson GX ARM SoCs platform (S905) 272 273config MMC_MXC 274 bool "Freescale i.MX21/27/31 or MPC512x Multimedia Card support" 275 help 276 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x 277 Multimedia Card Interface. If you have an i.MX or MPC512x platform 278 with a Multimedia Card slot, say Y here. 279 280 If unsure, say N. 281 282config MMC_MXS 283 bool "Freescale MXS Multimedia Card Interface support" 284 depends on MX23 || MX28 || MX6 || MX7 285 select BOUNCE_BUFFER 286 select APBH_DMA 287 select APBH_DMA_BURST if ARCH_MX6 || ARCH_MX7 288 select APBH_DMA_BURST8 if ARCH_MX6 || ARCH_MX7 289 help 290 This selects the Freescale SSP MMC controller found on MXS based 291 platforms like mx23/28. 292 293 If unsure, say N. 294 295config MMC_PCI 296 bool "Support for MMC controllers on PCI" 297 help 298 This selects PCI-based MMC controllers. 299 If you have an MMC controller on a PCI bus, say Y here. 300 301 If unsure, say N. 302 303config MMC_OMAP_HS 304 bool "TI OMAP High Speed Multimedia Card Interface support" 305 select DM_REGULATOR_PBIAS if DM_MMC && DM_REGULATOR 306 select DM_REGULATOR_PBIAS if DM_MMC && DM_REGULATOR 307 help 308 This selects the TI OMAP High Speed Multimedia card Interface. 309 If you have an omap2plus board with a Multimedia Card slot, 310 say Y here. 311 312 If unsure, say N. 313 314config MMC_OMAP_HS_ADMA 315 bool "ADMA support for OMAP HS MMC" 316 depends on MMC_OMAP_HS && !OMAP34XX 317 default y if !AM33XX 318 help 319 This enables support for the ADMA2 controller (SDA3.00 Part A2 DMA 320 controller). If supported by the hardware, selecting this option will 321 increase performances. 322 323config MMC_OMAP36XX_PINS 324 bool "Enable MMC1 on OMAP36xx/37xx" 325 depends on OMAP34XX && MMC_OMAP_HS 326 help 327 This enables extended-drain in the MMC/SD/SDIO1I/O and 328 GPIO-associated I/O cells (gpio_126, gpio_127, and gpio_129) 329 specific to the OMAP36xx/37xx using MMC1 330 331 If you have a controller with this interface, say Y here. 332 333 If unsure, say N. 334 335config SH_SDHI 336 bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support" 337 depends on ARCH_RMOBILE 338 help 339 Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform 340 341config SH_MMCIF 342 bool "SuperH/Renesas ARM SoCs on-chip MMCIF host controller support" 343 depends on ARCH_RMOBILE || SH 344 help 345 Support for the on-chip MMCIF host controller on SuperH/Renesas ARM SoCs platform 346 347config MMC_UNIPHIER 348 bool "UniPhier SD/MMC Host Controller support" 349 depends on ARCH_UNIPHIER 350 depends on BLK && DM_MMC 351 depends on OF_CONTROL 352 help 353 This selects support for the Matsushita SD/MMC Host Controller on 354 SocioNext UniPhier SoCs. 355 356config RENESAS_SDHI 357 bool "Renesas R-Car SD/MMC Host Controller support" 358 depends on ARCH_RMOBILE 359 depends on BLK && DM_MMC 360 depends on OF_CONTROL 361 select BOUNCE_BUFFER 362 help 363 This selects support for the Matsushita SD/MMC Host Controller on 364 Renesas R-Car SoCs. 365 366config MMC_BCM2835 367 bool "BCM2835 family custom SD/MMC Host Controller support" 368 depends on ARCH_BCM283X 369 depends on BLK && DM_MMC 370 depends on OF_CONTROL 371 default y 372 help 373 This selects support for the custom SD host controller in the BCM2835 374 family of devices. 375 376 If you have a BCM2835 platform with SD or MMC devices, say Y here. 377 378 If unsure, say N. 379 380config JZ47XX_MMC 381 bool "Ingenic JZ47xx SD/MMC Host Controller support" 382 depends on ARCH_JZ47XX 383 help 384 This selects support for the SD Card Controller on Ingenic JZ47xx SoCs. 385 386config MMC_SANDBOX 387 bool "Sandbox MMC support" 388 depends on SANDBOX 389 depends on BLK && DM_MMC && OF_CONTROL 390 help 391 This select a dummy sandbox MMC driver. At present this does nothing 392 other than allow sandbox to be build with MMC support. This 393 improves build coverage for sandbox and makes it easier to detect 394 MMC build errors with sandbox. 395 396config MMC_SDHCI 397 bool "Secure Digital Host Controller Interface support" 398 help 399 This selects the generic Secure Digital Host Controller Interface. 400 It is used by manufacturers such as Texas Instruments(R), Ricoh(R) 401 and Toshiba(R). Most controllers found in laptops are of this type. 402 403 If you have a controller with this interface, say Y here. 404 405 If unsure, say N. 406 407config MMC_SDHCI_IO_ACCESSORS 408 bool 409 depends on MMC_SDHCI 410 help 411 This is silent Kconfig symbol that is selected by the drivers that 412 need to overwrite SDHCI IO memory accessors. 413 414config MMC_SDHCI_SDMA 415 bool "Support SDHCI SDMA" 416 depends on MMC_SDHCI 417 help 418 This enables support for the SDMA (Single Operation DMA) defined 419 in the SD Host Controller Standard Specification Version 1.00 . 420 421config MMC_SDHCI_ADMA 422 bool "Support SDHCI ADMA2" 423 depends on MMC_SDHCI 424 help 425 This enables support for the ADMA (Advanced DMA) defined 426 in the SD Host Controller Standard Specification Version 3.00 427 428config SPL_MMC_SDHCI_ADMA 429 bool "Support SDHCI ADMA2 in SPL" 430 depends on MMC_SDHCI 431 help 432 This enables support for the ADMA (Advanced DMA) defined 433 in the SD Host Controller Standard Specification Version 3.00 in SPL. 434 435config MMC_SDHCI_ASPEED 436 bool "Aspeed SDHCI controller" 437 depends on ARCH_ASPEED 438 depends on DM_MMC 439 depends on MMC_SDHCI 440 help 441 Enables support for the Aspeed SDHCI 2.0 controller present on Aspeed 442 SoCs. This device is compatible with SD 3.0 and/or MMC 4.3 443 specifications. On the AST2600, the device is also compatible with 444 MMC 5.1 and eMMC 3.0. 445 446config MMC_SDHCI_ATMEL 447 bool "Atmel SDHCI controller support" 448 depends on ARCH_AT91 449 depends on DM_MMC && BLK && ARCH_AT91 450 depends on MMC_SDHCI 451 help 452 This enables support for the Atmel SDHCI controller, which supports 453 the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD 454 Memory Card Specification V3.0, and the SDIO V3.0 specification. 455 It is compliant with the SD Host Controller Standard V3.0 456 specification. 457 458config MMC_SDHCI_BCM2835 459 tristate "SDHCI support for the BCM2835 SD/MMC Controller" 460 depends on ARCH_BCM283X 461 depends on MMC_SDHCI 462 select MMC_SDHCI_IO_ACCESSORS 463 help 464 This selects the BCM2835 SD/MMC controller. 465 466 If you have a BCM2835 platform with SD or MMC devices, 467 say Y here. 468 469 If unsure, say N. 470 471config MMC_SDHCI_BCMSTB 472 tristate "SDHCI support for the BCMSTB SD/MMC Controller" 473 depends on MMC_SDHCI 474 help 475 This selects the Broadcom set-top box SD/MMC controller. 476 477 If you have a BCMSTB platform with SD or MMC devices, 478 say Y here. 479 480 If unsure, say N. 481 482config MMC_SDHCI_CADENCE 483 bool "SDHCI support for the Cadence SD/SDIO/eMMC controller" 484 depends on BLK && DM_MMC 485 depends on MMC_SDHCI 486 depends on OF_CONTROL 487 help 488 This selects the Cadence SD/SDIO/eMMC driver. 489 490 If you have a controller with this interface, say Y here. 491 492 If unsure, say N. 493 494config MMC_SDHCI_AM654 495 bool "SDHCI Controller on TI's Am654 devices" 496 depends on ARCH_K3 497 depends on MMC_SDHCI 498 depends on DM_MMC && OF_CONTROL && BLK 499 depends on REGMAP 500 help 501 Support for Secure Digital Host Controller Interface (SDHCI) 502 controllers present on TI's AM654 SOCs. 503 504config MMC_SDHCI_IPROC 505 bool "SDHCI support for the iProc SD/MMC Controller" 506 depends on MMC_SDHCI 507 help 508 This selects the iProc SD/MMC controller. 509 510 If you have a Broadcom IPROC platform with SD or MMC devices, 511 say Y or M here. 512 513 If unsure, say N. 514 515config MMC_SDHCI_KONA 516 bool "SDHCI support on Broadcom KONA platform" 517 depends on MMC_SDHCI 518 help 519 This selects the Broadcom Kona Secure Digital Host Controller 520 Interface(SDHCI) support. 521 This is used in Broadcom mobile SoCs. 522 523 If you have a controller with this interface, say Y here. 524 525config MMC_SDHCI_MSM 526 bool "Qualcomm SDHCI controller" 527 depends on BLK && DM_MMC 528 depends on MMC_SDHCI 529 help 530 Enables support for SDHCI 2.0 controller present on some Qualcomm 531 Snapdragon devices. This device is compatible with eMMC v4.5 and 532 SD 3.0 specifications. Both SD and eMMC devices are supported. 533 Card-detect gpios are not supported. 534 535config MMC_SDHCI_MV 536 bool "SDHCI support on Marvell platform" 537 depends on ARCH_MVEBU 538 depends on MMC_SDHCI 539 help 540 This selects the Secure Digital Host Controller Interface on 541 Marvell platform. 542 543 If you have a controller with this interface, say Y here. 544 545 If unsure, say N. 546 547config MMC_SDHCI_PIC32 548 bool "Microchip PIC32 on-chip SDHCI support" 549 depends on DM_MMC && MACH_PIC32 550 depends on MMC_SDHCI 551 help 552 Support for Microchip PIC32 SDHCI controller. 553 554config MMC_SDHCI_ROCKCHIP 555 bool "Arasan SDHCI controller for Rockchip support" 556 depends on ARCH_ROCKCHIP 557 depends on DM_MMC && BLK 558 depends on MMC_SDHCI 559 help 560 Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform 561 562config MMC_SDHCI_S5P 563 bool "SDHCI support on Samsung S5P SoC" 564 depends on MMC_SDHCI 565 help 566 This selects the Secure Digital Host Controller Interface (SDHCI) 567 on Samsung S5P SoCs. 568 569 If you have a controller with this interface, say Y here. 570 571 If unsure, say N. 572 573config MMC_SDHCI_SPEAR 574 bool "SDHCI support on ST SPEAr platform" 575 depends on MMC_SDHCI 576 help 577 This selects the Secure Digital Host Controller Interface (SDHCI) 578 often referrered to as the HSMMC block in some of the ST SPEAR range 579 of SoC 580 581 If you have a controller with this interface, say Y here. 582 583 If unsure, say N. 584 585config MMC_SDHCI_STI 586 bool "SDHCI support for STMicroelectronics SoC" 587 depends on MMC_SDHCI && OF_CONTROL 588 help 589 This selects the Secure Digital Host Controller Interface (SDHCI) 590 on STMicroelectronics STiH410 SoC. 591 592config MMC_SDHCI_XENON 593 bool "SDHCI support for the Xenon SDHCI controller" 594 depends on MMC_SDHCI && DM_MMC && OF_CONTROL 595 help 596 Support for Xenon SDHCI host controller on Marvell Armada 3700 597 7k/8k ARM SoCs platforms 598 599 If you have a controller with this interface, say Y here. 600 601 If unsure, say N. 602 603config MMC_SDHCI_TANGIER 604 bool "Tangier SDHCI controller support" 605 depends on DM_MMC && BLK 606 depends on MMC_SDHCI 607 help 608 This selects support for SDHCI controller on Tanginer 609 SoC. Note that this controller does not sit on PCI bus and, 610 hence, cannot be enumerated by standard PCI means. 611 612 If you're using an Intel Tangier SoC (available on Intel 613 Edison board), say Y here. 614 615 If unsure, say N. 616 617config MMC_SDHCI_TEGRA 618 bool "SDHCI platform support for the Tegra SD/MMC Controller" 619 depends on ARCH_TEGRA 620 select BOUNCE_BUFFER 621 default y 622 help 623 This selects the Tegra SD/MMC controller. If you have a Tegra 624 platform with SD or MMC devices, say Y here. 625 626 If unsure, say N. 627 628config TEGRA124_MMC_DISABLE_EXT_LOOPBACK 629 bool "Disable external clock loopback" 630 depends on MMC_SDHCI_TEGRA && TEGRA124 631 help 632 Disable the external clock loopback and use the internal one on SDMMC3 633 as per the SDMMC_VENDOR_MISC_CNTRL_0 register's SDMMC_SPARE1 bits 634 being set to 0xfffd according to the TRM. 635 636 TODO(marcel.ziswiler@toradex.com): Move to device tree controlled 637 approach once proper kernel integration made it mainline. 638 639config MMC_SDHCI_ZYNQ 640 bool "Arasan SDHCI controller support" 641 depends on ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL 642 depends on DM_MMC && OF_CONTROL && BLK 643 depends on MMC_SDHCI 644 help 645 Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform 646 647config ZYNQ_SDHCI_MAX_FREQ 648 int "Set the maximum frequency of the controller" 649 depends on MMC_SDHCI_ZYNQ 650 help 651 Set the maximum frequency of the controller. 652 653config ZYNQ_SDHCI_MIN_FREQ 654 int "Set the minimum frequency of the controller" 655 depends on MMC_SDHCI_ZYNQ 656 default 0 657 help 658 Set the minimum frequency of the controller. 659 660config ZYNQ_HISPD_BROKEN 661 bool "High speed broken for Zynq SDHCI controller" 662 depends on MMC_SDHCI_ZYNQ 663 help 664 Set if high speed mode is broken. 665 666config MMC_SUNXI 667 bool "Allwinner sunxi SD/MMC Host Controller support" 668 depends on ARCH_SUNXI && !UART0_PORT_F 669 default y 670 help 671 This selects support for the SD/MMC Host Controller on 672 Allwinner sunxi SoCs. 673 674config MMC_SUNXI_HAS_NEW_MODE 675 bool 676 depends on MMC_SUNXI 677 678config MMC_SUNXI_HAS_MODE_SWITCH 679 bool 680 depends on MMC_SUNXI 681 682config GENERIC_ATMEL_MCI 683 bool "Atmel Multimedia Card Interface support" 684 depends on DM_MMC && BLK && ARCH_AT91 685 help 686 This enables support for Atmel High Speed Multimedia Card Interface 687 (HSMCI), which supports the MultiMedia Card (MMC) Specification V4.3, 688 the SD Memory Card Specification V2.0, the SDIO V2.0 specification 689 and CE-ATA V1.1. 690 691config STM32_SDMMC2 692 bool "STMicroelectronics STM32H7 SD/MMC Host Controller support" 693 depends on DM_MMC && BLK && OF_CONTROL 694 help 695 This selects support for the SD/MMC controller on STM32H7 SoCs. 696 If you have a board based on such a SoC and with a SD/MMC slot, 697 say Y or M here. 698 699config FTSDC010 700 bool "Ftsdc010 SD/MMC controller Support" 701 help 702 This SD/MMC controller is present in Andestech SoCs which is based on Faraday IP. 703 704config FTSDC010_SDIO 705 bool "Support ftsdc010 sdio" 706 default n 707 depends on FTSDC010 708 help 709 This can enable ftsdc010 sdio function. 710 711config MMC_MTK 712 bool "MediaTek SD/MMC Card Interface support" 713 depends on ARCH_MEDIATEK || ARCH_MTMIPS 714 depends on BLK && DM_MMC 715 depends on OF_CONTROL 716 help 717 This selects the MediaTek(R) Secure digital and Multimedia card Interface. 718 If you have a machine with a integrated SD/MMC card reader, say Y or M here. 719 This is needed if support for any SD/SDIO/MMC devices is required. 720 If unsure, say N. 721 722endif 723 724config FSL_ESDHC 725 bool "Freescale/NXP eSDHC controller support" 726 help 727 This selects support for the eSDHC (Enhanced Secure Digital Host 728 Controller) found on numerous Freescale/NXP SoCs. 729 730config FSL_ESDHC_33V_IO_RELIABILITY_WORKAROUND 731 bool "enable eSDHC workaround for 3.3v IO reliability issue" 732 depends on FSL_ESDHC && DM_MMC 733 default n 734 help 735 When eSDHC operates at 3.3v, damage can accumulate in an internal 736 level shifter at a higher than expected rate. The faster the interface 737 runs, the more damage accumulates. This issue now is found on LX2160A 738 eSDHC1 for only SD card. The hardware workaround is recommended to use 739 an on-board level shifter that is 1.8v on SoC side and 3.3v on SD card 740 side. For boards without hardware workaround, this option could be 741 enabled, ensuring 1.8v IO voltage and disabling eSDHC if no card. 742 This option assumes no hotplug, and u-boot has to make all the way to 743 to linux to use 1.8v UHS-I speed mode if has card. 744 745config FSL_ESDHC_IMX 746 bool "Freescale/NXP i.MX eSDHC controller support" 747 help 748 This selects support for the i.MX eSDHC (Enhanced Secure Digital Host 749 Controller) found on numerous Freescale/NXP SoCs. 750 751config FSL_USDHC 752 bool "Freescale/NXP i.MX uSDHC controller support" 753 depends on MX6 || MX7 ||ARCH_MX7ULP || IMX8 || IMX8M || IMXRT || TARGET_S32V234EVB 754 select FSL_ESDHC_IMX 755 help 756 This enables the Ultra Secured Digital Host Controller enhancements 757 758endmenu 759 760config SYS_FSL_ERRATUM_ESDHC111 761 bool 762 763config SYS_FSL_ERRATUM_ESDHC13 764 bool 765 766config SYS_FSL_ERRATUM_ESDHC135 767 bool 768 769config SYS_FSL_ERRATUM_ESDHC_A001 770 bool 771