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>
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>
There are several recipes in meta-digi related to features that we haven't
tested in a long time and don't appear in the DEY 5.0 documentation. Remove
them to avoid unexpected behavior.
Said features are:
* Coral TPU support (only supported in DEY 3.2)
* AWS support (removed from default images and docs in DEY 4.0)
* dey-image-tiny (hasn't been maintained since DEY 2.0)
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Add the following countries to the CLM Blob file:
- Brazil
- Mexico
- Saudi Arabia
- Hong Kong
- Singapore
- Malaysia
- Taiwan
- Korea
This is the new World CLM Blob file:
- cyfmac4373-sdio_World.clm_blob (11d5fab6659eff491aca1a219ad33b00)
https://onedigi.atlassian.net/browse/DEL-9438
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
This overlay contains a workaround to make the USB-OTG
work as USB device when connected to a host.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://onedigi.atlassian.net/browse/DEL-9610
(cherry picked from commit ec92f5fdd10a61e37ac3778d0d3aa1816bc6b0aa)
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
STM's st-machine-common-stm32mp.inc file automatically incorporates "optee" to
MACHINE_FEATURES as long as BOOTSCHEME_LABELS contains "optee". Since we
recently modified the ccmp15's labels to only contain "opteemin", this is no
longer the case, which leads to:
* optee packages (optee-client, optee-os) not getting installed in images and
SDKs
* optee patches for environment encryption not being applied to libubootenv
Add the feature manually to fix these two issues
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
OP-TEE comes in two flavors: optee and opteemin
For NAND-boot images, add support for USB boot as well,
so that the default tf-a image is valid for booting from
either NAND or USB.
We had this for 'optee' flavor but not for 'opteemin'.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
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>
This commit updates the firmware binaries for Bluetooth and Wireless interfaces,
aligned with the Cypress Linux WiFi Driver (FMAC) release v6.1.97-2025_0219.
The updated wireless firmware versions are as follows:
- 2FY Wireless chip: v28.10.387.16
- 2AE Wireless chip: v13.10.246.356
These updates are included as part of the imx-scarthgap-jaculus_r1.1 Murata release.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
This commit updates the installer scripts to support CCMP1 platforms under
Yocto 5.0, aligning them with the current behavior used for CCMP2.
Changes include:
- Adding support for the metadata partition, which is now required
- Including the optee/opteemin flavors in boot artifact filenames
- Ensuring the script structure and logic remain consistent with CCMP2 install scripts
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Currently, the final metadata symlink is composed using the TF-A Device Tree
configuration, which includes memory variant details. However, these variants
are not relevant for the metadata binary.
To avoid generating multiple redundant metadata files or using confusing names,
this commit updates the symlink to be composed using the MACHINE variable
instead.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
In Yocto 5.0, the boot artifacts for CCMP1 platforms are compiled using the
opteemin flavor. This commit updates the BOOTABLE_ARTIFACTS definition to
reflect that change and properly integrate the boot artifacts into the ZIP
installer.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
After more in-depth testing, we discovered that the flv/ogv video issues on the
ccmp25-dvk don't happen when playing videos with standard resolutions. Since
the workaround consisted of reverting a patch backported from upstream
gstreamer, and it only fixed flv video playback anyway, revert said workaround
and test using videos with standard formats.
This reverts commit e09eff7e1a.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
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>
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>
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>
This override sets other variables, such as STM32MP_SOC_NAME which is used
on the build of the FIP image.
It also makes ST layer append a new UBOOT_CONFIG (default_stm32mp15/13)
that we must remove.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
On the new BSP the configuration is called 'optee-nand' and the build
parameters have changed.
We do this override in meta-digi only to incorporate
`STM32MP_USB_PROGRAMMER=1`
parameter, which allows to boot the nand image from USB, too.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The function had into account the memory variants when copying U-Boot
device trees, but not the U-Boot binaries themselves.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
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>
When a WiFi card adds additional interfaces (for AP or WiFi direct),
it generates udev triggers that lead the wifi card to fail.
Ignore those events.
The reason of this new behavior is due to poky commit 1e8b49999ad8.
https://onedigi.atlassian.net/browse/DEL-9600
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Configure the FIT_CONF_DEFAULT_DTB in the machine settings to define the
default configuration for the generated FIT image.
https://onedigi.atlassian.net/browse/DEL-9595
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
STM patch nº8 was causing memory mapping errors when playing .flv videos on the
ccmp25-dvk, so revert it.
https://onedigi.atlassian.net/browse/DEL-9466
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit introduces the necessary changes in the Digi Embedded Yocto layer
to support the X-LINUX-AI v6.0.1 software package from the meta-st-x-linux-ai
layer.
The update removes support that is now provided directly by the ST layer in
this new version and adapts existing recipes to align with the updated
mechanisms for AI application integration. These changes ensure compatibility
with platforms that feature hardware acceleration (NPU), as well as those that
rely solely on CPU-based inference.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Enable CONFIG_BPF_SYSCALL and CONFIG_CGROUP_BPF when using docker, as it
is needed for a correct network interoperability.
Some kernels may have it enabled by default, but others not, so just enable
it for any platform.
https://onedigi.atlassian.net/browse/DEL-9592
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Enable CONFIG_BPF_SYSCALL and CONFIG_CGROUP_BPF when using docker, as it
is needed for a correct network interoperability.
Some kernels may have it enabled by default, but others not, so just enable
it for any platform.
https://onedigi.atlassian.net/browse/DEL-9592
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit introduces the necessary changes in the Digi Embedded Yocto layer
to support the X-LINUX-AI v6.0.1 software package from the meta-st-x-linux-ai
layer.
The update removes support that is now provided directly by the ST layer in
this new version and adapts existing recipes to align with the updated
mechanisms for AI application integration. These changes ensure compatibility
with platforms that feature hardware acceleration (NPU), as well as those that
rely solely on CPU-based inference.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit removes the default integration of the Flutter framework from the
SDK due to its significant impact on toolchain size, build time, and reliability.
Including Flutter increases the build complexity exponentially, often resulting
in timeouts or failures caused by the large number of recipes involved.
Customers who require Flutter can still enable it manually if needed.
https://onedigi.atlassian.net/browse/DEL-9380
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
* Set the OP-TEE base address to 0x7e000000 (32MiB below the first gigabyte
of DDR).
* Update the ATF and OP-TEE memory maps to support up to 4GiB DDR.
This ensures OP-TEE runs reliably across all ccimx8mm memory configurations.
https://onedigi.atlassian.net/browse/DEL-9502
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Flutter is an open source framework for building multi-platform applications
without a graphical backend running. This commit adds support to create a new
DEY image type based on Flutter ready to use for the users.
https://onedigi.atlassian.net/browse/DEL-9380
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Add a unique patch with the RT functionality between NXP tags (sha1)
'lf-6.6.36-2.1.0' (d23d64eea5111e1607efcce1d601834fceec92cb)
'Real-Time-Edge-v3.1-202503' (f03af81d60b7ae14e03fafa8f4c4289c30a73f93)
https://onedigi.atlassian.net/browse/DEL-9324
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
The btnxpuart is the driver used to manage the bluetooth for our i.mx9
modules, so only specify it for the affected platforms.
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
The patch was recently added to meta-freescale, remove it from our layer to
avoid build errors.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
(cherry picked from commit 907531b55c)
The patch was recently added to meta-freescale, remove it from our layer to
avoid build errors.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Add UYVY support in order to be aligned with stateful v4l2 codecs
such as v4l2jpegenc.
https://onedigi.atlassian.net/browse/DEL-9546
Change-Id: I8c8e0b328aa3ea2325085d26cad0c14549b25f5a
Reviewed-on: https://gerrit.st.com/c/oeivi/oe/st/meta-opensdk/+/436381
ACI: CITOOLS <MDG-smet-aci-reviews@list.st.com>
Tested-by: Christophe PRIOUZEAU <christophe.priouzeau@st.com>
Reviewed-by: Christophe PRIOUZEAU <christophe.priouzeau@st.com>
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Add also BGRA, ARGB, ABGR formats in order to be aligned with stateful
v4l2 codecs such as v4l2jpegenc.
https://onedigi.atlassian.net/browse/DEL-9546
Change-Id: Ia51f7a93b0a6fbccb3222230e9f0936d2293cbbb
Reviewed-on: https://gerrit.st.com/c/oeivi/oe/st/meta-opensdk/+/436379
Reviewed-by: Christophe PRIOUZEAU <christophe.priouzeau@st.com>
ACI: CITOOLS <MDG-smet-aci-reviews@list.st.com>
Tested-by: Christophe PRIOUZEAU <christophe.priouzeau@st.com>
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit conditionally selects the appropriate boot artifacts to include in
the ZIP installer, depending on whether Trustfence is enabled or not.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Both boot artifacts now use the same signed label, so this commit removes
unnecessary logic and updates the UUU install script to support the new boot
artifact naming. It also fixes the detection of signed artifacts by checking
for the presence of the FIP artifact, instead of relying on a U-BOOT artifact
that does not exist on this platform.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
This commit simplifies the recipe by integrating the symlink generation
directly into the main do_deploy() function, removing the need to maintain
both a do_deploy() and a do_deploy:append().
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit addresses two issues in the symlink deployment function:
- do_deploy() should not write directly to DEPLOY_DIR_IMAGE. Instead,
it now uses DEPLOYDIR.
- Expands do_deploy() instead of using SYSROOT_PREPROCESS_FUNCS to ensure that
the original FIP artifacts are created and properly regenerated on each build.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit generalizes the symlink generation to allow creating a final
symlink in the deploy directory, supporting different artifact flavors:
regular, signed or encrypted.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Assembling a FIT image requires that all artifacts are ready before calling
assemble_fitimage(), which occurs before do_install() and after do_compile().
To ensure the Linux kernel recipe provides the final artifacts in the correct
location, this commit replaces the additional do_install() step with an
additional do_compile() step, ensuring that all necessary artifacts are
available before assemble_fitimage().
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit imports the sign-stm32mp bbclass from the meta-st-stm32mp layer to
allow customization. The main customization ensures that the search_path()
function does not raise a build exception if the signing tool or keys are not
present in the PATH before starting the build process.
In our case, we do not need to manually install the tools or generate the keys
beforehand, as this is automatically handled by Yocto in our DEY distribution.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
The kernel-fitimage class sets the default configuration using the first
element from the kernel device tree list. This commit ensures that the main DTB
is listed first to enforce the correct default configuration.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit introduces a custom do_compile() function to resolve a signing
issue affecting the final TF-A artifact, where the SoC name does not match the
TF-A device tree name.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit corrects an issue in the sign key processing when the SoC name does
not match the FIP device tree name.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit updates secure boot support based on the STM32 MPU Ecosystem v6.0
and integrates support for the ConnectCore MP2 platform.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
This commit updates the trustfence-stm-signtools package with the latest
versions from the STM32 MPU ecosystem v6.0:
- STM32MP_KeyGen_CLI v2.19.0
- STM32MP_SigningTool_CLI v2.19.0
These tools are deployed as part of STM32CubeProgrammer v2.19.0, adding support
for STM32MP2x processors.
https://onedigi.atlassian.net/browse/DEL-9442
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit integrates the X-LINUX-RT expansion package from the
meta-st-x-linux-rt layer, based on the tag
"openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06", for Yocto Scarthgap.
Currently only the STM CCMP2 is supported in kernel 6.6.
https://onedigi.atlassian.net/browse/DEL-9507
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit integrates the X-LINUX-RT expansion package from the
meta-st-x-linux-rt layer, based on the tag
"openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06", for Yocto Scarthgap.
Currently only the STM CCMP2 is supported in kernel 6.6.
https://onedigi.atlassian.net/browse/DEL-9507
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Assignment of variable 'force_erase' was done without escaping quotes
which led to wrong assignment and the script not forcing the erasure of
NAND partitions.
While on it, remove it from ccmp1 scripts where its use makes no sense
as the 'ubivolscript' script takes care of erasing the partitions.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
(cherry picked from commit 96e1e8351d)
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Assignment of variable 'force_erase' was done without escaping quotes
which led to wrong assignment and the script not forcing the erasure of
NAND partitions.
While on it, remove it from ccmp1 scripts where its use makes no sense
as the 'ubivolscript' script takes care of erasing the partitions.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
This commit updates several binaries, including the NVRAM and Bluetooth patch
file, based on the latest Murata release imx-scarthgap-jaculus_r1.0. This release
is still based on the Cypress Linux WiFi Driver (FMAC) v6.1.97-2024_1115
(Wireless firmware v28.10.387.10), keeping the wireless firmware unchanged.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit makes the following changes over the original wks file:
- Fixes binary names to match the OP-TEE sdcard flavor
- Fixes the fip-a/b partition UUIDs
- Set a valid rootfs size that allows flash default images
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit defines the device tree file variable used to generate the SD card
image, fixing the build of the bootloader flavor intended for booting from an
SD card.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
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>
We had a SYSROOT_PREPROCESS_FUNCS on the tf-a-stm32mp recipe to
create symlinks to both TF-A and FIP binaries, but the FIP binaries
are now produced by fip-stm32mp recipe.
This had the effect that the files might not be ready.
Duplicate the function in the fip-stm32mp recipe and create the
symlinks for the FIP images there.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>