- Jan 25, 2021
-
-
Joakim Bech authored
In build.git we haven't been using Travis for almost 3 years and even if we would enable it again, it would probably not work since it's configured to run a very old Ubuntu release. We also stopped using this as a full regression build testing since a) our build time had increased and b) Travis had become more popular that prolonged the build time c) we often hit the run-time limit for free accounts. Because of this and to avoid confusion we should remove the Travis configuration. Signed-off-by:
Joakim Bech <joakim.bech@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Jan 22, 2021
-
-
Jerome Forissier authored
Set PYTHON3_ENABLE=TRUE so that EDK2 is built with Python 3. Python 2 is deprecated. Requires EDK2 tag edk2-stable201905 or later (older versions simply ignore PYTHON3_ENABLE). Signed-off-by:
Jerome Forissier <jerome@forissier.org> Reviewed-by:
Joakim Bech <joakim.bech@linaro.org>
-
Yunli Liu authored
while use cmd " make -f toolchain.mk -j2" for download gcc on ubuntu machine, error occur "/bin/sh: 1: Bad substitution make:*** [toolchain.mk:39:aarch64] Error 2" root reason is that sh of ubuntu point to dash, not bash. the code caused the error was "(cd $(1)/bin && for f in *-none-linux*; do ln -s $$f $${f//-none} ; done;) \" Signed-off-by:
Yunli Liu <994605959@qq.com> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Jan 21, 2021
-
-
Etienne Carriere authored
Embed opensc package for pkcs11-tool to play with the PKCS11 TA. Examples of using pkcs11-tool with PKCS11 TA: # Get tokens/slots info pkcs11-tool --show-info pkcs11-tool --list-token-slots pkcs11-tool --list-mechanisms # Initialize token and user PIN pkcs11-tool --init-token --label test-token --so-pin 1234567890 pkcs11-tool --label test-token --login --so-pin 1234567890 \ --init-pin --pin ABCDEFGHIJ # Generate a 2048bit RSA key pkcs11-tool --token-label test-token --pin ABCDEFGHIJ \ --keypairgen --key-type RSA:2048 --id 123 --label rsa-test-key # List token object pkcs11-tool --token-label test-token --list-objects Co-developed-by:
Gábor Székely <szvgabor@gmail.com> Signed-off-by:
Gábor Székely <szvgabor@gmail.com> Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Jan 18, 2021
-
-
Igor Opaniuk authored
Default enable CFG_ENABLE_EMBEDDED_TESTS for OP-TEE os for Poplar. Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by:
Igor Opaniuk <igor.opaniuk@gmail.com>
-
- Jan 12, 2021
-
-
Joakim Bech authored
In some cases depending on configurations etc 32MB is a bit tight for the boot partition. By increasing it to 64MB you are in a better position for not hitting the limit. Likewise you can store additional kernel versions in the boot partition which can be useful when debugging issues showing up in one kernel build, but not the other. Because of this the help text should state 64MB instead of 32MB. Signed-off-by:
Joakim Bech <joakim.bech@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Nov 17, 2020
-
-
Jerome Forissier authored
Conditionally enable TA C++ tests in the optee_test_ext Buildroot package. Some toolchains may not support this feature [1] so it is best to let the user decide. common.mk enables the tests by default when $(COMPILER) is not clang, assuming that the default GCC toolchain from toolchain.mk is used (which works fine with the C++ tests). The command line option is 'make WITH_CXX_TESTS=y|n'. Link: https://github.com/OP-TEE/optee_test/issues/458 Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
Conditionally enable Thread Local Storage tests in the optee_test_ext Buildroot package. Some toolchains may not support this feature [1] so it is best to let the user decide. common.mk enables the tests by default since the GCC toolchain from toolchain.mk supports them. The command line option is 'make WITH_TLS_TESTS=y|n'. Link: https://github.com/OP-TEE/optee_test/commit/30efcbeaf8864d0f2a5c4be593a5411001fab31b Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Oct 06, 2020
-
-
Jens Wiklander authored
By passing GP_PACKAGE=<path to GP-suite archive> optee_test is configured to compile with the GlobalPlatform test suite. The test suite is unpacked and patched in the build directory as part of the buildroot process when building optee_test. Acked-by:
Joakim Bech <joakim.bech@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org> Signed-off-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Sep 28, 2020
-
-
Jerome Forissier authored
Updates the toolchain to Arm's GCC 9.2 [1]. Note the following difference compared to the previous release (8.3), which is documented in the release notes: "Changed toolchain naming convention to match standard target triplet naming convention, with vendor name being none." For example, arm-linux-gnueabihf-gcc is now arm-none-linux-gnueabihf-gcc and aarch64-linux-gnu-gcc is now aarch64-none-linux-gnu-gcc. This renaming seems pretty much specific to the Arm build of GCC, and the latest Debian and Ubuntu distributions provide GCC 9.x or 10.x cross-compilers with the usual naming convention. Therefore, and to limit the impact of the name change, let's simply create symbolic links after the toolchain packages are extracted. Link: [1] https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads Signed-off-by:
Jerome Forissier <jerome@forissier.org> Tested-by: Jerome Forissier <jerome@forissier.org> (QEMU, QEMUv8, HiKey, HiKey960) Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by:
Etienne Carriere <etienne.carriere@linaro.org> Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (stm32mp1)
-
Jerome Forissier authored
The optee_examples_ext and optee_test_ext packages are currently using the python3 command found in $PATH. It is more correct to use the Buildroot one. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
Jerome Forissier authored
Package [host-]python-pycrypto was removed in Buildroot release 2020.05 [1] and replaced with [host-]python3-pycryptodomex. Link: [1] https://git.busybox.net/buildroot/commit/?id=7ef76ed32fcd447391e26d33a555ff5dab6dc48e Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by:
Etienne Carriere <etienne.carriere@linaro.org>
-
- Sep 22, 2020
-
-
Etienne Carriere authored
Remove check-clean target dependency in clean since meaningless for stm32mp1 platform build environment. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
Etienne Carriere authored
Replace option partition-type with option partition-type-uuid as the later is intended to GPT partitioning which is what stm32mp1 relies on. This change prevents genimage tool, since its v13 release, from creating a hybrid MBR partition table that is not supported by TF-A boot stage used by the platform. Signed-off-by:
Etienne Carriere <etienne.carriere@linaro.org> Acked-by:
Jerome Forissier <jerome@forissier.org>
-
- Sep 01, 2020
-
-
Jerome Forissier authored
The optee_test TAs are built by a $(wildcard ...) loop. This is unreliable because there is no guarantee that os_test_lib and os_test_lib_dl will appear before os_test in the list. Yet os_test depends on the libraries being built first. Fix the issue by explicitely listing the libraries and TAs with dependencies in the correct order, then using a wildcard for the other TAs. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- Aug 27, 2020
-
-
Jerome Forissier authored
common.mk currently assumes that optee_os defaults to a 32-bit build for the TEE core, in other words that CFG_ARM64_core is not set by default and that only a 64-bit build requires setting CFG_ARM64_core=y. Let's set CFG_ARM64_core=n explicitly when a 32-bit build is desired. This will let platforms such as QEMUv8 (PLATFORM=vexpress-qemu_armv8a) to select a 64-bit core by default in optee_os which makes more sense since (1) build.git would not support 32-bit until parent commit ("qemu_v8: do not force COMPILE_S_KERNEL := 64"), and (2) 32-bit is usually tested with QEMU (PLATFORM=vexpress-qemu_virt). Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
The 32-bit TEE core works fine on the QEMUv8 platform so set COMPILE_S_KERNEL to 64 by default but let the user change this value to 32 if needed ('make COMPILE_S_KERNEL=32 COMPILE_S_USER=32'). This also implies removing 'CFG_ARM64_core=y' which is currently added unconditionally to OPTEE_OS_COMMON_FLAGS by qemu_v8.mk. It is already taken care of by common.mk. Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
32-bit non-secure user space works fine with the QEMUv8 build so set COMPILE_NS_USER to 64 by default but let the user change this value to 32 if needed ('make COMPILE_NS_USER=32'). Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
Jerome Forissier authored
32-bit TAs work fine with the QEMUv8 build so set COMPILE_S_USER to 64 by default but let the user change this value to 32 if needed ('make COMPILE_S_USER=32'). Signed-off-by:
Jerome Forissier <jerome@forissier.org> Acked-by:
Jens Wiklander <jens.wiklander@linaro.org>
-
- 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>
-