boot: optee-os: enable RISC-V (64-bit) architecture

OP-TEE OS and TAs can run on RISC-V (64-bit) machines, so allow
optee-os to be compiled for the new architecture.

Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
[Arnout:
 - set CROSS_COMPILE_ta_rv64 even on arm builds;
 - ARCH=arm for aarch64.
]
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
This commit is contained in:
Yu Chien Peter Lin
2024-08-17 19:22:03 +08:00
committed by Arnout Vandecappelle
parent 49c041aa27
commit 7c5b6c1e9f
2 changed files with 15 additions and 1 deletions

View File

@@ -1,6 +1,6 @@
config BR2_TARGET_OPTEE_OS
bool "optee_os"
depends on BR2_ARM_CPU_ARMV8A || BR2_ARM_CPU_ARMV7A
depends on BR2_ARM_CPU_ARMV8A || BR2_ARM_CPU_ARMV7A || BR2_RISCV_64
help
OP-TEE OS provides the secure world boot image and the trust
application development kit of the OP-TEE project. OP-TEE OS

View File

@@ -54,16 +54,26 @@ OPTEE_OS_MAKE_OPTS = \
CROSS_COMPILE_core="$(TARGET_CROSS)" \
CROSS_COMPILE_ta_arm64="$(TARGET_CROSS)" \
CROSS_COMPILE_ta_arm32="$(TARGET_CROSS)" \
CROSS_COMPILE_ta_rv64="$(TARGET_CROSS)" \
PYTHON3="$(HOST_DIR)/bin/python3"
ifeq ($(BR2_riscv),y)
OPTEE_OS_MAKE_OPTS += \
ARCH=riscv \
CFG_RV64_core=y \
CFG_USER_TA_TARGETS=ta_rv64
else
ifeq ($(BR2_aarch64),y)
OPTEE_OS_MAKE_OPTS += \
ARCH=arm \
CFG_ARM64_core=y \
CFG_USER_TA_TARGETS=ta_arm64
else
OPTEE_OS_MAKE_OPTS += \
ARCH=arm \
CFG_ARM32_core=y
endif
endif
# Get mandatory PLAFORM and optional PLATFORM_FLAVOR and additional
# variables
@@ -77,6 +87,10 @@ OPTEE_OS_MAKE_OPTS += $(call qstrip,$(BR2_TARGET_OPTEE_OS_ADDITIONAL_VARIABLES))
# root path otherwise the output directory path depends on the target
# platform name.
OPTEE_OS_BUILDDIR_OUT = out
ifeq ($(BR2_riscv),y)
OPTEE_OS_LOCAL_SDK = $(OPTEE_OS_BUILDDIR_OUT)/export-ta_rv64
OPTEE_OS_SDK = $(STAGING_DIR)/lib/optee/export-ta_rv64
endif
ifeq ($(BR2_aarch64),y)
OPTEE_OS_LOCAL_SDK = $(OPTEE_OS_BUILDDIR_OUT)/export-ta_arm64
OPTEE_OS_SDK = $(STAGING_DIR)/lib/optee/export-ta_arm64