Commit Graph

67 Commits

Author SHA1 Message Date
Arturo Buzarra bbb73aad2b imx-boot: generate signed U-Boot binary even when encryption is enabled
This commit fixed the sdcard generation when encryption is enabled.
In the sdcard image always is included the signed image instead of the
encrypted.

https://jira.digi.com/browse/DEL-7200

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-09-09 09:03:58 +02:00
Arturo Buzarra 91fcbffe99 imx-boot: add encryption support to the build images
https://jira.digi.com/browse/DEL-7175

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-09-01 11:29:25 +02:00
Gonzalo Ruiz bdc8f0fa6f imx-boot: ccimx8x: store mkimage log for signing
Store mkimage log for every built target so it can be later used by the
signing script to create the correct CSF file for every target.

https://jira.digi.com/browse/DEL-7158

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-07-16 17:53:24 +02:00
Gonzalo Ruiz 6fe7cbb1bf imx-boot: create mkimage log symlink before signing
The mkimage.log file is required by the signing script to create the CSF file.

Since there is one mkimage log file per target, update the mkimage.log symlink
right before signing the imx-boot file to ensure creating the CSF with the
corresponding mkimage log for every target.

https://jira.digi.com/browse/DEL-7158

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-07-16 17:53:24 +02:00
Mike Engel 284563b71c recipes-bsp: imx-mkimage Update to latest NXP release.
This commit updates to the NXP imx-5.4.24-2.1.0 BSP.

Including following changes

In M4 MCUX SDK 2.8.0, it added PMS demo for CM40 to support Partition
reboot feature besides rpmsg pingpong. So change the m40 default image
to imx8qm_m4_0_TCM_power_mode_switch_m40.bin

Build i.MX 8DXL flash_linux_m4 with V2X off
Use option V2X=NO to switch V2X off.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2020-07-15 12:00:53 +02:00
Gonzalo Ruiz 45c3f1e0ef imx-boot: ccimx8x: do not sign flash_regression_linux_m4 files
imx-boot files for target flash_regression_linux_m4 fail the signature
process, so skip them while signing the rest of the targets.

https://jira.digi.com/browse/DEL-7158

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-06-22 23:08:09 +02:00
Gonzalo Ruiz d88969aac2 imx-boot: sign images for every target in IMXBOOT_TARGETS
https://jira.digi.com/browse/DEL-7024

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-06-15 16:37:46 +02:00
Gonzalo Ruiz b6edb0076f imx-boot: add 'signed' to the signed images prefix
Signed imx-boot files had the '-signed' appended at the end of the file.
Add it after the file prefix instead, so it is easier to replace using an
unsigned file for a signed one just by changing the file prefix.

https://jira.digi.com/browse/DEL-7024

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-06-15 16:34:23 +02:00
Gonzalo Ruiz 09991407df imx-mkimage: fix compilation issue for nativesdk builds
The '-fmacro-prefix' option is a new GCC option introduced in gcc version 8.

To keep compatibility with previous GCC versions, remove this option from
the DEBUG_PREFIX_MAP list so nativesdk builds are able to compile this recipe.

Following is the compilation issue avoided by this patch:

| gcc: error: unrecognized command line option ‘-fmacro-prefix-map=<yocto-workspace>/tmp/work/x86_64-nativesdk-deysdk-linux/nativesdk-imx-mkimage/git-r0=/usr/src/debug/nativesdk-imx-mkimage/git-r0’

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-06-15 16:17:07 +02:00
Gonzalo Ruiz 25738b4ac5 imx-mkimage: remove legacy native configurations
This recipe is now built as native and nativesdk by means of the
BBCLASSEXTEND configuration.

Remove every remaining legacy native configuration since all will be covered
by the class extension.

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-06-12 11:49:38 +02:00
Gonzalo Ruiz 02646996b9 imx-boot: add dtbs parameter to print_fit_hab build
https://jira.digi.com/browse/DEL-7024

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-06-04 19:01:34 +02:00
Arturo Buzarra da4145dd13 imx-mkimage: move recipe to native and include its binaries in the SDK
imx-mkimage is a host recipe to provide the mkimage_imx8 binaries, required
for the trustfence support with platform based on AHAB (ccimx8x). Since
these binaries are required to the sign process we need to export it in the
SDK to allow the standalone sign mode, and with that we can simplify the
mechanism to share these binaries with another recipes (u-boot, linux).

Also the do_deploy() from imx-mkimage recipe was removed to avoid overriding
the implementation from the native class and allow populating the mkimage
binaries.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-06-01 08:56:20 +02:00
Arturo Buzarra dbd6cb6bd7 imx-boot: fix build ccimx8x images with trustfence support
Commit 3fbd38ca ("imx-boot: build ccimx8x images for B0 and C0 silicon
revisions") added support to build images for B0 and C0 revisions,
forgetting include this support on trustfence builds.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-05-29 15:08:48 +02:00
Arturo Buzarra ae195525a0 imx-m7-demos: add recipe for M7 binary demos
This recipe takes several binaries demo for the Cortex M7 CPU,
and are provided in the deploy directory.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-05-29 08:25:09 +02:00
Gabriel Valcazar 3fbd38ca46 imx-boot: build ccimx8x images for B0 and C0 silicon revisions
Modify the imx-seco recipe so it deploys the B0 and C0 versions of the SECO
firmware, Then, modify the imx-boot recipe so it builds every possible
combination of:

    * RAM configuration
    * imx-boot target (with and without M4 demos)
    * Silicon revision

https://jira.digi.com/browse/DEL-7069

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2020-05-28 18:01:37 +02:00
Hector Palacios ca3d27981f Revert "imx-boot: add patch to fix imx-boot images with M4 demos"
This reverts commit 03d40edfd0.

The build of U-Boot without the flags field, incorporated changes
that made the Cortex M4 acquired certain resources (like GPIOs)
that were later not available for the Cortex A35 cores.
Revert this patch so that such changes only take place on images
that contain the M4 applications.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://jira.digi.com/browse/DEL-7073
(cherry picked from commit 28ce9340f55a35199dacf1bcbf83dc016b6a2fc7)
2020-05-04 17:39:06 +02:00
Arturo Buzarra c7e4121de8 zeus migration: imx-boot: simplify bbappend to match with the upstream version
https://jira.digi.com/browse/DEL-7013

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-04-28 11:30:26 +02:00
Arturo Buzarra 9284f9df01 zeus migration: imx-mkimage: update recipe to v1.0
https://jira.digi.com/browse/DEL-7013

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-04-28 11:30:26 +02:00
Gonzalo Ruiz 4b6d1a2c09 trustfence: Add U-Boot sign support for ccimx8mn
Add Trustfence support for signing imx-boot images:
- Install a different U-Boot signing script for images with U-Boot SPL.
- Store mkimage log for later use in the signing script
- make 'print_hab_log' and store its log for later use in the signing script

https://jira.digi.com/browse/DEL-7023

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-04-08 14:23:18 +02:00
Gonzalo Ruiz c52778d2a4 imx-boot: [cosmetic] remove RAM_CONFIG comment
Remove wrong comment on conditional block where there are no
UBOOT_RAM_CONFIGURATIONS

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-04-08 14:23:18 +02:00
Gonzalo Ruiz 6451bc1990 imx-boot: [cosmetic] fix indentation
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-04-08 14:23:18 +02:00
Gonzalo Ruiz ae49a255fa imx-boot: fix sign conditions
Do not evaluate TRUSTFENCE_SIGN_MODE on conditions where the sign mode
is not relevant:

1) U-Boot binary file should be signed directly after building it when simple
U-Boot images are used, but it should not be signed when imx-boot bundled
images are used.
For those, the signing process is performed later over the whole imx-boot
bundled binary file on a different recipe.
We use BOOTLOADER_IMAGE_RECIPE variable to evaluate this distinction.
BOOTLOADER_IMAGE_RECIPE is set to "u-boot" by default and is set to "imx-boot"
on ccimx8x and ccimx8mn machine configuration files.

2) For signing imx-boot images we should treat differently those images that
include the RAM configuration in their name and those that don't, as we do
for the rest of the tasks in the same recipe. We can ignore the sign mode
method in this case.

https://jira.digi.com/browse/DEL-7023

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2020-04-08 14:20:35 +02:00
Hector Palacios 5d063d6906 imx-boot: simplify copy of SRK_efuses.bin to DEPLOYDIR
There is no need to generate PV-PR revision of this file
since it's the same for any version.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2020-02-12 18:50:19 +01:00
Hector Palacios d21462302d trustfence-sign-tools: homogenize the sign script filename
The recipe needs to create a copy of the sign.sh script to be used by
other recipes, but the file is the same whether you use it for HAB or AHAB
images. This is determined through the use of an exported variable with
the mode. There is no need to have the script duplicated.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2020-02-12 18:50:19 +01:00
Hector Palacios b0ef3ea14f imx-mkimage: install mkimage_imx8 binaries to BOOT_TOOLS
This binary is required for signing the U-Boot scripts generated
by the U-Boot recipe but it wasn't available because this recipe
was not installing it anywhere.

At the same time, remove the installation from imx-boot, to avoid a
conflict between the two (imx-mkimage is a dependency from imx-boot
anyway).

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2020-02-12 18:50:19 +01:00
Mike Engel 826ca9b63d trustfence: Export variables that are needed by sign tools.
This commit exports variables that are needed by the sign tools to
select the target HAB.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2020-02-12 18:50:19 +01:00
Hector Palacios 8320168821 trustfence: homogenize SIGN_MODE variables
* prefix TRUSTFENCE_ to variable SIGN_MODE for DEY
* prefix CONFIG_ to variable SIGN_MODE for script

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2020-02-12 18:50:19 +01:00
Mike Engel 5beec04b6a trustfence: Add Trustfence support for CCMX8X
This commit adds Trustfence support for the CCMX8X
platform.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-6917
2020-02-04 12:20:38 +01:00
Gabriel Valcazar dd1ab58d84 imx-boot: update SRCREV and SRCBRANCH to sync with sumo-4.14.98-2.3.0
Although the recipe was updated with the modifications in meta-fsl-bsp-release,
the revision was still pointing to the sumo-4.14.98-2.2.0 version of
imx-mkimage, which is incompatible with our recently updated patch.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2020-01-17 09:45:06 +01:00
Gabriel Valcazar 23e758eb22 imx-boot: sync with meta-fsl-bsp-release branch sumo-4.14.98-2.3.0
Update SRCREV and SRCBRANCH, change the names of the m4 demos that are
installed into imx-boot, change the name of the SECO firmware (ahab container)
and update our patch so it applies over the newest revision of imx-mkimage.
For the time being, use the B0 SECO firmware for all i.MX8QXP platforms and add
the changes needed for C0 support in comments.

https://jira.digi.com/browse/DEL-6932

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2020-01-16 13:27:54 +01:00
Arturo Buzarra 712fa3f96a imx-boot: add support to ConnectCore 8M Nano platform
https://jira.digi.com/browse/DEL-6911

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2020-01-10 13:37:39 +01:00
Arturo Buzarra ca9e743af8 imx-seco: add recipe to sync with meta-fsl-bsp-release branch sumo-4.14.98-2.2.0
This imx-seco recipe manages now the NXP IMX SECO firmware, it was removed
from the firmware-imx recipe.

https://jira.digi.com/browse/DEL-6823

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-10-30 16:50:18 +01:00
Gabriel Valcazar 74b59a3af7 Revert "imx-boot: move m4 demos artifacts to BOOT_TOOLS directory"
The imx-boot recipe expects the m4 demos to be in the root of the deploy
directory when building the package.

This reverts commit a0d01e1cf6.

https://jira.digi.com/browse/DEL-6731
2019-09-04 13:24:49 +02:00
Hector Palacios 5453acf56f imx-boot: update branch and SRCREV to latest NXP BSP
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2019-09-03 18:41:29 +02:00
Gabriel Valcazar 511d4c8cf3 imx-mkimage: sync with meta-fsl-bsp-release branch sumo-4.14.98-2.1.0
Update revision to the imx_4.14.98_2.1.0 branch.

https://jira.digi.com/browse/DEL-6722

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-09-02 09:43:15 +02:00
Gonzalo Ruiz a0d01e1cf6 imx-boot: move m4 demos artifacts to BOOT_TOOLS directory
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2019-08-30 18:06:13 +02:00
Gabriel Valcazar 03d40edfd0 imx-boot: add patch to fix imx-boot images with M4 demos
These images were broken in many ways, including ethernet not working and Linux
not booting. For now, revert back to the build command that was used in
DEY-2.6-r1.

https://jira.digi.com/browse/DEL-6677

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-07-24 09:37:26 +02:00
Hector Palacios 7d61198cc8 imx-boot: iterate on matching RAM sizes in do_install/do_append
The existing loops were iterating through all RAM_CONFIGS, but
they must only iterate over those that match the RAM size on the
platform's UBOOT_CONFIG.

This commit adds a Python class 'boot-artifacts' to get the list of matching
combinations of RAM_CONFIGS and UBOOT_CONFIG so that the iteration
is easier to do than nesting loops inside one another.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://jira.digi.com/browse/DEL-6641
2019-07-12 12:33:18 +02:00
Hector Palacios 00ac4445bc imx-boot: avoid renaming files during internal copy stages
Temporary files were being renamed for no good reason.
Remove renamings to simplify recipe.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2019-07-12 11:04:47 +02:00
Hector Palacios 3263fda892 imx-boot: use new UBOOT_PREFIX variable instead of creating one
The recipe was creating a variable with the value of another one from
the main recipe, just to refer to the bootable artifact prefix.
We can now use instead the new UBOOT_PREFIX variable.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2019-07-12 11:04:47 +02:00
Hector Palacios c4bea6edd8 imx-boot: create symlink to default bootable U-Boot artifact
Similar to the way the u-boot recipe does, create a symlink to the default
bootable artifact.
Since they are overwritten on every loop, this requires that the default
RAM configuration is set the last on the list of RAM_CONFIGS (same
convention than the one used on UBOOT_CONFIGS).

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://jira.digi.com/browse/DEL-6641
2019-07-09 11:21:58 +02:00
Hector Palacios 5a311a7e4a imx-boot: re-add machine name to boot filenames
With the rework to support variants, the machine name (actually the
UBOOT_CONFIG) was removed from the filename. Re-add it using
${MACHINE_NAME} which is more appropriate than the ${UBOOT_CONFIG} which
contains the RAM size (now present in ${ramc}).

While on it, remove one of the two symlinks on DEPLOYDIR. Only one makes
sense.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://jira.digi.com/browse/DEL-6641
2019-07-09 11:21:58 +02:00
Hector Palacios 23503567a1 imx-boot: build matching combinations of U-Boot and SCFW
There are several U-Boot binaries, depending on RAM size, at the moment:
- u-boot.bin-ccimx8x_sbc_pro512MB
- u-boot.bin-ccimx8x_sbc_pro1GB
- u-boot.bin-ccimx8x_sbc_pro2GB

and several SCFW files, depending on frequency, size, bus width, at the
moment:
- scfw_tcm.bin-1.2GHz_512B_16bit
- scfw_tcm.bin-1.2GHz_1GB_16bit
- scfw_tcm.bin-1.2GHz_1GB_32bit
- scfw_tcm.bin-1.2GHz_2GB_32bit

From these, we need to combine those that match the RAM size, to produce
bootable images for the different variants.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://jira.digi.com/browse/DEL-6641
2019-07-08 16:42:28 +02:00
Gabriel Valcazar ea466b0264 imx-boot: add NXP sumo-4.14.98-2.0.0_ga changes
Use rel_imx_4.14.98_2.0.0_ga imx-mkimage tag, update ATF binary name, update
target names and rename CM4.bin to m4_image.bin.

https://jira.digi.com/browse/DEL-6603

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-05-15 10:35:13 +02:00
Gabriel Valcazar 7c465b30c3 imx-mkimage: update revision to use v4.14.98 BSP branch
This is the version used in meta-fsl-bsp-release branch sumo-4.14.98-2.0.0_ga.

https://jira.digi.com/browse/DEL-6603

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-05-15 10:33:23 +02:00
Gabriel Valcazar 0969676113 imx-boot: add fimrware-imx dependencies for do_compile() and do_populate_lic()
These dependencies went missing when we deleted our first .bb file and replaced
it with a .bbappend. Without these dependencies, the build can sometimes fail.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-04-16 17:31:02 +02:00
Gonzalo Ruiz 32bc5199fc imx-boot: remove our .bb file and add a .bbappend
Most of the support has been added to the meta-freescale layer, so
substitute our recipe for a .bbappend and redefine the tasks to build
U-Boot images for our two variants (1GB and 2GB).

https://jira.digi.com/browse/DUB-881

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2019-03-21 15:44:54 +01:00
Gonzalo Ruiz 9daabff5e7 imx-mkimage: remove our .bb file and add a .bbappend
Every task in this recipe is already supported in the same way in the
meta-freescale layer, so just keep the .bbappend file to select SRCBRANCH and
SRCREV.

The DDR patch can be removed since that source code is now included into the
SCFW project.

https://jira.digi.com/browse/DUB-881

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2019-03-21 15:44:54 +01:00
Gabriel Valcazar 6a4d40ceca imx-boot: remove u-boot-hash.bin between build iterations
This is a new intermediate file that will be reused in every iteration if it's
not removed, causing all imx-boot images to have the same U-Boot binary.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-01-16 11:31:00 +01:00
Gabriel Valcazar c0497cc651 imx-boot: update recipe to match the one in NXP's layer
While on it, clean up the recipe by removing dead code

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-01-16 11:31:00 +01:00