libpayload: Add access to CMOS images in memory space
Provide access to CMOS images in RAM or CBFS, such as cmos.defaults Change-Id: Ifa70dea6206d94c0c271caf9ae1152fc76b5d51a Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com> Reviewed-on: http://review.coreboot.org/584 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
This commit is contained in:
parent
b06bd8d954
commit
5febb00640
|
@ -30,11 +30,28 @@
|
|||
#include <libpayload.h>
|
||||
#include <coreboot_tables.h>
|
||||
|
||||
u8 *mem_accessor_base;
|
||||
|
||||
static u8 mem_read(u8 reg)
|
||||
{
|
||||
return mem_accessor_base[reg];
|
||||
}
|
||||
|
||||
static void mem_write(u8 val, u8 reg)
|
||||
{
|
||||
mem_accessor_base[reg] = val;
|
||||
}
|
||||
|
||||
struct nvram_accessor *use_nvram = &(struct nvram_accessor) {
|
||||
nvram_read,
|
||||
nvram_write
|
||||
};
|
||||
|
||||
struct nvram_accessor *use_mem = &(struct nvram_accessor) {
|
||||
mem_read,
|
||||
mem_write
|
||||
};
|
||||
|
||||
struct cb_cmos_option_table *get_system_option_table(void)
|
||||
{
|
||||
return phys_to_virt(lib_sysinfo.option_table);
|
||||
|
|
|
@ -199,7 +199,8 @@ struct nvram_accessor {
|
|||
void (*write)(u8 val, u8 reg);
|
||||
};
|
||||
|
||||
extern struct nvram_accessor *use_nvram;
|
||||
extern u8 *mem_accessor_base;
|
||||
extern struct nvram_accessor *use_nvram, *use_mem;
|
||||
|
||||
struct cb_cmos_option_table *get_system_option_table(void);
|
||||
void fix_options_checksum_with(const struct nvram_accessor *nvram);
|
||||
|
|
Loading…
Reference in New Issue