diff options
author | Eilon Greenstein <eilong@broadcom.com> | 2009-01-14 01:44:21 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-01-19 19:20:12 -0500 |
commit | 44722d1d216c9dd4536de5f88fe8320b07e68a96 (patch) | |
tree | d3b277c2e3481cd9c9417758625681ebf17d654b /drivers/net/bnx2x_link.c | |
parent | 3858276b7198074bf3570470463808627f0c9e31 (diff) |
bnx2x: Legacy speeds autoneg failures
10M/100M autoneg was not establishing link.
Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2x_link.c')
-rw-r--r-- | drivers/net/bnx2x_link.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/bnx2x_link.c b/drivers/net/bnx2x_link.c index 4ce107c125d1..2fd6be0cca13 100644 --- a/drivers/net/bnx2x_link.c +++ b/drivers/net/bnx2x_link.c | |||
@@ -3882,9 +3882,15 @@ static u8 bnx2x_link_initialize(struct link_params *params, | |||
3882 | } | 3882 | } |
3883 | 3883 | ||
3884 | if (vars->phy_flags & PHY_XGXS_FLAG) { | 3884 | if (vars->phy_flags & PHY_XGXS_FLAG) { |
3885 | if (params->req_line_speed && | 3885 | if ((params->req_line_speed && |
3886 | ((params->req_line_speed == SPEED_100) || | 3886 | ((params->req_line_speed == SPEED_100) || |
3887 | (params->req_line_speed == SPEED_10))) { | 3887 | (params->req_line_speed == SPEED_10))) || |
3888 | (!params->req_line_speed && | ||
3889 | (params->speed_cap_mask >= | ||
3890 | PORT_HW_CFG_SPEED_CAPABILITY_D0_10M_FULL) && | ||
3891 | (params->speed_cap_mask < | ||
3892 | PORT_HW_CFG_SPEED_CAPABILITY_D0_1G) | ||
3893 | )) { | ||
3888 | vars->phy_flags |= PHY_SGMII_FLAG; | 3894 | vars->phy_flags |= PHY_SGMII_FLAG; |
3889 | } else { | 3895 | } else { |
3890 | vars->phy_flags &= ~PHY_SGMII_FLAG; | 3896 | vars->phy_flags &= ~PHY_SGMII_FLAG; |