[SeaBIOS] [PATCH 0/5] vgabios: build variants for qemu

Kevin O'Connor kevin at koconnor.net
Tue Jan 24 01:23:59 CET 2012


On Mon, Jan 23, 2012 at 12:30:29PM +0100, Gerd Hoffmann wrote:
>   Hi,
> 
> This patch series prepares vgabios for being used as qemu vga bios.

Are you thinking of driving an effort to replace the default vga bios
in qemu?  (Assistance would be helpful here.)

As for current state in comparison to the existing LGPL vgabios, the
only thing I'm aware of is the Cirrus support still lacks a few vbe
calls (calls 05/06/07/10) and BochsVGA has similar vbe calls lacking
(calls 04/05/06/07/0a) and BochsVGA has a 32bit mode interface not
implemented.  The remaining calls look pretty straight forward, but
the 32bit interface would require some build magic.

Testing is going to be the real challenge.  I don't even know what (if
anything) actually uses some of the obscure vgabios calls.

> Qemu comes with multiple vga card emulations, so we need multiple
> vgabios binaries.  All build out of the same source tree, but with
> different config options.  Thus patch #1 revamps vgabios configuration
> to allow building different variants in one go.  Patches #2 .. #5 enable
> more qemu virtual hardware support on top of that.

Why does QEMU have so many different vgabios blobs?  QEMU is actively
peaking into the blob and updating the PCI ids, so it shouldn't
require a different blob for each BochsVGA variant.  That would then
leave just two blobs - Cirrus and Bochs.  I do wonder if it would be
simpler to just run the build twice (updating .config between builds).

That said, I'm okay with moving this to the Makefile.  However, we'd
really need to move it to a new vgasrc/Makefile - as I think it would
complicate the main Makefile too much.

-Kevin



More information about the SeaBIOS mailing list