Re: Comedi & real time interrupts.

Selon Tabish Mustufa <tmustufa_at_jhu.edu>:

> > I have read docs, but can't find really up 2 date explanations. and also
> > have a quick look at some code in rt.c since comedi_request_irq looks to
> > be defined there, but this seems to use request_irq, not rt_request_irq
> > ????
>
> There are a couple versions of comedi_request_irq in rt.c.  Which one ends
> up being used depends on which realtime package comedi gets linked
> against.
>
> To my recollection, comedi tries to get an unshared IRQ using request_irq
> before calling rt_request_irq.  This will fail if any other device is
> using the same IRQ line.  If it succeeds, you'll get an entry in
> /proc/interrupts for your device that always shows zero interrupts (since
> the IRQ's never get to the Linux domain).

Thanks for your reply,

Well, this is what i get!! my understanding is that comedi_request_irq just try
to install a linux interrupt handler but do not call rt_request_irq.

What I can see is that if the TRIG_RT flag is set,  do_cmd_ioctl will call
comedi_switch_to_rt which will then call rt_request_irq.

The good news here is that the way interrupts from my card are handled are "hard
real-time" interrupts. The bad news is how can i get this data if i am in a real
time userland task ? My understanding is that a syscall to read will bring me
back to linux so no longer real time ?


> I don't know if that helps, but for what it's worth, I've been having
> trouble with RTAI interrupts in a driver for some custom in-house hardware
> at my employer.  Everything works fine under RTAI 3.3, but I tried
> upgrading one of our computers to 3.4 and the computer hard-locks on
> interrupts.  I haven't had a chance to figure out what's wrong yet...

What still looks surprising is that "read" hangs if i do not specify TRIG_RT
flag, in the cmd flags. What does really happens ?? the "linux" interrupt
handler is set, so the interrupt should trigger this handler ??!!

Thanks,

>
> -Tabish
>
> _______________________________________________
> comedi mailing list
> comedi_at_comedi.org
> https://cvs.comedi.org/cgi-bin/mailman/listinfo/comedi
>

Received on 2007-02-14Z12:51:09