Here is our problem. We have a custom PCB using the C6748. It boots out of SPI1 FLASH, and everything works fine. However, we have two issues. The first is that our .BIN image is getting very close internal C6748 bootloader SPI FLASH limit (16MB). The second problem is that it takes a long time (20+ seconds) to boot that much code out of the SPI FLASH. During this time our display is dead, keys don't function, LED's don't blink, etc. To the user, it looks like our units is defective.
Here are the reasons I need a custom bootloader. The SPI FLASH we have populated on the PCB is 32MB, so that will fix my first problem. However, the C6748 bootloader won't access the upper 16MB's. In addition, the 20+ seconds of boot time is unacceptable to marketing. They would like an image to appear on the screen after 1-2 seconds, telling the user the phone is "booting / setting up / initializing / etc". The custom PCB is fixed to boot out of SPI1 FLASH, so I can't use a different boot method that might be faster.
I've reviewed a few forum posts about custom boot loaders, but none (that I found) offered specific details. I would like suggestions and recommendations on the best way to do this. I do have a few ideas/ requirements.
1. We want an "easy" way to take our .OUT files from the CCSv5 debugging environment and make it run stand alone. Currently we use AISGEN (D800K008) to produce the .BIN file. AISGEN has a nice interface to setup the PLL's, configure the DDR2, configure the PSC, setup the SPI, etc. We want to continue to use AISGEN.
2. Is it possible to setup one CCSv5 project, and only have a "small" section bootable by the internal C6748 bootloader? Basically I want to create a new text / data section that would only have basic initialization code (LCD for example), an image for the display, and then whatever other code I need to finish booting (SPI read).
3. If #2 above isn't possible, do I need two separate CCSv5 projects? One small one that contains my custom bootloader, and then the normal large project? If this is the case, how do I prevent both .BIN images from wanting to load into the SPI FLASH at 0x000000?
4. If we continue to use AISGEN, I assume I'm going to have to understand AIS (Application Image Script). Application Report SPRAAT2E seems to spell this out pretty clearly. Do I need more information? I see Appendix C has the CRC code, so I'll probably need that.
5. Other comments, suggestions, recommendations, etc. are welcome.
Thanks, Dean