aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/greth.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/greth.c')
-rw-r--r--drivers/net/greth.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/greth.c b/drivers/net/greth.c
index e48d18216cbe..b888abe6cd21 100644
--- a/drivers/net/greth.c
+++ b/drivers/net/greth.c
@@ -586,12 +586,13 @@ static irqreturn_t greth_interrupt(int irq, void *dev_id)
586 status = GRETH_REGLOAD(greth->regs->status); 586 status = GRETH_REGLOAD(greth->regs->status);
587 587
588 /* Handle rx and tx interrupts through poll */ 588 /* Handle rx and tx interrupts through poll */
589 if (status & (GRETH_INT_RX | GRETH_INT_TX)) { 589 if (status & (GRETH_INT_RE | GRETH_INT_RX |
590 GRETH_INT_TE | GRETH_INT_TX)) {
590 591
591 /* Clear interrupt status */ 592 /* Clear interrupt status */
592 GRETH_REGORIN(greth->regs->status, 593 GRETH_REGSAVE(greth->regs->status,
593 status & (GRETH_INT_RX | GRETH_INT_TX)); 594 status & (GRETH_INT_RE | GRETH_INT_RX |
594 595 GRETH_INT_TE | GRETH_INT_TX));
595 retval = IRQ_HANDLED; 596 retval = IRQ_HANDLED;
596 597
597 /* Disable interrupts and schedule poll() */ 598 /* Disable interrupts and schedule poll() */