diff options
author | Simon Glass <sjg@chromium.org> | 2012-10-12 18:48:46 +0000 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2012-11-30 13:44:03 -0800 |
commit | 402ed0048a2e494d96f886ba14ff2caf0266e186 (patch) | |
tree | eb055323a7fa06ebd3c5c200a2b9cdf005c451a2 /arch/x86/include/asm/arch-coreboot/sysinfo.h | |
parent | 93c1735f41aa290c7f3ebc8545ccc8d9edd9f22f (diff) | |
download | u-boot-imx-402ed0048a2e494d96f886ba14ff2caf0266e186.zip u-boot-imx-402ed0048a2e494d96f886ba14ff2caf0266e186.tar.gz u-boot-imx-402ed0048a2e494d96f886ba14ff2caf0266e186.tar.bz2 |
x86: coreboot: Decode additional coreboot sysinfo tags
Add support for decoding tags for GPIOs, compile/build info, cbmem and
other features.
Signed-off-by: Stefan Reinauer <reinauer@chromium.org>
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86/include/asm/arch-coreboot/sysinfo.h')
-rw-r--r-- | arch/x86/include/asm/arch-coreboot/sysinfo.h | 34 |
1 files changed, 27 insertions, 7 deletions
diff --git a/arch/x86/include/asm/arch-coreboot/sysinfo.h b/arch/x86/include/asm/arch-coreboot/sysinfo.h index 5c44e1a..77ae304 100644 --- a/arch/x86/include/asm/arch-coreboot/sysinfo.h +++ b/arch/x86/include/asm/arch-coreboot/sysinfo.h @@ -30,32 +30,52 @@ #ifndef _COREBOOT_SYSINFO_H #define _COREBOOT_SYSINFO_H +#include <common.h> #include <compiler.h> +#include <fdt.h> +#include <asm/arch/tables.h> /* Allow a maximum of 16 memory range definitions. */ #define SYSINFO_MAX_MEM_RANGES 16 +/* Allow a maximum of 8 GPIOs */ +#define SYSINFO_MAX_GPIOS 8 struct sysinfo_t { - unsigned int cpu_khz; - unsigned short ser_ioport; - unsigned long ser_base; /* for mmapped serial */ - int n_memranges; - struct memrange { unsigned long long base; unsigned long long size; unsigned int type; } memrange[SYSINFO_MAX_MEM_RANGES]; - struct cb_cmos_option_table *option_table; u32 cmos_range_start; u32 cmos_range_end; u32 cmos_checksum_location; + u32 vbnv_start; + u32 vbnv_size; + + char *version; + char *extra_version; + char *build; + char *compile_time; + char *compile_by; + char *compile_host; + char *compile_domain; + char *compiler; + char *linker; + char *assembler; struct cb_framebuffer *framebuffer; - unsigned long *mbtable; /** Pointer to the multiboot table */ + int num_gpios; + struct cb_gpio gpios[SYSINFO_MAX_GPIOS]; + + void *vdat_addr; + u32 vdat_size; + void *tstamp_table; + void *cbmem_cons; + + struct cb_serial *serial; }; extern struct sysinfo_t lib_sysinfo; |