aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/greth.c9
-rw-r--r--drivers/net/greth.h2
2 files changed, 7 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() */
diff --git a/drivers/net/greth.h b/drivers/net/greth.h
index 03ad903cd676..be0f2062bd14 100644
--- a/drivers/net/greth.h
+++ b/drivers/net/greth.h
@@ -23,6 +23,7 @@
23#define GRETH_BD_LEN 0x7FF 23#define GRETH_BD_LEN 0x7FF
24 24
25#define GRETH_TXEN 0x1 25#define GRETH_TXEN 0x1
26#define GRETH_INT_TE 0x2
26#define GRETH_INT_TX 0x8 27#define GRETH_INT_TX 0x8
27#define GRETH_TXI 0x4 28#define GRETH_TXI 0x4
28#define GRETH_TXBD_STATUS 0x0001C000 29#define GRETH_TXBD_STATUS 0x0001C000
@@ -35,6 +36,7 @@
35#define GRETH_TXBD_ERR_UE 0x4000 36#define GRETH_TXBD_ERR_UE 0x4000
36#define GRETH_TXBD_ERR_AL 0x8000 37#define GRETH_TXBD_ERR_AL 0x8000
37 38
39#define GRETH_INT_RE 0x1
38#define GRETH_INT_RX 0x4 40#define GRETH_INT_RX 0x4
39#define GRETH_RXEN 0x2 41#define GRETH_RXEN 0x2
40#define GRETH_RXI 0x8 42#define GRETH_RXI 0x8