aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bnx2.h
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2009-06-08 21:14:42 -0400
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2009-06-09 11:22:38 -0400
commit4edd473f208cff77ce1f7ef26d5a41f31fa198e0 (patch)
tree3ae81d17069288b068d91ba9f2e329c1e5872fea /drivers/net/bnx2.h
parent43514774ff40c4fbe0cbbd3d8293a359f1a9fe71 (diff)
[SCSI] bnx2: Add support for CNIC driver.
Add interface and functions to support a new CNIC driver to drive the Broadcom bnx2 hardware for iSCSI offload. Signed-off-by: Michael Chan <mchan@broadcom.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/net/bnx2.h')
-rw-r--r--drivers/net/bnx2.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h
index 5b570e17c839..a1ff739bc9b5 100644
--- a/drivers/net/bnx2.h
+++ b/drivers/net/bnx2.h
@@ -361,6 +361,9 @@ struct l2_fhdr {
361#define BNX2_L2CTX_CTX_TYPE_CTX_BD_CHN_TYPE_VALUE (1<<28) 361#define BNX2_L2CTX_CTX_TYPE_CTX_BD_CHN_TYPE_VALUE (1<<28)
362 362
363#define BNX2_L2CTX_HOST_BDIDX 0x00000004 363#define BNX2_L2CTX_HOST_BDIDX 0x00000004
364#define BNX2_L2CTX_STATUSB_NUM_SHIFT 16
365#define BNX2_L2CTX_STATUSB_NUM(sb_id) \
366 (((sb_id) > 0) ? (((sb_id) + 7) << BNX2_L2CTX_STATUSB_NUM_SHIFT) : 0)
364#define BNX2_L2CTX_HOST_BSEQ 0x00000008 367#define BNX2_L2CTX_HOST_BSEQ 0x00000008
365#define BNX2_L2CTX_NX_BSEQ 0x0000000c 368#define BNX2_L2CTX_NX_BSEQ 0x0000000c
366#define BNX2_L2CTX_NX_BDHADDR_HI 0x00000010 369#define BNX2_L2CTX_NX_BDHADDR_HI 0x00000010
@@ -5900,6 +5903,7 @@ struct l2_fhdr {
5900#define BNX2_RXP_FTQ_CTL_CUR_DEPTH (0x3ffL<<22) 5903#define BNX2_RXP_FTQ_CTL_CUR_DEPTH (0x3ffL<<22)
5901 5904
5902#define BNX2_RXP_SCRATCH 0x000e0000 5905#define BNX2_RXP_SCRATCH 0x000e0000
5906#define BNX2_RXP_SCRATCH_RXP_FLOOD 0x000e0024
5903#define BNX2_RXP_SCRATCH_RSS_TBL_SZ 0x000e0038 5907#define BNX2_RXP_SCRATCH_RSS_TBL_SZ 0x000e0038
5904#define BNX2_RXP_SCRATCH_RSS_TBL 0x000e003c 5908#define BNX2_RXP_SCRATCH_RSS_TBL 0x000e003c
5905#define BNX2_RXP_SCRATCH_RSS_TBL_MAX_ENTRIES 128 5909#define BNX2_RXP_SCRATCH_RSS_TBL_MAX_ENTRIES 128
@@ -6678,6 +6682,11 @@ struct bnx2_napi {
6678 u32 last_status_idx; 6682 u32 last_status_idx;
6679 u32 int_num; 6683 u32 int_num;
6680 6684
6685#ifdef BCM_CNIC
6686 u32 cnic_tag;
6687 int cnic_present;
6688#endif
6689
6681 struct bnx2_rx_ring_info rx_ring; 6690 struct bnx2_rx_ring_info rx_ring;
6682 struct bnx2_tx_ring_info tx_ring; 6691 struct bnx2_tx_ring_info tx_ring;
6683}; 6692};
@@ -6727,6 +6736,11 @@ struct bnx2 {
6727 int tx_ring_size; 6736 int tx_ring_size;
6728 u32 tx_wake_thresh; 6737 u32 tx_wake_thresh;
6729 6738
6739#ifdef BCM_CNIC
6740 struct cnic_ops *cnic_ops;
6741 void *cnic_data;
6742#endif
6743
6730 /* End of fields used in the performance code paths. */ 6744 /* End of fields used in the performance code paths. */
6731 6745
6732 unsigned int current_interval; 6746 unsigned int current_interval;
@@ -6885,6 +6899,10 @@ struct bnx2 {
6885 6899
6886 u32 idle_chk_status_idx; 6900 u32 idle_chk_status_idx;
6887 6901
6902#ifdef BCM_CNIC
6903 struct cnic_eth_dev cnic_eth_dev;
6904#endif
6905
6888 const struct firmware *mips_firmware; 6906 const struct firmware *mips_firmware;
6889 const struct firmware *rv2p_firmware; 6907 const struct firmware *rv2p_firmware;
6890}; 6908};