To fit the kernel image into the allotted space, a compressed kernel
image is now needed. Use the Image.gz from the kernel build process
and change the relevant places to use the new image name. This also
necessitates adding an unzip command to u-boot to uncompress it to
memory (and the loadm is still needed to setup the efi mem boot device).
Also, the unzipped image is larger than before. So, increase the size
that loadm is copying.
This change shrinks the initramfs bundle size from 12MB to 4.8MB
Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
TFTF is TF-A tests that runs at NS-EL2. This is primarily developed to
test the TF-A interfaces exposed to NS code.
Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Bump version of u-boot from 2021.10 to 2022.01, as at it, take
the chance to squash some patches and reduce the number of
them.
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
Signed-off-by: Jon Mason <jon.mason@arm.com>
- Removes upstreamed patches for optee-examples
- Fixes optee-examples installation
- Includes new python3-cryptography dependency
- Removes older cryptography backend dependencies
- Fixes python3-cryptography to work with openssl
- Keeps optee-client and optee-os v3.1.4 for corstone1000 compatibility
Tested on qemuarm64-secureboot via optee-examples and xtest -l 15
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alhe@linux.microsoft.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Update linux-yocto to the latest version for cs1k.
There is a bug in the kernel version 5.15. Following
patch is applied to fix this issue and will be
upstreamed soon (https://lkml.org/lkml/2022/2/18/475).
Signed-off-by: Emekcan Aras emekcan.aras@arm.com
Signed-off-by: Jon Mason <jon.mason@arm.com>
Corstone 700 is end-of-life, so remove it from meta-arm master.
It will remain in the stable branches for existing users, but new users
are encouraged to use Corstone 1000 instead.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
As the latest python3-crytography breaks TF-M builds, downgrade those
machines using TF-M (musca and corstone) to python3-crytography-native
3.3.2 temporarily.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Upgrade TC's TF-A from a post-2.5 snapshot to the 2.6 release.
This means increasing the maximum size of BL31.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Change the setting of PV from referancing SRCPV to using SRCREV.
Also drop the use of PREFERRED_VERSION. The existing TF-M recipe will
be selected automatically (1.4.1). Corstone1000 bbappend sets the SHA and
PV to 1.5
Change-Id: Id9332fd87e271608ba425e05e796f75fd1c0268d
Signed-off-by: Drew Reed <drew.reed@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Most BSPs don't need a specific release of TF-A, so add a bbappend for
TF-A 2.6 and remove the preferred version assignments.
Notable exceptions are TC0/TC1 and Corstone1000, which both are currently
using intermediate SHAs pre-2.6:
- TC0/TC1 fails to build with TF-A 2.6 as the binary doesn't fit in the
specific space.
- Corstone1000 patches need to be rebased on top of 2.6
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
There's no need to use virtual/trusted-firmware-a, as there's only one
provider of trusted-firmware-a: trusted-firmware-a.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
These changes are to add support to build TrustedServices.
corstone1000 platfrom uses optee-sp option which will include
secure partitions into optee Image
Following changes are made to trusted-services code
* TS_PLATFORM should be set at the external build system level.
* fix EARLY_TA_PATHS environment variable
* se-proxy string and make it as child node
Change-Id: I58d76b5e25e7f285794c93dc92c1b93fdd77cfb9
Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Changes necessary to get the u-boot version 2020.10. TC patches are no
longer necessary, as they are upstreamed.
Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit allows to sign trusted-firmware-a BL2 and FIP using MCUBOOT
tools.
Change-Id: Ide3045982f5f8515c1ccd59b6b0d29816fbfdd68
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Satish Kumar <satish.kumar01@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
These changes are to add corstone1000-fvp machine
to optee-os.
Change-Id: I9ddfaca476234c0307a89d5444ae2d0e688a9b59
Signed-off-by: Arpita S.K <Arpita.S.K@arm.com>
Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit enables TF-A v2.5 with Trusted Board Boot support for the
Corstone1000 64-bit platform.
Disables Non-Volatile counters in the TBB.
Change-Id: Idb9e18df7066cb617df72b2e147147ce49db292c
Signed-off-by: Arpita S.K <Arpita.S.K@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add support for corstone1000-fvp machine which have a cortex-a35
aarch64, this will boot till u-boot prompt.
Remove kernel devicetree configuration and add the devicetree here and
enable it in the diphda defconfig.
Adds the build options required to support an RTC emulator which in
turn is required to support the UEFI functions GetTime()
and SetTime().
Change-Id: I0d66ece1193494bd2f59a9800d802dff1c4a0db6
Signed-off-by: Arpita S.K <Arpita.S.K@arm.com>
Signed-off-by: Rui Miguel Silva <rui.silva@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Vishnu Banavath <vishnu.banavath@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add support for all of the Cortex-R CPUs currently supported in GCC.
Having to get creative here to properly use the GCC extensions.
Signed-off-by: Jon Mason <jon.mason@arm.com>
The same patches are used by tc0 and tc1. Hence rename the folders
that contain the Total Compute patches to be called "tc". The
artifacts image is used by both tc0 and tc1, hence renamed to
tc-artifacts-image.
Signed-off-by: Usama Arif <usama.arif@arm.com>
Change-Id: Ib0b4fbca9a009c432c1e6696c5437a7d24a25d1f
Signed-off-by: Jon Mason <jon.mason@arm.com>
Introduce the proper compiler flags for armv8r64, and also
disable -march=armv8-r for boot-wrapper-aarch64
Issue-Id: SCM-2342
Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
Change-Id: I3d2fac232139b057a5d1a3a8c6f5b825f95d709a
Signed-off-by: Jon Mason <jon.mason@arm.com>
Update to TF-A v2.5 and MBED TLS 2.26, and all machines using 2.4 to the
newer version. Also, n1sdp was using an intermediary SHA, but is now
updated to the latest (which includes that intermediary SHA).
Change-Id: Ia5ec3cecf9090fd5f5da28efff4c1d6cce1efc19
Signed-off-by: Jon Mason <jon.mason@arm.com>
We are temporarily using armv8-4a until GCC 11 is released and supported by
oe-core.
Issue-Id: SCM-2121
Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
Change-Id: I7e41105a1e99f5a71ea927d1b84c9a9fa9762aaf
Signed-off-by: Jon Mason <jon.mason@arm.com>
Move to the release of 2.4 instead of a snapshot between 2.3 and 2.4
Change-Id: Ie7bd5a8de310186de14bee9e8f10c1aaae6194e6
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Previously corstone700 used the scp-firmware recipe to build
boot-firmware, which is based on scp-firmware but doesn't share the
build system.
As the differences are not insignificant, extract a dedicated
boot-firmware recipe. Also set PV appropriately as boot-firmware now
has dated tags.
Change-Id: I3b60172e145be571aa465afb81473b9d79e9e425
Signed-off-by: Ross Burton <ross.burton@arm.com>
Corstone, a5ds, and sgi575 were using the meta-kernel, but recent
updates removed support for their non-LTS kernel. Change to using the
respective kernels present in linux-yocto until it can be upgraded to
the latest version.
Change-Id: I63f2e511fe69051c06e6559950b798c1371cc8e9
Signed-off-by: Jon Mason <jon.mason@arm.com>
Fix the cortex-m tunes to actually function properly. Tested with
meta-zephyr on musca-b1.
Change-Id: Ib797cafc4f82f6a525cf6b9c0ce4a302a9ef65c2
Signed-off-by: Jon Mason <jon.mason@arm.com>
Cortex-a tune files have been accepted into openembedded-core. So,
those should be used in place of these. Removing these to prevent any
issues.
Change-Id: Ifca1557a88e50ce6947524222ba7f852fd9a282c
Signed-off-by: Jon Mason <jon.mason@arm.com>
Cortex-A32 is 32bit only, but the recent changes had it working as
64bit (causing build breaks). This reverts that change in this file.
Change-Id: I58115096477424127baf99712b96131d2a0b0497
Signed-off-by: Jon Mason <jon.mason@arm.com>
Until accepted into oe-core, add the cortex-m tunes here so that they
can be used in meta-arm-bsp.
Change-Id: Iaa74937da61cd8d35c27beae7e09351e996a262e
Signed-off-by: Jon Mason <jon.mason@arm.com>
Until accepted into oe-core, add the cortex-a tunes here so that they
can be used in meta-arm-bsp. Also, this allows for them to be used for
dunfell support.
Change-Id: I9e0affef8d9d94f27cd68d5032b82276f51f7c1e
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add all the available ARMv8.2 tunings from GCC. This belongs in
OE-Core, but adding here so that it can be used while trying to upstream
there.
Change-Id: I5025eef6d18545478116b5079daf9c4d12e93dca
Signed-off-by: Jon Mason <jon.mason@arm.com>
Reviewed-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Add ARMv8-A big.LITTLE tuning for cortexa73-cortexa35. It is supported
in GCC, and is the only one missing from OE-Core.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Reviewed-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Extend the scp recipe to support corstone700 plaform.
The scp runs on the boot processor (Secure Enclave).
Change-Id: I24289533a72367ebd2d2150c5230d9f435b4212f
Signed-off-by: Rui Miguel Silva <rui.silva@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Adding support for the new Arm corstone700 platform family.
The current supported corstone700 machine is corstone700-fvp.
The changes are as follows:
- Making some adjustments to the mmio timer and to the cortex-a5
designstart platform to share as much as possible between this
platforms.
- Disabling the use of the mmio_timer driver and enabling the
arch_timer driver.
The mmio_timer tries a direct access to the Armv8-A CNTFRQ generic timer
frequency register through memory mapping. This can not be done because
this register is only accessible through memory mapping under a secure
mode only. u-boot runs in non secure Hypervisor mode. To read the counter
frequency u-boot should use the mrc instruction to read the CNTFRQ system
register. The arch_timer driver reads the CNTFRQ register using the mrc
instruction.
- adding bootx command to start XiP images
Change-Id: I40f5e91cfb8865e2904b0f5ac9920df75705b593
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
This commit allows the external-system firmware to be used on the
corstone700 platform.
Change-Id: I746a970dcdceee60d91152e4315afa072ca843d3
Signed-off-by: Rui Miguel Silva <rui.silva@arm.com>
Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>