config BOARD_STARLABS_STARBOOK_SERIES
	def_bool n
	select DRIVERS_I2C_HID
	select EC_STARLABS_ITE
	select EC_STARLABS_FAN
	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 NO_UART_ON_SUPERIO
	select SOC_INTEL_COMMON_BLOCK_HDA_VERB
	select SYSTEM_TYPE_LAPTOP

config BOARD_STARLABS_LABTOP_KBL
	select BOARD_ROMSIZE_KB_8192
	select BOARD_STARLABS_STARBOOK_SERIES
	select CRB_TPM
	select HAVE_INTEL_PTT
	select HAVE_SPD_IN_CBFS
	select MAINBOARD_HAS_LIBGFXINIT
	select MAINBOARD_HAS_TPM2
	select SOC_INTEL_KABYLAKE
	select SPI_FLASH_GIGADEVICE

config BOARD_STARLABS_LABTOP_CML
	select BOARD_ROMSIZE_KB_16384
	select BOARD_STARLABS_STARBOOK_SERIES
	select EC_STARLABS_MAX_CHARGE
	select EC_STARLABS_MIRROR_FLAG
	select EC_STARLABS_NEED_ITE_BIN
	select HAVE_INTEL_PTT
	select HAVE_SPD_IN_CBFS
	select CRB_TPM
	select MAINBOARD_HAS_LIBGFXINIT
	select MAINBOARD_HAS_TPM2
	select SOC_INTEL_COMETLAKE_1
	select SPI_FLASH_WINBOND

config BOARD_STARLABS_STARBOOK_TGL
	select BOARD_ROMSIZE_KB_16384
	select BOARD_STARLABS_STARBOOK_SERIES
	select DRIVERS_INTEL_PMC
	select DRIVERS_INTEL_USB4_RETIMER
	select EC_STARLABS_KBL_LEVELS
	select EC_STARLABS_MAX_CHARGE
	select EC_STARLABS_MIRROR_FLAG
	select EC_STARLABS_NEED_ITE_BIN
	select MEMORY_MAPPED_TPM
	select MAINBOARD_HAS_TPM2
	select SOC_INTEL_COMMON_BLOCK_TCSS
	select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
	select SOC_INTEL_TIGERLAKE
	select SOC_INTEL_TIGERLAKE_S3
	select SPI_FLASH_WINBOND
	select TPM_MEASURED_BOOT

config BOARD_STARLABS_STARBOOK_ADL
	select BOARD_ROMSIZE_KB_32768
	select BOARD_STARLABS_STARBOOK_SERIES
	select DRIVERS_INTEL_PMC
	select EC_STARLABS_KBL_LEVELS
	select EC_STARLABS_MAX_CHARGE
	select EC_STARLABS_MIRROR_FLAG
	select EC_STARLABS_NEED_ITE_BIN
	select MEMORY_MAPPED_TPM
	select MAINBOARD_HAS_TPM2
	select SOC_INTEL_ALDERLAKE
	select SOC_INTEL_ALDERLAKE_PCH_P
	select SOC_INTEL_ALDERLAKE_S3
	select SPI_FLASH_WINBOND
	select TPM_MEASURED_BOOT
	select PCIEXP_SUPPORT_RESIZABLE_BARS

if BOARD_STARLABS_STARBOOK_SERIES

config CCD_PORT
	int
	default 6 if BOARD_STARLABS_LABTOP_CML
	default 4 if BOARD_STARLABS_STARBOOK_ADL
	default 3

config CMOS_DEFAULT_FILE
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/variants/\$(CONFIG_VARIANT_DIR)/cmos.default" if BOARD_STARLABS_STARBOOK_TGL

config CMOS_LAYOUT_FILE
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/variants/\$(CONFIG_VARIANT_DIR)/cmos.layout" if BOARD_STARLABS_STARBOOK_TGL

config CONSOLE_SERIAL
	default n if !EDK2_DEBUG

config DEVICETREE
	default "variants/\$(CONFIG_VARIANT_DIR)/devicetree.cb"

config DIMM_SPD_SIZE
	default 512

config DRIVER_TPM_SPI_CHIP
	default 2

config EC_GPE_SCI
	default 0x6e if BOARD_STARLABS_STARBOOK_TGL || BOARD_STARLABS_STARBOOK_ADL
	default 0x50

config EC_STARLABS_ADD_ITE_BIN
	default y

config EC_STARLABS_ITE_BIN_PATH
	string
	depends on EC_STARLABS_NEED_ITE_BIN
	default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/\$(CONFIG_VARIANT_DIR)/ec.bin"

config EC_VARIANT_DIR
	default "kbl" if !EC_STARLABS_MERLIN && BOARD_STARLABS_LABTOP_KBL
	default "cml" if !EC_STARLABS_MERLIN && BOARD_STARLABS_LABTOP_CML
	default "tgl" if !EC_STARLABS_MERLIN && BOARD_STARLABS_STARBOOK_TGL
	default "adl" if !EC_STARLABS_MERLIN && BOARD_STARLABS_STARBOOK_ADL

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

config IFD_BIN_PATH
	string
	default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/\$(CONFIG_VARIANT_DIR)/flashdescriptor.bin"

config MAINBOARD_DIR
	default "starlabs/starbook"

config MAINBOARD_FAMILY
	string
	default "L3" if BOARD_STARLABS_LABTOP_KBL
	default "L4" if BOARD_STARLABS_LABTOP_CML
	default "B5" if BOARD_STARLABS_STARBOOK_TGL
	default "B6-I" if BOARD_STARLABS_STARBOOK_ADL

config MAINBOARD_PART_NUMBER
	default "LabTop Mk III" if BOARD_STARLABS_LABTOP_KBL
	default "LabTop Mk IV" if BOARD_STARLABS_LABTOP_CML
	default "StarBook Mk V" if BOARD_STARLABS_STARBOOK_TGL
	default "StarBook Mk VI" if BOARD_STARLABS_STARBOOK_ADL

config MAINBOARD_SMBIOS_PRODUCT_NAME
	default "StarBook" if BOARD_STARLABS_STARBOOK_TGL || BOARD_STARLABS_STARBOOK_ADL
	default "LabTop"

config ME_BIN_PATH
	string
	default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/\$(CONFIG_VARIANT_DIR)/intel_me.bin"

config EDK2_BOOTSPLASH_FILE
	string
	default "3rdparty/blobs/mainboard/starlabs/Logo.bmp"

config PCIEXP_DEFAULT_MAX_RESIZABLE_BAR_BITS
	default 32

config SOC_INTEL_CSE_SEND_EOP_EARLY
	default n if BOARD_STARLABS_STARBOOK_ADL

config UART_FOR_CONSOLE
	default 0 if BOARD_STARLABS_STARBOOK_ADL
	default 2

config USE_PM_ACPI_TIMER
	default n if BOARD_STARLABS_STARBOOK_TGL || BOARD_STARLABS_STARBOOK_ADL

config VARIANT_DIR
	default "kbl" if BOARD_STARLABS_LABTOP_KBL
	default "cml" if BOARD_STARLABS_LABTOP_CML
	default "tgl" if BOARD_STARLABS_STARBOOK_TGL
	default "adl" if BOARD_STARLABS_STARBOOK_ADL

endif
