# Kconfig - Kinetis KL2x MCU series
#
# Copyright (c) 2017, NXP
#
# SPDX-License-Identifier: Apache-2.0
#

choice
prompt "Kinetis KL2x MCU Selection"
depends on SOC_SERIES_KINETIS_KL2X

config SOC_MKL25Z4
	bool "SOC_MKL25Z4"
	select CPU_CORTEX_M0PLUS
	select HAS_MCUX
	select HAS_MCUX_ADC16
	select HAS_MCUX_LPSCI
	select HAS_OSC
	select HAS_MCG

endchoice

if SOC_SERIES_KINETIS_KL2X

config SOC_PART_NUMBER_MKL25Z32VFM4
	bool

config SOC_PART_NUMBER_MKL25Z64VFM4
	bool

config SOC_PART_NUMBER_MKL25Z128VFM4
	bool

config SOC_PART_NUMBER_MKL25Z32VFT4
	bool

config SOC_PART_NUMBER_MKL25Z64VFT4
	bool

config SOC_PART_NUMBER_MKL25Z128VFT4
	bool

config SOC_PART_NUMBER_MKL25Z32VLH4
	bool

config SOC_PART_NUMBER_MKL25Z64VLH4
	bool

config SOC_PART_NUMBER_MKL25Z128VLH4
	bool

config SOC_PART_NUMBER_MKL25Z32VLK4
	bool

config SOC_PART_NUMBER_MKL25Z64VLK4
	bool

config SOC_PART_NUMBER_MKL25Z128VLK4
	bool

config SOC_PART_NUMBER_KINETIS_KL2X
	string
	default "MKL25Z32VFM4" if SOC_PART_NUMBER_MKL25Z32VFM4
	default "MKL25Z64VFM4" if SOC_PART_NUMBER_MKL25Z64VFM4
	default "MKL25Z128VFM4" if SOC_PART_NUMBER_MKL25Z128VFM4
	default "MKL25Z32VFT4" if SOC_PART_NUMBER_MKL25Z32VFT4
	default "MKL25Z64VFT4" if SOC_PART_NUMBER_MKL25Z64VFT4
	default "MKL25Z128VFT4" if SOC_PART_NUMBER_MKL25Z128VFT4
	default "MKL25Z32VLH4" if SOC_PART_NUMBER_MKL25Z32VLH4
	default "MKL25Z64VLH4" if SOC_PART_NUMBER_MKL25Z64VLH4
	default "MKL25Z128VLH4" if SOC_PART_NUMBER_MKL25Z128VLH4
	default "MKL25Z32VLK4" if SOC_PART_NUMBER_MKL25Z32VLK4
	default "MKL25Z64VLK4" if SOC_PART_NUMBER_MKL25Z64VLK4
	default "MKL25Z128VLK4" if SOC_PART_NUMBER_MKL25Z128VLK4
	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_KL2X
