coreboot_tables: reduce redundant data structures
There are three coreboot table tags that all define some kind of memory
region, and each has their own homologous struct. I'm about to add a
fourth so I'll just clean this up and turn it into a generic struct
lb_range instead.
Change-Id: Id148b2737d442e0636d2c05e74efa1fdf844a0d3
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/167154
(cherry picked from commit 22d82ffa3f5500fbc1b785e343add25e61f4f194)
Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com>
Reviewed-on: http://review.coreboot.org/6456
Tested-by: build bot (Jenkins)
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
diff --git a/payloads/libpayload/include/coreboot_tables.h b/payloads/libpayload/include/coreboot_tables.h
index 911157b..5132d50 100644
--- a/payloads/libpayload/include/coreboot_tables.h
+++ b/payloads/libpayload/include/coreboot_tables.h
@@ -184,12 +184,14 @@
struct cb_gpio gpios[0];
};
-#define CB_TAG_VDAT 0x0015
-struct cb_vdat {
+#define CB_TAG_VDAT 0x0015
+#define CB_TAG_VBNV 0x0019
+#define CB_TAG_VBOOT_HANDOFF 0x0020
+struct lb_range {
uint32_t tag;
- uint32_t size; /* size of the entire entry */
- uint64_t vdat_addr;
- uint32_t vdat_size;
+ uint32_t size;
+ uint64_t range_start;
+ uint32_t range_size;
};
#define CB_TAG_TIMESTAMPS 0x0016
@@ -202,22 +204,6 @@
uint64_t cbmem_tab;
};
-#define CB_TAG_VBNV 0x0019
-struct cb_vbnv {
- uint32_t tag;
- uint32_t size;
- uint32_t vbnv_start;
- uint32_t vbnv_size;
-};
-
-#define CB_TAG_VBOOT_HANDOFF 0x0020
-struct cb_vboot_handoff {
- uint32_t tag;
- uint32_t size;
- uint64_t vboot_handoff_addr;
- uint32_t vboot_handoff_size;
-};
-
#define CB_TAG_X86_ROM_MTRR 0x0021
struct cb_x86_rom_mtrr {
uint32_t tag;