coreboot Changelog

What's new in coreboot 4.6

May 9, 2017
  • CBMEM console development and the Linux Kernel:
  • Our cbmem debug console was updated with some nice features. The cbmem console now persists between reboots and is able to be used on some platforms via late init. Also there is a new Linux kernel driver which removes the need for the old cbmem tool to read from the cbmem area. You can find the patch here https://patchwork.kernel.org/patch/9641997/ and it can be enabled via GOOGLE_MEMCONSOLE_COREBOOT kconfig option in your kernel – Note that this name may change going forward.
  • Critical bugs in TPM 1.2 support:
  • coreboot currently has issues with the TPM 1.2 LPC driver implementation. This leads to a misbehavior in SeaBIOS where the TPM gets temporarily deactivated. We plan to publish the bugfix release 4.6.1 when we have these issues sorted out.
  • Native graphics and ram init improvements:
  • The native graphics was reworked a while ago and should finally support Windows. Numerous bug fixes and EDID support is also now available. Finally, the native ram initialization for sandybridge/ivybridge platforms got patched and supports more RAM modules.
  • New and fresh payloads:
  • SeaBIOS, FiLO, and iPXE were all recently updated to the latest versions. Https downloads are the default for all payloads now. We provide the libpayload project which is used for writing own payloads from scratch. The library is MOSTLY licensed under BSD and recently received new functionality in order to prepare for the upcoming replacement for the old nvramcui payload. This new payload is called cbui and is based on the nuklear graphics library including keyboard and mouse support. The cbui payload is currently expected to be merged into the main coreboot tree before the next release. The upstream repository is here: https://github.com/siro20/coreboot/tree/cbui/payloads/cbui
  • UEFI support: A long road to go:
  • coreboot can be used with the Tianocore EDK2 UEFI implementation which is open source and available at Github. Sadly it is not currently integrated into the coreboot build. This has several reasons...
  • EDK2 only supports GCC 4.8 profile. coreboot is now running on GCC 6.3.0.
  • Incompatibilities with code inside the EDK2 which has not been updated.
  • We started to make progress with the integration into our sources and the hope is that by the end of the summer, we finally support the EDK2 payload out-of-the-box. See the current patch state at http://review.coreboot.org/#/c/15057/
  • Fighting blobs and proprietary HW components
  • coreboot’s ultimate goal would be to replace any closed source firmware stack with free software components. Unfortunately this is not always possible due to signed binaries such as the Intel ME firmware, the AMD PSP and microcode. Recently, a way was discovered to let the Intel ME run in a functional error state and reduce it from 1.5/5MB to 80KB. It’s not perfect but it works from Nehalem up to Skylake based Intel systems. The tool is now integrated into the coreboot build system. The upstream repository is https://github.com/corna/me_cleaner
  • Another ongoing improvement is the new utility blobtool. It is currently used for generating the flash descriptor and GbE configuration data on older mainboard which are known to be free software. It can easily be extended for different binaries with well-defined specifications.
  • Did you say Ada?:
  • coreboot now supports Ada, and a lot work was done integrating Ada into our toolchain. At the moment only the support for formal verification is missing and will be soon added. At that point, we can prove the absence of runtime errors in our Ada code. In short, everybody can start developing Ada code for our project.
  • The existing Ada code which can be used from now on is another native graphics initialization which will replace in the long term the current implementation. The native graphics code supports all Intel platforms up to skylake. We offer support for HDMI, VGA, DVI and DP external interfaces as well and is ready to be integrated into our mainboard implementations.
  • Toolchain updates:
  • A new coreboot toolchain is out. The major toolchain change was going from GCC version 5.3.0 to 6.3.0. There were also minor version updates to GMP, MPFR, Binutils, GDB, IASL, and Clang.

New in coreboot 6613 (Jun 1, 2011)

  • Numerous bugs were fixed.
  • Conformance was fixed.
  • Windows support was improved.
  • Boot-time speedups were made.

New in coreboot 6481 (Apr 11, 2011)

  • Fixed bugs in the code supporting the Lenovo X60.

New in coreboot 6474 (Apr 5, 2011)

  • Installation: renamed to "Building", removed duplicate lines and added a build script

New in coreboot 6460 (Mar 28, 2011)

  • Added notes about debugging coreboot with qemu

New in coreboot 5685 (Aug 6, 2010)

  • Numerous bugfixes, code cleanups, refinements to platform support, and documentation improvements.

New in coreboot 3955 (Feb 21, 2009)

  • This release fixes Bayou payload execution.
  • It fixes MTRR setup for UMA architectures.
  • It increases ROM_IMAGE_SIZE for the Agami Aruma to resolve overlapping sections.
  • It adds dynamically generated P-States infrastructure on applicable architectures.
  • It adds QWord support to acpigen.
  • It adds TOM2 to the K8 DSDT.
  • It has assorted bugfixes, code cleanups, and documentation fixes.

New in coreboot 3932 (Feb 10, 2009)

  • This release adds initial heterogeneous dual-channel support.
  • It adds support for Winbond W83627UHG Super I/O, i631x LPC, and AMD-768, SST49LF020.
  • It adds erase/write to AT25DF* and AT25DF* chips.
  • It improves support for Gigabit GA-MA78G-DS3H, K8 rev F DDR2, Am29F080B, Am29LV081B, SST39VF080, Winbond SuperIO SPI, Intel Desktop Board D201GLY, ST M29F002T/NT/B, and MSI MS-7046.
  • There are bugfixes, refactoring of code, code cleanup, and documentation fixes.

New in coreboot 3845 (Dec 30, 2008)

  • This release adds an extra board-enable line for the Kontron 986LCD-M/mITX to support other versions of the board, a register map based on the NSC PC87392 datasheet, and an mptable for the VIA pc2500e.
  • The code now correctly initializes the ICH SPI opcodes.
  • It fixes the RS690 chipset for 1 GHz noncoherent HyperTransport, as well as init weirdness with the Seagate Barracuda.
  • Improved Windows support.
  • It extends debugging facilities for many chips and busses.
  • It fixes many implicit declarations.
  • There is extensive code cleanup.

New in coreboot 3817 (Dec 18, 2008)

  • This release added AMD PISTACHIO mainboard support, preliminary support for multiple DIMMs on the Intel 440BX chipset, 690G and 690(MT) internal graphics support, and initial support for the NEC PowerMate 2000 and the ASUS P2B-DS (dual-CPU) boards.
  • Winbond Super I/O chip support was improved.
  • AMD sb600 HPET setup, AMD rs690 VID DID reporting, and AMD dbm690t ACPI support were added along with IDs for MX29*, SST_2[56]VF* and W_25X* flash chips.
  • inteltool now supports i965, i975, and ICH8M.
  • AMD SB700 flash enable was added.

New in coreboot 3782 (Nov 30, 2008)

  • Support was added for the LiPPERT Cool RoadRunner-LX embedded PC/104 board and the SST25VF080B and SST25VF032B flash chips.
  • AMD/ATI SB600 southbridge SPI was added.
  • Intel 810 code clean-ups and enhancements were made, including support for multiple DIMMs, both single-sided and double-sided, as well as most combinations thereof.
  • msrtool was enhanced to decode MSRs and print the value of every field in human readable form.
  • Atmel AT25F512A supported commands were extended.

New in coreboot 3759 (Nov 19, 2008)

  • Detection support was added for ITE IT8228E, IT8711F, IT8722F, IT8761E, IT8780F, and Fintek F71863FG.
  • Probing and read support were added for a wide range of Atmel AT25*, AT26*, and AT45* EEPROMs.
  • Checks were added for failed SPI command execution in flashrom.

New in coreboot 3749 (Nov 12, 2008)

  • This release adds support for the Fujitsu MBM29F004BC, MBM29F004TC, MBM29F400BC, Macronix MX25L512, MX25L1005, MX25L2005, MX25L6405, and MX29F002B flash ROMs and the Winbond W83627DHG Super I/O.
  • It fixes the code for the Fujitsu MBM29F400TC and Macronix MX29F002T.
  • It adds the missing I/O resources for IT8712F GPIOs.
  • It adds true multiboot support.
  • It has code cleanup and bugfixes.

New in coreboot 3-3726 (Nov 4, 2008)

  • This release continues improving FreeBSD support.
  • It adds support for the LiPPERT Cool SpaceRunner-LX embedded PC mainboard.
  • It adds support for the 82945G/GZ/P/PL chips to inteltool.
  • It adds preliminary support for the ST M50FW002 chip to flashrom.
  • It adds initial Bayou support.
  • It adds additional SPI sector erase and chip erase command functions to flashrom.
  • It has a workaround for boards with a locked opmenu.
  • It has a facility to record ICH8/ICH9/ICH10 SPI registers in flashrom.
  • The K8 FID/VID setup is updated. Support has been addedfor 100MHz FIDs (revG).
  • There are bugfixes and documentation updates.

New in coreboot 3-3708 (Oct 30, 2008)

  • This release adds support for the ITE IT8661F/IT8770F, IT8673F, IT8671F/IT8687R, VIA VT82C586A/B, Winbond W83627THG, Intel ICH7, 945, 82371FB, 82371MX (MPIIX), and 82371SB (PIIX3) chipsets.
  • It adds support for the Intel Core Duo and Core 2 Duo.
  • It adds support for the M25PE and EP80579 flash chips.
  • It adds support for the Kontron 986LCD-M mainboard, and initial support for the MSI MS-6147 mainboard.
  • It adds multiboot support to defconfig.
  • Code speedups.
  • superiotool has been fixed to compile and work on FreeBSD.
  • There are some bugfixes.

New in coreboot 3-3578 (Sep 17, 2008)

  • This release adds support for the Jetway J7F[24]* family of mainboards.
  • It adds support for the VIA VT8237S southbridge.
  • It adds memalign() API and USB support to the support library.
  • Epia-CN support works without ACPI or APIC.
  • The keyboard driver's support for special keys has been fixed.
  • The serial output driver is now 8-bit clean.
  • The curses serial input support now correctly handles the editing keypad keys and F11.
  • An off-by-one bug has been fixed.
  • Generated makefiles have been cleaned up.
  • The documentation is improved.

New in coreboot 2-3391 (Sep 5, 2008)

  • Support was added for IP1000, PCISA-LX-800-R10, SCH5027, SCH3112, SST39VF512, SST39VF010, SST39VF040, SST39LF, 82845, 6300ESB, A29040B, A25L40P, A49LF040A, ATC-6240, P4B266, EPIA-CN, numerous ATMEL SPI flash chips, and Pm49FL004/2. FAM10, vt8237r, vt8237r, MS-7135, s2891, RM4100, 3100 LPC, ITE IT8718F, IT8716F, F71805F, PC87427, GA-7VT600, AT29C020, SST29EE010, and m57sli were updated. The JEDEC vendor ID is checked for correct parity. FreeBSD support was added. Numerous bugfixes, code cleanups, and minor enhancements were made.