From: Amit Uttamchandani Date: Fri, 19 Jul 2013 00:45:22 +0000 (-0700) Subject: net/velocity: add poll controller function for velocity nic X-Git-Tag: v3.12-rc1~132^2~489 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0887a576a17965732270b2f8d37821fc02ef2feb;p=platform%2Fkernel%2Flinux-exynos.git net/velocity: add poll controller function for velocity nic Add poll controller function for velocity nic. Signed-off-by: Amit Uttamchandani Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/via/via-velocity.c b/drivers/net/ethernet/via/via-velocity.c index 1d6dc41..ef77631 100644 --- a/drivers/net/ethernet/via/via-velocity.c +++ b/drivers/net/ethernet/via/via-velocity.c @@ -2376,6 +2376,23 @@ out_0: return ret; } +#ifdef CONFIG_NET_POLL_CONTROLLER +/** + * velocity_poll_controller - Velocity Poll controller function + * @dev: network device + * + * + * Used by NETCONSOLE and other diagnostic tools to allow network I/P + * with interrupts disabled. + */ +static void velocity_poll_controller(struct net_device *dev) +{ + disable_irq(dev->irq); + velocity_intr(dev->irq, dev); + enable_irq(dev->irq); +} +#endif + /** * velocity_mii_ioctl - MII ioctl handler * @dev: network device @@ -2641,6 +2658,9 @@ static const struct net_device_ops velocity_netdev_ops = { .ndo_do_ioctl = velocity_ioctl, .ndo_vlan_rx_add_vid = velocity_vlan_rx_add_vid, .ndo_vlan_rx_kill_vid = velocity_vlan_rx_kill_vid, +#ifdef CONFIG_NET_POLL_CONTROLLER + .ndo_poll_controller = velocity_poll_controller, +#endif }; /**