1# Analog Devices MAX32xxx MCU family
2
3# Copyright (c) 2023-2024 Analog Devices, Inc.
4# SPDX-License-Identifier: Apache-2.0
5
6config SOC_FAMILY_MAX32
7	select ARM
8	select CPU_HAS_ARM_MPU
9	select CPU_HAS_FPU
10	select CPU_CORTEX_M_HAS_SYSTICK
11	select CLOCK_CONTROL
12	select BUILD_OUTPUT_HEX
13	select SOC_EARLY_INIT_HOOK
14	select HAS_SEGGER_RTT if ZEPHYR_SEGGER_MODULE
15
16config SOC_MAX32655
17	select CPU_CORTEX_M4
18
19config SOC_MAX32662
20	select CPU_CORTEX_M4
21
22config SOC_MAX32666
23	select CPU_CORTEX_M4
24
25config SOC_MAX32670
26	select CPU_CORTEX_M4
27
28config SOC_MAX32672
29	select CPU_CORTEX_M4
30
31config SOC_MAX32675
32	select CPU_CORTEX_M4
33
34config SOC_MAX32680
35	select CPU_CORTEX_M4
36
37config SOC_MAX32690
38	select CPU_CORTEX_M4
39
40config SOC_MAX78002_M4
41	select CPU_CORTEX_M4
42
43if SOC_FAMILY_MAX32
44
45config MAX32_ON_ENTER_CPU_IDLE_HOOK
46	bool "CPU idle hook enable"
47	default y
48	imply ARM_ON_ENTER_CPU_IDLE_HOOK
49	help
50	  Enables a hook (z_arm_on_enter_cpu_idle()) that is called when
51	  the CPU is made idle (by k_cpu_idle() or k_cpu_atomic_idle()).
52	  If needed, this hook can be used to prevent the CPU from actually
53	  entering sleep by skipping the WFE/WFI instruction.
54
55endif # SOC_FAMILY_MAX32
56