Message ID | 20210803101238.35596-1-stephan@gerhold.net |
---|---|
State | Accepted |
Commit | 1eb006249e2fe84e889a89154d71a9cb0093eed8 |
Delegated to: | Tom Rini |
Headers | show |
Series | [v2,1/2] arm: mach-snapdragon: misc: Initialize eMMC if necessary | expand |
On Tue, Aug 03, 2021 at 12:12:37PM +0200, Stephan Gerhold wrote: > At the moment U-Boot produces an empty MAC address (02:00:00:00:00:00) > if the eMMC is not used by anything in U-Boot (e.g. with > CONFIG_ENV_IS_NOWHERE=y instead of having the environment on eMMC). > This happens because then there is nothing that actually initializes > the eMMC and reads the "cid" that is later accessed. > > To fix this, call mmc_init() to ensure the eMMC is initialized. > There is no functional difference if the eMMC is already initialized > since then mmc_init() will just return without doing anything. > > Reviewed-by: Ramon Fried <rfried.dev@gmail.com> > Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Applied to u-boot/next, thanks!
diff --git a/arch/arm/mach-snapdragon/misc.c b/arch/arm/mach-snapdragon/misc.c index 985625a548..fbd5f4d051 100644 --- a/arch/arm/mach-snapdragon/misc.c +++ b/arch/arm/mach-snapdragon/misc.c @@ -33,6 +33,9 @@ u32 msm_board_serial(void) if (!mmc_dev) return 0; + if (mmc_init(mmc_dev)) + return 0; + return UNSTUFF_BITS(mmc_dev->cid, 16, 32); }