diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2016-12-07 22:10:29 +0900 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2016-12-29 13:08:16 -0500 |
commit | 45a68fe267f14aae05c5d244b1bcda075de7d0a6 (patch) | |
tree | 66c66c49f8c2c460b583a27d27d3fa7c13023ff6 /drivers/mmc | |
parent | e1ce61fbba76304b5ff7e328a55050ceea5028ef (diff) | |
download | u-boot-45a68fe267f14aae05c5d244b1bcda075de7d0a6.tar.gz |
mmc: move some SDHCI related options to Kconfig
While I moved the options, I also renamed them so that they are all
prefixed with MMC_SDHCI_.
This commit was created in the following steps.
[1] Rename with the following command
find . -name .git -prune -o ! -path ./scripts/config_whitelist.txt \
-type f -print | xargs sed -i -e '
s/CONFIG_MMC_SDMA/CONFIG_MMC_SDHCI_SDMA/g
s/CONFIG_BCM2835_SDHCI/CONFIG_MMC_SDHCI_BCM2835/g
s/CONFIG_KONA_SDHCI/CONFIG_MMC_SDHCI_KONA/g
s/CONFIG_MV_SDHCI/CONFIG_MMC_SDHCI_MV/g
s/CONFIG_S5P_SDHCI/CONFIG_MMC_SDHCI_S5P/g
s/CONFIG_SPEAR_SDHCI/CONFIG_MMC_SDHCI_SPEAR/g
'
[2] create the Kconfig entries in drivers/mmc/Kconfig
[3] Move the options by the following command
tools/moveconfig.py -y MMC_SDHCI_SDMA MMC_SDHCI_BCM2835 \
MMC_SDHCI_KONA MMC_SDHCI_MV MMC_SDHCI_S5P MMC_SDHCI_SPEAR
[4] Sort drivers/mmc/Makefile for readability
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/Kconfig | 64 | ||||
-rw-r--r-- | drivers/mmc/Makefile | 13 | ||||
-rw-r--r-- | drivers/mmc/sdhci.c | 10 |
3 files changed, 77 insertions, 10 deletions
diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig index 7d7ef370d4..cfb4e14741 100644 --- a/drivers/mmc/Kconfig +++ b/drivers/mmc/Kconfig @@ -132,6 +132,70 @@ config MMC_SDHCI If unsure, say N. +config MMC_SDHCI_SDMA + bool "Support SDHCI SDMA" + depends on MMC_SDHCI + help + This enables support for the SDMA (Single Operation DMA) defined + in the SD Host Controller Standard Specification Version 1.00 . + +config MMC_SDHCI_BCM2835 + tristate "SDHCI support for the BCM2835 SD/MMC Controller" + depends on ARCH_BCM283X + depends on MMC_SDHCI + help + This selects the BCM2835 SD/MMC controller. + + If you have a BCM2835 platform with SD or MMC devices, + say Y here. + + If unsure, say N. + +config MMC_SDHCI_KONA + bool "SDHCI support on Broadcom KONA platform" + depends on MMC_SDHCI + help + This selects the Broadcom Kona Secure Digital Host Controller + Interface(SDHCI) support. + This is used in Broadcom mobile SoCs. + + If you have a controller with this interface, say Y here. + +config MMC_SDHCI_MV + bool "SDHCI support on Marvell platform" + depends on ARCH_MVEBU + depends on MMC_SDHCI + help + This selects the Secure Digital Host Controller Interface on + Marvell platform. + + If you have a controller with this interface, say Y here. + + If unsure, say N. + +config MMC_SDHCI_S5P + bool "SDHCI support on Samsung S5P SoC" + depends on MMC_SDHCI + help + This selects the Secure Digital Host Controller Interface (SDHCI) + on Samsung S5P SoCs. + + If you have a controller with this interface, say Y here. + + If unsure, say N. + +config MMC_SDHCI_SPEAR + bool "SDHCI support on ST SPEAr platform" + depends on MMC_SDHCI + help + This selects the Secure Digital Host Controller Interface (SDHCI) + often referrered to as the HSMMC block in some of the ST SPEAR range + of SoC + + If you have a controller with this interface, say Y here. + + If unsure, say N. + endif endmenu diff --git a/drivers/mmc/Makefile b/drivers/mmc/Makefile index dd88f7c77f..2b136ea21e 100644 --- a/drivers/mmc/Makefile +++ b/drivers/mmc/Makefile @@ -15,7 +15,6 @@ endif obj-$(CONFIG_ARM_PL180_MMCI) += arm_pl180_mmci.o obj-$(CONFIG_ATMEL_SDHCI) += atmel_sdhci.o -obj-$(CONFIG_BCM2835_SDHCI) += bcm2835_sdhci.o obj-$(CONFIG_BFIN_SDH) += bfin_sdh.o obj-$(CONFIG_DAVINCI_MMC) += davinci_mmc.o obj-$(CONFIG_DWMMC) += dw_mmc.o @@ -29,10 +28,8 @@ ifdef CONFIG_SUPPORT_EMMC_BOOT obj-$(CONFIG_GENERIC_MMC) += mmc_boot.o endif obj-$(CONFIG_GENERIC_ATMEL_MCI) += gen_atmel_mci.o -obj-$(CONFIG_KONA_SDHCI) += kona_sdhci.o obj-$(CONFIG_MMC_SPI) += mmc_spi.o obj-$(CONFIG_MMC_SUNXI) += sunxi_mmc.o -obj-$(CONFIG_MV_SDHCI) += mv_sdhci.o obj-$(CONFIG_MVEBU_MMC) += mvebu_mmc.o obj-$(CONFIG_MXC_MMC) += mxcmmc.o obj-$(CONFIG_MXS_MMC) += mxsmmc.o @@ -42,13 +39,11 @@ obj-$(CONFIG_PXA_MMC_GENERIC) += pxa_mmc_gen.o obj-$(CONFIG_ROCKCHIP_DWMMC) += rockchip_dw_mmc.o obj-$(CONFIG_SUPPORT_EMMC_RPMB) += rpmb.o obj-$(CONFIG_S3C_SDI) += s3c_sdi.o -obj-$(CONFIG_S5P_SDHCI) += s5p_sdhci.o ifdef CONFIG_BLK ifdef CONFIG_GENERIC_MMC obj-$(CONFIG_SANDBOX) += sandbox_mmc.o endif endif -obj-$(CONFIG_MMC_SDHCI) += sdhci.o obj-$(CONFIG_SH_MMCIF) += sh_mmcif.o obj-$(CONFIG_SH_SDHI) += sh_sdhi.o obj-$(CONFIG_SOCFPGA_DWMMC) += socfpga_dw_mmc.o @@ -65,3 +60,11 @@ obj-$(CONFIG_GENERIC_MMC) += mmc_write.o endif obj-$(CONFIG_PIC32_SDHCI) += pic32_sdhci.o obj-$(CONFIG_MSM_SDHCI) += msm_sdhci.o + +# SDHCI +obj-$(CONFIG_MMC_SDHCI) += sdhci.o +obj-$(CONFIG_MMC_SDHCI_BCM2835) += bcm2835_sdhci.o +obj-$(CONFIG_MMC_SDHCI_KONA) += kona_sdhci.o +obj-$(CONFIG_MMC_SDHCI_MV) += mv_sdhci.o +obj-$(CONFIG_MMC_SDHCI_S5P) += s5p_sdhci.o +obj-$(CONFIG_MMC_SDHCI_SPEAR) += spear_sdhci.o diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 766e9eef84..cbf5f56221 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -72,7 +72,7 @@ static int sdhci_transfer_data(struct sdhci_host *host, struct mmc_data *data, unsigned int start_addr) { unsigned int stat, rdy, mask, timeout, block = 0; -#ifdef CONFIG_MMC_SDMA +#ifdef CONFIG_MMC_SDHCI_SDMA unsigned char ctrl; ctrl = sdhci_readb(host, SDHCI_HOST_CONTROL); ctrl &= ~SDHCI_CTRL_DMA_MASK; @@ -98,7 +98,7 @@ static int sdhci_transfer_data(struct sdhci_host *host, struct mmc_data *data, if (++block >= data->blocks) break; } -#ifdef CONFIG_MMC_SDMA +#ifdef CONFIG_MMC_SDHCI_SDMA if (stat & SDHCI_INT_DMA_END) { sdhci_writel(host, SDHCI_INT_DMA_END, SDHCI_INT_STATUS); start_addr &= ~(SDHCI_DEFAULT_BOUNDARY_SIZE - 1); @@ -204,7 +204,7 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd, if (data->flags == MMC_DATA_READ) mode |= SDHCI_TRNS_READ; -#ifdef CONFIG_MMC_SDMA +#ifdef CONFIG_MMC_SDHCI_SDMA if (data->flags == MMC_DATA_READ) start_addr = (unsigned long)data->dest; else @@ -241,7 +241,7 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd, } sdhci_writel(host, cmd->cmdarg, SDHCI_ARGUMENT); -#ifdef CONFIG_MMC_SDMA +#ifdef CONFIG_MMC_SDHCI_SDMA trans_bytes = ALIGN(trans_bytes, CONFIG_SYS_CACHELINE_SIZE); flush_cache(start_addr, trans_bytes); #endif @@ -540,7 +540,7 @@ int sdhci_setup_cfg(struct mmc_config *cfg, struct sdhci_host *host, caps = sdhci_readl(host, SDHCI_CAPABILITIES); -#ifdef CONFIG_MMC_SDMA +#ifdef CONFIG_MMC_SDHCI_SDMA if (!(caps & SDHCI_CAN_DO_SDMA)) { printf("%s: Your controller doesn't support SDMA!!\n", __func__); |