Commit e18c56b2 authored by Mintz Yuval's avatar Mintz Yuval Committed by David S. Miller

bnx2x: half duplex support added for several boards

From: Yaniv Rosner <yaniv.rosner@broadcom.com>

Several boards require an additional HW bit written in-order to enable
half duplex.
Signed-off-by: default avatarYaniv Rosner <yaniv.rosner@broadcom.com>
Signed-off-by: default avatarEilon Greenstein <eilong@broadcom.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1355b704
...@@ -1612,6 +1612,9 @@ static void bnx2x_umac_enable(struct link_params *params, ...@@ -1612,6 +1612,9 @@ static void bnx2x_umac_enable(struct link_params *params,
if (!(vars->flow_ctrl & BNX2X_FLOW_CTRL_RX)) if (!(vars->flow_ctrl & BNX2X_FLOW_CTRL_RX))
val |= UMAC_COMMAND_CONFIG_REG_PAUSE_IGNORE; val |= UMAC_COMMAND_CONFIG_REG_PAUSE_IGNORE;
if (vars->duplex == DUPLEX_HALF)
val |= UMAC_COMMAND_CONFIG_REG_HD_ENA;
REG_WR(bp, umac_base + UMAC_REG_COMMAND_CONFIG, val); REG_WR(bp, umac_base + UMAC_REG_COMMAND_CONFIG, val);
udelay(50); udelay(50);
......
...@@ -4812,6 +4812,7 @@ ...@@ -4812,6 +4812,7 @@
The fields are: [4:0] - tail pointer; 10:5] - Link List size; 15:11] - The fields are: [4:0] - tail pointer; 10:5] - Link List size; 15:11] -
header pointer. */ header pointer. */
#define UCM_REG_XX_TABLE 0xe0300 #define UCM_REG_XX_TABLE 0xe0300
#define UMAC_COMMAND_CONFIG_REG_HD_ENA (0x1<<10)
#define UMAC_COMMAND_CONFIG_REG_IGNORE_TX_PAUSE (0x1<<28) #define UMAC_COMMAND_CONFIG_REG_IGNORE_TX_PAUSE (0x1<<28)
#define UMAC_COMMAND_CONFIG_REG_LOOP_ENA (0x1<<15) #define UMAC_COMMAND_CONFIG_REG_LOOP_ENA (0x1<<15)
#define UMAC_COMMAND_CONFIG_REG_NO_LGTH_CHECK (0x1<<24) #define UMAC_COMMAND_CONFIG_REG_NO_LGTH_CHECK (0x1<<24)
......
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