mmc: add a Kconfig option to enable the support for MMC write operations
This allows using CONFIG_IS_ENABLED(MMC_WRITE) to compile out code needed only if write support is required. The option is added for u-boot and for SPL Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
This commit is contained in:
parent
58a6fb7b04
commit
d6400c3f85
@ -110,7 +110,7 @@ static ulong get_load_addr(void)
|
||||
/********************************************************************
|
||||
* eMMC services
|
||||
********************************************************************/
|
||||
#ifdef CONFIG_DM_MMC
|
||||
#if CONFIG_IS_ENABLED(DM_MMC) && CONFIG_IS_ENABLED(MMC_WRITE)
|
||||
static int mmc_burn_image(size_t image_size)
|
||||
{
|
||||
struct mmc *mmc;
|
||||
|
@ -301,6 +301,7 @@ config SPL_ENV_SUPPORT
|
||||
config SPL_SAVEENV
|
||||
bool "Support save environment"
|
||||
depends on SPL_ENV_SUPPORT
|
||||
select SPL_MMC_WRITE if ENV_IS_IN_MMC
|
||||
help
|
||||
Enable save environment support in SPL after setenv. By default
|
||||
the saveenv option is not provided in SPL, but some boards need
|
||||
@ -415,6 +416,14 @@ config SPL_MMC_SUPPORT
|
||||
this option to build the drivers in drivers/mmc as part of an SPL
|
||||
build.
|
||||
|
||||
config SPL_MMC_WRITE
|
||||
bool "MMC/SD/SDIO card support for write operations in SPL"
|
||||
depends on SPL_MMC_SUPPORT
|
||||
default n
|
||||
help
|
||||
Enable write access to MMC and SD Cards in SPL
|
||||
|
||||
|
||||
config SPL_MPC8XXX_INIT_DDR_SUPPORT
|
||||
bool "Support MPC8XXX DDR init"
|
||||
help
|
||||
|
@ -10,6 +10,13 @@ config MMC
|
||||
If you want MMC/SD/SDIO support, you should say Y here and
|
||||
also to your specific host controller driver.
|
||||
|
||||
config MMC_WRITE
|
||||
bool "support for MMC/SD write operations"
|
||||
depends on MMC
|
||||
default y
|
||||
help
|
||||
Enable write access to MMC and SD Cards
|
||||
|
||||
config DM_MMC
|
||||
bool "Enable MMC controllers using Driver Model"
|
||||
depends on DM
|
||||
|
@ -7,6 +7,7 @@
|
||||
|
||||
obj-y += mmc.o
|
||||
obj-$(CONFIG_$(SPL_)DM_MMC) += mmc-uclass.o
|
||||
obj-$(CONFIG_$(SPL_)MMC_WRITE) += mmc_write.o
|
||||
|
||||
ifndef CONFIG_$(SPL_)BLK
|
||||
obj-y += mmc_legacy.o
|
||||
@ -16,9 +17,6 @@ obj-$(CONFIG_SUPPORT_EMMC_BOOT) += mmc_boot.o
|
||||
|
||||
ifdef CONFIG_SPL_BUILD
|
||||
obj-$(CONFIG_SPL_MMC_BOOT) += fsl_esdhc_spl.o
|
||||
obj-$(CONFIG_SPL_SAVEENV) += mmc_write.o
|
||||
else
|
||||
obj-y += mmc_write.o
|
||||
endif
|
||||
|
||||
obj-$(CONFIG_ARM_PL180_MMCI) += arm_pl180_mmci.o
|
||||
|
@ -370,7 +370,7 @@ static int mmc_blk_probe(struct udevice *dev)
|
||||
|
||||
static const struct blk_ops mmc_blk_ops = {
|
||||
.read = mmc_bread,
|
||||
#ifndef CONFIG_SPL_BUILD
|
||||
#if CONFIG_IS_ENABLED(MMC_WRITE)
|
||||
.write = mmc_bwrite,
|
||||
.erase = mmc_berase,
|
||||
#endif
|
||||
|
@ -28,7 +28,7 @@ ulong mmc_bread(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt,
|
||||
void *dst);
|
||||
#endif
|
||||
|
||||
#if !(defined(CONFIG_SPL_BUILD) && !defined(CONFIG_SPL_SAVEENV))
|
||||
#if CONFIG_IS_ENABLED(MMC_WRITE)
|
||||
|
||||
#if CONFIG_IS_ENABLED(BLK)
|
||||
ulong mmc_bwrite(struct udevice *dev, lbaint_t start, lbaint_t blkcnt,
|
||||
@ -40,7 +40,7 @@ ulong mmc_bwrite(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt,
|
||||
ulong mmc_berase(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt);
|
||||
#endif
|
||||
|
||||
#else /* CONFIG_SPL_BUILD and CONFIG_SPL_SAVEENV is not defined */
|
||||
#else /* CONFIG_SPL_MMC_WRITE is not defined */
|
||||
|
||||
/* declare dummies to reduce code size. */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user