[U-Boot] [PATCH v3 4/6] cmd: Remove mmc_spi command
Peng Fan
peng.fan at nxp.com
Mon Jul 15 07:06:57 UTC 2019
> Subject: [PATCH v3 4/6] cmd: Remove mmc_spi command
>
> The mmc_spi command was added to manually setup MMC over SPI bus
> using command. This was required by the legacy non-DM MMC_SPI driver.
>
> With DM based MMC_SPI driver in-place, we can now use all general storge
> commands and mmc command for MMC over SPI bus hence we remove the
> mmc_spi command all it's references.
>
> Suggested-by: Bin Meng <bmeng.cn at gmail.com>
> Signed-off-by: Anup Patel <anup.patel at wdc.com>
> ---
> cmd/Kconfig | 9 ---
> cmd/Makefile | 1 -
> cmd/mmc_spi.c | 88 ------------------------------
> configs/UCP1020_SPIFLASH_defconfig | 1 -
> configs/UCP1020_defconfig | 1 -
> include/configs/UCP1020.h | 1 -
> include/mmc.h | 1 -
> 7 files changed, 102 deletions(-)
> delete mode 100644 cmd/mmc_spi.c
>
> diff --git a/cmd/Kconfig b/cmd/Kconfig
> index 0badcb3fe0..2cdde28cbe 100644
> --- a/cmd/Kconfig
> +++ b/cmd/Kconfig
> @@ -925,15 +925,6 @@ config CMD_NVME
> help
> NVM Express device support
>
> -config CMD_MMC_SPI
> - bool "mmc_spi - Set up MMC SPI device"
> - help
> - Provides a way to set up an MMC (Multimedia Card) SPI (Serial
> - Peripheral Interface) device. The device provides a means of
> - accessing an MMC device via SPI using a single data line, limited
> - to 20MHz. It is useful since it reduces the amount of protocol code
> - required.
> -
> config CMD_ONENAND
> bool "onenand - access to onenand device"
> help
> diff --git a/cmd/Makefile b/cmd/Makefile index f982564ab9..9fc8df9004
> 100644
> --- a/cmd/Makefile
> +++ b/cmd/Makefile
> @@ -92,7 +92,6 @@ obj-$(CONFIG_CMD_MII) += mdio.o endif
> obj-$(CONFIG_CMD_MISC) += misc.o
> obj-$(CONFIG_CMD_MMC) += mmc.o
> -obj-$(CONFIG_CMD_MMC_SPI) += mmc_spi.o
> obj-$(CONFIG_MP) += mp.o
> obj-$(CONFIG_CMD_MTD) += mtd.o
> obj-$(CONFIG_CMD_MTDPARTS) += mtdparts.o diff --git a/cmd/mmc_spi.c
> b/cmd/mmc_spi.c deleted file mode 100644 index 0c44d06817..0000000000
> --- a/cmd/mmc_spi.c
> +++ /dev/null
> @@ -1,88 +0,0 @@
> -/*
> - * Command for mmc_spi setup.
> - *
> - * Copyright (C) 2010 Thomas Chou <thomas at wytron.com.tw>
> - * Licensed under the GPL-2 or later.
> - */
> -
> -#include <common.h>
> -#include <mmc.h>
> -#include <spi.h>
> -
> -#ifndef CONFIG_MMC_SPI_BUS
> -# define CONFIG_MMC_SPI_BUS 0
> -#endif
> -#ifndef CONFIG_MMC_SPI_CS
> -# define CONFIG_MMC_SPI_CS 1
> -#endif
> -/* in SPI mode, MMC speed limit is 20MHz, while SD speed limit is 25MHz */
> -#ifndef CONFIG_MMC_SPI_SPEED -# define CONFIG_MMC_SPI_SPEED
> 25000000 -#endif
> -/* MMC and SD specs only seem to care that sampling is on the
> - * rising edge ... meaning SPI modes 0 or 3. So either SPI mode
> - * should be legit. We'll use mode 0 since the steady state is 0,
> - * which is appropriate for hotplugging, unless the platform data
> - * specify mode 3 (if hardware is not compatible to mode 0).
> - */
> -#ifndef CONFIG_MMC_SPI_MODE
> -# define CONFIG_MMC_SPI_MODE SPI_MODE_0 -#endif
> -
> -static int do_mmc_spi(cmd_tbl_t *cmdtp, int flag, int argc, char * const
> argv[]) -{
> - uint bus = CONFIG_MMC_SPI_BUS;
> - uint cs = CONFIG_MMC_SPI_CS;
> - uint speed = CONFIG_MMC_SPI_SPEED;
> - uint mode = CONFIG_MMC_SPI_MODE;
> - char *endp;
> - struct mmc *mmc;
> -
> - if (argc < 2)
> - goto usage;
> -
> - cs = simple_strtoul(argv[1], &endp, 0);
> - if (*argv[1] == 0 || (*endp != 0 && *endp != ':'))
> - goto usage;
> - if (*endp == ':') {
> - if (endp[1] == 0)
> - goto usage;
> - bus = cs;
> - cs = simple_strtoul(endp + 1, &endp, 0);
> - if (*endp != 0)
> - goto usage;
> - }
> - if (argc >= 3) {
> - speed = simple_strtoul(argv[2], &endp, 0);
> - if (*argv[2] == 0 || *endp != 0)
> - goto usage;
> - }
> - if (argc >= 4) {
> - mode = simple_strtoul(argv[3], &endp, 16);
> - if (*argv[3] == 0 || *endp != 0)
> - goto usage;
> - }
> - if (!spi_cs_is_valid(bus, cs)) {
> - printf("Invalid SPI bus %u cs %u\n", bus, cs);
> - return 1;
> - }
> -
> - mmc = mmc_spi_init(bus, cs, speed, mode);
> - if (!mmc) {
> - printf("Failed to create MMC Device\n");
> - return 1;
> - }
> - printf("%s: %d at %u:%u hz %u mode %u\n", mmc->cfg->name,
> - mmc->block_dev.devnum, bus, cs, speed, mode);
> - mmc_init(mmc);
> - return 0;
> -
> -usage:
> - return CMD_RET_USAGE;
> -}
> -
> -U_BOOT_CMD(
> - mmc_spi, 4, 0, do_mmc_spi,
> - "mmc_spi setup",
> - "[bus:]cs [hz] [mode] - setup mmc_spi device"
> -);
> diff --git a/configs/UCP1020_SPIFLASH_defconfig
> b/configs/UCP1020_SPIFLASH_defconfig
> index a2d7e6622a..cb8ed47f5b 100644
> --- a/configs/UCP1020_SPIFLASH_defconfig
> +++ b/configs/UCP1020_SPIFLASH_defconfig
> @@ -21,7 +21,6 @@ CONFIG_CMD_GPIO=y
> CONFIG_CMD_I2C=y
> CONFIG_CMD_MMC=y
> # CONFIG_CMD_NAND is not set
> -CONFIG_CMD_MMC_SPI=y
> CONFIG_CMD_SF=y
> CONFIG_CMD_SPI=y
> CONFIG_CMD_USB=y
> diff --git a/configs/UCP1020_defconfig b/configs/UCP1020_defconfig index
> 0a676d48c9..a0ffd35c3a 100644
> --- a/configs/UCP1020_defconfig
> +++ b/configs/UCP1020_defconfig
> @@ -21,7 +21,6 @@ CONFIG_CMD_GPIO=y
> CONFIG_CMD_I2C=y
> CONFIG_CMD_MMC=y
> # CONFIG_CMD_NAND is not set
> -CONFIG_CMD_MMC_SPI=y
> CONFIG_CMD_SF=y
> CONFIG_CMD_SPI=y
> CONFIG_CMD_USB=y
> diff --git a/include/configs/UCP1020.h b/include/configs/UCP1020.h index
> b518c222d4..6e0a6a11b3 100644
> --- a/include/configs/UCP1020.h
> +++ b/include/configs/UCP1020.h
> @@ -386,7 +386,6 @@
>
> #ifdef CONFIG_MMC
> #define CONFIG_SYS_FSL_ESDHC_ADDR
> CONFIG_SYS_MPC85xx_ESDHC_ADDR
> -#define CONFIG_MMC_SPI
> #endif
>
> /* Misc Extra Settings */
> diff --git a/include/mmc.h b/include/mmc.h index 1f30f71d25..b854e9f33a
> 100644
> --- a/include/mmc.h
> +++ b/include/mmc.h
> @@ -828,7 +828,6 @@ void mmc_set_preinit(struct mmc *mmc, int preinit);
> #else
> #define mmc_host_is_spi(mmc) 0
> #endif
> -struct mmc *mmc_spi_init(uint bus, uint cs, uint speed, uint mode);
>
> void board_mmc_power_init(void);
> int board_mmc_init(bd_t *bis);
Applied to mmc/master after fix conflicts rebasing.
Thanks,
Peng.
> --
> 2.17.1
More information about the U-Boot
mailing list