I am working on a bootloader for the CC2543 SOC. I've modified the linker script to divide up the 32K flash as follows:
- 3K interrupt vector table and bootloader
- 14K application and vector redirection table
- 14K new application image
- 1K reserved for block protection bits.
The application is responsible for writing the new 14K application image (sent by a proprietary debug tool) into the appropriate location for processing by the bootloader, and then triggering a software reset
The reset vector has been modified to point directly at the bootloader, so it executes prior to the application. The bootloader checks the integrity of the new application image, and if it has a proper CRC, it will be copied into the application space.
In the bootloader, I'd like to use the DMA to copy the 14K new application image into the 14K of application space. Is this possible when both the source and address reside in flash? If so, is there sample code available?
Thanks in advance for your help...
Todd Witters