[coreboot] slow load times

Myles Watson mylesgw at gmail.com
Thu Feb 19 03:51:33 CET 2009



> -----Original Message-----
> From: Kevin O'Connor [mailto:kevin at koconnor.net]
> Sent: Wednesday, February 18, 2009 6:04 PM
> To: Myles Watson
> Cc: coreboot at coreboot.org
> Subject: Re: [coreboot] slow load times
> 
> On Wed, Feb 18, 2009 at 09:43:04AM -0700, Myles Watson wrote:
> > On Tue, Feb 17, 2009 at 9:16 PM, Kevin O'Connor <kevin at koconnor.net>
> wrote:
> > > On reboots, the VGA rom isn't being reset - this will be a problem.  I
> > > recommend having SeaBIOS do the rom copying - modify SeaBIOS' config.h
> > > and set:
> > >
> > > #define CONFIG_OPTIONROMS_DEPLOYED 0

Maybe we should modify buildrom so that this is the default when using
SeaBIOS.

> > I've done that.  SeaBIOS doesn't find my SATA card because it's
> > plugged into a slot that's not reachable from bus 0.  Have you thought
> > about multiple root buses?
> 
> I programmed the SeaBIOS PCI code based on the suggestions I received
> by other coreboot developers.  It scans at least bus 0, and it also
> extends its search should it find any bridge or cardbus devices.  It
> was my understanding that coreboot, filo, and libpayload were doing
> something similar.

I'm not complaining.  It's just the next feature request :)

> The current code is in src/pci.h in the foreachpci macro and in
> src/pci.c in the pci_next() function.  If there is a better way to
> scan, please let me know.

It's a fine way to scan.  The problem is that there is no logical connection
from bus 0 to bus 0x40 on my machine.  It happens because there are multiple
links on the Opterons.  For desktop machines, many times there is only one
link that goes to the chipset, but servers and workstations sometimes have
more.

Without Opteron-specific code or ACPI I don't know how you could do it.  I
was just wondering if you'd thought about it.

I guess you could 

#define PCI_ROOT_1 PCI_BDF(Bus,Dev,FN)
#define PCI_ROOT_2 PCI_BDF(Bus,Dev,FN)

and use them if they're non-zero.

> 
> > I've attached the latest log. I reset it and it looks like it
> > reinitializes the VGA, copies the tables correctly, etc.
> 
> So, is it working now?

I'm still having ACPI troubles, so I'm not booting into Windows yet.  That's
where I'm trying to get.  At this point it's not SeaBIOS's fault, though.
So yes, as far as I can tell right now it's working perfectly.  Thanks for
all the help.

Thanks,
Myles





More information about the coreboot mailing list