aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bnx2.h
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2008-06-19 19:43:17 -0400
committerDavid S. Miller <davem@davemloft.net>2008-06-19 19:43:17 -0400
commit5e9ad9e108883503fedfac3279ac101dce00bb56 (patch)
tree240d424599a9c384d382b56633b3bba4100aa97e /drivers/net/bnx2.h
parent2dffcc3dcd659b10ff97c6eda427d9d83a94a399 (diff)
bnx2: Turn on multi rx rings.
Enable multiple rx rings if MSI-X vectors are available. We enable up to 7 rx rings. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: Benjamin Li <benli@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2.h')
-rw-r--r--drivers/net/bnx2.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h
index 362bef6ff5ff..efa0ca9a8fd3 100644
--- a/drivers/net/bnx2.h
+++ b/drivers/net/bnx2.h
@@ -4158,6 +4158,23 @@ struct l2_fhdr {
4158 4158
4159 4159
4160/* 4160/*
4161 * rlup_reg definition
4162 * offset: 0x2000
4163 */
4164#define BNX2_RLUP_RSS_CONFIG 0x0000201c
4165#define BNX2_RLUP_RSS_CONFIG_IPV4_RSS_TYPE_XI (0x3L<<0)
4166#define BNX2_RLUP_RSS_CONFIG_IPV4_RSS_TYPE_OFF_XI (0L<<0)
4167#define BNX2_RLUP_RSS_CONFIG_IPV4_RSS_TYPE_ALL_XI (1L<<0)
4168#define BNX2_RLUP_RSS_CONFIG_IPV4_RSS_TYPE_IP_ONLY_XI (2L<<0)
4169#define BNX2_RLUP_RSS_CONFIG_IPV4_RSS_TYPE_RES_XI (3L<<0)
4170#define BNX2_RLUP_RSS_CONFIG_IPV6_RSS_TYPE_XI (0x3L<<2)
4171#define BNX2_RLUP_RSS_CONFIG_IPV6_RSS_TYPE_OFF_XI (0L<<2)
4172#define BNX2_RLUP_RSS_CONFIG_IPV6_RSS_TYPE_ALL_XI (1L<<2)
4173#define BNX2_RLUP_RSS_CONFIG_IPV6_RSS_TYPE_IP_ONLY_XI (2L<<2)
4174#define BNX2_RLUP_RSS_CONFIG_IPV6_RSS_TYPE_RES_XI (3L<<2)
4175
4176
4177/*
4161 * rbuf_reg definition 4178 * rbuf_reg definition
4162 * offset: 0x200000 4179 * offset: 0x200000
4163 */ 4180 */
@@ -5528,6 +5545,9 @@ struct l2_fhdr {
5528#define BNX2_HC_TX_QUICK_CONS_TRIP_OFF (BNX2_HC_TX_QUICK_CONS_TRIP_1 - \ 5545#define BNX2_HC_TX_QUICK_CONS_TRIP_OFF (BNX2_HC_TX_QUICK_CONS_TRIP_1 - \
5529 BNX2_HC_SB_CONFIG_1) 5546 BNX2_HC_SB_CONFIG_1)
5530#define BNX2_HC_TX_TICKS_OFF (BNX2_HC_TX_TICKS_1 - BNX2_HC_SB_CONFIG_1) 5547#define BNX2_HC_TX_TICKS_OFF (BNX2_HC_TX_TICKS_1 - BNX2_HC_SB_CONFIG_1)
5548#define BNX2_HC_RX_QUICK_CONS_TRIP_OFF (BNX2_HC_RX_QUICK_CONS_TRIP_1 - \
5549 BNX2_HC_SB_CONFIG_1)
5550#define BNX2_HC_RX_TICKS_OFF (BNX2_HC_RX_TICKS_1 - BNX2_HC_SB_CONFIG_1)
5531 5551
5532 5552
5533/* 5553/*
@@ -5856,6 +5876,9 @@ struct l2_fhdr {
5856#define BNX2_RXP_FTQ_CTL_CUR_DEPTH (0x3ffL<<22) 5876#define BNX2_RXP_FTQ_CTL_CUR_DEPTH (0x3ffL<<22)
5857 5877
5858#define BNX2_RXP_SCRATCH 0x000e0000 5878#define BNX2_RXP_SCRATCH 0x000e0000
5879#define BNX2_RXP_SCRATCH_RSS_TBL_SZ 0x000e0038
5880#define BNX2_RXP_SCRATCH_RSS_TBL 0x000e003c
5881#define BNX2_RXP_SCRATCH_RSS_TBL_MAX_ENTRIES 128
5859 5882
5860 5883
5861/* 5884/*
@@ -6480,6 +6503,7 @@ struct l2_fhdr {
6480#define TX_TSS_CID 32 6503#define TX_TSS_CID 32
6481#define RX_CID 0 6504#define RX_CID 0
6482#define RX_RSS_CID 4 6505#define RX_RSS_CID 4
6506#define RX_MAX_RSS_RINGS 7
6483 6507
6484#define MB_TX_CID_ADDR MB_GET_CID_ADDR(TX_CID) 6508#define MB_TX_CID_ADDR MB_GET_CID_ADDR(TX_CID)
6485#define MB_RX_CID_ADDR MB_GET_CID_ADDR(RX_CID) 6509#define MB_RX_CID_ADDR MB_GET_CID_ADDR(RX_CID)
@@ -6558,7 +6582,7 @@ struct flash_spec {
6558}; 6582};
6559 6583
6560#define BNX2_MAX_MSIX_HW_VEC 9 6584#define BNX2_MAX_MSIX_HW_VEC 9
6561#define BNX2_MAX_MSIX_VEC 2 6585#define BNX2_MAX_MSIX_VEC 9
6562#define BNX2_BASE_VEC 0 6586#define BNX2_BASE_VEC 0
6563#define BNX2_TX_VEC 1 6587#define BNX2_TX_VEC 1
6564#define BNX2_TX_INT_NUM (BNX2_TX_VEC << BNX2_PCICFG_INT_ACK_CMD_INT_NUM_SHIFT) 6588#define BNX2_TX_INT_NUM (BNX2_TX_VEC << BNX2_PCICFG_INT_ACK_CMD_INT_NUM_SHIFT)