u-boot/drivers/mmc/Kconfig
Masahiro Yamada e298c46ac3 mmc: make MMC driver entries dependent on MMC
Currently, CONFIG_MMC is not related to any other options by
"depends on" or "select".  One of big advantages of using Kconfig
is automatic dependency tracking, but the current state is lacking
it.  As the first step, make the existing MMC driver entries depend
on MMC.

This commit was created by the following steps:

[1] Run the following script:

--------------------8<--------------------
rm -f tmp.txt

for d in $(find . -path './configs/*_defconfig')
do
        if grep -q -e 'CONFIG_MSM_SDHCI=y' $d ||
           grep -q -e 'CONFIG_ATMEL_SDHCI=y' $d ||
           grep -q -e 'CONFIG_ROCKCHIP_DWMMC=y' $d ||
           grep -q -e 'CONFIG_SH_SDHI=y' $d ||
           grep -q -e 'CONFIG_PIC32_SDHCI=y' $d ||
           grep -q -e 'CONFIG_ZYNQ_SDHCI=y' $d ||
           grep -q -e 'CONFIG_ROCKCHIP_SDHCI=y' $d ||
           grep -q -e 'CONFIG_MMC_UNIPHIER=y' $d ||
           grep -q -e 'CONFIG_SANDBOX_MMC=y' $d
        then
                echo CONFIG_MMC=y >> $d
                echo ${d#./configs/} >> tmp.txt
        fi
done

tools/moveconfig.py -y -s -d tmp.txt
rm tmp.txt
--------------------8<--------------------

[2] surround MMC driver entries with "if MMC" and "endif"

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2016-12-29 13:08:07 -05:00

121 lines
4.1 KiB
Text

menu "MMC Host controller Support"
config MMC
bool "MMC/SD/SDIO card support"
default ARM || PPC || SANDBOX
help
This selects MultiMediaCard, Secure Digital and Secure
Digital I/O support.
If you want MMC/SD/SDIO support, you should say Y here and
also to your specific host controller driver.
config DM_MMC
bool "Enable MMC controllers using Driver Model"
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.
config DM_MMC_OPS
bool "Support MMC controller operations using Driver Model"
depends on DM_MMC
default y if DM_MMC
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.
if MMC
config SPL_MMC_TINY
bool "Tiny MMC framework in SPL"
help
Enable MMC framework tinification support. This option is useful if
if your SPL is extremely size constrained. Heed the warning, enable
this option if and only if you know exactly what you are doing, if
you are reading this help text, you most likely have no idea :-)
The MMC framework is reduced to bare minimum to be useful. No malloc
support is needed for the MMC framework operation with this option
enabled. The framework supports exactly one MMC device and exactly
one MMC driver. The MMC driver can be adjusted to avoid any malloc
operations too, which can remove the need for malloc support in SPL
and thus further reduce footprint.
config MSM_SDHCI
bool "Qualcomm SDHCI controller"
depends on DM_MMC && BLK && DM_MMC_OPS
help
Enables support for SDHCI 2.0 controller present on some Qualcomm
Snapdragon devices. This device is compatible with eMMC v4.5 and
SD 3.0 specifications. Both SD and eMMC devices are supported.
Card-detect gpios are not supported.
config ATMEL_SDHCI
bool "Atmel SDHCI controller support"
depends on DM_MMC && BLK && DM_MMC_OPS && ARCH_AT91
help
This enables support for the Atmel SDHCI controller, which supports
the embedded MultiMedia Card (e.MMC) Specification V4.51, the SD
Memory Card Specification V3.0, and the SDIO V3.0 specification.
It is compliant with the SD Host Controller Standard V3.0
specification.
config ROCKCHIP_DWMMC
bool "Rockchip SD/MMC controller support"
depends on DM_MMC && OF_CONTROL
help
This enables support for the Rockchip SD/MMM controller, which is
based on Designware IP. The device is compatible with at least
SD 3.0, SDIO 3.0 and MMC 4.5 and supports common eMMC chips as well
as removeable SD and micro-SD cards.
config SH_SDHI
bool "SuperH/Renesas ARM SoCs on-chip SDHI host controller support"
depends on RMOBILE
help
Support for the on-chip SDHI host controller on SuperH/Renesas ARM SoCs platform
config PIC32_SDHCI
bool "Microchip PIC32 on-chip SDHCI support"
depends on DM_MMC && MACH_PIC32
help
Support for Microchip PIC32 SDHCI controller.
config ZYNQ_SDHCI
bool "Arasan SDHCI controller support"
depends on DM_MMC && OF_CONTROL && BLK && DM_MMC_OPS
help
Support for Arasan SDHCI host controller on Zynq/ZynqMP ARM SoCs platform
config ROCKCHIP_SDHCI
bool "Arasan SDHCI controller for Rockchip support"
depends on DM_MMC && BLK && DM_MMC_OPS
help
Support for Arasan SDHCI host controller on Rockchip ARM SoCs platform
config MMC_UNIPHIER
bool "UniPhier SD/MMC Host Controller support"
depends on ARCH_UNIPHIER
depends on BLK
select DM_MMC_OPS
help
This selects support for the SD/MMC Host Controller on UniPhier SoCs.
config SANDBOX_MMC
bool "Sandbox MMC support"
depends on MMC && SANDBOX
help
This select a dummy sandbox MMC driver. At present this does nothing
other than allow sandbox to be build with MMC support. This
improves build coverage for sandbox and makes it easier to detect
MMC build errors with sandbox.
endif
endmenu