|
@@ -925,6 +925,14 @@ static int ibmveth_change_mtu(struct net_device *dev, int new_mtu)
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
|
+#ifdef CONFIG_NET_POLL_CONTROLLER
|
|
|
+static void ibmveth_poll_controller(struct net_device *dev)
|
|
|
+{
|
|
|
+ ibmveth_replenish_task(dev->priv);
|
|
|
+ ibmveth_interrupt(dev->irq, dev, NULL);
|
|
|
+}
|
|
|
+#endif
|
|
|
+
|
|
|
static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_id *id)
|
|
|
{
|
|
|
int rc, i;
|
|
@@ -997,6 +1005,9 @@ static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_
|
|
|
netdev->ethtool_ops = &netdev_ethtool_ops;
|
|
|
netdev->change_mtu = ibmveth_change_mtu;
|
|
|
SET_NETDEV_DEV(netdev, &dev->dev);
|
|
|
+#ifdef CONFIG_NET_POLL_CONTROLLER
|
|
|
+ netdev->poll_controller = ibmveth_poll_controller;
|
|
|
+#endif
|
|
|
netdev->features |= NETIF_F_LLTX;
|
|
|
spin_lock_init(&adapter->stats_lock);
|
|
|
|