Newer
Older
mbed-os / targets / TARGET_Maxim / TARGET_MAX32660 / device / TOOLCHAIN_ARM_STD / MAX32660.sct
@Sadik.Ozer Sadik.Ozer on 30 Sep 2021 1 KB Add MAX32660EVSYS
#! armclang -E --target=arm-arm-none-eabi -x c -mcpu=cortex-m4
; MAX32660
; 256K FLASH (0x200000) @ 0x000000000
; 96KB RAM (0x18000) @ 0x20000000
;   - 16KB RAM_0 (0x4000) @ 0x20000000
;   - 16KB RAM_1 (0x4000) @ 0x20004000
;   - 32KB RAM_2 (0x8000) @ 0x20008000
;   - 32KB RAM_3 (0x8000) @ 0x20010000

#include "../nvic_table.h"

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

; Round up to 8 bytes
#define VECTORS_SIZE     (((NVIC_NUM_VECTORS * 4) + 7) AND 0xFFFFFFF8) 


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 + VECTORS_SIZE)  {  ; RW data
        .ANY (+RW +ZI)
    }

    ARM_LIB_HEAP AlignExpr(+0, 16) EMPTY (MBED_RAM_START + MBED_RAM_SIZE - MBED_CONF_TARGET_BOOT_STACK_SIZE - AlignExpr(ImageLimit(RW_IRAM1), 16))  { ; Heap growing up    
    }

    ARM_LIB_STACK (MBED_RAM_START+MBED_RAM_SIZE) EMPTY - MBED_CONF_TARGET_BOOT_STACK_SIZE { ; stack region growing down
    }
}