# Copyright (c) 2021 IoT.bzh
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_RCAR_GEN3
	select CLOCK_CONTROL_RCAR_CPG_MSSR if CLOCK_CONTROL

config SOC_R8A77951_R7
	select ARM
	select CPU_CORTEX_R7
	select PLATFORM_SPECIFIC_INIT
	select CPU_HAS_DCLS

config SOC_R8A77951_A57
	select ARM64
	select CPU_CORTEX_A57
	select ARM_ARCH_TIMER if SYS_CLOCK_EXISTS

config SOC_R8A77961
	select ARM64
	select CPU_CORTEX_A57
	select ARM_ARCH_TIMER if SYS_CLOCK_EXISTS
