security/vboot/Makefile.inc: Update regions-for-file function

This patch updates regions-for-file function in the
security/vboot/Makefile.inc to support adding a CBFS file into
required FMAP REGIONs in a flexible manner. The file that needs to be
added to specific REGIONs, those regions list should be specified in the
regions-for-file-{CBFS_FILE_TO_BE_ADDED} variable.

For example, if a file foo.bin needs to be added in FW_MAIN_B and COREBOOT,
then below code needs to be added in a Makefile.inc.
	regions-for-file-foo := FW_MAIN_B,COREBOOT
	cbfs-file-y := foo
	foo-file := foo.bin
	foo-type := raw

TEST=Verified on hatch

Signed-off-by: Sridhar Siricilla <sridhar.siricilla@intel.com>
Change-Id: I1f5c22b3d9558ee3c5daa2781a115964f8d2d83b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/43766
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
This commit is contained in:
Sridhar Siricilla 2020-07-23 23:41:36 +05:30 committed by Subrata Banik
parent 02bab4ddcf
commit 77025b3f56
1 changed files with 6 additions and 5 deletions

View File

@ -171,8 +171,9 @@ endif
# All other files will be installed into RO and RW regions # All other files will be installed into RO and RW regions
# Use $(sort) to cut down on extra spaces that would be translated to commas # Use $(sort) to cut down on extra spaces that would be translated to commas
regions-for-file = $(subst $(spc),$(comma),$(sort \ regions-for-file = $(subst $(spc),$(comma),$(sort \
$(if $(filter \ $(if $(value regions-for-file-$(1)), \
$(if $(filter y,$(CONFIG_VBOOT_STARTS_IN_ROMSTAGE)), \ $(regions-for-file-$(1)), \
$(if $(filter $(if $(filter y,$(CONFIG_VBOOT_STARTS_IN_ROMSTAGE)), \
%/romstage,) \ %/romstage,) \
mts \ mts \
%/verstage \ %/verstage \
@ -186,15 +187,15 @@ regions-for-file = $(subst $(spc),$(comma),$(sort \
$(call strip_quotes,$(CONFIG_RO_REGION_ONLY)) \ $(call strip_quotes,$(CONFIG_RO_REGION_ONLY)) \
,$(1)),COREBOOT,\ ,$(1)),COREBOOT,\
$(if $(filter \ $(if $(filter \
$(call strip_quotes,$(CONFIG_RWA_REGION_ONLY)) \ $(call strip_quotes,$(CONFIG_RWA_REGION_ONLY)) \
,$(1)), FW_MAIN_A, \ ,$(1)), FW_MAIN_A, \
$(if $(filter \ $(if $(filter \
$(call strip_quotes,$(CONFIG_RWB_REGION_ONLY)) \ $(call strip_quotes,$(CONFIG_RWB_REGION_ONLY)) \
,$(1)), FW_MAIN_B, \ ,$(1)), FW_MAIN_B, \
$(if $(filter \ $(if $(filter \
$(call strip_quotes,$(CONFIG_RW_REGION_ONLY)) \ $(call strip_quotes,$(CONFIG_RW_REGION_ONLY)) \
,$(1)), $(RW_PARTITIONS), $(VBOOT_PARTITIONS) ) \ ,$(1)), $(RW_PARTITIONS), $(VBOOT_PARTITIONS) ) \
))))) ))))))
CONFIG_GBB_HWID := $(call strip_quotes,$(CONFIG_GBB_HWID)) CONFIG_GBB_HWID := $(call strip_quotes,$(CONFIG_GBB_HWID))
CONFIG_GBB_BMPFV_FILE := $(call strip_quotes,$(CONFIG_GBB_BMPFV_FILE)) CONFIG_GBB_BMPFV_FILE := $(call strip_quotes,$(CONFIG_GBB_BMPFV_FILE))