diff options
author | Gang Chen <gang.c.chen@intel.com> | 2022-11-25 15:02:28 +0800 |
---|---|---|
committer | Lean Sheng Tan <sheng.tan@9elements.com> | 2024-10-23 10:29:59 +0000 |
commit | 1c088e6d620e2255d506d718b45afa5d48ecdff5 (patch) | |
tree | b2d985dd5f67fe2c3ffe1c3454266fad7d5b7734 /src/cpu/intel | |
parent | 374c9e09c1c4880490cfdd7486c13373cb4b72cc (diff) |
util/cbfstool: Add Intel platform boot policy support
Intel platform boot policy setting blob is linked into FIT table
as an FIT4 entry. It is required for server executing CBnT and/or
PFR without a PCH.
Please refer to chapter 4.6 of the document in below link:
https://www.intel.com/content/dam/www/public/us/en/documents/
guides/fit-bios-specification.pdf
Tool usage:
./util/cbfstool/ifittool -f <binary> -a -n <cbfs name> -t 4 \
-r COREBOOT -s <max table size>
Change-Id: I0f9fc61341430b1a35a44d50b108dcfaf31cd11c
Signed-off-by: Gang Chen <gang.c.chen@intel.com>
Signed-off-by: Li, Jincheng <jincheng.li@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84305
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/cpu/intel')
-rw-r--r-- | src/cpu/intel/fit/Kconfig | 14 | ||||
-rw-r--r-- | src/cpu/intel/fit/Makefile.mk | 13 |
2 files changed, 27 insertions, 0 deletions
diff --git a/src/cpu/intel/fit/Kconfig b/src/cpu/intel/fit/Kconfig index a14a1f798f..5ffedeb431 100644 --- a/src/cpu/intel/fit/Kconfig +++ b/src/cpu/intel/fit/Kconfig @@ -12,3 +12,17 @@ config CPU_INTEL_NUM_FIT_ENTRIES depends on CPU_INTEL_FIRMWARE_INTERFACE_TABLE help This option selects the number of empty entries in the FIT table. + +config HAVE_PBP_BIN + bool "Add Intel platform boot policy file" + default n + depends on SOC_INTEL_COMMON_IBL_BASE + help + The platform boot policy file. Platform boot policy (type 4) entry + in the FIT is required for server executing CBnT and/or PFR without + a PCH. + +config PBP_BIN_PATH + string "Path and filename of the platform boot policy file" + default "site-local/mainboard/\$(MAINBOARDDIR)/pbp.bin" + depends on HAVE_PBP_BIN diff --git a/src/cpu/intel/fit/Makefile.mk b/src/cpu/intel/fit/Makefile.mk index a86a22e6d6..f405c57744 100644 --- a/src/cpu/intel/fit/Makefile.mk +++ b/src/cpu/intel/fit/Makefile.mk @@ -50,4 +50,17 @@ endif # CONFIG_INTEL_ADD_TOP_SWAP_BOOTBLOCK endif # CONFIG_CPU_MICROCODE_CBFS_NONE +# Platform Boot Policy +ifeq ($(CONFIG_HAVE_PBP_BIN),y) + +cbfs-files-y += pbp.bin +pbp.bin-file := $(call strip_quotes,$(CONFIG_PBP_BIN_PATH)) +pbp.bin-type := raw + +$(call add_intermediate, add_pbp_fit, set_fit_ptr $(IFITTOOL)) + @printf " UPDATE-FIT Platform Boot Policy binary\n" + $(IFITTOOL) -f $< -a -n pbp.bin -t 4 -s $(CONFIG_CPU_INTEL_NUM_FIT_ENTRIES) -r COREBOOT + +endif # CONFIG_HAVE_PBP_BIN + endif # CONFIG_UPDATE_IMAGE |