summaryrefslogtreecommitdiff
path: root/src/arch/arm64
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/arm64')
-rw-r--r--src/arch/arm64/Makefile.inc20
-rw-r--r--src/arch/arm64/armv8/Makefile.inc14
-rw-r--r--src/arch/arm64/armv8/lib/Makefile.inc4
3 files changed, 38 insertions, 0 deletions
diff --git a/src/arch/arm64/Makefile.inc b/src/arch/arm64/Makefile.inc
index b2b627c07f..1bc6c1113e 100644
--- a/src/arch/arm64/Makefile.inc
+++ b/src/arch/arm64/Makefile.inc
@@ -76,6 +76,26 @@ $(objcbfs)/bootblock.debug: $$(bootblock-objs) $(obj)/config.h
endif # CONFIG_ARCH_BOOTBLOCK_ARM64
+###############################################################################
+# verification stage
+###############################################################################
+
+ifeq ($(CONFIG_ARCH_VERSTAGE_ARM64),y)
+
+$(objcbfs)/verstage.debug: $$(verstage-objs) $$(VB2_LIB) $(obj)/mainboard/$(MAINBOARDDIR)/memlayout.verstage.ld $(obj)/config.h
+ @printf " LINK $(subst $(obj)/,,$(@))\n"
+ $(LD_verstage) --gc-sections -static -o $@ -L$(obj) --start-group $(verstage-objs) $(VBS_LIB) --end-group -T $(obj)/mainboard/$(MAINBOARDDIR)/memlayout.verstage.ld
+
+verstage-$(CONFIG_EARLY_CONSOLE) += early_console.c
+verstage-y += div0.c
+verstage-y += eabi_compat.c
+verstage-y += ../../lib/memset.c
+verstage-y += ../../lib/memcpy.c
+verstage-y += ../../lib/memmove.c
+verstage-y += stages.c
+
+endif # CONFIG_ARCH_VERSTAGE_ARM64
+
################################################################################
# romstage
################################################################################
diff --git a/src/arch/arm64/armv8/Makefile.inc b/src/arch/arm64/armv8/Makefile.inc
index ae9f38dd75..5532b47a14 100644
--- a/src/arch/arm64/armv8/Makefile.inc
+++ b/src/arch/arm64/armv8/Makefile.inc
@@ -46,6 +46,20 @@ bootblock-S-ccopts += $(armv8_asm_flags)
endif
################################################################################
+## verstage
+################################################################################
+ifeq ($(CONFIG_ARCH_VERSTAGE_ARMV8_64),y)
+
+verstage-y += cache.c
+verstage-y += cpu.S
+verstage-y += exception.c
+
+verstage-c-ccopts += $(armv8_flags)
+verstage-S-ccopts += $(armv8_asm_flags)
+
+endif
+
+################################################################################
## romstage
################################################################################
ifeq ($(CONFIG_ARCH_ROMSTAGE_ARMV8_64),y)
diff --git a/src/arch/arm64/armv8/lib/Makefile.inc b/src/arch/arm64/armv8/lib/Makefile.inc
index 0622593e4f..7e647bd6bc 100644
--- a/src/arch/arm64/armv8/lib/Makefile.inc
+++ b/src/arch/arm64/armv8/lib/Makefile.inc
@@ -26,6 +26,10 @@ ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARMV8_64),y)
bootblock-y += $(lib_access)
endif
+ifeq ($(CONFIG_ARCH_VERSTAGE_ARMV8_64),y)
+verstage-y += $(lib_access)
+endif
+
ifeq ($(CONFIG_ARCH_ROMSTAGE_ARMV8_64),y)
romstage-y += $(lib_access)
endif