Bart Jonkers wrote: > > Here is a new version of the ipipe-sa1100-pxa patch that unmaks > > interrupts at the end of the demux handlers, and that attempt to fix the > > gettimeoffset issue. I have run 20 minutes (time for OSCR to wrap) latency > > with a test program verifying that time returned by gettimeofday is > > never going backward. > > > > The patch and the test program are attached, it would be nice if you > > could test them. > I have tested the patch and ran the test program. > The test program give no problems. > > The interrupt problem in Linux is also solved. But I have another one. > I have created a small real-time kernel module which uses the native > interface to handle an GPIO interrupt. The problem is that Xenomai > doesn't see the interrupt. When I use GPIO0 (which doesn't use the > chained handler) to receive the interrupt everything works as it should. > > So it seems to be that xenomai have a problem with the chained handler. > Does someone have an idea to solve this problem?
The problem is that the demux handler is a root domain handler, and directly call the cascaded interrupts root domain handlers through desc_handle_irq, whereas in order for the I-pipe to intercept the interrupt for any domain, the demux handler should be run for any domain, and invoke __ipipe_grab_irq, __ipipe_handle_irq or ipipe_trigger_irq so that the cascaded interrupts are pipelined. So, there are two possible fixes: - either fix the I-pipe patch so that the demux handler is invoked when the multiplexed interrupt is received for any domain, and triggers interrupts through ipipe_trigger_irq; - or you may fix the issue locally by registering a demux handler in Xenomai domain through ipipe_virtualize_irq_from, and in this demux handler only clear the interrupt you want and call ipipe_trigger_irq for them, and ipipe_propagate_irq the multiplexing interrupt to let other irqs be handled in the root domain. Philippe, is there a way to tell the I-ipipe that an interrupt handler should be executed for any domain? Is this what a "wired" handler is? -- Gilles Chanteperdrix. _______________________________________________ Xenomai-core mailing list Xenomai-core@gna.org https://mail.gna.org/listinfo/xenomai-core