On Fri, 2004-12-10 at 11:05, Andre Tousch wrote:
> Hi,
> 
> I'm currently using an RTOS with Linux/Adeos on ARM.

What CPU & Kernel are you using? FYI: I'm currently working with an
ARM920T CPU on Linux 2.4.21-rmk1-crus1.4.2 and found some issues - if
this is relevant for you: I will post about it here soon.

> [...]
>
> If I want to imitate the original RTOS behaviour, I have to schedule 
> (RTOS scheduler) at end of interrupt.
> I cannot do that in this domain's interrupt handler, since it would 
> Schedule() with domain stalled, and thus the domain would not receive 
> the interrupts until it gives control back to Adeos by suspending itself.
>
>[...]
>
> My question is, was there already a way to obtain this behaviour in Adeos?

Maybe I'm overlooking something, but why don't you unstall the pipeline
in your interrupt handler? You don't have to wait for
__adeos_sync_stage() to unstall it. Outline of interrupt handler:

        do_irq_work();
        adeos_unstall_pipeline();
        rtos_schedule();

Of course you need to have registered a high priority domain in which
the irq handler runs (irqs are hard disabled when entering a root domain
irq-handler).

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