summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet
diff options
context:
space:
mode:
authorFrançois Cachereul <f.cachereul@alphalink.fr>2014-06-12 12:11:25 +0200
committerDavid S. Miller <davem@davemloft.net>2014-06-12 19:31:10 +0200
commit179584388d7286190dfd9d2a248e25e1ffdfd472 (patch)
treef3af89abee1feb269df6d92ad222ce0caa0f3307 /drivers/net/ethernet
parentMerge branch 'bnx2x' (diff)
downloadlinux-179584388d7286190dfd9d2a248e25e1ffdfd472.tar.xz
linux-179584388d7286190dfd9d2a248e25e1ffdfd472.zip
via-rhine: fix full-duplex with autoneg disable
With some specific configuration (VT6105M on Soekris 5510 and depending on the device at the other end), fragmented packets were not transmitted when forcing 100 full-duplex with autoneg disable. This fix now write full-duplex chips register when forcing full or half-duplex not only when autoneg is enable. Signed-off-by: François Cachereul <f.cachereul@alphalink.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r--drivers/net/ethernet/via/via-rhine.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/via/via-rhine.c b/drivers/net/ethernet/via/via-rhine.c
index 981be0154be3..2d72f96a9e2c 100644
--- a/drivers/net/ethernet/via/via-rhine.c
+++ b/drivers/net/ethernet/via/via-rhine.c
@@ -1349,8 +1349,9 @@ static void rhine_set_carrier(struct mii_if_info *mii)
/* autoneg is off: Link is always assumed to be up */
if (!netif_carrier_ok(dev))
netif_carrier_on(dev);
- } else /* Let MMI library update carrier status */
- rhine_check_media(dev, 0);
+ }
+
+ rhine_check_media(dev, 0);
netif_info(rp, link, dev, "force_media %d, carrier %d\n",
mii->force_media, netif_carrier_ok(dev));