diff options
author | Vincent Guittot <vincent.guittot@linaro.org> | 2023-11-28 15:52:21 +0100 |
---|---|---|
committer | Vincent Guittot <vincent.guittot@linaro.org> | 2023-11-30 08:53:10 +0100 |
commit | 890a5aca7d74c98961f1aa7e2940bd8639c544f5 (patch) | |
tree | 75801e36629c176b4fb6967ea432f018f49b84fd | |
parent | 0c6d2b491fbdb0998f1f79ec05383a9234007a6c (diff) |
Include scmi compilation entry
Include scmi compilation.
Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
-rw-r--r-- | Makefile | 44 | ||||
-rw-r--r-- | plat/arm/fvp/platform.mk | 6 |
2 files changed, 48 insertions, 2 deletions
@@ -143,6 +143,7 @@ endif ifeq (${ARCH}-${PLAT},$(filter ${ARCH}-${PLAT},aarch64-fvp aarch64-tc)) include spm/cactus/cactus.mk include spm/ivy/ivy.mk +include spm/scmi/cactus.mk endif ################################################################################ @@ -308,6 +309,7 @@ NS_BL1U_CFLAGS += -mbranch-protection=${BP_OPTION} NS_BL2U_CFLAGS += -mbranch-protection=${BP_OPTION} CACTUS_MM_CFLAGS += -mbranch-protection=${BP_OPTION} CACTUS_CFLAGS += -mbranch-protection=${BP_OPTION} +SCMI_CFLAGS += -mbranch-protection=${BP_OPTION} IVY_CFLAGS += -mbranch-protection=${BP_OPTION} REALM_CFLAGS += -mbranch-protection=${BP_OPTION} endif @@ -348,6 +350,12 @@ CACTUS_CFLAGS += ${COMMON_CFLAGS} -fpie CACTUS_ASFLAGS += ${COMMON_ASFLAGS} CACTUS_LDFLAGS += ${COMMON_LDFLAGS} $(PIE_LDFLAGS) +#SCMI_SOURCES += ${LIBC_SRCS} +#SCMI_INCLUDES += ${PLAT_INCLUDES} +SCMI_CFLAGS += ${COMMON_CFLAGS} -fpie +SCMI_ASFLAGS += ${COMMON_ASFLAGS} +SCMI_LDFLAGS += ${COMMON_LDFLAGS} $(PIE_LDFLAGS) + IVY_SOURCES += ${LIBC_SRCS} IVY_INCLUDES += ${PLAT_INCLUDES} IVY_CFLAGS += ${COMMON_CFLAGS} -fpie @@ -448,6 +456,11 @@ cactus: @echo "ERROR: $@ is supported only on AArch64 FVP or TC." @exit 1 +.PHONY: scmi +scmi: + @echo "ERROR: $@ is supported only on AArch64 FVP or TC." + @exit 1 + .PHONY: ivy ivy: @echo "ERROR: $@ is supported only on AArch64 FVP or TC." @@ -542,8 +555,9 @@ $(ELF) : $(OBJS) $(LINKERFILE) @echo 'const char build_message[] = "Built : "__TIME__", "__DATE__; \ const char version_string[] = "${VERSION_STRING}";' | \ $$(CC) $$(${IMG_PREFIX}_CFLAGS) ${${IMG_PREFIX}_INCLUDES} ${${IMG_PREFIX}_DEFINES} -c -xc - -o $(BUILD_DIR)/build_message.o - $$(Q)$$(LD) -o $$@ $$(${IMG_PREFIX}_LDFLAGS) -Map=$(MAPFILE) \ - -T $(LINKERFILE) $(BUILD_DIR)/build_message.o $(OBJS) + $$(Q)$$(LD) -o $$@ -Map=$(MAPFILE) \ + -T $(LINKERFILE) $(BUILD_DIR)/build_message.o $(OBJS) \ + $$(${IMG_PREFIX}_LDFLAGS) $(DUMP) : $(ELF) @echo " OD $$@" @@ -563,6 +577,28 @@ all : $(1) endef +define COPY_IMG + $(eval IMG_PREFIX := $(call uppercase, $(1))) + $(eval BUILD_DIR := ${BUILD_PLAT}/$(1)) + $(eval BIN := $(BUILD_PLAT)/$(1).bin) + +$(BUILD_DIR) : + $$(Q)mkdir -p "$$@" + +$(BIN) : + @echo " BIN $$@" + cp ${EXTERNAL_SCMI}/scmi.bin $$@ + cp ${EXTERNAL_SCMI}/scmi.dtb ${BUILD_PLAT}/ + cp ${EXTERNAL_SCMI}/scmi.dts ${BUILD_PLAT}/ + @echo + @echo "Built $$@ successfully" + @echo + +.PHONY : $(1) +$(1) : $(BUILD_DIR) $(BIN) + +endef + ifeq (${ARCH},aarch32) ARCH_TESTS_SKIP_LIST := tftf/tests/aarch32_tests_to_skip.txt endif @@ -592,6 +628,10 @@ endif ifeq (${ARCH}-${PLAT},aarch64-fvp) $(eval $(call MAKE_IMG,cactus_mm)) $(eval $(call MAKE_IMG,cactus)) + $(eval $(call MAKE_IMG,scmi)) +ifneq (${EXTERNAL_SCMI},) + $(eval $(call COPY_IMG,scmi)) +endif $(eval $(call MAKE_IMG,ivy)) endif diff --git a/plat/arm/fvp/platform.mk b/plat/arm/fvp/platform.mk index 864e008..31268a5 100644 --- a/plat/arm/fvp/platform.mk +++ b/plat/arm/fvp/platform.mk @@ -63,6 +63,10 @@ $(eval $(call add_define,CACTUS_DEFINES,FVP_CLUSTER_COUNT)) $(eval $(call add_define,CACTUS_DEFINES,FVP_MAX_CPUS_PER_CLUSTER)) $(eval $(call add_define,CACTUS_DEFINES,FVP_MAX_PE_PER_CPU)) +$(eval $(call add_define,SCMI_DEFINES,FVP_CLUSTER_COUNT)) +$(eval $(call add_define,SCMI_DEFINES,FVP_MAX_CPUS_PER_CLUSTER)) +$(eval $(call add_define,SCMI_DEFINES,FVP_MAX_PE_PER_CPU)) + $(eval $(call add_define,CACTUS_MM_DEFINES,FVP_CLUSTER_COUNT)) $(eval $(call add_define,CACTUS_MM_DEFINES,FVP_MAX_CPUS_PER_CLUSTER)) $(eval $(call add_define,CACTUS_MM_DEFINES,FVP_MAX_PE_PER_CPU)) @@ -88,6 +92,7 @@ $(eval $(call add_define,TFTF_DEFINES,TFTF_MAX_IMAGE_SIZE)) PA_SIZE := 36 $(eval $(call add_define,CACTUS_DEFINES,PA_SIZE)) +$(eval $(call add_define,SCMI_DEFINES,PA_SIZE)) $(eval $(call add_define,IVY_DEFINES,PA_SIZE)) $(eval $(call add_define,NS_BL1U_DEFINES,PA_SIZE)) $(eval $(call add_define,NS_BL2U_DEFINES,PA_SIZE)) @@ -109,6 +114,7 @@ PLAT_SOURCES := drivers/arm/gic/arm_gic_v2v3.c \ plat/arm/fvp/plat_setup.c CACTUS_SOURCES += plat/arm/fvp/${ARCH}/plat_helpers.S +#SCMI_SOURCES += plat/arm/fvp/${ARCH}/plat_helpers.S IVY_SOURCES += plat/arm/fvp/${ARCH}/plat_helpers.S # Firmware update is implemented on FVP. |