SeaBIOS Git Change Log

Age Message
8 days 8 hours checkrom: Fix typo in error message

increate -> increase

Signed-off-by: Andreas Färber <>
Commit b4581224824871ad2909f84fc4a9e067cda663f2, by Andreas Färber
8 days 7 hours checkstack: Prefer passing "function" class instead of function address

Signed-off-by: Kevin O'Connor <>
8 days 8 hours checkstack: Simplify yield calculations

Signed-off-by: Kevin O'Connor <>
8 days 20 hours checkstack: Replace function information tuple with class

Replace the six-tuple storing information on each parsed function with
a class. This makes the code more readable.

Signed-off-by: Kevin O'Connor <>
9 days 8 hours docs: Clarify that pci-optionrom-exec doesn't apply to roms in cbfs

Signed-off-by: Kevin O'Connor <>
10 days 8 hours vgabios: Don't use extra stack if it appears a modern OS is in use

If the last mode set (while not in vm86 mode) was done from a VBE mode
set call then disable the extra stack. This works under the premise
that only a modern OS would invoke the VBE mode changing facilities
and a modern OS would always call the vgabios with sufficient stack

This is an ugly hack to work around a problem Windows Vista (and
possibly later Windows releases) has with the VGA BIOS using a stack
in the e-segment.

Reported-by: Richard Laager <>
Signed-off-by: Kevin O'Connor <>
10 days 9 hours vgabios: On bda_save_restore() the saved vbe_mode also has flags in it

When restoring a saved state, make sure to remove any flags from the
video mode prior to searching for that mode.

Signed-off-by: Kevin O'Connor <>
11 days 9 hours docs: Note release date of 1.8.1

Signed-off-by: Kevin O'Connor <>
15 days 7 hours boot: switch default menu key to ESC

On some platforms, F12 may be hard to access; for example, on OS X
machines F9-F12 have been intercepted by the OS for a long time, and
on newer OS X releases function keys are basically gone for good.

Which keys are and are not available depends on the client, not on
the server, but only function keys are usually trapped by terminals.
Hence, using ESC for the boot menu avoids the problems associated
with F12.

Signed-off-by: Paolo Bonzini <>
Commit a1ac8861049a5ffefc26ca294293ad666954fcc8, by Paolo Bonzini
15 days 7 hours boot.c: delay exiting boot if menu key is ESC

If the menu key is ESC, do not restart boot unless
1.5 seconds have passed. Otherwise users (trained by years of
repeatedly hitting keys to enter the BIOS) will end up hitting ESC
multiple times and immediately booting the primary boot device.

Suggested-by: Matt DeVillier <>
Signed-off-by: Paolo Bonzini <>
Commit 80aae26c9ef060bde15aebd84d0cc79a978706a9, by Paolo Bonzini
16 days 2 hours smp: Fix smp race introduced in 0673b787

In 0673b787 the QEMU SMP init code was changed to run in 32bit mode.
Unfortunately, the transition32 assembler function is not
multi-processor safe, because it modifies the global RTC index
register. This race condition led to sporadic failures when emulating
machines with a large number of processors.

This patch changes the entry_smp code to use a variant of transition32
that does not touch the RTC registers.

Signed-off-by: Kevin O'Connor <>
1 month 11 days fw/pci: map memory and IO regions for multiple pci root buses

For resource sizing and mapping purposes treat devices on extra root
buses as if they are on the default root bus (bus 0).

Signed-off-by: Kevin O'Connor <>
Signed-off-by: Marcel Apfelbaum <>
Signed-off-by: Gerd Hoffmann <>
Commit 0fe4c9ee7af5f6bb3a1fcbf1d39116a894600c90, by Marcel Apfelbaum
1 month 11 days fw/pci: scan all buses if extraroots romfile is present

If there are extra primary root buses, scanning the bus's 0
subtree is not enough. Scan all the range.

Signed-off-by: Marcel Apfelbaum <>
Signed-off-by: Gerd Hoffmann <>
Commit 5cc7eece39721f20b417770374a4112c454be801, by Marcel Apfelbaum
1 month 10 days Add an option to only execute option ROMs contained in CBFS

TEST: Booted ASUS KFSN4-DRE with iPXE ROMs built in to CBFS;
with etc/pci-optionrom-exec set to 0 the on-board network ROMs
were ignored while the iPXE ROMs executed normally. When set
to 2 or greater all option ROMs executed normally. Tests of
VGA only were not possible due to a lack of supported hardware.

Signed-off-by: Timothy Pearson <>
Signed-off-by: Kevin O'Connor <>
Commit d23eba6ea3d429ed8a4a34bae7faad20ce44d8a1, by
1 month 27 days pci: enable SERR# for error forwarding in bridge control register

For PCIe device support AER(Advanced Error Reporting), from the
pcie spec 3.0 chapter 6.2.5, ERR_COR, ERR_NONFATAL, and ERR_FATAL
can be forwarded from the secondary interface to the primary interface,
only require the SERR# Enable bit in the Bridge Control register is set.

and at the kernel side, we found only _HPP() method can enable
SERR#, So here we want to turn on this bit.

Signed-off-by: Chen Fan <>
Signed-off-by: Kevin O'Connor <>
1 month 8 days docs: Prefer triple backticks to multiple lines with single backticks

Signed-off-by: Kevin O'Connor <>
1 month 8 days docs: Add page on available CBFS/fw_cfg runtime config files

Signed-off-by: Kevin O'Connor <>
1 month 9 days docs: Add page describing the patch contribution process

Signed-off-by: Kevin O'Connor <>
1 month 9 days docs: add page for SeaVGABIOS

Signed-off-by: Kevin O'Connor <>
1 month 10 days x86: add barrier to read{b,w,l} and write{b,w,l} functions

Use barrier() for memory mapped IO functions.

This fixes pvscsi driver to boot on QEMU's pvscsi controller.
Test command:
qemu -m 512 --enable-kvm -device pvscsi,id=pvscsi0
-device scsi-disk,bus=pvscsi0.0,drive=drive0
-drive id=drive0,if=none,file=ubuntu1410.img,if=none
-bios seabios/out/bios.bin

Signed-off-by: Ameya Palande <>
Signed-off-by: Kevin O'Connor <>
Commit bc82fa431ef3a0791f637c54fc8065b3fbc13772, by Ameya Palande
1 month 9 days docs: Note v1.8.0 release

Signed-off-by: Kevin O'Connor <>
1 month 9 days docs: There is only one VAR16 flag now

Signed-off-by: Kevin O'Connor <>
1 month 9 days docs: Update release history with dates of stable releases

Signed-off-by: Kevin O'Connor <>
1 month 9 days docs: Document why v1.6.3 release came after v0.6.2

Signed-off-by: Kevin O'Connor <>
2 months 8 days checkstack: Handle callw instruction

Minor update to the tool.

Signed-off-by: Kevin O'Connor <>