mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
f375b00ff3
This adds supoprt for the Atmel SAMD51 & SAME54 SoC. The SAME5x/SAMD5x is a line of Cortex-M4F MCUs that share peripherals with the samd2x Cortex-M0+ and saml1x Cortex-M23 parts.
34 lines
1.0 KiB
Makefile
34 lines
1.0 KiB
Makefile
# Define the CPU family so we can differentiate between them in the code
|
|
CFLAGS += -DCPU_FAM_$(shell echo $(CPU_FAM) | tr 'a-z-' 'A-Z_')
|
|
|
|
# Set ROM and RAM lengths according to CPU model
|
|
ifneq (,$(filter samd21g18a samd21j18a saml21j18b saml21j18a samr21e18a samr21g18a samr30g18a,$(CPU_MODEL)))
|
|
ROM_LEN ?= 0x40000
|
|
RAM_LEN ?= 0x8000
|
|
endif
|
|
ifneq (,$(filter saml10e16a saml11e16a,$(CPU_MODEL)))
|
|
ROM_LEN ?= 64K
|
|
RAM_LEN ?= 16K
|
|
endif
|
|
ifneq (,$(filter samd51j20a same54p20a,$(CPU_MODEL)))
|
|
ROM_LEN ?= 1024K
|
|
RAM_LEN ?= 256K
|
|
endif
|
|
|
|
ROM_START_ADDR ?= 0x00000000
|
|
RAM_START_ADDR ?= 0x20000000
|
|
|
|
# this CPU implementation doesn't use CMSIS initialization
|
|
export CFLAGS += -DDONT_USE_CMSIS_INIT
|
|
export CFLAGS += -DDONT_USE_PREDEFINED_CORE_HANDLERS
|
|
export CFLAGS += -DDONT_USE_PREDEFINED_PERIPHERALS_HANDLERS
|
|
|
|
# For Cortex-M cpu we use the common cortexm.ld linker script
|
|
LINKER_SCRIPT ?= cortexm.ld
|
|
|
|
# include sam0 common periph drivers
|
|
USEMODULE += sam0_common_periph
|
|
|
|
# export the common include directory
|
|
export INCLUDES += -I$(RIOTCPU)/sam0_common/include
|