if BOARD_EMULATION_QEMU_X86_I440FX

config BOARD_SPECIFIC_OPTIONS
	def_bool y
	select CPU_QEMU_X86
	select NO_MMCONF_SUPPORT
	select SOUTHBRIDGE_INTEL_I82371EB
	select HAVE_OPTION_TABLE
	select HAVE_CMOS_DEFAULT
	select HAVE_PIRQ_TABLE
	select HAVE_ACPI_TABLES
	select BOARD_ROMSIZE_KB_256 if !VBOOT
	select BOARD_ROMSIZE_KB_16384 if VBOOT
	select MAINBOARD_HAS_NATIVE_VGA_INIT
	select MAINBOARD_FORCE_NATIVE_VGA_INIT
	select HAVE_ASAN_IN_ROMSTAGE
	select NO_SMM

config VBOOT
	select VBOOT_MUST_REQUEST_DISPLAY
	select VBOOT_STARTS_IN_BOOTBLOCK
	select VBOOT_SEPARATE_VERSTAGE
	select VBOOT_VBNV_CMOS
	select VBOOT_NO_BOARD_SUPPORT
	select GBB_FLAG_DISABLE_LID_SHUTDOWN
	select GBB_FLAG_DISABLE_PD_SOFTWARE_SYNC
	select GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC
	select GBB_FLAG_DISABLE_FWMP

if ARCH_BOOTBLOCK_X86_64
# Need to install page tables in DRAM as the virtual MMU has problems translating paging
# request when the page table resides in emulated ROM. This causes undefined behaviour
# when handling data requests, as well as fetching and decoding instructions
# Real hardware didn't show any problems until now.
config ARCH_X86_64_PGTBL_LOC
	default 0x8000
endif

if VBOOT

config VBOOT_SLOTS_RW_A
	default y

endif

config FMDFILE
	string
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/vboot-rwa-16M.fmd" if VBOOT_SLOTS_RW_A

config VBOOT_VBNV_OFFSET
	hex
	default 0x2c

config MAINBOARD_DIR
	string
	default "emulation/qemu-i440fx"

config MAINBOARD_PART_NUMBER
	string
	default "QEMU x86 i440fx/piix4"

config IRQ_SLOT_COUNT
	int
	default 6

# Skip the first 64KiB as coreboot table pointer is installed
# at address 0
config DCACHE_RAM_BASE
	hex
	default 0x10000

# Memory at 0xa0000 decodes to VGA
config DCACHE_RAM_SIZE
	hex
	default 0x90000

config C_ENV_BOOTBLOCK_SIZE
	hex
	default 0x10000

config DCACHE_BSP_STACK_SIZE
	hex
	default 0x4000

endif # BOARD_EMULATION_QEMU_X86_I440FX
