]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - drivers/mmc/Kconfig
mmc: arm_pl180_mmci: adapt driver to DM usage
[people/ms/u-boot.git] / drivers / mmc / Kconfig
index 0c0778111593e97a4ab48fe497e0aa3b87a659cd..62ce0af7d3c3bde24b6b89d2e663ce2b200efb4f 100644 (file)
@@ -10,10 +10,6 @@ config MMC
          If you want MMC/SD/SDIO support, you should say Y here and
          also to your specific host controller driver.
 
-config GENERIC_MMC
-       bool "Generic MMC driver framework"
-       default MMC
-
 config DM_MMC
        bool "Enable MMC controllers using Driver Model"
        depends on DM
@@ -24,18 +20,28 @@ config DM_MMC
          appear as block devices in U-Boot and can support filesystems such
          as EXT4 and FAT.
 
-config DM_MMC_OPS
-       bool "Support MMC controller operations using Driver Model"
-       depends on DM_MMC
-       default y if DM_MMC
+config SPL_DM_MMC
+       bool "Enable MMC controllers using Driver Model in SPL"
+       depends on SPL_DM && DM_MMC
+       default y
        help
-         Driver model provides a means of supporting device operations. This
-         option moves MMC operations under the control of driver model. The
-         option will be removed as soon as all DM_MMC drivers use it, as it
-         will the only supported behaviour.
+         This enables the MultiMediaCard (MMC) uclass which supports MMC and
+         Secure Digital I/O (SDIO) cards. Both removable (SD, micro-SD, etc.)
+         and non-removable (e.g. eMMC chip) devices are supported. These
+         appear as block devices in U-Boot and can support filesystems such
+         as EXT4 and FAT.
 
 if MMC
 
+config ARM_PL180_MMCI
+       bool "ARM AMBA Multimedia Card Interface and compatible support"
+       depends on DM_MMC && OF_CONTROL
+       help
+         This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
+         Interface (PL180, PL181 and compatible) support.
+         If you have an ARM(R) platform with a Multimedia Card slot,
+         say Y or M here.
+
 config SPL_MMC_TINY
        bool "Tiny MMC framework in SPL"
        help
@@ -105,6 +111,12 @@ config MMC_DW_SOCFPGA
          Synopsys DesignWare Memory Card Interface driver. Select this option
          for platforms based on Altera SOCFPGA.
 
+config MMC_MESON_GX
+       bool "Meson GX EMMC controller support"
+       depends on DM_MMC && BLK && ARCH_MESON
+       help
+        Support for EMMC host controller on Meson GX ARM SoCs platform (S905)
+
 config MMC_MXC
        bool "Freescale i.MX21/27/31 or MPC512x Multimedia Card support"
        help
@@ -122,8 +134,18 @@ config MMC_MXS
 
          If unsure, say N.
 
+config MMC_PCI
+       bool "Support for MMC controllers on PCI"
+       help
+         This selects PCI-based MMC controllers.
+         If you have an MMC controller on a PCI bus, say Y here.
+
+         If unsure, say N.
+
 config MMC_OMAP_HS
        bool "TI OMAP High Speed Multimedia Card Interface support"
+       select DM_REGULATOR_PBIAS if DM_MMC && DM_REGULATOR
+       select DM_REGULATOR_PBIAS if DM_MMC && DM_REGULATOR
        help
          This selects the TI OMAP High Speed Multimedia card Interface.
          If you have an omap2plus board with a Multimedia Card slot,
@@ -131,24 +153,37 @@ config MMC_OMAP_HS
 
          If unsure, say N.
 
+config MMC_OMAP36XX_PINS
+       bool "Enable MMC1 on OMAP36xx/37xx"
+       depends on OMAP34XX && MMC_OMAP_HS
+       help
+         This enables extended-drain in the MMC/SD/SDIO1I/O and
+         GPIO-associated I/O cells (gpio_126, gpio_127, and gpio_129)
+         specific to the OMAP36xx/37xx using MMC1
+
+         If you have a controller with this interface, say Y here.
+
+         If unsure, say N.
+
 config SH_SDHI
        bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
-       depends on RMOBILE
+       depends on ARCH_RMOBILE
        help
          Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
 
 config MMC_UNIPHIER
-       bool "UniPhier SD/MMC Host Controller support"
-       depends on ARCH_UNIPHIER
-       depends on BLK && DM_MMC_OPS
+       bool "UniPhier/RCar SD/MMC Host Controller support"
+       depends on ARCH_UNIPHIER || ARCH_RMOBILE
+       depends on BLK && DM_MMC
        depends on OF_CONTROL
        help
-         This selects support for the SD/MMC Host Controller on UniPhier SoCs.
+         This selects support for the Matsushita SD/MMC Host Controller on
+         SocioNext UniPhier and Renesas RCar SoCs.
 
 config MMC_SANDBOX
        bool "Sandbox MMC support"
        depends on SANDBOX
-       depends on BLK && DM_MMC_OPS && OF_CONTROL
+       depends on BLK && DM_MMC && OF_CONTROL
        help
          This select a dummy sandbox MMC driver. At present this does nothing
          other than allow sandbox to be build with MMC support. This
@@ -183,7 +218,7 @@ config MMC_SDHCI_SDMA
 config MMC_SDHCI_ATMEL
        bool "Atmel SDHCI controller support"
        depends on ARCH_AT91
-       depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
+       depends on DM_MMC && BLK && ARCH_AT91
        depends on MMC_SDHCI
        help
          This enables support for the Atmel SDHCI controller, which supports
@@ -207,7 +242,7 @@ config MMC_SDHCI_BCM2835
 
 config MMC_SDHCI_CADENCE
        bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
-       depends on BLK && DM_MMC_OPS
+       depends on BLK && DM_MMC
        depends on MMC_SDHCI
        depends on OF_CONTROL
        help
@@ -229,7 +264,7 @@ config MMC_SDHCI_KONA
 
 config MMC_SDHCI_MSM
        bool "Qualcomm SDHCI controller"
-       depends on BLK && DM_MMC_OPS
+       depends on BLK && DM_MMC
        depends on MMC_SDHCI
        help
          Enables support for SDHCI 2.0 controller present on some Qualcomm
@@ -259,7 +294,7 @@ config MMC_SDHCI_PIC32
 config MMC_SDHCI_ROCKCHIP
        bool "Arasan SDHCI controller for Rockchip support"
        depends on ARCH_ROCKCHIP
-       depends on DM_MMC && BLK && DM_MMC_OPS
+       depends on DM_MMC && BLK
        depends on MMC_SDHCI
        help
          Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
@@ -287,6 +322,13 @@ config MMC_SDHCI_SPEAR
 
          If unsure, say N.
 
+config MMC_SDHCI_STI
+       bool "SDHCI support for STMicroelectronics SoC"
+       depends on MMC_SDHCI && OF_CONTROL
+       help
+         This selects the Secure Digital Host Controller Interface (SDHCI)
+         on STMicroelectronics STiH410 SoC.
+
 config MMC_SDHCI_XENON
        bool "SDHCI support for the Xenon SDHCI controller"
        depends on MMC_SDHCI && DM_MMC && OF_CONTROL
@@ -298,6 +340,20 @@ config MMC_SDHCI_XENON
 
          If unsure, say N.
 
+config MMC_SDHCI_TANGIER
+       bool "Tangier SDHCI controller support"
+       depends on DM_MMC && BLK
+       depends on MMC_SDHCI
+       help
+         This selects support for SDHCI controller on Tanginer
+         SoC. Note that this controller does not sit on PCI bus and,
+         hence, cannot be enumerated by standard PCI means.
+
+         If you're using an Intel Tangier SoC (available on Intel
+         Edison board), say Y here.
+
+         If unsure, say N.
+
 config MMC_SDHCI_TEGRA
        bool "SDHCI platform support for the Tegra SD/MMC Controller"
        depends on TEGRA
@@ -311,7 +367,7 @@ config MMC_SDHCI_TEGRA
 config MMC_SDHCI_ZYNQ
        bool "Arasan SDHCI controller support"
        depends on ARCH_ZYNQ || ARCH_ZYNQMP
-       depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
+       depends on DM_MMC && OF_CONTROL && BLK
        depends on MMC_SDHCI
        help
          Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
@@ -324,8 +380,40 @@ config MMC_SUNXI
          This selects support for the SD/MMC Host Controller on
          Allwinner sunxi SoCs.
 
+config MMC_SUNXI_HAS_NEW_MODE
+       bool
+       depends on MMC_SUNXI
+
+config GENERIC_ATMEL_MCI
+       bool "Atmel Multimedia Card Interface support"
+       depends on DM_MMC && BLK && ARCH_AT91
+       help
+         This enables support for Atmel High Speed Multimedia Card Interface
+         (HSMCI), which supports the MultiMedia Card (MMC) Specification V4.3,
+         the SD Memory Card Specification V2.0, the SDIO V2.0 specification
+         and CE-ATA V1.1.
+
+config STM32_SDMMC2
+       bool "STMicroelectronics STM32H7 SD/MMC Host Controller support"
+       depends on DM_MMC && BLK && OF_CONTROL
+       help
+         This selects support for the SD/MMC controller on STM32H7 SoCs.
+         If you have a board based on such a SoC and with a SD/MMC slot,
+         say Y or M here.
+
 endif
 
+config TEGRA124_MMC_DISABLE_EXT_LOOPBACK
+       bool "Disable external clock loopback"
+       depends on MMC_SDHCI_TEGRA && TEGRA124
+       help
+         Disable the external clock loopback and use the internal one on SDMMC3
+         as per the SDMMC_VENDOR_MISC_CNTRL_0 register's SDMMC_SPARE1 bits
+         being set to 0xfffd according to the TRM.
+
+         TODO(marcel.ziswiler@toradex.com): Move to device tree controlled
+         approach once proper kernel integration made it mainline.
+
 endmenu
 
 config SYS_FSL_ERRATUM_ESDHC111