1
0
mirror of https://git.yoctoproject.org/meta-arm synced 2026-05-07 04:58:57 +00:00
Commit Graph

2882 Commits

Author SHA1 Message Date
Frazer Carsley 9af92ed09e arm-bsp/trusted-firmware-m:cs1k: Add fixes for GPT library
These patches backport bug fixes for the GPT library in TF-M.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-24 12:00:05 -04:00
Gyorgy Szing 4526637250 scripts/runfvp: fix exception handling
Returning from the finally block at the end of the start_fvp() function
is discarding exceptions. Since start_fvp() is near to the top off the
call tree, this hides uncaught exceptions thrown by most of the code,
which makes detecting and debugging issues hard.

This is resolved by removing the return statement from the finally
block, allowing exceptions to propagate normally.

Signed-off-by: Gyorgy Szing <gyorgy.szing@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-23 12:00:04 -04:00
Gyorgy Szing 9aedfffcfc scripts/runfvp: add Screen support
Add support for Screen the GNU terminal multiplexer. The -t/--terminal
option now accepts "screen" as a terminal type. When selected, the tool
must be run from within an existing Screen session, and each FVP
terminal is opened in a new Screen window.

Signed-off-by: Gyorgy Szing <gyorgy.szing@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-23 12:00:04 -04:00
Gyorgy Szing 2b0fbab119 scripts/runfvp: check available terminal types
Improve usability by detecting which terminal types are available on the
system.

Extend the terminal abstraction to support checking whether a terminal
can be executed, and add basic validation for all terminal types. Update
the documentation to reflect the new behavior.

Signed-off-by: Gyorgy Szing <gyorgy.szing@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-23 12:00:04 -04:00
Frazer Carsley 9d1070b435 arm-bsp/packagegroup-core-boot:cs1k: Remove GRUB from initramfs
The initramfs for Corstone1000 is based on core-image-minimal, which has
GRUB included as a package. Corstone1000 uses U-Boot's efiloader to load
the initramfs and kernel and therefore does not require GRUB for boot.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-04-23 10:00:03 -04:00
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