I have a TMS570LC4357 design with external parallell and SPI flash, as well as external SRAM.
The first 64 kB contains a bootloader which is a separate project.
The rest of the internal flash is used for the main application.
The external flash will be used to store additional applications of various kinds
which all execute from the external RAM.
Typically self-tests and other utilities.
The bootloader which uses the Parameter Overlay Module to remap the first 64 kB to SRAM
can program all the flash memories and can download applications to external SRAM using Y-Modem.
When debugging, I want the bootloader symbols AND the application symbols.
As far as I understand, I cannot write my own flashloader that can be used by CCS
to download to SRAM or program the external flash.
Why is this? I would like to get source code for the current flash loader so I can extend it.
We are using the IAR EWARM for this, and I have extended their flashloader to support programming all my flash.
Since the current application (u-boot) needs to be compiled on a linux machine,
I would like to debug also using Linux.
The procedure I would like to do is:
1. Compile u-boot to an ELF file. This includes a proprietary header defined in the linker command file.
2. Add a CRC-64 ISO to the header in a post-processing step
3. Download U-Boot to external SRAM. The download requires that some custom operations are done to initialize the EMIF.
At the same time, the symbols for the bootloader should be loaded and merged with the main application symbols.
4. Reset the CPU and start executing at address 0.
5. The SRAM contents should not be changed by this. (works with IAR)
6. The chip is now running the bootloader, and a command is given over the serial to start executing the application
or in some cases it is started automatically instead of starting the main application
If there is no way to download to external SRAM, I can download the application to flash using Y-modem
before starting debugging.
I can start a manual connection and load symbols, but can I load both ELF files in some way?
Running with a bootloader cannot be an unusual situation.
Programming external flash cannot be an unusual situation.
How can I solve my problem with CCS?