mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2026-07-06 01:41:19 +00:00
This change forces LD to sort all input sections by alignment when allocating them within an output section. This is done in some places explicitly in the linker scripts today, but this makes sure we don't miss any easy targets. Change-Id: Id70be2a5399c4c75fcf2a736cab0991d20a6b863 Signed-off-by: Chris Kay <chris.kay@arm.com>
57 lines
1.5 KiB
Makefile
57 lines
1.5 KiB
Makefile
#
|
|
# Copyright (c) 2013-2023, Arm Limited and Contributors. All rights reserved.
|
|
#
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
#
|
|
|
|
BL2_SOURCES += bl2/bl2_image_load_v2.c \
|
|
bl2/bl2_main.c \
|
|
bl2/${ARCH}/bl2_arch_setup.c \
|
|
lib/locks/exclusive/${ARCH}/spinlock.S \
|
|
plat/common/${ARCH}/platform_up_stack.S \
|
|
${MBEDTLS_SOURCES}
|
|
|
|
ifeq (${ARCH},aarch64)
|
|
BL2_SOURCES += common/aarch64/early_exceptions.S
|
|
endif
|
|
|
|
ifneq ($(findstring gcc,$(notdir $(LD))),)
|
|
BL2_LDFLAGS += -Wl,--sort-section=alignment
|
|
else ifneq ($(findstring ld,$(notdir $(LD))),)
|
|
BL2_LDFLAGS += --sort-section=alignment
|
|
endif
|
|
|
|
ifeq (${ENABLE_RME},1)
|
|
# Using RME, run BL2 at EL3
|
|
include lib/gpt_rme/gpt_rme.mk
|
|
|
|
BL2_SOURCES += bl2/${ARCH}/bl2_rme_entrypoint.S \
|
|
bl2/${ARCH}/bl2_el3_exceptions.S \
|
|
bl2/${ARCH}/bl2_run_next_image.S \
|
|
${GPT_LIB_SRCS}
|
|
BL2_DEFAULT_LINKER_SCRIPT_SOURCE := bl2/bl2.ld.S
|
|
|
|
else ifeq (${RESET_TO_BL2},0)
|
|
# Normal operation, no RME, no BL2 at EL3
|
|
BL2_SOURCES += bl2/${ARCH}/bl2_entrypoint.S
|
|
BL2_DEFAULT_LINKER_SCRIPT_SOURCE := bl2/bl2.ld.S
|
|
|
|
else
|
|
# BL2 at EL3, no RME
|
|
BL2_SOURCES += bl2/${ARCH}/bl2_el3_entrypoint.S \
|
|
bl2/${ARCH}/bl2_el3_exceptions.S \
|
|
bl2/${ARCH}/bl2_run_next_image.S \
|
|
lib/cpus/${ARCH}/cpu_helpers.S \
|
|
lib/cpus/errata_report.c
|
|
|
|
ifeq (${DISABLE_MTPMU},1)
|
|
BL2_SOURCES += lib/extensions/mtpmu/${ARCH}/mtpmu.S
|
|
endif
|
|
|
|
ifeq (${ARCH},aarch64)
|
|
BL2_SOURCES += lib/cpus/aarch64/dsu_helpers.S
|
|
endif
|
|
|
|
BL2_DEFAULT_LINKER_SCRIPT_SOURCE := bl2/bl2_el3.ld.S
|
|
endif
|