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

if SOC_AGILEX5

# must be >= the highest interrupt number used
# - include the UART interrupts 173 or 204
config NUM_IRQS
	int
	default 205

config SYS_CLOCK_HW_CYCLES_PER_SEC
	int
	default 400000000

config KERNEL_VM_SIZE
	default 0x400000
endif
