[PATCH] env: mmc: fix environment on hw boot partition 2

Javier Viguera j.viguera at gmx.es
Fri Dec 1 15:34:40 CET 2023


Hi all,

Please disregard this patch. I'm not sure if CONFIG_VAL is the correct
macro when there are no SPL_,TPL_ versions for SYS_MMC_ENV_PART option.

So back on square one.

How do we solve this to support SYS_MMC_ENV_PART = 2?

We have a configuration where we want the environment on "mmcblk0boot1"
(which is the **second** boot partition) and the IS_ENABLED evaluates to
**0** which prevents the "hwpart = mmc_get_env_part(mmc);" to even run.

Thanks for your help.

--
Javier Viguera


On 1/12/23 12:09, Javier Viguera wrote:
> SYS_MMC_ENV_PART is an integer option. If it is set to 2 to use the
> second hardware boot partition, the IS_ENABLED check fails as it expects
> a boolean, and then it does not get the correct hwpart.
>
> Signed-off-by: Javier Viguera <javier.viguera at digi.com>
> ---
>   env/mmc.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/env/mmc.c b/env/mmc.c
> index cb14bbb58f13..df82969d4231 100644
> --- a/env/mmc.c
> +++ b/env/mmc.c
> @@ -111,7 +111,7 @@ static inline s64 mmc_offset(struct mmc *mmc, int copy)
>   	int hwpart = 0;
>   	int err;
>
> -	if (IS_ENABLED(CONFIG_SYS_MMC_ENV_PART))
> +	if (CONFIG_VAL(SYS_MMC_ENV_PART))
>   		hwpart = mmc_get_env_part(mmc);
>
>   #if defined(CONFIG_ENV_MMC_PARTITION)
>



More information about the U-Boot mailing list