Hello,

 

It looks like there is a mistake for ER_DATA region in  the NS armclang linker file.

 

    ER_DATA NS_DATA_START NS_DATA_SIZE {

        * (+ZI +RW)

    }

   

    /* MSP */

    ARM_LIB_STACK_MSP +0 ALIGN 32 EMPTY NS_MSP_STACK_SIZE {

    }

 

    /* PSP */

    ARM_LIB_STACK +0 ALIGN 32 EMPTY NS_PSP_STACK_SIZE {

    }

 

    ARM_LIB_HEAP +0 ALIGN 8 EMPTY NS_HEAP_SIZE {

    }

 

ER_DATA does not take into account the NS_MSP_STACK_SIZE+NS_PSP_STACK_SIZE+EMPTY NS_HEAP_SIZE size:

#define NS_DATA_SIZE    (TOTAL_RAM_SIZE - S_DATA_SIZE)

 

Guess, the NS linker file should be:

    ER_DATA NS_DATA_START NS_DATA_SIZE-NS_MSP_STACK_SIZE-NS_PSP_STACK_SIZE-EMPTY NS_HEAP_SIZE {

        * (+ZI +RW)

    }

 

Or, did I miss something?

 

Thank you,

Andrej Butok