summaryrefslogtreecommitdiffstats
path: root/drivers/net/smc-ultra32.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/smc-ultra32.c')
-rw-r--r--drivers/net/smc-ultra32.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/smc-ultra32.c b/drivers/net/smc-ultra32.c
index c4f6543a0..a3d3abebf 100644
--- a/drivers/net/smc-ultra32.c
+++ b/drivers/net/smc-ultra32.c
@@ -239,8 +239,9 @@ __initfunc(int ultra32_probe1(struct device *dev, int ioaddr))
static int ultra32_open(struct device *dev)
{
int ioaddr = dev->base_addr - ULTRA32_NIC_OFFSET; /* ASIC addr */
+ int irq_flags = (inb(ioaddr + ULTRA32_CFG5) & 0x08) ? 0 : SA_SHIRQ;
- if (request_irq(dev->irq, ei_interrupt, 0, ei_status.name, dev))
+ if (request_irq(dev->irq, ei_interrupt, irq_flags, ei_status.name, dev))
return -EAGAIN;
outb(ULTRA32_MEMENB, ioaddr); /* Enable Shared Memory. */