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

2887 Commits

Author SHA1 Message Date
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] https://github.com/nanopb/nanopb/commit/7961a939ebeeb27631c6def44f3452522264c64b

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
Gyorgy Szing 4e94b90c1c arm-bsp/corstone1000: Rebase TS patches.
Remove patches merged upstream and rebase remaining patches.

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
Gyorgy Szing 0646047f39 arm/trusted-services: Update to v1.3.0
Update to latest TS release.

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
Ross Burton 2027a7a0da arm/python3-pydevicetree: don't install non-namespaced tests
The wheel includes the tests which are in a non-namespaced module, and
will then conflict with other recipes (such as python3-cryptography) that
also install non-namespaced tests.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-03 09:00:03 -05:00
Jan Kiszka 1eec18f88c optee-client: Make include reusable outside of meta-arm
Set FILESEXTRAPATHS so that artifacts that meta-arm injects can still be
found when using the include from a different layer.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-02 14:00:05 -05:00
Jon Mason dcc34c19fe CI: add LTS versions for testing
Add a CI test for the LTS versions of recipes currently supported.
Use fvp-base, since that provides good coverage and is being used for
the latest version testing.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-02 12:00:07 -05:00
Jon Mason b5207f77a6 arm/trusted-firmware-a: update LTSes
Update the TF-A recipes to the latest stables/LTS versions.  Not all of
the versions updated the version of mbedtls being used (and even the
updates didn't update to the latest stable version of mbedtls).  We're
using the mbedtls version specified in
docs/getting_started/prerequisites.rst, not the latest available.

Also, update the related fiptools and tf-a-tests (which don't map to the
same releases, but were all verified to be at the latest versions).
No real change in cot-dt2c code, but updating the SHA to the latest.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-02 12:00:07 -05:00
Clement Faure 46e0a21bdb arm/classes: fix quilt-native dependency
quilt-native is required by do_apply_local_src_patches task.

Signed-off-by: Clement Faure <clement.faure@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-03-02 12:00:05 -05:00
Jon Mason b00fe8862b arm/trusted-firmware-m: workarounds for new(er) toolchains
GCC 15 (and GCC 14, and probably others) are finding new problems in
trusted-firmware m, and these cannot simply be ignored (as they are
fatal build errors).  Clear the ld security flags to get around those
issues, backport a couple of patches for fixes that have been addressed
upstream, and create a patch to work around some casting issues in
functions that are removed in newer versions of the code.  This
refactoring caused some minor clean up of existing corstone1000 tfm
patches.

Also, use size based optimization for corstone1000.  With this, the bl1
is too big to fit into flash.  The correct way to solve this would be to
remove TFA_DEBUG, but that causes a rabbit hole of problems related to
heap being enabled or not.  This works around the issue until it can be
resolved properly.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-27 12:00:02 -05:00
Jon Mason 40d015d780 arm/edk2-firmware: Update to 202602
Update edk2, edk2-platforms, and sbsa-acs to the latest versions/SHAs.
A bleeding edge patch from upstream is needed to correct a build race in
antlr, and the latest SHA for edk2-platforms is needed to work around
some compilation issues with ENABLE_TPM in fvp-base.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-27 11:56:17 -05:00
Jon Mason c0416d7426 arm-toolchains: Update to 15.2
Update the pre-build Arm GNU toolchain to 15.2 (from 13.3)

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-27 11:53:07 -05:00
Ross Burton 3c92c9950f CI: don't testimage core-image-initramfs-boot
A recent change to image dependencies in oe-core master[1] means that
TESTIMAGE_AUTO tries to test more images than before.

Explicitly reset TESTIMAGE_AUTO for core-image-initramfs-boot so that it
doesn't try to testimage an initramfs.

[1] oe-core b75c21fb950 ("image_types_wic.bbclass: add depend on initramfs")

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-27 09:00:06 -05:00
Arthur Cassegrain be64772664 arm/trusted-services: clone dependencies under ts source tree
Clone all trusted-services dependencies into the TS source tree under
ts-external/ instead of ${UNPACKDIR}

This alignes the layout with devtool git-submodule handling.

NOTICE: we can't clone in external as TS already contains files there
and it would conflict.

Signed-off-by: Arthur Cassegrain <arthur.cassegrain@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-26 06:00:04 -05:00
Arthur Cassegrain d5b265ecfd arm-bsp/trusted-firmware-m: fix psa-adac patch paths for corstone1000
Update the corstone1000 variant to apply its psa-adac patches
against the new external/ directory.

Signed-off-by: Clement Faure <clement.faure@arm.com>
Signed-off-by: Arthur Cassegrain <arthur.cassegrain@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-26 06:00:04 -05:00
Clement Faure f0cd8c56d2 arm/trusted-firmware-m: clone dependencies under tfm source tree
Clone all trusted-firmware-m dependencies into the tfm source
tree under external/ instead of ${UNPACKDIR}.

This aligns the layout with devtool git-submodule handling,
ensuring the recipe sees a consistent source tree at build time
and allowing dependencies to be patched via devtool in the same
way as the main tf-m repository.

(reworked to avoid use internal variables for checkout)
to clone tf-m dependencies use hardcoded path for reproductibility
and avoid using BB_GIT_DEFAULT_DESTSUFFIX which may depend on
yocto version.

Signed-off-by: Clement Faure <clement.faure@arm.com>
Signed-off-by: Arthur Cassegrain <arthur.cassegrain@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-26 06:00:04 -05:00
Jon Mason 1aed815677 CI/musca-b1: use LTS tf-m
We currently don't have coverage for trusted-firmware-m 2.1.x, which is
the LTS.  Since musca-b1 and musca-s1 are essentially the same, use b1
for the LTS coverage.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-23 09:00:04 -05:00
Jon Mason 907645a0fc arm*/layer.conf: drop walnascar
walnascar compatibility isn't tested and isn't supported with whinlatter
or later, drop it.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-23 09:00:04 -05:00
Jon Mason 1e3d3f8b38 arm-bsp/sgi575: change target image for CI
For some reason, sgi575 won't boot to shell with
core-image-full-cmdline, but it will with other images.  Since we're
going to drop this machine soon (as it has been EOL'ed), modify the
image type for CI to core-image-base (As that one appears to boot
faster).

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-23 09:00:04 -05:00
Hugues KAMBA MPIANA 8ef2258ec7 arm-bsp/linux-yocto: corstone1000: Update to v6.18
* Set Linux kernel preferred version for Corstone-1000 to 6.18
* Update Corstone-1000 user guide.
* Recent kernel versions removed the deprecated CONFIG_LIBCRC32C
  Kconfig symbol as part of the CRC library cleanup.
  Replace CONFIG_LIBCRC32C with CONFIG_CRC32, which provides the
  generic CRC32/CRC32C library support used by in-kernel consumers.
* The ext3 driver was removed historically and ext4 carries
  compatibility for ext3 on-disk format.
* Amend External System patch to adhere to Kernel v6.18 RemoteProc
  API.
* Add #address-cells and #size-cells parameters to ethosu dts node

No functional change intended.

Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-16 11:00:04 -05:00
Ross Burton ad92b47668 Remove meta-arm-systemready
meta-arm-systemready was intended to allow people writing BSPs to run
the SystemReady Architecture Compliance Suite[1] within the Yocto build
environment. However, whilst this seems like a good idea, there are
several problems:

- This layer only supports the IR band and v2 of the ACS. The ACS is now
  at v3 and the bands altered, so there is no value in running obsolete
  tests.

- Execution of the tests takes a long time, we have integration to run
  the tests on a virtual fvp-base machine but execution takes many tens
  of hours (our CI times out after 12, on a high-performance worker).
  Running the tests in CI, and in particular inside BitBake, isn't
  obviously the right thing to do.

- Execution on the tests on real hardware is not trivial, as testimage
  has virtual targets as a primary usecase. It is unclear if anyone has
  managed to use this layer on physical hardware.

Because of these issues, remove the layer. There are better integration
points for automated ACS testing, and this integration is obsolete.

[1] https://github.com/ARM-software/arm-systemready

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-12 08:00:04 -05:00
Jon Mason 98b105ce06 arm/fvps: reorganize CI into segments
The downloads page for FVPs is broken down into sub-pages for each
"Ecosystem".  Organize this file to match that.  Also, rename fvp-v3-r1
to "rd" to make more obvious what this refers to.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-11 11:00:04 -05:00
Jon Mason d8c879b9e3 arm/corstone1000-a320: split off FVP into a unique file and add to CI
The corstone1000-a320 FVP is a unique download and should be treated as
such in our CI.  Split the relevant parts off, add it to the fvps.yml
file, workaround the staticdev and useless-rpath errors that were
present in the FVP tarball, and the correct depends in the machine
config file.

Also, add this machine to the CI so that any issues can be found with
this unique configuration.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-11 11:00:04 -05:00
Jon Mason 832ce9bca3 CI/fvp: made the default target core-image-full-cmdline
No need to have the full graphics stack for FVP images.  Slim the image
down by default.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-11 11:00:04 -05:00
Filipe Rinaldi f87babe3f8 lib/fvp: remove FVP buit-in portion of the terminal name
This patch ignores the built-in FVP UART name when setting the terminal
names on tmux.
The rationale is that appending FVP UART name takes a lot of space
making it unusable on complex platforms with many terminals.

Signed-off-by: Filipe Rinaldi <filipe.rinaldi@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-11 08:00:03 -05:00
Frazer Carsley 8c8e2a5dbb arm-bsp/u-boot: Remove v2025.04 recipe
Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-10 15:42:51 -05:00
Frazer Carsley 7ab5353f1c arm-bsp/u-boot:cs1k: Remove broken patch
The removed patch file breaks the U-Boot efi_selftest utility and has
been denied by upstream in any event. All subsequent patches renumbered.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-10 15:42:51 -05:00
Frazer Carsley 0a8d300b52 arm-bsp/u-boot:cs1k: Upgrade to v2025.10
All patches have been rebased onto the v2025.10 release branch, with the
changes primarily being updating of offsets and surrounding code in each
hunk.

One minor change between v2024.04 and v2025.10 is that a
CONFIG_BOARD_INIT option was added and must be enabled in order to link
in the `board_init()` symbol. As such, the firmware update patch adding
`board_init()` has been modified to enable this option as well.

The patch that enabled OF_UPSTREAM has been modified slightly in order
to incorporate upstream changes between versions: the SMP changes to the
Corstone1000 FVP device tree were incorporated into the Linux kernel so
are no longer needed in the U-Boot specific device tree. As such, the
patch adding A320 support adds these CPU nodes in order to override them
where appropriate.

In the process, signatures are removed from each patch.

Beyond this, the directory in which U-Boot searches for the EFI capsule
CRT file changed from object tree to source tree, so the recipe is
updated to reflect that.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-10 15:42:51 -05:00
Jon Mason 50f14fa9bd arm-bsp/fvp-base: add MMC and 9P to kernel config
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-10 15:42:51 -05:00
Jan Luebbe fbb2c0f772 arm/arm-bsp: optee-examples: drop patch included in 4.9.0
This fixes a build error due to:
 patching file Makefile
 Hunk #1 FAILED at 12.
 1 out of 1 hunk FAILED -- rejects in file Makefile
 Patch 0001-Makefile-Avoid-variable-override.patch can be reverse-applied

Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-06 14:00:04 -05:00
Ross Burton 320301be3d arm-bsp/external-system: remove redundant DEBUG_PREFIX_MAP fiddling
We have a newer gcc-arm-none-eabi now, so this can be removed.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-06 10:00:04 -05:00
Hugues KAMBA MPIANA be599f9523 arm-bsp: corstone1000: Swap GIC-600 for GIC-700 for Cortex-A320 variant
Make changes across U-Boot, and OP-TEE OS to swap
the GIC-600 for GIC-700 as the latest version of the FVP
swaps the GIC.

Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-02-04 06:00:06 -05:00
Hugues KAMBA MPIANA 38d2046583 arm/arm-bsp: optee: drop version 4.7.0
Drop support for OP-TEE version 4.7.0 from the layer as
version 4.9.0 is present.

Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-27 14:30:50 -05:00
Hugues KAMBA MPIANA 955cd40e15 arm-bsp/corstone1000: move to support OP-TEE version 4.9
Bump Corstone-1000 machine OP-TEE version from 4.7.0
to version 4.9.0.

Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-27 14:30:50 -05:00
Hugues KAMBA MPIANA 4981dca139 arm/arm-bsp: optee: add version 4.9.0
OP-TEE version 4.9.0 has been released on 2026-01-16 [1].

Add OP-TEE recipes to point to version 4.9.0

Link: [1]: https://github.com/OP-TEE/optee_os/blob/master/CHANGELOG.md#op-tee---version-490-2026-01-16

Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com>
Tested-by: Quentin Schulz <quentin.schulz@cherry.de> # xtest on PX30, RK3399, RK3588
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-27 14:30:50 -05:00
Michael Safwat d9eac47e30 arm-bsp/docs:corstone1000: Update copyright and host tool versions
Update Corstone-1000 documentation to reflect 2026 copyright and
current supported host environment.

Signed-off-by: Michael Safwat <michael.safwat@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-23 08:00:04 -05:00
Ross Burton c3c97a6b8f arm-bsp/trusted-firmware-a: ensure native tools respect BUILD_LDFLAGS
TF-A has a number for variables to control how host binaries are built:

- Our BUILD_CC is HOSTCC; this is set in the recipes
- Our BUILD_CFLAGS is HOSTCCFLAGS; this is not set
- Our BUILD_LDFLAGS has no corresponding variable

However when uninative is enabled we really need to pass BUILD_LDFLAGS
as otherwise there can be link problems:

  ld: libcrypto.so: undefined reference to `__isoc23_strtol@GLIBC_2.38'

Patch into the TF-A makefiles support for HOSTLDFLAGS and ensure that we
set all three of the relevant BUILD_ variables.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-22 13:00:04 -05:00
Hugues KAMBA MPIANA de6e6fe7d5 arm-bsp/docs:corstone1000: Update copyright notice
Update the copyright notice year.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-20 15:40:32 -05:00
Jon Mason 755287ed33 arm-bsp/u-boot: remove upstreamed fvp-base patches
2 of the fvp-base specific u-boot patches were merged in the 2026.01
release.  Remove those, as they are no longer necessary.

Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-15 17:49:51 -05:00
Ross Burton f36c9add46 Revert "CI: work around xen failures until fixed upstream"
The kernel upgrades are now in oe-core, so we can drop this workaround.

This reverts commit 341a0fd976.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-15 17:00:04 -05:00
Ross Burton 6aef0d46a9 arm-bsp/linux-yocto: disable kconfig checking for sbsa-ref and sgi575
The linux-yocto kernel has strict configuration warnings enabled and this
often causes warning, for example with 6.18.3:

[INFO]: the following symbols were not found in the active configuration:
     - CONFIG_SND_SOC_ROCKCHIP
     - CONFIG_SLIM_QCOM_CTRL

For these machines we're using the upstream defconfig and not a config
file that we're maintaining, so fixing these problems upstream is slower
than one would like.

As we don't maintain the config, we can disable the checker for these
two machines. This is _not_ precedence for disabling the audit for any
machines where we're not simply using the upstream defconfig without any
changes.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-15 10:00:04 -05:00
Frazer Carsley 568b3622cd arm-bsp/conf:corstone1000: update bl1.bin path
The path changed when the trusted-firmware-m recipe began to inherit
firmware.bbclass.

Signed-off-by: Frazer Carsley <frazer.carsley@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
2026-01-14 05:00:04 -05:00