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.

Sysbios application restart and control transfer

Other Parts Discussed in Thread: SYSBIOS

Hello..

What is the best way to restart a sysbios application ? 

Also, how to kill an executing sysbios application and transfer control to another sysbios application ? I have tried providing hook function using System_atexit and transfer control to new application from there. However, the new application crashes even before reaching main. 

My sysbios version is 6.33.5.46 and xdctools 3.23.3.53

Thanks in advance,

Shahid

  • Shahid,

    I'm not sure I understand what you mean by "kill an executing sysbios application and transfer control to another sysbios application".

    Can you describe your system a little more? What device is this? How are you loading the various applications?

    Alan

  • Alan,

    I'm working on AM335x ICE (Industrial Communication Engine) board. 

    The sysbios application ( EtherCAT Slave) is stored on SPI flash and executed from DDR. The bootloader loads the application to DDR and passes control to it. 

    EtherCAT application can receive upgraded version of its own binary over network. This new binary will be stored in SPI flash over writing the existing one.

    Ones the new binary is received,  currently executing binary will have to load it from SPI flash to DDR and execute it. This means, exiting application must quit and transfer control to new application. Current approach registers an exit hook function (as mentioned earlier) and this hook function transfers control to new application's init section. 

    I wanted to know whether there are any better approaches for doing this.

    Thanks,

    Shahid

  • It seems like you'd want to re-enter the bootloader to properly load and run the new application image. No?

    If so, does the boot loader have an entry point that your application can call to initiate an orderly restart?

    Alan