diff options
author | Yaniv Rosner <yanivr@broadcom.com> | 2011-08-03 02:59:10 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-08-03 14:22:17 +0400 |
commit | 9d5b36be64b42058e7fd12b71266bbf2bb7600fc (patch) | |
tree | 61b7fd9e56a738cd18b42dc6980053012c813a64 /drivers/net/bnx2x/bnx2x_link.c | |
parent | c28aa38567101bad4e020f4392df41d0bf6c165c (diff) | |
download | linux-9d5b36be64b42058e7fd12b71266bbf2bb7600fc.tar.xz |
bnx2x: Fix missing pause on for 578xx
When link speed is 1G and below, pause weren't sent due to missing pause setting in the UMAC.
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/bnx2x_link.c')
-rw-r--r-- | drivers/net/bnx2x/bnx2x_link.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/bnx2x/bnx2x_link.c b/drivers/net/bnx2x/bnx2x_link.c index bcd8f0038628..aa9958e37445 100644 --- a/drivers/net/bnx2x/bnx2x_link.c +++ b/drivers/net/bnx2x/bnx2x_link.c @@ -1546,6 +1546,12 @@ static void bnx2x_umac_enable(struct link_params *params, vars->line_speed); break; } + if (!(vars->flow_ctrl & BNX2X_FLOW_CTRL_TX)) + val |= UMAC_COMMAND_CONFIG_REG_IGNORE_TX_PAUSE; + + if (!(vars->flow_ctrl & BNX2X_FLOW_CTRL_RX)) + val |= UMAC_COMMAND_CONFIG_REG_PAUSE_IGNORE; + REG_WR(bp, umac_base + UMAC_REG_COMMAND_CONFIG, val); udelay(50); |