X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Fcortex-m3%2Fscripts%2Flm3s1968_rom.ld;h=b4ed93a330209ab29bb413053dce250769c619cd;hb=911d2706a86d326786bfe721dcc3d63aeade7f28;hp=300752d4e79495027d6a4c54ce5a736afa30eacc;hpb=463815ea17ba2a28a3917ab4fc037b2a304c9c67;p=bertos.git diff --git a/bertos/cpu/cortex-m3/scripts/lm3s1968_rom.ld b/bertos/cpu/cortex-m3/scripts/lm3s1968_rom.ld index 300752d4..b4ed93a3 100644 --- a/bertos/cpu/cortex-m3/scripts/lm3s1968_rom.ld +++ b/bertos/cpu/cortex-m3/scripts/lm3s1968_rom.ld @@ -30,16 +30,12 @@ * * --> * - * \version $Id: sysirq_at91.c 18273 2007-10-11 14:53:02Z batt $ - * * \author Manuele Fanelli * * \brief Script for Luminary Micro LM3S1968 Cortex M3 family processors. * */ - -ENTRY(_init) SEARCH_DIR(.) OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") OUTPUT_ARCH(arm) @@ -53,15 +49,10 @@ MEMORY ram(rwx) : org = 0x20000000, len = 64k } - /* * Define stack size here */ -FIQ_STACK_SIZE = 0x0100; -IRQ_STACK_SIZE = 0x0100; -ABT_STACK_SIZE = 0x0100; -UND_STACK_SIZE = 0x0100; -SVC_STACK_SIZE = 0x0400; +STACK_SIZE = 0x1000; /* * Allocate section memory @@ -84,12 +75,14 @@ SECTIONS . = ALIGN(4); } > rom - _etext = .; - PROVIDE (__etext = .); + __text_end = .; + PROVIDE (__text_end = .); - .data : AT (_etext) + .data : AT (__text_end) { + . = ALIGN (0x400); PROVIDE (__data_start = .); + *(vtable) *(.data .data.*) . = ALIGN (4); _edata = .; @@ -110,34 +103,16 @@ SECTIONS * Allocated stack at the end of bss section. * Data heap is allocate at end of stack. */ - PROVIDE (__stack_start = .); - - PROVIDE (__stack_fiq_start = .); - . += FIQ_STACK_SIZE; - . = ALIGN(4); - PROVIDE (__stack_fiq_end = .); - - PROVIDE (__stack_irq_start = .); - . += IRQ_STACK_SIZE; - . = ALIGN(4); - PROVIDE (__stack_irq_end = .); - - PROVIDE (__stack_abt_start = .); - . += ABT_STACK_SIZE; - . = ALIGN(4); - PROVIDE (__stack_abt_end = .); - - PROVIDE (__stack_und_start = .); - . += UND_STACK_SIZE; - . = ALIGN(4); - PROVIDE (__stack_und_end = .); - - PROVIDE (__stack_svc_start = .); - . += SVC_STACK_SIZE; - . = ALIGN(4); - PROVIDE (__stack_svc_end = .); + PROVIDE (__msp_start = .); + . = ALIGN(8); + . += STACK_SIZE; + PROVIDE (__msp_end = .); - PROVIDE (__stack_end = .); + PROVIDE (__psp_start = .); + . = ALIGN(8); + . += STACK_SIZE; + PROVIDE (__psp_end = .); PROVIDE (__heap_start = .); + . = ALIGN(8); }