# Copyright (c) 2023 EPAM Systems
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_RCAR_GEN3
	bool "Renesas RCAR Gen3 Cortex A"
	select ARM64
	select CPU_CORTEX_A57
	select SOC_FAMILY_RCAR
	select ARM_ARCH_TIMER if SYS_CLOCK_EXISTS
	select CLOCK_CONTROL_RCAR_CPG_MSSR if CLOCK_CONTROL
	help
	  Enable support for Renesas RCar Gen3 SoC series
