aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--payloads/libpayload/include/sysinfo.h1
-rw-r--r--payloads/libpayload/libc/coreboot.c5
-rw-r--r--src/lib/coreboot_table.c23
-rw-r--r--src/security/vboot/common.c2
-rw-r--r--src/security/vboot/misc.h1
5 files changed, 3 insertions, 29 deletions
diff --git a/payloads/libpayload/include/sysinfo.h b/payloads/libpayload/include/sysinfo.h
index c05be7c159..4b929f1390 100644
--- a/payloads/libpayload/include/sysinfo.h
+++ b/payloads/libpayload/include/sysinfo.h
@@ -96,7 +96,6 @@ struct sysinfo_t {
struct cb_mainboard *mainboard;
void *vboot_workbuf;
- uint32_t vboot_workbuf_size;
#if CONFIG(LP_ARCH_X86)
int x86_rom_var_mtrr_index;
diff --git a/payloads/libpayload/libc/coreboot.c b/payloads/libpayload/libc/coreboot.c
index 2ff2090c19..f6e937923e 100644
--- a/payloads/libpayload/libc/coreboot.c
+++ b/payloads/libpayload/libc/coreboot.c
@@ -86,10 +86,7 @@ static void cb_parse_serial(void *ptr, struct sysinfo_t *info)
static void cb_parse_vboot_workbuf(unsigned char *ptr, struct sysinfo_t *info)
{
- struct lb_range *vbwb = (struct lb_range *)ptr;
-
- info->vboot_workbuf = (void *)(uintptr_t)vbwb->range_start;
- info->vboot_workbuf_size = vbwb->range_size;
+ info->vboot_workbuf = get_cbmem_ptr(ptr);
}
static void cb_parse_vbnv(unsigned char *ptr, struct sysinfo_t *info)
diff --git a/src/lib/coreboot_table.c b/src/lib/coreboot_table.c
index 8b18dfb18e..af9f6599c5 100644
--- a/src/lib/coreboot_table.c
+++ b/src/lib/coreboot_table.c
@@ -218,23 +218,6 @@ static void lb_vbnv(struct lb_header *header)
}
#endif /* CONFIG_CHROMEOS */
-static void lb_vboot_workbuf(struct lb_header *header)
-{
- struct lb_range *vbwb;
- void *wb = vboot_get_workbuf();
-
- vbwb = (struct lb_range *)lb_new_record(header);
- vbwb->tag = LB_TAG_VBOOT_WORKBUF;
- vbwb->size = sizeof(*vbwb);
- vbwb->range_start = (uintptr_t)wb;
- /*
- * TODO(chromium:1021452): Since cbmem size of vboot workbuf is now
- * always a known value, we hardcode the value of range_size here.
- * Ultimately we'll want to move this to add_cbmem_pointers() below.
- */
- vbwb->range_size = VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE;
-}
-
__weak uint32_t board_id(void) { return UNDEFINED_STRAPPING_ID; }
__weak uint32_t ram_code(void) { return UNDEFINED_STRAPPING_ID; }
__weak uint32_t sku_id(void) { return UNDEFINED_STRAPPING_ID; }
@@ -349,6 +332,7 @@ static void add_cbmem_pointers(struct lb_header *header)
{CBMEM_ID_WIFI_CALIBRATION, LB_TAG_WIFI_CALIBRATION},
{CBMEM_ID_TCPA_LOG, LB_TAG_TCPA_LOG},
{CBMEM_ID_FMAP, LB_TAG_FMAP},
+ {CBMEM_ID_VBOOT_WORKBUF, LB_TAG_VBOOT_WORKBUF},
};
int i;
@@ -558,11 +542,6 @@ static uintptr_t write_coreboot_table(uintptr_t rom_table_end)
lb_vbnv(head);
#endif
- if (CONFIG(VBOOT)) {
- /* pass along the vboot workbuf address. */
- lb_vboot_workbuf(head);
- }
-
/* Add strapping IDs if available */
lb_board_id(head);
lb_ram_code(head);
diff --git a/src/security/vboot/common.c b/src/security/vboot/common.c
index 517a1d4d34..c21fe155a5 100644
--- a/src/security/vboot/common.c
+++ b/src/security/vboot/common.c
@@ -27,7 +27,7 @@
static struct vb2_context *vboot_ctx;
-void *vboot_get_workbuf(void)
+static void *vboot_get_workbuf(void)
{
void *wb = NULL;
diff --git a/src/security/vboot/misc.h b/src/security/vboot/misc.h
index 9dd482e846..d03e76eea7 100644
--- a/src/security/vboot/misc.h
+++ b/src/security/vboot/misc.h
@@ -25,7 +25,6 @@ struct vb2_shared_data;
/*
* Source: security/vboot/common.c
*/
-void *vboot_get_workbuf(void);
struct vb2_context *vboot_get_context(void);
/*