if BOARD_SYSTEM76_GALP3_C || BOARD_SYSTEM76_DARP5

config BOARD_SPECIFIC_OPTIONS
	def_bool y
	select BOARD_ROMSIZE_KB_16384
	select DRIVERS_I2C_HID
	select EC_SYSTEM76_EC
	select EC_SYSTEM76_EC_COLOR_KEYBOARD if BOARD_SYSTEM76_DARP5
	select HAVE_ACPI_RESUME
	select HAVE_ACPI_TABLES
	select HAVE_CMOS_DEFAULT
	select HAVE_OPTION_TABLE
	select INTEL_GMA_HAVE_VBT
	select INTEL_LPSS_UART_FOR_CONSOLE
	select MEMORY_MAPPED_TPM
	select MAINBOARD_HAS_TPM2
	select NO_UART_ON_SUPERIO
	select PCIEXP_HOTPLUG
	select PCIEXP_HOTPLUG_PREFETCH_MEM_BELOW_4G # Fix running out of MTRRs
	select SOC_INTEL_COMMON_BLOCK_HDA_VERB
	select SOC_INTEL_WHISKEYLAKE
	select SPD_READ_BY_WORD
	select SYSTEM_TYPE_LAPTOP
	select TPM_MEASURED_BOOT
	select TPM_RDRESP_NEED_DELAY

config MAINBOARD_DIR
	default "system76/whl-u"

config VARIANT_DIR
	default "galp3-c" if BOARD_SYSTEM76_GALP3_C
	default "darp5" if BOARD_SYSTEM76_DARP5

config OVERRIDE_DEVICETREE
	default "variants/\$(CONFIG_VARIANT_DIR)/overridetree.cb"

config MAINBOARD_PART_NUMBER
	default "galp3-c" if BOARD_SYSTEM76_GALP3_C
	default "darp5" if BOARD_SYSTEM76_DARP5

config MAINBOARD_SMBIOS_PRODUCT_NAME
	string
	default "Galago Pro" if BOARD_SYSTEM76_GALP3_C
	default "Darter Pro" if BOARD_SYSTEM76_DARP5

config MAINBOARD_VERSION
	string
	default "galp3-c" if BOARD_SYSTEM76_GALP3_C
	default "darp5" if BOARD_SYSTEM76_DARP5

config CBFS_SIZE
	default 0xA00000

config CONSOLE_POST
	bool
	default y

config ONBOARD_VGA_IS_PRIMARY
	bool
	default y

config UART_FOR_CONSOLE
	int
	default 2

config MAX_CPUS
	int
	default 8

config DIMM_MAX
	default 2

config POST_DEVICE
	bool
	default n

endif
