Add support for high coreboot table to mkelfimage Signed-off-by: Stefan Reinauer Index: mkelfImage/include/linuxbios_tables.h =================================================================== --- mkelfImage/include/linuxbios_tables.h (revision 4013) +++ mkelfImage/include/linuxbios_tables.h (working copy) @@ -79,4 +79,13 @@ uint64_t hwrpb; }; +#define LB_TAG_FORWARD 0x0011 +struct lb_forward { + uint32_t tag; + uint32_t size; + uint64_t forward; +}; + + + #endif /* LINUXBIOS_TABLES_H */ Index: mkelfImage/linux-i386/convert_params.c =================================================================== --- mkelfImage/linux-i386/convert_params.c (revision 4013) +++ mkelfImage/linux-i386/convert_params.c (working copy) @@ -978,6 +978,13 @@ head = __find_lb_table((void *)0xf0000, (void *)0x100000); } if (head) { + struct lb_forward *forward = (struct lb_forward *)(((char *)head) + head->header_bytes); + if (forward->tag == LB_TAG_FORWARD) { + head = __find_lb_table(forward->forward, + forward->forward + 0x1000); + } + } + if (head) { info->has_linuxbios = 1; info->lb_table = head; return 1;