2022-08-25 18:43:31 +00:00
|
|
|
# Configuration for building a coreboot ROM that works in
|
|
|
|
# the qemu emulator in graphical mode thanks to FBWhiptail
|
|
|
|
# This version requires a supported HOTP Security dongle (Nitrokey Pro/Storage or Librem Key)
|
|
|
|
#
|
|
|
|
# TPM can be used with a qemu software TPM (TIS, 2.0).
|
|
|
|
export CONFIG_COREBOOT=y
|
2023-05-23 14:37:16 +00:00
|
|
|
export CONFIG_COREBOOT_VERSION=4.19
|
2022-08-25 18:43:31 +00:00
|
|
|
export CONFIG_LINUX_VERSION=5.10.5
|
|
|
|
|
2023-07-12 18:17:43 +00:00
|
|
|
#Enable only one RESTRICTED/BASIC boot modes below to test them manually (we cannot inject config under QEMU (no internal flashing)
|
|
|
|
#export CONFIG_RESTRICTED_BOOT=y
|
2023-07-17 16:31:25 +00:00
|
|
|
#export CONFIG_BASIC=y
|
2023-07-12 18:17:43 +00:00
|
|
|
|
2023-02-23 22:05:15 +00:00
|
|
|
#Enable DEBUG output
|
|
|
|
export CONFIG_DEBUG_OUTPUT=y
|
|
|
|
export CONFIG_ENABLE_FUNCTION_TRACING_OUTPUT=y
|
2023-04-04 13:36:31 +00:00
|
|
|
#Enable TPM2 pcap output under /tmp
|
|
|
|
export CONFIG_TPM2_CAPTURE_PCAP=y
|
2023-02-23 22:05:15 +00:00
|
|
|
|
2022-08-25 18:43:31 +00:00
|
|
|
CONFIG_COREBOOT_CONFIG=config/coreboot-qemu-tpm2.config
|
|
|
|
CONFIG_LINUX_CONFIG=config/linux-qemu.config
|
|
|
|
|
|
|
|
ifeq "$(CONFIG_UROOT)" "y"
|
|
|
|
CONFIG_BUSYBOX=n
|
|
|
|
else
|
|
|
|
CONFIG_KEXEC=y
|
|
|
|
CONFIG_QRENCODE=y
|
|
|
|
CONFIG_TPMTOTP=y
|
|
|
|
CONFIG_POPT=y
|
|
|
|
CONFIG_FLASHTOOLS=y
|
|
|
|
CONFIG_FLASHROM=y
|
|
|
|
CONFIG_PCIUTILS=y
|
|
|
|
CONFIG_UTIL_LINUX=y
|
|
|
|
CONFIG_CRYPTSETUP2=y
|
|
|
|
CONFIG_GPG2=y
|
|
|
|
CONFIG_LVM2=y
|
|
|
|
CONFIG_MBEDTLS=y
|
|
|
|
CONFIG_DROPBEAR=y
|
|
|
|
CONFIG_MSRTOOLS=y
|
|
|
|
CONFIG_HOTPKEY=y
|
2024-01-09 19:33:23 +00:00
|
|
|
export CONFIG_AUTO_BOOT_TIMEOUT=5
|
2022-08-25 18:43:31 +00:00
|
|
|
|
|
|
|
#Uncomment only one of the following block
|
|
|
|
#Required for graphical gui-init (FBWhiptail)
|
|
|
|
CONFIG_CAIRO=y
|
|
|
|
CONFIG_FBWHIPTAIL=y
|
|
|
|
#
|
|
|
|
#text-based init (generic-init and gui-init)
|
|
|
|
#CONFIG_NEWT=y
|
|
|
|
#CONFIG_SLANG=y
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
export CONFIG_LINUX_USB_COMPANION_CONTROLLER=y
|
|
|
|
CONFIG_LINUX_USB=y
|
|
|
|
CONFIG_LINUX_E1000=y
|
|
|
|
|
|
|
|
#Uncomment only one BOOTSCRIPT:
|
|
|
|
#Whiptail-based init (text-based or FBWhiptail)
|
|
|
|
export CONFIG_BOOTSCRIPT=/bin/gui-init
|
|
|
|
#
|
|
|
|
#text-based original init:
|
|
|
|
#export CONFIG_BOOTSCRIPT=/bin/generic-init
|
|
|
|
export CONFIG_BOOT_REQ_HASH=n
|
|
|
|
export CONFIG_BOOT_REQ_ROLLBACK=n
|
|
|
|
export CONFIG_BOOT_RECOVERY_SERIAL="/dev/ttyS0"
|
|
|
|
export CONFIG_BOOT_KERNEL_ADD="console=ttyS0 console=tty systemd.zram=0"
|
|
|
|
export CONFIG_BOOT_KERNEL_REMOVE="quiet rhgb splash"
|
|
|
|
|
|
|
|
#TPM2 requirements
|
|
|
|
export CONFIG_TPM2_TOOLS=y
|
|
|
|
export CONFIG_PRIMARY_KEY_TYPE=ecc
|
|
|
|
CONFIG_TPM2_TSS=y
|
|
|
|
CONFIG_OPENSSL=y
|
|
|
|
|
|
|
|
export CONFIG_BOOT_DEV="/dev/vda1"
|
|
|
|
export CONFIG_BOARD_NAME="qemu-coreboot-fbwhiptail-tpm2-hotp"
|
|
|
|
|
2023-12-18 20:24:21 +00:00
|
|
|
BOARD_TARGETS := qemu
|