Fri, 15 Sep 2000 [EMAIL PROTECTED] wrote:
[...]
> > is available in RTLinux for shared interrupt number will simplify this
> > operation. So that when the interrupt service routine is called, IRQ_number
> > and device_Id will be passed in addition to the register states. (Though, it
> > required additional work!!)
> > >
>
> The problem is "register states". Our low level IRQ handler code doesn't know
>anything
> about your board and it seems like it needs to know a great deal in order to figure
>things
> out. If you use sigaction in rtlinux, it is trivial to manage a shared irq by doing
> handler:
> look at board
> if irq not for me call oldhandler
> else process irq
> Since each sigaction returns the old handler information, you can dynamically
> build a chain.
BTW, does the sigaction (un)register code keep track of this kind of chains; ie
is it safe to remove handlers in the "wrong" order? (In case they are installed
by different modules.)
The "trick" has been around for ages, but in it's original form (ie no explicit
OS support), there were nasty side effects... :-)
David Olofson
Programmer
Reologica Instruments AB
[EMAIL PROTECTED]
..- M u C o S --------------------------------. .- David Olofson ------.
| A Free/Open Multimedia | | Audio Hacker |
| Plugin and Integration Standard | | Linux Advocate |
`------------> http://www.linuxdj.com/mucos -' | Open Source Advocate |
..- A u d i a l i t y ------------------------. | Singer |
| Rock Solid Low Latency Signal Processing | | Songwriter |
`---> http://www.angelfire.com/or/audiality -' `-> [EMAIL PROTECTED] -'
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/