proxmark3/bootrom/ldscript-flash
marcansoft 86d3195518 Bootloader cleanup (UNTESTED!)
- Clean up bootloader asm
- Remove fromflash.c - it's not worth doing in C, do it in ASM
- Clean up linker script
- Force use of symbol inside bootphase2 (otherwise linker
  garbage-collects it)
- Link bootloader with gcc instead of ld
2010-02-26 15:14:47 +00:00

56 lines
1.2 KiB
Text

/*
-----------------------------------------------------------------------------
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.
-----------------------------------------------------------------------------
Bootrom linker script
-----------------------------------------------------------------------------
*/
INCLUDE ../common/ldscript.common
ENTRY(flashstart)
SECTIONS
{
.bootphase1 : {
*(.startup)
. = ALIGN(4);
_version_information_start = .;
*(.version_information);
. = LENGTH(bootphase1) - 0x4;
LONG(_version_information_start);
} >bootphase1
.bootphase2 : {
*(.startphase2)
*(.text)
*(.text.*)
*(.eh_frame)
*(.glue_7)
*(.glue_7t)
*(.rodata)
*(.rodata.*)
*(.data)
*(.data.*)
. = ALIGN(4);
} >ram AT>bootphase2
__bootphase2_src_start__ = LOADADDR(.bootphase2);
__bootphase2_start__ = ADDR(.bootphase2);
__bootphase2_end__ = __bootphase2_start__ + SIZEOF(.bootphase2);
.bss : {
__bss_start__ = .;
*(.bss)
*(.bss.*)
. = ALIGN(4);
__bss_end__ = .;
} >ram
.commonarea (NOLOAD) : {
*(.commonarea)
} >commonarea
}