diff options
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.29/060-patch-ar6000.patch')
-rw-r--r-- | target/linux/s3c24xx/patches-2.6.29/060-patch-ar6000.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.29/060-patch-ar6000.patch b/target/linux/s3c24xx/patches-2.6.29/060-patch-ar6000.patch new file mode 100644 index 0000000..6e5ba87 --- /dev/null +++ b/target/linux/s3c24xx/patches-2.6.29/060-patch-ar6000.patch @@ -0,0 +1,36 @@ +diff -ruN linux-2.6.29.orig/drivers/ar6000/ar6000/ar6000_drv.c linux-2.6.29/drivers/ar6000/ar6000/ar6000_drv.c +--- linux-2.6.29.orig/drivers/ar6000/ar6000/ar6000_drv.c 2009-06-23 11:24:09.000000000 +0200 ++++ linux-2.6.29/drivers/ar6000/ar6000/ar6000_drv.c 2009-06-23 12:09:00.000000000 +0200 +@@ -213,6 +213,7 @@ + int ar6000_init(struct net_device *dev); + static int ar6000_open(struct net_device *dev); + static int ar6000_close(struct net_device *dev); ++static int ar6000_cleanup(struct net_device *dev); + static void ar6000_init_control_info(AR_SOFTC_T *ar); + static int ar6000_data_tx(struct sk_buff *skb, struct net_device *dev); + +@@ -984,6 +985,7 @@ + unregister_netdev(dev); + } else { + ar6000_close(dev); ++ ar6000_cleanup(dev); + } + + free_raw_buffers(ar); +@@ -1090,8 +1092,15 @@ + static int + ar6000_close(struct net_device *dev) + { +- AR_SOFTC_T *ar = netdev_priv(dev); ++ /* Stop the transmit queues */ ++ netif_stop_queue(dev); ++ return 0; ++} + ++static int ++ar6000_cleanup(struct net_device *dev) ++{ ++ AR_SOFTC_T *ar = netdev_priv(dev); + /* Stop the transmit queues */ + netif_stop_queue(dev); + |