Multiple PCI devices on the same IRQ: kernel or driver?

Jon Lewis jlewis@inorganic5.fdt.net
Tue Dec 1 01:36:46 1998


On Mon, 30 Nov 1998, Mark Martin wrote:

> under Linux was "not a good idea".  Jon Lewis suggested that the kernel
> does a poor job of IRQ sharing but suggested hacking the tulip driver. 

> the problem lies with the driver.  If so, could someone point me in the
> right direction toward implementing Jon's hack?  I've done a lot of
> coding but I've never hacked a linux device driver and don't know where
> to start.

Don may slap me around at the next Linux Expo...but here you go.  All I
can say is I'm using it on 2 systems, and it "seems to work fine".  I know
that at best, it'll slow things down a bit, and at worst horrible things
might happen, so far nothing has.

--- tulip.c~    Sat Oct  3 16:12:36 1998
+++ tulip.c     Sat Oct  3 16:24:23 1998
@@ -1281,7 +1281,14 @@
 
 #ifdef SA_SHIRQ
        if (request_irq(dev->irq, &tulip_interrupt, SA_SHIRQ, dev->name, dev)) {
-               return -EAGAIN;
+               printk("tulip_open(): Requested IRQ%d is busy - attemping FAST/SHARE.\n", dev->irq);
+               if (request_irq(dev->irq, &tulip_interrupt, SA_INTERRUPT | SA_SHIRQ, dev->name, dev)) {
+                       printk("tulip_open(): Requested IRQ%d unavailable.  Reconfigure hardware and try again.\n", dev->irq);
+                       return -EAGAIN;
+               }
+               else {
+                       printk("tulip_open(): Got IRQ in FAST/suboptimal mode\n");
+               }
        }
 #else
        if (irq2dev_map[dev->irq] != NULL



----don't waste your cpu, crack rc5...www.distributed.net team enzo---
 Jon Lewis <jlewis@fdt.net>  |  Spammers will be winnuked or 
 Network Administrator       |  nestea'd...whatever it takes
 Florida Digital Turnpike    |  to get the job done.
______http://inorganic5.fdt.net/~jlewis/pgp for PGP public key________