[Uboot-stm32] [PATCH 1/8] env: mmc: introduced ENV_MMC_OFFSET
Patrice CHOTARD
patrice.chotard at foss.st.com
Tue Dec 6 09:11:07 CET 2022
On 11/10/22 11:48, Patrick Delaunay wrote:
> Introduce ENV_MMC_OFFSET defines.
> It is a preliminary step to the next patches to simplify the code.
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
> ---
>
> env/mmc.c | 24 ++++++++++++++++++++----
> 1 file changed, 20 insertions(+), 4 deletions(-)
>
> diff --git a/env/mmc.c b/env/mmc.c
> index c28f4c6c6dc0..42bcf7e775cc 100644
> --- a/env/mmc.c
> +++ b/env/mmc.c
> @@ -24,6 +24,17 @@
> #define __STR(X) #X
> #define STR(X) __STR(X)
>
> +#define ENV_MMC_INVALID_OFFSET ((s64)-1)
> +
> +/* Default ENV offset when not defined in Device Tree */
> +#define ENV_MMC_OFFSET CONFIG_ENV_OFFSET
> +
> +#if defined(CONFIG_ENV_OFFSET_REDUND)
> +#define ENV_MMC_OFFSET_REDUND CONFIG_ENV_OFFSET_REDUND
> +#else
> +#define ENV_MMC_OFFSET_REDUND ENV_MMC_INVALID_OFFSET
> +#endif
> +
> DECLARE_GLOBAL_DATA_PTR;
>
> /*
> @@ -94,12 +105,12 @@ static inline s64 mmc_offset(int copy)
> return val;
> }
>
> - defvalue = CONFIG_ENV_OFFSET;
> + defvalue = ENV_MMC_OFFSET;
> propname = dt_prop.offset;
>
> #if defined(CONFIG_ENV_OFFSET_REDUND)
> if (copy) {
> - defvalue = CONFIG_ENV_OFFSET_REDUND;
> + defvalue = ENV_MMC_OFFSET_REDUND;
> propname = dt_prop.offset_redund;
> }
> #endif
> @@ -108,11 +119,11 @@ static inline s64 mmc_offset(int copy)
> #else
> static inline s64 mmc_offset(int copy)
> {
> - s64 offset = CONFIG_ENV_OFFSET;
> + s64 offset = ENV_MMC_OFFSET;
>
> #if defined(CONFIG_ENV_OFFSET_REDUND)
> if (copy)
> - offset = CONFIG_ENV_OFFSET_REDUND;
> + offset = ENV_MMC_OFFSET_REDUND;
> #endif
> return offset;
> }
> @@ -122,6 +133,11 @@ __weak int mmc_get_env_addr(struct mmc *mmc, int copy, u32 *env_addr)
> {
> s64 offset = mmc_offset(copy);
>
> + if (offset == ENV_MMC_INVALID_OFFSET) {
> + printf("Invalid ENV offset in MMC, copy=%d\n", copy);
> + return -ENOENT;
> + }
> +
> if (offset < 0)
> offset += mmc->capacity;
>
Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>
Thanks
Patrice
More information about the U-Boot
mailing list