# Configuration for emulating LinuxBoot+Heads with qemu
#
export CONFIG_LINUXBOOT=y
export CONFIG_LINUX_VERSION=4.14.62

CONFIG_LINUXBOOT_BOARD=qemu
CONFIG_LINUX_CONFIG=config/linux-linuxboot.config

ifeq "$(CONFIG_UROOT)" "y"
CONFIG_BUSYBOX=n
else
CONFIG_CRYPTSETUP=y
CONFIG_LVM2=y
CONFIG_MBEDTLS=y
CONFIG_PCIUTILS=y
CONFIG_POPT=y
CONFIG_QRENCODE=y
CONFIG_TPMTOTP=y
endif

CONFIG_FLASHROM=y
CONFIG_FLASHTOOLS=y
CONFIG_GPG2=y
CONFIG_KEXEC=y
CONFIG_UTIL_LINUX=y
CONFIG_DROPBEAR=y
#CONFIG_FROTZ=y

CONFIG_LINUX_USB=y
CONFIG_LINUX_E1000=y
CONFIG_LINUX_SCSI_GDTH=y
CONFIG_LINUX_ATA=y
CONFIG_LINUX_AHCI=y

export CONFIG_BOOTSCRIPT=/bin/generic-init
export CONFIG_BOOTSCRIPT_NETWORK=/bin/network-init-recovery

export CONFIG_BOOT_REQ_HASH=n
export CONFIG_BOOT_REQ_ROLLBACK=n
export CONFIG_BOOT_DEV="/dev/sda1"
export CONFIG_BOOT_STATIC_IP=10.0.2.15

# You can ssh into the qemu instance by running
# ssh -p 5555 root@localhost
# The LinuxBoot firmware should set its ip address to 10.0.2.15
# or run udhcpc to get a qemu address

run:
	qemu-system-x86_64 \
		-machine q35,smm=on  \
		-global ICH9-LPC.disable_s3=1 \
		-global driver=cfi.pflash01,property=secure,value=on \
		-redir tcp:5555::22 \
		--serial $(or $(SERIAL),/dev/tty) \
		-drive if=pflash,format=raw,unit=0,file=$(build)/$(BOARD)/linuxboot.rom
	stty sane