# Atmel SAML21 MCU series

# Copyright (c) 2021 Argentum Systems Ltd.
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_SAML21
	bool "Atmel SAML21 MCU"
	select ARM
	select CPU_CORTEX_M0PLUS
	select SOC_FAMILY_SAM0
	select CPU_CORTEX_M_HAS_SYSTICK
	select CPU_CORTEX_M_HAS_VTOR
	select ASF
	help
	  Enable support for Atmel SAML21 Cortex-M0+ microcontrollers.
