summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Chou <thomas@wytron.com.tw>2009-10-07 14:16:43 (GMT)
committerDavid S. Miller <davem@davemloft.net>2009-10-19 04:24:16 (GMT)
commit50c54a57dfbd392e17f1473717b8e125afcb01a3 (patch)
tree97a8cde6648329e3b4877c477ea89d1c51323b71
parent16dd18b0837dee46f1a6b0c01830c5f2b7187266 (diff)
downloadlinux-fsl-qoriq-50c54a57dfbd392e17f1473717b8e125afcb01a3.tar.xz
ethoc: clear only pending irqs
This patch fixed the problem of dropped packets due to lost of interrupt requests. We should only clear what was pending at the moment we read the irq source reg. Signed-off-by: Thomas Chou <thomas@wytron.com.tw> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethoc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethoc.c b/drivers/net/ethoc.c
index 88a1c52..590473a 100644
--- a/drivers/net/ethoc.c
+++ b/drivers/net/ethoc.c
@@ -508,7 +508,7 @@ static irqreturn_t ethoc_interrupt(int irq, void *dev_id)
return IRQ_NONE;
}
- ethoc_ack_irq(priv, INT_MASK_ALL);
+ ethoc_ack_irq(priv, pending);
if (pending & INT_MASK_BUSY) {
dev_err(&dev->dev, "packet dropped\n");