On Thu, Aug 26, 2010 at 9:31 AM, Juhana Helovuo <[email protected]> wrote: > On Thu, 2010-08-19 at 14:39 -0600, Myles Watson wrote: >> > It is still somewhat unclear where and how all of these memory maps are >> > transmitted from Coreboot to Linux. I could not find the callback for >> > BIOS e820 calls in Coreboot sources. >> >> Coreboot doesn't do callbacks. If you're using SeaBIOS, it handles >> the callbacks and gets the information from the Coreboot tables. >> Grub2 got its information from the multiboot tables last time I >> looked. > > Ok, I see. So there has to be a boot loader or BIOS between Coreboot and > Linux to set up BIOS e820 callbacks, or find some other way to explain > the memory layout to Linux. > > >> Have you tried SeaBIOS again now that the UMA area and high tables are right? > > Yes, I just did. For some reason it still does not do anything at all. > The last output I see is from Coreboot: > > Jumping to boot code at fdf82 > POST: 0xfe > entry = 0x000fdf82 > lb_start = 0x00200000 > lb_size = 0x00128000 > adjust = 0x6fcc8000 > buffer = 0x6fda0000 > elf_boot_notes = 0x00219e24 > adjusted_boot_notes = 0x6fee1e24 > > Then nothing after this, both on serial port and VGA. The SeaBIOS image > was precompiled 0.6.0 ELF from the SeaBIOS "home page". > > So far I have Grub2 more or less working, so is Coreinfo, and I can also > get response (VGA & keyboard) from FILO, although it does not find my > disks. Grub2 sees my IDE disk and cdrom as "ata6" and "ata7".
Multiboot Information structure has been written. POST: 0x9d Adding CBMEM entry as no. 5 Writing high table forward entry at 0x00000500 Wrote coreboot table at: 00000500 - 00000518 checksum 9fde New low_table_end: 0x00000518 Now going to write high coreboot table at 0x7fffe000 rom_table_end = 0x7fffe000 Adjust low_table_end from 0x00000518 to 0x00001000 Adjust rom_table_end from 0x7fffe000 to 0x80000000 Adding high table area uma_memory_start=0x70000000, uma_memory_size=0x10000000 coreboot memory table: 0. 0000000000000000-0000000000000fff: CONFIGURATION TABLES 1. 0000000000001000-000000000009ffff: RAM 2. 00000000000c0000-000000006fffffff: RAM 3. 0000000070000000-000000007fffffff: RESERVED Wrote coreboot table at: 7fffe000 - 7fffe8bc checksum 3af4 coreboot table: 2236 bytes. It doesn't seem good that the Multiboot table gets written before the UMA and high table areas are added. I would think that's why they don't show up. I don't have a good reason why SeaBIOS isn't working. Thanks, Myles -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

