# Kinetis K2X MCU line

# Copyright (c) 2018 Prevas A/S
# Copyright (c) 2019 Thomas Burdick <thomas.burdick@gmail.com>

#
# SPDX-License-Identifier: Apache-2.0
#

choice
	prompt "Kinetis K2x MCU Selection"
	depends on SOC_SERIES_KINETIS_K2X

config SOC_MK22F51212
	bool "SOC_MK22F51212"
	select HAS_MCUX
	select HAS_MCUX_SMC
	select HAS_MCUX_ADC16
	select HAS_MCUX_FTFX
	select HAS_MCUX_FTM
	select HAS_MCUX_RNGA
	select HAS_MCUX_SIM
	select HAS_OSC
	select HAS_MCG
	select CPU_HAS_FPU
	select HAS_MCUX_DAC
	select HAS_MCUX_RCM

endchoice

if SOC_SERIES_KINETIS_K2X

config SOC_PART_NUMBER_MK22FN512VLH12
	bool

config SOC_PART_NUMBER_MK22FX512AVLK12
	bool

config SOC_PART_NUMBER_KINETIS_K2X
	string
	default "MK22FN512VLH12" if SOC_PART_NUMBER_MK22FN512VLH12
	help
	  This string holds the full part number of the SoC. It is a hidden option
	  that you should not set directly. The part number selection choice defines
	  the default value for this string.

endif # SOC_SERIES_KINETIS_K2X
