config BOARD_GOOGLE_BASEBOARD_DEDEDE
	def_bool n
	select BOARD_ROMSIZE_KB_16384 if !BOARD_ROMSIZE_KB_32768
	select CR50_USE_LONG_INTERRUPT_PULSES
	select DPTF_USE_EISA_HID
	select DRIVERS_GENERIC_GPIO_KEYS
	select DRIVERS_I2C_GENERIC
	select DRIVERS_I2C_GPIO_MUX
	select DRIVERS_I2C_HID
	select DRIVERS_INTEL_DPTF
	select DRIVERS_SPI_ACPI
	select DRIVERS_USB_ACPI
	select EC_GOOGLE_CHROMEEC
	select EC_GOOGLE_CHROMEEC_BOARDID
	select EC_GOOGLE_CHROMEEC_ESPI
	select EC_GOOGLE_CHROMEEC_SKUID
	select FW_CONFIG
	select FW_CONFIG_SOURCE_CHROMEEC_CBI
	select GOOGLE_SMBIOS_MAINBOARD_VERSION
	select HAVE_ACPI_RESUME
	select HAVE_ACPI_TABLES
	select INTEL_LPSS_UART_FOR_CONSOLE
	select MAINBOARD_HAS_CHROMEOS
	select MAINBOARD_HAS_SPI_TPM_CR50
	select MAINBOARD_HAS_TPM2
	select SOC_INTEL_JASPERLAKE
	select SOC_INTEL_COMMON_BLOCK_DTT
	select SOC_INTEL_CSE_LITE_SKU
	select HAVE_SPD_IN_CBFS if !BOARD_GOOGLE_DEDEDE
	select DRIVERS_INTEL_MIPI_CAMERA
	select SOC_INTEL_COMMON_BLOCK_IPU

if BOARD_GOOGLE_BASEBOARD_DEDEDE

config BASEBOARD_DEDEDE_LAPTOP
	def_bool n
	select SYSTEM_TYPE_LAPTOP

config CHROMEOS
	bool
	default y
	select CHROMEOS_CSE_BOARD_RESET_OVERRIDE
	select CHROMEOS_DRAM_PART_NUMBER_IN_CBI
	select EC_GOOGLE_CHROMEEC_SWITCHES
	select GBB_FLAG_FORCE_DEV_SWITCH_ON
	select GBB_FLAG_FORCE_DEV_BOOT_USB
	select GBB_FLAG_FORCE_DEV_BOOT_LEGACY
	select GBB_FLAG_FORCE_MANUAL_RECOVERY
	select HAS_RECOVERY_MRC_CACHE
	select VBOOT_EARLY_EC_SYNC
	select VBOOT_LID_SWITCH

config CHROMEOS_WIFI_SAR
	bool "Enable SAR options for Chrome OS build"
	depends on CHROMEOS
	select DSAR_ENABLE
	select SAR_ENABLE
	select USE_SAR
	select WIFI_SAR_CBFS

config DEVICETREE
	string
	default "variants/baseboard/devicetree.cb"

config DIMM_SPD_SIZE
	int
	default 512

config DRIVER_TPM_SPI_BUS
	default 0x1

config FMDFILE
	string
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos-dedede-16MiB.fmd" if BOARD_ROMSIZE_KB_16384
	default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/chromeos-dedede-32MiB.fmd" if BOARD_ROMSIZE_KB_32768

config MAINBOARD_DIR
	string
	default "google/dedede"

config MAINBOARD_FAMILY
	string
	default "Google_Dedede" if BOARD_GOOGLE_DEDEDE

config MAINBOARD_PART_NUMBER
	string
	default "Boten" if BOARD_GOOGLE_BOTEN
	default "Boten" if BOARD_GOOGLE_BOTEN_LEGACY
	default "Dedede" if BOARD_GOOGLE_DEDEDE
	default "Drawcia" if BOARD_GOOGLE_DRAWCIA
	default "Drawcia" if BOARD_GOOGLE_DRAWCIA_LEGACY
	default "Madoo" if BOARD_GOOGLE_MADOO
	default "Waddledoo" if BOARD_GOOGLE_WADDLEDOO
	default "Waddledee" if BOARD_GOOGLE_WADDLEDEE
	default "Wheelie" if BOARD_GOOGLE_WHEELIE
	default "Magolor" if BOARD_GOOGLE_MAGOLOR
	default "Metaknight" if BOARD_GOOGLE_METAKNIGHT
	default "Lantis" if BOARD_GOOGLE_LANTIS
	default "Galtic" if BOARD_GOOGLE_GALTIC
	default "Sasuke" if BOARD_GOOGLE_SASUKE

config MAX_CPUS
	int
	default 4

config OVERRIDE_DEVICETREE
	string
	default "variants/\$(CONFIG_VARIANT_DIR)/overridetree.cb" if !BOARD_GOOGLE_DEDEDE

config TPM_TIS_ACPI_INTERRUPT
	int
	default 4  # GPE0_DW0_4 (GPP_B4)

config UART_FOR_CONSOLE
	int
	default 2

config VARIANT_DIR
	string
	default "boten" if BOARD_GOOGLE_BOTEN
	default "boten" if BOARD_GOOGLE_BOTEN_LEGACY
	default "dedede" if BOARD_GOOGLE_DEDEDE
	default "drawcia" if BOARD_GOOGLE_DRAWCIA
	default "drawcia" if BOARD_GOOGLE_DRAWCIA_LEGACY
	default "madoo" if BOARD_GOOGLE_MADOO
	default "waddledoo" if BOARD_GOOGLE_WADDLEDOO
	default "waddledee" if BOARD_GOOGLE_WADDLEDEE
	default "wheelie" if BOARD_GOOGLE_WHEELIE
	default "magolor" if BOARD_GOOGLE_MAGOLOR
	default "metaknight" if BOARD_GOOGLE_METAKNIGHT
	default "lantis" if BOARD_GOOGLE_LANTIS
	default "galtic" if BOARD_GOOGLE_GALTIC
	default "sasuke" if BOARD_GOOGLE_SASUKE

endif #BOARD_GOOGLE_BASEBOARD_DEDEDE
