# Atmel SAM V71 MCU series configuration options

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

if SOC_SERIES_SAMV71

config SOC_SERIES
	default "samv71"

config SOC_PART_NUMBER
	default "samv71q21" if SOC_PART_NUMBER_SAMV71Q21
	default "samv71q20" if SOC_PART_NUMBER_SAMV71Q20
	default "samv71q19" if SOC_PART_NUMBER_SAMV71Q19
	default "samv71n21" if SOC_PART_NUMBER_SAMV71N21
	default "samv71n20" if SOC_PART_NUMBER_SAMV71N20
	default "samv71n19" if SOC_PART_NUMBER_SAMV71N19
	default "samv71j21" if SOC_PART_NUMBER_SAMV71J21
	default "samv71j20" if SOC_PART_NUMBER_SAMV71J20
	default "samv71j19" if SOC_PART_NUMBER_SAMV71J19
	default "samv71q21b" if SOC_PART_NUMBER_SAMV71Q21B
	default "samv71q20b" if SOC_PART_NUMBER_SAMV71Q20B
	default "samv71q19b" if SOC_PART_NUMBER_SAMV71Q19B
	default "samv71n21b" if SOC_PART_NUMBER_SAMV71N21B
	default "samv71n20b" if SOC_PART_NUMBER_SAMV71N20B
	default "samv71n19b" if SOC_PART_NUMBER_SAMV71N19B
	default "samv71j21b" if SOC_PART_NUMBER_SAMV71J21B
	default "samv71j20b" if SOC_PART_NUMBER_SAMV71J20B
	default "samv71j19b" if SOC_PART_NUMBER_SAMV71J19B

#
# SAM V71 family has in total 71 peripherals capable of generating interrupts
# for the revision A and 74 for the revision B (not all Peripheral Identifiers
# are used).
#
config NUM_IRQS
	default 74 if SOC_ATMEL_SAMV71_REVB
	default 71

endif # SOC_SERIES_SAMV71
