Hi all,
While I was debugging my codes under CCS, I fell into SVCall exception, but I have no clue what I did to trigger it
What is the common cause of SVCall exception?
Thanks!
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.
Hi all,
While I was debugging my codes under CCS, I fell into SVCall exception, but I have no clue what I did to trigger it
What is the common cause of SVCall exception?
Thanks!
swupdate.h calls SVC. SoftwareUpdateBegin() calls address 0x2C if ROM_UpdateEMAC is undefined. If you look at g_pfnVectors in a statup_ccs.c, you'll see the 11th thing (0x2C/4 == 11) is called an SVCall handler.
I can't find a reverence to SVC in the Tiva ROM User Guide. Could you elaborate on what this call is?
Edit: I can see in the same file, this is just a while(1) loop. I'm still a little hazy on what SVC means
There is a similar example in usbdfu-rt.c:
// // Return control to the boot loader. This is a call to the SVC // handler in the boot loader. // (*((void (*)(void))(*(uint32_t *)0x2c)))();
Happy to help. I found what Charles means by a bootloader handler. The bootloader's statup_ccs.s is an assembly file, but you can get the gist:
Vectors: .ref __STACK_TOP .word __STACK_TOP ;; Offset 00: Initial stack pointer .word ResetISR - 0x20000000 ;; Offset 04: Reset handler .word NmiSR - 0x20000000 ;; Offset 08: NMI handler .word FaultISR - 0x20000000 ;; Offset 0C: Hard fault handler .word IntDefaultHandler ;; Offset 10: MPU fault handler .word IntDefaultHandler ;; Offset 14: Bus fault handler .word IntDefaultHandler ;; Offset 18: Usage fault handler .word 0 ;; Offset 1C: Reserved .word 0 ;; Offset 20: Reserved .word 0 ;; Offset 24: Reserved .word 0 ;; Offset 28: Reserved .word UpdateHandler - 0x20000000 ;; Offset 2C: SVCall handler
SVC seems synonymous with SWI based on some googling. I assume TI used the term to specifically mean a boot loader interrupt vector.