diff options
author | Vincent Guittot <vincent.guittot@linaro.org> | 2023-11-28 15:52:21 +0100 |
---|---|---|
committer | Vincent Guittot <vincent.guittot@linaro.org> | 2024-02-09 09:58:51 +0100 |
commit | 2ea7a07db77131a0f7e4291fe7e695a19384c28a (patch) | |
tree | 959e4130fec3b1f66114226857f08074372a26b1 | |
parent | d02b394e6544ea9c457094b2ccc81a92cdabde85 (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
@@ -144,6 +144,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 ################################################################################ @@ -312,6 +313,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 @@ -352,6 +354,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 @@ -452,6 +460,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." @@ -546,8 +559,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 $$@" @@ -567,6 +581,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 @@ -596,6 +632,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 28bac18..d7d69ee 100644 --- a/plat/arm/fvp/platform.mk +++ b/plat/arm/fvp/platform.mk @@ -60,6 +60,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)) @@ -84,6 +88,7 @@ $(eval $(call add_define,TFTF_DEFINES,FVP_MAX_PE_PER_CPU)) 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)) @@ -105,6 +110,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. |