config BOARD_SYSTEM76_ADL_COMMON
	def_bool n
	select BOARD_ROMSIZE_KB_32768
	select DRIVERS_GENERIC_BAYHUB_LV2
	select DRIVERS_GENERIC_CBFS_SERIAL
	select DRIVERS_GENERIC_CBFS_UUID
	select DRIVERS_I2C_HID
	select DRIVERS_INTEL_PMC
	select DRIVERS_INTEL_USB4_RETIMER
	select EC_SYSTEM76_EC
	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 MAINBOARD_HAS_TPM2
	select MEMORY_MAPPED_TPM
	select NO_UART_ON_SUPERIO
	select SOC_INTEL_ALDERLAKE_PCH_P
	select SOC_INTEL_COMMON_BLOCK_HDA_VERB
	select SOC_INTEL_CRASHLOG
	select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
	select SPD_READ_BY_WORD
	select SYSTEM_TYPE_LAPTOP
	select TPM_RDRESP_NEED_DELAY

config BOARD_SYSTEM76_DARP8
	select BOARD_SYSTEM76_ADL_COMMON

config BOARD_SYSTEM76_GALP6
	select BOARD_SYSTEM76_ADL_COMMON

config BOARD_SYSTEM76_GAZE17_3050
	select BOARD_SYSTEM76_ADL_COMMON
	select EC_SYSTEM76_EC_DGPU

config BOARD_SYSTEM76_GAZE17_3060_B
	select BOARD_SYSTEM76_ADL_COMMON
	select EC_SYSTEM76_EC_DGPU
	select MAINBOARD_USES_IFD_GBE_REGION

config BOARD_SYSTEM76_LEMP11
	select BOARD_SYSTEM76_ADL_COMMON
	select HAVE_SPD_IN_CBFS

config BOARD_SYSTEM76_ORYP9
	select BOARD_SYSTEM76_ADL_COMMON
	select DRIVERS_I2C_TAS5825M
	select EC_SYSTEM76_EC_DGPU

config BOARD_SYSTEM76_ORYP10
	select BOARD_SYSTEM76_ADL_COMMON
	select EC_SYSTEM76_EC_DGPU

if BOARD_SYSTEM76_ADL_COMMON

config MAINBOARD_DIR
	default "system76/adl"

config VARIANT_DIR
	default "darp8" if BOARD_SYSTEM76_DARP8
	default "galp6" if BOARD_SYSTEM76_GALP6
	default "gaze17-3050" if BOARD_SYSTEM76_GAZE17_3050
	default "gaze17-3060-b" if BOARD_SYSTEM76_GAZE17_3060_B
	default "lemp11" if BOARD_SYSTEM76_LEMP11
	default "oryp9" if BOARD_SYSTEM76_ORYP9
	default "oryp10" if BOARD_SYSTEM76_ORYP10

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

config MAINBOARD_PART_NUMBER
	default "darp8" if BOARD_SYSTEM76_DARP8
	default "galp6" if BOARD_SYSTEM76_GALP6
	default "gaze17-3050" if BOARD_SYSTEM76_GAZE17_3050
	default "gaze17-3060-b" if BOARD_SYSTEM76_GAZE17_3060_B
	default "lemp11" if BOARD_SYSTEM76_LEMP11
	default "oryp9" if BOARD_SYSTEM76_ORYP9
	default "oryp10" if BOARD_SYSTEM76_ORYP10

config MAINBOARD_SMBIOS_PRODUCT_NAME
	default "Darter Pro" if BOARD_SYSTEM76_DARP8
	default "Galago Pro" if BOARD_SYSTEM76_GALP6
	default "Gazelle" if BOARD_SYSTEM76_GAZE17_3050 || BOARD_SYSTEM76_GAZE17_3060_B
	default "Lemur Pro" if BOARD_SYSTEM76_LEMP11
	default "Oryx Pro" if BOARD_SYSTEM76_ORYP9 || BOARD_SYSTEM76_ORYP10

config MAINBOARD_VERSION
	default "darp8" if BOARD_SYSTEM76_DARP8
	default "galp6" if BOARD_SYSTEM76_GALP6
	default "gaze17-3050" if BOARD_SYSTEM76_GAZE17_3050
	default "gaze17-3060-b" if BOARD_SYSTEM76_GAZE17_3060_B
	default "lemp11" if BOARD_SYSTEM76_LEMP11
	default "oryp9" if BOARD_SYSTEM76_ORYP9
	default "oryp10" if BOARD_SYSTEM76_ORYP10

config CONSOLE_POST
	default y

config D3COLD_SUPPORT
	default n

config DIMM_SPD_SIZE
	default 512

config FMDFILE
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/board.fmd"

config ONBOARD_VGA_IS_PRIMARY
	default y

config POST_DEVICE
	default n

config TPM_MEASURED_BOOT
	default y

config UART_FOR_CONSOLE
	default 0

# PM Timer Disabled, saves power
config USE_PM_ACPI_TIMER
	default n

endif
