- Aug 14, 2020
-
-
Roland Nagy authored
Usage: set QEMU_PSS_ENABLE=y and adjust QEMU_PSS_HOST_DIR. It also requires QEMU_VIRTFS_ENABLE to be set to "y". Also added a buildroot post-script which appends lines to /etc/fstab, so shared directories can be automatically mounted if QEMU_VIRTFS_AUTOMOUNT and QEMU_PSS_AUTOMOUNT are set to "y". Signed-off-by:
Roland Nagy <rnagy@xmimx.tk> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Tested-by:
Jerome Forissier <jerome@forissier.org>
-
- Aug 13, 2020
-
-
Jens Wiklander authored
The path to the simulator when unpacked has changed in recent FVP foundation model. Adjusting the path to match the latest version 11.11_34. Reviewed-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Aug 12, 2020
-
-
Jerome Forissier authored
The message displayed by "make check" when an assertion failure is detected is as follows: $ PATH=~/work/clang-10.0.0/bin:$PATH make -j10 COMPILER=clang check [...] Starting QEMU... done, guest is booted. Running: xtest... '##########!!! TEE core assertion failed: 'assertion 'maps[map_idx].sz == sz' failed at ldelf/ta_elf.c:1351 in ta_elf_print_mappings() make: *** [Makefile:221: check] Error 1 $ The "TEE core assertion failed:' part is not needed and possibly misleading (in this case the assertion occurred in ldelf which is arguably not "TEE core"). Remove it. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 29, 2020
-
-
Victor Chong authored
The EDK2/UEFI welcome message when booting into fastboot mode has changed since a while ago [1], but we never updated it correspondingly in our Makefile, so do it now. LINK: [1] https://github.com/96boards-hikey/edk2/commit/f5d1102d7bf42ede641520c5c228a0e51139a58e Signed-off-by:
Victor Chong <victor.chong@linaro.org> Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Jun 10, 2020
-
-
Etienne Carriere authored
Update U-Boot config fragment to explicitly state no flash or MTD device is used by U-Boot and the U-Boot environment is not stored outside U-Boot image. This change is required since U-Boot v2019.01. It successfully boots Qemu/armv7-A with older and newer U-Boot releases up to v2020.04, and at least also up to latest U-boot RC tag v2020.07-rc3. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Joakim Bech <joakim.bech@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jun 05, 2020
-
-
Etienne Carriere authored
Build OP-TEE for STM32MP1 based platforms. Currently supports platforms STM32MP157A-DK1, STM32MP157C-DK2 and STM32MP157C-EV1 using a SDcard as boot media. Default build targets board STM32MP157C-DK2: # make One can specify a target board with PLATFORM configuration switch: # make PLATFORM=stm32mp1-157A_DK1 # make PLATFORM=stm32mp1-157C_DK2 # make PLATFORM=stm32mp1-157C_EV1 Refer to br-ext/board/stmicroelectronics/stm32mp1-tz/readme.txt for mode information. TF-A, OP-TEE OS, U-Boot and Linux kernel are built outside Builrdoot. All other embedded components are built through Buildroot. Buildroot generates the final SDcard binary image file to be loaded raw in the target SD card. The image includes a GPT partition table. See br-ext/board/stmicroelectronics/stm32mp1-tz/genimage-*.cfg for more details. Note on U-Boot defconfig: from v2019.10 up to v2020.07-rc2, one shall use stm32mp15_optee_defconfig. From v2020-rc3 onward, one shall use stm32mp15_trusted_defconfig. For flexibility, stm32mp1.mk supports both. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
- Jun 02, 2020
-
-
Jerome Forissier authored
Let hisi-idt.py decide which python interpreter is used based on the hashbang line. Calling "python" can cause compatibility problems when "python" is Python 2 but the script needs Python3. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
- May 29, 2020
-
-
Etienne Carriere authored
Rename BENCHMARK_APP_PATH to OPTEE_BENCHMARK_PATH for consistency with the other OP-TEE packages. Remove unused BENCHMARK_APP_OUT and LIBYAML_LIB_OUT that were related to OP-TEE benchmark package. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Etienne Carriere authored
Busybox is no more built as a single package but built as part of the buildroot environment. This change removes busybox rules and resources from Makefile scripts. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Etienne Carriere authored
Define OPTEE_OS_PLATFORM for each supported platform to define the target platform for which OP-TEE OS package is built. It is used in common.mk (and ti/ti-common.mk). Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Etienne Carriere authored
Change packages to default define a _SITE configuration as expected when _SITE_METHOD is defined. This change aligns OP-TEE client/examples/test_ext packages with OP-TEE os_ext/benchmark_ext packages regarding this _SITE_METHOD/_SITE management. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Etienne Carriere authored
Rename OP-TEE packages in br-ext with a _ext suffix so that they do not conflict with the OP-TEE packages from Buildroot. This change essentially renames Buildroot configuration switches BR2_OPTEE_* to BR2_OPTEE_*_EXT_* without changing the current build process. This change is needed for OP-TEE build environment to synchronize with Buildroot GIT version [1] or later in the Buildroot integration tree. [1] points where OP-TEE packages were introduced in Buildroot, right after 2019.02 is released. This was tested with all Buildroot release tags from 2018.11 to 2020.02, and recent 2020.05-rc1. Link: [1] https://git.buildroot.net/buildroot/commit/?id=da49312af9e0c3e7f6df50e7d6f77e1fa2921b7a Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- May 26, 2020
-
-
Jerome Forissier authored
Add "make clang-toolchains" to download and extract Clang 9.0.1 into $(ROOT)/clang-9.0.1. Usage: $ make clang-toolchains Then use the following command to build OP-TEE and TAs with Clang: $ PATH=$PWD/../clang-9.0.1/bin:$PATH make COMPILER=clang Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Victor Chong <victor.chong@linaro.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
- May 12, 2020
-
-
Igor Opaniuk authored
1. Drop workarounds for GCC 8.x 2. Provide eMMC as env variable, which is used in extlinux.conf distroboot script. 3. Use default defconfig for all arm64. 4. Merge additional poplar.conf Acked-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Igor Opaniuk <igor.opaniuk@gmail.com>
-
Igor Opaniuk authored
Provide configuration for ION mem allocator, needed for SDP. Acked-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Igor Opaniuk <igor.opaniuk@gmail.com>
-
- May 06, 2020
-
-
Joakim Bech authored
Fix outdated links. Fixes: #414 Signed-off-by:
Joakim Bech <joakim.bech@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
- Mar 09, 2020
-
-
Igor Opaniuk authored
Add initial verdin.mk for the minimal setup for OP-TEE testing. This setup uses latest mainline TF-A (v.2.2) / U-Boot (v2020.03) / Linux (5.6-rc). Verdin i.MX8M Mini boot sequence: BootROM -> SPL -> TF-A (BL31) -> OP-TEE (BL32) | -> U-Boot (BL33) -> Linux TF-A(bl31.bin), U-Boot proper and OP-TEE (tee.bin) are packed in FIT image, which is parsed by SPL. Deploying: 1. Flasing flash.bin (IMX ready-to-boot image): > dhcp && tftpboot ${loadaddr} flash.bin > setexpr blkcnt ${filesize} + 0x1ff > setexpr blkcnt ${blkcnt} / 0x200 > mmc dev 0 1 && mmc write ${loadaddr} 0x2 ${blkcnt} 2. Boot Linux kernel via TFTP/NFS: -> setenv serverip <ip_of_your_server> -> setenv nfsroot /path/to/nfs/root -> setenv fdt_file fsl-imx8mm-verdin-dev.dtb -> setenv bootargs "console=${console},${baudrate} root=/dev/nfs \ ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp" -> tftp ${loadaddr} ${image}; tftp ${fdt_addr} ${fdt_file}; -> booti ${loadaddr} - ${fdt_addr} Test results: +----------------------------------------------------- 24600 subtests of which 0 failed 98 test cases of which 0 failed 0 test cases were skipped TEE test application done! Acked-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Igor Opaniuk <igor.opaniuk@gmail.com>
-
- Feb 25, 2020
-
-
Jerome Forissier authored
If an error occurs when building a TA, the error does not stop the build. It may therefore go unnoticed if files have been generated previously. This patch adds "set -e" to address this issue. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jan 31, 2020
-
-
Stefan Wiehler authored
Currently one has to patch the PetaLinux installation to add these missing dependencies. However, there should be no need to touch the installation, which is often not feasible in e.g. corporate environments anyway. Different OP-TEE releases require different dependencies; this patch has been tested for all releases down to 3.5.0. Signed-off-by:
Stefan Wiehler <stefan.wiehler@missinglinkelectronics.com> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
- Jan 13, 2020
-
-
Joakim Bech authored
The GitHub templates and actions are useful to the "build" git also, therefore recursively sync up (copy) the .github folder from optee_os. Note, that here we have also done some changes to the GitHub actions. In optee_os we have two different actions files, one for issues and one for pull requests. It seems like it is possible to combine them into a single action file as shown in the actions examples [1]. Another change is that we also exclude marking issues stale if they already have the label "bug". Note that we're only excluding issues, since PR's should not have the "bug" label to start with. Link: [1] https://github.com/actions/stale/blob/master/README.md Signed-off-by:
Joakim Bech <joakim.bech@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Jan 09, 2020
-
-
Albert Schwarzkopf authored
Adds /dev/urandom from the host as a source for random data so the guest does not block on calls to getentropy() etc. Signed-off-by:
Albert Schwarzkopf <githubc@quitesimple.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
Albert Schwarzkopf authored
Adds CONFIG_HW_RANDOM_VIRTIO so the guest gets entropy from the host Signed-off-by:
Albert Schwarzkopf <githubc@quitesimple.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
- Jan 08, 2020
-
-
Jerome Forissier authored
We currently do not copy any kernel module into our root FS, they are not needed. Therefore, drop the "modules" target when building the kernel to save compile time. Signed-off-by:
Jerome Forissier <jerome.forissier@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
Use the cc-option macro to deal with compilers that do not support the -Wno-error=stringop-truncation option. Fixes: 46f7be20 ("hikey960: fix EDK2 build with GCC 9.x") Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
Use cc-option to support older as well as recent compilers. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
Adds the cc-option macro to be used to detect wether a C compiler supports a given option or not. It is similar to the macro added in optee_os [1] except that it takes the compiler as the first argument for flexibility. Link: [1] https://github.com/OP-TEE/optee_os/commit/989ac108b0ef Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jan 07, 2020
-
-
Jerome Forissier authored
Actually fix the build error mentioned in the below commit. The variable BUILD_CC is set at the wrong place (I think I had it set as an environment variable when I tested this, which is why it would work anyways). Fixes: 1e8d0b5a ("hikey960: fix EDK2 build with GCC 9.x") Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Pipat Methavanitpong authored
This commit adds building SCP firmware for the DeveloperBox. It defines a new baremetal toolchain "aarch32-none" using GNU Embedded Toolchain for Arm 9-2019-q4-major to build. SCP firmware uses SCMI to provide power and performance management. This commit also enables SCMI driver in TF-A to communicate with SCP. Acked-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Pipat Methavanitpong <pipat.methavanitpong@linaro.org>
-
- Dec 17, 2019
-
-
Jerome Forissier authored
The current EDK2 code fails to build with GCC 9.x: make[3]: Entering directory '/home/jerome/work/optee_repo_hikey960/edk2/BaseTools/Source/C/GenVtf' gcc -c -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-unused-result -nostdlib -c -g -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/ -O2 GenVtf.c -o GenVtf.o In file included from /usr/include/string.h:494, from ../Common/FvLib.h:21, from GenVtf.c:19: In function ‘strncpy’, inlined from ‘ConvertVersionInfo’ at GenVtf.c:132:7: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error: ‘__builtin_strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation] 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ GenVtf.c: In function ‘ConvertVersionInfo’: GenVtf.c:130:14: note: length computed here 130 | Length = strlen(Str); | ^~~~~~~~~~~ In file included from /usr/include/string.h:494, from ../Common/FvLib.h:21, from GenVtf.c:19: In function ‘strncpy’, inlined from ‘CreateFitTableAndInitialize’ at GenVtf.c:1532:3: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:10: error: ‘__builtin_strncpy’ output truncated before terminating nul copying 8 bytes from a string of the same length [-Werror=stringop-truncation] 106 | return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors make[3]: *** [../Makefiles/footer.makefile:27: GenVtf.o] Error 1 This error was found with Ubuntu 19.10 (comes with GCC 9.2.1). The HiKey960 EDK2 repository [1] has not received any update in the past year, I am not sure it is still maintained. There is apparently some support for HiKey960 in the upstream EDK2 repositories [2] and [3], but I could not get my board to boot with upstream code. So, a quick fix seems in order. [1] https://github.com/96boards-hikey/edk2.git [2] https://github.com/tianocore/edk2.git [3] https://github.com/tianocore/edk2-platforms.git Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Victor Chong <victor.chong@linaro.org>
-
- Nov 22, 2019
-
-
Jerome Forissier authored
The kernel image for QEMUv8 is Image, not zImage (there is no compressed image support in Linux for arm64). Fix the makefile. Fixes: c54f4f51 ("qemu, qemu_v8: do not build Linux modules") Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
The QEMU and QEMUv8 builds do not need any kernel module to boot and run xtest etc. so we can save build time by only building the kernel image by default. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org> Reviewed-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Nov 08, 2019
-
-
Victor Chong authored
Introduce EDK2_TOOLCHAIN and EDK2_ARCH and fvp, qemu_v8 and synquacer builds to better control some build variables. Signed-off-by:
Victor Chong <victor.chong@linaro.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
Victor Chong authored
Make TF-A and EDK2 builds for fvp and qemu_v8 configurable using the DEBUG flag instead of hardcoding. Signed-off-by:
Victor Chong <victor.chong@linaro.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
Victor Chong authored
Allow control of DEBUG flag from a single common location (common.mk) rather than all over platform specific makefiles. Signed-off-by:
Victor Chong <victor.chong@linaro.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
- Oct 11, 2019
-
-
Jerome Forissier authored
Updates qemu_v8.mk and qemu-check.exp so that "make check" and "make check-only" are supported for QEMUv8, as they are for QEMU. Signed-off-by:
Jerome Forissier <jerome@forissier.org>
-
- Oct 10, 2019
-
-
Michael Grand authored
This commit adds support for Ultra96 board. It relies on ultra96 flavor added to OP-TEE ZynqMP platform. zynqmp makefile is modified in the following way: - Default BSP rootfs is replaced by a minimal rootfs which supports zcu10x and Ultra96 boards. - New petalinux-package target available to generate BOOT.BIN file. Signed-off-by:
Michael Grand <michael.grand@gmail.com> Acked-by:
Joakim Bech <joakim.bech@linaro.org>
-
Markus S. Wamser authored
Depending on the size of the string in the variable TARGET_CONFIGURE_OPTS and number of examples, the size of the string in OPTEE_EXAMPLES_BUILD_TAS produced by evaluation of the $(foreach...) statement may exceed the maximum length for execvp() calls from make (128KiB). Delaying the enumeration of targets by passing a loop-statement for the shell expands the variables only once and keep the length of the string independent of the number of examples. Signed-off-by:
Markus S. Wamser <markus.wamser@mixed-mode.de> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Markus S. Wamser authored
Depending on the size of the string in the variable TARGET_CONFIGURE_OPTS and number of tests, the size of the string in OPTEE_TEST_BUILD_TAS produced by evaluation of the $(foreach...) statement may exceed the maximum length for execvp() calls from make (128KiB). Delaying the enumeration of targets by passing a loop-statement for the shell expands the variables only once and keep the length of the string independent of the number of tests. Signed-off-by:
Markus S. Wamser <markus.wamser@mixed-mode.de> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Oct 09, 2019
-
-
Igor Opaniuk authored
Provide TF-A path for l-loader Signed-off-by:
Igor Opaniuk <igor.opaniuk@gmail.com> Reviewed-by:
Jerome Forissier <jerome@forissier.org>
-
- Oct 08, 2019
-
-
Joakim Bech authored
In commit (7fbd6ce2) "common.mk: buildroot: append BR2_ variables to config automatically", flags were refactored and the old BUILDROOT_GETTY_PORT got replaced with BR2_TARGET_GENERIC_GETTY_PORT. TI platforms (am43xx, am57xx and dra7xx) were'nt updated hence the wrong ttyAMA0 were used instead of ttyS0 (am43xx and dra7xx) and ttyS2 (am57xx). By setting BR2_TARGET_GENERIC_GETTY_PORT properly, this issue gets resolved. Signed-off-by:
Joakim Bech <joakim.bech@linaro.org> Reviewed-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Andrew F. Davis <afd@ti.com>
-