rockbox/utils/hwstub/stub/atj213x/hwstub.lds

93 lines
1.7 KiB
Text
Raw Normal View History

#include "config.h"
ENTRY(main)
OUTPUT_ARCH(mips)
STARTUP(atj213x/crt0.o)
MEMORY
{
DRAM : ORIGIN = DRAM_ORIG, LENGTH = DRAM_SIZE
IRAM : ORIGIN = IRAM_ORIG, LENGTH = IRAM_SIZE
}
SECTIONS
{
.init.text :
{
relocstart = .;
oc_codestart = .;
KEEP(*(.init.text*))
} > IRAM
.icode :
{
*(.icode*)
} > IRAM
.data :
{
*(.rodata*)
*(.data*)
*(.rel.dyn)
} > IRAM
.bss (NOLOAD) :
{
bssbegin = .;
*(.sbss*)
*(.bss*)
*(COMMON)
*(.scommon*)
. = ALIGN(4);
bssend = .;
} > IRAM
.exception.tlb_refill (IRAM_ORIG + 0x1000) :
{
_irqbase = .;
KEEP(*(.exception.tlb_refill))
} > IRAM
.exception.cache_error (IRAM_ORIG + 0x1100) :
{
KEEP(*(.exception.cache_error))
} > IRAM
.exception.general_exception (IRAM_ORIG + 0x1180) :
{
KEEP(*(.exception.general_exception))
} > IRAM
.exception.irq (IRAM_ORIG + 0x1200) :
{
KEEP(*(.exception.irq))
} > IRAM
.text :
{
*(.text*)
. = ALIGN(16);
relocend = .;
} > IRAM
.stack (NOLOAD) :
{
. = ALIGN(4);
stackbegin = .;
oc_codeend = .;
oc_stackstart = .;
. += 0x2000;
stackend = .;
irqstackbegin = .;
. += 0x400;
irqstackend = .;
oc_stackend = .;
oc_bufferstart = .;
} > IRAM
.end IRAM_ORIG+IRAM_SIZE (NOLOAD) :
{
oc_bufferend = .;
} > IRAM
}