summaryrefslogtreecommitdiff
path: root/multitech/recipes/linux
diff options
context:
space:
mode:
authorJesse Gilles <jgilles@multitech.com>2013-03-12 16:10:09 -0500
committerJesse Gilles <jgilles@multitech.com>2013-03-12 16:10:09 -0500
commita3eb650bd9ec1f3645c9643358377e423eb1dc59 (patch)
treed2a6727cb453c2ce4f196aacda5d95e9d42483bb /multitech/recipes/linux
parentf0f745e797c7a2b02a3754a55aca454cb9dbafba (diff)
linux-2.6.39.4: mtocgd3: fix ethernet state after down/up
Diffstat (limited to 'multitech/recipes/linux')
-rw-r--r--multitech/recipes/linux/linux-2.6.39.4/mtocgd3/linux-2.6.39.4-macb-force-link.patch18
1 files changed, 15 insertions, 3 deletions
diff --git a/multitech/recipes/linux/linux-2.6.39.4/mtocgd3/linux-2.6.39.4-macb-force-link.patch b/multitech/recipes/linux/linux-2.6.39.4/mtocgd3/linux-2.6.39.4-macb-force-link.patch
index 196a549..2ef39a9 100644
--- a/multitech/recipes/linux/linux-2.6.39.4/mtocgd3/linux-2.6.39.4-macb-force-link.patch
+++ b/multitech/recipes/linux/linux-2.6.39.4/mtocgd3/linux-2.6.39.4-macb-force-link.patch
@@ -1,7 +1,7 @@
Index: linux-2.6.39.4/drivers/net/macb.c
===================================================================
--- linux-2.6.39.4.orig/drivers/net/macb.c 2011-08-03 14:43:28.000000000 -0500
-+++ linux-2.6.39.4/drivers/net/macb.c 2012-06-01 11:15:43.029717836 -0500
++++ linux-2.6.39.4/drivers/net/macb.c 2013-03-12 15:31:34.710687318 -0500
@@ -193,7 +193,9 @@
struct eth_platform_data *pdata;
int ret;
@@ -34,7 +34,15 @@ Index: linux-2.6.39.4/drivers/net/macb.c
/* mask with MAC supported features */
phydev->supported &= PHY_BASIC_FEATURES;
-@@ -966,7 +973,15 @@
+@@ -942,6 +949,7 @@
+ {
+ struct macb *bp = netdev_priv(dev);
+ int err;
++ unsigned long flags;
+
+ dev_dbg(&bp->pdev->dev, "open\n");
+
+@@ -966,8 +974,19 @@
macb_init_hw(bp);
/* schedule a link state check */
@@ -49,9 +57,13 @@ Index: linux-2.6.39.4/drivers/net/macb.c
+ bp->phy_dev->duplex = 1;
+ macb_handle_link_change(bp->dev);
++ spin_lock_irqsave(&bp->lock, flags);
++ netif_carrier_on(dev);
++ spin_unlock_irqrestore(&bp->lock, flags);
netif_start_queue(dev);
-@@ -981,8 +996,19 @@
+ return 0;
+@@ -981,8 +1000,19 @@
netif_stop_queue(dev);
napi_disable(&bp->napi);