Commit Graph

437 Commits

Author SHA1 Message Date
Hector Palacios f65dc4440e ccmp1: reorder addresses for fitImage binaries
Move the address where the fitImage is loaded after the addresses
where the binaries in it are decompressed. This way, the fitImage
can grow without size restrictions.

The memory map now looks like this:

  0xC0000000    Start of memory
      |
      |           (32 MiB)
      v
  0xC2000000    Kernel loadaddr ($loadaddr)
      |
      |           (32 MiB)
      v
  0xC4000000    DTB/DTBO load address ($fdt_addr)
      |           (4 MiB)
      v
  0xC4400000    Init ram disk ($initrd_addr)
      |
      |
      |           (64 MiB)
      |
      v
  0xC8400000    ZIP/fitImage address ($fit_addr_r)
      |
      ~
      |
      v

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-06-23 16:19:28 +02:00
Hector Palacios 0aed6a9c73 move IMAGE_FSTYPES to digi-defaults.inc
IMAGE_FSTYPES was declared on each platform config file, but it has the
same values for all platforms depending on the storage media (mmc or mtd)
and whether read-only is enabled.

Move the conditional weak assignment to digi-default.inc and remove it from
each platform config.
In the case of STM platforms, since IMAGE_FSTYPES is weak-assigned by STM
layer, we still need to append/remove from it inside the platform config,
but move it to the family includes, rather than declaring it on each
specific platform.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-06-16 08:35:19 +02:00
Hector Palacios 57f0575ad0 machine: remove 'sdcard.gz' image from default IMAGE_FSTYPES
The generation of the sdcard image takes time and resources, and
it's not involved in the Get Started.
This can be easily re-enabled by appending the variable in the
project local.conf.

Append the variable in the build scripts, to facilitate its usage
on release builds.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-06-16 08:35:19 +02:00
Javier Viguera 0fa18775ad dey-toolchain: fix including machine-specific SDK tools
Fixes commit b143804dbb, since in nativesdk
context MACHINE_FEATURES is reset to SDK_MACHINE_FEATURES, causing OP-TEE
building tools to be missing from the generated SDK.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2025-06-06 12:30:33 +02:00
Arturo Buzarra 09714323a6 ccmp1: adjust memory layout for FIT image support
This commit updates the memory layout to properly allocate space for the
different FIT image components, while ensuring total memory usage stays below
128 MiB. This avoids overlaps and ensures correct loading on memory-constrained
variants.

Final memory map:

  Start of memory:        #  0xC0000000
                          #   |
                          #   | 32 MiB reserved
                          #   v
  FIT image load address: #  0xC2000000
                          #   |
                          #   | 32 MiB for FIT image
                          #   v
  Kernel load address:    #  0xC4000000
                          #   |
                          #   | 32 MiB for Kernel
                          #   v
  DTB/DTBO load address:  #  0xC6000000
                          #   |
                          #   | Size for DTB/DTBO
                          #   v

Total memory mapped: 96 MiB

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2025-05-26 09:48:00 +02:00
Gabriel Valcazar e03ef8941c ccmp1: remove spurious UBI/UBIFS images
In theory, we already had the necessary changes to remove these images, but
two things needed tweaking:

    * MULTIUBI_BUILD values use underscores instead of hyphens, so use
      underscores to properly remove the default value inherited from
      BOOTDEVICE_LABELS.
    * STM used to incorporate a custom "stmultiubi" image type in the stm32mp
      builds, but they've replaced this with the upstream "multiubi" type.
      Reflect this change to avoid generating additional UBI/UBIFS images in
      our builds.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-05-19 10:25:01 +02:00
Hector Palacios 63e7031614 add missing `pn-` prefix to INSANE_SKIP appends
Commit 9c3916da94 added INSANE_SKIP
"32bit-time" to certain recipes that use 32bit APIs on the ccmp1
SOMs, but forgot to include the `pn-` prefix to really apply to
those recipes.

While on it, add two additional ones on recipes used by NXP 32-bit
platforms.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-09 12:40:51 +02:00
Javier Viguera fb655dd021 meta-digi: xwayland: use poky's xwayland 23.2.5 recipe
That includes several CVE patches not present of meta-freescale's
23.2.5.imx recipe (which is based in exactly the same revision).

Similar change was done in NXP's meta-imx (see commit
99ceb057fcfdc8151c1488089d5f22363dfdb6d7).

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2025-05-06 15:27:04 +02:00
Javier Viguera 1032a127e2 meta-digi: update i.MX GStreamer stack to 1.24.7.imx
NXP uses this version for its 6.6.52-2.2.0 release.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2025-05-06 15:26:59 +02:00
Hector Palacios 9c3916da94 add INSANE_SKIP 32bit-time to avoid warnings on recipes using 32-bit APIs
The binaries of certain recipes use 32-bit APIs (ioctl, stat) that produce
build warnings. Add INSANE_SKIP to prevent the warnings.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:05:02 +02:00
Hector Palacios 3c6d3d356b ccmp1/ccmp2: clear ALSA_LIST with override and move it to include file
ALSA_LIST variable is weakly set through an override (stm32mp1common or
stm32mp2common). When the override is in place, the hard assignment of
the plain variable is not enough, and the value weakly set in
meta-st-stm32mp layer takes precedence over the plain variable hard
assignment.
Clear the variable with the override and move it from machine config files
to the include file.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:04:31 +02:00
Hector Palacios 51116d4065 ccmp1: use 'opteemin' BOOTSCHEME_LABELS for ccmp15 by default
Move BOOTSCHEME_LABELS from common include to platform config

Default to:
- 'opteemin' for ccmp15
- 'optee' for ccmp13

This doesn't change the behavior present in DEY-4.0, where OPTEE in ccmp15
was minimal and running on non-secure DDR.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:04:31 +02:00
Hector Palacios 2a547ac302 ccmp1: disable STM32MP_DEVICETREE_PROGRAMMER_ENABLE
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:03:40 +02:00
Hector Palacios 4d37569a52 ccmp1: move common ccmp15/ccmp13 defines to common include file
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:03:40 +02:00
Hector Palacios 7722e3a1d2 ccmp1: [cosmetic] re-order definitions to match the ccmp25 layout
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:03:40 +02:00
Hector Palacios d21c7b5fdd ccmp1: update BOOTDEVICE_LABELS string for nand to new BSP
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:03:40 +02:00
Hector Palacios b4c5345be8 ccmp1: remove 'kernel-headers' dependency
This commit removes kernel headers from the SDK package list to
prevent overwriting the default ones, as there are currently no
ST-specific headers required.

Reference: ebadb27d60
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-05-02 11:03:02 +02:00
Hector Palacios 9b3117aa34 ccmp1: move ccmp1 platform support to kernel 6.6 and U-Boot v2023.10
Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-9045
2025-04-30 12:49:06 +02:00
Arturo Buzarra 30751b0eef stm-st-stm32mp: add optee-client recipe based on v4.0.0
This commit integrates optee-client support from the meta-st-openstlinux layer,
based on the openstlinux-6.6-yocto-scarthgap-mpu-v25.03.19 tag.

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2025-03-26 08:53:12 +01:00
Arturo Buzarra 18a376ff0f ccmp2: add support to FIT image generation
This commit introduces the necessary settings for the kernel-fitimage class to
enable FIT image generation.

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2025-03-26 08:53:12 +01:00
Arturo Buzarra 76a4f781e3 stm-st-stm32mp: fip-stm32mp: add OP-TEE USB FIP configuration
The FIP flavor for OP-TEE + USB is managed in the meta-st-stm32mp layer through
the "optee-programmer-usb". However, since we do not require the additional
overhead introduced by the STM32CubeProgrammer tool, this commit introduces a
new FIP configuration based on OP-TEE for booting from USB.

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2025-03-21 08:55:07 +01:00
Isaac Hermida 710e655054 u-boot-dey: use version v2024.04 for ccimx8m
https://onedigi.atlassian.net/browse/DUB-1095
https://onedigi.atlassian.net/browse/DUB-1096
https://onedigi.atlassian.net/browse/DEL-9537

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2025-03-19 10:26:06 +01:00
Isaac Hermida c1a4de8bc6 meta-digi: move ccimx8m platforms support to kernel 6.6
update the ccimx8m platforms support to kernel 6.6

https://onedigi.atlassian.net/browse/DEL-9536
https://onedigi.atlassian.net/browse/DEL-9537

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2025-03-19 10:26:06 +01:00
Hector Palacios 293f0c5ab7 dey: remove support for dey-image-crank
We're dropping support for dey-image-crank images.

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

https://onedigi.atlassian.net/browse/DEL-9508
https://onedigi.atlassian.net/browse/DEL-9509
2025-02-26 11:37:37 +01:00
Arturo Buzarra d5028e781d trustfence-sign-tools: unify recipes based on the latest u-boot v2024.04
The sign script has been updated to support AHAB-based modules like the CCIMX8X.
As a result, there is no longer a need to maintain two separate recipes for the
signing scripts. This commit unifies them into a single recipe.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2025-02-17 13:55:56 +01:00
Francisco Gil 839e0d4ebb meta-digi: update home path to "/root" in our recipes
Due to a change in systemd the default home directory is now "/root".

Modify our recipes to match with this change.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2025-02-14 13:30:10 +01:00
Gonzalo Ruiz b53810551e optee: upgrade to version 4.4.0.imx
Update to 4.4.0 version following 'lf-6.6.52_2.2.0' NXP release.
This has not been released in meta-freescale yet, so reuse 4.2.0
recipes and apply the changes from meta-imx commit
900356ea1bf71854053266eec4b92adf4552624c.

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

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2025-02-11 17:15:34 +01:00
Gabriel Valcazar be5466cc51 linux-dey: move LINUX_GIT_URI definition to digi-defaults.inc
This doesn't change the behavior of the linux-dey recipe, all it does is make
the LINUX_GIT_URI variable accessible to any meta-digi recipe.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-02-06 16:07:52 +01:00
Gonzalo Ruiz 654df8bd50 trustfence: repurpose TRUSTFENCE_GPIO_ENABLE to contain the GPIO name
Now all platforms support setting the GPIO name instead of an index
as the configuration for the GPIO-enabled secure console.

Repurpose the TRUSTFENCE_GPIO_ENABLE macro to directly set the GPIO
name.

Also take the opportunity to remove TRUSTFENCE_GPIO_ENABLE and
TRUSTFENCE_CONSOLE_PASSPHRASE_ENABLE commented definitions from bbclass
and conf files, and remove a duplicated TRUSTFENCE_CONSOLE_DISABLE
definition from ccmp1.inc.

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2025-02-06 13:45:14 +01:00
Hector Palacios 7355aeaa96 ccmp2: reduce optee-os log level
When ST_OPTEE_DEBUG_TRACE=0, the source code default to a LOG_LEVEL=2
which prints a lot of messages on the boot log.
Reduce it to LOG_LEVEL=1.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2025-02-06 09:00:52 +01:00
Gabriel Valcazar f720f68e9e imx-digi-base: reflect recent meta-freescale xwayland update to 23.2.5.imx
This removes some warnings when launching bitbake on imx platforms

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-02-04 17:50:03 +01:00
Gabriel Valcazar d9e10ede72 imx-digi-base.inc: add new imxviv override
This override was recently added to meta-freescale's graphical package recipes
to easily distinguish between i.MX platforms that use the Vivante driver and
those that use the Mali one. Without this change, a lot of these recipes are
broken, so sync with the latest changes in meta-freescale's imx-base.inc file.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-30 17:32:30 +01:00
Gabriel Valcazar 767a3a4929 Replace bz2 rootfs tarball compression with xz compression
We tested all tarball compression formats supported by poky, and although bz2
has faster (de)compression time, xz is better in terms of compression ratio:
for all of the rootfs tarballs generated for our currently supported
images/platforms (15 at the moment), the xz format saves an average of 30 MiB
per tarball compared to bz2, totalling up to 450 MiB.

No extra dependencies are pulled in, since xz-native is already being pulled in
for all of our image builds, so the only drawback to this change is the
increased compression time (+7.34s on average per tarball).

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-21 11:56:31 +01:00
Arturo Buzarra 1755349259 ccmp2: remove Cortex-M33 applications list
This commit clears the Cortex-M33 applications list to prevent including all
the Cortex-M33 demo applications from the ST layer. In the future, if we have
custom Digi examples, they should be added here.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2025-01-20 11:47:08 +01:00
Gabriel Valcazar 0bda81c666 ccmp2: remove unused build artifacts
.ext4 files are identical to .ext4.gz, but uncompressed. .tar.xz files are the
exact same as .tar.bz2, but compressed with a different format.

Remove these artifacts to reduce storage overhead and to match the rest of our
platforms.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-17 12:31:46 +01:00
Gabriel Valcazar 99134ca87c imx-digi-base.inc: Set generic tuning for i.MX8/i.MX9
This replicates meta-imx commit addc08b02f9a, which was added to be able to
re-use packages in i.MX8/i.MX9 builds. Without this change, there are
compilation errors when building recent versions of the onnxruntime package
because some .S files are built with specific -march switches that conflict
with our current tunings. For example, when building for the ccimx8x-sbc-pro:

    cc1: error: switch '-mcpu=cortex-a35+crc+crypto' conflicts with '-march=armv8.2-a+fp16' switch [-Werror]
    [...]HalfGemmKernelNeon.S:151: Error: selected processor does not support `fmla v20.8h,v16.8h,v0.h[0]'

Using the generic tuning solves this issue, and according to the log in the
original meta-imx commit, this has minimal to no impact on binaries, so use
said tuning in all relevant platforms.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-07 13:09:28 +01:00
Gonzalo Ruiz b9fb425472 u-boot-dey: ccimx6ul: upgrade to v2024.04
https://onedigi.atlassian.net/browse/DEL-9399

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2024-12-12 16:03:41 +01:00
Gabriel Valcazar c7b2c5e94c Generalize WAYLAND_DISPLAY variable at a platform level and set a default value
The value of this variable is always the same within a platform, so it doesn't
make sense to have different variables for it in each recipe that requires it.
While at it, it seems like all currently supported platforms in DEY 5.0 use the
same value of "wayland-1", presumably because they all use similar versions of
wayland/weston. Set this as the default value for all platforms for now. As we
support more platforms, we can adjust this value if needed, but if it ends up
being the same for all platforms, we can just hardcode it.

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

Co-authored-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-12-11 13:18:03 +01:00
Arturo Buzarra ebadb27d60 ccmp2: don't include custom kernel headers in the toolchain
This commit removes kernel headers from the SDK package list to prevent
overwriting the default ones, as there are currently no ST-specific headers
required.

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Arturo Buzarra 2db49f3a4a ccmp25-dvk: sync default FIP generation variables
This commit updates the default FIP generation variables to align with the
common stm32mp2 configuration files from the latest meta-st-stm32mp layer,
based on the openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for Yocto 5.0
(Scarthgap).

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Arturo Buzarra 1c26e84dd1 u-boot-dey: use version v2023.10 for ccmp2
Update ccmp2 platform to use the latest U-Boot v2023.10 based on the
openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for Yocto 5.0 (scarthgap).

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Arturo Buzarra 52cbd8eb17 linux-dey: use kernel version v6.6 for ccmp2
Update ccmp2 platform to use the latest Linux kernel v6.6.48 based on the
openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for Yocto 5.0 (scarthgap).

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Arturo Buzarra 9c502ca5b8 stm-st-stm32mp: gcnano: remove gcnano recipes from meta-digi
This commit removes the gcnano recipes integrated into meta-digi, as a new
version (v6.4.19) has been released in the latest ST BSP, based on the
openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for Yocto 5.0 (Scarthgap).

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Arturo Buzarra 13a12520fe stm-st-stm32mp: optee-os: sync optee-os-stm32mp2 recipe with v4.0.0
This commit removes all outdated OPTEE-OS recipes and synchronizes the Digi custom
.bbappend with the latest v4.0.0 from the ST BSP release, based on the
openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for Yocto 5.0 (scarthgap).

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Arturo Buzarra 8b0aada42d stm-st-stm32mp: tf-a: sync arm-trusted-firmware recipe with v2.10
This commit removes all outdated TF-A recipes and synchronizes the Digi custom
.bbappend with the latest v2.10 from the ST BSP release, based on the
openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for Yocto 5.0 (scarthgap).

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-12-10 10:19:50 +01:00
Javier Viguera c0bd349874 opencv: upgrade to version 4.10.0.imx
This is the fork that NXP utilizes for release version 6.6.36_2.1.0.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-05 18:17:02 +01:00
Javier Viguera 7228eb4738 u-boot-dey: use version v2024.04 for ccimx93
It also includes U-Boot-related recipes.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-05 18:16:59 +01:00
Javier Viguera 1290bb044b linux-dey: use kernel version v6.6 for ccimx93
https://onedigi.atlassian.net/browse/DEL-9257

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-05 18:15:50 +01:00
Javier Viguera 0dcf68840a imx-digi-base: re-sync with meta-freescale's imx-base
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-05 18:15:50 +01:00
Arturo Buzarra f1ab3bcc69 u-boot-dey: use version v2024.04 for ccimx8x
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-11-05 17:18:29 +01:00