diff options
author | Victor Mignot <victor@vmignot.fr> | 2025-07-22 15:14:14 +0200 |
---|---|---|
committer | Victor Mignot <victor@vmignot.fr> | 2025-07-23 15:08:17 +0200 |
commit | f6a2143e22f577abafea5190b242471da6e34896 (patch) | |
tree | f2465b65f11a8b9d83c467d4658ffd7257e8b0e9 /link.ld | |
download | nanji-f6a2143e22f577abafea5190b242471da6e34896.tar.gz |
cortex-m4f: bootstrap code
Diffstat (limited to 'link.ld')
-rw-r--r-- | link.ld | 51 |
1 files changed, 51 insertions, 0 deletions
@@ -0,0 +1,51 @@ +MEMORY { + FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 0x80000 + RAM (rwx): ORIGIN = 0x20000000, LENGTH = 0x10000 +} + +SECTIONS { + .vector_table ORIGIN(FLASH) : + { + *(.vector_table .vector_table.*); + } > FLASH + + .text : + { + *(.text .text.*); + } > FLASH + + .rodata : + { + *(.rodata .rodata.*); + } > FLASH + + .bss : ALIGN(4) + { + __bss_start = .; + + *(.bss .bss.*); + + . = ALIGN(4); + __bss_end = .; + } > RAM + + .data : ALIGN(4) + { + __data_start = .; + + *(.data .data.*); + + . = ALIGN(4); + __data_end = .; + } > RAM AT > FLASH + + __data_lma = LOADADDR(.data); + + /DISCARD/ : + { + *(.ARM.exidx .ARM.exidx.*); + } + + /* Start the stack from the end of the RAM */ + __stack_top = ORIGIN(RAM) + LENGTH(RAM); +} |