diff options
author | Benjamin Doron <benjamin.doron@9elements.com> | 2023-06-14 18:43:59 -0400 |
---|---|---|
committer | Lean Sheng Tan <sheng.tan@9elements.com> | 2024-05-25 06:55:31 +0000 |
commit | f27b22ab4e7001c4de40d721a5e0be46b8349a06 (patch) | |
tree | d97563fd0e1a0b1da68fe8448003fcbdf408473a /src/arch/arm64/Makefile.mk | |
parent | c2ed5eaa12fb3f0da5bdf2acb6f4a688e9b374d3 (diff) |
arch/arm64: Support calling a trusted monitor
Implement support for generating an SMC to call a trusted monitor. Some
functions are provided to read the SoC ID from the monitor, if
supported.
Change-Id: I158db0b971aba722b3995d52162146aa406d1644
Signed-off-by: Benjamin Doron <benjamin.doron@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/78284
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/arch/arm64/Makefile.mk')
-rw-r--r-- | src/arch/arm64/Makefile.mk | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/arch/arm64/Makefile.mk b/src/arch/arm64/Makefile.mk index 897dae525f..6499283c08 100644 --- a/src/arch/arm64/Makefile.mk +++ b/src/arch/arm64/Makefile.mk @@ -30,6 +30,9 @@ bootblock-y += eabi_compat.c decompressor-$(CONFIG_ARM64_USE_ARCH_TIMER) += arch_timer.c bootblock-$(CONFIG_ARM64_USE_ARCH_TIMER) += arch_timer.c bootblock-y += transition.c transition_asm.S +ifneq ($(CONFIG_ARM64_CURRENT_EL),3) +bootblock-y += smc.c smc_asm.S +endif decompressor-y += memset.S bootblock-y += memset.S @@ -69,6 +72,9 @@ verstage-y += memcpy.S verstage-y += memmove.S verstage-y += transition.c transition_asm.S +ifneq ($(CONFIG_ARM64_CURRENT_EL),3) +verstage-y += smc.c smc_asm.S +endif endif # CONFIG_ARCH_VERSTAGE_ARM64 @@ -88,6 +94,9 @@ romstage-y += memmove.S romstage-y += ramdetect.c romstage-y += romstage.c romstage-y += transition.c transition_asm.S +ifneq ($(CONFIG_ARM64_CURRENT_EL),3) +romstage-y += smc.c smc_asm.S +endif rmodules_arm64-y += memset.S rmodules_arm64-y += memcpy.S @@ -109,6 +118,7 @@ ifeq ($(CONFIG_ARCH_RAMSTAGE_ARM64),y) ramstage-y += div0.c ramstage-y += eabi_compat.c ramstage-y += boot.c +ramstage-$(CONFIG_GENERATE_SMBIOS_TABLES) += smbios.c ramstage-y += tables.c ramstage-y += ramdetect.c ramstage-$(CONFIG_ARM64_USE_ARCH_TIMER) += arch_timer.c @@ -117,6 +127,9 @@ ramstage-y += memcpy.S ramstage-y += memmove.S ramstage-$(CONFIG_ARM64_USE_ARM_TRUSTED_FIRMWARE) += bl31.c ramstage-y += transition.c transition_asm.S +ifneq ($(CONFIG_ARM64_CURRENT_EL),3) +ramstage-y += smc.c smc_asm.S +endif ramstage-$(CONFIG_PAYLOAD_FIT_SUPPORT) += fit_payload.c ramstage-$(CONFIG_HAVE_ACPI_TABLES) += acpi.c ramstage-y += dma.c |