On Mon, Sep 08, 2008 at 04:11:35AM +0200, Carl-Daniel Hailfinger wrote: > On 08.09.2008 03:37, Kevin O'Connor wrote: > > Any memory that coreboot might clobber would need to be reserved, and > > 0xc0000 can't be reserved because vga option roms expect to be located > > there. > > OK. The problem here is that large multicore machines need 48 kB CAR > size, probably more in the future. Are VGA option ROMs guaranteed to be > 16 kB or smaller?
No - I have vga roms nearly 64KB in size. I don't know if there is an upper limit. > > An alternative (as you mentioned in an early email) would be to save > > and restore some area of memory below 1MB. > > > > Yes, but the problem is that the CAR area can't be saved before enabling > CAR. That means we have to reserve the memory. Let me summarize the > current black list: > - 0x00000-0x9FFFF is low 640 kB. May break bootloaders and 16-bit OS. Right. > - 0xA0000-0xAFFFF is VGA graphics memory mapped area. > - 0xB0000-0xB7FFF is ancient monochrome memmapped, but may still be > decoded by newer VGA cards. > - 0xB8000-0xBFFFF is VGA text mode memory mapped area. I wonder if one could back this area with memory during resume, and then return control to the vga cards before returning to the OS. > - 0xC0000-???? is VGA ROM location. You can almost certainly reserve space in the 0xe0000 area. However, doing so limits the space for other option roms. > - 0xF0000-0xFFFFF is used by SeaBIOS. Something could be worked out here. We could backup seabios and restore it before resume completes. It'd be ugly though. -Kevin -- coreboot mailing list [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

