Commit Graph

2234 Commits

Author SHA1 Message Date
Javier Viguera 9348d94d22 ccimx93: update multimedia package for NXP release lf-6.1.55-2.2.0
Backport of multimedia package for ccimx93 from NXP's Mickledore-based
lf-6.1.55-2.2.0 release. Mainly copies and appends of multimedia
recipes from the new release, and restricted to ccimx93 by changing the
COMPATIBLE_MACHINE, so it does not affect other platforms.

https://onedigi.atlassian.net/browse/DEL-8840

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-18 09:46:32 +01:00
Javier Viguera 65750ce196 ccimx93: move environment to the end of the bootX partitions
libubootenv treats negative offsets as backwards offset from the end of
the block device, so use that to move the environment to the last 16KiB
of the hardware boot partitions.

https://onedigi.atlassian.net/browse/DUB-1064

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-16 18:30:55 +01:00
David Escalona 76e2672b22 ccmp1: fix platform 'UBOOT_PREFIX' variable
Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
David Escalona a0bc831353 meta-digi-arm: machine: add new 'BOOTLOADER_SEEK_BOOTPART' variable to platform configurations
This new variable establishes the number of 1Kb blocks to skip before writing U-Boot in the
bootloader partition.

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
David Escalona bf365df07a imx-boot: generate symlinks for trustfence artifacts
Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
Javier Viguera 2c2c6e3896 ccimx93: remove A0 SOC revision overlay
With the update of the ethos-u firmware for the NPU in previous commit,
this overlay is no longer required.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-12 13:11:19 +01:00
Isaac Hermida 02d1523591 ccimx93: update ML/AI packages for NXP release 6.1.55-2.2.0
As part of the integration of the new ML package, also update the
ethos-u-firmware binary built from Stash:

Repo: emp/ethos_u_firmware.git
Revision: bd5506ddba364ad04602d5009b77077f78450b97
Source: NXP's MCUXpresso SDK_2.14.2_MIMX9352xxxxM

Co-authored-by: Javier Viguera <javier.viguera@digi.com>

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-12 12:09:21 +01:00
Mike Engel 70b65c121d libubootenv: fix HWID dump on Linux console when using fw_printenv
https://onedigi.atlassian.net/browse/DEL-8822

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-01-11 12:01:49 +01:00
Hector Palacios 9248c9ab79 cc93 wlan: fix the check for Wi-Fi module correctly loaded
The result of the modprobe operation doesn't guarantee the driver loaded
correctly. The module may succeed and be loaded, but failures during the
probe may not propagate and result in an error of modprobe.
The valid condition is to check the existence of the interface in
/sys/class/net/wlan0.

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

https://onedigi.atlassian.net/browse/DEL-8821
2024-01-10 09:34:57 +01:00
Francisco Gil 0aa5003267 read only: fix problem when mounting external devices
In commit a84d011 this was fixed for mount_digiparts.sh, but
was missing the fix in the mount.sh script.

In that commit there is a full explanation about why this
solves the issue.

https://onedigi.atlassian.net/browse/DEL-8721

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-01-09 16:36:20 +01:00
Francisco Gil 0cba27a016 udev: mount only media devices with filesystem on them
With this new rule, only the medias that contain a filesystem
on them are mounted, filtering several calls to mount.sh.

I have checked that this change doesn't increase the boot time
at all.

https://onedigi.atlassian.net/browse/DEL-8826

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-01-08 16:43:26 +01:00
Javier Viguera 4d8be061f0 ccimx93: update graphics package for NXP release lf-6.1.55-2.2.0
Backport of graphics package for ccimx93 from NXP's Mickledore-based
lf-6.1.55-2.2.0 release. Mainly copies and appends of graphics recipes
from the new release, and restricted to ccimx93 by changing the
COMPATIBLE_MACHINE, so it does not affect other platforms.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-08 16:39:01 +01:00
Javier Viguera 46550c51cf ccimx93: remove MCA support as it's not populated
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-08 16:26:44 +01:00
Hector Bujanda 40802dff3d ccmp15: remove MCA entries as it will never be populated
Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
2024-01-08 13:24:10 +01:00
Hector Palacios efd5f898d8 ccmp1: move definition of TF-A and OP-TEE suffixes to platform
The TF-A and OP-TEE images have different suffixes depending
on whether TrustFence is enabled or not, but the suffix variables
themselves must exist independently of whether TF is enabled.
Currently, they were defined on the trustfence.bbclass, and the
variables did not exist when TF was disabled, which caused build
problems, for example, building the SWU file.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-04 16:56:06 +01:00
Gabriel Valcazar 604dcbc20f ccimx6ul/ccmp1: compress recovery UBIFS image using zlib to reduce its size
This compression method has a better compression ratio than the default (lzo),
but the (de)compression speed is slower, leading to slower read/write speeds.
However, the recovery partition only gets accessed in specific use cases such
as software updates and partition encryption, and it contains an initramfs. The
UBIFS will only be read at boot time to load its elements, but once the
initramfs is loaded in RAM, there are no more read/write operations to the
UBIFS during runtime, so the speed penalty is minimal.

Take advantage of the improved compression ratio to reduce the size of the
recovery image. On the ccimx6ul, the size is reduced by 248 KiB.

https://onedigi.atlassian.net/browse/DEL-8819
https://onedigi.atlassian.net/browse/DEL-8825

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-04 11:24:20 +01:00
Mike Engel 0cd1c33a7b trustfence: use signed images suffixes for ccmp1 boot artifacts
When TrustFence is enabled, the boot artifacts (TFA and FIP)
have a 'signed' suffix. Handle this case so that the correct
symlinks are created and the correct artifacts are put into the
SWU file.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-03 13:05:05 +01:00
Hector Palacios 4f33afcbcf trustfence: split ccmp13 passwords in 8 files and set SWUPDATE keys
For signing SWU files we need to set a couple of variables:
 - SWUPDATE_PRIVATE_KEY_TEMPLATE to the private key file
 - SWUPDATE_PASSWORD_FILE to the password of the private key

The latter must only contain one password, whereas the current key_pass.txt
file had (for the ccmp13) the eight keys separated by a white space.

This commit:
 - If the file key_pass.txt exists, it extracts each key into a separate
   file key_pass0X.txt.
 - If the keys don't exist, generates separate files per key.
 - Changes the permissions of password files to 400.
 - Adapts the sign script to use the single password files.
 - Fixes a few quotes

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-03 13:05:05 +01:00
Javier Viguera 161c66f5f6 ccimx93: support building bootloader for soc revision A0
Starting with NXP release "lf-6.1.55-2.2.0" the IMX optee fork (based on
version 4.0.0) does not support SOC revision A0. This commit recovers
support to build a bootloader for A0, extending the optee patch for
ccimx93 to support A0 with a build time option, and then extending the
optee-os and imx-boot recipes to build two optee binaries and using them
to generate bootloaders for both SOC revisions.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-03 12:00:07 +01:00
Javier Viguera e4d089a6ab optee: update to NXP's lf-6.1.55-2.2.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-03 12:00:07 +01:00
Javier Viguera 4566b10751 imx-boot, imx-mkimage: update to NXP's lf-6.1.55-2.2.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-03 12:00:07 +01:00
Javier Viguera 9eefe05979 imx-atf: update to NXP's lf-6.1.55-2.2.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-03 12:00:07 +01:00
Javier Viguera 20809e6cbf imx-boot-firmware: update to NXP's lf-6.1.55-2.2.0 release for ccimx93
This includes also an update and rename of the Edgelock Enclave firmware
package (firmware-ele-imx).

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-03 12:00:07 +01:00
Hector Bujanda e02108dce5 ccmp15: add DT overlay for Cortex-M4 RemoteProc
https://onedigi.atlassian.net/browse/DEL-8823

Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
2023-12-29 11:42:48 +01:00
Isaac Hermida 925b618e63 linux-dey: update to NXP's lf-6.1.55-2.2.0 release for ccimx93
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-12-21 17:57:16 +01:00
Isaac Hermida f67294adfb ccimx93: iw61x: update package for NXP release 6.1.55-2.2.0
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-12-21 17:56:11 +01:00
Gabriel Valcazar bfbe078a3f linux-dey: ccmp1: rework defconfig logic to avoid using defualt defconfig
Commit d3f3cfdb62 removed the inclusion of STM's
linux-stm32mp.inc from meta-st-stm32mp in our linux-dey recipe, but this
inadvertently removed the logic in do_configure() necessary to use our custom
ccmp1_defconfig. Since this commit, the kernel was being built with the default
ARM defconfig, which is very different from our custom defconfig and doesn't
even boot on MP1 platforms.

Rework the logic used to copy our platform's defconfigs to prevent this.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-15 10:50:29 +01:00
Mike Engel 56219a7e59 conf: machine: remove BOOTLOADER_SEEK_OFFSET
This commit removes the BOOTLOADER_SEEK_OFFSER, because it has been
moved into the swupdate class and renamed into SWUPDATE_UBOOT_OFFSET.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-12-05 10:54:26 +01:00
Mike Engel e4bb4d69af swupdate: add u-boot swupdate support
This commit adds u-boot swupdate support for all platforms.
Now u-boot can be updated with all our supported update
options. Currently it will only update first partition
u-boot partition.

https://onedigi.atlassian.net/browse/DEL-8749

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-12-05 10:53:55 +01:00
Hector Palacios fd70bf2fce swupdate: use dynamic mtd-blacklist for configuration file
The 'mtd-blacklist' parameter prevents swupdate from acting upon those
partitions that we consider sensitive.
Make such list platform-dependent.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-12-01 10:55:05 +01:00
Hector Palacios 7cd2d5d0c1 uboot: ccmp1: disable LEGACY_IMAGE_FORMAT when FIT enabled
The LEGACY_IMAGE_FORMAT defaults to 'y' if there is no FIT
support, which happens after applying the default configuration.
Then, the FIT support is added in a config fragment, but the
LEGACY_IMAGE_FORMAT is not disabled.
Disabling this is recommended to avoid the possibility to boot
unsigned legacy images.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-11-28 19:04:22 +01:00
Javier Viguera 3cfce77c0f ccimx93: update ML package for NXP release 6.1.36-2.1.0
As part of the integration of the new ML package, also update the
ethos-u-firmware binary built from Stash:

Repo: emp/ethos_u_firmware.git
Revision: a0352b0cf7267c896b55980dedd08daddc780733
Source: NXP's MCUXpresso SDK_2.14.0_MIMX9352xxxxK

And, drop deepview-rt support for ccimx93, as NXP has done the same in
6.1.36-2.1.0 release.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-28 15:51:38 +01:00
Mike Engel 8552421e55 conf: machine: add new Cortex-M overlays
https://onedigi.atlassian.net/browse/DEL-8581

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-11-28 15:12:25 +01:00
Hector Palacios dbdd989018 ccmp1: boot script: set temp variable to skip fit re-loading
The U-Boot bootscript loads the fitImage into RAM memory to run
this bootscript. This bootscript ends up calling 'dboot' command
to run the FIT default configuration.
To avoid 'dboot' re-loading again the fitImage into RAM memory,
set this temporary variable that will be immediately reset
by 'dboot'.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-11-28 12:53:30 +01:00
Hector Palacios d3f3cfdb62 ccmp1: remove dependencies from kernel include file from meta-st-stm32mp
An anonymous function in linux-stm32mp.inc produces a bbfatal error when
KERNEL_DEVICETREE variable contains more than one device tree. This is our
case since we build the main DT plus a number of DT overlays.
This commit removes the dependency to this include file since we have our
own recipe to build the kernel and it is not needed at all.
It also removes the build of a uImage and the need to provide a
LOADADDR.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-11-28 12:53:30 +01:00
Javier Viguera b48f2806eb ccimx93: update graphics package for NXP release 6.1.36-2.1.0
Backport of graphics package for ccimx93 from NXP's Mickledore-based
6.1.36-2.1.0 release. Mainly copies and appends of graphics recipes
from the new release, and restricted to ccimx93 by changing the
COMPATIBLE_MACHINE, so it does not affect other platforms.

Notice, that the new version of weston used now by the ccimx93 requires
a different profile file (weston-socket.sh). This profile supercedes the
old 'weston.sh'.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-21 18:23:26 +01:00
Javier Viguera 3aee8c39f7 ccimx93: update multimedia package for NXP release 6.1.36-2.1.0
Backport of multimedia package for ccimx93 from NXP's Mickledore-based
6.1.36-2.1.0 release. Mainly copies and appends of multimedia recipes
from the new release, and restricted to ccimx93 by changing the
COMPATIBLE_MACHINE, so it does not affect other platforms.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-21 18:23:26 +01:00
Francisco Gil fea7e623d7 trustfence: fix building issue with trustfence enabled in cc8x
In commit 2fd1dbfed7, we accidentally removed some changes needed to
build imx-boot with Trustfence enabled, which were added in commit
1ce17da864.

This partially reverts commit 2fd1dbfed7

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-11-21 10:54:35 +01:00
Gabriel Valcazar 2a015f3f87 Add support for dey-image-lvgl images
LVGL is a free and open-source embedded graphics library that is able to run
in environments with limited resources.

This image includes a desktop environment and an LVGL widget demo (lvgl_demo)

https://onedigi.atlassian.net/browse/DEL-8740

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-16 11:39:03 +01:00
Francisco Gil 7c6967d5d6 dualboot: avoid the mount of alternative rootfs partition
In a dualboot system the alternative rootfs was mounted by default.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-11-13 17:23:06 +01:00
Francisco Gil 01c5b1f329 mount: remove dependencies from fw_getenv in mount script
https://onedigi.atlassian.net/browse/DEL-8582

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-11-13 17:23:06 +01:00
Arturo Buzarra f80b70bb72 ccmp1: add DT overlay for the DVK v2
This commit adds several overlays for DVK v2 and modifies the boot script to apply it
based on the board_version variable.

https://onedigi.atlassian.net/browse/DEL-8746

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2023-11-07 11:18:58 +01:00
Javier Viguera e9aeb051cf ccimx93: enable the build of A0 SOC revision bootloader
Implement support to program the correct bootloader on the different
installation scripts.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-03 14:03:25 +01:00
Javier Viguera 77755ac73c imx-boot: add makefile target to build imx93 A0 SOC revision
Also, set the build of A1 SOC revision by default for ccimx93.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-02 18:59:06 +01:00
Javier Viguera a96d4fdc1d imx-atf: add support for imx93 A0 soc revision
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-02 18:58:36 +01:00
Francisco Gil 014667b41c udev: automount: add exception to mount loop and ram block devices
The nodes "/dev/ramX" and "/dev/loopX" are mounted on boot.
Each node calls the mount.sh script, but they are not mounted
because these nodes are blacklisted in the "blacklist.conf" file.

In the ccmp13 adding this modification in the rule saves
around 4 seconds per boot.
In the ccmp15 and ccimx6ul around 2 seconds are saved.

https://onedigi.atlassian.net/browse/DEL-8725

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-11-02 09:48:58 +01:00
Mike Engel df9b1cf329 ccmp1: add signed FIT image support
This commit adds signed FIT image support for the CCMP1
platforms when using Trustfence.

https://onedigi.atlassian.net/browse/DEL-8591

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-10-30 12:58:19 +01:00
Isaac Hermida 4c8bde2bc3 u-boot: ccimx93: add bootscript support for cpu rev A0
Add support to the bootscript to load the CPU overlay for the A0 rev.

https://onedigi.atlassian.net/browse/DEL-8743

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-10-26 16:11:28 +02:00
Hector Palacios bb36b04777 install_linux_fw: enable bootcount by setting bootlimit if dualboot enabled
Use the intention of installing dual boot firmware as a condition to set
bootlimit=3 so that the bootcount mechanism is enabled.

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

https://onedigi.atlassian.net/browse/DUB-1058
2023-10-20 10:48:07 +02:00
Hector Palacios 961acf48de install_linux_fw: reset bootcount before resetting target
During firmware install, the target may be reset several times.
We don't want the bootcount to count these as boot attempts.

This was done in a791bb4463 for the ccmp1
but not for the rest of platforms.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-10-20 10:48:07 +02:00