diff options
author | Rogerio Guerra Borin <rogerio.borin@toradex.com> | 2024-06-24 22:25:44 -0300 |
---|---|---|
committer | Hiago De Franco <hiago.franco@toradex.com> | 2024-08-27 14:17:42 -0300 |
commit | e9c972a158b4bb6d87d9a4bdb9a7faa2b246a5f7 (patch) | |
tree | 4f2642ab70401e5d19b68ae64d140bc52760841e | |
parent | 02063c78037e8708fc017a8f6e831c2e0212f336 (diff) | |
download | meta-freescale-e9c972a158b4bb6d87d9a4bdb9a7faa2b246a5f7.tar.gz |
imx-boot: inherit from uboot-config rather than uboot-sign
Since commit 5e12dc911d0c541f43aa6d0c046fb87e8b7c1f7e on layer
openembedded-core, the class uboot-sign is supposed to be inherited by
u-boot recipes only, but the imx-boot recipe is currently inheriting
it. With this commit we change this situation by inheriting from
uboot-config instead so it can access relevant variables related to the
U-Boot configuration without inheriting the tasks defined by uboot-sign
which pertain exclusively to u-boot recipes (uboot_generate_rsa_keys,
uboot_assemble_fitimage); this in turn allows us to get rid of the
prepend to uboot_assemble_fitimage which only existed to allow that
extraneous task to succeed.
Nevertheless, the main issue solved by the commit is a conflict that
happens when imx-boot is used together a U-Boot configured not to
generate a boot container, i.e. with UBOOT_PROVIDES_BOOT_CONTAINER="0"
in which case both the U-Boot and the imx-boot recipe would try to
deploy the same files due to to extraneous tasks inherited, leading to
build errors like this:
ERROR: imx-boot-1.0-r0 do_deploy: Recipe imx-boot is trying to install
files into a shared area when those files already exist. The files
and the manifests listing them are:
/workdir/.../deploy/images/colibri-imx8x/u-boot-colibri-imx8x.dtb
(matched in manifest-colibri_imx8x-u-boot-toradex.deploy)
/workdir/.../deploy/images/colibri-imx8x/u-boot.dtb
(matched in manifest-colibri_imx8x-u-boot-toradex.deploy)
...
As part of this change we set variable UBOOT_DTB_BINARY to match the
setting in uboot-sign.bbclass, which duplicates information. This is not
ideal but it should work as that value is unlikely to change. The ideal
solution would likely be setting it in uboot-config.bbclass (provided by
layer openembedded-core); that's left as a future improvement.
Signed-off-by: Rogerio Guerra Borin <rogerio.borin@toradex.com>
(cherry picked from commit 45941f64766cd78f1491f74bf7483de52c43c9c5)
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
(cherry picked from commit f50044623d99e4e5c72db2e1d1c97f16c8e8903a)
-rw-r--r-- | recipes-bsp/imx-mkimage/imx-boot_1.0.bb | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb index 2c964214..3f62920c 100644 --- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb +++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb | |||
@@ -86,11 +86,7 @@ MKIMAGE_EXTRA_ARGS:imx95-19x19-verdin ?= " \ | |||
86 | ${MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp} \ | 86 | ${MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp} \ |
87 | QSPI_HEADER=./scripts/fspi_header_133" | 87 | QSPI_HEADER=./scripts/fspi_header_133" |
88 | 88 | ||
89 | do_uboot_assemble_fitimage:prepend:imx-generic-bsp() { | 89 | UBOOT_DTB_BINARY ?= "u-boot.dtb" |
90 | for config in ${UBOOT_MACHINE}; do | ||
91 | mkdir -p ${B}/${config} | ||
92 | done | ||
93 | } | ||
94 | 90 | ||
95 | compile_mx8m() { | 91 | compile_mx8m() { |
96 | bbnote 8MQ/8MM/8MN/8MP boot binary build | 92 | bbnote 8MQ/8MM/8MN/8MP boot binary build |