From: Mathias Krause Date: Thu, 20 Oct 2011 12:06:26 +0000 (+0200) Subject: libpayload: Put coreboot version into lib_sysinfo X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=coreboot.git;a=commitdiff_plain;h=08052011433af37c02ce7db86af56db7154e4d98 libpayload: Put coreboot version into lib_sysinfo Change-Id: I22319efe90e475c66b9556f734a7a5e54f7c59bc Signed-off-by: Patrick Georgi Reviewed-on: http://review.coreboot.org/394 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- diff --git a/payloads/libpayload/arch/i386/coreboot.c b/payloads/libpayload/arch/i386/coreboot.c index bdef4e85d..365445ed6 100644 --- a/payloads/libpayload/arch/i386/coreboot.c +++ b/payloads/libpayload/arch/i386/coreboot.c @@ -82,6 +82,12 @@ static void cb_parse_serial(unsigned char *ptr, struct sysinfo_t *info) info->ser_ioport = ser->baseaddr; } +static void cb_parse_version(unsigned char *ptr, struct sysinfo_t *info) +{ + struct cb_string *ver = (struct cb_string *)ptr; + info->cb_version = (char *)ver->string; +} + #ifdef CONFIG_NVRAM static void cb_parse_optiontable(unsigned char *ptr, struct sysinfo_t *info) { @@ -148,6 +154,9 @@ static int cb_parse_header(void *addr, int len, struct sysinfo_t *info) case CB_TAG_SERIAL: cb_parse_serial(ptr, info); break; + case CB_TAG_VERSION: + cb_parse_version(ptr, info); + break; #ifdef CONFIG_NVRAM case CB_TAG_CMOS_OPTION_TABLE: cb_parse_optiontable(ptr, info); diff --git a/payloads/libpayload/include/sysinfo.h b/payloads/libpayload/include/sysinfo.h index e35770499..c1d200227 100644 --- a/payloads/libpayload/include/sysinfo.h +++ b/payloads/libpayload/include/sysinfo.h @@ -51,6 +51,8 @@ struct sysinfo_t { u32 cmos_range_end; u32 cmos_checksum_location; + char *cb_version; + struct cb_framebuffer *framebuffer; unsigned long *mbtable; /** Pointer to the multiboot table */