Hello!

Sorry for not answering, but I was sick from the flu the whole last
week. 

On Fri, 2005-02-11 at 12:47, [EMAIL PROTECTED] wrote:
> On Fri, 11 Feb 2005, Paolo Mantegazza wrote:
> 
> > It is RTAI in power of everything, as it is the trampoline that delivers
> > to Linux by using the ADEOS propagate concept.
> 
> Ok, so, if I get it right this time, Adeos just provides an API, and the
> actual IRQ-dispatching / management is in RTAI's hands anyway again.

Not really. Look at a simplified arm/hal/hal.c:rtai_irq_trampoline():

static void rtai_irq_trampoline(unsigned irq)
{
    if (rtai_realtime_irq[irq].handler)
        rtai_realtime_irq[irq].handler(irq, rtai_realtime_irq[irq].cookie);
    else
        adeos_propagate_irq(irq);
}

Only active real-time irqs are handled by RTAI, the rest is deferred to
Adeos. But Adeos is responsible for interrupt queuing and dispatching
the whole time!

> > OK, my answer shooted at the wrong aim. In this case
> > rt_release_irq(RTAI_TIMER_IRQ) is likely just to be sure the following
> > timer request is not refused, because an irq handler is already
> > installed. In short the release is a reset to be sure the following
> > request is granted.
> 
> Ok, so, the release just is not needed there.

Yes, it should work without it, but having the extra release should not
hurt either. (Most likely I've copied it from some older code or from
i386 code.)

Mike
-- 
Dr. Michael Neuhauser                phone: +43 1 789 08 49 - 30
Firmix Software GmbH                   fax: +43 1 789 08 49 - 55
Vienna/Austria/Europe                      email: [EMAIL PROTECTED]
Embedded Linux Development and Services    http://www.firmix.at/


Reply via email to