aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/broadcom
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2013-04-07 18:37:01 -0400
committerDavid S. Miller <davem@davemloft.net>2013-04-07 18:37:01 -0400
commitd978a6361ad13f1f9694fcb7b5852d253a544d92 (patch)
tree8e8a8c62286fab2c044c4b53563222c1b66d7cb0 /drivers/net/ethernet/broadcom
parent8303e699f7089a1cd1421750fb33f289e5f3e1b9 (diff)
parentcb28ea3b13b86fb23448525f34720e659bda7aa8 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/nfc/microread/mei.c net/netfilter/nfnetlink_queue_core.c Pull in 'net' to get Eric Biederman's AF_UNIX fix, upon which some cleanups are going to go on-top. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom')
-rw-r--r--drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
index 6cc6c6374a92..40f58d73de78 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c
@@ -13481,13 +13481,7 @@ static void bnx2x_check_kr2_wa(struct link_params *params,
13481{ 13481{
13482 struct bnx2x *bp = params->bp; 13482 struct bnx2x *bp = params->bp;
13483 u16 base_page, next_page, not_kr2_device, lane; 13483 u16 base_page, next_page, not_kr2_device, lane;
13484 int sigdet = bnx2x_warpcore_get_sigdet(phy, params); 13484 int sigdet;
13485
13486 if (!sigdet) {
13487 if (!(vars->link_attr_sync & LINK_ATTR_SYNC_KR2_ENABLE))
13488 bnx2x_kr2_recovery(params, vars, phy);
13489 return;
13490 }
13491 13485
13492 /* Once KR2 was disabled, wait 5 seconds before checking KR2 recovery 13486 /* Once KR2 was disabled, wait 5 seconds before checking KR2 recovery
13493 * Since some switches tend to reinit the AN process and clear the 13487 * Since some switches tend to reinit the AN process and clear the
@@ -13498,6 +13492,16 @@ static void bnx2x_check_kr2_wa(struct link_params *params,
13498 vars->check_kr2_recovery_cnt--; 13492 vars->check_kr2_recovery_cnt--;
13499 return; 13493 return;
13500 } 13494 }
13495
13496 sigdet = bnx2x_warpcore_get_sigdet(phy, params);
13497 if (!sigdet) {
13498 if (!(vars->link_attr_sync & LINK_ATTR_SYNC_KR2_ENABLE)) {
13499 bnx2x_kr2_recovery(params, vars, phy);
13500 DP(NETIF_MSG_LINK, "No sigdet\n");
13501 }
13502 return;
13503 }
13504
13501 lane = bnx2x_get_warpcore_lane(phy, params); 13505 lane = bnx2x_get_warpcore_lane(phy, params);
13502 CL22_WR_OVER_CL45(bp, phy, MDIO_REG_BANK_AER_BLOCK, 13506 CL22_WR_OVER_CL45(bp, phy, MDIO_REG_BANK_AER_BLOCK,
13503 MDIO_AER_BLOCK_AER_REG, lane); 13507 MDIO_AER_BLOCK_AER_REG, lane);