diff options
author | Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com> | 2020-04-03 20:07:09 +0000 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2020-04-03 17:41:08 -0300 |
commit | 6ca16f44b8a2d148e74cf9c1a2eb8790e0bb0d51 (patch) | |
tree | bf2d5a09ec91f17e250f5861ddd92cf7cde87279 /recipes-bsp/u-boot | |
parent | 424f553214593d09ccd7a31cc9d0dcce6170afb1 (diff) | |
download | meta-freescale-6ca16f44b8a2d148e74cf9c1a2eb8790e0bb0d51.tar.gz |
u-boot-imx: resolve build issue with missing target
Since the replacement of u-boot-fw-utils with libubootenv in OE-Core,
U-Boot recipe requires an additional target to be built, which contains
the default environment.
This target has been introduced in U-Boot with version 2019.07 and is
missing in NXP fork of U-Boot source tree, therefore one patch from the
U-Boot source tree is backported in order to introduce a missing build
target.
Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
Diffstat (limited to 'recipes-bsp/u-boot')
3 files changed, 53 insertions, 0 deletions
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2019.04.bb b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2019.04.bb index ec1de27d..2b296c19 100644 --- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2019.04.bb +++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2019.04.bb | |||
@@ -2,5 +2,7 @@ | |||
2 | # Copyright (C) 2014-2016 Freescale Semiconductor | 2 | # Copyright (C) 2014-2016 Freescale Semiconductor |
3 | # Copyright 2017-2019 NXP | 3 | # Copyright 2017-2019 NXP |
4 | 4 | ||
5 | FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-imx:" | ||
6 | |||
5 | require u-boot-imx_${PV}.bb | 7 | require u-boot-imx_${PV}.bb |
6 | require u-boot-mfgtool.inc | 8 | require u-boot-mfgtool.inc |
diff --git a/recipes-bsp/u-boot/u-boot-imx/0001-Add-target-to-generate-initial-environment.patch b/recipes-bsp/u-boot/u-boot-imx/0001-Add-target-to-generate-initial-environment.patch new file mode 100644 index 00000000..c717e029 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-imx/0001-Add-target-to-generate-initial-environment.patch | |||
@@ -0,0 +1,49 @@ | |||
1 | From bdaa73a5b3923257add182b4ab8058dbfa33421b Mon Sep 17 00:00:00 2001 | ||
2 | From: Stefano Babic <sbabic@denx.de> | ||
3 | Date: Wed, 13 Mar 2019 09:46:45 +0100 | ||
4 | Subject: [PATCH] Add target to generate initial environment | ||
5 | |||
6 | The initial environment is linked to the u-boot binary. Modifying the | ||
7 | environment from User Space with the env tools requires that the tools | ||
8 | are always built together with the bootloader to be sure that they | ||
9 | contain the initial environment in case no environment is stored into | ||
10 | persistent storage or when a board boots with just the default | ||
11 | environment. This makes difficult for distros to provide a general | ||
12 | package to access the environment. A simpler way is if the tools are | ||
13 | generic for all boards and a configuration file is given to provide the | ||
14 | initial environment. | ||
15 | |||
16 | The patch just generates the initial environment by extracting it from | ||
17 | the compiled object. This file can then be used for tools in user space | ||
18 | to initialize the environment. | ||
19 | |||
20 | Signed-off-by: Stefano Babic <sbabic@denx.de> | ||
21 | |||
22 | Upstream-Status: Backport [https://github.com/u-boot/u-boot/commit/bdaa73a5b3923257add182b4ab8058dbfa33421b] | ||
23 | |||
24 | Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com> | ||
25 | --- | ||
26 | Makefile | 7 +++++++ | ||
27 | 1 file changed, 7 insertions(+) | ||
28 | |||
29 | diff --git a/Makefile b/Makefile | ||
30 | index 66a09ac900..f2c7bb6041 100644 | ||
31 | --- a/Makefile | ||
32 | +++ b/Makefile | ||
33 | @@ -1977,6 +1977,13 @@ endif | ||
34 | $(build)=$(build-dir) $(@:.ko=.o) | ||
35 | $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost | ||
36 | |||
37 | +quiet_cmd_genenv = GENENV $@ | ||
38 | +cmd_genenv = $(OBJCOPY) --dump-section .rodata.default_environment=$@ env/common.o; \ | ||
39 | + sed --in-place -e 's/\x00/\x0A/g' $@ | ||
40 | + | ||
41 | +u-boot-initial-env: u-boot.bin | ||
42 | + $(call if_changed,genenv) | ||
43 | + | ||
44 | # Consistency checks | ||
45 | # --------------------------------------------------------------------------- | ||
46 | |||
47 | -- | ||
48 | 2.17.1 | ||
49 | |||
diff --git a/recipes-bsp/u-boot/u-boot-imx_2019.04.bb b/recipes-bsp/u-boot/u-boot-imx_2019.04.bb index 4cfcb471..d37ede83 100644 --- a/recipes-bsp/u-boot/u-boot-imx_2019.04.bb +++ b/recipes-bsp/u-boot/u-boot-imx_2019.04.bb | |||
@@ -5,6 +5,8 @@ | |||
5 | require recipes-bsp/u-boot/u-boot.inc | 5 | require recipes-bsp/u-boot/u-boot.inc |
6 | require u-boot-imx-common.inc | 6 | require u-boot-imx-common.inc |
7 | 7 | ||
8 | SRC_URI += "file://0001-Add-target-to-generate-initial-environment.patch" | ||
9 | |||
8 | PROVIDES += "u-boot" | 10 | PROVIDES += "u-boot" |
9 | 11 | ||
10 | do_deploy_append_mx8m() { | 12 | do_deploy_append_mx8m() { |