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.

Firmware update on C5535 ezdsp without using code composer: booting from serial flash

Hello,

I have been working with C5535 DSP.   How can I burn my program into serial flash without using code composer?  We have designed a system that use C5535 for signal processing and we want our firmware to boot from serial flash. In the future we will probably need to update this firmware on our client site using either USB ,  SD carte or others means. Could you please tell me the best way to do this ?  We don’t want to use code composer for firmware update.

 

Many thanks

 

François Magnifotcham

HASLER international

  • Hello François,

    The C5535 bootloader has a fixed order in which it checks for a valid boot image on each supported boot device. The device order is 16-bit SPI EEPROM, 24-bit SPI serial flash, I2C EEPROM, and SD/SDHC/eMMC/moviNAND. The first device with a valid boot image will be used to load and execute user code.

    In order to modify the contents of the serial flash (2nd in the boot order), your system will have skip booting from serial flash, so that it can boot from some other source.

    It could prevent chip select from going low - preventing the serial flash from reading. Or you could invalidate the boot image in serial flash by changing the first two bytes in serial flash containing the boot signature, preventing the bootloader from attempting a boot.

    At this point the C5535 will look for boot images on other peripherals like the SD card, USB, etc. That program will have to rewrite the contents of the serial flash.

    We have included the source code for the programmer in the CSL 3.00. This programmer is used by CCS to program external memory on the board with a boot image. It can be used as a base, but without CIO interface the user interface / file IO will not work. You can at least extract code for writing to the serial flash.

    How big is the boot image stored in serial flash? If small enough to fit inside the 320KB internal mem - it could be included in the bootimg.bin file that also copies the bootimg.bin data into serial flash...

    An alternate approach is to include "update mode" in your existing application that copies updated f/w from source into serial flash during normal execution... It would have to include initialization and functions for MMC/SD or USB - there are CSL examples for both.

    Hope this helps,
    Mark

  • Mark:

    I would like to learn your flash program source code, as you mentioned:

    We have included the source code for the programmer in the CSL 3.00.

    However I could not identify it from your link. Could you please make it more clear or put it as a separate item?

    Thanks!

    Jun

  • Hi Jun,

    I have to let you know that the latest CSL release is now 3.06 - available at http://software-dl.ti.com/dsps/dsps_public_sw/dsps_swops_houston/C55X/latest/index_FDS.html

    The programmer source code has been available since at least the CSL_3.00 release and is located under the examples directory - see below.

    <install_dir>\c55xx_csl_3.00\ccs_v5.0_examples\programmer

    <install_dir>\c55xx_csl_3.06\ccs_v6.x_examples\programmer

    The programmer currently reads in a file using CCS and programs it to external memory using the C55x processor. You can adapt this source code to meet your programming needs (for example to read a file from an SD card and write to SPI flash).

    Hope this helps,
    Mark