drivers/mmc/Kconfig: Make DM_MMC a hidden symbol
At this point in time, DM is always enabled. So if MMC is enabled, it
should select DM_MMC. No drivers need to depend on DM_MMC being enabled
now, so remove that from dependency lists. This now means that a number
of platforms which select'd DM_MMC need to select MMC instead. This also
fixes a migration problem with espresso7420 in that MMC is built again
with the platform.
Reviewed-by: Peter Robinson <pbrobinson@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
diff --git a/arch/Kconfig b/arch/Kconfig
index b0190b1..35b19f9 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -181,13 +181,13 @@
select DM_GPIO
select DM_I2C
select DM_KEYBOARD
- select DM_MMC
select DM_SERIAL
select DM_SPI
select DM_SPI_FLASH
select GZIP_COMPRESSED
select IO_TRACE
select LZO
+ select MMC
select MTD
select OF_BOARD_SETUP
select PCI_ENDPOINT
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 3ed9494..127241e 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1164,7 +1164,6 @@
select DM_SPI if SPI
select DM_SPI_FLASH if SPI && MTD
select DM_KEYBOARD
- select DM_MMC if MMC
select DM_SERIAL
select OF_BOARD_SETUP
select OF_CONTROL
@@ -1212,7 +1211,6 @@
select CPU_V7A
select DM
select DM_GPIO
- select DM_MMC if MMC
select DM_SERIAL
select DM_USB_GADGET if DM_USB
select OF_CONTROL
@@ -1237,7 +1235,6 @@
select ARM64
select CLK
select DM
- select DM_MMC if MMC
select DM_SERIAL
select GICV3
select OF_CONTROL
@@ -1250,7 +1247,6 @@
select ARM64
select CLK
select DM
- select DM_MMC if MMC
select DM_SERIAL
select OF_CONTROL
imply BOARD_LATE_INIT
@@ -1262,7 +1258,6 @@
select ARM64
select CLK
select DM
- select DM_MMC if MMC
select DM_SERIAL
select OF_CONTROL
imply BOARD_LATE_INIT
@@ -1287,7 +1282,6 @@
select CPU_V7A
select DEBUG_UART_BOARD_INIT if SPL && DEBUG_UART
select DM
- select DM_MMC if MMC
select DM_SERIAL
select DM_SPI
select DM_SPI_FLASH
@@ -1316,7 +1310,6 @@
select CLK
select CPU_V7R
select DM
- select DM_MMC if MMC
select DM_SERIAL
select OF_CONTROL
imply CMD_DM
@@ -1330,7 +1323,6 @@
select DM
select DEBUG_UART_BOARD_INIT if SPL && DEBUG_UART
imply DM_MAILBOX
- select DM_MMC if MMC
select DM_SERIAL
select MTD
select DM_SPI if SPI
@@ -1398,8 +1390,8 @@
select PL01X_SERIAL
select DM
select DM_SERIAL
- select DM_MMC
select DM_GPIO
+ select MMC
imply OF_HAS_PRIOR_STAGE
imply MISC_INIT_R
@@ -1905,7 +1897,7 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
+ select MMC
select MTD
select DM_SPI_FLASH
select DM_MDIO
@@ -1946,10 +1938,10 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_MTD
select DM_RESET
select DM_SERIAL
+ select MMC
select OF_BOARD_SETUP
select OF_CONTROL
select OF_LIBFDT
@@ -1993,9 +1985,9 @@
select BLK
select CPU_V7A
select DM
- select DM_MMC
select DM_RESET
select DM_SERIAL
+ select MMC
imply CMD_DM
help
Support for STMicroelectronics STiH407/10 SoC family.
@@ -2042,7 +2034,6 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_PWM
select DM_REGULATOR
select DM_SERIAL
@@ -2051,6 +2042,7 @@
select DM_USB_GADGET if USB_DWC3_GADGET
select ENABLE_ARM_SOC_BOOT0_HOOK
select OF_CONTROL
+ select MMC
select MTD
select SPI
select SPL_DM if SPL
diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig
index 3fee5a4..7e69595 100644
--- a/arch/arm/mach-exynos/Kconfig
+++ b/arch/arm/mach-exynos/Kconfig
@@ -19,7 +19,7 @@
select BOARD_EARLY_INIT_F
select CPU_V7A
select BLK
- select DM_MMC
+ select MMC
help
Samsung Exynos4 SoC family are based on ARM Cortex-A9 CPU. There
are multiple SoCs in this family including Exynos4210, Exynos4412,
@@ -40,7 +40,7 @@
imply USB_ETHER_RTL8152
imply USB_ETHER_SMSC95XX
select BLK
- select DM_MMC
+ select MMC
help
Samsung Exynos5 SoC family are based on ARM Cortex-A15 CPU (and
@@ -52,7 +52,7 @@
select ARM64
select BOARD_EARLY_INIT_F
select BLK
- select DM_MMC
+ select MMC
help
Samsung Exynos7 SoC family are based on ARM Cortex-A57 CPU or
Cortex-A53 CPU (and some in a big.LITTLE configuration). There are
@@ -62,7 +62,7 @@
bool "Exynos9 SoC family"
select ARM64
select BLK
- select DM_MMC
+ select MMC
help
Samsung Exynos9 SoC family are based on ARMv8 Cortex CPU. There are
multiple SoCs in this family including Exynos850.
diff --git a/arch/arm/mach-imx/mx5/Kconfig b/arch/arm/mach-imx/mx5/Kconfig
index d282663..4d1e07b 100644
--- a/arch/arm/mach-imx/mx5/Kconfig
+++ b/arch/arm/mach-imx/mx5/Kconfig
@@ -26,9 +26,9 @@
select DM_I2C
select DM_PMIC
select DM_SERIAL
- select DM_MMC
select BLK
select DM_REGULATOR
+ select MMC
select MX53
imply CMD_DM
diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig
index 1f8022e..4020e16 100644
--- a/arch/arm/mach-imx/mx6/Kconfig
+++ b/arch/arm/mach-imx/mx6/Kconfig
@@ -81,8 +81,8 @@
select BOARD_LATE_INIT
select DM
select DM_GPIO
- select DM_MMC
select DM_THERMAL
+ select MMC
select SPL_DM if SPL
select SPL_OF_CONTROL if SPL
select SPL_PINCTRL if SPL
@@ -176,9 +176,9 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_SERIAL
select DM_THERMAL
+ select MMC
select SUPPORT_SPL
config TARGET_DHCOMIMX6
@@ -197,10 +197,10 @@
depends on MX6Q
select DM
select DM_I2C
- select DM_MMC
select DM_SPI
select DM_GPIO
select DM_SERIAL
+ select MMC
select MTD
select SUPPORT_SPL
imply CMD_DM
@@ -245,7 +245,7 @@
bool "Kosagi Novena"
select BOARD_LATE_INIT
select DM_GPIO
- select DM_MMC
+ select MMC
select PCI
select SCSI
select VIDEO
@@ -280,8 +280,8 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_PMIC
+ select MMC
select OF_CONTROL
imply CMD_DM
@@ -300,10 +300,10 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_PMIC
select DM_PMIC_PFUZE100
select DM_THERMAL
+ select MMC
select OF_CONTROL
select PINCTRL
select SPL
@@ -332,8 +332,8 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_THERMAL
+ select MMC
select OF_CONTROL
select SPL_DM if SPL
select SPL_OF_CONTROL if SPL
@@ -352,8 +352,8 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_THERMAL
+ select MMC
select SUPPORT_SPL
config TARGET_MX6S_SIELAFF
@@ -453,8 +453,8 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_THERMAL
+ select MMC
select OF_CONTROL
select SPL_DM if SPL
select SPL_OF_CONTROL if SPL
@@ -490,9 +490,9 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_SERIAL
select DM_THERMAL
+ select MMC
select SUPPORT_SPL
config TARGET_NITROGEN6X
@@ -507,10 +507,10 @@
bool "Seeed NPI-IMX6ULL"
depends on MX6ULL
select DM
- select DM_MMC
select DM_GPIO
select DM_SERIAL
select DM_THERMAL
+ select MMC
select SUPPORT_SPL
config TARGET_OPOS6ULDEV
@@ -566,9 +566,9 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_SERIAL
select DM_THERMAL
+ select MMC
select SUPPORT_SPL
config TARGET_PCL063_ULL
@@ -577,9 +577,9 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_SERIAL
select DM_THERMAL
+ select MMC
select SUPPORT_SPL
config TARGET_SOMLABS_VISIONSOM_6ULL
@@ -588,9 +588,9 @@
select BOARD_LATE_INIT
select DM
select DM_GPIO
- select DM_MMC
select DM_SERIAL
select DM_THERMAL
+ select MMC
imply CMD_DM
config TARGET_TBS2910
@@ -605,7 +605,7 @@
select DM
select SPL_DM if SPL
select DM_THERMAL
- select DM_MMC
+ select MMC
select DM_REGULATOR
select SPL_DM_REGULATOR if SPL
select DM_SERIAL
@@ -673,7 +673,7 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
+ select MMC
select SUPPORT_SPL
select SPL_DM if SPL
select SPL_OF_CONTROL if SPL
diff --git a/arch/arm/mach-omap2/omap3/Kconfig b/arch/arm/mach-omap2/omap3/Kconfig
index f15f44f..a175e5c 100644
--- a/arch/arm/mach-omap2/omap3/Kconfig
+++ b/arch/arm/mach-omap2/omap3/Kconfig
@@ -30,8 +30,8 @@
select DM
select DM_GPIO
select DM_I2C
- select DM_MMC
select DM_SERIAL
+ select MMC
imply CMD_DM
config TARGET_CM_T35
diff --git a/arch/arm/mach-s5pc1xx/Kconfig b/arch/arm/mach-s5pc1xx/Kconfig
index b6a4b0b..b15b2e7 100644
--- a/arch/arm/mach-s5pc1xx/Kconfig
+++ b/arch/arm/mach-s5pc1xx/Kconfig
@@ -8,8 +8,8 @@
bool "S5P Goni board"
select OF_CONTROL
select BLK
- select DM_MMC
select MISC_COMMON
+ select MMC
config TARGET_SMDKC100
bool "Support smdkc100 board"
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index 0461289..78b8972 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -48,13 +48,13 @@
select DM_GPIO
select DM_I2C
select DM_KEYBOARD
- select DM_MMC
select DM_PWM
select DM_RESET
select DM_SERIAL
select DM_SPI
select DM_SPI_FLASH
select MISC
+ select MMC
select MTD
select OF_CONTROL
select SPI
diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig
index 9f2fecc..46513db 100644
--- a/drivers/mmc/Kconfig
+++ b/drivers/mmc/Kconfig
@@ -3,7 +3,7 @@
config MMC
bool "MMC/SD/SDIO card support"
default ARM || PPC || SANDBOX
- select DM_MMC if DM
+ select DM_MMC
help
This selects MultiMediaCard, Secure Digital and Secure
Digital I/O support.
@@ -39,14 +39,14 @@
If card detection feature is broken, just poll to detect.
config DM_MMC
- bool "Enable MMC controllers using Driver Model"
+ bool
depends on DM
help
- 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.
+ This enables the MultiMediaCard (MMC) driver model 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.
config SPL_DM_MMC
bool "Enable MMC controllers using Driver Model in SPL"
@@ -79,7 +79,7 @@
config MMC_SPI
bool "Support for SPI-based MMC controller"
- depends on DM_MMC && DM_SPI
+ depends on DM_SPI
help
This selects SPI-based MMC controllers.
If you have an MMC controller on a SPI bus, say Y here.
@@ -97,7 +97,6 @@
config ARM_PL180_MMCI
bool "ARM AMBA Multimedia Card Interface and compatible support"
- depends on DM_MMC
help
This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card
Interface (PL180, PL181 and compatible) support.
@@ -258,7 +257,6 @@
config MMC_DW_CORTINA
bool "Cortina specific extensions for Synopsys DW Memory Card Interface"
- depends on DM_MMC
depends on MMC_DW
help
This selects support for Cortina SoC specific extensions to the
@@ -285,7 +283,7 @@
config MMC_DW_ROCKCHIP
bool "Rockchip SD/MMC controller support"
- depends on DM_MMC && OF_CONTROL
+ depends on OF_CONTROL
depends on MMC_DW
help
This enables support for the Rockchip SD/MMM controller, which is
@@ -306,7 +304,6 @@
config MMC_DW_SNPS
bool "Extensions for DW Memory Card Interface used in Synopsys ARC devboards"
depends on MMC_DW
- depends on DM_MMC
depends on OF_CONTROL
depends on CLK
help
@@ -317,13 +314,12 @@
bool "Nexell SD/MMC controller support"
depends on ARCH_NEXELL
depends on MMC_DW
- depends on DM_MMC
depends on PINCTRL_NEXELL
default y
config MMC_MESON_GX
bool "Meson GX EMMC controller support"
- depends on DM_MMC && ARCH_MESON
+ depends on ARCH_MESON
help
Support for EMMC host controller on Meson GX ARM SoCs platform (S905)
@@ -338,7 +334,7 @@
config MMC_OWL
bool "Actions OWL Multimedia Card Interface support"
- depends on ARCH_OWL && DM_MMC
+ depends on ARCH_OWL
help
This selects the OWL SD/MMC host controller found on board
based on Actions S700/S900 SoC.
@@ -366,7 +362,6 @@
config MMC_OCTEONTX
bool "Marvell Octeon Multimedia Card Interface support"
depends on (ARCH_OCTEON || ARCH_OCTEONTX || ARCH_OCTEONTX2)
- depends on DM_MMC
select MMC_SUPPORTS_TUNING if ARCH_OCTEONTX2
help
This selects the Octeon Multimedia card Interface.
@@ -377,7 +372,7 @@
config MVEBU_MMC
bool "Kirkwood MMC controller support"
- depends on DM_MMC && ARCH_KIRKWOOD
+ depends on ARCH_KIRKWOOD
help
Support for MMC host controller on Kirkwood SoCs.
If you are on a Kirkwood architecture, say Y here.
@@ -386,8 +381,7 @@
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
+ select DM_REGULATOR_PBIAS if DM_REGULATOR
help
This selects the TI OMAP High Speed Multimedia card Interface.
If you have an omap2plus board with a Multimedia Card slot,
@@ -430,7 +424,6 @@
config MMC_UNIPHIER
bool "UniPhier SD/MMC Host Controller support"
depends on ARCH_UNIPHIER
- depends on DM_MMC
depends on OF_CONTROL
help
This selects support for the Matsushita SD/MMC Host Controller on
@@ -439,7 +432,6 @@
config RENESAS_SDHI
bool "Renesas R-Car SD/MMC Host Controller support"
depends on ARCH_RENESAS
- depends on DM_MMC
depends on OF_CONTROL
select BOUNCE_BUFFER
help
@@ -449,7 +441,6 @@
config MMC_BCM2835
bool "BCM2835 family custom SD/MMC Host Controller support"
depends on ARCH_BCM283X
- depends on DM_MMC
depends on OF_CONTROL
default y
help
@@ -469,7 +460,7 @@
config MMC_SANDBOX
bool "Sandbox MMC support"
depends on SANDBOX
- depends on DM_MMC && OF_CONTROL
+ depends on 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
@@ -559,7 +550,6 @@
config MMC_SDHCI_ASPEED
bool "Aspeed SDHCI controller"
depends on ARCH_ASPEED
- depends on DM_MMC
depends on MMC_SDHCI
select MISC
help
@@ -571,7 +561,7 @@
config MMC_SDHCI_ATMEL
bool "Atmel SDHCI controller support"
depends on ARCH_AT91
- depends on DM_MMC && ARCH_AT91
+ depends on ARCH_AT91
depends on MMC_SDHCI
help
This enables support for the Atmel SDHCI controller, which supports
@@ -606,7 +596,6 @@
config MMC_SDHCI_CADENCE
bool "SDHCI support for the Cadence SD/SDIO/eMMC controller"
- depends on DM_MMC
depends on MMC_SDHCI
depends on OF_CONTROL
help
@@ -618,7 +607,6 @@
config MMC_SDHCI_CV1800B
bool "SDHCI support for the CV1800B SD/SDIO/eMMC controller"
- depends on DM_MMC
depends on MMC_SDHCI
depends on OF_CONTROL
help
@@ -633,7 +621,7 @@
bool "SDHCI Controller on TI's Am654 devices"
depends on ARCH_K3
depends on MMC_SDHCI
- depends on DM_MMC && OF_CONTROL
+ depends on OF_CONTROL
depends on REGMAP
select MMC_SDHCI_IO_ACCESSORS
help
@@ -653,7 +641,6 @@
config MMC_SDHCI_F_SDH30
bool "SDHCI support for Fujitsu Semiconductor/Socionext F_SDH30"
- depends on DM_MMC
depends on MMC_SDHCI
help
This selects the Secure Digital Host Controller Interface (SDHCI)
@@ -673,7 +660,6 @@
config MMC_SDHCI_MSM
bool "Qualcomm SDHCI controller"
- depends on DM_MMC
depends on MMC_SDHCI
help
Enables support for SDHCI 2.0 controller present on some Qualcomm
@@ -685,7 +671,6 @@
bool "SDHCI support on Marvell platform"
depends on ARCH_MVEBU
depends on MMC_SDHCI
- depends on DM_MMC
help
This selects the Secure Digital Host Controller Interface on
Marvell platform.
@@ -697,7 +682,6 @@
config MMC_SDHCI_NPCM
bool "SDHCI support on Nuvoton NPCM device"
depends on MMC_SDHCI
- depends on DM_MMC
help
This selects the Secure Digital Host Controller Interface (SDHCI)
on Nuvoton NPCM device.
@@ -708,7 +692,7 @@
config MMC_SDHCI_PIC32
bool "Microchip PIC32 on-chip SDHCI support"
- depends on DM_MMC && MACH_PIC32
+ depends on MACH_PIC32
depends on MMC_SDHCI
help
Support for Microchip PIC32 SDHCI controller.
@@ -716,7 +700,6 @@
config MMC_SDHCI_ROCKCHIP
bool "Arasan SDHCI controller for Rockchip support"
depends on ARCH_ROCKCHIP
- depends on DM_MMC
depends on MMC_SDHCI
help
Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
@@ -735,7 +718,6 @@
config MMC_SDHCI_SNPS
bool "Synopsys DesignWare SDHCI controller"
depends on MMC_SDHCI
- depends on DM_MMC
help
Support for DesignWare SDHCI host controller on Alibaba TH1520 SoC.
This is a highly configurable and programmable, high performance
@@ -753,7 +735,7 @@
config MMC_SDHCI_XENON
bool "SDHCI support for the Xenon SDHCI controller"
- depends on MMC_SDHCI && DM_MMC && OF_CONTROL
+ depends on MMC_SDHCI && OF_CONTROL
help
Support for Xenon SDHCI host controller on Marvell Armada 3700
7k/8k ARM SoCs platforms
@@ -764,7 +746,6 @@
config MMC_SDHCI_TANGIER
bool "Tangier SDHCI controller support"
- depends on DM_MMC
depends on MMC_SDHCI
help
This selects support for SDHCI controller on Tanginer
@@ -800,7 +781,7 @@
config MMC_SDHCI_ZYNQ
bool "Arasan SDHCI controller support"
- depends on DM_MMC && OF_CONTROL
+ depends on OF_CONTROL
depends on MMC_SDHCI
help
Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
@@ -842,7 +823,6 @@
config MMC_PITON
bool "MMC support for OpenPiton SoC"
- depends on DM_MMC
help
This selects support for the SD host controller on OpenPiton SoC.
Note that this SD controller directly exposes the contents of the
@@ -851,7 +831,7 @@
config GENERIC_ATMEL_MCI
bool "Atmel Multimedia Card Interface support"
- depends on DM_MMC && ARCH_AT91
+ depends on ARCH_AT91
help
This enables support for Atmel High Speed Multimedia Card Interface
(HSMCI), which supports the MultiMedia Card (MMC) Specification V4.3,
@@ -860,7 +840,7 @@
config STM32_SDMMC2
bool "STMicroelectronics STM32H7 SD/MMC Host Controller support"
- depends on DM_MMC && OF_CONTROL
+ depends on 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,
@@ -880,7 +860,6 @@
config MMC_MTK
bool "MediaTek SD/MMC Card Interface support"
depends on ARCH_MEDIATEK || ARCH_MTMIPS
- depends on DM_MMC
depends on OF_CONTROL
help
This selects the MediaTek(R) Secure digital and Multimedia card Interface.
@@ -911,7 +890,7 @@
config FSL_ESDHC_33V_IO_RELIABILITY_WORKAROUND
bool "enable eSDHC workaround for 3.3v IO reliability issue"
- depends on FSL_ESDHC && DM_MMC
+ depends on FSL_ESDHC
help
When eSDHC operates at 3.3v, damage can accumulate in an internal
level shifter at a higher than expected rate. The faster the interface