Coreboot-15h
Coreboot-15h, also known as Mike's Coreboot, is a distribution of Coreboot for the ASUS KGPE-D16, developed by mrothfuss, focused on improving reliability and hardware compatibility over upstream Coreboot 4.11 and Dasharo 0.4.0. coreboot-15h includes changes for dramatically more stable memory initialization, significantly improved HyperTransport configuration, support for hardware monitoring and fan control, and patches to the build system to allow building on current Linux distributions. It is, at the time of writing, believed to be the most stable and complete Coreboot variant available for the hardware it targets.
History
As coreboot-D16, coreboot-15h was previously provided in two versions - coreboot-4.11
and coreboot-4.15
. The former was based on upstream Coreboot 4.11, while the latter is based on Dasharo's KGPE-D16 port (an earlier out-of-tree effort to reintroduce KGPE-D16 support in Coreboot, ultimately not upstreamed), which is itself effectively a fork of Coreboot around the 4.15 release. Despite being based on an older version of Coreboot, the coreboot-4.11 version was more actively developed, was in much more widespread use, has seen significantly more testing, and was generally considered more stable and performant. The older coreboot-4.15
version can be found in the old GitHub repo.
coreboot-D16 also includes a modified version of fand.cpp
, for use with OpenBMC, providing improved BMC-based fan control for KGPE-D16 users running OpenBMC. At present, you will need to manually replace this file in your OpenBMC source with the coreboot-D16 version before building OpenBMC in order to use it.
Building on Debian 12
Instructions for KGPE-D16
### Install build dependencies apt install git build-essential m4 bison flex zlib1g-dev libncurses-dev imagemagick python-is-python3 ### Fetch coreboot-15h source git clone https://git.15h.org/mrothfuss/coreboot-15h.git cd coreboot-15h ### Optional: Fetch blobs (AMD microcode and the AST2050 VGABIOS) ### Both can be explicitly excluded from the build by menuconfig git submodule update --init --checkout 3rdparty/blobs # Build the cross compiler (may take a while) make crossgcc-i386 CPUS=$(nproc) ### Load a config file (select one). ### There are three default configs provided, each with 2MB and 16MB variants. ### ### coreboot with AMD microcode and the AST2050 VGABIOS (easiest). ### The VGABIOS on any attached GPUs are also executed. ### This config has full graphics support, any PCIe GPU may be easily used with this config. ### Disable the AST2050 via jumper to use a PCIe GPU as the primary display. ### cp configs/config.asus_kgpe-d16_seabios_ucode_ast2050-oprom_vga-oproms_2mb .config cp configs/config.asus_kgpe-d16_seabios_ucode_ast2050-oprom_vga-oproms_16mb .config ### ### coreboot with AMD microcode. ### This config has only text-mode support at boot. Full graphics can be setup by the OS after booting. ### The onboard AST2050 or any NVIDIA GTX 700-series (or older) will display SeaBIOS and your OS bootloader in text-mode. ### Disable the AST2050 via jumper to use the NVIDIA card as the primary boot display. ### Newer GPUs will not display SeaBIOS or the OS bootloader, but can be initialized by drivers in your OS. ### To use newer GPUs, it is recommended to use the AST2050 VGA to access SeaBIOS and your OS bootloader. ### The OS can be configured to use the GPU as the primary display with full performance. ### cp configs/config.asus_kgpe-d16_seabios_ucode_no-oproms_2mb .config cp configs/config.asus_kgpe-d16_seabios_ucode_no-oproms_16mb .config ### ### coreboot (blob free) ### This config is similar to the previous config, but excludes AMD microcode updates ### Do not use this config with 6300 series Opteron CPUs ### cp configs/config.asus_kgpe-d16_seabios_no-ucode_no-oproms_2mb .config cp configs/config.asus_kgpe-d16_seabios_no-ucode_no-oproms_16mb .config ### Optional: Adjust your configuration make menuconfig ### Build coreboot, your ROM will be at ./build/coreboot.rom make
Instructions for cleaning your build environment (necessary when switching motherboards)
make distclean
Releases
For source, see our Git forge
KGPE-D16
Release
|
Notes
|
Downloads
|
2024.09.16 v4.11-d176edf4ae |
|
|
2024.09.14 v4.11-065549759c |
|