ARM IRQ reenter question

Gene Smith gds at
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 mailing list