aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandros C. Couloumbis <alex@ozo.com>2011-03-28 12:00:17 +0000
committerAlexandros C. Couloumbis <alex@ozo.com>2011-03-28 12:00:17 +0000
commitc69977eb8bbe4bd8e43934364862507c69525e69 (patch)
tree7289b65aec943d4261764331c39d739366e11905
parent99c3236182cdd38ef844bef985883ff01421c9b0 (diff)
downloadupstream-c69977eb8bbe4bd8e43934364862507c69525e69.tar.gz
upstream-c69977eb8bbe4bd8e43934364862507c69525e69.tar.bz2
upstream-c69977eb8bbe4bd8e43934364862507c69525e69.zip
linux/atheros: add missing netpoll option. (closes #9130)
SVN-Revision: 26331
-rw-r--r--target/linux/atheros/patches-2.6.37/240-ar231x_netpoll.patch31
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 0000000000..c2f3d26a92
--- /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)