Newer
Older
mbed-os / targets / TARGET_Silicon_Labs / TARGET_EFM32 / TARGET_EFM32GG / device / TARGET_1024K / TOOLCHAIN_ARM_MICRO / efm32gg.sct
#! armcc -E
; *************************************************************
; *** Scatter-Loading Description File generated by uVision ***
; *************************************************************

#if !defined(MBED_APP_START)
  #define MBED_APP_START            0x00000000
#endif

#if !defined(MBED_APP_SIZE)
  #define MBED_APP_SIZE             0x00100000
#endif

#if !defined(MBED_RAM_START)
  #define MBED_RAM_START            0x20000000
#endif

#if !defined(MBED_RAM_SIZE)
  #define MBED_RAM_SIZE             0x00020000
#endif


#if !defined(MBED_BOOT_STACK_SIZE)
  #define MBED_BOOT_STACK_SIZE      0x400
#endif

#define VECTOR_SIZE                 0xE0

#define RAM_FIXED_SIZE              (MBED_BOOT_STACK_SIZE+VECTOR_SIZE)

LR_IROM1  MBED_APP_START  MBED_APP_SIZE  {    ; load region size_region

  ER_IROM1  MBED_APP_START  MBED_APP_SIZE  {  ; load address = execution address
   *.o (RESET, +First)
   *(InRoot$$Sections)
   .ANY (+RO)
  }

  RW_IRAM1  (MBED_RAM_START+VECTOR_SIZE)  (MBED_RAM_SIZE-VECTOR_SIZE)  {  ; RW data
   .ANY (+RW +ZI)
  }

  ARM_LIB_HEAP  AlignExpr(+0, 16)  EMPTY  (MBED_RAM_SIZE-RAM_FIXED_SIZE+MBED_RAM_START-AlignExpr(ImageLimit(RW_IRAM1), 16) - MBED_BOOT_STACK_SIZE)  {
  }

  ARM_LIB_STACK  (MBED_RAM_START+MBED_RAM_SIZE)  EMPTY  -MBED_BOOT_STACK_SIZE { ; stack
  }
}