Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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 <[email protected]>
- Loading branch information