diff options
author | Yatharth Kochar <yatharth.kochar@arm.com> | 2015-10-12 12:33:47 +0100 |
---|---|---|
committer | Yatharth Kochar <yatharth.kochar@arm.com> | 2015-12-09 17:41:19 +0000 |
commit | 0191262d23b922bd6e15736e8970149f5d3c52d2 (patch) | |
tree | 0ef57fba1bb2f07aa732a1101600a260f9bcfdb2 /make_helpers/build_macros.mk | |
parent | 2d4d22031170128d4609afc235df19935d4c3ce2 (diff) |
FWU: Add support for `fwu_fip` target
Firmware update feature needs a new FIP called `fwu_fip.bin` that
includes Secure(SCP_BL2U, BL2U) and Normal world(NS_BL2U) images
along with the FWU_CERT certificate in order for NS_BL1U to load
the images and help the Firmware update process to complete.
This patch adds the capability to support the new target `fwu_fip`
which includes above mentioned FWU images in the make files.
The new target of `fwu_fip` and its dependencies are included for
compilation only when `TRUSTED_BOARD_BOOT` is defined.
Change-Id: Ie780e3aac6cbd0edfaff3f9af96a2332bd69edbc
Diffstat (limited to 'make_helpers/build_macros.mk')
-rw-r--r-- | make_helpers/build_macros.mk | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/make_helpers/build_macros.mk b/make_helpers/build_macros.mk index 3624ff6c..08cb4b12 100644 --- a/make_helpers/build_macros.mk +++ b/make_helpers/build_macros.mk @@ -98,7 +98,7 @@ define FIP_ADD_PAYLOAD $(eval $(if $(3),FIP_DEPS += $(3))) endef -# CERT_ADD_CMD_OPT adds a new command line option to the cert_create invokation +# CERT_ADD_CMD_OPT adds a new command line option to the cert_create invocation # $(1) = parameter filename # $(2) = cert_create command line option for the specified parameter # $(3) = input parameter (false if empty) @@ -123,6 +123,38 @@ check_$(1): $$(if $(value $(1)),,$$(error "Platform '${PLAT}' requires $(1). Please set $(1) to point to the right file")) endef +# FWU_FIP_ADD_PAYLOAD appends the command line arguments required by the FIP tool +# to package a new FWU payload. Optionally, it adds the dependency on this payload +# $(1) = payload filename (e.g. ns_bl2u.bin) +# $(2) = command line option for the specified payload (e.g. --ns_bl2u) +# $(3) = fip target dependency (optional) (e.g. ns_bl2u) +define FWU_FIP_ADD_PAYLOAD + $(eval $(if $(3),FWU_FIP_DEPS += $(3))) + $(eval FWU_FIP_ARGS += $(2) $(1)) +endef + +# FWU_CERT_ADD_CMD_OPT adds a new command line option to the cert_create invocation +# $(1) = parameter filename +# $(2) = cert_create command line option for the specified parameter +# $(3) = input parameter (false if empty) +define FWU_CERT_ADD_CMD_OPT + $(eval $(if $(3),FWU_CRT_DEPS += $(1))) + $(eval FWU_CRT_ARGS += $(2) $(1)) +endef + +# FWU_FIP_ADD_IMG allows the platform to pack a binary image in the FWU FIP +# $(1) build option to specify the image filename (BL2U, NS_BL2U, etc) +# $(2) command line option for the fip_create tool (bl2u, ns_bl2u, etc) +# Example: +# $(eval $(call FWU_FIP_ADD_IMG,BL2U,--bl2u)) +define FWU_FIP_ADD_IMG + FWU_CRT_DEPS += check_$(1) + FWU_FIP_DEPS += check_$(1) + $(call FWU_FIP_ADD_PAYLOAD,$(value $(1)),$(2)) + +check_$(1): + $$(if $(value $(1)),,$$(error "Platform '${PLAT}' requires $(1). Please set $(1) to point to the right file")) +endef ################################################################################ # Auxiliary macros to build TF images from sources |