From e7db78c341692d2a3dd399659f61e9cef213e360 Mon Sep 17 00:00:00 2001 From: nbd Date: Sat, 9 Apr 2011 18:26:03 +0000 Subject: atheros: merge a few patches into the right place git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26556 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../atheros/patches-2.6.37/110-ar2313_ethernet.patch | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'target/linux/atheros/patches-2.6.37/110-ar2313_ethernet.patch') diff --git a/target/linux/atheros/patches-2.6.37/110-ar2313_ethernet.patch b/target/linux/atheros/patches-2.6.37/110-ar2313_ethernet.patch index 132fd0131..42d9229b1 100644 --- a/target/linux/atheros/patches-2.6.37/110-ar2313_ethernet.patch +++ b/target/linux/atheros/patches-2.6.37/110-ar2313_ethernet.patch @@ -25,7 +25,7 @@ obj-$(CONFIG_DECLANCE) += declance.o --- /dev/null +++ b/drivers/net/ar231x.c -@@ -0,0 +1,1278 @@ +@@ -0,0 +1,1293 @@ +/* + * ar231x.c: Linux driver for the Atheros AR231x Ethernet device. + * @@ -182,6 +182,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, @@ -192,6 +204,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) -- cgit v1.2.3