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

# The Zephyr build from this defconfig is expected to boot from
# Intel Arm Trusted Firmware (ATF).
# Boot Flow is: ATF BL21 -> ATF BL31 -> Zephyr

CONFIG_SOC_SERIES_AGILEX5=y
CONFIG_SOC_AGILEX5=y
CONFIG_BOARD_INTEL_SOCFPGA_AGILEX5_SOCDK=y

# Compiler Options
CONFIG_FORTIFY_SOURCE_RUN_TIME=y

# Arm Features
CONFIG_ARM_ARCH_TIMER=y
CONFIG_CACHE_MANAGEMENT=y
CONFIG_ARMV8_A_NS=y

# Serial Drivers
CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_UART_NS16550_ACCESS_WORD_ONLY=y

# Enable Console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

# Enable Clock Manager
CONFIG_CLOCK_CONTROL=y

# For Misc Register Map
CONFIG_SYSCON=y

# Reset Manager
CONFIG_RESET=y

# PSCI support Enable
CONFIG_PM_CPU_OPS=y
CONFIG_PM_CPU_OPS_PSCI=y

# Enable SMP support
CONFIG_SMP=y
CONFIG_MP_MAX_NUM_CPUS=4
