From 6d720f38e06d14cc8a89635f66dc124dcd5ac150 Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Tue, 8 Dec 2015 17:00:23 -0600 Subject: cbfs/vboot: remove firmware component support The Chrome OS verified boot path supported multiple CBFS instances in the boot media as well as stand-alone assets sitting in each vboot RW slot. Remove the support for the stand-alone assets and always use CBFS accesses as the way to retrieve data. This is implemented by adding a cbfs_locator object which is queried for locating the current CBFS. Additionally, it is also signalled prior to when a program is about to be loaded by coreboot for the subsequent stage/payload. This provides the same opportunity as previous for vboot to hook in and perform its logic. BUG=chromium:445938 BRANCH=None TEST=Built and ran on glados. CQ-DEPEND=CL:307121,CL:31691,CL:31690 Change-Id: I6a3a15feb6edd355d6ec252c36b6f7885b383099 Signed-off-by: Aaron Durbin Reviewed-on: https://review.coreboot.org/12689 Tested-by: build bot (Jenkins) Tested-by: Raptor Engineering Automated Test Stand Reviewed-by: Patrick Georgi Reviewed-by: Stefan Reinauer --- src/arch/x86/mmap_boot.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/arch') diff --git a/src/arch/x86/mmap_boot.c b/src/arch/x86/mmap_boot.c index 850e62d1f6..ae35451b3c 100644 --- a/src/arch/x86/mmap_boot.c +++ b/src/arch/x86/mmap_boot.c @@ -14,7 +14,6 @@ */ #include -#include #include #include #include @@ -30,7 +29,7 @@ const struct region_device *boot_device_ro(void) return &boot_dev.rdev; } -int cbfs_boot_region_properties(struct cbfs_props *props) +static int cbfs_master_header_props(struct cbfs_props *props) { struct cbfs_header header; int32_t offset; @@ -63,7 +62,10 @@ int cbfs_boot_region_properties(struct cbfs_props *props) props->size -= header.bootblocksize; props->size = ALIGN_DOWN(props->size, 64); - printk(BIOS_DEBUG, "CBFS @ %zx size %zx\n", props->offset, props->size); - return 0; } + +const struct cbfs_locator cbfs_master_header_locator = { + .name = "Master Header Locator", + .locate = cbfs_master_header_props, +}; -- cgit v1.2.3