From e04da4c8e132f43218f18ad3b41479ca54bb9263 Mon Sep 17 00:00:00 2001 From: Chris Kay Date: Thu, 20 May 2021 13:22:43 +0100 Subject: build(fconf)!: clean up source collection Including the FCONF Makefile today automatically places the FCONF sources into the source list of the BL1 and BL2 images. This may be undesirable if, for instance, FCONF is only required for BL31. This change moves the BL1 and BL2 source appends out of the common Makefile to where they are required. BREAKING CHANGE: FCONF is no longer added to BL1 and BL2 automatically when the FCONF Makefile (`fconf.mk`) is included. When including this Makefile, consider whether you need to add `${FCONF_SOURCES}` and `${FCONF_DYN_SOURCES}` to `BL1_SOURCES` and `BL2_SOURCES`. Change-Id: Ic028eabb7437ae95a57c5bcb7821044d31755c77 Signed-off-by: Chris Kay --- lib/fconf/fconf.mk | 11 ++++++----- plat/arm/board/a5ds/platform.mk | 3 +++ plat/arm/board/fvp_ve/platform.mk | 3 +++ plat/arm/common/arm_common.mk | 3 +++ 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/lib/fconf/fconf.mk b/lib/fconf/fconf.mk index b01dc6fea..bc6f60840 100644 --- a/lib/fconf/fconf.mk +++ b/lib/fconf/fconf.mk @@ -1,12 +1,13 @@ # -# Copyright (c) 2019-2020, ARM Limited. All rights reserved. +# Copyright (c) 2019-2021, ARM Limited. All rights reserved. # # SPDX-License-Identifier: BSD-3-Clause # -# Add Firmware Configuration files +include common/fdt_wrappers.mk + FCONF_SOURCES := lib/fconf/fconf.c -FCONF_DYN_SOURCES := lib/fconf/fconf_dyn_cfg_getter.c +FCONF_SOURCES += ${FDT_WRAPPERS_SOURCES} -BL1_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} -BL2_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} +FCONF_DYN_SOURCES := lib/fconf/fconf_dyn_cfg_getter.c +FCONF_DYN_SOURCES += ${FDT_WRAPPERS_SOURCES} diff --git a/plat/arm/board/a5ds/platform.mk b/plat/arm/board/a5ds/platform.mk index 88c92bd89..4f873069a 100644 --- a/plat/arm/board/a5ds/platform.mk +++ b/plat/arm/board/a5ds/platform.mk @@ -8,6 +8,9 @@ include common/fdt_wrappers.mk include lib/fconf/fconf.mk +BL1_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} +BL2_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} + # Add `libfdt` and Arm common helpers required for Dynamic Config include lib/libfdt/libfdt.mk diff --git a/plat/arm/board/fvp_ve/platform.mk b/plat/arm/board/fvp_ve/platform.mk index da4a96d7b..f7eace833 100644 --- a/plat/arm/board/fvp_ve/platform.mk +++ b/plat/arm/board/fvp_ve/platform.mk @@ -127,6 +127,9 @@ endif # Firmware Configuration Framework sources include lib/fconf/fconf.mk +BL1_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} +BL2_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} + # Add `libfdt` and Arm common helpers required for Dynamic Config include lib/libfdt/libfdt.mk diff --git a/plat/arm/common/arm_common.mk b/plat/arm/common/arm_common.mk index 4d25bb2ab..78efb0f90 100644 --- a/plat/arm/common/arm_common.mk +++ b/plat/arm/common/arm_common.mk @@ -258,6 +258,9 @@ BL2_SOURCES += drivers/delay_timer/delay_timer.c \ # Firmware Configuration Framework sources include lib/fconf/fconf.mk +BL1_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} +BL2_SOURCES += ${FCONF_SOURCES} ${FCONF_DYN_SOURCES} + # Add `libfdt` and Arm common helpers required for Dynamic Config include lib/libfdt/libfdt.mk -- cgit v1.2.3