ARM IRQ reenter question
gds at chartertn.net
Tue Sep 2 04:24:20 UTC 2008
I have two IRQ exceptions: timer and ethernet. They are both handled by
_ISR_Handler in irq_asm.S. When I look with jtag debugger, I see
_ISR_Handler being called again while it is is progress (reentered) even
though the IRQ disable bit in the CPSR is set (disabled == 1) according
to gdb. Sometimes _ISR_Handler calls ethernet and sometimes timer, but I
never see it actually return.
Would this be expected with the CSPR set to 0x00000092 ? I would think
with IRQ disabled, _ISR_Handler would never be reentered.
The program runs fine as long as I don't hit a breakpoint. After I hit a
breakpoint and try to step or eventually continue, the program always
crashes. So, with this problem, my debugger is useless.
More information about the users