uboot/drivers/mmc/Kconfig
<<
>>
Prefs
   1menu "MMC Host controller Support"
   2
   3config MMC
   4        bool "MMC/SD/SDIO card support"
   5        default ARM || PPC || SANDBOX
   6        help
   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.
  12
  13config GENERIC_MMC
  14        bool "Generic MMC driver framework"
  15        default MMC
  16
  17config DM_MMC
  18        bool "Enable MMC controllers using Driver Model"
  19        depends on DM
  20        help
  21          This enables the MultiMediaCard (MMC) uclass which supports MMC and
  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
  27config DM_MMC_OPS
  28        bool "Support MMC controller operations using Driver Model"
  29        depends on DM_MMC
  30        default y if DM_MMC
  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
  37if MMC
  38
  39config 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
  54config MMC_DAVINCI
  55        bool "TI DAVINCI Multimedia Card Interface support"
  56        depends on ARCH_DAVINCI
  57        default y
  58        help
  59          This selects the TI DAVINCI Multimedia card Interface.
  60          If you have an DAVINCI board with a Multimedia Card slot,
  61          say Y here.  If unsure, say N.
  62
  63config MMC_DW
  64        bool "Synopsys DesignWare Memory Card Interface"
  65        help
  66          This selects support for the Synopsys DesignWare Mobile Storage IP
  67          block, this provides host support for SD and MMC interfaces, in both
  68          PIO, internal DMA mode and external DMA mode.
  69
  70config MMC_DW_EXYNOS
  71        bool "Exynos specific extensions for Synopsys DW Memory Card Interface"
  72        depends on ARCH_EXYNOS
  73        depends on MMC_DW
  74        default y
  75        help
  76          This selects support for Samsung Exynos SoC specific extensions to the
  77          Synopsys DesignWare Memory Card Interface driver. Select this option
  78          for platforms based on Exynos4 and Exynos5 SoC's.
  79
  80config MMC_DW_K3
  81        bool "K3 specific extensions for Synopsys DW Memory Card Interface"
  82        depends on MMC_DW
  83        help
  84          This selects support for Hisilicon K3 SoC specific extensions to the
  85          Synopsys DesignWare Memory Card Interface driver. Select this option
  86          for platforms based on Hisilicon K3 SoC's.
  87
  88config MMC_DW_ROCKCHIP
  89        bool "Rockchip SD/MMC controller support"
  90        depends on DM_MMC && OF_CONTROL
  91        depends on MMC_DW
  92        help
  93          This enables support for the Rockchip SD/MMM controller, which is
  94          based on Designware IP. The device is compatible with at least
  95          SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
  96          as removeable SD and micro-SD cards.
  97
  98config MMC_DW_SOCFPGA
  99        bool "SOCFPGA specific extensions for Synopsys DW Memory Card Interface"
 100        depends on ARCH_SOCFPGA
 101        depends on MMC_DW
 102        default y
 103        help
 104          This selects support for Altera SOCFPGA specific extensions to the
 105          Synopsys DesignWare Memory Card Interface driver. Select this option
 106          for platforms based on Altera SOCFPGA.
 107
 108config MMC_MESON_GX
 109        bool "Meson GX EMMC controller support"
 110        depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_MESON
 111        help
 112         Support for EMMC host controller on Meson GX ARM SoCs platform (S905)
 113
 114config MMC_MXC
 115        bool "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
 116        help
 117          This selects the Freescale i.MX21, i.MX27, i.MX31 or MPC512x
 118          Multimedia Card Interface. If you have an i.MX or MPC512x platform
 119          with a Multimedia Card slot, say Y here.
 120
 121          If unsure, say N.
 122
 123config MMC_MXS
 124        bool "Freescale MXS Multimedia Card Interface support"
 125        help
 126          This selects the Freescale SSP MMC controller found on MXS based
 127          platforms like mx23/28.
 128
 129          If unsure, say N.
 130
 131config MMC_PCI
 132        bool "Support for MMC controllers on PCI"
 133        help
 134          This selects PCI-based MMC controllers.
 135          If you have an MMC controller on a PCI bus, say Y here.
 136
 137          If unsure, say N.
 138
 139config MMC_OMAP_HS
 140        bool "TI OMAP High Speed Multimedia Card Interface support"
 141        help
 142          This selects the TI OMAP High Speed Multimedia card Interface.
 143          If you have an omap2plus board with a Multimedia Card slot,
 144          say Y here.
 145
 146          If unsure, say N.
 147
 148config MMC_OMAP36XX_PINS
 149        bool "Enable MMC1 on OMAP36xx/37xx"
 150        depends on OMAP34XX && MMC_OMAP_HS
 151        help
 152          This enables extended-drain in the MMC/SD/SDIO1I/O and
 153          GPIO-associated I/O cells (gpio_126, gpio_127, and gpio_129)
 154          specific to the OMAP36xx/37xx using MMC1
 155
 156          If you have a controller with this interface, say Y here.
 157
 158          If unsure, say N.
 159
 160config SH_SDHI
 161        bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
 162        depends on RMOBILE
 163        help
 164          Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
 165
 166config MMC_UNIPHIER
 167        bool "UniPhier SD/MMC Host Controller support"
 168        depends on ARCH_UNIPHIER
 169        depends on BLK && DM_MMC_OPS
 170        depends on OF_CONTROL
 171        help
 172          This selects support for the SD/MMC Host Controller on UniPhier SoCs.
 173
 174config MMC_SANDBOX
 175        bool "Sandbox MMC support"
 176        depends on SANDBOX
 177        depends on BLK && DM_MMC_OPS && OF_CONTROL
 178        help
 179          This select a dummy sandbox MMC driver. At present this does nothing
 180          other than allow sandbox to be build with MMC support. This
 181          improves build coverage for sandbox and makes it easier to detect
 182          MMC build errors with sandbox.
 183
 184config MMC_SDHCI
 185        bool "Secure Digital Host Controller Interface support"
 186        help
 187          This selects the generic Secure Digital Host Controller Interface.
 188          It is used by manufacturers such as Texas Instruments(R), Ricoh(R)
 189          and Toshiba(R). Most controllers found in laptops are of this type.
 190
 191          If you have a controller with this interface, say Y here.
 192
 193          If unsure, say N.
 194
 195config MMC_SDHCI_IO_ACCESSORS
 196        bool
 197        depends on MMC_SDHCI
 198        help
 199          This is silent Kconfig symbol that is selected by the drivers that
 200          need to overwrite SDHCI IO memory accessors.
 201
 202config MMC_SDHCI_SDMA
 203        bool "Support SDHCI SDMA"
 204        depends on MMC_SDHCI
 205        help
 206          This enables support for the SDMA (Single Operation DMA) defined
 207          in the SD Host Controller Standard Specification Version 1.00 .
 208
 209config MMC_SDHCI_ATMEL
 210        bool "Atmel SDHCI controller support"
 211        depends on ARCH_AT91
 212        depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
 213        depends on MMC_SDHCI
 214        help
 215          This enables support for the Atmel SDHCI controller, which supports
 216          the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD
 217          Memory Card Specification V3.0, and the SDIO V3.0 specification.
 218          It is compliant with the SD Host Controller Standard V3.0
 219          specification.
 220
 221config MMC_SDHCI_BCM2835
 222        tristate "SDHCI support for the BCM2835 SD/MMC Controller"
 223        depends on ARCH_BCM283X
 224        depends on MMC_SDHCI
 225        select MMC_SDHCI_IO_ACCESSORS
 226        help
 227          This selects the BCM2835 SD/MMC controller.
 228
 229          If you have a BCM2835 platform with SD or MMC devices,
 230          say Y here.
 231
 232          If unsure, say N.
 233
 234config MMC_SDHCI_CADENCE
 235        bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
 236        depends on BLK && DM_MMC_OPS
 237        depends on MMC_SDHCI
 238        depends on OF_CONTROL
 239        help
 240          This selects the Cadence SD/SDIO/eMMC driver.
 241
 242          If you have a controller with this interface, say Y here.
 243
 244          If unsure, say N.
 245
 246config MMC_SDHCI_KONA
 247        bool "SDHCI support on Broadcom KONA platform"
 248        depends on MMC_SDHCI
 249        help
 250          This selects the Broadcom Kona Secure Digital Host Controller
 251          Interface(SDHCI) support.
 252          This is used in Broadcom mobile SoCs.
 253
 254          If you have a controller with this interface, say Y here.
 255
 256config MMC_SDHCI_MSM
 257        bool "Qualcomm SDHCI controller"
 258        depends on BLK && DM_MMC_OPS
 259        depends on MMC_SDHCI
 260        help
 261          Enables support for SDHCI 2.0 controller present on some Qualcomm
 262          Snapdragon devices. This device is compatible with eMMC v4.5 and
 263          SD 3.0 specifications. Both SD and eMMC devices are supported.
 264          Card-detect gpios are not supported.
 265
 266config MMC_SDHCI_MV
 267        bool "SDHCI support on Marvell platform"
 268        depends on ARCH_MVEBU
 269        depends on MMC_SDHCI
 270        help
 271          This selects the Secure Digital Host Controller Interface on
 272          Marvell platform.
 273
 274          If you have a controller with this interface, say Y here.
 275
 276          If unsure, say N.
 277
 278config MMC_SDHCI_PIC32
 279        bool "Microchip PIC32 on-chip SDHCI support"
 280        depends on DM_MMC && MACH_PIC32
 281        depends on MMC_SDHCI
 282        help
 283          Support for Microchip PIC32 SDHCI controller.
 284
 285config MMC_SDHCI_ROCKCHIP
 286        bool "Arasan SDHCI controller for Rockchip support"
 287        depends on ARCH_ROCKCHIP
 288        depends on DM_MMC && BLK && DM_MMC_OPS
 289        depends on MMC_SDHCI
 290        help
 291          Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
 292
 293config MMC_SDHCI_S5P
 294        bool "SDHCI support on Samsung S5P SoC"
 295        depends on MMC_SDHCI
 296        help
 297          This selects the Secure Digital Host Controller Interface (SDHCI)
 298          on Samsung S5P SoCs.
 299
 300          If you have a controller with this interface, say Y here.
 301
 302          If unsure, say N.
 303
 304config MMC_SDHCI_SPEAR
 305        bool "SDHCI support on ST SPEAr platform"
 306        depends on MMC_SDHCI
 307        help
 308          This selects the Secure Digital Host Controller Interface (SDHCI)
 309          often referrered to as the HSMMC block in some of the ST SPEAR range
 310          of SoC
 311
 312          If you have a controller with this interface, say Y here.
 313
 314          If unsure, say N.
 315
 316config MMC_SDHCI_STI
 317        bool "SDHCI support for STMicroelectronics SoC"
 318        depends on MMC_SDHCI && OF_CONTROL
 319        help
 320          This selects the Secure Digital Host Controller Interface (SDHCI)
 321          on STMicroelectronics STiH410 SoC.
 322
 323config MMC_SDHCI_XENON
 324        bool "SDHCI support for the Xenon SDHCI controller"
 325        depends on MMC_SDHCI && DM_MMC && OF_CONTROL
 326        help
 327          Support for Xenon SDHCI host controller on Marvell Armada 3700
 328          7k/8k ARM SoCs platforms
 329
 330          If you have a controller with this interface, say Y here.
 331
 332          If unsure, say N.
 333
 334config MMC_SDHCI_TANGIER
 335        bool "Tangier SDHCI controller support"
 336        depends on DM_MMC && BLK
 337        depends on MMC_SDHCI
 338        help
 339          This selects support for SDHCI controller on Tanginer
 340          SoC. Note that this controller does not sit on PCI bus and,
 341          hence, cannot be enumerated by standard PCI means.
 342
 343          If you're using an Intel Tangier SoC (available on Intel
 344          Edison board), say Y here.
 345
 346          If unsure, say N.
 347
 348config MMC_SDHCI_TEGRA
 349        bool "SDHCI platform support for the Tegra SD/MMC Controller"
 350        depends on TEGRA
 351        default y
 352        help
 353          This selects the Tegra SD/MMC controller. If you have a Tegra
 354          platform with SD or MMC devices, say Y here.
 355
 356          If unsure, say N.
 357
 358config MMC_SDHCI_ZYNQ
 359        bool "Arasan SDHCI controller support"
 360        depends on ARCH_ZYNQ || ARCH_ZYNQMP
 361        depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
 362        depends on MMC_SDHCI
 363        help
 364          Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
 365
 366config MMC_SUNXI
 367        bool "Allwinner sunxi SD/MMC Host Controller support"
 368        depends on ARCH_SUNXI && !UART0_PORT_F
 369        default y
 370        help
 371          This selects support for the SD/MMC Host Controller on
 372          Allwinner sunxi SoCs.
 373
 374config GENERIC_ATMEL_MCI
 375        bool "Atmel Multimedia Card Interface support"
 376        depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
 377        help
 378          This enables support for Atmel High Speed Multimedia Card Interface
 379          (HSMCI), which supports the MultiMedia Card (MMC) Specification V4.3,
 380          the SD Memory Card Specification V2.0, the SDIO V2.0 specification
 381          and CE-ATA V1.1.
 382
 383endif
 384
 385config TEGRA124_MMC_DISABLE_EXT_LOOPBACK
 386        bool "Disable external clock loopback"
 387        depends on MMC_SDHCI_TEGRA && TEGRA124
 388        help
 389          Disable the external clock loopback and use the internal one on SDMMC3
 390          as per the SDMMC_VENDOR_MISC_CNTRL_0 register's SDMMC_SPARE1 bits
 391          being set to 0xfffd according to the TRM.
 392
 393          TODO(marcel.ziswiler@toradex.com): Move to device tree controlled
 394          approach once proper kernel integration made it mainline.
 395
 396endmenu
 397
 398config SYS_FSL_ERRATUM_ESDHC111
 399        bool
 400
 401config SYS_FSL_ERRATUM_ESDHC13
 402        bool
 403
 404config SYS_FSL_ERRATUM_ESDHC135
 405        bool
 406
 407config SYS_FSL_ERRATUM_ESDHC_A001
 408        bool
 409