[U-Boot] [PATCH 01/34] Add target to generate initial environment

Alex Kiernan alex.kiernan at gmail.com
Wed Mar 13 09:31:09 UTC 2019


On Wed, Mar 13, 2019 at 8:47 AM Stefano Babic <sbabic at denx.de> wrote:
>
> The initial environment is linked to the u-boot binary. Modifying the
> environment from User Space with the env tools requires that the tools
> are always built together with the bootloader to be sure that they
> contain the initial environment in case no environment is stored into
> persistent storage or when a board boots with just the default
> environment. This makes difficult for distros to provide a general
> package to access the environment. A simpler way is if the tools are
> generic for all boards and a configuration file is given to provide the
> initial environment.
>
> The patch just generates the initial environment by extracting it from
> the compiled object. This file can then be used for tools in user space
> to initialize the environment.
>
> Signed-off-by: Stefano Babic <sbabic at denx.de>
> ---
>  Makefile | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/Makefile b/Makefile
> index 26db4e7b59..74e48ae9dc 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1932,6 +1932,13 @@ endif
>         $(build)=$(build-dir) $(@:.ko=.o)
>         $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
>
> +quiet_cmd_genenv = GENENV $@
> +cmd_genenv = $(OBJCOPY) --dump-section .rodata.default_environment=$@ env/common.o; \
> +       sed --in-place -e 's/\x00/\x0A/g' $@
> +

Really an observation rather than an objection - there are boards
which have newlines embedded in their compiled in environments -
ge_bx50v3 and mx53ppd (the failbootcmd variable) are the two I know
of.


> +u-boot-initial-env: u-boot.bin
> +       $(call if_changed,genenv)
> +
>  # Consistency checks
>  # ---------------------------------------------------------------------------
>
> --
> 2.17.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot



--
Alex Kiernan


More information about the U-Boot mailing list