X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/6658905f18a1eebc148836f26c731dea9c1377dc..d60418a05f2cbaa97140c569ba63f1a1eb831a79:/armsrc/ldscript diff --git a/armsrc/ldscript b/armsrc/ldscript index ac0fe2bd..d0be3b6a 100644 --- a/armsrc/ldscript +++ b/armsrc/ldscript @@ -1,11 +1,70 @@ -SECTIONS -{ - . = 0x00010000; - .text : { obj/start.o(.text) *(.text) } - .rodata : { *(.rodata) } - . = 0x00200000; - .data : { *(.data) } - __bss_start__ = .; - .bss : { *(.bss) } - __bss_end__ = .; -} +/* +----------------------------------------------------------------------------- + This code is licensed to you under the terms of the GNU GPL, version 2 or, + at your option, any later version. See the LICENSE.txt file for the text of + the license. +----------------------------------------------------------------------------- + Linker script for the ARM binary +----------------------------------------------------------------------------- +*/ +INCLUDE ../common/ldscript.common + +PHDRS +{ + fpgaimage PT_LOAD FLAGS(4); + text PT_LOAD; + data PT_LOAD; + bss PT_LOAD; +} + +ENTRY(Vector) +SECTIONS +{ + .fpgaimage : { + *(fpga_lf_bit.data) + *(fpga_hf_bit.data) + } >fpgaimage :fpgaimage + + .start : { + *(.startos) + } >osimage :text + + .text : { + *(.text) + *(.text.*) + *(.eh_frame) + *(.glue_7) + *(.glue_7t) + } >osimage :text + + .rodata : { + *(.rodata) + *(.rodata.*) + KEEP(*(.version_information)) + } >osimage :text + + . = ALIGN(4); + + .data : { + *(.data) + *(.data.*) + *(.ramfunc) + . = ALIGN(4); + } >ram AT>osimage :data + + __data_src_start__ = LOADADDR(.data); + __data_start__ = ADDR(.data); + __data_end__ = __data_start__ + SIZEOF(.data); + + .bss : { + __bss_start__ = .; + *(.bss) + *(.bss.*) + . = ALIGN(4); + __bss_end__ = .; + } >ram AT>ram :bss + + .commonarea (NOLOAD) : { + *(.commonarea) + } >commonarea :NONE +}