44 lines
665 B
Plaintext
44 lines
665 B
Plaintext
|
MEMORY
|
||
|
{
|
||
|
RAM (wx) : ORIGIN = 0x0, LENGTH = 128K
|
||
|
}
|
||
|
|
||
|
SECTIONS
|
||
|
{
|
||
|
.text :
|
||
|
{
|
||
|
*(.text*)
|
||
|
*(.rodata*)
|
||
|
} > RAM
|
||
|
|
||
|
.data :
|
||
|
{
|
||
|
*(.data*)
|
||
|
} > RAM
|
||
|
|
||
|
.bss :
|
||
|
{
|
||
|
*(.bss*)
|
||
|
*(COMMON)
|
||
|
} > RAM
|
||
|
|
||
|
/* Add stack at the end of RAM */
|
||
|
. = ALIGN(4);
|
||
|
_end = .;
|
||
|
PROVIDE(end = .);
|
||
|
|
||
|
/* Define stack size and location */
|
||
|
_stack_size = 0x4000; /* Example stack size: 16KB */
|
||
|
_stack_end = ORIGIN(RAM) + LENGTH(RAM); /* End of RAM */
|
||
|
_stack_start = _stack_end - _stack_size; /* Calculate start of the stack */
|
||
|
.stack (NOLOAD) :
|
||
|
{
|
||
|
. = ALIGN(4);
|
||
|
. = . + _stack_size;
|
||
|
. = ALIGN(4);
|
||
|
_sp = .;
|
||
|
} > RAM
|
||
|
|
||
|
PROVIDE(__stack = _sp);
|
||
|
}
|