Tool/software:
I am having two images in Flash: A and B. APP A is located at Flash 0x00000000. APP B is located at 0x00220000. APP A is loader that would jump to APP B. I am building App B with linker out output set to true for linker generated ECC to be enabled in Project Properties. When I flash the build I get CortexR5: File Loader: Memory write failed: The address 0xf0483f7f does not map to a valid Flash Bank and Load failed message.
Please can I some advice on what is causing as the ECC sections in map file do not have 0xf0483f7f in it. The Linker Command file for APP B is as below:
#define APP_BASE_ADDRS 0x00220000
MEMORY
{
VECTORS (X) : origin=APP_BASE_ADDRS length=0x00000020 fill = 0xffffffff
FLASH (RX) : origin=(end(VECTORS))
length = (0x00220000 - size(VECTORS)) vfill = 0xFFFFFFFF
STACKS (RW) : origin=0x08000000 length=0x00001500
RAM (RW) : origin=0x08001500 length=0x0006eb00
RAMFUNC (RWX): origin=0x08070000 length=0x0000F000
ECC_VEC (R) : origin=(0xf0400000 + (start(VECTORS) >> 3))
length=(size(VECTORS) >> 3)
ECC={algorithm=algoL2R5F021, input_range=VECTORS}
ECC_FLASH(R) : origin=(0xf0400000 + (start(FLASH) >> 3))
length=(size(FLASH) >> 3)
ECC={algorithm=algoL2R5F021, input_range=FLASH }
}
ECC {
algoL2R5F021 : address_mask = 0xfffffff8 /* Address Bits 31:3 */
hamming_mask = R4 /* Use R4/R5 build in Mask */
parity_mask = 0x0c /* Set which ECC bits are Even and Odd parity */
mirroring = F021 /* RM57Lx and TMS570LCx are build in F021 */
}
/*----------------------------------------------------------------------------*/
/* Section Configuration */
SECTIONS
{
/* USER CODE BEGIN (5) */
.intvecs : {} palign=32 > VECTORS
.text : {} palign=8 > FLASH
.const : {} palign=8 > FLASH
.cinit : {} palign=8 > FLASH
.pinit : {} palign=8 > FLASH
/* USER CODE END */
.bss : {} > RAM
.data : {} > RAM
.sysmem : {} > RAM
}