1# 2# MMC/SD host controller drivers 3# 4 5comment "MMC/SD/SDIO Host Controller Drivers" 6 7config MMC_DEBUG 8 bool "MMC host drivers debugging" 9 depends on MMC != n 10 help 11 This is an option for use by developers; most people should 12 say N here. This enables MMC host driver debugging. And further 13 added host drivers please don't invent their private macro for 14 debugging. 15 16config MMC_ARMMMCI 17 tristate "ARM AMBA Multimedia Card Interface support" 18 depends on ARM_AMBA 19 help 20 This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card 21 Interface (PL180 and PL181) support. If you have an ARM(R) 22 platform with a Multimedia Card slot, say Y or M here. 23 24 If unsure, say N. 25 26config MMC_QCOM_DML 27 bool "Qualcomm Data Mover for SD Card Controller" 28 depends on MMC_ARMMMCI && QCOM_BAM_DMA 29 default y 30 help 31 This selects the Qualcomm Data Mover lite/local on SD Card controller. 32 This option will enable the dma to work correctly, if you are using 33 Qcom SOCs and MMC, you would probably need this option to get DMA working. 34 35 if unsure, say N. 36 37config MMC_PXA 38 tristate "Intel PXA25x/26x/27x Multimedia Card Interface support" 39 depends on ARCH_PXA 40 help 41 This selects the Intel(R) PXA(R) Multimedia card Interface. 42 If you have a PXA(R) platform with a Multimedia Card slot, 43 say Y or M here. 44 45 If unsure, say N. 46 47config MMC_SDHCI 48 tristate "Secure Digital Host Controller Interface support" 49 depends on HAS_DMA 50 help 51 This selects the generic Secure Digital Host Controller Interface. 52 It is used by manufacturers such as Texas Instruments(R), Ricoh(R) 53 and Toshiba(R). Most controllers found in laptops are of this type. 54 55 If you have a controller with this interface, say Y or M here. You 56 also need to enable an appropriate bus interface. 57 58 If unsure, say N. 59 60config MMC_SDHCI_IO_ACCESSORS 61 bool 62 depends on MMC_SDHCI 63 help 64 This is silent Kconfig symbol that is selected by the drivers that 65 need to overwrite SDHCI IO memory accessors. 66 67config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER 68 bool 69 depends on MMC_SDHCI 70 select MMC_SDHCI_IO_ACCESSORS 71 help 72 This option is selected by drivers running on big endian hosts 73 and performing I/O to a SDHCI controller through a bus that 74 implements a hardware byte swapper using a 32-bit datum. 75 This endian mapping mode is called "data invariance" and 76 has the effect of scrambling the addresses and formats of data 77 accessed in sizes other than the datum size. 78 79 This is the case for the Nintendo Wii SDHCI. 80 81config MMC_SDHCI_PCI 82 tristate "SDHCI support on PCI bus" 83 depends on MMC_SDHCI && PCI 84 help 85 This selects the PCI Secure Digital Host Controller Interface. 86 Most controllers found today are PCI devices. 87 88 If you have a controller with this interface, say Y or M here. 89 90 If unsure, say N. 91 92config MMC_RICOH_MMC 93 bool "Ricoh MMC Controller Disabler" 94 depends on MMC_SDHCI_PCI 95 default y 96 help 97 This adds a pci quirk to disable Ricoh MMC Controller. This 98 proprietary controller is unnecessary because the SDHCI driver 99 supports MMC cards on the SD controller, but if it is not 100 disabled, it will steal the MMC cards away - rendering them 101 useless. It is safe to select this even if you don't 102 have a Ricoh based card reader. 103 104 If unsure, say Y. 105 106config MMC_SDHCI_ACPI 107 tristate "SDHCI support for ACPI enumerated SDHCI controllers" 108 depends on MMC_SDHCI && ACPI 109 select IOSF_MBI if X86 110 help 111 This selects support for ACPI enumerated SDHCI controllers, 112 identified by ACPI Compatibility ID PNP0D40 or specific 113 ACPI Hardware IDs. 114 115 If you have a controller with this interface, say Y or M here. 116 117 If unsure, say N. 118 119config MMC_SDHCI_PLTFM 120 tristate "SDHCI platform and OF driver helper" 121 depends on MMC_SDHCI 122 help 123 This selects the common helper functions support for Secure Digital 124 Host Controller Interface based platform and OF drivers. 125 126 If you have a controller with this interface, say Y or M here. 127 128 If unsure, say N. 129 130config MMC_SDHCI_OF_ARASAN 131 tristate "SDHCI OF support for the Arasan SDHCI controllers" 132 depends on MMC_SDHCI_PLTFM 133 depends on OF 134 depends on COMMON_CLK 135 help 136 This selects the Arasan Secure Digital Host Controller Interface 137 (SDHCI). This hardware is found e.g. in Xilinx' Zynq SoC. 138 139 If you have a controller with this interface, say Y or M here. 140 141 If unsure, say N. 142 143config MMC_SDHCI_OF_AT91 144 tristate "SDHCI OF support for the Atmel SDMMC controller" 145 depends on MMC_SDHCI_PLTFM 146 depends on OF 147 help 148 This selects the Atmel SDMMC driver 149 150config MMC_SDHCI_OF_ESDHC 151 tristate "SDHCI OF support for the Freescale eSDHC controller" 152 depends on MMC_SDHCI_PLTFM 153 depends on PPC || ARCH_MXC || ARCH_LAYERSCAPE 154 select MMC_SDHCI_IO_ACCESSORS 155 select FSL_GUTS 156 help 157 This selects the Freescale eSDHC controller support. 158 159 If you have a controller with this interface, say Y or M here. 160 161 If unsure, say N. 162 163config MMC_SDHCI_OF_HLWD 164 tristate "SDHCI OF support for the Nintendo Wii SDHCI controllers" 165 depends on MMC_SDHCI_PLTFM 166 depends on PPC 167 select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER 168 help 169 This selects the Secure Digital Host Controller Interface (SDHCI) 170 found in the "Hollywood" chipset of the Nintendo Wii video game 171 console. 172 173 If you have a controller with this interface, say Y or M here. 174 175 If unsure, say N. 176 177config MMC_SDHCI_CADENCE 178 tristate "SDHCI support for the Cadence SD/SDIO/eMMC controller" 179 depends on MMC_SDHCI_PLTFM 180 depends on OF 181 help 182 This selects the Cadence SD/SDIO/eMMC driver. 183 184 If you have a controller with this interface, say Y or M here. 185 186 If unsure, say N. 187 188config MMC_SDHCI_CNS3XXX 189 tristate "SDHCI support on the Cavium Networks CNS3xxx SoC" 190 depends on ARCH_CNS3XXX 191 depends on MMC_SDHCI_PLTFM 192 help 193 This selects the SDHCI support for CNS3xxx System-on-Chip devices. 194 195 If you have a controller with this interface, say Y or M here. 196 197 If unsure, say N. 198 199config MMC_SDHCI_ESDHC_IMX 200 tristate "SDHCI support for the Freescale eSDHC/uSDHC i.MX controller" 201 depends on ARCH_MXC 202 depends on MMC_SDHCI_PLTFM 203 select MMC_SDHCI_IO_ACCESSORS 204 help 205 This selects the Freescale eSDHC/uSDHC controller support 206 found on i.MX25, i.MX35 i.MX5x and i.MX6x. 207 208 If you have a controller with this interface, say Y or M here. 209 210 If unsure, say N. 211 212config MMC_SDHCI_DOVE 213 tristate "SDHCI support on Marvell's Dove SoC" 214 depends on ARCH_DOVE || MACH_DOVE 215 depends on MMC_SDHCI_PLTFM 216 select MMC_SDHCI_IO_ACCESSORS 217 help 218 This selects the Secure Digital Host Controller Interface in 219 Marvell's Dove SoC. 220 221 If you have a controller with this interface, say Y or M here. 222 223 If unsure, say N. 224 225config MMC_SDHCI_TEGRA 226 tristate "SDHCI platform support for the Tegra SD/MMC Controller" 227 depends on ARCH_TEGRA 228 depends on MMC_SDHCI_PLTFM 229 select MMC_SDHCI_IO_ACCESSORS 230 help 231 This selects the Tegra SD/MMC controller. If you have a Tegra 232 platform with SD or MMC devices, say Y or M here. 233 234 If unsure, say N. 235 236config MMC_SDHCI_S3C 237 tristate "SDHCI support on Samsung S3C SoC" 238 depends on MMC_SDHCI && PLAT_SAMSUNG 239 help 240 This selects the Secure Digital Host Controller Interface (SDHCI) 241 often referrered to as the HSMMC block in some of the Samsung S3C 242 range of SoC. 243 244 If you have a controller with this interface, say Y or M here. 245 246 If unsure, say N. 247 248config MMC_SDHCI_SIRF 249 tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs" 250 depends on ARCH_SIRF 251 depends on MMC_SDHCI_PLTFM 252 select MMC_SDHCI_IO_ACCESSORS 253 help 254 This selects the SDHCI support for SiRF System-on-Chip devices. 255 256 If you have a controller with this interface, say Y or M here. 257 258 If unsure, say N. 259 260config MMC_SDHCI_PXAV3 261 tristate "Marvell MMP2 SD Host Controller support (PXAV3)" 262 depends on CLKDEV_LOOKUP 263 depends on MMC_SDHCI_PLTFM 264 depends on ARCH_BERLIN || ARCH_MMP || ARCH_MVEBU || COMPILE_TEST 265 default CPU_MMP2 266 help 267 This selects the Marvell(R) PXAV3 SD Host Controller. 268 If you have a MMP2 platform with SD Host Controller 269 and a card slot, say Y or M here. 270 271 If unsure, say N. 272 273config MMC_SDHCI_PXAV2 274 tristate "Marvell PXA9XX SD Host Controller support (PXAV2)" 275 depends on CLKDEV_LOOKUP 276 depends on MMC_SDHCI_PLTFM 277 depends on ARCH_MMP || COMPILE_TEST 278 default CPU_PXA910 279 help 280 This selects the Marvell(R) PXAV2 SD Host Controller. 281 If you have a PXA9XX platform with SD Host Controller 282 and a card slot, say Y or M here. 283 284 If unsure, say N. 285 286config MMC_SDHCI_SPEAR 287 tristate "SDHCI support on ST SPEAr platform" 288 depends on MMC_SDHCI && PLAT_SPEAR 289 depends on OF 290 help 291 This selects the Secure Digital Host Controller Interface (SDHCI) 292 often referrered to as the HSMMC block in some of the ST SPEAR range 293 of SoC 294 295 If you have a controller with this interface, say Y or M here. 296 297 If unsure, say N. 298 299config MMC_SDHCI_S3C_DMA 300 bool "DMA support on S3C SDHCI" 301 depends on MMC_SDHCI_S3C 302 help 303 Enable DMA support on the Samsung S3C SDHCI glue. The DMA 304 has proved to be problematic if the controller encounters 305 certain errors, and thus should be treated with care. 306 307 YMMV. 308 309config MMC_SDHCI_BCM_KONA 310 tristate "SDHCI support on Broadcom KONA platform" 311 depends on ARCH_BCM_MOBILE 312 depends on MMC_SDHCI_PLTFM 313 help 314 This selects the Broadcom Kona Secure Digital Host Controller 315 Interface(SDHCI) support. 316 This is used in Broadcom mobile SoCs. 317 318 If you have a controller with this interface, say Y or M here. 319 320config MMC_SDHCI_F_SDH30 321 tristate "SDHCI support for Fujitsu Semiconductor F_SDH30" 322 depends on MMC_SDHCI_PLTFM 323 depends on OF 324 help 325 This selects the Secure Digital Host Controller Interface (SDHCI) 326 Needed by some Fujitsu SoC for MMC / SD / SDIO support. 327 If you have a controller with this interface, say Y or M here. 328 329 If unsure, say N. 330 331config MMC_SDHCI_IPROC 332 tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller" 333 depends on ARCH_BCM2835 || ARCH_BCM_IPROC || COMPILE_TEST 334 depends on MMC_SDHCI_PLTFM 335 default ARCH_BCM_IPROC 336 select MMC_SDHCI_IO_ACCESSORS 337 help 338 This selects the iProc SD/MMC controller. 339 340 If you have a BCM2835 or IPROC platform with SD or MMC devices, 341 say Y or M here. 342 343 If unsure, say N. 344 345config MMC_MESON_GX 346 tristate "Amlogic S905/GX* SD/MMC Host Controller support" 347 depends on ARCH_MESON && MMC 348 help 349 This selects support for the Amlogic SD/MMC Host Controller 350 found on the S905/GX* family of SoCs. This controller is 351 MMC 5.1 compliant and supports SD, eMMC and SDIO interfaces. 352 353 If you have a controller with this interface, say Y here. 354 355config MMC_MESON_MX_SDIO 356 tristate "Amlogic Meson6/Meson8/Meson8b SD/MMC Host Controller support" 357 depends on ARCH_MESON || COMPILE_TEST 358 depends on COMMON_CLK 359 depends on HAS_DMA 360 depends on OF 361 help 362 This selects support for the SD/MMC Host Controller on 363 Amlogic Meson6, Meson8 and Meson8b SoCs. 364 365 If you have a controller with this interface, say Y or M here. 366 If unsure, say N. 367 368config MMC_MOXART 369 tristate "MOXART SD/MMC Host Controller support" 370 depends on ARCH_MOXART && MMC 371 help 372 This selects support for the MOXART SD/MMC Host Controller. 373 MOXA provides one multi-functional card reader which can 374 be found on some embedded hardware such as UC-7112-LX. 375 If you have a controller with this interface, say Y here. 376 377config MMC_SDHCI_ST 378 tristate "SDHCI support on STMicroelectronics SoC" 379 depends on ARCH_STI || FSP2 380 depends on MMC_SDHCI_PLTFM 381 select MMC_SDHCI_IO_ACCESSORS 382 help 383 This selects the Secure Digital Host Controller Interface in 384 STMicroelectronics SoCs. 385 386 If you have a controller with this interface, say Y or M here. 387 If unsure, say N. 388 389config MMC_OMAP 390 tristate "TI OMAP Multimedia Card Interface support" 391 depends on ARCH_OMAP 392 depends on TPS65010 || !MACH_OMAP_H2 393 help 394 This selects the TI OMAP Multimedia card Interface. 395 If you have an OMAP board with a Multimedia Card slot, 396 say Y or M here. 397 398 If unsure, say N. 399 400config MMC_OMAP_HS 401 tristate "TI OMAP High Speed Multimedia Card Interface support" 402 depends on HAS_DMA 403 depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST 404 help 405 This selects the TI OMAP High Speed Multimedia card Interface. 406 If you have an omap2plus board with a Multimedia Card slot, 407 say Y or M here. 408 409 If unsure, say N. 410 411config MMC_WBSD 412 tristate "Winbond W83L51xD SD/MMC Card Interface support" 413 depends on ISA_DMA_API 414 help 415 This selects the Winbond(R) W83L51xD Secure digital and 416 Multimedia card Interface. 417 If you have a machine with a integrated W83L518D or W83L519D 418 SD/MMC card reader, say Y or M here. 419 420 If unsure, say N. 421 422config MMC_AU1X 423 tristate "Alchemy AU1XX0 MMC Card Interface support" 424 depends on MIPS_ALCHEMY 425 help 426 This selects the AMD Alchemy(R) Multimedia card interface. 427 If you have a Alchemy platform with a MMC slot, say Y or M here. 428 429 If unsure, say N. 430 431config MMC_ATMELMCI 432 tristate "Atmel SD/MMC Driver (Multimedia Card Interface)" 433 depends on ARCH_AT91 434 help 435 This selects the Atmel Multimedia Card Interface driver. 436 If you have an AT91 platform with a Multimedia Card slot, 437 say Y or M here. 438 439 If unsure, say N. 440 441config MMC_SDHCI_MSM 442 tristate "Qualcomm SDHCI Controller Support" 443 depends on ARCH_QCOM || (ARM && COMPILE_TEST) 444 depends on MMC_SDHCI_PLTFM 445 select MMC_SDHCI_IO_ACCESSORS 446 help 447 This selects the Secure Digital Host Controller Interface (SDHCI) 448 support present in Qualcomm SOCs. The controller supports 449 SD/MMC/SDIO devices. 450 451 If you have a controller with this interface, say Y or M here. 452 453 If unsure, say N. 454 455config MMC_MXC 456 tristate "Freescale i.MX21/27/31 or MPC512x Multimedia Card support" 457 depends on ARCH_MXC || PPC_MPC512x 458 help 459 This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x 460 Multimedia Card Interface. If you have an i.MX or MPC512x platform 461 with a Multimedia Card slot, say Y or M here. 462 463 If unsure, say N. 464 465config MMC_MXS 466 tristate "Freescale MXS Multimedia Card Interface support" 467 depends on ARCH_MXS && MXS_DMA 468 help 469 This selects the Freescale SSP MMC controller found on MXS based 470 platforms like mx23/28. 471 472 If unsure, say N. 473 474config MMC_TIFM_SD 475 tristate "TI Flash Media MMC/SD Interface support" 476 depends on PCI 477 select TIFM_CORE 478 help 479 Say Y here if you want to be able to access MMC/SD cards with 480 the Texas Instruments(R) Flash Media card reader, found in many 481 laptops. 482 This option 'selects' (turns on, enables) 'TIFM_CORE', but you 483 probably also need appropriate card reader host adapter, such as 484 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support 485 (TIFM_7XX1)'. 486 487 To compile this driver as a module, choose M here: the 488 module will be called tifm_sd. 489 490config MMC_MVSDIO 491 tristate "Marvell MMC/SD/SDIO host driver" 492 depends on PLAT_ORION 493 depends on OF 494 ---help--- 495 This selects the Marvell SDIO host driver. 496 SDIO may currently be found on the Kirkwood 88F6281 and 88F6192 497 SoC controllers. 498 499 To compile this driver as a module, choose M here: the 500 module will be called mvsdio. 501 502config MMC_DAVINCI 503 tristate "TI DAVINCI Multimedia Card Interface support" 504 depends on ARCH_DAVINCI 505 help 506 This selects the TI DAVINCI Multimedia card Interface. 507 If you have an DAVINCI board with a Multimedia Card slot, 508 say Y or M here. If unsure, say N. 509 510config MMC_GOLDFISH 511 tristate "goldfish qemu Multimedia Card Interface support" 512 depends on HAS_DMA 513 depends on GOLDFISH || COMPILE_TEST 514 help 515 This selects the Goldfish Multimedia card Interface emulation 516 found on the Goldfish Android virtual device emulation. 517 518config MMC_SPI 519 tristate "MMC/SD/SDIO over SPI" 520 depends on SPI_MASTER && HAS_DMA 521 select CRC7 522 select CRC_ITU_T 523 help 524 Some systems access MMC/SD/SDIO cards using a SPI controller 525 instead of using a "native" MMC/SD/SDIO controller. This has a 526 disadvantage of being relatively high overhead, but a compensating 527 advantage of working on many systems without dedicated MMC/SD/SDIO 528 controllers. 529 530 If unsure, or if your system has no SPI master driver, say N. 531 532config MMC_S3C 533 tristate "Samsung S3C SD/MMC Card Interface support" 534 depends on ARCH_S3C24XX 535 depends on S3C24XX_DMAC 536 help 537 This selects a driver for the MCI interface found in 538 Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs. 539 If you have a board based on one of those and a MMC/SD 540 slot, say Y or M here. 541 542 If unsure, say N. 543 544config MMC_S3C_HW_SDIO_IRQ 545 bool "Hardware support for SDIO IRQ" 546 depends on MMC_S3C 547 help 548 Enable the hardware support for SDIO interrupts instead of using 549 the generic polling code. 550 551choice 552 prompt "Samsung S3C SD/MMC transfer code" 553 depends on MMC_S3C 554 555config MMC_S3C_PIO 556 bool "Use PIO transfers only" 557 help 558 Use PIO to transfer data between memory and the hardware. 559 560 PIO is slower than DMA as it requires CPU instructions to 561 move the data. This has been the traditional default for 562 the S3C MCI driver. 563 564config MMC_S3C_DMA 565 bool "Use DMA transfers only" 566 help 567 Use DMA to transfer data between memory and the hardare. 568 569 Currently, the DMA support in this driver seems to not be 570 working properly and needs to be debugged before this 571 option is useful. 572 573endchoice 574 575config MMC_SDRICOH_CS 576 tristate "MMC/SD driver for Ricoh Bay1Controllers" 577 depends on PCI && PCMCIA 578 help 579 Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA 580 card whenever you insert a MMC or SD card into the card slot. 581 582 To compile this driver as a module, choose M here: the 583 module will be called sdricoh_cs. 584 585config MMC_TMIO_CORE 586 tristate 587 588config MMC_TMIO 589 tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support" 590 depends on MFD_TMIO || MFD_ASIC3 591 select MMC_TMIO_CORE 592 help 593 This provides support for the SD/MMC cell found in TC6393XB, 594 T7L66XB and also HTC ASIC3 595 596config MMC_SDHI 597 tristate "Renesas SDHI SD/SDIO controller support" 598 depends on SUPERH || ARM || ARM64 599 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST 600 select MMC_TMIO_CORE 601 select MMC_SDHI_SYS_DMAC if (SUPERH || ARM) 602 select MMC_SDHI_INTERNAL_DMAC if ARM64 603 help 604 This provides support for the SDHI SD/SDIO controller found in 605 Renesas SuperH, ARM and ARM64 based SoCs 606 607config MMC_SDHI_SYS_DMAC 608 tristate "DMA for SDHI SD/SDIO controllers using SYS-DMAC" 609 depends on MMC_SDHI 610 help 611 This provides DMA support for SDHI SD/SDIO controllers 612 using SYS-DMAC via DMA Engine. This supports the controllers 613 found in SuperH and Renesas ARM based SoCs. 614 615config MMC_SDHI_INTERNAL_DMAC 616 tristate "DMA for SDHI SD/SDIO controllers using on-chip bus mastering" 617 depends on ARM64 || COMPILE_TEST 618 depends on MMC_SDHI 619 help 620 This provides DMA support for SDHI SD/SDIO controllers 621 using on-chip bus mastering. This supports the controllers 622 found in arm64 based SoCs. 623 624config MMC_CB710 625 tristate "ENE CB710 MMC/SD Interface support" 626 depends on PCI 627 select CB710_CORE 628 help 629 This option enables support for MMC/SD part of ENE CB710/720 Flash 630 memory card reader found in some laptops (ie. some versions of 631 HP Compaq nx9500). 632 633 This driver can also be built as a module. If so, the module 634 will be called cb710-mmc. 635 636config MMC_VIA_SDMMC 637 tristate "VIA SD/MMC Card Reader Driver" 638 depends on PCI 639 help 640 This selects the VIA SD/MMC Card Reader driver, say Y or M here. 641 VIA provides one multi-functional card reader which integrated into 642 some motherboards manufactured by VIA. This card reader supports 643 SD/MMC/SDHC. 644 If you have a controller with this interface, say Y or M here. 645 646 If unsure, say N. 647 648config SDH_BFIN 649 tristate "Blackfin Secure Digital Host support" 650 depends on (BF54x && !BF544) || (BF51x && !BF512) 651 help 652 If you say yes here you will get support for the Blackfin on-chip 653 Secure Digital Host interface. This includes support for MMC and 654 SD cards. 655 656 To compile this driver as a module, choose M here: the 657 module will be called bfin_sdh. 658 659 If unsure, say N. 660 661config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND 662 bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround" 663 depends on SDH_BFIN 664 help 665 If you say yes here SD-Cards may work on the EZkit. 666 667config MMC_CAVIUM_OCTEON 668 tristate "Cavium OCTEON SD/MMC Card Interface support" 669 depends on CAVIUM_OCTEON_SOC 670 help 671 This selects Cavium OCTEON SD/MMC card Interface. 672 If you have an OCTEON board with a Multimedia Card slot, 673 say Y or M here. 674 675 If unsure, say N. 676 677config MMC_CAVIUM_THUNDERX 678 tristate "Cavium ThunderX SD/MMC Card Interface support" 679 depends on PCI && 64BIT && (ARM64 || COMPILE_TEST) 680 depends on GPIO_THUNDERX 681 depends on OF_ADDRESS 682 help 683 This selects Cavium ThunderX SD/MMC Card Interface. 684 If you have an Cavium ARM64 board with a Multimedia Card slot 685 or builtin eMMC chip say Y or M here. If built as a module 686 the module will be called thunderx_mmc.ko. 687 688config MMC_DW 689 tristate "Synopsys DesignWare Memory Card Interface" 690 depends on HAS_DMA 691 depends on ARC || ARM || ARM64 || MIPS || COMPILE_TEST 692 help 693 This selects support for the Synopsys DesignWare Mobile Storage IP 694 block, this provides host support for SD and MMC interfaces, in both 695 PIO, internal DMA mode and external DMA mode. 696 697config MMC_DW_PLTFM 698 tristate "Synopsys Designware MCI Support as platform device" 699 depends on MMC_DW 700 default y 701 help 702 This selects the common helper functions support for Host Controller 703 Interface based platform driver. Please select this option if the IP 704 is present as a platform device. This is the common interface for the 705 Synopsys Designware IP. 706 707 If you have a controller with this interface, say Y or M here. 708 709 If unsure, say Y. 710 711config MMC_DW_EXYNOS 712 tristate "Exynos specific extensions for Synopsys DW Memory Card Interface" 713 depends on MMC_DW 714 select MMC_DW_PLTFM 715 help 716 This selects support for Samsung Exynos SoC specific extensions to the 717 Synopsys DesignWare Memory Card Interface driver. Select this option 718 for platforms based on Exynos4 and Exynos5 SoC's. 719 720config MMC_DW_K3 721 tristate "K3 specific extensions for Synopsys DW Memory Card Interface" 722 depends on MMC_DW 723 select MMC_DW_PLTFM 724 help 725 This selects support for Hisilicon K3 SoC specific extensions to the 726 Synopsys DesignWare Memory Card Interface driver. Select this option 727 for platforms based on Hisilicon K3 SoC's. 728 729config MMC_DW_PCI 730 tristate "Synopsys Designware MCI support on PCI bus" 731 depends on MMC_DW && PCI 732 help 733 This selects the PCI bus for the Synopsys Designware Mobile Storage IP. 734 Select this option if the IP is present on PCI platform. 735 736 If you have a controller with this interface, say Y or M here. 737 738 If unsure, say N. 739 740config MMC_DW_ROCKCHIP 741 tristate "Rockchip specific extensions for Synopsys DW Memory Card Interface" 742 depends on MMC_DW && ARCH_ROCKCHIP 743 select MMC_DW_PLTFM 744 help 745 This selects support for Rockchip SoC specific extensions to the 746 Synopsys DesignWare Memory Card Interface driver. Select this option 747 for platforms based on RK3066, RK3188 and RK3288 SoC's. 748 749config MMC_DW_ZX 750 tristate "ZTE specific extensions for Synopsys DW Memory Card Interface" 751 depends on MMC_DW && ARCH_ZX 752 select MMC_DW_PLTFM 753 help 754 This selects support for ZTE SoC specific extensions to the 755 Synopsys DesignWare Memory Card Interface driver. Select this option 756 for platforms based on ZX296718 SoC's. 757 758config MMC_SH_MMCIF 759 tristate "SuperH Internal MMCIF support" 760 depends on HAS_DMA 761 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST 762 help 763 This selects the MMC Host Interface controller (MMCIF) found in various 764 Renesas SoCs for SH and ARM architectures. 765 766 767config MMC_JZ4740 768 tristate "JZ4740 SD/Multimedia Card Interface support" 769 depends on MACH_JZ4740 770 help 771 This selects support for the SD/MMC controller on Ingenic JZ4740 772 SoCs. 773 If you have a board based on such a SoC and with a SD/MMC slot, 774 say Y or M here. 775 776config MMC_VUB300 777 tristate "VUB300 USB to SDIO/SD/MMC Host Controller support" 778 depends on USB 779 help 780 This selects support for Elan Digital Systems' VUB300 chip. 781 782 The VUB300 is a USB-SDIO Host Controller Interface chip 783 that enables the host computer to use SDIO/SD/MMC cards 784 via a USB 2.0 or USB 1.1 host. 785 786 The VUB300 chip will be found in both physically separate 787 USB to SDIO/SD/MMC adapters and embedded on some motherboards. 788 789 The VUB300 chip supports SD and MMC memory cards in addition 790 to single and multifunction SDIO cards. 791 792 Some SDIO cards will need a firmware file to be loaded and 793 sent to VUB300 chip in order to achieve better data throughput. 794 Download these "Offload Pseudocode" from Elan Digital Systems' 795 web-site http://www.elandigitalsystems.com/support/downloads.php 796 and put them in /lib/firmware. Note that without these additional 797 firmware files the VUB300 chip will still function, but not at 798 the best obtainable data rate. 799 800 To compile this mmc host controller driver as a module, 801 choose M here: the module will be called vub300. 802 803 If you have a computer with an embedded VUB300 chip 804 or if you intend connecting a USB adapter based on a 805 VUB300 chip say Y or M here. 806 807config MMC_USHC 808 tristate "USB SD Host Controller (USHC) support" 809 depends on USB 810 help 811 This selects support for USB SD Host Controllers based on 812 the Cypress Astoria chip with firmware compliant with CSR's 813 USB SD Host Controller specification (CS-118793-SP). 814 815 CSR boards with this device include: USB<>SDIO (M1985v2), 816 and Ultrasira. 817 818 Note: These controllers only support SDIO cards and do not 819 support MMC or SD memory cards. 820 821config MMC_WMT 822 tristate "Wondermedia SD/MMC Host Controller support" 823 depends on ARCH_VT8500 824 default y 825 help 826 This selects support for the SD/MMC Host Controller on 827 Wondermedia WM8505/WM8650 based SoCs. 828 829 To compile this driver as a module, choose M here: the 830 module will be called wmt-sdmmc. 831 832config MMC_USDHI6ROL0 833 tristate "Renesas USDHI6ROL0 SD/SDIO Host Controller support" 834 depends on HAS_DMA 835 help 836 This selects support for the Renesas USDHI6ROL0 SD/SDIO 837 Host Controller 838 839config MMC_REALTEK_PCI 840 tristate "Realtek PCI-E SD/MMC Card Interface Driver" 841 depends on MFD_RTSX_PCI 842 help 843 Say Y here to include driver code to support SD/MMC card interface 844 of Realtek PCI-E card reader 845 846config MMC_REALTEK_USB 847 tristate "Realtek USB SD/MMC Card Interface Driver" 848 depends on MFD_RTSX_USB 849 help 850 Say Y here to include driver code to support SD/MMC card interface 851 of Realtek RTS5129/39 series card reader 852 853config MMC_SUNXI 854 tristate "Allwinner sunxi SD/MMC Host Controller support" 855 depends on ARCH_SUNXI 856 help 857 This selects support for the SD/MMC Host Controller on 858 Allwinner sunxi SoCs. 859 860config MMC_TOSHIBA_PCI 861 tristate "Toshiba Type A SD/MMC Card Interface Driver" 862 depends on PCI 863 help 864 865config MMC_BCM2835 866 tristate "Broadcom BCM2835 SDHOST MMC Controller support" 867 depends on ARCH_BCM2835 || COMPILE_TEST 868 depends on HAS_DMA 869 help 870 This selects the BCM2835 SDHOST MMC controller. If you have 871 a BCM2835 platform with SD or MMC devices, say Y or M here. 872 873 Note that the BCM2835 has two SD controllers: The Arasan 874 sdhci controller (supported by MMC_SDHCI_IPROC) and a custom 875 sdhost controller (supported by this driver). 876 877 If unsure, say N. 878 879config MMC_MTK 880 tristate "MediaTek SD/MMC Card Interface support" 881 depends on HAS_DMA 882 help 883 This selects the MediaTek(R) Secure digital and Multimedia card Interface. 884 If you have a machine with a integrated SD/MMC card reader, say Y or M here. 885 This is needed if support for any SD/SDIO/MMC devices is required. 886 If unsure, say N. 887 888config MMC_SDHCI_MICROCHIP_PIC32 889 tristate "Microchip PIC32MZDA SDHCI support" 890 depends on MMC_SDHCI && PIC32MZDA && MMC_SDHCI_PLTFM 891 help 892 This selects the Secure Digital Host Controller Interface (SDHCI) 893 for PIC32MZDA platform. 894 895 If you have a controller with this interface, say Y or M here. 896 897 If unsure, say N. 898config MMC_SDHCI_BRCMSTB 899 tristate "Broadcom SDIO/SD/MMC support" 900 depends on ARCH_BRCMSTB || BMIPS_GENERIC 901 depends on MMC_SDHCI_PLTFM 902 default y 903 help 904 This selects support for the SDIO/SD/MMC Host Controller on 905 Broadcom STB SoCs. 906 907 If unsure, say Y. 908 909config MMC_SDHCI_XENON 910 tristate "Marvell Xenon eMMC/SD/SDIO SDHCI driver" 911 depends on MMC_SDHCI_PLTFM 912 help 913 This selects Marvell Xenon eMMC/SD/SDIO SDHCI. 914 If you have a controller with this interface, say Y or M here. 915 If unsure, say N. 916 917config MMC_SDHCI_OMAP 918 tristate "TI SDHCI Controller Support" 919 depends on MMC_SDHCI_PLTFM && OF 920 help 921 This selects the Secure Digital Host Controller Interface (SDHCI) 922 support present in TI's DRA7 SOCs. The controller supports 923 SD/MMC/SDIO devices. 924 925 If you have a controller with this interface, say Y or M here. 926 927 If unsure, say N. 928