# Atmel SAM E70 MCU series

# Copyright (c) 2016 Piotr Mienkowski
# Copyright (c) 2024 Gerson Fernando Budke <nandojve@gmail.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_SAME70
	bool
	select SOC_FAMILY_ATMEL_SAM
	help
	  Enable support for Atmel SAM E70 ARM Cortex-M7 Microcontrollers.
	  Part No.: SAME70J19, SAME70J20, SAME70J21, SAME70N19, SAME70N20,
	  SAME70N21, SAME70Q19, SAME70Q20, SAME70Q21, SAME70J19B, SAME70J20B,
	  SAME70J21B, SAME70N19B, SAME70N20B, SAME70N21B, SAME70Q19B,
	  SAME70Q20B, SAME70Q21B

config SOC_ATMEL_SAME70_REVB
	bool

config SOC_SERIES
	default "same70" if SOC_SERIES_SAME70

config SOC_SAME70J19
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70J20
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70J21
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70N19
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70N20
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70N21
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70Q19
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70Q20
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70Q21
	bool
	select SOC_SERIES_SAME70

config SOC_SAME70J19B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70J20B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70J21B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70N19B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70N20B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70N21B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70Q19B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70Q20B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC_SAME70Q21B
	bool
	select SOC_SERIES_SAME70
	select SOC_ATMEL_SAME70_REVB

config SOC
	default "same70j19" if SOC_SAME70J19
	default "same70j20" if SOC_SAME70J20
	default "same70j21" if SOC_SAME70J21
	default "same70n19" if SOC_SAME70N19
	default "same70n20" if SOC_SAME70N20
	default "same70n21" if SOC_SAME70N21
	default "same70q19" if SOC_SAME70Q19
	default "same70q20" if SOC_SAME70Q20
	default "same70q21" if SOC_SAME70Q21
	default "same70j19b" if SOC_SAME70J19B
	default "same70j20b" if SOC_SAME70J20B
	default "same70j21b" if SOC_SAME70J21B
	default "same70n19b" if SOC_SAME70N19B
	default "same70n20b" if SOC_SAME70N20B
	default "same70n21b" if SOC_SAME70N21B
	default "same70q19b" if SOC_SAME70Q19B
	default "same70q20b" if SOC_SAME70Q20B
	default "same70q21b" if SOC_SAME70Q21B
