aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/arm/at91_ether.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/arm/at91_ether.c b/drivers/net/arm/at91_ether.c
index 918368cdb766..f33d957adc7a 100644
--- a/drivers/net/arm/at91_ether.c
+++ b/drivers/net/arm/at91_ether.c
@@ -923,6 +923,17 @@ static irqreturn_t at91ether_interrupt(int irq, void *dev_id)
923 return IRQ_HANDLED; 923 return IRQ_HANDLED;
924} 924}
925 925
926#ifdef CONFIG_NET_POLL_CONTROLLER
927static void at91ether_poll_controller(struct net_device *dev)
928{
929 unsigned long flags;
930
931 local_irq_save(flags);
932 at91ether_interrupt(dev->irq, dev);
933 local_irq_restore(flags);
934}
935#endif
936
926/* 937/*
927 * Initialize the ethernet interface 938 * Initialize the ethernet interface
928 */ 939 */
@@ -972,6 +983,9 @@ static int __init at91ether_setup(unsigned long phy_type, unsigned short phy_add
972 dev->set_mac_address = set_mac_address; 983 dev->set_mac_address = set_mac_address;
973 dev->ethtool_ops = &at91ether_ethtool_ops; 984 dev->ethtool_ops = &at91ether_ethtool_ops;
974 dev->do_ioctl = at91ether_ioctl; 985 dev->do_ioctl = at91ether_ioctl;
986#ifdef CONFIG_NET_POLL_CONTROLLER
987 dev->poll_controller = at91ether_poll_controller;
988#endif
975 989
976 SET_NETDEV_DEV(dev, &pdev->dev); 990 SET_NETDEV_DEV(dev, &pdev->dev);
977 991