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

if VENDOR_STARLABS

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

config CONSOLE_SERIAL
	default n if !EDK2_DEBUG

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

config EC_STARLABS_ITE_BIN_PATH
	string
	default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/\$(CONFIG_VARIANT_DIR)/ec.bin" if \
		BOARD_STARLABS_ADL_SERIES || BOARD_STARLABS_CEZANNE_SERIES || \
		BOARD_STARLABS_STARBOOK_SERIES || BOARD_STARLABS_STARFIGHTER_SERIES

if BOARD_STARLABS_ADL_SERIES || BOARD_STARLABS_STARBOOK_SERIES || \
	BOARD_STARLABS_STARFIGHTER_SERIES

config D3COLD_SUPPORT
	default n

config DIMM_SPD_SIZE
	default 1024 if BOARD_STARLABS_STARBOOK_MTL
	default 512

config FMDFILE
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/variants/\$(CONFIG_VARIANT_DIR)/vboot.fmd" if VBOOT
	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 ME_BIN_PATH
	string
	default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/\$(CONFIG_VARIANT_DIR)/intel_me.bin"

config POWER_STATE_DEFAULT_ON_AFTER_FAILURE
	default n

config SOC_INTEL_CSE_SEND_EOP_EARLY
	default n

config USE_PM_ACPI_TIMER
	default n

endif

config STARLABS_MEMORY_SETTINGS_VERSION
	bool
	default y if PLATFORM_USES_FSP2_0 && CACHE_MRC_SETTINGS
	select FSP_PLATFORM_MEMORY_SETTINGS_VERSIONS

menu "Star Labs Settings"

config BOOTMEDIA_SMM_BWP
	bool
	default y if SOC_INTEL_COMMON_BLOCK_SMM

config BOOTMEDIA_SMM_BWP_RUNTIME_OPTION
	bool
	default y if SOC_INTEL_COMMON_BLOCK_SMM

config USE_LEGACY_8254_TIMER
	default n if VENDOR_STARLABS

config USE_PC_CMOS_ALTCENTURY
	default n if VENDOR_STARLABS

config STARLABS_HAS_I8042_INPUT
	bool
	default y if SYSTEM_TYPE_LAPTOP || SYSTEM_TYPE_DETACHABLE

config STARLABS_NO_PCAT_8259
	bool
	default y if BOARD_STARLABS_BYTE_ADL || BOARD_STARLABS_BYTE_TWL
	select NO_PCAT_8259

config DRIVERS_EFI_FW_INFO
	def_bool y

config STARLABS_COMMON_POWERCAP
	bool
	default y if SOC_INTEL_COMMON_BLOCK_POWER_LIMIT

config STARLABS_COMMON_CFR
	bool
	default y if CPU_INTEL_COMMON

config SOC_INTEL_COMMON_ACPI_TIME_ALARM
	default y if SOC_INTEL_COMMON_BLOCK_SMM_HAS_WADT

config SOC_INTEL_COMMON_ACPI_TIME_ALARM_S5
	default y if SOC_INTEL_COMMON_ACPI_TIME_ALARM

config STARLABS_LEGACY_PL4
	bool

config STARLABS_NVME_POWER_SEQUENCE
	bool "Enable NVMe/M.2 slot power sequence"
	depends on SOC_INTEL_COMMON_BLOCK_GPIO
	default n
	help
	  Enable Fatcat-style 3-stage NVMe/M.2 slot sequencing using PWREN, PERST#
	  and CLKREQ# pads.

	  The sequencing is:
	    1) pre-mem: PERST# asserted; PWREN=0; CLKREQ# disabled
	    2) BS_PRE_DEVICE exit: PERST# still asserted; PWREN=1; CLKREQ# native
	    3) BS_DEV_INIT_CHIPS entry: PERST# deasserted

	  Boards selecting this option must provide their own pad configs and
	  implement stage 1 (pre-mem) in their early pad configuration.

	  For stage 2 and stage 3, boards must either implement the
	  `variant_nvme_power_sequence_*()` helpers or provide pad tables via
	  `variant_nvme_power_sequence_pads()` and
	  `variant_nvme_power_sequence_post_pads()`.

config TCG_OPAL_S3_UNLOCK
	default y

config MB_COMMON_DIR
	string
	default "starlabs/common"

config STARLABS_ACPI_EFI_OPTION_SMI
	bool "Expose coreboot options to ACPI via SMI (UEFI var store)"
	depends on USE_UEFI_VARIABLE_STORE
	depends on HAVE_ACPI_TABLES
	default y
	help
	  Provide ACPI methods that proxy a restricted set of coreboot options
	  (e.g. keyboard backlight and trackpad state) to the UEFI variable
	  store via an SMM APMC SMI handler.

config SOC_INTEL_COMMON_BLOCK_SMM_TCO_INTRUDER_SMI_ENABLE
	default n

source "src/mainboard/starlabs/common/hda/Kconfig"

endmenu

endif
