NextVOD_Baremetal_Hello/stx7105.ld

67 lines
1.5 KiB
Plaintext
Raw Permalink 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 {
EMI (rx) : ORIGIN = 0x80000000, LENGTH = 0x01000000 /* EMI copied to Non-cached LMI virtual address: 0x8000_0000 */
LMI (rwx) : ORIGIN = 0x81000000, LENGTH = 0x0F000000 /* Non-cached LMI virtual address: 0x8100_0000 */
EMI_CACHED (rx) : ORIGIN = 0x90000000, LENGTH = 0x01000000 /* EMI copied to cached LMI virtual address: 0x9000_0000 */
LMI_CACHED (rwx) : ORIGIN = 0x91000000, LENGTH = 0x0F000000 /* Cached LMI virtual address: 0x9100_0000 */
2022-06-21 01:28:16 +00:00
}
SECTIONS {
2022-06-21 15:16:14 +00:00
.text : {
. = ALIGN(4);
_stext = .;
KEEP(*(.text.vtors))
2022-06-21 15:16:14 +00:00
*(.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
_eidata = (_sidata + _edata - _sdata);
2022-06-21 15:16:14 +00:00
.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
}