# Copyright (c) 2019 Synopsys, Inc. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

if SOC_ARC_EMSDP

choice
	prompt "ARC EM Software Development Platform Core Selection"
	default SOC_EMSDP_EM11D

config SOC_EMSDP_EM4
	bool "Synopsys ARC EM4 of EMSDP"
	select CPU_HAS_MPU

config SOC_EMSDP_EM6
	bool "Synopsys ARC EM6 of EMSDP"
	select CPU_HAS_MPU

config SOC_EMSDP_EM5D
	bool "Synopsys ARC EM5D of EMSDP"
	select CPU_HAS_MPU
	select CPU_HAS_FPU

config SOC_EMSDP_EM7D
	bool "Synopsys ARC EM7D of EMSDP"
	select CPU_HAS_MPU
	select CPU_HAS_FPU

config SOC_EMSDP_EM7D_ESP
	bool "Synopsys ARC EM7D+ESP of EMSDP"
	select CPU_HAS_MPU
	select CPU_HAS_FPU
	select ARC_HAS_SECURE

config SOC_EMSDP_EM9D
	bool "Synopsys ARC EM9D of EMSDP"
	select CPU_HAS_MPU
	select CPU_HAS_FPU

config SOC_EMSDP_EM11D
	bool "Synopsys ARC EM11D of EMSDP"
	select CPU_HAS_MPU
	select CPU_HAS_FPU

endchoice

endif # SOC_ARC_EMSDP
