summaryrefslogtreecommitdiffstats
path: root/classes/imx-boot-container.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* imx-boot-container: add copy of soc-specific firmwareGary Bisson2022-11-261-3/+13
| | | | | | | | | | - Currently only the DDR firmware files are copied - i.MX 8MQ SoC also requires either HDMI or DP firmware - Refactor the copy from deploydir to the U-Boot build folder to be generic to all firmware files Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com> (cherry picked from commit bfd95d9c437b5d5b2b9069721ed224e7b8837074)
* imx-base.inc: avoid explicit imx-boot dependencyOtavio Salvador2022-07-291-0/+3
| | | | | | | | | | | | We shouldn't force `imx-boot` dependency for i.MX8 SoCs as many can use U-Boot mainline and those use `imx-boot-container` to generate the binary blob. We moved the backward-compatibility note, about 'imx-boot' to the 'imx-boot-container' class. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> (cherry picked from commit bed09c8daec54c73766b563feb9ff7b4168c3e44)
* recipes-bsp: drop custom deploy location for TF-A binaryAndrey Zhizhikin2022-06-161-1/+1
| | | | | | | | | | | | | | Upstream TF-A and downstream TF-A fork uses different deployment locations for results binaries, which leads to failures during image build when switching between upstream and downstream versions. Drop the custom TF-A deployment location, which is only specific to NXP downstream deployment, allowing the TF-A binaries from upstream and downstream to be picked up from the same location, namely - image deployment folder. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> (cherry picked from commit 1ec9540091c6d2cb7faf679f3b01916bfb0a0397)
* layer-wide: define configurable default TF-A providerAndrey Zhizhikin2022-06-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | TF-A package can have several providers: upstream TF-A implementation, or NXP downstream fork. Functionality to switch this provider, and to select which package shall be included into the target image is missing in the layer however, defaulting the usage of the layer to NXP downstream fork only. Introduce the Default TF-A Provider define, make it overridable, and default it to NXP downstream fork. This allows user to re-define the package name later shall they choose to integrate upstream TF-A package instead. Current upstream TF-A version (v2.7) does not support HAB feature of i.MX8M family, see [1]. If the upstream TF-A version is chosen, then HAB will not be available for all SoCs that are opting-in. This is indicated in the comment where default TF-A provider variable is set. This might change with future TF-A release, so later it can be revised and statement in include file can be potentially removed. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com> Link: [1]: https://lists.trustedfirmware.org/archives/list/tf-a@lists.trustedfirmware.org/message/5UYYI4CNLQ5OWWHU466JBK6I5QIQ2VRS/ (cherry picked from commit b61c4907b1926061cbf627ee1fd5dd8eb8e53d59)
* imx-boot-container: resurrect imx-boot symlinkMax Krummenacher2022-04-261-0/+1
| | | | | | | | Having a symlink named 'imx-boot' allows to have the consumers of the boot container, e.g. wic to be oblivious on who created the bootcontainer. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
* conf: machine: imx8m*: clean-up obsolete ATF load addressAndrey Zhizhikin2022-03-071-7/+0
| | | | | | | | | | | | | Upstream U-Boot commit d9a6f0eed66a ("tree: imx: remove old fit generator script") dropped the FIT generator script, which was using environment variable setting the ATF load address into the FIT ITS file. This has been replaced by binman node description, where ATF address is defined, hence the enviroment variable is not required anymore. Clean-up the layer's class and machine description to remove the variable, which is not used anymore. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* imx-boot-container: align with u-boot 2022.01Andrey Zhizhikin2022-01-181-2/+0
| | | | | | | | | | | | | | Recent version of U-Boot v2022.01 reverted boot container generation mechanism to provide single boot container isntead of separate binaries for SPL+DDR and U-Boot FIT. New approach provides packing of those separate components inside the U-Boot binman, and is delivered as a single 'flash.bin' file, which resembles the original behavior before binman image packing was introduced. Adapt our boot container class and WIC file to pick up this consolidated binary instead of two separate pieces. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* Merge pull request #870 from Villemoes/imx-boot-configOtavio Salvador2021-09-211-4/+11
|\ | | | | imx-boot-container.bbclass: support having more than one UBOOT_CONFIG
| * imx-boot-container.bbclass: support having more than one UBOOT_CONFIGRasmus Villemoes2021-09-201-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The whole purpose of the UBOOT_CONFIG machinery is to allow one to build multiple versions of U-Boot within the same recipe, e.g. one for writing to an eMMC boot partition, and one for use with an SD card for bootstrapping/recovery. But the current code here assumes UBOOT_CONFIG consists of just a single word (and normally leading whitespace in that variable would be harmless). So use the variable ${type} which gets set in turn to each individual word in UBOOT_CONFIG, which was probably the original intention anyway. Add a comment about what the u-boot.itb and flash.bin symlinks will end up pointing at. When UBOOT_CONFIG does indeed consist of a single word only, this changes nothing. But this unbreaks the build and makes the different artifacts available for the UBOOT_CONFIG = "sd emmc ..." case that may be used by custom boards. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* | layer: Convert to new override syntaxKhem Raj2021-08-121-2/+2
|/ | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* classes: imx-boot-container: adapt to new u-boot generationAndrey Zhizhikin2021-05-041-12/+3
| | | | | | | | | | | | | | | | | | | | | | Recent U-Boot versions switched from using customized image generation mechanisms to binman. This requires that in addition to the flash.bin boot container, the ITB is built and populated onto the raw boot partition. In addition, DDR firmware deployed together with SPL is now using fully qualified file names (including version suffix), hence there is no need to sanitize those binaries anymore when DDR firmware is packed. Drop the specialized build target from UBOOT_MAKE_TARGET, as building of flash.bin is now covered by default build. Drop the pre-build step proceedure which was sanitizing version suffix from the DDR firmware name. Deploy additional u-boot.itb file that is required to be packed into the raw boot partition. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* classes: imx-boot-container: add class to provide boot containerAndrey Zhizhikin2021-03-171-0/+107
Add a class which extends the u-boot build mechanism with providing a separate "flash.bin" binary that replaces the imx-boot in the WIC file. This class is inherited in u-boot-fslc recipe and extends it only to those machines that have a corresponding "imx-boot-container" machine override set. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>