Commit 391c5695 authored by Stephen Hemminger's avatar Stephen Hemminger Committed by Jeff Garzik

[PATCH] Allow pcnet_cs to work with shared irq

Here is a rediff'd version of the patch to fix shared irq handling in pcnet_cs
and generic 8390 drivers.
parent b1072d0b
...@@ -513,7 +513,7 @@ irqreturn_t ei_interrupt(int irq, void *dev_id, struct pt_regs * regs) ...@@ -513,7 +513,7 @@ irqreturn_t ei_interrupt(int irq, void *dev_id, struct pt_regs * regs)
} }
} }
spin_unlock(&ei_local->page_lock); spin_unlock(&ei_local->page_lock);
return IRQ_HANDLED; return IRQ_RETVAL(nr_serviced > 0);
} }
/** /**
......
...@@ -1163,10 +1163,11 @@ static irqreturn_t ei_irq_wrapper(int irq, void *dev_id, struct pt_regs *regs) ...@@ -1163,10 +1163,11 @@ static irqreturn_t ei_irq_wrapper(int irq, void *dev_id, struct pt_regs *regs)
{ {
struct net_device *dev = dev_id; struct net_device *dev = dev_id;
pcnet_dev_t *info = PRIV(dev); pcnet_dev_t *info = PRIV(dev);
info->stale = 0; irqreturn_t ret = ei_interrupt(irq, dev_id, regs);
ei_interrupt(irq, dev_id, regs);
/* FIXME! Was it really ours? */ if (ret == IRQ_HANDLED)
return IRQ_HANDLED; info->stale = 0;
return ret;
} }
static void ei_watchdog(u_long arg) static void ei_watchdog(u_long arg)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment