From 42a4f182555e095256926630f1ecde0190ded25f Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Fri, 12 Jul 2019 12:35:05 +0200 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 Signed-off-by: Marcel Ziswiler Reviewed-by: Igor Opaniuk Reviewed-by: Oleksandr Suvorov --- board/toradex/common/tdx-cfg-block.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'board/toradex') diff --git a/board/toradex/common/tdx-cfg-block.c b/board/toradex/common/tdx-cfg-block.c index f69c443..67e0557 100644 --- a/board/toradex/common/tdx-cfg-block.c +++ b/board/toradex/common/tdx-cfg-block.c @@ -129,6 +129,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_get_blk_desc(mmc)->hwpart) { if (blk_select_hwpart_devnum(IF_TYPE_MMC, dev, part)) { puts("MMC partition switch failed\n"); -- cgit v1.1