On 12/14/2012 04:33 PM, Tim Niemeyer wrote:
Hi

I'm using Xenomai 2.6.1 with linux 3.4.14 (with latest 'for-core-3.4'
Adeos) on an omap3 board.

While hunting a gpio-irq latency i tried to understand the adeos chained
interrupt code. I'm currently stuck at ipipe_handle_demuxed_irq()
because i didn't understand the IPIPE_IRQF_NOSYNC-Flag:

static inline void ipipe_handle_demuxed_irq(unsigned int cascade_irq)
{
..
__ipipe_dispatch_irq(cascade_irq, IPIPE_IRQF_NOSYNC);
..
}


This means "mark the interrupt as pending, but do not attempt to run the handler". Normally, __ipipe_dispatch_irq would eventually check and figure out that some interrupt is pending, and provided the context allows, it would run the handlers for each interrupt flagged as such, by calling __ipipe_sync_pipeline.

Maybe someone can give me hint or point me to the right documentation,
so that i can better understand the code for __ipipe_dispatch_irq() ?



--
Philippe.

_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai

Reply via email to