- Aug 24, 2021
-
-
Jerome Forissier authored
Adds soc_term.py, a direct replacement for the soc_term tool originally written in C [1]. This Python version is slightly simpler and does not need to be compiled (obviously). It is therefore reasonable to have it here in build.git for use on QEMU and QEMUv8. We can later get rid of the soc_term project in the manifest file of those platforms. This script is also useful with FVP, although fvp.xml does not use it; in a custom work flow the 'xterm' command is replaced by a script which connects the FVP telnet ports to soc_term.py via the socat command. Link: [1] https://github.com/linaro-swg/soc_term Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
Etienne Carriere authored
Fix issue in ftpm_optee_ext/Config.in where BR2_PACKAGE_FTPM_OPTEE_EXT both selects and depends on BR2_PACKAGE_OPTEE_OS_EXT. Keep only the select rule. The issue was found from a OP-TEE build using GCC-11. The build failed with the following message: build/br-ext/package/ftpm_optee_ext/Config.in:1:error: recursive dependency detected! build/br-ext/package/ftpm_optee_ext/Config.in:1: symbol BR2_PACKAGE_FTPM_OPTEE_EXT depends on BR2_PACKAGE_OPTEE_OS_EXT build/br-ext/package/optee_os_ext/Config.in:1: symbol BR2_PACKAGE_OPTEE_OS_EXT is selected by BR2_PACKAGE_FTPM_OPTEE_EXT Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Aug 12, 2021
-
-
Jerome Forissier authored
When VIRTFS_AUTOMOUNT=y and/or PSS_AUTOMOUNT=y, QEMU prints the following warning: qemu-system-aarch64: warning: 9p: degraded performance: a reasonable high msize should be chosen on client/guest side (chosen msize is <= 8192). See https://wiki.qemu.org/Documentation/9psetup#msize for details. Let's set the buffer size to 64K mainly to silence this warning. The performance is noticeably increased too although it doesn't really matters for typical OP-TEE use cases. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
- Aug 05, 2021
-
-
Aleksey Kazantsev authored
Signed-off-by:
Aleksey Kazantsev <Alexey.Kazantsev@kaspersky.com> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
- Jul 13, 2021
-
-
Jerome Forissier authored
After trying to use upstream EDK2 on my HiKey board without success, I reached a point where even 'make recovery' would not make the board bootable again. The recovery process failed like so: $ make recovery [...] Waiting for device... [35][34][33][32][31][30][29][28][27][26][25][24][23][22][21][20][19][18] Sending /home/jerome/work/optee_repo_hikey/build/../l-loader/recovery.bin ... Done fastboot flash loader /home/jerome/work/optee_repo_hikey/build/../l-loader/l-loader.bin < waiting for any device > Sending 'loader' (39 KB) FAILED (remote: 'invalid partition') fastboot: error: Command failed make: *** [Makefile:351: recovery] Error 1 The solution to this problem is mentioned in [1] and consists in running 'fastboot getvar partition-size:ptable' before the fastboot flash command. Link: [1] https://github.com/96boards/documentation/issues/751 . Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Victor Chong <victor.chong@linaro.org>
-
- Jul 06, 2021
-
-
Jerome Forissier authored
qemu-check.exp needs the environment variable $XEN_BOOT to be set, or the following error is displayed: $ make check ... # no such variable (read trace on "::env(XEN_BOOT)") invoked from within "if {$::env(XEN_BOOT) == "y"} { info " (Xen Dom0)" }" (file "/<...>/qemu-check.exp" line 119) Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Acked-by:
Ruchika Gupta <ruchika.gupta@linaro.org>
-
- Jul 01, 2021
-
-
Jens Wiklander authored
Replaces virt-make-fs with mke2fs since it's more robust on Ubuntu and also a bit faster. Fixes build problems like: virt-make-fs -t ext4 /home/jens/work/repos/qemu_v8_xen/build/../out/bin/xen_files /home/jens/work/repos/qemu_v8_xen/build/../out/bin/xen.ext4 Image Name: Root file system Created: Wed Jun 30 19:34:06 2021 Image Type: AArch64 Linux RAMDisk Image (gzip compressed) Data Size: 31978230 Bytes = 31228.74 KiB = 30.50 MiB Load Address: 44000000 Entry Point: 44000000 libguestfs: error: tar_in: tar subcommand failed on directory: /: tar: ./rootfs.cpio.gz: Wrote only 6144 of 10240 bytes tar: Exiting with failure status due to previous errors make: *** [Makefile:362: xen-create-image] Error 1 Reviewed-by:
Jerome Forissier <jerome@forissier.org> Tested-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 30, 2021
-
-
Javier Almansa Sobrino authored
This patch enables Measured Boot on TF-A and builds the TSS tools and the TPM Kernel Module for the FVP toolkit. The functionality is disabled by default. To enable it, build with MEASURED_BOOT=y. Signed-off-by:
Javier Almansa Sobrino <javier.almansasobrino@arm.com> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 29, 2021
-
-
Jens Wiklander authored
TF-A v2.4 and earlier is used with the SCP binaries provided in the vexpress-firmware git. With TF-A v2.5 is supposed to use the SCP binaries released at [1] instead. So update to download the SCP binaries from [1] instead. Link [1]: https://downloads.trustedfirmware.org/tf-a/css_scp_2.8.0/juno Acked-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 28, 2021
-
-
Jerome Forissier authored
make-virt-fs is used to generate xen.ext4 but is passed '-t vfat' instead of '-t ext4'. Fix that. In fact '-t vfat' happens to be working in general, presumably because the actual format of the image is detected at runtime. However, I could not manage to make a VFAT image work in a Docker container based on Ubuntu 21.04 and with the following kernel image package installed: linux-image-kvm/hirsute-updates,now 5.11.0.1009.9 amd64 [installed] The error messages are as follows: root@32b61ad4d7f3:~/optee_repo_qemu_v8/build# LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1 virt-make-fs -t vfat /root/optee_repo_qemu_v8/build/../out/bin/xen_files /root/optee_repo_qemu_v8/build/../out/bin/xen.ext4 [...] libguestfs: trace: mount_options "utf8" "/dev/sda" "/" guestfsd: => mkfs (0x116) took 0.47 secs guestfsd: <= mount_options (0x4a) request length 68 bytes commandrvf: stdout=n stderr=y flags=0x0 commandrvf: udevadm --debug settle -E /dev/sda SELinux enabled state cached to: disabled No filesystem is currently mounted on /sys/fs/cgroup. Failed to determine unit we run in, ignoring: No data available command: mount '-o' 'utf8' '/dev/sda' '/sysroot//' [ 11.673076] squashfs: Unknown parameter 'utf8' [ 11.694908] fuseblk: Unknown parameter 'utf8' command: mount returned 32 command: mount: stderr: mount: /sysroot: wrong fs type, bad option, bad superblock on /dev/sda, missing codepage or helper program, or other error. ocaml_exn: 'mount_options' raised 'Failure' exception guestfsd: error: mount exited with status 32: mount: /sysroot: wrong fs type, bad option, bad superblock on /dev/sda, missing codepage or helper program, or other error. guestfsd: => mount_options (0x4a) took 0.40 secs libguestfs: trace: mount_options = -1 (error) libguestfs: error: mount_options: mount exited with status 32: mount: /sysroot: wrong fs type, bad option, bad superblock on /dev/sda, missing codepage or helper program, or other error. libguestfs: trace: close libguestfs: closing guestfs handle 0x55f423503430 (state 2) [...] With '-t ext4', the issue is gone. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Acked-by:
Ruchika Gupta <ruchika.gupta@linaro.org>
-
Jerome Forissier authored
Update broken URLs in the issue and PR templates. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org> Reviewed-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 25, 2021
-
-
Jerome Forissier authored
Adds a helper script to create a Xen DomU from a Dom0 root shell. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Ruchika Gupta <ruchika.gupta@linaro.org>
-
Christoph Gellner authored
Use security_model mapped-xattr for QEMU_PSS_HOST_DIR. This allows folders/files below /data/tee to be owned by any uid/gid of the QEMU context. Fixes https://github.com/OP-TEE/build/issues/478 Signed-off-by:
Christoph Gellner <cgellner@de.adit-jv.com> Suggested-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
- Jun 24, 2021
-
-
Ibai Erkiaga authored
Build script updated to use Petalinux 2020.2 release. Custom recipes removed in order to use upstream recipes insted for optee and python devtool dependencies. Signed-off-by:
Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Acked-by:
Michael Grand <michael.grand.mg@gmail.com> Tested-by:
Michael Grand <michael.grand.mg@gmail.com>
-
Jerome Forissier authored
The readability check of the host kernel makes sense only when XEN_BOOT=y, so avoid annoying users that are not concerned by this. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Ruchika Gupta <ruchika.gupta@linaro.org>
-
Ruchika Gupta authored
Xen tools are required to launch the other DomU's from Dom0. Enable them in Buildroot. Since Xen is built outside Buildroot, it is essential to maintain the same version of Xen built in build system and Xen tools built in Buildroot. DomU needs a rootfs without the Xen tools. So another target is introduced to build rootfs for DOMU without Xen tools. To launch & run DomU: make XEN_BOOT=y run From Dom0 prompt: > cd /mnt/host/qemu_v8/xen > xl create guest.cfg # This will create a DomU To goto DomU's console: > xl console domu To run and check xtests from Dom0 and DomU: make XEN_BOOT=y check Signed-off-by:
Ruchika Gupta <ruchika.gupta@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Ruchika Gupta authored
Introduce option XEN_BOOT to add xen in the bootflow. When built with XEN_BOOT=y, boot flow currently supported is : BL1 -> BL2 -> BL31 -> OP-TEE -> uboot -> Xen -> Dom0 xtests can be run over Dom0 Signed-off-by:
Ruchika Gupta <ruchika.gupta@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Ruchika Gupta authored
QEMU supports the virtualization extensions only in emulated GICv3. So, add an option to build TF-A, OP-TEE with GICv3. To enable this, use GICV3=y with make. Signed-off-by:
Ruchika Gupta <ruchika.gupta@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
Commit c993ec99 ("qemu_v8.mk: add scripts_gdb kernel build target") has added "$(MAKE) -C $(LINUX_PATH) $(LINUX_COMMON_FLAGS) scripts_gdb" to the linux: recipe. Since linux: depends on linux-common which already runs "$(MAKE) -C $(LINUX_PATH) $(LINUX_COMMON_FLAGS)", and since $(LINUX_COMMON_FLAGS) contains "Image", the Image target is made twice. It is more efficient to remove the added line and add scripts_gdb to LINUX_COMMON_FLAGS instead. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Peter Griffin <peter.griffin@linaro.org>
-
- Jun 21, 2021
-
-
Ruchika Gupta authored
Add an option to build and use U-Boot instead of edk2 as BL33 in the bootflow. To use this option: make UBOOT=y Signed-off-by:
Ruchika Gupta <ruchika.gupta@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Tested-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 15, 2021
-
-
Jens Wiklander authored
Update the toolchain built with the buildroot sdk target used on non-x86_64 hosts to GCC version 10.2. Tested-by: Jerome Forissier <jerome@forissier.org> (QEMUv8 64/32, host uname -m: aarch64) Signed-off-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jens Wiklander authored
The needed precompiled toolchains provided by Arm are only available for x86_64 hosts. For all other host architectures we build it with Buildroot itself. Reviewed-by:
Jerome Forissier <jerome@forissier.org> Tested-by: Jerome Forissier <jerome@forissier.org> (QEMUv8 64/64, host uname -m: aarch64) Signed-off-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 14, 2021
-
-
Joakim Bech authored
Update the default GCC version to v10.2. Fixes: https://github.com/OP-TEE/optee_os/issues/4233 Signed-off-by:
Joakim Bech <joakim.bech@linaro.org> Tested-by: Joakim Bech <joakim.bech@linaro.org> (QEMU v7, v8) Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Jun 11, 2021
-
-
Jerome Forissier authored
ION has been deprecated in the upstream Linux kernel since v5.11 [1]. Consequently, it was removed from the linaro-swg/linux branch optee shortly after the release 3.13.0 of OP-TEE. Remove the corresponding kernel configuration flags which are now unused. Link: [1] https://github.com/torvalds/linux/commit/e722a295cf493388dae474745d30e91e1a2ec549 Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org> Reviewed-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
Jerome Forissier authored
Commit f1ca9916 ("qemu: disable kernel CONFIG_JFFS2_FS") was a workaround to an issue that does not seem to be reproducible anymore. That was more than five years ago, and the root cause was never clearly identified. Many things have changed since. I did not meet any problem running "make check" with CONFIG_JFFS2_FS=y on my local development machine (it is enabled by default in the Linux kernel's arch/arm/configs/qemu_defconfig). Therefore it seems safe to remove this CONFIG_JFFS2_FS=n. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org> Reviewed-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
- Jun 10, 2021
-
-
Etienne Carriere authored
Explicitly set CFG_TEE_BENCHMARK to either ON or OFF upon br-ext config switch BR2_PACKAGE_OPTEE_BENCHMARK_EXT and not rely on the default configuration in component CMake files. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
Etienne Carriere authored
New BR2_PACKAGE_OPTEE_CLIENT_EXT_RPMB_EMU boolean configuration switch in optee_client_ext package to set RPMB_EMU to ON or OFF in CMake build of optee_client repository. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
- May 06, 2021
-
-
Jerome Forissier authored
head.S is not used since commit 2e947f2e ("rpi3: use upstream ATF and U-boot"). Remove it, as well as RPI3_HEAD_BIN which was the path to the binary file after compilation. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- May 03, 2021
-
-
James Menetrey authored
The image generation for the board NXP® i.MX 8MQuad Evaluation Kit (EVK) has been refactored, so the rootfs can either be loaded from a RAMDisk or from a partition on a media storage such as an SD card, by enabling the compilation flag USE_PERSISTENT_ROOTFS. In addition, the image size is now dynamically allocated, depending on the size of the partition(s) that is/are part of the image. The flash-image target (part of the all target) produces a out/boot.img which can be copied to a SD card using the command: dd if=out/boot.img of=/dev/sdX bs=1M conv=fsync Where 'X' has to be adjusted to the device of the SD card when connected to the host system. ****** Please be careful to choose the correct device ****** ****** or there's a risk of damaging the host system. ****** Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org> Signed-off-by:
Jämes Ménétrey <james.menetrey@unine.ch>
-
Peter Griffin authored
This allows for example kaslr to be disabled when debugging the kernel using GDB. e.g. make QEMU_KERNEL_BOOTARGS=nokaslr run-only Signed-off-by:
Peter Griffin <peter.griffin@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
Peter Griffin authored
qemu-system-aarch64: -semihosting-config enable,target=native: warning: short-form boolean option 'enable' deprecated Signed-off-by:
Peter Griffin <peter.griffin@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
Peter Griffin authored
Enables the kernel gdb python helper scripts to be built that allows easier introspection of kernel data structures. e.g. lx-dmesg extracts dmesg. Signed-off-by:
Peter Griffin <peter.griffin@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Peter Griffin authored
This allows CONFIG_GDB_SCRIPTS=y to be used with optee-build and means we can more easily debug the kernel using gdb. CONFIG_GDB_SCRIPTS gives you python commands such as lx-dmesg (useful for hangs before any serial console output) and lx-symbols (useful for loading kernel module symbol information). Signed-off-by:
Peter Griffin <peter.griffin@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Peter Griffin authored
To avoid initramfs becoming huge with modules they can be mounted from host into the guest filesystem. (host) make linux-modules make QEMU_VIRTFS_ENABLE=y QEMU_USERNET_ENABLE=y run-only (qemu guest) mount -t 9p -o trans=virtio host /host ln -s /host/out/kernel_modules/lib/modules/ /lib/modules modprobe virtio-video Signed-off-by:
Peter Griffin <peter.griffin@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
- Apr 28, 2021
-
-
Etienne Carriere authored
Fix path of the DTB file for ED1 that wrongly pointed to the EV1 DTB file path. Fixes: 4dc6908c ("stm32mp1: define STM32MP15C-ED1") Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Etienne Carriere authored
STM32MP15C-ED1 is the child board plugged on EV1 mother board. ED1 can be used without its mother board with some interface restrictions (I.e. no USB-C). This change defines the platform flavor. The several components (optee_os, tf-a, u-boot, linux) already support ED1 DTS file identifier. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by:
Etienne Carriere <etienne.carriere@st.com> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Apr 26, 2021
-
-
Etienne Carriere authored
Enable SCMI support in the Linux kernel configuration of the stm32mp1 platform. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by:
Etienne Carriere <etienne.carriere@st.com> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Etienne Carriere authored
Change post-image.sh script for stm32Mp1 platform to not try to copy invalid files are symbolic links to DTB files previously built in the same build environment. This change makes the script more flexible. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Etienne Carriere authored
Change post-image.sh script for stm32mp1 platform to dereference the copied files. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Apr 22, 2021
-
-
Jerome Forissier authored
Clang 12.0.0 was released on April 15 2021 (with amd64 binaries uploaded on April 22). It notably fixes the following llvm-objdump warnings [1]: $ make COMPILER=clang optee-os 2>&1 | grep -B 1 objdump OBJDUMP out/arm/core/tee.dmp llvm-objdump: warning: 'out/arm/core/tee.elf': failed to parse debug information for out/arm/core/tee.elf -- OBJDUMP out/arm/ldelf/ldelf.dmp llvm-objdump: warning: 'out/arm/ldelf/ldelf.elf': failed to parse debug information for out/arm/ldelf/ldelf.elf -- OBJDUMP out/arm/ta/avb/023f8f1a-292a-432b-8fc4-de8471358067.dmp llvm-objdump: warning: 'out/arm/ta/avb/023f8f1a-292a-432b-8fc4-de8471358067.elf': failed to parse debug information for out/arm/ta/avb/023f8f1a-292a-432b-8fc4-de8471358067.elf -- OBJDUMP out/arm/ta/pkcs11/fd02c9da-306c-48c7-a49c-bbd827ae86ee.dmp llvm-objdump: warning: 'out/arm/ta/pkcs11/fd02c9da-306c-48c7-a49c-bbd827ae86ee.elf': failed to parse debug information for out/arm/ta/pkcs11/fd02c9da-306c-48c7-a49c-bbd827ae86ee.elf Link: [1] https://github.com/OP-TEE/optee_os/issues/3808 Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-