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

if BOARD_INTEL_RPL_S_CRB

config BOARD
	default "intel_rpl_s_crb"

config BUILD_OUTPUT_STRIPPED
	default y

config MP_MAX_NUM_CPUS
	default 2

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

config ACPI
	default y

config ACPI_PRT_BUS_NAME
	depends on ACPI
	default "_SB.PC00"

if DMA
config DMA_64BIT
	default y
config DMA_DW_HW_LLI
	default n
config DMA_DW_CHANNEL_COUNT
	default 2
endif

if SHELL
config SHELL_STACK_SIZE
	default 320000
endif

endif # BOARD_INTEL_RPL_S_CRB
