diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1997-12-06 23:51:34 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1997-12-06 23:51:34 +0000 |
commit | 230e5ab6a084ed50470f101934782dbf54b0d06b (patch) | |
tree | 5dd821c8d33f450470588e7a543f74bf74306e9e /drivers/net/wavelan.c | |
parent | c9b1c8a64c6444d189856f1e26bdcb8b4cd0113a (diff) |
Merge with Linux 2.1.67.
Diffstat (limited to 'drivers/net/wavelan.c')
-rw-r--r-- | drivers/net/wavelan.c | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/drivers/net/wavelan.c b/drivers/net/wavelan.c index 336283df0..a7a34551d 100644 --- a/drivers/net/wavelan.c +++ b/drivers/net/wavelan.c @@ -3666,14 +3666,7 @@ wavelan_interrupt(int irq, u_short status; u_short ack_cmd; - if((dev = (device *) (irq2dev_map[irq])) == (device *) NULL) - { -#ifdef DEBUG_INTERRUPT_ERROR - printk(KERN_WARNING "wavelan_interrupt(): irq %d for unknown device.\n", - irq); -#endif - return; - } + dev = dev_id; #ifdef DEBUG_INTERRUPT_TRACE printk(KERN_DEBUG "%s: ->wavelan_interrupt()\n", dev->name); @@ -3913,12 +3906,8 @@ wavelan_open(device * dev) return -ENXIO; } - if((irq2dev_map[dev->irq] != (device *) NULL) || - /* This is always true, but avoid the false IRQ. */ - ((irq2dev_map[dev->irq] = dev) == (device *) NULL) || - (request_irq(dev->irq, &wavelan_interrupt, 0, "WaveLAN", NULL) != 0)) + if(request_irq(dev->irq, &wavelan_interrupt, 0, "WaveLAN", dev) != 0) { - irq2dev_map[dev->irq] = (device *) NULL; #ifdef DEBUG_CONFIG_ERRORS printk(KERN_WARNING "%s: wavelan_open(): invalid irq\n", dev->name); #endif @@ -3933,8 +3922,7 @@ wavelan_open(device * dev) } else { - free_irq(dev->irq, NULL); - irq2dev_map[dev->irq] = (device *) NULL; + free_irq(dev->irq, dev); #ifdef DEBUG_CONFIG_ERRORS printk(KERN_INFO "%s: wavelan_open(): impossible to start the card\n", dev->name); @@ -3982,8 +3970,7 @@ wavelan_close(device * dev) */ wv_82586_stop(dev); - free_irq(dev->irq, NULL); - irq2dev_map[dev->irq] = (device *) NULL; + free_irq(dev->irq, dev); MOD_DEC_USE_COUNT; |