ARM9 nested interrupts do not work - FreeRTOS

spatil123 wrote on Tuesday, May 29, 2012:


I have FreeRTOS running on the STR912xx processor with ARM9 core. I am facing a problem with the external interrupt. An external device asserts an interrupt, and it doesn’t get serviced. The interrupt works for most of the time but there are cases when it doesn’t. I suspect that when it coincides with the TIM2 interrupt, it doesn’t work. The timer 2 interrupt has a higher priority than the EXT0 interrupt.

In a thread “Arm- nested irqs”  Richard had mentioned that he has code for nested IRQ handling for the FreeRTOS. I had gone through all the details of this thread and convinced that I need nested IRQ handling. I would appreciate if Richard or anyone else shares this code.

Thank you very much for your help.

davedoors wrote on Wednesday, May 30, 2012:

FreeRTOS has built in interrupt nesting support for lots of cores, but not ARM7/9 because it is so complex. Have you tried using the FIQ instead of the IRQ? Chip companies often supply application notes on interrupt nesting on these cores. I know NXP do, maybe ST do too.