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.

TMS320F28388D: firmware update

Part Number: TMS320F28388D


Hello,
customer wants to program a firmware updater. 

They choose flash boot using default boot pins. The F28x boot their primary bootloader and branch to 0x0008 0000 as predefined. Then they would like to place a custom 2nd bootloader which will check if data receives by UART otherwise start the application. So if no data is incoming they will branch to another sector in flash where by application code sits. 2nd bootloader should be placed in sector 0 and application in sector 4.

For evaluation he tried 2 projects programmed into flash memory. The first one turn led on gpio 31 and after some time make it off and will branch to the starting address of second software where led on gpio34 is blinked continuously. He mapped linker cmd from flash 0-3 for SW1 and flash sector 4-9 for SW2. Both was separate projects, build and written with flash option changed to ‘erase only necessary sectors’.

The opcode of both software can be seen in the locations after programming. They use asm(  “LB 0x00088000”) function to branch to 2nd SW. The problem is after successful completion of 1st SW the 2nd SW is not starting.

Is this procedure ok?
Is it ok to branch to the starting address of the main? Or how to use asm( “LB 0x ......”) function?

Regards, Holger