It is possible to use re-entrant interrupts on Cortex-M3/4 using the non-base-thread feature. You simply need to enable NONBASETHRDENA, and have the interrupt create a stack frame to run the body of the handler and perform a return using it, thus removing the interrupt from the active list, and therefore lowering the core's priority such that the same interrupt can be taken again.hths.