1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/atxmega/Makefile.include
Marian Buschsieweke 62d6a560b1
cpu/avr8_common: Fix link with binutils > 2.35.2
The xfa.ld script is incompatible with binutils > 2.35.2 and results
in firmwares that wont boot. Sadly, I couldn't figure out an elegant
way to fix the issue. Instead, I modified the linker script provided
by binutils to also include XFA.
2021-10-13 16:37:19 +02:00

57 lines
1.2 KiB
Makefile

export CPU_ATXMEGA 1
# should expand RAM ?
EXP_RAM = 0
# CPU ROM/RAM
ifneq (,$(findstring atxmega8,$(CPU_MODEL)))
RAM_LEN = 1K
ROM_LEN = 8K
endif
ifneq (,$(findstring atxmega16,$(CPU_MODEL)))
RAM_LEN = 2K
ROM_LEN = 16K
endif
ifneq (,$(findstring atxmega32,$(CPU_MODEL)))
RAM_LEN = 4K
ROM_LEN = 32K
endif
ifneq (,$(findstring atxmega64,$(CPU_MODEL)))
RAM_LEN = 4K
ROM_LEN = 64K
endif
ifneq (,$(findstring atxmega128,$(CPU_MODEL)))
RAM_LEN = 8K
ROM_LEN = 128K
endif
ifneq (,$(findstring atxmega192,$(CPU_MODEL)))
RAM_LEN = 16K
ROM_LEN = 192K
endif
ifneq (,$(findstring atxmega256,$(CPU_MODEL)))
RAM_LEN = 16K
ROM_LEN = 256K
endif
ifneq (,$(findstring atxmega384,$(CPU_MODEL)))
RAM_LEN = 32K
ROM_LEN = 384K
endif
ifneq (,$(findstring a1,$(shell echo $(CPU_MODEL) | cut -c8-)))
ifeq ($(EXP_RAM),1)
CFLAGS += -DRAM_LEN=$(RAM_LEN)-1
LDSCRIPT_EXTRA = -Wl,--defsym=__heap_end=0x800000+$(RAM_LEN)-1
endif
endif
ifneq (,$(filter atxmega128a1 atxmega128a1u atxmega128a4u,$(CPU_MODEL)))
LINKER_SCRIPT ?= avrxmega7.ld
else
LINKER_SCRIPT ?= avrxmega6.ld
endif
# CPU depends on the avr8 common module, so include it
include $(RIOTCPU)/avr8_common/Makefile.include
PSEUDOMODULE += atxmega_ebi