mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-24 03:01:55 +02:00
ar71xx: ag71xx: Add netpoll support
This patch adds support for polling interrupts, used by netconsole and the likes. Tested on d-link dir-615 C1 using netconsole. Signed-off-by: Pat Erley <pat-lkml@erley.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20503 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
473f46f9cf
commit
afa983c991
@ -926,6 +926,20 @@ static void ag71xx_set_multicast_list(struct net_device *dev)
|
||||
/* TODO */
|
||||
}
|
||||
|
||||
#ifdef CONFIG_NET_POLL_CONTROLLER
|
||||
/*
|
||||
* Polling 'interrupt' - used by things like netconsole to send skbs
|
||||
* without having to re-enable interrupts. It's not called while
|
||||
* the interrupt routine is executing.
|
||||
*/
|
||||
static void ag71xx_netpoll(struct net_device *dev)
|
||||
{
|
||||
disable_irq(dev->irq);
|
||||
ag71xx_interrupt(dev->irq, dev);
|
||||
enable_irq(dev->irq);
|
||||
}
|
||||
#endif
|
||||
|
||||
static const struct net_device_ops ag71xx_netdev_ops = {
|
||||
.ndo_open = ag71xx_open,
|
||||
.ndo_stop = ag71xx_stop,
|
||||
@ -936,6 +950,9 @@ static const struct net_device_ops ag71xx_netdev_ops = {
|
||||
.ndo_change_mtu = eth_change_mtu,
|
||||
.ndo_set_mac_address = eth_mac_addr,
|
||||
.ndo_validate_addr = eth_validate_addr,
|
||||
#ifdef CONFIG_NET_POLL_CONTROLLER
|
||||
.ndo_poll_controller = ag71xx_netpoll,
|
||||
#endif
|
||||
};
|
||||
|
||||
static int __init ag71xx_probe(struct platform_device *pdev)
|
||||
|
Loading…
Reference in New Issue
Block a user