diff options
-rw-r--r-- | drivers/net/xilinx_emaclite.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/xilinx_emaclite.c b/drivers/net/xilinx_emaclite.c index ecbbb688eba0..71122ee4e830 100644 --- a/drivers/net/xilinx_emaclite.c +++ b/drivers/net/xilinx_emaclite.c | |||
@@ -1269,6 +1269,16 @@ static int __devexit xemaclite_of_remove(struct platform_device *of_dev) | |||
1269 | return 0; | 1269 | return 0; |
1270 | } | 1270 | } |
1271 | 1271 | ||
1272 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
1273 | static void | ||
1274 | xemaclite_poll_controller(struct net_device *ndev) | ||
1275 | { | ||
1276 | disable_irq(ndev->irq); | ||
1277 | xemaclite_interrupt(ndev->irq, ndev); | ||
1278 | enable_irq(ndev->irq); | ||
1279 | } | ||
1280 | #endif | ||
1281 | |||
1272 | static struct net_device_ops xemaclite_netdev_ops = { | 1282 | static struct net_device_ops xemaclite_netdev_ops = { |
1273 | .ndo_open = xemaclite_open, | 1283 | .ndo_open = xemaclite_open, |
1274 | .ndo_stop = xemaclite_close, | 1284 | .ndo_stop = xemaclite_close, |
@@ -1276,6 +1286,9 @@ static struct net_device_ops xemaclite_netdev_ops = { | |||
1276 | .ndo_set_mac_address = xemaclite_set_mac_address, | 1286 | .ndo_set_mac_address = xemaclite_set_mac_address, |
1277 | .ndo_tx_timeout = xemaclite_tx_timeout, | 1287 | .ndo_tx_timeout = xemaclite_tx_timeout, |
1278 | .ndo_get_stats = xemaclite_get_stats, | 1288 | .ndo_get_stats = xemaclite_get_stats, |
1289 | #ifdef CONFIG_NET_POLL_CONTROLLER | ||
1290 | .ndo_poll_controller = xemaclite_poll_controller, | ||
1291 | #endif | ||
1279 | }; | 1292 | }; |
1280 | 1293 | ||
1281 | /* Match table for OF platform binding */ | 1294 | /* Match table for OF platform binding */ |