diff options
author | Steve Glendinning <steve.glendinning@smsc.com> | 2008-12-13 01:31:50 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-12-13 01:31:50 -0500 |
commit | e312674ffb5281a46a3ad06604edea6426c4eb24 (patch) | |
tree | 92507934f4d8a1dbfa1fc95b7be51f5cfe864ac0 /drivers/net/smsc9420.c | |
parent | 1757ab2f0411110c0261dfb66d26faf63037c531 (diff) |
smsc9420: add netpoll support
Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/smsc9420.c')
-rw-r--r-- | drivers/net/smsc9420.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/smsc9420.c b/drivers/net/smsc9420.c index b04bfb2f610..80dab8bea76 100644 --- a/drivers/net/smsc9420.c +++ b/drivers/net/smsc9420.c | |||
@@ -550,6 +550,15 @@ static irqreturn_t smsc9420_isr(int irq, void *dev_id) | |||
550 | return ret; | 550 | return ret; |
551 | } | 551 | } |
552 | 552 | ||
553 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
554 | static void smsc9420_poll_controller(struct net_device *dev) | ||
555 | { | ||
556 | disable_irq(dev->irq); | ||
557 | smsc9420_isr(0, dev); | ||
558 | enable_irq(dev->irq); | ||
559 | } | ||
560 | #endif /* CONFIG_NET_POLL_CONTROLLER */ | ||
561 | |||
553 | static void smsc9420_dmac_soft_reset(struct smsc9420_pdata *pd) | 562 | static void smsc9420_dmac_soft_reset(struct smsc9420_pdata *pd) |
554 | { | 563 | { |
555 | smsc9420_reg_write(pd, BUS_MODE, BUS_MODE_SWR_); | 564 | smsc9420_reg_write(pd, BUS_MODE, BUS_MODE_SWR_); |
@@ -1418,6 +1427,9 @@ static const struct net_device_ops smsc9420_netdev_ops = { | |||
1418 | .ndo_set_multicast_list = smsc9420_set_multicast_list, | 1427 | .ndo_set_multicast_list = smsc9420_set_multicast_list, |
1419 | .ndo_do_ioctl = smsc9420_do_ioctl, | 1428 | .ndo_do_ioctl = smsc9420_do_ioctl, |
1420 | .ndo_validate_addr = eth_validate_addr, | 1429 | .ndo_validate_addr = eth_validate_addr, |
1430 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
1431 | .ndo_poll_controller = smsc9420_poll_controller, | ||
1432 | #endif /* CONFIG_NET_POLL_CONTROLLER */ | ||
1421 | }; | 1433 | }; |
1422 | 1434 | ||
1423 | static int __devinit | 1435 | static int __devinit |