# Copyright 2025 NXP
# SPDX-License-Identifier: Apache-2.0

config SOC_MIMX94398_A55
	select ARM64
	select CPU_CORTEX_A55
	select ARM_ARCH_TIMER if SYS_CLOCK_EXISTS
	select HAS_MCUX
	select HAS_MCUX_CACHE

config SOC_MIMX94398_M33
	select ARM
	select CPU_CORTEX_M33
	select CPU_HAS_FPU
	select CPU_HAS_ARM_MPU
	select CPU_HAS_ARM_SAU
	select CPU_HAS_ICACHE
	select CPU_HAS_DCACHE
	select ARM_MPU
	select ARMV8_M_DSP
	select HAS_MCUX
	select HAS_MCUX_XCACHE
	select INIT_ARCH_HW_AT_BOOT
	select SOC_EARLY_INIT_HOOK
	select HAS_PM

config SOC_MIMX94398_M7_0
	select ARM
	select CPU_CORTEX_M7
	select CPU_HAS_FPU
	select CPU_HAS_FPU_DOUBLE_PRECISION
	select CPU_HAS_ICACHE
	select CPU_HAS_DCACHE
	select CPU_HAS_ARM_MPU
	select ARM_MPU
	select SOC_EARLY_INIT_HOOK
	select HAS_MCUX
	select HAS_MCUX_CACHE
	select HAS_PM

config SOC_MIMX94398_M7_1
	select ARM
	select CPU_CORTEX_M7
	select CPU_HAS_FPU
	select CPU_HAS_FPU_DOUBLE_PRECISION
	select CPU_HAS_ICACHE
	select CPU_HAS_DCACHE
	select CPU_HAS_ARM_MPU
	select ARM_MPU
	select SOC_EARLY_INIT_HOOK
	select HAS_MCUX
	select HAS_MCUX_CACHE
	select HAS_PM

config SOC_IMX943_PM_MCORE
	bool "i.MX943 multi-core PM shared logic"
	default y
	depends on PM
	depends on SOC_MIMX94398_M33 || SOC_MIMX94398_M7_0 || SOC_MIMX94398_M7_1
	help
	  Common PM flow for Cortex-M cores (M33/M7) on i.MX943
