OUTPUT_ARCH(arm)
TARGET("elf32-littlearm")
SEARCH_DIR(.)
ENTRY(_start)

/* The size of the single stack used by the application */
SVC_STACK_SIZE = 0x400;
IRQ_STACK_SIZE = 0x100;

SECTIONS
{
  . = 0x20000200;
 .startup : { reset.*(.text) }

 .text : 
  { 
    *(.text) 
  }
 .data : 
  { 
    *(.data) 
  }
 .rodata :
 {
    *(.rodata)
 }
. = 0x20008000 - SVC_STACK_SIZE - SVC_STACK_SIZE - IRQ_STACK_SIZE - IRQ_STACK_SIZE;
 .bss : {
__bss_start__ = . ;
 *(.bss)
__bss_end__ = . ; 
}
PROVIDE (end = .);
 . = ALIGN (4);
. += IRQ_STACK_SIZE;

.stack : {
__irq_stack1_top__ = .;
. += IRQ_STACK_SIZE;
__irq_stack0_top__ = .;
. += SVC_STACK_SIZE;
__svc_stack1_top__ = .;
. += SVC_STACK_SIZE;
__svc_stack0_top__ = .;
. = ALIGN (4);
}
. = 0x2000FFF4;
__time_calibration__ = .;
. += 0x4;
__sdmmc_settings__ = .;
. += 0x4;
___run_address__ = .;
}