diff options
-rw-r--r-- | arch/arm/lpc17xx/ldscript | 8 | ||||
-rw-r--r-- | config/toolchain.mk | 2 |
2 files changed, 8 insertions, 2 deletions
diff --git a/arch/arm/lpc17xx/ldscript b/arch/arm/lpc17xx/ldscript index f50b993..0f8fe23 100644 --- a/arch/arm/lpc17xx/ldscript +++ b/arch/arm/lpc17xx/ldscript @@ -18,7 +18,7 @@ OUTPUT_FORMAT ("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") /*ENTRY(_start)*/ SEARCH_DIR(.) -GROUP(-lgcc -lc -lcs3 -lcs3unhosted -lcs3micro) +GROUP(-lgcc -lc) MEMORY { @@ -49,6 +49,7 @@ SECTIONS { CREATE_OBJECT_SYMBOLS __cs3_region_start_rom = .; + *(.cs3.region-head.rom) __cs3_interrupt_vector = __cs3_interrupt_vector_cortex_m; *(.cs3.interrupt_vector) @@ -175,6 +176,11 @@ SECTIONS __cs3_region_zero_size_ram = _end - _edata; __cs3_region_size_ram = LENGTH(ram); __cs3_region_num = 1; + + __FLASH_segment_start__ = ORIGIN(rom); + __FLASH_segment_end__ = __FLASH_segment_start__ + LENGTH(rom); + __SRAM_segment_start__ = ORIGIN(ram); + __SRAM_segment_end__ = __SRAM_segment_start__ + LENGTH(ram); .stab 0 (NOLOAD) : { *(.stab) } .stabstr 0 (NOLOAD) : { *(.stabstr) } diff --git a/config/toolchain.mk b/config/toolchain.mk index cd429c9..21808c8 100644 --- a/config/toolchain.mk +++ b/config/toolchain.mk @@ -3,7 +3,7 @@ TOOLCHAIN = arm-none-eabi ifeq ($(CPU_FLAVOR),lpc1768) TARGET_CPPFLAGS += -mcpu=cortex-m3 -mtune=cortex-m3 -D__thumb2__=1 -march=armv7-m -mfix-cortex-m3-ldrd endif -TARGET_CPPFLAGS += -mthumb -Os -mapcs-frame -msoft-float -mno-sched-prolog -fno-hosted -ffunction-sections -fdata-sections +TARGET_CPPFLAGS += -mthumb -Os -mapcs-frame -msoft-float -mno-sched-prolog -fno-hosted -ffunction-sections -fdata-sections -fshort-wchar endif TARGET_CC = $(TOOLCHAIN)-gcc |