aboutsummaryrefslogtreecommitdiff
path: root/03-refactor/linker
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2018-01-23 23:24:53 -0700
committerJosh Rahm <joshuarahm@gmail.com>2018-01-23 23:24:53 -0700
commit2545ae2d57e5b70975e3fd3b3e570da13dbf62f0 (patch)
treea8fe7fe54688defdab1ce5fcd83f66f17eb5bb4b /03-refactor/linker
parent7aa10db46c13ad8adc88aadff39b8cf6b15db09d (diff)
downloadstm32l4-2545ae2d57e5b70975e3fd3b3e570da13dbf62f0.tar.gz
stm32l4-2545ae2d57e5b70975e3fd3b3e570da13dbf62f0.tar.bz2
stm32l4-2545ae2d57e5b70975e3fd3b3e570da13dbf62f0.zip
start refactor process. Change rcc->c_r to bitfield.
Diffstat (limited to '03-refactor/linker')
-rw-r--r--03-refactor/linker/linker_script.ld36
1 files changed, 36 insertions, 0 deletions
diff --git a/03-refactor/linker/linker_script.ld b/03-refactor/linker/linker_script.ld
new file mode 100644
index 0000000..348d03b
--- /dev/null
+++ b/03-refactor/linker/linker_script.ld
@@ -0,0 +1,36 @@
+MEMORY
+{
+ flash : org = 0x08000000, len = 256k
+ sram1 : org = 0x20000000, len = 48k
+ sram2 : org = 0x10000000, len = 16k
+}
+
+SECTIONS
+{
+ /* This is where the code goes. */
+ . = ORIGIN(flash);
+ .text : {
+ *(.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 = .;
+
+ /* Align by 4 so we can optimize the copier to use uint32's. */
+ . = ALIGN(0x04);
+ } >sram1 AT>flash
+
+ BSS_START = .;
+ .bss : {
+ *(.bss);
+ . = ALIGN(0x04);
+ } > sram1
+ BSS_END = .;
+}