Releases

From SeaBIOS
Jump to: navigation, search

History of SeaBIOS releases. Please see Download for information on obtaining these releases.

SeaBIOS 1.7.5

Available on 20140528. Major changes in this release:

  • Support for obtaining SMBIOS tables directly from QEMU.
  • XHCI USB controller fixes for real hardware (now tested on several boards)
  • SeaVGABIOS improvements
    • New driver for "coreboot native vga" support
    • Improved detection of older x86emu versions with incorrect emulation.
  • Several bug fixes and code cleanups

SeaBIOS 1.7.4

Available on 20131223. Major changes in this release:

  • Support for obtaining ACPI tables directly from QEMU.
  • Initial support for XHCI USB controllers (initially for QEMU only).
  • Support for booting from "pvscsi" devices on QEMU.
  • Enhanced floppy driver - improved support for real hardware.
  • coreboot cbmem console support.
  • Optional support for using the 9-segment instead of the e-segment for local variables.
  • Improved internal timer code and accuracy.
  • SeaVGABIOS improvements
    • Better support for legacy X.org releases with incomplete x86emu emulation.
    • Support for using an internal stack to reduce caller's stack usage.
    • Back port of new "bochs dispi" interface video modes.
  • Several bug fixes and code cleanups
    • Source code separated out into additional hardware and firmware directories.
    • Update to latest version of Kconfig

SeaBIOS 1.7.3

Available on 20130707. Major changes in this release:

  • Initial support for using SeaBIOS as a UEFI Compatibility Support Module (CSM)
  • Support for detecting and using ACPI reboot ports.
  • By default, all 16bit entry points now use an internal stack to reduce stack footprint.
  • Floppy controller code has been rewritten to improve compatibility. Non-standard floppy sizes now work again with recent QEMU versions.
  • Several bug fixes and code cleanups

SeaBIOS 1.7.2

Available on 20130118. Major changes in this release:

  • Support for ICH9 host chipset ("q35") on emulators
  • Support for booting from LSI MegaRAID SAS controllers
  • Support for using the ACPI PM timer on emulators
  • Improved Geode VGA BIOS support.
  • Several bug fixes

SeaBIOS 1.7.1

Available on 20120831. Major changes in this release:

  • Initial support for booting from USB attached scsi (USB UAS) drives
  • USB EHCI 64bit controller support
  • USB MSC multi-LUN device support
  • Support for booting from LSI SCSI controllers on emulators
  • Support for booting from AMD PCscsi controllers on emulators
  • New PCI allocation code on emulators. Support 64bit PCI bars and mapping them above 4G.
  • Support for non-linear APIC ids on emulators.
  • Stack switching for 16bit real mode irq handlers to reduce stack footprint.
  • Support for custom storage in the memory at 0xc0000-0xf0000. No longer reserve memory for custom storage in first 640k.
  • Improved code generation for 16bit segment register loads
  • Boot code will now (by default) reboot after 60 seconds if no boot device found
  • CBFS and FWCFG "files" are now only scanned one time
  • Several bug fixes

SeaBIOS 1.7.0

Available on 20120414. Major changes in this release:

  • Many enhancements to VGA BIOS code - it should now be feature complete with LGPL vgabios.
  • Support for virtio-scsi.
  • Improved USB drive (usb-msc) support.
  • Several USB controller bug fixes and improvements.
  • Runtime ACPI AML PCI hotplug construction.
  • Support for running on i386 and i486 CPUs.
  • Enhancements to PCI init when running on emulators.
  • Several bug fixes

SeaBIOS 1.6.3

Available on 20111004. Major changes in this release:

  • Initial support for Xen
  • PCI init (on emulators) uses a two-phase initialization
  • Fixes for AHCI so it can work on real hardware. AHCI is now enabled by default.
  • Bootsplash support for BMP files
  • Several configuration options can now be configured at runtime via CBFS files

(eg, "etc/boot-menu-wait")

  • PCI device scan is cached during POST phase
  • Several bug fixes

SeaBIOS 0.6.2

Available on 20110228. Major changes in this release:

  • Setup code can relocate to high-memory to save space in c-f segments
  • Build now configured via Kconfig
  • Experimental support for AHCI controllers
  • Support for run-time configuration of the boot order (via CBFS/fw_cfg "bootorder" file)
  • Support T13 EDD3.0 spec
  • Improved bounds checking on PCI memory allocation
  • Several bug fixes

SeaBIOS 0.6.1

Available on 20100913. Major changes in this release:

  • Support for virtio drives
  • Add ACPI definitions for cpu hotplug support
  • Support for a graphical bootsplash screen
  • USB mouse support
  • The PCI support for emulators is less dependent on i440 chipset
  • New malloc implementation which improves memalign and free
  • The build system no longer double links objects
  • Several bug fixes

SeaBIOS 0.6.0

Available on 20100326. Major changes in this release:

  • USB hub support
  • USB drive booting support
  • USB keyboard auto-repeat support
  • USB EHCI controller support
  • Several improvements to compatibility of PS2 port handlers for old code
  • Support for qemu e820 interface
  • Several bug fixes and code cleanups

SeaBIOS 0.5.1

Available on 20100108. Major changes in this release:

  • Support for 32bit PCI BIOS calls
  • Support for int1589 calls
  • MPTable fixes for OpenBSD
  • ATA DMA and bus-mastering support
  • Several bug fixes and code cleanups

SeaBIOS 0.5.0

Available on 20091218. Major changes in this release:

  • Several enhancements ported from the Bochs BIOS derived code in qemu and kvm
  • Support for parallel hardware initialization to reduce bootup times
  • Enable PCI option rom support by default (Bochs users must now enable CONFIG_OPTIONROMS_DEPLOYED in src/config.h). Support added for extracting option roms from qemu "fw_cfg".
  • Support USB UHCI and OHCI controllers
  • Initial support for USB keyboards
  • SeaBIOS can now be greater than 64K
  • Support for permanent low memory allocations
  • APIC "local interrupts" now enabled in SeaBIOS (on emulators)
  • Several bug fixes and code cleanups

SeaBIOS 0.4.2

Available on 20090909. Major changes in this release:

  • Implement Post Memory Manager (PMM) support. Use equivalent "malloc" functions for internal allocations as well.
  • Refactor disk "block" interface for greater expandability
  • Support CBFS based floppy images
  • Allow boot menu to select either floppy to boot from
  • Increase ebda size to store a CDROM harddrive/floppy emulation buffer
  • Support systems with multiple vga cards (only the card with the legacy IO ranges mapped will have its option rom executed)
  • Make option rom memory be writable during option rom execution (on emulators)
  • Compile version number into code and report on each boot
  • Several bug fixes and code cleanups

SeaBIOS 0.4.1

Available on 20090714. Major changes in this release:

  • Support older versions of gcc that predate "-fwhole-program" (eg, v3.x)
  • Add initial port of "LGPL vga bios" code into tree in "vgasrc/" directory
  • Handle ATA drives still "spinning up" during SeaBIOS drive detect
  • Add support for option rom Boot Connection Vectors (BCV)
  • Enhance boot menu to support booting from any drive or any cdrom
  • Support flash based Coreboot File System (CBFS)
  • Support booting from a CBFS "payload"
  • Support coreboot table forwarder
  • Support compile time definitions for multiple root PCI buses
  • New tools/readserial.py tool
  • Several bug fixes and code cleanups

SeaBIOS 0.4.0

Available on 20090206. Major changes in this release:

  • Add Bios Boot Specification (BBS) calls; add PnP call stubs
  • Support option roms stored in PCI rom BAR
  • Support rebooting on ctrl+alt+delete key press
  • Scan PCI devices for ATA adapters (don't assume legacy ISA ATA ports are valid)
  • Attempt to automatically determine gcc capabilities/bugs during build
  • Add script to layout 16bit sections at fixed offsets and in compacted space
  • Introduce timestamp counter based delays
  • Support POST calls that are really a resume
  • Use new stack in EBDA for int13 disk calls to reduce stack usage
  • Support the EBDA being relocated by option roms
  • Move many variables from EBDA to global variables (stored in f-segment)
  • Support for PCI bridges when iterating through PCI device list
  • Initial port of several KVM specific features from their Bochs BIOS derived code
  • Access BDA using segment 0x40 and IVT using segment 0x00 (which could be important for 16bit protected mode callers)
  • Several bug fixes and code cleanups

SeaBIOS 0.3.0

Available on 20080817. Major changes in this release:

  • Run boot code (int18/19) in 32bit mode
  • Rewrite of PS2 port handling - new code is more compatible with real hardware
  • Initial support for int155f VGA option rom calls
  • Several bug fixes and code cleanups

SeaBIOS 0.2.3

Available on 20080702. Major changes in this release:

  • Initial support for running on real hardware with coreboot
  • Support parsing coreboot tables
  • Support relocating bios tables from high memory when running under coreboot
  • Dynamic e820 map generation
  • Serial debug support
  • New tools/checkstack.py tool
  • Several bug fixes and code cleanups

SeaBIOS 0.2.2

Formerly known as "legacybios". Available on 20080501. Major changes in this release:

  • Several bug fixes and code cleanups

SeaBIOS 0.2.1

Formerly known as "legacybios". Available on 20080406. Major changes in this release:

  • Port of boot menu code from Bochs BIOS
  • Several bug fixes and code cleanups

SeaBIOS 0.2.0

Formerly known as "legacybios". Available on 20080330. Major changes in this release:

  • Completion of initial port of Bochs BIOS code to gcc.