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.

Boot application for C5505

Other Parts Discussed in Thread: TMS320C5505

We have C5505 based custom board which usually boot from NOR SPI Spansion flash S25FL032P.

We are thinking now to add "upgrade feature" to our application which allow to us burn new version to flash while keeping old one. So we will have two images of our app in flash. As far as I understand to achieve this functionality I have to write small boot application which will select and load to RAM one of the images and pass control to it.

So I have two questions:

1. Whether described above approach is correct or I can achieve the same without writing special boot application?

2. If answer to first question is Yes, then are there any code samples which show me how to copy image from flash to RAM and pass control to it

Thanks in advance

  • Robert Smith said:

    1. Whether described above approach is correct or I can achieve the same without writing special boot application?

    Yes, you will need to create your own small boot loader application which will then determine which image to load into RAM.  This small boot loader would itself be copied from your non-volatile memory (in your case NOR SPI flash) to RAM.  The on-board ROM bootloader of the TMS320C5505 will be able to handle that portion.

     

    Robert Smith said:

    2. If answer to first question is Yes, then are there any code samples which show me how to copy image from flash to RAM and pass control to it

     
    I haven't found any code examples for this purpose.
  • Thank you for your response.

    As far as I understand the boot application should perform 4 tasks:

    1. Read appropriate image from SPI flash.

    2. Decrypt the image (we create images in binary format).

    3. Load memory sections in appropriate locations in RAM

    4. Pass control to init function

    I have no problem with task 1, but not quite sure how to implement tasks 2-4. Could you shed light on these tasks or at least direct me to some sort of source.

    Thanks

  • Are you familiar with the application note found on the TMS320C5505 Product Folder entitled Using the TMS320C5515/14/05/04 Bootloader?  While this does not provide source code to allow you to build your own bootloader, it does provide a description of the TMS320C5505's own bootloader in ROM and the format of the image needed in the non-volatile memory device.