diff options
author | Rogerio Guerra Borin <rogerio.borin@toradex.com> | 2024-06-24 22:25:44 -0300 |
---|---|---|
committer | Rogerio Guerra Borin <rogerio.borin@toradex.com> | 2024-07-23 20:57:00 -0300 |
commit | 45941f64766cd78f1491f74bf7483de52c43c9c5 (patch) | |
tree | f5131e2b8ecf71f022be31511180c440337cde58 | |
parent | dc6b22f9151e5487258a22de1aa564f5239c0e1b (diff) | |
download | meta-freescale-45941f64766cd78f1491f74bf7483de52c43c9c5.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>
-rw-r--r-- | recipes-bsp/imx-mkimage/imx-boot_1.0.bb | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb index 28246ded1..0bb7dd95a 100644 --- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb +++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb | |||
@@ -7,7 +7,7 @@ LICENSE = "GPL-2.0-only" | |||
7 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" | 7 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" |
8 | SECTION = "BSP" | 8 | SECTION = "BSP" |
9 | 9 | ||
10 | inherit use-imx-security-controller-firmware uboot-sign | 10 | inherit use-imx-security-controller-firmware uboot-config |
11 | 11 | ||
12 | DEPENDS += " \ | 12 | DEPENDS += " \ |
13 | u-boot \ | 13 | u-boot \ |
@@ -71,11 +71,7 @@ SOC_FAMILY:mx93-generic-bsp = "mx93" | |||
71 | 71 | ||
72 | REV_OPTION ?= "REV=${IMX_SOC_REV_UPPER}" | 72 | REV_OPTION ?= "REV=${IMX_SOC_REV_UPPER}" |
73 | 73 | ||
74 | do_uboot_assemble_fitimage:prepend:imx-generic-bsp() { | 74 | UBOOT_DTB_BINARY ?= "u-boot.dtb" |
75 | for config in ${UBOOT_MACHINE}; do | ||
76 | mkdir -p ${B}/${config} | ||
77 | done | ||
78 | } | ||
79 | 75 | ||
80 | compile_mx8m() { | 76 | compile_mx8m() { |
81 | bbnote 8MQ/8MM/8MN/8MP boot binary build | 77 | bbnote 8MQ/8MM/8MN/8MP boot binary build |