summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2006-12-18 02:06:46 +0100
committerDavid S. Miller <davem@sunset.davemloft.net>2006-12-18 06:59:19 +0100
commit24fcad6b3ca3bdbbb4614de3edc1ff16f594ba9a (patch)
tree1c1c7e830472218da1f5a8f40d2acfea06601c95
parent[NETFILTER] IPV6: Fix dependencies. (diff)
downloadlinux-24fcad6b3ca3bdbbb4614de3edc1ff16f594ba9a.tar.xz
linux-24fcad6b3ca3bdbbb4614de3edc1ff16f594ba9a.zip
[TG3]: Assign tp->link_config.orig_* values.
tp->link_config.orig_* values must be assigned during tg3_set_settings() because these values will be used to setup the link speed during tg3_open(). Without these assignments, the link speed settings will be all messed by if tg3_set_settings() is called when the device is down. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/tg3.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
index 23bad21b5c87..e47a9c1f35cb 100644
--- a/drivers/net/tg3.c
+++ b/drivers/net/tg3.c
@@ -7974,6 +7974,10 @@ static int tg3_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
tp->link_config.duplex = cmd->duplex;
}
+ tp->link_config.orig_speed = tp->link_config.speed;
+ tp->link_config.orig_duplex = tp->link_config.duplex;
+ tp->link_config.orig_autoneg = tp->link_config.autoneg;
+
if (netif_running(dev))
tg3_setup_phy(tp, 1);