Skip to content

Commit 7d323bf

Browse files
Eilon Greensteindavem330
authored andcommitted
bnx2x: Change coalescing granularity to 4us
Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 91545f6 commit 7d323bf

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

drivers/net/bnx2x.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1191,7 +1191,7 @@ static inline u32 reg_poll(struct bnx2x *bp, u32 reg, u32 expected, int ms,
11911191
#define MAX_SP_DESC_CNT (SP_DESC_CNT - 1)
11921192

11931193

1194-
#define BNX2X_BTR 3
1194+
#define BNX2X_BTR 1
11951195
#define MAX_SPQ_PENDING 8
11961196

11971197

drivers/net/bnx2x_main.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4928,21 +4928,21 @@ static void bnx2x_update_coalesce(struct bnx2x *bp)
49284928
REG_WR8(bp, BAR_CSTRORM_INTMEM +
49294929
CSTORM_SB_HC_TIMEOUT_U_OFFSET(port, sb_id,
49304930
U_SB_ETH_RX_CQ_INDEX),
4931-
bp->rx_ticks/12);
4931+
bp->rx_ticks/(4 * BNX2X_BTR));
49324932
REG_WR16(bp, BAR_CSTRORM_INTMEM +
49334933
CSTORM_SB_HC_DISABLE_U_OFFSET(port, sb_id,
49344934
U_SB_ETH_RX_CQ_INDEX),
4935-
(bp->rx_ticks/12) ? 0 : 1);
4935+
(bp->rx_ticks/(4 * BNX2X_BTR)) ? 0 : 1);
49364936

49374937
/* HC_INDEX_C_ETH_TX_CQ_CONS */
49384938
REG_WR8(bp, BAR_CSTRORM_INTMEM +
49394939
CSTORM_SB_HC_TIMEOUT_C_OFFSET(port, sb_id,
49404940
C_SB_ETH_TX_CQ_INDEX),
4941-
bp->tx_ticks/12);
4941+
bp->tx_ticks/(4 * BNX2X_BTR));
49424942
REG_WR16(bp, BAR_CSTRORM_INTMEM +
49434943
CSTORM_SB_HC_DISABLE_C_OFFSET(port, sb_id,
49444944
C_SB_ETH_TX_CQ_INDEX),
4945-
(bp->tx_ticks/12) ? 0 : 1);
4945+
(bp->tx_ticks/(4 * BNX2X_BTR)) ? 0 : 1);
49464946
}
49474947
}
49484948

@@ -9016,8 +9016,9 @@ static int __devinit bnx2x_init_bp(struct bnx2x *bp)
90169016

90179017
bp->rx_csum = 1;
90189018

9019-
bp->tx_ticks = 50;
9020-
bp->rx_ticks = 25;
9019+
/* make sure that the numbers are in the right granularity */
9020+
bp->tx_ticks = (50 / (4 * BNX2X_BTR)) * (4 * BNX2X_BTR);
9021+
bp->rx_ticks = (25 / (4 * BNX2X_BTR)) * (4 * BNX2X_BTR);
90219022

90229023
timer_interval = (CHIP_REV_IS_SLOW(bp) ? 5*HZ : HZ);
90239024
bp->current_interval = (poll ? poll : timer_interval);

0 commit comments

Comments
 (0)