From 46306d135e5aab14073eece713d38e8c827c58ae Mon Sep 17 00:00:00 2001 From: Kory Maincent Date: Tue, 13 Dec 2022 12:11:54 +0100 Subject: [PATCH] boot/optee-os: add out-of-source OPTEE-OS device tree support Similarly to U-Boot, this patch adds the ability to copy in and build out-of-source device tree sources during an OPTEE-OS build. To build the external device tree source file, the OP-TEE OS configuration must refer to it with the CFG_EMBED_DTB_SOURCE_FILE option and no platform flavor needs to be specified. Signed-off-by: Kory Maincent Signed-off-by: Thomas Petazzoni --- boot/optee-os/Config.in | 11 +++++++++++ boot/optee-os/optee-os.mk | 5 +++++ 2 files changed, 16 insertions(+) diff --git a/boot/optee-os/Config.in b/boot/optee-os/Config.in index 8bcce22306..617ff93c44 100644 --- a/boot/optee-os/Config.in +++ b/boot/optee-os/Config.in @@ -130,6 +130,17 @@ config BR2_TARGET_OPTEE_OS_PLATFORM_FLAVOR Value for the optional PLATFORM_FLAVOR build directive provided to OP-TEE OS. +config BR2_TARGET_OPTEE_OS_CUSTOM_DTS_PATH + string "Device Tree Source file paths" + help + Space-separated list of paths to device tree source files + that will be copied to core/arch/arm/dts/ before starting the + build. + + To use this device tree source file, the OP-TEE OS configuration + must refer to it with the CFG_EMBED_DTB_SOURCE_FILE option and + no platform flavor needs to be specified. + config BR2_TARGET_OPTEE_OS_ADDITIONAL_VARIABLES string "Additional build variables" help diff --git a/boot/optee-os/optee-os.mk b/boot/optee-os/optee-os.mk index 38b0d367ef..33b4e2e1ab 100644 --- a/boot/optee-os/optee-os.mk +++ b/boot/optee-os/optee-os.mk @@ -84,6 +84,8 @@ endif OPTEE_OS_IMAGE_FILES = $(call qstrip,$(BR2_TARGET_OPTEE_OS_CORE_IMAGES)) +OPTEE_OS_CUSTOM_DTS_PATH = $(call qstrip,$(BR2_TARGET_OPTEE_OS_CUSTOM_DTS_PATH)) + ifeq ($(BR2_TARGET_OPTEE_OS_CORE),y) define OPTEE_OS_BUILD_CORE $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) O=$(OPTEE_OS_BUILDDIR_OUT) \ @@ -120,6 +122,9 @@ endef endif # BR2_TARGET_OPTEE_OS_SDK define OPTEE_OS_BUILD_CMDS + $(if $(OPTEE_OS_CUSTOM_DTS_PATH), + cp -f $(OPTEE_OS_CUSTOM_DTS_PATH) $(@D)/core/arch/arm/dts/ + ) $(OPTEE_OS_BUILD_CORE) $(OPTEE_OS_BUILD_SDK) endef