[coreboot] SeaBIOS and the Geode LX framebuffer

Jordan Crouse jordan.crouse at amd.com
Thu Oct 9 17:10:21 CEST 2008

On 09/10/08 11:19 +0100, Stephen Crocker wrote:
> Kevin O'Connor wrote:
> > On Mon, Oct 06, 2008 at 08:32:15AM -0600, Jordan Crouse wrote:
> >> On 04/10/08 21:59 -0400, Kevin O'Connor wrote:
> >>> I'm not an expert on VGA, but I think it may be possible to implement
> >>> a bare bones vgabios with only a couple of chip specific functions
> > [...]
> >> Not just a possibility - but a certainty.  Geode could be ported in a
> >> matter of hours. 
> > 
> > Hi Jordan,
> > 
> > I've spent some time taking a closer look at this.  The bochs vgabios
> > has a large number of in/out calls.  If the geode vga doesn't natively
> > emulate the legacy in/out ports then I think there is a fair amount of
> > work to port bochs vgabios to geode.

I apologize - I spend a lot of my time hacking on the graphics engine,
but I forgot all the other baggage that VGA brings with.

> I have been looking at the Geode LX databook and on page 303, it lists 
> the standard VGA I/O ports (3CC, 3C2, 3BA/3DA etc.) which I had 
> previously assumed were emulated in the VSA.  If they are indeed 
> implemented in hardware, it should be able to act as a standard VGA 
> device.  However, this would make me wonder what the VGA emulation VSA 
> is for.

The VSA is there primarily to trap 0x3c2 and to implement a few other 
extended functions.  There is a document on our developer-only website
that describes this, I have asked that we release it to the public.

> If they are software I/O ports implemented in the VSA, an alternative 
> would be to make an open-source VGA emulation module for OpenVSA. 
> Unfortunately, my resources are too limited to attempt this task.

Especially considering that OpenVSA itself needs a lot of work.

> Just as a matter of curiosity, what is the licensing issue surrounding 
> the VGA emulation code?  I understand that it is not open-source but is 
> it available as a binary?

The VGA BIOS itself has licencing restrictions on it.  The VSA emulation
doesn't, but since we never planned on supporting VGA in the first place,
it was a non-starter.  The infrastructure is in place in the VSA code,
but the actual mode switching isn't.

Jordan Crouse
Systems Software Development Engineer 
Advanced Micro Devices, Inc.

More information about the coreboot mailing list