cb4f675e39
* Reduced MS/TP MAX_APDU to 480 from 1476 so that devices not use new MS/TP extended frame types which older routers do not understand. * Added extra objects to STM32F4xx example to elicit edge cases in object-list for testing.
91 lines
1.9 KiB
Plaintext
91 lines
1.9 KiB
Plaintext
MEMORY
|
|
{
|
|
sram (W!RX) : ORIGIN = 0x20000000, LENGTH = 128k
|
|
flash (RX) : ORIGIN = 0x08000000, LENGTH = 512k
|
|
}
|
|
|
|
_estack = 0x20000000 + 128k - 4; /* End of SRAM */
|
|
|
|
/* Generate a link error if heap and stack don't fit into RAM */
|
|
_Min_Heap_Size = 48K;
|
|
/* Analysis from MAP file and Stack Usage (su) +
|
|
adjust _Min_Heap_Size until linker error: sram overflowed by x bytes
|
|
_Min_Heap_Size = _Min_Heap_Size - x
|
|
*/
|
|
_Min_Stack_Size = 16K;
|
|
|
|
SECTIONS
|
|
{
|
|
.text :
|
|
{
|
|
. = ALIGN(4);
|
|
_text = .;
|
|
PROVIDE(stext = .);
|
|
KEEP(*(.isr_vector))
|
|
KEEP(*(.init))
|
|
*(.text .text.*)
|
|
*(.rodata .rodata.*)
|
|
*(.gnu.linkonce.t.*)
|
|
*(.glue_7)
|
|
*(.glue_7t)
|
|
*(.gcc_except_table)
|
|
*(.gnu.linkonce.r.*)
|
|
. = ALIGN(4);
|
|
_etext = .;
|
|
_sidata = _etext;
|
|
PROVIDE(etext = .);
|
|
_fini = . ;
|
|
*(.fini)
|
|
} >flash
|
|
|
|
.data : AT (_etext)
|
|
{
|
|
. = ALIGN(4);
|
|
_sdata = .;
|
|
*(.ramfunc .ramfunc.* .fastrun .fastrun.*)
|
|
*(.data .data.*)
|
|
*(.gnu.linkonce.d.*)
|
|
. = ALIGN(4);
|
|
_edata = .;
|
|
} >sram
|
|
|
|
.ARM.extab :
|
|
{
|
|
*(.ARM.extab*)
|
|
} >sram
|
|
|
|
__exidx_start = .;
|
|
.ARM.exidx :
|
|
{
|
|
*(.ARM.exidx*)
|
|
} >sram
|
|
__exidx_end = .;
|
|
|
|
.bss (NOLOAD) : {
|
|
. = ALIGN(4);
|
|
/* This is used by the startup in order to initialize the .bss secion */
|
|
_sbss = .;
|
|
*(.bss .bss.*)
|
|
*(.gnu.linkonce.b.*)
|
|
*(COMMON)
|
|
. = ALIGN(4);
|
|
_ebss = .;
|
|
} >sram
|
|
|
|
PROVIDE ( end = _ebss );
|
|
PROVIDE ( _end = _ebss );
|
|
|
|
/* User_heap_stack section, used to check that there is enough RAM left */
|
|
._user_heap_stack :
|
|
{
|
|
. = ALIGN(4);
|
|
. = . + _Min_Heap_Size;
|
|
_user_heap_end = .;
|
|
. = . + _Min_Stack_Size;
|
|
. = ALIGN(4);
|
|
} >sram
|
|
|
|
PROVIDE(_heap_limit = _user_heap_end);
|
|
PROVIDE(_stack_limit = _estack);
|
|
}
|