1
0
mirror of https://git.yoctoproject.org/meta-arm synced 2026-04-18 10:49:45 +00:00

2877 Commits

Author SHA1 Message Date
Roger Knecht
8eb10af809 scripts/runfvp: fix silent failure when FVP is missing
Print an error message if the FVP binary cannot be found, instead of
failing silently.

Signed-off-by: Roger Knecht <roger.knecht@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-16 04:00:03 -04:00
Kevin Hao
6e1cea024a arm/generate_capsule_json_multiple: Fix --selected_components default behavior
When --selected_components is not specified, the script should include
all components as documented in the help text. However, the current
implementation skips all components when the parameter is empty,
resulting in an error.

Fix the filtering logic to only apply when --selected_components is
explicitly provided with values.

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-16 03:00:06 -04:00
Ross Burton
3b7f4ccf38 CI: remove meta-virtualization references
Now that Xen has been removed, clean up the remaining references to
the meta-virtualization layer.

This was done as a separate commit to make reverting easier in the
future in case we need to add back meta-virtualization for some other
builds.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-15 18:00:02 -04:00
Ross Burton
5ad64ce756 CI: remove Xen jobs
We originally added Xen builds to our CI to exercise Xen on Arm. Now
that the Yocto autobuilder has jobs that test Xen on qemuarm/qemuarm64
we no longer need the builds in meta-arm as they don't provide any more
coverage.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-15 18:00:02 -04:00
Michael Safwat
01abd473bc arm-bsp/docs: corstone1000: Drop A320 reboot workaround note
Remove the user-guide warning and rebuild steps for the
disable_module_autoloading workaround on Corstone-1000 with Cortex-A320.

With the NPU reset issue fixed, this workaround is no longer
needed.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-14 08:00:03 -04:00
Michael Safwat
2318956135 arm-bsp/trusted-firmware-m: corstone1000: Drive NPU reset via ext sys ctrl
- Derive host base addresses from offsets and add ext sys reset bitfields
- Deassert CPUWAIT with a bitmask
- Enable ext sys boot handling for Corstone1000 with Cortex-A320
- Add the new downstream TF‑M patches to the recipe

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-14 08:00:03 -04:00
Jose Quaresma
d987a59458 wic: move to files/wic
Signed-off-by: Jose Quaresma <jose.quaresma@oss.qualcomm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-08 14:00:06 -04:00
Alex Chapman
7d5317afc1 arm-bsp/docs:corstone1000: Update systemready-patch refs
- Replace `systemready-patch` with `iot-platform-assets` in the guide.
- Update the Corstone-1000 asset paths and U85 kas command examples.

Align the user guide with the renamed asset repository, avoiding
stale commands and broken paths.

Signed-off-by: Alex Chapman <alex.chapman@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-07 10:00:04 -04:00
Jon Mason
cab9d2db3f arm-bsp/edk2-firmware: remove 202408
Nothing in meta-arm-bsp is using this version anymore.  Drop it and the
related patches.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-07 08:58:11 -04:00
Jon Mason
116c26c803 arm-bsp/sbsa-ref: workaround CPU topology warning
To workaround the CPU topology issue with edk2-firmware, we can specify
the number of processors being used, which seems to setup the CPU
topology mask correctly (and thus no errors).  With this addressed, we
can use the latest edk2 firmware, which allows us to use the latest TF-A
version.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-07 08:58:11 -04:00
Jon Mason
ed7a9378e1 arm-bsp: remove rdv1
rdv1 has been EOLed, and requires keeping around some recipes because
of its removal.  Also, the FVP is x86 only, thus limiting CI.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-06 12:00:11 -04:00
Jon Mason
4257c9856e arm-bsp: remove sgi575
sgi575 has been EOLed, and requires keeping around some recipes because
of its removal.  Also, the FVP is x86 only, thus limiting CI.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-06 12:00:11 -04:00
Jon Mason
efbc6b618e arm-bsp/rdv2: add support
Add support for Neoverse Reference Design version 2

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-31 10:00:05 -04:00
Jon Mason
6dfff7d39a arm-bsp/rdn2: add support
Add support for Neoverse Reference Design N2
Use the rdinfra sources to get it booting

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-31 10:00:05 -04:00
Jon Mason
9003bdc6ae arm-bsp/rdv1: add support
Add support for Neoverse Reference Design version 1

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-31 10:00:05 -04:00
Jon Mason
166d6d7942 arm/fvps: rename rdv3-r1
Rename rdv3-r1 to be more consistent with other machines and match
documentation/website.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-31 10:00:05 -04:00
Jon Mason
45f2311d32 Revert "arm/execstack: remove, no longer needed"
Some of the soon-to-be-added FVPs have the execute issue still.  So,
re-add this until it can be resolved.  Also, address S issue that
changed upstream between the original removal and now.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-31 10:00:05 -04:00
Jon Mason
ae3532c239 CI: use core-image-base for faster boot
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-31 10:00:05 -04:00
Michael Safwat
f081128883 arm-bsp/docs: corstone1000: switch Ethos-U85 test flow to test_teflon
Update the Corstone-1000 user guide to reflect the current Ethos-U85
test and workaround flow.

As the Corstone-1000 software stack moves to the in-tree ethosu
driver, switch the Ethos-U85 test instructions from delegate_runner to
Mesa's test_teflon application. Also update the guide to use the
renamed ethos-u85-test kas fragment and to apply the Mesa patch needed
to package test_teflon into the image.

Also replace the disable_module_autoloading kas fragment in the A320
workaround instructions with the disable-ethosu patch, to align with
the workaround flow used in systemready-patch.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Michael Safwat
41fbac9b61 arm-bsp/docs: corstone1000: document Cortex-A320 SMP support
Corstone-1000 with Cortex-A320 FVP now supports SMP, so update the
documentation to reflect the current status.

Update the user guide to state that SMP is supported on Corstone-1000 with
Cortex-A35 FVP and on Corstone-1000 with Cortex-A320 FVP.
Add the Cortex-A320 multicore build and run commands.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Michael Safwat
6df28b9cd9 arm-bsp/corstone1000-a320: Drop meta-ethos dependency
Corstone1000 with Cortex A320 now uses the in-tree ethosu driver, so the
external meta-ethos layer (and its meta-sca dependency) is no longer needed.

Remove meta-ethos and meta-sca from the Corstone-1000 A320 kas
config, drop the layer dependency on meta-ethos, and stop
installing arm-npu-ethosu. Update the Corstone-1000
change log to reflect the removed layers.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Michael Safwat
2c81c14c5b arm-bsp/u-boot: cs1k: Align Ethos-U85 DT with in-tree driver
Align the Corstone1000 Ethos-U85 device tree to match the upstream
bindings used by the in-tree Ethos-U DRM accel driver.

- Rework the Corstone1000 U-Boot patch to replace the legacy arm,ethosu-direct
  node with an upstream-style Ethos-U85 node (arm,ethos-u85), add the
  required clocks/clock-names, and switch the SRAM description to
  mmio-sram.

- Drop meta-ethos specific properties (reserved-memory/dma-ranges,
/region-cfgs/mem-config) from the U-Boot DT.

- Enable required kernel options for the in-tree driver and SRAM provider:
  - CONFIG_SRAM
  - CONFIG_DRM
  - CONFIG_DRM_ACCEL
  - CONFIG_DRM_ACCEL_ARM_ETHOSU

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Michael Safwat
c2258d460f arm-bsp/corstone1000: Add linux-yocto 6.19 kernel recipe
linux-yocto does not currently ship a 6.19 recipe, so add a
meta-arm-bsp linux-yocto_6.19.bb that tracks linux-yocto-dev v6.19/base.

Pin SRCREV_machine to fixed revision to keep builds reproducible.

Update Corstone-1000 to prefer linux-yocto 6.19 and align
the user guide pointers accordingly.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Frazer Carsley
4414e4d2a0 arm-bsp/u-boot:cs1k: Split Cortex-a320 device tree
The U-Boot maintainers rejected the previous patch [1] for two primary
reasons:

1. The Cortex-A320 changes should be considered a separate platform
2. The NPU node bindings do not match those in the Linux kernel

The former is handled by this commit. The latter point has not been
resolved, hence marking the newly added patch as Inappropriate. This is
simply the first step in resolving the comments.

[1] https://lore.kernel.org/all/20251127154752.589691-1-frazer.carsley@arm.com

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Frazer Carsley
73cde0a9ec arm-bsp/u-boot:cs1k: Rework CONFIG_OF_UPSTREAM patch
Rework the patch that enables the OF_UPSTREAM config option to split
off the extra device tree nodes into their own dtsi files, making it
easier to combine them in different ways. The rest of the patches have
changed only so that they can be applied cleanly.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-30 07:00:04 -04:00
Frazer Carsley
1778b36d66 arm-bsp/tf-m:cs1k: modified mcuboot to use GPT library
Corstone1000 used to use its own implementation of a GPT parser for use
in a capsule update. The patches in this commit replace what exists with
the generic GPT library, as well as other minor self-explanatory fixes.
The wic file has undergone two changes as a result of this:

1. The partition type GUID of each of the four partitions that can be
   updated by a capsule update must match the GUID of each capsule. This
   allows for the existing partition to be matched with its updated
   image. Different machines (e.g. MPS3 vs FVP) have different GUIDs for
   these images hence the need for separate files.
2. The second bank has been removed from provisioning. Because the
   library supports dynamic creation of partitions, the second bank no
   longer needs to be provisioned at build time. However, a small
   reserved partition is still created above the 32KiB mark to force
   wic to size the disk as 64KiB and write this into the GPT header
   for the library to read on initialisation.

Finally, the size of bl1_1 is reduced by one of the patches in this
commit, so this is also reflected in the recipe.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-26 09:54:02 -04:00
Frazer Carsley
5fc4c29db9 arm-bsp/tf-m:cs1k: Add GPT library
The patches added in this commit add a generic GPT library for use in
flash devices. Corstone1000 could use these to manage partitions during
a firmware update.

The patches are all backports from trusted-firmware-m (TF-M) main
branch and can be removed if Corstone1000 upgrades when the next version
of TF-M is released.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-26 09:54:02 -04:00
Jon Mason
7b687574a1 arm/optee: add UPSTREAM_CHECK_COMMITS for git recipes
Seeing UNKNOWN_BROKEN in the OP-TEE git recipes.  Add
UPSTREAM_CHECK_COMMITS to address this issue.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-26 09:46:36 -04:00
Jon Mason
eb14d855e9 arm/scp-firmware: add git recipe
Split off the main portion of the SCP firmware recipe into an include
file and create a git versioned recipe.  This allows for building and
testing the latest sources.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-26 09:46:36 -04:00
Jon Mason
0d6405b268 arm/fvps: update to newer versions
New versions of the FVPs have been released.  Update the recipes to use
them.  License SHA changes caused by 3rd party software versions used
being modified and white space changes.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-26 09:46:36 -04:00
Jon Mason
e9b1f3bbbd arm/fvp-base-a-aem: update to 11.31.28
Massive layout changes inside the FVP tarball.  The files are not
located in *_FVP anymore, including the license files, which were in 2
locations in previous releases.  The tarball changed from
Linux64/Linux64_armv8l to Linux_x86/Linux_armv8.  It hchanged extention
from tgz to tar.gz

Also, adding skip of dev-so, due to libstdc++.so and libsystemc.so being
symlinks and fvps being a binary.

NOTE: the license file changes are due to version bumps for sdl, ffmpeg,
libvpx, and python.  The license changes in the managements utilities
was version changes in clang and golang, and removal of wxWidgets,
libstdc++-6.dll, libgcc_s_seh-1.dll, and libwinpthread-1.dll

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-26 09:46:26 -04:00
Alex Chapman
37d31f41a8 arm-bsp/trusted-firmware-m: corstone1000: Remove FVP requirement for TF-M multicore
To improve portability, testing coverage, and future platform enablement.

- Replace FVP-only multicore checks with platform-generic checks.
- Add the corresponding TF-M patch to the Corstone-1000 recipe.

Signed-off-by: Alex Chapman <alex.chapman@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-19 10:07:30 -04:00
Alex Chapman
79cea5a02a arm-bsp/trusted-firmware-a: corstone1000: Remove FVP requirement for TF-A multicore
To improve portability, testing coverage, and future platform enablement.

- Replace FVP-only multicore guards with platform-generic guards.
- Add the corresponding TF-A patch to the Corstone-1000 recipe.

Signed-off-by: Alex Chapman <alex.chapman@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-19 10:07:26 -04:00
Alex Chapman
4eb08a8541 arm-bsp: corstone1000: Make multicore configuration platform-agnostic
To improve portability, testing coverage, and future platform enablement.

- Gate multicore on `MACHINE_FEATURES += "corstone1000_smp"`.
- Change recipe overrides from `:corstone1000-fvp` to `:corstone1000`.
- Update the Corstone-1000 multicore kas/doc references.

Signed-off-by: Alex Chapman <alex.chapman@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-19 10:07:22 -04:00
Igor Opaniuk
990f2fa7e8 arm/edk2-basetools-native: build C host tools (GenFfs, GenFv)
The recipe previously only copied the Python BaseTools into the native
sysroot, which was sufficient for capsule signing but not for Firmware
Volume (FV) creation. Downstream recipes that build UEFI capsule
update images for embedded platforms need GenFfs and GenFv to assemble
FV images - a key component of the UEFI Capsule Update format used for
system firmware updates.

Add the brotli submodule source (build-time dependency of both tools),
build the C BaseTools (Common, BrotliCompress, GenFfs, GenFv) and
install the binaries into ${bindir} together with GenerateCapsule.py
and the Common Python library so that capsule-generating recipes can
consume them from the native sysroot.

Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-19 05:00:04 -04:00
Ross Burton
930a65579d layer.conf: update compatibility to wrynose
The oe-core master branch just switched from whinlatter to wrynose[1] so
follow this change in our layers.

[1] oe-core cd1179544d7 ("layer.conf: Update to wrynose")

Signed-off-by: Ross Burton <ross.burton@arm.com>
2026-03-18 11:11:28 +00:00
Michael Safwat
f4118f9b86 arm-bsp/trusted-firmware-m: corstone1000: Add AO lock write barrier
Add the corstone1000 patch that inserts a compiler barrier before the
first HOST_AO_LOCK_BITS write in CC_LibInit().

On corstone1000-mps3 with GCC 15.x, TF-M can HardFault on that first
AO lock register update. Adding the barrier avoids the fault.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-16 15:00:04 -04:00
Ross Burton
3afd7461b1 arm-bsp/edk2-firmware: fix build on newer hosts
Compiles of edk2-firmware with GCC 15 on the host will fail:

main.c: In function ‘ProcessArgs’:
| main.c:163:42: error: too many arguments to function ‘p->process’; expected 0, have 2
|   163 |                                         (*p->process)( *argv, *(argv+1) );
|       |                                         ~^~~~~~~~~~~~  ~~~~~

We actually already had the fix for this, but were doing SRC_URI +=
_before_ the include file did SRC_URI =, so the patch was never applied.

Move the require to the top of the recipe so this ordering problem does
not happen, and fix the line-endings in the patch that never got applied.

[ YOCTO #16116 ]

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-13 13:47:13 -04:00
Ross Burton
df572b4d53 CI: allow hashserver to be specified in environment
If the sstate is being mounted into the container then the hashserver
also needs to be shared, and not stored inside the build tree. Mark
BB_HASHSERVE as being set via an environment variable so the GitLab
runner environment can set the correct location.

This fixes a long-standing problem causing substandard reuse, which now
is detected and causes a warning in oe-core[1].

[1] oe-core 491de0db64a ("sanity.bbclass: warn when sstate is outside of
    build dir, but hash equiv database is inside it")

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-13 10:00:05 -04:00
Ross Burton
2f6824ddca CI: remove last traces of TOOLCHAIN_DIR
When the binary toolchain support was removed[1] we no longer used this
variable, but a few instances of it was left behind.

[1] meta-arm 03af0c72f1 ("arm-toolchain: remove external-arm-toolchain")

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-13 10:00:05 -04:00
Jon Mason
6182cec88c arm/qemuarm64-secureboot: get edk2 and trusted-firmware a working
Do the changes necessary to get qemuarm64-secureboot to work with edk2
firmware, and add it to CI.  The CI changes needed to make it dynamic
based on edk2.yml or u-boot.yml required moving the relevant parts into
inc files.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-11 09:00:05 -04:00
Jon Mason
53ccc1ba35 arm/qemuarm64: fix edk2 and test it
edk2 has been broken on qemuarm64 for an unknown amount of time.  Add it
to CI to prevent this from happening (until edk2 works on
qemuarm64-secureboot).

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-11 09:00:05 -04:00
Jon Mason
65c98dfef3 arm-bsp/sbsa-ref: fix qemu warning
Make the relevant correction for the following warning in qemu:
	warning: short-form boolean option 'readonly' deprecated
	Please use readonly=on instead

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-11 09:00:05 -04:00
Jon Mason
0e7aa859f5 arm-bsp/trusted-firmware-a: remove unnecessary FILESEXTRAPATHS
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-11 09:00:05 -04:00
Jon Mason
7f7b065c61 CI/uefi-secureboot: remove duplicate entry
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-11 09:00:05 -04:00
Ross Burton
a4a555ef93 arm/fvp-corstone-1000-a320: trim Python install instead of using INSANE_SKIP
The INSANE_SKIPs were not sufficient because the chrpath code used in
nativesdk builds still warns, so instead of hiding the warnings fix them
instead: remove the pointless RPATHs in the embedded Python libaries,
and delete the static libraries.

Signed-off-by: Ross Burton <ross.burton@arm.com>
2026-03-10 12:55:45 +00:00
Ross Burton
8c6b5e4114 arm/trusted-services: upgrade in-tree nanopb
Trusted Services uses nanopb 0.4.8 but this imports pkg_resources from
setuptools, which has been deprecated since 2023[1] and was finally
removed in setuptools 82.

This was fixed in nanopb some time ago[2] so upgrade the recipe from
nanopb 0.48 to 0.49.1.

[1] https://setuptools.pypa.io/en/latest/deprecated/pkg_resources.html
[2] 7961a939eb

Signed-off-by: Ross Burton <ross.burton@arm.com>
2026-03-10 12:55:45 +00:00
Gyorgy Szing
8a5b2d5ed2 arm/trusted-services: update documentation
Change the layout to enhance readability and add TS fTPM related
information.

Signed-off-by: Gyorgy Szing <gyorgy.szing@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-04 04:00:05 -05:00
Gabor Toth
315d4e139e arm/trusted-services: Enable tpm2-tool self tests
Enable execution of the tpm2-tools self-test against the Trusted
Services fTPM SP. The test is integrated into OEQA but is disabled by
default due to its long execution time (over three hours on fvp-base)
and inconsistent results. While individual tests pass when run in
isolation, running the full suite results in failures. Despite this,
it remains the most comprehensive verification currently available.
Testing can be enabled by setting the RUN_TPM2_TESTS variable.

Signed-off-by: Gabor Toth <gabor.toth2@arm.com>
Signed-off-by: Gyorgy Szing <gyorgy.szint@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-04 04:00:05 -05:00
Gabor Toth
7601b7e0db arm/trusted-services: Enable the fTPM SP
Trusted Services has introduced a Firmware TPM (fTPM) secure partition.
This change enables building and deploying the fTPM SP through meta-arm.

The secure partition is based on the TPM2 reference implementation,
msp-tpm20-ref, which has been patched to use MbedTLS as its
crypto backend and psa-its for non-volatile storage.

Signed-off-by: Gabor Toth <gabor.toth2@arm.com>
Signed-off-by: Gyorgy Szing <gyorgy.szing@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-04 04:00:05 -05:00