I am having trouble preventing other interrupts from affecting the timing of a timer triggered function. I do not seem to be able to come up with a configuration of the Hwi of the other ISRs and the Hwi of the timer triggered function to allow the timer triggered function interrupt to preempt the other ISRs and prevent the other ISRs from preempting my timer triggered function.
I am using SYS/BIOS 6.33.02.31 on the ARM Cortex-8 of an OMAP3530.
I have tried setting the Hwi maskSetting for the Hwi ISRs to Hwi_MaskingOption_NONE and the maskSetting for the Hwi parameter in the Timer parameter for the timer to Hwi_MaskingOption_ALL but my timer function is still getting interrupted and/or delayed until the other ISRs complete. I can see this on a scope as the occasional stretching of a PWM signal (that’s what I’m using the timer for).
I’m basically trying to do everything possible to keep the timing of the timer interrupt function execution as accurate as possible: even at the cost of delaying other interrupts.
So I guess 1st question is: Do Hwi_MaskingOption_NONE and Hwi_MaskingOption_ALL work for SYS/BIOS on an ARM Cortex-8? The SYS/BIOS manual seems to indicate that on some architectures, only Hwi_MaskingOption_SELF works.
2nd question is: How do I get my timer function to preempt the other ISRs and prevent the other ISRs from preempting it?
Thanks for any help.