# Microchip MEC172X MCU core series

# Copyright (c) 2021 Microchip Technology Inc.
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_MEC172X
	select ARM
	select CPU_CORTEX_M4
	select CPU_CORTEX_M_HAS_DWT
	select CPU_HAS_FPU
	select CPU_HAS_ARM_MPU
	select HAS_SWO
	select HAS_PM
	select SOC_EARLY_INIT_HOOK

if SOC_SERIES_MEC172X

choice
	prompt "MEC172x debug interface general configuration"
	default SOC_MEC172X_DEBUG_WITHOUT_TRACING
	depends on SOC_SERIES_MEC172X
	help
	  Select Debug SoC interface support for MEC172X SoC family

	config SOC_MEC172X_DEBUG_DISABLED
		bool "Disable debug support"
		help
		  Debug port is disabled, JTAG/SWD cannot be enabled. JTAG_RST#
		  pin is ignored. All other JTAG pins can be used as GPIOs
		  or other non-JTAG alternate functions.

	config SOC_MEC172X_DEBUG_WITHOUT_TRACING
		bool "Debug support via Serial wire debug"
		help
		  JTAG port in SWD mode. I2C09 and ADC00-03 can be used.

	config SOC_MEC172X_DEBUG_AND_TRACING
		bool "Debug support via Serial wire debug with tracing enabled"
		help
		  JTAG port is enabled in SWD mode. Refer to tracing options
		  to see if ADC00-03 can be used or not.
endchoice

choice
	prompt "MEC172X debug interface trace configuration"
	default SOC_MEC172X_DEBUG_AND_ETM_TRACING
	depends on SOC_MEC172X_DEBUG_AND_TRACING
	help
	  Select tracing mode for debug interface

	config SOC_MEC172X_DEBUG_AND_ETM_TRACING
		bool "Debug support via Serial wire debug"
		help
		  JTAG port in SWD mode and ETM as tracing method.
		  I2C09 can be used, but ADC00-03 cannot.

	config SOC_MEC172X_DEBUG_AND_SWV_TRACING
		bool "debug support via Serial Wire Debug and Viewer"
		help
		  JTAG port in SWD mode and SWV as tracing method.
		  I2C09 cannot be used. ADC00-03 can be used.
endchoice

# GPIO initialization depends on ECIA initialization, which happen at
# CONFIG_KERNEL_INIT_PRIORITY_DEFAULT, so GPIO_INIT_PRIORITY needs to be
# higher than that.
if GPIO

config GPIO_INIT_PRIORITY
	default 41

endif # GPIO

endif # SOC_SERIES_MEC172X
