diff options
author | acoul <acoul@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-03-28 12:00:17 +0000 |
---|---|---|
committer | acoul <acoul@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-03-28 12:00:17 +0000 |
commit | d7975e7635f3d12207ef011cfb926a8927ab8818 (patch) | |
tree | d267fa5057f230918ddbc5fdeee6a404d00ffa21 | |
parent | ba10982e1d9735fab43b38dd6e4f267e9d89d8a9 (diff) |
linux/atheros: add missing netpoll option. (closes #9130)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26331 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | target/linux/atheros/patches-2.6.37/240-ar231x_netpoll.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/target/linux/atheros/patches-2.6.37/240-ar231x_netpoll.patch b/target/linux/atheros/patches-2.6.37/240-ar231x_netpoll.patch new file mode 100644 index 000000000..c2f3d26a9 --- /dev/null +++ b/target/linux/atheros/patches-2.6.37/240-ar231x_netpoll.patch @@ -0,0 +1,31 @@ +--- a/drivers/net/ar231x.c ++++ b/drivers/net/ar231x.c +@@ -155,6 +155,18 @@ + #define ERR(fmt, args...) printk("%s: " fmt, __func__, ##args) + #endif + ++#ifdef CONFIG_NET_POLL_CONTROLLER ++static void ++ar231x_netpoll(struct net_device *dev) ++{ ++ unsigned long flags; ++ ++ local_irq_save(flags); ++ ar231x_interrupt(dev->irq, dev); ++ local_irq_restore(flags); ++} ++#endif ++ + static const struct net_device_ops ar231x_ops = { + .ndo_open = ar231x_open, + .ndo_stop = ar231x_close, +@@ -165,6 +177,9 @@ + .ndo_validate_addr = eth_validate_addr, + .ndo_set_mac_address = eth_mac_addr, + .ndo_tx_timeout = ar231x_tx_timeout, ++#ifdef CONFIG_NET_POLL_CONTROLLER ++ .ndo_poll_controller = ar231x_netpoll, ++#endif + }; + + int __init ar231x_probe(struct platform_device *pdev) |