artiq-zynq/firmware/runtime/link.x

74 lines
1.3 KiB
Plaintext
Raw Normal View History

2020-04-11 20:19:39 +08:00
ENTRY(_boot_cores);
/* Provide some defaults */
PROVIDE(Reset = _boot_cores);
PROVIDE(UndefinedInstruction = Reset);
PROVIDE(SoftwareInterrupt = Reset);
PROVIDE(PrefetchAbort = Reset);
PROVIDE(DataAbort = Reset);
PROVIDE(ReservedException = Reset);
PROVIDE(IRQ = Reset);
PROVIDE(FIQ = Reset);
MEMORY
{
2020-04-28 19:46:33 +08:00
SDRAM : ORIGIN = 0x00100000, LENGTH = 0x1FF00000
2020-04-11 20:19:39 +08:00
}
SECTIONS
{
.text :
{
KEEP(*(.text.exceptions));
*(.text.boot);
*(.text .text.*);
2020-04-28 19:07:49 +08:00
} > SDRAM
2020-04-11 20:19:39 +08:00
.rodata : ALIGN(4)
{
*(.rodata .rodata.*);
2020-04-28 19:07:49 +08:00
} > SDRAM
2020-04-11 20:19:39 +08:00
.data : ALIGN(4)
{
*(.data .data.*);
2020-04-28 19:07:49 +08:00
} > SDRAM
2020-04-11 20:19:39 +08:00
2020-04-28 19:46:33 +08:00
.bss (NOLOAD) : ALIGN(4)
2020-04-11 20:19:39 +08:00
{
2020-04-28 19:46:33 +08:00
__bss_start = .;
2020-04-11 20:19:39 +08:00
*(.bss .bss.*);
. = ALIGN(4);
2020-04-28 19:46:33 +08:00
__bss_end = .;
2020-04-28 19:07:49 +08:00
} > SDRAM
2020-04-11 20:19:39 +08:00
2020-04-28 19:46:33 +08:00
.heap (NOLOAD) : ALIGN(8)
2020-04-28 19:07:49 +08:00
{
2020-04-28 19:46:33 +08:00
__heap_start = .;
. += 0x1000000;
__heap_end = .;
2020-04-28 19:07:49 +08:00
} > SDRAM
2020-04-28 19:46:33 +08:00
.stack1 (NOLOAD) : ALIGN(8)
2020-04-28 19:07:49 +08:00
{
2020-04-28 19:46:33 +08:00
__stack1_end = .;
. += 0x1000000;
__stack1_start = .;
2020-04-28 19:07:49 +08:00
} > SDRAM
2020-04-11 20:19:39 +08:00
2020-04-28 19:46:33 +08:00
.stack0 (NOLOAD) : ALIGN(8)
{
__stack0_end = .;
. += 0x1000000;
__stack0_start = .;
} > SDRAM
/DISCARD/ :
{
/* Unused exception related info that only wastes space */
*(.ARM.exidx);
*(.ARM.exidx.*);
*(.ARM.extab.*);
}
2020-04-11 20:19:39 +08:00
}