N1SDP board cannot boot after recent TF-A 2.7 update in meta-arm. This
is due to TF-A 2.7 not configured correctly for N1SDP board to support
trusted boot feature.
This patch temporarily brings back TF-A 2.6 recipes for fixing the N1SDP
boot.
A proper fix is in work progress to configure TF-A 2.7 correctly to
support trutsed boot on N1SDP.
Signed-off-by: Xueliang Zhong <xueliang.zhong@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
zephyr uses icount to improve test accuracy on virtual hardware. Do
the same here for the same reason for the platforms that actually test.
Also, the common test now appears to work for microbit-v1 and poll doe
snot work for qemu-cortex-m3
Signed-off-by: Jon Mason <jon.mason@arm.com>
The upstream version is 2.7.0, so use that name instead of just 2.7.
Also remove the unversioned bbappend which simply extended
FILESEXTRAPATHS, there's no need for this split now that we aim to have
~1 version of TF-A in the tree.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The SGI-575 build is successful with branch protection enabled, so remove
this workaround.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
To allow bitbake including the 'generic-arm64-standard.scc' into the kernel
configuration, it has to be included as a kmeta type source to the SRC_URI.
Issue-Id: SCM-4394
Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com>
Change-Id: Iaebd0c7758038843a1d0f37decbef057629bf0bb
Signed-off-by: Jon Mason <jon.mason@arm.com>
Binaries shouldn't be in datadir, and now the RPATHs are being cleared
we can put them in libexecdir.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
As per [1], target builds of androidclang produce useless-rpath errors.
/usr/share/clang-r416183b/python3/lib/python3.9/lib-dynload/_posixsubprocess.cpython-39-x86_64-linux-gnu.so
contains probably-redundant RPATH /../lib [useless-rpaths]
Those RPATHs are of no use, so we can remove them entirely.
[1] https://errors.yoctoproject.org/Errors/Details/640604/
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add a patch to fix uninitialized varibles, detected by Clang when
building for Juno. However, whilst it now compiles it can't generate
firmware images correctly, so it has to remain forcing GCC.
Remove the workaround to force debug builds when using Clang, as this is
now fixed.
Drop upstreamed patches from sbsa-acs.
Signed-off-by: Ross Burton <ross.burton@arm.com>
This is not a clean rebase. The patch had to be modified to apply and
work on v2022.04. It is not very elegant, but it is functional.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Recent modifications in u-boot moved the default location of the FDT.
Update the runfvp parameters to match this new location.
Signed-off-by: Jon Mason <jon.mason@arm.com>
As far as we know nobody is actually using the Arm Compiler recipe: 6.17
does a network operation on every call to check the license and this
fails with the network isolation that do_compile has in kirkstone, and
6.18 is behind a loginwall so we cannot download it in a recipe.
Unless we have actual users asking for a recipe, remove it from the layer
to avoid confusion.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The recipe supports the use of both Arm's binary GCC (aka GNU Arm
Embedded Compiler, or gnu-rm) and binary Clang (aka Arm Compiler).
However, armcompiler was never tested and doesn't work: 6.17 does a
network operation on every call to check the license which fails with
the network isolation in do_compile tasks, and 6.18 is behind a
loginwall so we can't automatically fetch it in a recipe.
Simplify the recipe to hardcode the use of gnu-rm, and remove the clang
support.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Our CI is now running on Broadwell+ cores, so the 11.2 release of GCC
should work.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add parameters required to boot with cache_state_modelled enabled:
* bp.virtio_net.secure_accesses=1
* bp.virtio_rng.secure_accesses=1
* bp.virtioblockdevice.secure_accesses=1
* cci400.force_on_from_start=1
Add bp.ve_sysregs.exit_on_shutdown=1 to match fvp-base.
Remove parameters that are not required to boot or are setting the
default value.
Alphabetize list.
Issue-Id: SCM-4304
Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
Change-Id: I0a696eff5bb83206e5501f651c487f16f695aa4c
Signed-off-by: Jon Mason <jon.mason@arm.com>
Running the FVP_Base_AEMv8R model with the cache_state_modelled
parameter enabled exposed some defects in the U-Boot BSP patches for the
fvp-baser-aemv8r64:
* The MPU memory attributes are inconsistent with the existing MMU
attributes, causing a model hang when sending packets using
virtio-net in U-Boot.
* The instruction cache was left disabled after booting an EFI payload
at S-EL1, causing some EFI apps (e.g. Grub) to hang when attempting
to use dynamically loaded modules.
The cache_state_modelled FVP parameter is enabled by default in the
model (for simulation accuracy) but is disabled by default in the
machine conf (for simulation speed).
Add two additional machine-specific U-Boot patches to fix the above
issues.
Issue-Id: SCM-4641
Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
Change-Id: I5ab13c9fdadd82456ac3f3e3703df36590d52fb7
Signed-off-by: Jon Mason <jon.mason@arm.com>
The backports are now merged, so remove patches 1 through 5 and
renumber.
Upstream now requires CONFIG_DEFAULT_DEVICE_TREE to be defined, even if
unused, so backport relevant portions of upstream BASER_FVP patch into
the board suppport patch.
Issue-Id: SCM-4304
Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
Change-Id: I327e8aba3463f088bba40e83893c6f15beabb250
Signed-off-by: Jon Mason <jon.mason@arm.com>
Upstream has updated u-boot to v2022.04, but the update is causing
problems with some machines. Temporarily add a v2022.01 recipe until
the issues can be resolved.
u-boot and zephyr hacking
Signed-off-by: Jon Mason <jon.mason@arm.com>
GCC 12 is causing problems in newlib, which is causing problems for
zephyr. Add a workaround until those issues can be resolved.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Build all the things that qemuarm64-secureboot builds, removing those
that fail to compile. Unfortunately, musl doesn't play nicely with
optee-test.
Signed-off-by: Jon Mason <jon.mason@arm.com>
This appears to be historical from when the toolchain was in meta-linaro.
It isn't needed anymore, there's one bbappend in meta-arm-toolchain for
grub which is part of oe-core, so will never be dangling.
This variable has a global effect, so leaving it in here has a negative
impact on users.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The only user of the old 5.4 kernel is meta-gem5, so move it into that
layer to keep it separate.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The new mbedtls version (v2.28) increase the size of TF-A slightly.
This commit increases the size of BL2 for TC, so that TF-A with updated
mbedtls version can fit.
Signed-off-by: Emekcan Aras <Emekcan.Aras@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
FF-A version is defined 1.1 in corstone1000_spmc_manifest.dts. However, SPMC
does not support FF-A version 1.1 at the moment. This commit fixes FF-A version
issue by defining 1.0 again.
Signed-off-by: Emekcan Aras <Emekcan.Aras@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The latest TF-A version requires mbedtls v2.28. This
commit upgrades mbedtls to v2.28 for TF-A recipe.
An upstreamed patch included to the base recipe from TF-A master
that fixes the build issues beween TF-A 2.6 and Mbedtls 2.28.
Signed-off-by: Emekcan Aras <Emekcan.Aras@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
I misunderstood how the external-arm-toolchain recipes were working, the
latest revision of the recipe works with both 10.3 and 11.2.
Clean up my mess by dropping the PREFERRED_VERSION from the CI, and revert
the addition of versioned recipes. Simply using the right tarball is
sufficient.
Thanks to Sumit Garg for noticing my mistake.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The 11.2 release of the Arm GCC uses Broadwell-onwards instructions, but
our CI (and many other users) have pre-Broadwell hardware.
Until 11.3 is released which fixes this, go back to using 10.3 for our CI.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
We need to support multiple versions of external-arm-toolchain, partly as
different versions have different layouts on disk, and partly because
11.2 doesn't work on pre-Broadwell hardware.
Rename this recipe so the version is in the filename, and dynamically
set PKGV instead of PV so PREFERRED_VERSION is easier to use.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>