See patch -- coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br. Tel.: +49 761 7668825 • Fax: +49 761 7664613 Email: [EMAIL PROTECTED] • http://www.coresystems.de/ Registergericht: Amtsgericht Freiburg • HRB 7656 Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866
fix option handling in libpayload Signed-off-by: Stefan Reinauer <[EMAIL PROTECTED]> Index: drivers/options.c =================================================================== --- drivers/options.c (revision 3600) +++ drivers/options.c (working copy) @@ -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: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot