[Uboot-stm32] [PATCH 1/3] env: mmc: allow support of mmc_get_env_dev with OF_CONTROL

Patrice CHOTARD patrice.chotard at st.com
Fri Apr 17 14:36:58 CEST 2020


Hi

On 3/19/20 10:59 AM, Patrick Delaunay wrote:
> Use the weak function mmc_get_env_dev in mmc_offset_try_partition
> function to allow dynamic selection of mmc device to use
> and no more use directly the define CONFIG_SYS_MMC_ENV_DEV.
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
> ---
>
>  env/mmc.c | 18 ++++++++++++------
>  1 file changed, 12 insertions(+), 6 deletions(-)
>
> diff --git a/env/mmc.c b/env/mmc.c
> index 251ad07d7c..902cca23ad 100644
> --- a/env/mmc.c
> +++ b/env/mmc.c
> @@ -24,14 +24,25 @@
>  
>  DECLARE_GLOBAL_DATA_PTR;
>  
> +#if !defined(CONFIG_SYS_MMC_ENV_DEV)
> +#define CONFIG_SYS_MMC_ENV_DEV 0
> +#endif
> +
> +__weak int mmc_get_env_dev(void)
> +{
> +	return CONFIG_SYS_MMC_ENV_DEV;
> +}
> +
>  #if CONFIG_IS_ENABLED(OF_CONTROL)
>  static inline int mmc_offset_try_partition(const char *str, s64 *val)
>  {
>  	disk_partition_t info;
>  	struct blk_desc *desc;
>  	int len, i, ret;
> +	char dev_str[4];
>  
> -	ret = blk_get_device_by_str("mmc", STR(CONFIG_SYS_MMC_ENV_DEV), &desc);
> +	snprintf(dev_str, sizeof(dev_str), "%d", mmc_get_env_dev());
> +	ret = blk_get_device_by_str("mmc", dev_str, &desc);
>  	if (ret < 0)
>  		return (ret);
>  
> @@ -114,11 +125,6 @@ __weak int mmc_get_env_addr(struct mmc *mmc, int copy, u32 *env_addr)
>  	return 0;
>  }
>  
> -__weak int mmc_get_env_dev(void)
> -{
> -	return CONFIG_SYS_MMC_ENV_DEV;
> -}
> -
>  #ifdef CONFIG_SYS_MMC_ENV_PART
>  __weak uint mmc_get_env_part(struct mmc *mmc)
>  {

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

Thanks


More information about the U-Boot mailing list