summaryrefslogtreecommitdiffstats
path: root/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
Commit message (Collapse)AuthorAgeFilesLines
* imx-boot: Add i.MX 93 configurationDaiane Angolini2023-02-141-5/+37
| | | | | | It is based on 5.15.71_2.2.0 NXP BSP release. Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
* imx-boot: Fix the bsp overrideRodrigo M. Duarte2023-02-131-1/+1
| | | | Signed-off-by: Rodrigo M. Duarte <rodrigo.duarte@ossystems.com.br>
* imx-boot: Add support for i.MX 8ULP machinesDaiane Angolini2023-02-071-0/+28
| | | | | | It comes from 5.15.52-2.2.0 BSP. Signed-off-by: Daiane Angolini <daiane.angolini@foundries.io>
* imx-boot: Create missing build directoriesKhem Raj2022-10-261-0/+6
| | | | | | | | | | | | | | | These are needed by do_uboot_assemble_fitimage code after https://git.openembedded.org/openembedded-core/commit/?id=5e12dc911d0c541f43aa6d0c046fb87e8b7c1f7e since this code now expects these directories to exist even if we are not using it Fixes run.do_uboot_assemble_fitimage.2153024: line 1 64: cd: /mnt/b/yoe/master/build/tmp/work/imx8qm_var_som-yoe-linux-musl/imx-boot/1.0-r0/git/imx8qm_var_som_defconfig: No such file or directory Signed-off-by: Khem Raj <raj.khem@gmail.com>
* imx-base.inc: consolidate `IMX_EXTRA_FIRMWARE` definitionOtavio Salvador2022-07-291-3/+0
| | | | | | | | | | | | | | We should have a single definition for `IMX_EXTRA_FIRMWARE` variable as this is SoC specific and not machine, or recipe, dependent. This removes multiple assignments from: - conf/machine/imx8mq-evk.conf - conf/machine/include/imx8mm-evk.inc - conf/machine/include/imx8mn-evk.inc - conf/machine/include/imx8mp-evk.inc - recipes-bsp/imx-mkimage/imx-boot_1.0.bb Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* imx-boot: Use public key injected DTB when FIT signature is enabledLoic Poulain2022-07-011-1/+5
| | | | | | | When UBOOT_SIGN_ENABLE we want to use the DTB in which mkimage has added the signature node. Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
* recipes-bsp: drop custom deploy location for TF-A binaryAndrey Zhizhikin2022-06-141-3/+3
| | | | | | | | | | | | | 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>
* imx-boot: don't restrict to the nxp bsp onlyMax Krummenacher2022-04-261-11/+11
| | | | | | | | | | Choosing if the boot container FIT image is built with imx-mkimage/ imx-boot or the U-Boot provided binman can be done with the imx-boot-container MACHINEOVERRIDES. Change the used overrides from *nxp-bsp to *generic-bsp. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
* mx8dx: Normalize MACHINEOVERRIDES implementationTom Hochstein2022-03-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The imx8dx-mek machine is similar to imx8qxp-mek and so the mx8qxp override was included in the MACHINEOVERRIDES hierarchy. This is non-standard, and the rework of the SOC overrides didn't handle it properly, leading to a build break: ``` Log data follows: | DEBUG: Executing shell function do_compile | NOTE: 8QX boot binary build | cp: failed to access '/home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/git/iMX8DX/scfw_tcm.bin': Not a directory | WARNING: /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636:179 exit 1 from 'cp /home/aquino/src/ossystems/oel-platform/build/tmp/deploy/images/imx8dx-mek/imx-boot$ tools/scfw_tcm.bin /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/git/iMX8DX/scfw_tcm.bin' | WARNING: Backtrace (BB generated script): | #1: compile_mx8x, /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636, line 179 | #2: do_compile, /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636, line 151 | #3: main, /home/aquino/src/ossystems/oel-platform/build/tmp/work/imx8dx_mek-oel-linux/imx-boot/1.0-r0/temp/run.do_compile.1809636, line 189 ERROR: Task (/home/aquino/src/ossystems/oel-platform/sources/meta-freescale/recipes-bsp/imx-mkimage/imx-boot_1.0.bb:do_compile) failed with exit code '1' ``` Fix the problem by removing mx8qxp from the mx8dx hierarchy and adapting existing mx8qxp overrides appropriately. Fixes: #1027 Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* layer: Update LICENSE variable to use SPDX license identifiersAndrey Zhizhikin2022-03-031-1/+1
| | | | | | | | | | | | Since OE-Core commit 9379f80f48 ("license/insane: Show warning for obsolete license usage"), LICENSE field not containing SPDX identifiers are treated with WARNING. An automated conversion using scripts/contrib/convert-spdx-licenses.py to convert to use the standard SPDX license identifiers has been done on the entire layer. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* Generalize overrides subsystem for NXP and Mainline supportOtavio Salvador2022-02-211-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Essentially, we extend the overrides to a generic-bsp, nxp-bsp, and mainline-bsp. So, for example, the mx8mq override is split into: - imx-generic-bsp: compatible with every i.MX SoC and both BSP variants - imx-nxp-bsp: compatible with every i.MX SoC but specific to NXP BSP - imx-mainline-bsp: compatible with every i.MX SoC but specific to Mainline BSP - mx8-generic-bsp: compatible with every i.MX8 SoC and both BSP variants - mx8-nxp-bsp: compatible with every i.MX8 SoC but specific to NXP BSP - mx8-mainline-bsp: compatible with every i.MX8 SoC but specific to Mainline BSP - mx8m-generic-bsp: compatible with every i.MX8M SoC and both BSP variants - mx8m-nxp-bsp: compatible with every i.MX8M SoC but specific to NXP BSP - mx8m-mainline-bsp: compatible with every i.MX8M SoC but specific to Mainline BSP - mx8mq-generic-bsp: compatible with every i.MX8MQ SoC and both BSP variants - mx8mq-nxp-bsp: compatible with every i.MX8MQ SoC8 but specific to NXP BSP - mx8mq-mainline-bsp: compatible with every i.MX8MQ SoC but specific to Mainline BSP The extender mechanism is responsible for extending the override list to include the generic overrides. We can then use the three different variants to handle the metadata correctly. Generically speaking, the conversion mainly was automated (with a lot of back and forth until getting it right). To convert an existing layer, the following script can be used: ```sh git ls-files classes recipes-* \ | xargs sed -i \ -e 's,:\(mx[6-8]\w*\),:\1-nxp-bsp,g' \ -e 's,(\(mx[6-8]\w*\)),(\1-nxp-bsp),g' \ -e 's,\(mx[6-8]\w*\)|,\1-nxp-bsp|,g' \ -e 's,|\(mx[6-8]\w*\)),|\1-nxp-bsp),g' \ \ -e 's,:\(mx[5s]\w*\),:\1-generic-bsp,g' \ -e 's,(\(mx[5s]\w*\)),(\1-generic-bsp),g' \ -e 's,\(mx[5s]\w*\)|,\1-generic-bsp|,g' \ -e 's,|\(mx[5s]\w*\)),|\1-generic-bsp),g' \ \ -e 's,:\(vf\w*\),:\1-generic-bsp,g' \ -e 's,:\(vf[56]0\w*\),:\1-generic-bsp,g' \ -e 's,\(vf\w*\)|,\1-generic-bsp|,g' \ -e 's,|\(vf\w*\)),|\1-generic-bsp),g' \ -e 's,\(vf[56]0\w*\)|,\1-generic-bsp|,g' \ -e 's,|\(vf[56]0\w*\)),|\1-generic-bsp),g' \ \ -e 's,:\(imx\) ,:\1-nxp-bsp ,g' \ -e 's,(\(imx\)),(\1-nxp-bsp),g' \ -e 's,\(imx\)|,\1-nxp-bsp|,g' \ -e 's,|\(imx\)),|\1-nxp-bsp),g' for d in $(find -type d | egrep '/mx[6-8]w*'); do git mv $d $d-nxp-bsp done for d in $(find -type d | egrep '/imx$'); do git mv $d $d-nxp-bsp done for d in $(find -type d | egrep '/mx[5s]w*'); do git mv $d $d-generic-bsp done ``` Fixes: #791. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* imx-boot,u-boot-imx: Add bootloader image size to SD card imageTom Hochstein2022-01-191-4/+6
| | | | | | | | Append a tag to the bootloader image used in the SD card image. The tag contains the size of the bootloader image so UUU can easily find the end of the bootloader in the SD card image. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* imx-mkimage: use mkimage tool from sysrootAndrey Zhizhikin2021-10-221-3/+1
| | | | | | | | | | | mkimage tool is provided as a part of sysroot and should not be used as a local copy, since it contains runtime dependencies which local copy does not account for. Drop the local copy on mkimage, introduce the patch that fixes mkimage invocations in build system. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* layer: Convert to new override syntaxKhem Raj2021-08-121-11/+11
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* imx-boot: Add dependency on xxd-nativeNathan Rossi2021-04-201-0/+2
| | | | | | | | | | | | | | | | | | | | | | | The fspi_packer.sh script uses xxd in order to generate the SPI flash configuration header. If xxd is missing no error is produced and the output image does not work. The log however contains the following error messages (e.g. for iMX8MP flash_evk_flexspi target): ./../scripts/fspi_packer.sh ../scripts/fspi_header ./../scripts/fspi_packer.sh: 5: xxd: not found dd: failed to open 'qspi-header': No such file or directory 3333+1 records in 3333+1 records out 3413776 bytes (3.4 MB, 3.3 MiB) copied, 0.00566483 s, 603 MB/s dd: failed to open 'qspi-header.off': No such file or directory cp: cannot stat 'qspi-header.off': No such file or directory rm: cannot remove 'qspi-header*': No such file or directory F(Q)SPI IMAGE PACKED xxd is not in HOSTTOOLS or HOSTTOOLS_NONFATAL, as such the explicit DEPENDS is required. Signed-off-by: Nathan Rossi <nathan.rossi@digi.com>
* imx-boot: drop compatibility with mainline bspAndrey Zhizhikin2021-03-171-1/+1
| | | | | | | | | | | | | Mainline BSP switches from using imx-boot package, which provides the boot container for mx8 derivatives, to the boot container provided as a part of u-boot package and usage of imx-boot-container class. Drop the compatibility with mainline BSP from the recipe, and let derivatives that are built with it to integrate support of new boot container mechanism. Fixes: 6fc0971c ("imx-mkimage: allow to be used with mainline bsp for mx8m)" Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* layer: license: fix GPL-2.0 license identifiers changed upstreamAndrey Zhizhikin2021-02-241-1/+1
| | | | | | | | | | | | | | | Upstream commit 2456f523cf ("licenses: Update license file to match current SPDX names") deprecated the usage of GPL-2.0 SPDX identifier, removed GPL-2.0 license file and replaced it with GPL-2.0-only SPDX identifier and text file. Adjust layer recipes to use new SDPX identifier and text file. imx-test recipe has license has been re-captured to use GPL-2.0-or-later identifier, since it is required by the license text accompanying the source code repository through "GPLv2 or later" statement in COPYING file. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* imx8qxpmek: Update the i.MX 8QXP default build to rev C0Tom Hochstein2021-01-211-1/+3
| | | | | | | | | | The current machine configuration support for 8QXP MEK is for rev B0 silicon. Support for rev C0 is implemented using a machine override `mx8qxpc0`. Update the default build to rev C0 silicon. Support for rev B0 is provided with a new machine feature `soc-revb0`. The machine override is removed. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* imx-mkimage: allow to be used with mainline bsp for all mx8 machinesGary Bisson2020-12-301-12/+0
| | | | Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
* imx-mkimage: allow to be used with mainline bsp for mx8mAndrey Zhizhikin2020-12-111-20/+14
| | | | | | | | | | | | | | | | | | | | | | | | | imx-boot provides a boot container, which is required for mx8m family of SOCs to execute a boot sequence. Allow the imx-boot to generate boot container for Mini, Nano and Plus SOCs by adding use-mainline-bsp to the list of compatible machines. In order to accommodate new boot container generation model, former SOC_TARGET variable has been renamed to IMX_BOOT_SOC_TARGET and should be explicitly defined in the target machine recipes. This is done to indicate that even if the mx8mm machine is finter out from MACHINEOVERRIDES by extender filter - this recipe picks up a proper target definition for boot container construction. Default ATF binary image is also now based on ATF_PLATFORM, which is explicitly defined in the machine configuration file. Current support includes only Mini, Nano and Plus SOCs from i.MX8M family, and additions of further machines would require the definition of ATF_PLATFORM and IMX_BOOT_SOC_TARGET to be moved out from imx-boot recipe to a machine configuration file. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* imx-boot: allow for additional/different u-boot device-treeMax Krummenacher2020-10-021-3/+3
| | | | | | | | | | | | | | | | With the current call to imx-mkimage and SOC_TARGET = "iMX8M" the u-boot device tree file name is set to $(PLAT)-evk.dtb in iMX8M/soc.mak which happens to match ${UBOOT_DTB_NAME} if building for an NXP machine. Setting the dtbs environment variable to ${UBOOT_DTB_NAME} makes the build succeed also for other machines. In the hardcoded version $(dtbs) is an intermediate file and gets delete as the last step of make. Thus for several make targets we have to redo the copy step before each make invocation or the second one will fail as the device tree file is then missing. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
* imx-mkimage: upgrade to version 1.0Andrey Zhizhikin2020-09-231-0/+218
This upgrade contains of following modifications: - introduce new i.MX8 derivatives; - upgrade imx-mkimage recipe to match NXP release; Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>