##
## This file is part of the coreboot project.
##
##
## SPDX-License-Identifier: GPL-2.0-only

# To execute, do:
# qemu-system-??

if BOARD_EMULATION_QEMU_POWER8

config BOARD_SPECIFIC_OPTIONS
	def_bool y
	select CPU_QEMU_POWER8
	select BOARD_ROMSIZE_KB_4096
	select ARCH_BOOTBLOCK_PPC64
	select ARCH_VERSTAGE_PPC64
	select ARCH_ROMSTAGE_PPC64
	select ARCH_RAMSTAGE_PPC64
	select HAVE_UART_SPECIAL
	select BOOT_DEVICE_NOT_SPI_FLASH
	select MISSING_BOARD_RESET

config MAINBOARD_DIR
	string
	default "emulation/qemu-power8"

config MAINBOARD_PART_NUMBER
	string
	default "QEMU POWER8"

config MAX_CPUS
	int
	default 1

config MAINBOARD_VENDOR
	string
	default "QEMU"

config DRAM_SIZE_MB
	int
	default 32768

endif #  BOARD_EMULATION_QEMU_POWER8
