Bart Jonkers wrote:
> > When looking at the ipipe_enable_pipeline function, we see that
> > interrupts management routines are all intercepted by the I-pipe, so the
> > cascaded interrupts management routines should be automatically
> > intercepted.
> > In order to have a better understanding of the issue, it would be
> > interesting if you could trace the functions that are called on the path
> > from the interrupt to the execution of the final handler.
> I have tracked and solved the issue. I have looked to the i.MX21 port
> and they added some code to the GPIO interrupt handler of the i.MX21.
> When IPIPE is active they unmask the interrupt for the GPIO pins at the
> end of the handler. I did the same for PXA and my GPIO interrupt problem
> is solved. I think that the same is needed for SA-1100.
Could you send us an updated pxa-sa1100 patch ?
> > Re-reading the patch I sent, I also realised that an important part of
> > the work is missing: the function gettimeoffset should be changed by the
> > patch too. I would be surprised if your problem was related to this,
> > though.
> What need to be changed in the function gettimeoffset?
The function need to return the offset since the last Linux timer
tick. With the additionnal constraint that the value returned by
gettimeofday should be increasing over time.
For example, a probably naive approach is to store the value of OSCR as
the last timer tick date in a global variable in pxa_timer_interrupt,
and to substract the current value of OSCR from this global variable in
Xenomai-core mailing list