On Thu, 31 Jan 2002, Wayne E. Van Loon Sr. wrote:

> Herman:
> What is your definition of a shared interrupt? 
> 1) A single interrupt being shared between rtl and Linux?

I would like to do so. I'm author of CanFestival a CanOpen master (a Can
driver, CanOpen lib, an bus monitorin/mastering curses based tool. See
www.esstin.uhp-nancy.fr/~tissered/CanFestival)

Latest stable version of the driver was using rtl_request_irq to register
a handler on the CAN controler PCI board.

On my new target, network controler seems to use the same interrupt as
the Can board.

My code works perfectly only if I unload the 8139too (driver of my
network controler) module before registering my driver module.

If this module is loaded irq doesn'seem to get triggered at any time
neiher for can nor ethernet. 

Reading Dr. Victor Yodaiken advices in mailing lists I have choosen using
sigaction instead of rtl_request_irq. This work ! But not with ethernet
module loaded ! (in fact it is the same problem...)

So I'v read code. sigaction() calls rtl_request_irq too. So what appen
when a linux driver module calls request_irq after my call to
rtl_request_irq for the same IRQ number ? Should I append 
rtl_global_pend_irq(IRQ) to my irq/signal handler ? (this segfault !!)

Please help, I've read all docs and search in source code and I still
don't understand who could I "share this IRQ".

> 2) A single interrupt being shared within a rtl process?

This doesn't seem to be very complicated to do :)

> 3) A single interrupt being shared between multiple rtl processes?

Maybe could we do that through a signal handling hack ?

> 4) Other possibilities?

No thanks, just the first one.

> Best Regards,
> Wayne

Thanks for your help.

Edouard

-- [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/

Reply via email to