From 0520b532d77d238be8015d3041a95188e47945cc Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Fri, 22 Jan 2016 18:06:12 -0800 Subject: toradex: configblock: initialize MMC before switching partition If the module is in serial downloader mode, we do no longer read the environment from eMMC. Therefor, the eMMC is unitialized when trying to read the config block. Use mmc_init to initialize the selected MMC device before using it. Note: In case the MMC has already been initialized, the mmc_init detects that and returns immediately. Signed-off-by: Stefan Agner Acked-by: Max Krummenacher Conflicts: board/toradex/common/configblock.c --- board/toradex/common/tdx-cfg-block.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/board/toradex/common/tdx-cfg-block.c b/board/toradex/common/tdx-cfg-block.c index 9ddd1c1078..9e9fe2997e 100644 --- a/board/toradex/common/tdx-cfg-block.c +++ b/board/toradex/common/tdx-cfg-block.c @@ -117,6 +117,10 @@ static int tdx_cfg_block_mmc_storage(u8 *config_block, int write) ret = -ENODEV; goto out; } + if (mmc_init(mmc)) { + puts("MMC init failed\n"); + return -EINVAL; + } if (part != mmc->block_dev.hwpart) { if (blk_select_hwpart_devnum(IF_TYPE_MMC, dev, part)) { puts("MMC partition switch failed\n"); -- cgit v1.2.3