I don't understand this code.

Here it is.

#if (HAVE_OPTION_TABLE == 1)
        {
                struct lb_record *rec_dest, *rec_src;
                /* Write the option config table... */
                rec_dest = lb_new_record(head);
                rec_src = (struct lb_record *)(void *)&option_table;
                memcpy(rec_dest,  rec_src, rec_src->size);
                /* Create cmos checksum entry in coreboot table */
                lb_cmos_checksum(head);
        }
#endif


Note the cast of rec_src.

But option_table is this:
unsigned char option_table[] = {
        0xc8,0x00,0x00,0x00,0x88,0x04,0x00,0x00,0x0c,0x00,


Why is this cast being done? This code is different in older versions
of this file.

Thanks

ron

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

Reply via email to