Zephyr supports QEMU based machine for Cortex M0 (qemu-cortex-m0). This
is actually using the BBC Microbit v1 machine in QEMU. Use this more
accurate name for the machine conf. This enables us to verify m0
tunings.
NOTE: qemu-cortex-m0's zephyr config has SRAM too small to run
zephyr-kernel-test-all, but can run zephyr-philosophers and
zephyr-kernel-test-sleep (and possibly others).
Change-Id: Ia997a162c10cf1a6b8fea244cb1960f4d4c66adc
Signed-off-by: Jon Mason <jon.mason@arm.com>
Move both FVP platforms to u-boot 2020.10
Change-Id: If94bb5a343e2709574f84283f39d8d227b32d84d
Signed-off-by: Anders Dellien <anders.dellien@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
meta-arm-toolchain supports using an external binary arm
toolchain[1] instead of the gcc-cross built by oe-core.
Add a test case to exercise this build in the CI. Currently this
is only for the Aarch32 target as our CI runs on aarch64 and there
is no binary or aarch64 target on aarch64 host.
This depends on the image used by the CI having the relevant
compilers installed into /usr/local.
[1] https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a
Change-Id: I9f7ea66786e98a40cbd490386497e2d3aaa47e80
Signed-off-by: Ross Burton <ross.burton@arm.com>
Acked-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The armgcc fragment was labelled 'libc', which means it would be
impossible to armgcc+musl.
Change-Id: I96f1d6e1a77bcd05fe373315f575c57c36417852
Signed-off-by: Ross Burton <ross.burton@arm.com>
Acked-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Trusted-firmware-a is the final component to be built with the rest of the
components dependent of it, therefore building tc0-artifacts-image
which depends on trusted-firmware-a will build all the required binaries.
Signed-off-by: Usama Arif <usama.arif@arm.com>
Change-Id: I57760a339da1601bd66e3dd752a7b2814e84bbb8
Signed-off-by: Jon Mason <jon.mason@arm.com>
The patch introduced in 82ffc86 is a backport from the 5.10 version. Hence,
just apply it for kernels older than 5.10.
Change-Id: I6f442f540913b5e24bea533a436b4a3104d098e9
Issue-Id: SCM-2033
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
We can't retry jobs blindly because if a build fails with warnings we want
to fail the job. With retries enabled the job fails, but is immediately
retried and builds quickly from sstate without any warnings.
Thus, all and any warnings are hidden.
Disabling retries. We may get occasional failures from Docker, we'll have
to see how bad they are.
Change-Id: Ib726f14a264c029fdf372fc1b8a02aca52bf5e4c
Signed-off-by: Ross Burton <ross.burton@arm.com>
Add a build to verify that setting GCCVERSION to arm-10.2 works.
Change-Id: I086fa786b11560a8e94ee646859c59288bacba5d
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Added a comment to the xenguest-manager recipe to inform the user that
the default state is a volatile log dir, and how to persist logs across
reboots.
Issue-Id: SCM-1860
Signed-off-by: Nathan Dunne <Nathan.Dunne@arm.com>
Change-Id: Ie0c92b05d11543a1524cbb7a53cd845bc63ecd3d
Signed-off-by: Jon Mason <jon.mason@arm.com>
Arm GCC 10.2 prebuilt toolchain comes with ldd and tzselect scripts
which uses "/usr/bin/bash", so replace this with "/bin/sh" as the
default shell.
Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
As OE core has moved to GCC 10.2 toolchain, so remove support for
legacy Arm 8.x toolchain.
Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This recipe isn't used by any machines and isn't tested, so remove it.
Machines that use a git snapshot should extend the closest versioned recipe
instead.
Change-Id: Ia0970f2d0491204c23d171c065e85c9f65f9472f
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
No machines in meta-arm are using this old release.
Change-Id: I8b56b1cc3eb603ee423acc52950d1e7661502d0e
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Now that SGI575 has upgraded, this can be removed.
Change-Id: Ib8bdd9430b66a4b83524b21ad2a300a048c218eb
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
gem5 is no longer in meta-arm-bsp, and kmeta entry should be removed.
sgi575 has no usage of the meta-arm-bsp kmeta and would be better suited
to use the generic one.
corstone700 is defining kmeta, but that variable is only used in the
generic kmeta src_uri, and not the meta-arm-bsp that it is using.
Change-Id: I01e80c433a9a02bad1f6337b0df27cbf6a96231f
Signed-off-by: Jon Mason <jon.mason@arm.com>
SGI575 throws a config warning when compiling the 5.7 kernel.
WARNING: linux-yocto-5.7.19+gitAUTOINC+b9e6fd082d_6b9830fecd-r0 do_kernel_configcheck: [kernel config]: specified values did not make it into the kernel's final configuration:
[NOTE]: 'CONFIG_USB_CONN_GPIO' last val (m) and .config val (y) do not match
[INFO]: CONFIG_USB_CONN_GPIO : y ## .config: 5334 :configs///defconfig (m)
[INFO]: raw config text:
config USB_CONN_GPIO
tristate "USB GPIO Based Connection Detection Driver"
select USB_ROLE_SWITCH
depends on GPIOLIB && USB_SUPPORT
help
The driver supports USB role switch between host and device via GPIO
based USB cable detection, used typically if an input GPIO is used
to detect USB ID pin, and another input GPIO may be also used to detect
Vbus pin at the same time, it also can be used to enable/disable
device if an input GPIO is only used to detect Vbus pin.
To compile the driver as a module, choose M here: the module will
be called usb-conn-gpio.ko
Config 'USB_CONN_GPIO' has the following Direct dependencies (USB_CONN_GPIO=y):
GPIOLIB(=y) && USB_SUPPORT(=y)
Parent dependencies are:
USB_SUPPORT [y] GPIOLIB [y]
[INFO]: selection details for 'CONFIG_USB_CONN_GPIO':
Symbols currently y-selecting this symbol:
- PHY_TEGRA_XUSB
It is using the defconfig from upstream Linux. So, change that
defconfig to correct the warning by changing USB_CONN_GPIO from 'm' to
'y'.
Change-Id: Ia5080f7f22d0f1aef065b58d8c3b0222625c8f58
Signed-off-by: Jon Mason <jon.mason@arm.com>
Upgrade to a newer edk2-platforms revision to incorporate the fixes
for the VariablePolicyLib changes in edk2 itself.
Change-Id: I928a59baee9cea4958963ac86f0093521036740b
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Firmware is baremetal so doesn't need the C library to build.
Change-Id: Ie376783cb45fb6d455bc5d9c687e77703ff2cd72
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
As this is machine-specific, set PACKAGE_ARCH to MACHINE.
Change-Id: I4569bce706de8dea4ba98770960c0d40348a3fa2
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Use cmake more idiomatically, and enable verbose builds.
Change-Id: I908af71f4662fab1dde9de86fc7a56ca3701e0c5
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
TF-M uses the binary Arm toolchains currently, so we can inhibit
all of the default dependencies.
Change-Id: I38a7bda9570d9d63d3d81f0886c437f29929a0f5
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Now this can be easily set in the machine, do so.
Change-Id: I964c78c8e1e8f845cc2c95193c4a795e12089d1a
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
COMPATIBLE_MACHINE is a wrapper around raising SkipRecipe, and as this
recipe basically just needs TFM_PLATFORM set we can raise that if the
variable is not set. This allows BSPs to set TFM_PLATFORM in their
machine configuration instead of needing to bbappend.
Change-Id: I8544ff14ac4689bfbea1f0ac68364b673abde6f1
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Musca doesn't build 'images' in the traditional sense yet, just
trusted-firmware-m or Zephyr, so remove EXTRA_IMAGEDEPENDS.
Remove the preferred version for TF-M as we only ship one currently.
Change-Id: I2fbd1230f6ba7a49aa093ca90fc38e676ba14633
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Reduced duplicated code in xenguest-manager to functions for better
maintainability. Also reduced instances of calling self with a different
argument, which is better for performance and log readability.
Issue-Id: SCM-1635
Signed-off-by: Nathan Dunne <Nathan.Dunne@arm.com>
Change-Id: Ic37b6b0a8a5f38145a298cc6aab908e3e58ae313
Signed-off-by: Jon Mason <jon.mason@arm.com>
Trusted-firmware-a is the final component to be built with the rest of the
components dependent of it, therefore building trusted-firmware-a will
build all the required binaries.
Change-Id: Ia8675b048db4a127d32394f536632ce88fe20826
Signed-off-by: Usama Arif <usama.arif@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This involes creating the fitImage which contains
both the kernel and ramdisk. The fitImage is also
signed.
Signed-off-by: Usama Arif <usama.arif@arm.com>
Change-Id: I2fc50740aac3e347be02438cf54ef5741183a670
Signed-off-by: Jon Mason <jon.mason@arm.com>
Use 2020.10 u-boot as it has tc0 platform merged in upstream.
Signed-off-by: Usama Arif <usama.arif@arm.com>
Change-Id: Ia7da8b96a4509cee25b096f6637c036fef910b48
Signed-off-by: Jon Mason <jon.mason@arm.com>
Introduced logging functions to unite logging to the console and to
the logfile with different filterable log levels. Also introduced
logrotate to ensure the size of the log does not become excessive.
The Log levels introduced are:
ERROR INFO VERBOSE
By default, both the terminal and the logfile will receive ERROR logs.
More verbose logs can be written to the logfile in two ways:
- passing the parameter "-v" or "-vv" to write info and verbose respectively
- modifying the value of "XENGUEST_MANAGER_LOG_LEVEL" in the host conf file,
or updating the entry it creates in the config file
/etc/xenguest/xenguest-manager.conf
The order of precedence is as listed above
Issue-Id: SCM-1516
Signed-off-by: Nathan Dunne <Nathan.Dunne@arm.com>
Change-Id: I47f74802ed31a5bff12305eab707e009af7e5398
Signed-off-by: Jon Mason <jon.mason@arm.com>
Using a custom logging.yml we can instruct BitBake's logger to write all
warnings and errors into a separate log file.
Then after the build has finished we can see if the log file is empty and if
not show it and abort the build.
Change-Id: Ida835b5c822941fb513dfb1758b4ec195e0050fc
Signed-off-by: Ross Burton <ross.burton@arm.com>
Simplify the gitlab-ci by having the bootstrap build as just another Kas
overlay file, so there's no duplication of build script.
Change-Id: I7341750d2ae7f3c146bfe323f61fa98c0f3121c0
Signed-off-by: Ross Burton <ross.burton@arm.com>
The Musca boards can't run Linux, so explictly refuse to build a kernel
on those platforms.
Change-Id: Ic38e9fb5a7af5b27b83a74615ece5d49c60d927b
Signed-off-by: Ross Burton <ross.burton@arm.com>
So that the automatic latest upstream release detection works correctly,
specify what release tags look like.
Change-Id: Ie53e82fffe5392d8e6f8d530d9f4ed732f03b50f
Signed-off-by: Ross Burton <ross.burton@arm.com>
So that the automatic latest upstream release detection works correctly,
specify what release tags look like.
Change-Id: I8e028b9457719a462f2028daca028714b80fad63
Signed-off-by: Ross Burton <ross.burton@arm.com>
So that the automatic latest upstream release detection works correctly,
specify what release tags look like.
Change-Id: I1226290c223d18b776efffeccd48d291755d01a1
Signed-off-by: Ross Burton <ross.burton@arm.com>
Upstream has potentially fixed the musl issues, so leave a comment to remind
whoever does the upgrade.
Change-Id: I24d9b23e492b29b6690c0843c3f2c950791f93e5
Signed-off-by: Ross Burton <ross.burton@arm.com>
So that the automatic latest upstream release detection works correctly,
specify what release tags look like.
Change-Id: Ibc43aecd3cb4def85e2f1549d16f5bcb27cfb703
Signed-off-by: Ross Burton <ross.burton@arm.com>
When compiling under clang, certain lines triggered
-Wtautological errors. Cosmetic modifications were made
via patches to mitigate this.
Change-Id: I3d17dd5102267e03a8b7d157e66e0788b542bdd8
Signed-off-by: Brett Warren <brett.warren@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
When compiling under clang for aarch32, linking fails because
the compiler-rt builtins aren't implicitly linked. Recipes and
patches have been modified and added to explicitly pass the runtime
builtin when linking files.
Change-Id: I4299b7d078d77c1fdd5576ceec1491f91e73c35d
Signed-off-by: Brett Warren <brett.warren@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
The oe-core qemu.inc is common configuration for the qemu machines
inside oe-core. Including this to get qemuboot working has some
unintended consequences, such as a kernel being selected and
MACHINE_FEATURES being altered.
Change this to inherit qemuboot and set the correct filesystem type
directly.
Change-Id: Id17e2cc67f029653517ba802c7f8f5503eea3c31
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit implements a generic recipe to pack and import
container image to the xenguest image.
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
Issue-Id: SCM-1738
Change-Id: I239b360f9a7dd1cdc050d46a40e210406ca21aae
Signed-off-by: Jon Mason <jon.mason@arm.com>
Update TC0 SCP from using a local version (non-standard) to use the
generic 2.7 recipe.
Change-Id: I68aca8fe7f1f7a574a2324dff348f80cd4989581
Signed-off-by: Jon Mason <jon.mason@arm.com>