NextVOD_Baremetal_Hello/stx7105.ld

60 lines
1.1 KiB
Plaintext
Raw Normal View History

2022-06-21 01:28:16 +00:00
2022-06-21 15:16:14 +00:00
HEAP_SIZE = 0x10000;
STACK_SIZE = 0x10000;
2022-06-25 03:57:25 +00:00
ENTRY(_start)
2022-06-21 15:16:14 +00:00
2022-06-24 01:27:26 +00:00
/* We don't use 29-bit mode since PMB and LMI initialization has to be done anyway. */
2022-06-21 15:16:14 +00:00
MEMORY {
2022-06-24 01:27:26 +00:00
EMI (rx) : ORIGIN = 0xA0000000, LENGTH = 0x00100000 /* EMI virtual address: 0xA000_0000 */
LMI (rwx) : ORIGIN = 0x80000000, LENGTH = 0x10000000 /* LMI virtual address: 0x8000_0000 */
2022-06-21 01:28:16 +00:00
}
SECTIONS {
2022-06-21 15:16:14 +00:00
.text : {
. = ALIGN(4);
*(.text.init)
2022-06-26 16:18:19 +00:00
*(.text.exc)
2022-06-21 15:16:14 +00:00
*(.text)
*(.text*)
*(.rodata)
*(.rodata*)
2022-06-25 08:29:45 +00:00
. = ALIGN(4);
2022-06-21 15:16:14 +00:00
} >EMI
2022-06-26 16:18:19 +00:00
_sidata = LOADADDR(.data);
2022-06-21 15:16:14 +00:00
.data : {
. = ALIGN(4);
_sdata = .;
*(.data)
*(.data*)
2022-06-26 16:18:19 +00:00
. = ALIGN(4);
2022-06-21 15:16:14 +00:00
_edata = .;
} >LMI AT >EMI
.bss : {
. = ALIGN(4);
__bss_start = .;
*(.bss)
*(.bss*)
*(COMMON)
2022-06-26 16:18:19 +00:00
. = ALIGN(8);
_end = .;
2022-06-21 15:16:14 +00:00
__end = _end;
} >LMI
.heap : {
. = ALIGN(8);
. += HEAP_SIZE;
}
.stack : {
. = ALIGN(8);
. += STACK_SIZE;
}
_stack = ORIGIN(LMI) + LENGTH(LMI);
PROVIDE(__stack = _stack);
2022-06-21 01:28:16 +00:00
}