# Copyright (c) 2020 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

if BOARD_EHL_CRB || BOARD_EHL_CRB_SBL

config BOARD
	default "ehl_crb_sbl" if BOARD_EHL_CRB_SBL
	default "ehl_crb"

config BUILD_OUTPUT_STRIPPED
	default y

config MP_NUM_CPUS
	default 2

if BOARD_EHL_CRB_SBL
config SHELL_BACKEND_SERIAL_INTERRUPT_DRIVEN
	depends on SHELL_BACKEND_SERIAL
	default n
endif

config HPET_TIMER
	default y

# TSC on this board is 1.9 GHz, HPET and APIC are 19.2 MHz
config SYS_CLOCK_HW_CYCLES_PER_SEC
	default 1900000000 if APIC_TSC_DEADLINE_TIMER
	default 1900000000 if APIC_TIMER_TSC
	default 19200000

if APIC_TIMER
config APIC_TIMER_IRQ
	default 24
config APIC_TIMER_TSC_M
	default 3
config APIC_TIMER_TSC_N
	default 249
endif

endif # BOARD_EHL_CRB || BOARD_EHL_CRB_SBL
