if BOARD_ASUS_KGPE_D16

config BOARD_SPECIFIC_OPTIONS # dummy
	def_bool y
	select CPU_AMD_SOCKET_G34_NON_AGESA
	select DIMM_DDR3
	select DIMM_REGISTERED
	# select QRANK_DIMM_SUPPORT
	select DIMM_VOLTAGE_SET_SUPPORT
	select NORTHBRIDGE_AMD_AMDFAM10
	select SOUTHBRIDGE_AMD_SR5650
	select SOUTHBRIDGE_AMD_SB700
	select SOUTHBRIDGE_AMD_SB700_DISABLE_ISA_DMA
	select SOUTHBRIDGE_AMD_SUBTYPE_SP5100
	select SUPERIO_NUVOTON_NCT5572D
	select PARALLEL_CPU_INIT
	select HAVE_ROMSTAGE_CONSOLE_SPINLOCK
	select HAVE_ROMSTAGE_NVRAM_CBFS_SPINLOCK
	select HAVE_HARD_RESET
	select HAVE_OPTION_TABLE
	select HAVE_CMOS_DEFAULT
	select HAVE_PIRQ_TABLE
	select HAVE_MP_TABLE
	select HAVE_ACPI_TABLES
	select SB_HT_CHAIN_UNITID_OFFSET_ONLY
	select LIFT_BSP_APIC_ID
	select BOARD_ROMSIZE_KB_2048
	select ENABLE_APIC_EXT_ID
	select MMCONF_SUPPORT_DEFAULT
	select SPI_FLASH
	select SPI_FLASH_WINBOND
	select HAVE_ACPI_RESUME
	select DRIVERS_I2C_W83795
	select DRIVERS_ASPEED_AST2050
	select MAINBOARD_HAS_NATIVE_VGA_INIT_TEXTMODECFG

config MAINBOARD_DIR
	string
	default "asus/kgpe-d16"

config BOOTBLOCK_MAINBOARD_INIT
	string
	default "mainboard/asus/kgpe-d16/bootblock.c"

config DCACHE_RAM_BASE
	hex
	default 0xc2000

config DCACHE_RAM_SIZE
	hex
	default 0x1e000

config APIC_ID_OFFSET
	hex
	default 0

config MAINBOARD_PART_NUMBER
	string
	default "KGPE-D16"

config HW_MEM_HOLE_SIZEK
	hex
	default 0x100000

config MAX_CPUS
	int
	default 32

# 2 (internal) processors per G34 socket
config MAX_PHYSICAL_CPUS
	int
	default 4

config HT_CHAIN_UNITID_BASE
	hex
	default 0x0

config HT_CHAIN_END_UNITID_BASE
	hex
	default 0x20

config IRQ_SLOT_COUNT
	int
	default 13

config SOUTHBRIDGE_AMD_SB700_SATA_PORT_COUNT_BITFIELD
	hex
	default 0x3f

config ONBOARD_VGA_IS_PRIMARY
	bool
	default y

config MAINBOARD_POWER_ON_AFTER_POWER_FAIL
	bool
	default y

config MAX_REBOOT_CNT
	int
	default 10

endif # BOARD_ASUS_KGPE_D16
