[SeaBIOS] [PATCH RFC 0/7] VGA ROM improvements

Julian Pidancet julian.pidancet at gmail.com
Fri Dec 16 15:15:06 CET 2011


This patch set contain ground work for a working VBE implementation.

It adds several things:
  * A configuration menu in seabios Kconfig
  * The ability to generate a PCI ROM
  * PMM facilities that the ROM can use to allocate memory
  * A skeleton driver to implement the VBE interface

As a bonus, it fixes an issue when real-mode VGA ROM code is
emulated by Windows 7, and is unable to cope with code generated
with the -fomit-frame-pointer option.

It should make pretty easy to implement the BOCHS DISPI interface.

Also, I use these patchs to implement VBE for an experimental gfx
device emulation. So far I managed to get Windows 7 to boot and
show up a 1280x1024 desktop.

Julian Pidancet (7):
  Only use -fomit-frame-pointer with 32bit flat code
  Rename CONFIG_VBE in CONFIG_VGA_BOCHS and CONFIG_CIRRUS in
    CONFIG_VGA_CIRRUS
  Add configuration menu for the VGA ROM
  buildrom.py: Handle PCI header checksum
  Add PMM memory allocation facilities for VGA option ROMs
  Partially implement VBE interface, create VBE driver skeleton
  Add vbe_flag field in BDA

 Makefile           |    7 +-
 src/Kconfig        |   35 +++++++
 src/biosvar.h      |    3 +-
 tools/buildrom.py  |    5 +
 vgasrc/pmm.c       |   50 +++++++++
 vgasrc/pmm.h       |   16 +++
 vgasrc/vbe.c       |  135 ++++++++++++++++++++++++
 vgasrc/vbe.h       |  194 +++++++++++++++++++++++++++++++++++
 vgasrc/vga.c       |  290 ++++++++++++++++++++++++++++++++++++++++++++--------
 vgasrc/vgaentry.S  |   47 ++++++++-
 vgasrc/vgatables.h |    6 -
 11 files changed, 731 insertions(+), 57 deletions(-)
 create mode 100644 vgasrc/pmm.c
 create mode 100644 vgasrc/pmm.h
 create mode 100644 vgasrc/vbe.c
 create mode 100644 vgasrc/vbe.h

-- 
Julian Pidancet




More information about the SeaBIOS mailing list