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.
I am working on a bootloader for the CC2543 SOC. I've modified the linker script to divide up the 32K flash as follows:
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
From Section 2.2 of that document:
XDATA. A read-and-write data memory space, access to which usually requires 4–5 CPU instruction cycles. This memory space addresses 64 KB. Access to XDATA memory is also slower than DATA access, as the CODE and XDATA memory spaces share a common bus on the CPU core, and instruction prefetch from CODE thus cannot be performed in parallel with XDATA accesses.
Figure 2.1 in that same document shows a 32K Flash Bank within XDATA memory space. Is this a mapping of the internal 32K program space? If not, what it is?