Hi verd,
First, do you have a tool to look at your LED signal? (oscilloscope / logic analyzer)
Setting your PLL may require you to wait for it to stabilize (although probably not when deactivating it, but then it’s easier to isolate the problems) - try without changing it, it should be set up by your Cstartup.asm (or .s or .s79 or whatever)
You probably want to have a look at the asm file that supports the ARM core exception vectors.
It typically also has your boot up sequence and calls your main().
It should contain something like
LDR PC,Reset_Addr
LDR PC,Undef_Addr
LDR PC,SWI_Addr
LDR PC,PAbt_Addr
LDR PC,DAbt_Addr
NOP
LDR PC,IRQ_Wrapper_addr
LDR PC,FIQ_Addr
(the names of the addresses may be different)
This should be located at address 0, where the ARM core boots.
As you can see by branching at address 0 (upon boot) the core would jump right away to Reset_addr (PC is the program counter: the address of the next instruction to execute).
Then you have the exception vectors for undefined instruction, software interrupt (for your preemptive OS if you have one), (instruction) prefetch abort and data (access) aborts.
After that you have a reserved vector (the one that does nothing: NOP = no operation)
And then you have what you are looking for: the IRQ vector and the FIQ vector.
Typically the IRQ vector should point to some address that is defined in the same assembly file, but that could be declared extern (should be declared above the list in the assembly file).
Wherever it is located, the code there needs to return from interrupt when it is done, which is not the same as simply returning from a function: there is a context switch.
IF the label there is defined in the assembly file you are looking at (Ctrl-f with the name of the label will tell you that), then have a look at the actual code that follows it. If you understand ARM assembly you should figure out whether it pushes the stack, calls the vector provided by the VIC and the pops the stack and returns from interrupt.
If not, chances are it does.
In either case you can try removing the qualification as IRQ.