# Atmel SAME51 MCU series

# Copyright (c) 2019 ML!PA Consulting GmbH
# Copyright (c) 2024 Gerson Fernando Budke <nandojve@gmail.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_SAME51
	bool
	select SOC_FAMILY_ATMEL_SAM0
	help
	  Enable support for Atmel SAME51 Cortex-M4F microcontrollers.

config SOC_SERIES
	default "same51" if SOC_SERIES_SAME51

config SOC_SAME51J18A
	bool
	select SOC_SERIES_SAME51

config SOC_SAME51J19A
	bool
	select SOC_SERIES_SAME51

config SOC_SAME51J20A
	bool
	select SOC_SERIES_SAME51

config SOC_SAME51N19A
	bool
	select SOC_SERIES_SAME51

config SOC_SAME51N20A
	bool
	select SOC_SERIES_SAME51

config SOC
	default "same51j18a" if SOC_SAME51J18A
	default "same51j19a" if SOC_SAME51J19A
	default "same51j20a" if SOC_SAME51J20A
	default "same51n19a" if SOC_SAME51N19A
	default "same51n20a" if SOC_SAME51N20A
