On Mon, Mar 9, 2009 at 9:00 AM, Myles Watson <[email protected]> wrote: > On Fri, Mar 6, 2009 at 5:08 PM, Kevin O'Connor <[email protected]> wrote: >> On Fri, Mar 06, 2009 at 03:33:03PM -0800, Joe Julian wrote: >>> You suggested, on the coreboot IRC channel, that I enable smbios in >>> seabios to solve the missing mptable and RSDP problem. The reason those >>> are turned off is because the comments for CONFIG_PIRTABLE, >>> CONFIG_MPTABLE, COMFIG_SMBIOS, and CONFIG_ACPI all state, "for >>> emulators". Since this is a bare metal install, wouldn't it be correct >>> to have those options disabled since we need the real data rather than >>> simulated data? >> >> Linux, by default, wont use the acpi tables unless there is an smbios >> table. The current coreboot targets don't support building an smbios >> table. So, I programmed SeaBIOS to build a dummy smbios table when it >> is used with coreboot. >> >> It's safe to leave all of: >> >> #define CONFIG_PIRTABLE 1 >> #define CONFIG_MPTABLE 1 >> #define CONFIG_SMBIOS 1 >> #define CONFIG_ACPI 1 > > Linux has been happy without these defines for me, except that it says: > > DMI not present or invalid. > > //Here's a snippet from the log: > > Ram Size=0xc0000000 > init PNPBIOS table > Scan for VGA option rom > Attempting to init PCI bdf 00000200 > Attempting to map option rom on dev 00000200 > Option rom sizing returned f5000000 fffe0000 > Inspecting possible rom at f5000000 (vd=014110de bdf=00000200) > Copying option rom from f5000000 to 000c0000 > Running option rom at 0000c000:00000003 > Turning on vga console > Starting SeaBIOS > > init keyboard > i8042 ctr old=00000000 new=00000020 > ps2_recvbyte timeout > i8042 ctr old=00000000 new=00000020 > i8042 ctr old=00000000 new=00000020 > i8042 ctr old=00000061 new=00000060 > keyboard initialized > init lpt > init serial > init mouse > e820 map has 7 items: > 0: 0000000000000000 - 000000000009fc00 = 1 > 1: 000000000009fc00 - 00000000000a0000 = 2 > 2: 00000000000f0000 - 0000000000100000 = 2 > 3: 0000000000100000 - 000000007fff0000 = 1 > 4: 000000007fff0000 - 0000000080000000 = 2 > 5: 0000000080000000 - 00000000c0000000 = 1 > 6: 0000000100000000 - 0000000140000000 = 1 > final bios_table_addr: 0x000faa4c (used 84%) > init boot device ordering > > > //This is the log if I enable them: > > Copying PIR from 7fff0000 to 000fa9a0 > Copying ACPI RSDP from 7fff0400 to 000fa9f0 > Copying MPTABLE from 7fff1800/7fff1810 to 000faa10 > init SMBIOS tables > Found 4 cpu(s) > SMBIOS table addr=0x000fb060 > Ram Size=0xc0000000 > init PNPBIOS table > Scan for VGA option rom > Attempting to init PCI bdf 00000200 > Attempting to map option rom on dev 00000200 > Option rom sizing returned f5000000 fffe0000 > Inspecting possible rom at f5000000 (vd=014110de bdf=00000200) > Copying option rom from f5000000 to 000c0000 > Running option rom at 0000c000:00000003 > Turning on vga console > Starting SeaBIOS > > init keyboard > i8042 ctr old=00000000 new=00000020 > ps2_recvbyte timeout > i8042 ctr old=00000000 new=00000020 > i8042 ctr old=00000000 new=00000020 > i8042 ctr old=00000061 new=00000060 > keyboard initialized > init lpt > init serial > init mouse > e820 map has 7 items: > 0: 000000000009fc00 - 00000000000a0000 = 2 > 1: 00000000000f0000 - 0000000000100000 = 2 > 2: 0f13000031204d4d - 0f1200003120604d = 268435535 > 3: 0014001314000001 - 0014501313000001 = 18022417 > 4: 20000b2000000000 - 20000b2000000000 = 294656 > 5: 000000008000007f - 00000000c000007f = 1 > 6: 0000000100000000 - 0000000140000000 = 1 > final bios_table_addr: 0x000fb1df (used 103%) > bios_table_end_addr overflow! > > Mappings 2 & 3 look pretty bad. Is it because the tables were too > big, or are the tables too big because of the broken map?
Tables were too big. > How do I make more room for the tables? I set CONFIG_MAX_BIOSTABLE to 2048+512 Thanks, Myles -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

