[SeaBIOS] VGA Option ROM not set up correctly when loaded by coreboot and not SeaBIOS

Paul Menzel paulepanter at users.sourceforge.net
Wed Mar 20 01:21:48 CET 2013

Am Dienstag, den 19.03.2013, 18:37 +0100 schrieb Peter Stuge:
> Paul Menzel wrote:
> > > http://www.coreboot.org/SeaBIOS#coreboot - do not load the vga
> > > option rom in coreboot - do it in seabios.
> > 
> > Yes, thanks. Though I assumed »best results« would mean
> Please don't assume. When something is unclear, creating an
> opportunity for assumption, then documentation and/or code should be
> improved, so that no assumption is needed.

You are right. Though that’s why I am bringing this up, so when I am
more knowledgeable I can improve the Wiki.

> > not that Linux does not find the ROM at all. If that is a known
> > issue, a note should be added to the Kconfig description
> It's quite natural since coreboot is not equipped to run option ROMs;
> it does not have any BIOS interrupt services, which option ROMs
> typically rely on, since option ROMs are a BIOS concept.

Ah, I forgot that. Though it looked like the AMD/ATI Wrestler VGA option
ROM was run as something was printed to the screen and at least the
Linux console worked – no kernel mode setting (KMS) though.

The .config for *coreboot* has the following set.

        # CONFIG_PCI_OPTION_ROM_RUN_YABEL is not set

> > or if coreboot is chosen as a target, then the Option ROM option
> > should be enabled automatically, right?
> Which option ROM option are you talking about? Please be specific,
> use the CONFIG_ name.

Sorry it was stripped in Christian’s reply. I talk about the following
Kconfig option in SeaBIOS.

            config OPTIONROMS
                bool "Option ROMS"
                default y # I set it to n.
                    Support finding and running option roms during POST.

> And since discussion now covers both coreboot and SeaBIOS it helps
> further if you specify which project the particular option is in.

The above is from SeaBIOS.

> There are use cases both for coreboot running option ROMs and SeaBIOS
> running option ROMs, regardless of how SeaBIOS was started.

For my use case, starting the ASRock E350M1 as fast as possible with
coreboot → SeaBIOS → GRUB (hard drive) – it probably does not matter.
Especially as it takes 10 seconds until the hard drive can be accessed.

> I tend to agree that coreboot should default to not run option ROMs,
> and possibly the SeaBIOS configuration generated by the coreboot
> build files should enable SeaBIOS running the option ROM in that
> case, but it's not trivial to find a way that makes sense for every
> case. Feel free to think about it and propose an improvement, it can
> probably be better than it is at the moment.

Right. I remember that this was discussed for coreboot once. As I am
using a revision from middle 2012

        commit bdca15337bc9337f399b43290dc74cb598c5ec4d
        Author: Nico Huber <nico.huber at secunet.com>
        Date:   Mon May 21 14:01:52 2012 +0200

            libpayload: Remove orphaned delay from USB mass storage


            Reviewed-on: http://review.coreboot.org/1071

it might be that it is not used there yet. Checking it, you already
submitted that patch setting this correctly for coreboot.

        commit be0ede412edb631892312d3972c8439fa7053203
        Author: Peter Stuge <peter at stuge.se>
        Date:   Sat Oct 27 14:17:04 2012 +0200

            Run option ROMs in coreboot by default only if the payload is not SeaBIOS


            Reviewed-on: http://review.coreboot.org/1637

So something similar could be setup for SeaBIOS. Though the option is
set to yes by default. So it should not be needed.

To summarize, I have to figure out if coreboot is able to run the VGA
option ROM correctly and if yes, why SeaBIOS, GRUB and Linux cannot
use(?) it.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://www.seabios.org/pipermail/seabios/attachments/20130320/9771c7e7/attachment.sig>

More information about the SeaBIOS mailing list