]> git.baikalelectronics.ru Git - uboot.git/commit
spl: mmc: Use correct MMC device when loading image
authorHarald Seiler <hws@denx.de>
Mon, 11 Jul 2022 12:35:32 +0000 (14:35 +0200)
committerTom Rini <trini@konsulko.com>
Thu, 4 Aug 2022 17:59:59 +0000 (13:59 -0400)
commit3aedf304059cc95cb5a84b6ae18bb7e25f2b0f15
tree9960ed3d750ff60521aa23915f1a85405db12f55
parent13f9cc9264ec7d73b7450e8320c4a2968c188fb8
spl: mmc: Use correct MMC device when loading image

When attempting to load images from multiple MMC devices in sequence,
spl_mmc_load() chooses the wrong device from the second attempt onwards.

The reason is that MMC initialization is only done on its first call and
spl_mmc_load() will then continue using this same device for all future
calls.

Fix this by checking the devnum of the "cached" device struct against
the one which is requested.  If they match, use the cached one but if
they do not match, initialize the new device.

This fixes specifying multiple MMC devices in the SPL's boot order to
fall back when U-Boot Proper is corrupted or missing on the first
attempted MMC device.

Fixes: ae7c2559b5cc ("spl: Make image loader infrastructure more universal")
Signed-off-by: Harald Seiler <hws@denx.de>
common/spl/spl_mmc.c