[SeaBIOS] running vga bios on resume from S3

Kevin O'Connor kevin at koconnor.net
Sun Feb 28 20:27:19 CET 2010

On Thu, Feb 25, 2010 at 08:36:11AM +0200, Gleb Natapov wrote:
> On Wed, Feb 24, 2010 at 11:34:17PM -0500, Kevin O'Connor wrote:
> > On Wed, Feb 24, 2010 at 11:59:26AM +0200, Gleb Natapov wrote:
> > > Shouldn't we make CONFIG_S3_RESUME_VGA_INIT=1 by default. Otherwise
> > > console doesn't work on Linux after resume.
> > 
> > As far as I can tell, a real BIOS does not call the video bios on
> > resume.
> > As such, I don't think it should be enabled by default.
> > 
> Googling "Run VGA Bios if S3 Resume" suggest that there are real BIOSes that
> run video bios on resume.


Though, the presence of a bios option seems to indicate that always
running the vga rom may not be a good idea.

>I don't see how resume can work otherwise for
> non-GUI setups.

I don't know either - this topic has me confused.  The ACPI spec is
clear though (section 15.3):

 Functional device configuration. The BIOS doesn't need to
 configure/restore context of functional devices such as a network
 interface (even if it is physically included in chipset) or interrupt
 controller. OSPM is responsible for restoring all context of these
 devices. The only requirement for the hardware and BIOS is to ensure
 that interrupts are not asserted by devices when the control is
 passed to OS.

Also, I've read through the PCI specs, and I haven't seen anything
that indicates a VGA BIOS should support being run from S3 resume.  As
such, I'm not confident that a generic VGA BIOS wont write to memory
(corrupting the resume state) if it is run.

It would be nice to know what the "auto" option that some BIOS' have
for "Run VGA Bios if S3 Resume" does.  I wonder what they look at to
determine whether or not to run the vga bios.


More information about the SeaBIOS mailing list