summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--payloads/libpayload/drivers/options.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/payloads/libpayload/drivers/options.c b/payloads/libpayload/drivers/options.c
index 4534018ab8..8eed78ef17 100644
--- a/payloads/libpayload/drivers/options.c
+++ b/payloads/libpayload/drivers/options.c
@@ -33,9 +33,9 @@
static int options_checksum_valid(void)
{
int i;
- int range_start = lib_sysinfo.cmos_range_start;
- int range_end = lib_sysinfo.cmos_range_end;
- int checksum_location = lib_sysinfo.cmos_checksum_location;
+ int range_start = lib_sysinfo.cmos_range_start / 8;
+ int range_end = lib_sysinfo.cmos_range_end / 8;
+ int checksum_location = lib_sysinfo.cmos_checksum_location / 8;
u16 checksum = 0, checksum_old;
for(i = range_start; i <= range_end; i++) {
@@ -80,7 +80,7 @@ static int get_cmos_value(u32 bitnum, u32 len, void *valptr)
int get_option(void *dest, char *name)
{
- struct cb_cmos_option_table *option_table = lib_sysinfo.option_table;
+ struct cb_cmos_option_table *option_table = phys_to_virt(lib_sysinfo.option_table);
struct cb_cmos_entries *cmos_entry;
int len = strnlen(name, CMOS_MAX_NAME_LENGTH);