[U-Boot] [PATCH 1/1] mmc: avoid division by zero in meson_mmc_config_clock

Vagrant Cascadian vagrant at debian.org
Sun Mar 18 00:03:49 UTC 2018


On 2018-03-17, Heinrich Schuchardt wrote:
> The Odroid C2 fails to read from mmc with U-Boot v2018.03.
> The change avoids a division by zero.
>
> The fix was suggested by Jaehoon in
> https://lists.denx.de/pipermail/u-boot/2018-January/318577.html

Thanks!

Works for me with odroid-c2 on u-boot 2018.03.

Without the patch, mmc access immediately hangs the board.

Tested-by: Vagrant Cascadian <vagrant at debian.org>


live well,
  vagrant

> Reported-by: Vagrant Cascadian <vagrant at debian.org>
> Suggested-by: Jaehoon Chung <jh80.chung at samsung.com>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> ---
> Resent due to missing cc u-boot at lists.denx.de.
> ---
>  drivers/mmc/meson_gx_mmc.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/mmc/meson_gx_mmc.c b/drivers/mmc/meson_gx_mmc.c
> index a2cd5d3a44..454593eec4 100644
> --- a/drivers/mmc/meson_gx_mmc.c
> +++ b/drivers/mmc/meson_gx_mmc.c
> @@ -35,6 +35,9 @@ static void meson_mmc_config_clock(struct mmc *mmc)
>  	uint32_t meson_mmc_clk = 0;
>  	unsigned int clk, clk_src, clk_div;
>  
> +	if (!mmc->clock)
> +		return;
> +
>  	/* 1GHz / CLK_MAX_DIV = 15,9 MHz */
>  	if (mmc->clock > 16000000) {
>  		clk = SD_EMMC_CLKSRC_DIV2;
> -- 
> 2.14.2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180317/7e04eb22/attachment.sig>


More information about the U-Boot mailing list