From e8126528825cb1bd01684f5bd6011fc7ae84bfe5 Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Mon, 15 Jan 2018 15:26:48 -0700 Subject: added init routine that loads the data and bss sections into memory before executing main. --- system-clock/linker/linker_script.ld | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'system-clock/linker') diff --git a/system-clock/linker/linker_script.ld b/system-clock/linker/linker_script.ld index fe0c14b..b9a8d4b 100644 --- a/system-clock/linker/linker_script.ld +++ b/system-clock/linker/linker_script.ld @@ -1,6 +1,8 @@ MEMORY { flash : org = 0x08000000, len = 256k + sram1 : org = 0x20000000, len = 48k + sram2 : org = 0x10000000, len = 16k } SECTIONS @@ -11,4 +13,20 @@ SECTIONS *(.vectors); /* All .vector sections go here. */ *(.text); /* All .text sections go here. */ } >flash + + .data : { + /* Data segment as defined in the flash. */ + INIT_DATA_VALUES = LOADADDR(.data); + + /* Data segment where it will be in memory. */ + DATA_SEGMENT_START = .; + *(.data); + DATA_SEGMENT_STOP = .; + } >sram1 AT>flash + + BSS_START = .; + .bss : { + *(.bss); + } > sram1 + BSS_END = .; } -- cgit