This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Bootloader memory placement with sysbios

Other Parts Discussed in Thread: SYSBIOS

I am trying to adjust my firmware to make room for a bootloader. As soon as I set the linker to to start the flash range at 0x2800 I get multiple overlapping range sections. If I set APP_BASE to 0 it compiles fine. I was trying to follow the boot serial example from tiva example. 

#define APP_BASE 0x00002800
#define FLASH_SIZE 0x00040000
#define RAM_BASE 0x20000000


#define CODE_HEADER_BASE 0x0003FFA0
#define CODE_HEADER_SIZE (FLASH_SIZE - CODE_HEADER_BASE)


#define APP_LENGTH (CODE_HEADER_BASE - APP_BASE)

/* System memory map */

MEMORY
{
/* Application stored in and executes from internal flash */
//FLASH (RX) : origin = APP_BASE, length = 0x00040000
FLASH (RX) : origin = APP_BASE, length = APP_LENGTH

CODE_HDR (RX) : origin = CODE_HEADER_BASE, length = CODE_HEADER_SIZE

/* Application uses internal RAM for data */
SRAM (RWX) : origin = 0x20000000, length = 0x00008000
}

It seems to give an error in liker.cmd for an autogenerated file that looks like its trying to put the interrupt vectors out of the app memory range. Is there something special I need to do for bootloader app when its using sysbios?

/*
* symbolic aliases for static instance objects
*/
xdc_runtime_Startup__EXECFXN__C = 1;
xdc_runtime_Startup__RESETFXN__C = 1;
TSK_idle = ti_sysbios_knl_Task_Object__table__V + 800;


SECTIONS
{
.bootVecs: type = DSECT
.vecs: load > 0x0, type = DSECT
.resetVecs: load > 0x0

xdc.meta: type = COPY
}