# Atmel SAME53 MCU series configuration options

# Copyright (c) 2019 ML!PA Consulting GmbH
# SPDX-License-Identifier: Apache-2.0

if SOC_SERIES_SAME53

config SOC_SERIES
	string
	default "same53"

config SOC_PART_NUMBER
	string
	default "same53j18a" if SOC_PART_NUMBER_SAME53J18A
	default "same53j19a" if SOC_PART_NUMBER_SAME53J19A
	default "same53j20a" if SOC_PART_NUMBER_SAME53J20A
	default "same53n19a" if SOC_PART_NUMBER_SAME53N19A
	default "same53n20a" if SOC_PART_NUMBER_SAME53N20A

config NUM_IRQS
	int
	default 137

config ROM_START_OFFSET
	default 0x400 if BOOTLOADER_MCUBOOT

config SYS_CLOCK_HW_CYCLES_PER_SEC
	int
	default 120000000

endif # SOC_SERIES_SAME53
