[U-Boot] How to enforce saveenv at boot
Stefano Babic
sbabic at denx.de
Fri Apr 5 11:32:01 UTC 2019
Hi Mark,
On 05/04/19 13:13, Jonas Mark (BT-FIR/ENG1) wrote:
> Hi,
>
> Our board stores the U-Boot environment in an MTD partition. I would like to
> ensure that there is always an U-Boot environment stored in MTD so that the
> userspace tool fw_setenv does not need to fall back on its built in default
> environment or a default environment stored in a file (see
> https://github.com/sbabic/libubootenv).
>
> When U-Boot starts up it checks whether the specified MTD partition contains
> a valid environment and loads it. In case there is no valid environment it
> will use the compiled in default. Is there already a feature in U-Boot which
> would then also write that default to the MTD partition?
>
As far as I know, there is not (yet ?) a way to expose to the shell if
the default environment is used, something like exporting gd->env_valid.
> Alternatively a Hush script could help. Is there an easy way to detect that
> U-Boot is using the compiled in environment? In that case I could simply do a
> saveenv (?) which would then initialize the MTD environment partition.
A trick (a hack ?) could be to have a variable in the default
environment and you check and delete it if exists, maybe in your "preboot".
if env_exists use_default;then setenv use_default;saveenv;fi
I do not know if there is a better way to do this.
Best regards,
Stefano
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list