Author: stepan
Date: 2008-09-26 20:39:06 +0200 (Fri, 26 Sep 2008)
New Revision: 3606

Modified:
   trunk/payloads/libpayload/drivers/options.c
Log:
fix option handling in libpayload

Signed-off-by: Stefan Reinauer <[EMAIL PROTECTED]>
Acked-by: Jordan Crouse <[EMAIL PROTECTED]>



Modified: trunk/payloads/libpayload/drivers/options.c
===================================================================
--- trunk/payloads/libpayload/drivers/options.c 2008-09-26 18:37:26 UTC (rev 
3605)
+++ trunk/payloads/libpayload/drivers/options.c 2008-09-26 18:39:06 UTC (rev 
3606)
@@ -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 @@
 
 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);
        


--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to