Table of Contents

Information

Resources

Manual

Coreboot

Issues

RAM

Incompatible

Compatible

Dependencies

Ubuntu Server

sudo apt-get install -y bison build-essential curl flex git gnat libncurses5-dev m4 zlib1g-dev python-minimal

TianoCore

uuid-dev nasm

Download Source

cd ~ && mkdir -p ~/'Projects' && rm -Rf ~/'Projects/coreboot/src' && sync && git clone --branch 'master' --depth '1' --recurse-submodules 'https://review.coreboot.org/coreboot.git' ~/'Projects/coreboot/src' && sync

Build Toolchain

cd ~/'Projects/coreboot/src' && make 'crossgcc-clean' && make 'crossgcc-i386' CPUS='16'

Settings

cd ~/'Projects/coreboot/src' && make 'distclean' && make 'nconfig' && sync

Query

cd ~/'Projects/coreboot/src' && make 'savedefconfig' && gio open ~/'Projects/coreboot/src/defconfig'
CONFIG_LOCALVERSION="Nightwane"
CONFIG_USE_OPTION_TABLE=y
CONFIG_STATIC_OPTION_TABLE=y
# CONFIG_COMPRESS_RAMSTAGE is not set
# CONFIG_INCLUDE_CONFIG_FILE is not set
# CONFIG_COLLECT_TIMESTAMPS is not set
CONFIG_VENDOR_ASUS=y
CONFIG_BOARD_ASUS_KCMA_D8=y
# CONFIG_DRIVERS_UART_8250IO is not set
CONFIG_POWER_STATE_OFF_AFTER_FAILURE=y
# CONFIG_CONSOLE_CBMEM is not set
CONFIG_CPU_MICROCODE_CBFS_NONE=y
CONFIG_SOUTHBRIDGE_AMD_SB700_33MHZ_SPI=y
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
CONFIG_NO_POST=y
CONFIG_SEABIOS_MASTER=y
CONFIG_SEABIOS_THREAD_OPTIONROMS=y
CONFIG_SEABIOS_DEBUG_LEVEL=0

CMOS Settings

nano ~/'Projects/coreboot/src/src/mainboard/asus/kcma-d8/cmos.default'
l3_cache_partitioning=Enable
experimental_memory_speed_boost=Enable

Make

cd ~/'Projects/coreboot/src' && make clean && make && sync

Finalize

mkdir -p ~/'coreboot-bin' && mv ~/'Projects/coreboot/src/build/coreboot.rom' ~/'coreboot-bin/KCMAD8-coreboot-'$(date +%Y-%m-%d)'.rom' && sync

Virtual Machine

scp 192.168.122.X:~/coreboot-bin/*.rom ~/Downloads

Flash

sync && sudo flashrom --programmer 'internal' --write ~/'Downloads/KCMAD8-coreboot-'*'.rom'

Fan Control

sudo dnf install 'lm_sensors' && sudo sensors-detect && sudo -e '/etc/fancontrol' && sudo systemctl enable 'fancontrol'
INTERVAL=10
DEVNAME=/sys/class/hwmon/hwmon6=w83795g

FCTEMPS=/sys/class/hwmon/hwmon6/device/pwm2=/sys/class/hwmon/hwmon6/device/temp8_input
FCFANS=/sys/class/hwmon/hwmon6/device/fan1_input+/sys/class/hwmon/hwmon6/device/fan2_input

MINTEMP=/sys/class/hwmon/hwmon6/device/pwm2=50
MAXTEMP=/sys/class/hwmon/hwmon6/device/pwm2=60

MINSTART=/sys/class/hwmon/hwmon6/device/pwm2=4000
MINSTOP=/sys/class/hwmon/hwmon6/device/pwm2=0
1)
this can be avoided by using an external GPU and disabling the generated VBIOS option for SeaBIOS, but otherwise this isn't a big issue
2)
can't disable individual Ethernet ports and it's all or nothing; ASpeed GPU only needs top jumper moved to enable while the second jumper can stay on disabled
3)
ACPI_BIOS_ERROR BSoD; requires disabling the generated VBIOS option for SeaBIOS to get to that point or otherwise the installer hangs after loading files
4)
I think because of it needing onboard/native graphics? SeaBIOS with the same build of CB works fine
5)
incompatible with Coreboot 2019/01/16, untested with Libreboot, untested with ASUS Vendor BIOS
6)
incompatible with Coreboot 2019/01/16, compatible with Libreboot 20160907, compatible with ASUS Vendor BIOS 3303
8) , 9)
compatible with Coreboot 2019/01/17, incompatible with Libreboot 20160907, compatible with ASUS Vendor BIOS 3303
10)
compatible with Coreboot 2019/01/19, untested with Libreboot, compatible with ASUS Vendor BIOS 3303
11)
expect to see an IMC-related error after the flash; this prevents verifying the flash chip contents, but as long as it flashes correctly this isn't an issue
12)
this IMC flag isn't necessary once Coreboot or Libreboot is flashed and booted from
13)
there's more prerequisites to use that flag; may need iomem=relaxed and a kernel older than 5.0