## SPDX-License-Identifier: GPL-2.0-only

config BOARD_SYSTEM76_RPL_COMMON
	def_bool n
	select BOARD_ROMSIZE_KB_32768
	select DRIVERS_GENERIC_BAYHUB_LV2 if !BOARD_SYSTEM76_BONW15
	select DRIVERS_GENERIC_CBFS_SERIAL
	select DRIVERS_GENERIC_CBFS_UUID
	select DRIVERS_I2C_HID
	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 PCIEXP_SUPPORT_RESIZABLE_BARS
	select SOC_INTEL_COMMON_BLOCK_HDA_VERB
	select SOC_INTEL_CRASHLOG
	select SOC_INTEL_RAPTORLAKE
	select SPD_READ_BY_WORD
	select SYSTEM_TYPE_LAPTOP
	select TPM_RDRESP_NEED_DELAY

config BOARD_SYSTEM76_ADDW3
	select BOARD_SYSTEM76_RPL_COMMON
	select EC_SYSTEM76_EC_DGPU
	select MAINBOARD_USES_IFD_GBE_REGION
	select PCIEXP_HOTPLUG
	select SOC_INTEL_ALDERLAKE_PCH_S

config BOARD_SYSTEM76_BONW15
	select BOARD_SYSTEM76_RPL_COMMON
	select EC_SYSTEM76_EC_DGPU
	select PCIEXP_HOTPLUG
	select SOC_INTEL_ALDERLAKE_PCH_S

config BOARD_SYSTEM76_DARP9
	select BOARD_SYSTEM76_RPL_COMMON
	select PCIEXP_HOTPLUG
	select SOC_INTEL_ALDERLAKE_PCH_P

config BOARD_SYSTEM76_GALP7
	select BOARD_SYSTEM76_RPL_COMMON
	select PCIEXP_HOTPLUG
	select SOC_INTEL_ALDERLAKE_PCH_P

config BOARD_SYSTEM76_GAZE18
	select BOARD_SYSTEM76_RPL_COMMON
	select EC_SYSTEM76_EC_DGPU
	select SOC_INTEL_ALDERLAKE_PCH_P

config BOARD_SYSTEM76_LEMP12
	select BOARD_SYSTEM76_RPL_COMMON
	select HAVE_SPD_IN_CBFS
	select SOC_INTEL_ALDERLAKE_PCH_P
	select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES

config BOARD_SYSTEM76_ORYP11
	select BOARD_SYSTEM76_RPL_COMMON
	select EC_SYSTEM76_EC_DGPU
	select SOC_INTEL_ALDERLAKE_PCH_P
	select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES

config BOARD_SYSTEM76_SERW13
	select BOARD_SYSTEM76_RPL_COMMON
	select EC_SYSTEM76_EC_DGPU
	select PCIEXP_HOTPLUG
	select SOC_INTEL_ALDERLAKE_PCH_S

if BOARD_SYSTEM76_RPL_COMMON

config MAINBOARD_DIR
	default "system76/rpl"

config VARIANT_DIR
	default "addw3" if BOARD_SYSTEM76_ADDW3
	default "bonw15" if BOARD_SYSTEM76_BONW15
	default "darp9" if BOARD_SYSTEM76_DARP9
	default "galp7" if BOARD_SYSTEM76_GALP7
	default "gaze18" if BOARD_SYSTEM76_GAZE18
	default "lemp12" if BOARD_SYSTEM76_LEMP12
	default "oryp11" if BOARD_SYSTEM76_ORYP11
	default "serw13" if BOARD_SYSTEM76_SERW13

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

config MAINBOARD_PART_NUMBER
	default "addw3" if BOARD_SYSTEM76_ADDW3
	default "bonw15" if BOARD_SYSTEM76_BONW15
	default "darp9" if BOARD_SYSTEM76_DARP9
	default "galp7" if BOARD_SYSTEM76_GALP7
	default "gaze18" if BOARD_SYSTEM76_GAZE18
	default "lemp12" if BOARD_SYSTEM76_LEMP12
	default "oryp11" if BOARD_SYSTEM76_ORYP11
	default "serw13" if BOARD_SYSTEM76_SERW13

config MAINBOARD_SMBIOS_PRODUCT_NAME
	default "Adder WS" if BOARD_SYSTEM76_ADDW3
	default "Bonobo WS" if BOARD_SYSTEM76_BONW15
	default "Darter Pro" if BOARD_SYSTEM76_DARP9
	default "Galago Pro" if BOARD_SYSTEM76_GALP7
	default "Gazelle" if BOARD_SYSTEM76_GAZE18
	default "Lemur Pro" if BOARD_SYSTEM76_LEMP12
	default "Oryx Pro" if BOARD_SYSTEM76_ORYP11
	default "Serval WS" if BOARD_SYSTEM76_SERW13

config MAINBOARD_VERSION
	default "addw3" if BOARD_SYSTEM76_ADDW3
	default "bonw15" if BOARD_SYSTEM76_BONW15
	default "darp9" if BOARD_SYSTEM76_DARP9
	default "galp7" if BOARD_SYSTEM76_GALP7
	default "gaze18" if BOARD_SYSTEM76_GAZE18
	default "lemp12" if BOARD_SYSTEM76_LEMP12
	default "oryp11" if BOARD_SYSTEM76_ORYP11
	default "serw13" if BOARD_SYSTEM76_SERW13

config CONSOLE_POST
	default y

config D3COLD_SUPPORT
	default n

config DIMM_SPD_SIZE
	default 512

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

config ONBOARD_VGA_IS_PRIMARY
	default y

config PCIEXP_DEFAULT_MAX_RESIZABLE_BAR_BITS
	default 36

config POST_DEVICE
	default n

config TPM_MEASURED_BOOT
	default y

config UART_FOR_CONSOLE
	default 0 if SOC_INTEL_ALDERLAKE_PCH_P
	default 2 if SOC_INTEL_ALDERLAKE_PCH_S

# PM Timer Disabled, saves power
config USE_PM_ACPI_TIMER
	default n

endif