Commit f0fcd7a9 authored by Nithin Sujir's avatar Nithin Sujir Committed by David S. Miller

tg3: Fix flow control settings not propagated to hardware

In tg3_setup_copper_phy(), if autonegotiation is disabled, we need to
relink only if the speed or duplex does not match the configured
setting.  If flow control does not match, a relink is not necessary as
flow control is not a PHY setting.  Later on, we'll call
tg3_setup_flow_ctrl() to set up the MAC to the desired flow control
settings if we're in full duplex mode.
Signed-off-by: default avatarNithin Nayak Sujir <nsujir@broadcom.com>
Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1b866434
...@@ -4587,9 +4587,7 @@ static int tg3_setup_copper_phy(struct tg3 *tp, int force_reset) ...@@ -4587,9 +4587,7 @@ static int tg3_setup_copper_phy(struct tg3 *tp, int force_reset)
} else { } else {
if (!(bmcr & BMCR_ANENABLE) && if (!(bmcr & BMCR_ANENABLE) &&
tp->link_config.speed == current_speed && tp->link_config.speed == current_speed &&
tp->link_config.duplex == current_duplex && tp->link_config.duplex == current_duplex) {
tp->link_config.flowctrl ==
tp->link_config.active_flowctrl) {
current_link_up = 1; current_link_up = 1;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment