libpayload: Expose options_checksum_valid
options_checksum_valid can be used as a fast test to
identify invalid CMOS data by checking the checksum.
Change-Id: I44635d4c5d389579ad82435907ba8658e1bd44bb
Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com>
Reviewed-on: http://review.coreboot.org/586
Reviewed-by: Bernhard Urban <lewurm@gmail.com>
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
diff --git a/payloads/libpayload/drivers/options.c b/payloads/libpayload/drivers/options.c
index 33c0659..1b98cda 100644
--- a/payloads/libpayload/drivers/options.c
+++ b/payloads/libpayload/drivers/options.c
@@ -57,7 +57,7 @@
return phys_to_virt(lib_sysinfo.option_table);
}
-static int options_checksum_valid(const struct nvram_accessor *nvram)
+int options_checksum_valid(const struct nvram_accessor *nvram)
{
int i;
int range_start = lib_sysinfo.cmos_range_start / 8;
diff --git a/payloads/libpayload/include/libpayload.h b/payloads/libpayload/include/libpayload.h
index dd98404..488ad48 100644
--- a/payloads/libpayload/include/libpayload.h
+++ b/payloads/libpayload/include/libpayload.h
@@ -203,6 +203,7 @@
extern struct nvram_accessor *use_nvram, *use_mem;
struct cb_cmos_option_table *get_system_option_table(void);
+int options_checksum_valid(const struct nvram_accessor *nvram);
void fix_options_checksum_with(const struct nvram_accessor *nvram);
void fix_options_checksum(void);
int get_option_with(const struct nvram_accessor *nvram, struct cb_cmos_option_table *option_table, void *dest, char *name);