# Apollo Lake SoC configuration options

# Copyright (c) 2018-2019 Intel Corporation
# Copyright (c) 2014-2015 Wind River Systems, Inc.
# SPDX-License-Identifier: Apache-2.0

if SOC_APOLLO_LAKE

config SOC
	default "apollo_lake"

config PCIE_MMIO_CFG
	default y

if APIC_TIMER

config APIC_TIMER_IRQ
	default 24

config APIC_TIMER_TSC
	default y

endif # APIC_TIMER

config X86_DYNAMIC_IRQ_STUBS
	default 16
	depends on DYNAMIC_INTERRUPTS

endif # SOC_APOLLO_LAKE
