Tool/software: Code Composer Studio
Hi Team CCS,
Customer reports..
"This issue applies to the Bootloader program for the TM4C123.. discovered that we cannot debug the application software with the Bootloader at 0x0 and the application software bumped up to 0xc00. Oddly though, the application software runs out of Flash without the debugger.
The application software crashes on the debugger when main() enables interrupts. Although it’s tough to tell where the code might go after enabling interrupts, the Program Counter after I halt the debugger is at 0x02FC. The Call Stack Window says [__iar_systems$$module + 0x2fb]. This address is consistent with the Program Counter. Any jump to the Vector Table should be at address 0xc00 or above. Since this error referenced an IAR symbol which I could not find information on, we checked w/ IAR.
IAR said they have seen this problem before and suggested that CPU manufacturer-supplied startup code often resets VTABLE back to 0x0, overwriting the change made in the IAR linker file. But, cannot see where TI-supplied code is doing this. IAR offered a partial solution by setting the VTABLE back to 0xc00 first-thing inside main(). We used the TI-supplied CPU_RegisterWrite() function to set VTABLE back to 0c00. I’m not sure this is the best solution. We’re thinking we need to change the TI-supplied startup code so that VTABLE is not changed back to 0x0.
The IAR proposed solution seems a little less than optimal.
Have you seen this issue before?
Do we already have a workaround for this?
Is the source available for the startup function? If so, where?"
Thanks, Merril