# Atmel SAME53 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_SAME53
	bool
	select SOC_FAMILY_ATMEL_SAM0
	help
	  Enable support for Atmel SAME53 Cortex-M4F microcontrollers.

config SOC_SERIES
	default "same53" if SOC_SERIES_SAME53

config SOC_SAME53J18A
	bool
	select SOC_SERIES_SAME53

config SOC_SAME53J19A
	bool
	select SOC_SERIES_SAME53

config SOC_SAME53J20A
	bool
	select SOC_SERIES_SAME53

config SOC_SAME53N19A
	bool
	select SOC_SERIES_SAME53

config SOC_SAME53N20A
	bool
	select SOC_SERIES_SAME53

config SOC
	default "same53j18a" if SOC_SAME53J18A
	default "same53j19a" if SOC_SAME53J19A
	default "same53j20a" if SOC_SAME53J20A
	default "same53n19a" if SOC_SAME53N19A
	default "same53n20a" if SOC_SAME53N20A
