[Uboot-stm32] [PATCH 3/8] env: mcc: fix compilation error with ENV_IS_EMBEDDED

Patrice CHOTARD patrice.chotard at foss.st.com
Tue Dec 6 09:11:22 CET 2022



On 11/10/22 11:49, Patrick Delaunay wrote:
> When ENV_IS_EMBEDDED is enabled, ret is not defined but is used as a
> return value in env_mmc_load().
> This patch correct this issue and simplify the existing code, test only
> one time #if defined(ENV_IS_EMBEDDED) and not in the function.
> 
> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
> ---
> 
>  env/mmc.c | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/env/mmc.c b/env/mmc.c
> index b36bd9ad77ee..661a268ea07d 100644
> --- a/env/mmc.c
> +++ b/env/mmc.c
> @@ -353,10 +353,14 @@ static inline int read_env(struct mmc *mmc, unsigned long size,
>  	return (n == blk_cnt) ? 0 : -1;
>  }
>  
> -#if defined(CONFIG_SYS_REDUNDAND_ENVIRONMENT)
> +#if defined(ENV_IS_EMBEDDED)
> +static int env_mmc_load(void)
> +{
> +	return 0;
> +}
> +#elif defined(CONFIG_SYS_REDUNDAND_ENVIRONMENT)
>  static int env_mmc_load(void)
>  {
> -#if !defined(ENV_IS_EMBEDDED)
>  	struct mmc *mmc;
>  	u32 offset1, offset2;
>  	int read1_fail = 0, read2_fail = 0;
> @@ -408,13 +412,11 @@ err:
>  	if (ret)
>  		env_set_default(errmsg, 0);
>  
> -#endif
>  	return ret;
>  }
>  #else /* ! CONFIG_SYS_REDUNDAND_ENVIRONMENT */
>  static int env_mmc_load(void)
>  {
> -#if !defined(ENV_IS_EMBEDDED)
>  	ALLOC_CACHE_ALIGN_BUFFER(char, buf, CONFIG_ENV_SIZE);
>  	struct mmc *mmc;
>  	u32 offset;
> @@ -453,7 +455,7 @@ fini:
>  err:
>  	if (ret)
>  		env_set_default(errmsg, 0);
> -#endif
> +
>  	return ret;
>  }
>  #endif /* CONFIG_SYS_REDUNDAND_ENVIRONMENT */

Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>

Thanks
Patrice


More information about the U-Boot mailing list