Move option table (cmos.layout's binary representation)
to CBFS and adapt coreboot to use it. Comments by Stefan and Mathias taken into account (except for the build time failure if the table is missing when it should exist and the "memory leak" in build_opt_tbl) Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com> Acked-by: Stefan Reinauer <stepan@coreboot.org> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6268 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
committed by
Patrick Georgi
parent
024ec852c2
commit
244793784c
@@ -4,6 +4,7 @@
|
||||
#include <string.h>
|
||||
#if CONFIG_USE_OPTION_TABLE
|
||||
#include "option_table.h"
|
||||
#include <cbfs.h>
|
||||
#endif
|
||||
|
||||
/* control registers - Moto names
|
||||
@@ -217,7 +218,6 @@ static int get_cmos_value(unsigned long bit, unsigned long length, void *vret)
|
||||
|
||||
int get_option(void *dest, const char *name)
|
||||
{
|
||||
extern struct cmos_option_table option_table;
|
||||
struct cmos_option_table *ct;
|
||||
struct cmos_entries *ce;
|
||||
size_t namelen;
|
||||
@@ -227,7 +227,7 @@ int get_option(void *dest, const char *name)
|
||||
namelen = strnlen(name, CMOS_MAX_NAME_LENGTH);
|
||||
|
||||
/* find the requested entry record */
|
||||
ct=&option_table;
|
||||
ct=cbfs_find_file("cmos_layout.bin", CMOS_COMPONENT_CMOS_LAYOUT);
|
||||
ce=(struct cmos_entries*)((unsigned char *)ct + ct->header_length);
|
||||
for(;ce->tag==LB_TAG_OPTION;
|
||||
ce=(struct cmos_entries*)((unsigned char *)ce + ce->size)) {
|
||||
|
Reference in New Issue
Block a user