From 889959890ca9e5f4db12335f079c5a3de4caae1d Mon Sep 17 00:00:00 2001 From: Felix Held Date: Thu, 28 Jan 2021 22:43:52 +0100 Subject: drivers/intel/fsp2_0: factor out and improve UPD signature check In case of a mismatch print both the UPD signature in the FSP and the expected signature and then calls die(), since it shouldn't try calling into the wrong FSP binary for the platform. Signed-off-by: Justin Frodsham Signed-off-by: Felix Held Change-Id: I469836e09db6024ecb448a5261439c66d8e65daf Reviewed-on: https://review.coreboot.org/c/coreboot/+/50090 Tested-by: build bot (Jenkins) Reviewed-by: Marshall Dawson Reviewed-by: Furquan Shaikh --- src/drivers/intel/fsp2_0/silicon_init.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'src/drivers/intel/fsp2_0/silicon_init.c') diff --git a/src/drivers/intel/fsp2_0/silicon_init.c b/src/drivers/intel/fsp2_0/silicon_init.c index 08494603f5..26ff59dbf2 100644 --- a/src/drivers/intel/fsp2_0/silicon_init.c +++ b/src/drivers/intel/fsp2_0/silicon_init.c @@ -88,9 +88,7 @@ static void do_silicon_init(struct fsp_header *hdr) supd = (FSPS_UPD *) (hdr->cfg_region_offset + hdr->image_base); - if (supd->FspUpdHeader.Signature != FSPS_UPD_SIGNATURE) - die_with_post_code(POST_INVALID_VENDOR_BINARY, - "Invalid FSPS signature\n"); + fsp_verify_upd_header_signature(supd->FspUpdHeader.Signature, FSPS_UPD_SIGNATURE); /* Disallow invalid config regions. Default settings are likely bad * choices for coreboot, and different sized UPD from what the region -- cgit v1.2.3