OUTPUT_FORMAT("elf32-xtensa-le") | |
ENTRY(_start) | |
__DYNAMIC = 0; | |
MEMORY { | |
ram : ORIGIN = 0xd0000000, LENGTH = 0x08000000 /* 128M */ | |
rom : ORIGIN = 0xfe000000, LENGTH = 0x00001000 /* 4k */ | |
} | |
SECTIONS | |
{ | |
.init : | |
{ | |
*(.init) | |
*(.init.*) | |
} > rom | |
.vector : | |
{ | |
. = 0x00000000; | |
*(.vector.window_overflow_4) | |
*(.vector.window_overflow_4.*) | |
. = 0x00000040; | |
*(.vector.window_underflow_4) | |
*(.vector.window_underflow_4.*) | |
. = 0x00000080; | |
*(.vector.window_overflow_8) | |
*(.vector.window_overflow_8.*) | |
. = 0x000000c0; | |
*(.vector.window_underflow_8) | |
*(.vector.window_underflow_8.*) | |
. = 0x00000100; | |
*(.vector.window_overflow_12) | |
*(.vector.window_overflow_12.*) | |
. = 0x00000140; | |
*(.vector.window_underflow_12) | |
*(.vector.window_underflow_12.*) | |
. = 0x00000180; | |
*(.vector.level2) | |
*(.vector.level2.*) | |
. = 0x000001c0; | |
*(.vector.level3) | |
*(.vector.level3.*) | |
. = 0x00000200; | |
*(.vector.level4) | |
*(.vector.level4.*) | |
. = 0x00000240; | |
*(.vector.level5) | |
*(.vector.level5.*) | |
. = 0x00000280; | |
*(.vector.level6) | |
*(.vector.level6.*) | |
. = 0x000002c0; | |
*(.vector.level7) | |
*(.vector.level7.*) | |
. = 0x00000300; | |
*(.vector.kernel) | |
*(.vector.kernel.*) | |
. = 0x00000340; | |
*(.vector.user) | |
*(.vector.user.*) | |
. = 0x000003c0; | |
*(.vector.double) | |
*(.vector.double.*) | |
} > ram | |
.text : | |
{ | |
_ftext = .; | |
*(.text .stub .text.* .gnu.linkonce.t.* .literal .literal.*) | |
_etext = .; | |
} > ram | |
.rodata : | |
{ | |
. = ALIGN(4); | |
_frodata = .; | |
*(.rodata .rodata.* .gnu.linkonce.r.*) | |
*(.rodata1) | |
_erodata = .; | |
} > ram | |
.data : | |
{ | |
. = ALIGN(4); | |
_fdata = .; | |
*(.data .data.* .gnu.linkonce.d.*) | |
*(.data1) | |
_gp = ALIGN(16); | |
*(.sdata .sdata.* .gnu.linkonce.s.*) | |
_edata = .; | |
} > ram | |
.bss : | |
{ | |
. = ALIGN(4); | |
_fbss = .; | |
*(.dynsbss) | |
*(.sbss .sbss.* .gnu.linkonce.sb.*) | |
*(.scommon) | |
*(.dynbss) | |
*(.bss .bss.* .gnu.linkonce.b.*) | |
*(COMMON) | |
_ebss = .; | |
_end = .; | |
} > ram | |
} | |
PROVIDE(_fstack = ORIGIN(ram) + LENGTH(ram) - 4); |