fix(build): include platform mk earlier

Move platform.mk inclusion in top level Makefile to permit a platform
specifying BRANCH_PROTECTION option.

Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
Change-Id: I1f662f82cd949eedfdbb61b9f66de15c46fb3106
This commit is contained in:
Olivier Deprez 2025-01-03 13:38:50 +01:00
parent 875423de49
commit 696ed16877
5 changed files with 11 additions and 13 deletions

View file

@ -513,6 +513,12 @@ ifeq ($(SPMC_AT_EL3),1)
endif endif
endif endif
################################################################################
# Include the platform specific Makefile after the SPD Makefile (the platform
# makefile may use all previous definitions in this file)
################################################################################
include ${PLAT_MAKEFILE_FULL}
################################################################################ ################################################################################
# Process BRANCH_PROTECTION value and set # Process BRANCH_PROTECTION value and set
# Pointer Authentication and Branch Target Identification flags # Pointer Authentication and Branch Target Identification flags
@ -557,12 +563,6 @@ ifeq (${ENABLE_PAUTH}, 1)
BL_COMMON_SOURCES += lib/extensions/pauth/pauth_helpers.S BL_COMMON_SOURCES += lib/extensions/pauth/pauth_helpers.S
endif endif
################################################################################
# Include the platform specific Makefile after the SPD Makefile (the platform
# makefile may use all previous definitions in this file)
################################################################################
include ${PLAT_MAKEFILE_FULL}
################################################################################ ################################################################################
# Setup arch_features based on ARM_ARCH_MAJOR, ARM_ARCH_MINOR provided from # Setup arch_features based on ARM_ARCH_MAJOR, ARM_ARCH_MINOR provided from
# platform. # platform.

View file

@ -2454,7 +2454,7 @@ pointer authentication keys.
The value should be obtained from a reliable source of randomness. The value should be obtained from a reliable source of randomness.
This function is only needed if ARMv8.3 pointer authentication is used in the This function is only needed if ARMv8.3 pointer authentication is used in the
Trusted Firmware by building with ``BRANCH_PROTECTION`` option set to non-zero. Trusted Firmware by building with ``BRANCH_PROTECTION`` option set to 1, 2 or 3.
Function : plat_get_syscnt_freq2() [mandatory] Function : plat_get_syscnt_freq2() [mandatory]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View file

@ -363,7 +363,7 @@ BL31_SOURCES += lib/extensions/ras/std_err_record.c \
endif endif
# Pointer Authentication sources # Pointer Authentication sources
ifeq (${ENABLE_PAUTH}, 1) ifeq ($(BRANCH_PROTECTION),$(filter $(BRANCH_PROTECTION),1 2 3))
PLAT_BL_COMMON_SOURCES += plat/arm/common/aarch64/arm_pauth.c PLAT_BL_COMMON_SOURCES += plat/arm/common/aarch64/arm_pauth.c
endif endif

View file

@ -318,9 +318,8 @@ BL31_SOURCES += lib/extensions/ras/std_err_record.c \
endif endif
# Pointer Authentication sources # Pointer Authentication sources
ifeq (${ENABLE_PAUTH}, 1) ifeq ($(BRANCH_PROTECTION),$(filter $(BRANCH_PROTECTION),1 2 3))
PLAT_BL_COMMON_SOURCES += plat/arm/common/aarch64/arm_pauth.c \ PLAT_BL_COMMON_SOURCES += plat/arm/common/aarch64/arm_pauth.c
lib/extensions/pauth/pauth_helpers.S
endif endif
ifeq (${SPD},spmd) ifeq (${SPD},spmd)

View file

@ -149,9 +149,8 @@ $(error "This is an AArch64-only port; CTX_INCLUDE_AARCH32_REGS must be disabled
endif endif
# Pointer Authentication sources # Pointer Authentication sources
ifeq (${ENABLE_PAUTH}, 1) ifeq ($(BRANCH_PROTECTION),$(filter $(BRANCH_PROTECTION),1 2 3))
PLAT_BL_COMMON_SOURCES += plat/arm/common/aarch64/arm_pauth.c PLAT_BL_COMMON_SOURCES += plat/arm/common/aarch64/arm_pauth.c
CTX_INCLUDE_PAUTH_REGS := 1
endif endif
endif endif