[U-Boot] [PATCH 11/11] sunxi: Add limit with the MMC environment

André Przywara andre.przywara at arm.com
Thu Dec 21 22:52:04 UTC 2017


Hi,

On 21/12/17 12:40, Maxime Ripard wrote:
> The MMC environment offset is getting very close to the end of the U-Boot
> binary now. Since we want to make sure this will not overflow, add a size
> limit in the board for arm64. arm32 has already that limit enforced in our
> custom image generation.
> 
> Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
> ---
>  include/configs/sunxi-common.h | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
> index 3855c564f914..6236e129a89d 100644
> --- a/include/configs/sunxi-common.h
> +++ b/include/configs/sunxi-common.h
> @@ -147,6 +147,16 @@
>  #endif
>  
>  #if defined(CONFIG_ENV_IS_IN_MMC)
> +
> +#ifdef CONFIG_ARM64

Why is that? Isn't the limit applicable to all sunxi boards using MMC
env? Maybe that's actually the better check (thanks for digging this up,
btw)? I guess this would avoid to break compatibility with older
sunxi-fel versions (those provided by distros not carrying your fix),
also avoids blowing up u-boot-sunxi-with-spl.bin to 504K always?

Or does this break anything on 32-bit boards?

Cheers,
Andre.

> +/*
> + * This is actually (CONFIG_ENV_OFFSET -
> + * (CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)), but the value will be used
> + * directly in a makefile, without the preprocessor expansion.
> + */
> +#define CONFIG_BOARD_SIZE_LIMIT		0x7e000
> +#endif
> +
>  #if CONFIG_MMC_SUNXI_SLOT_EXTRA != -1
>  /* If we have two devices (most likely eMMC + MMC), favour the eMMC */
>  #define CONFIG_SYS_MMC_ENV_DEV		1
> 



More information about the U-Boot mailing list