#ifndef __ECORE_HSI_FCOE__
#define __ECORE_HSI_FCOE__
#include "storage_common.h"
#include "fcoe_common.h"
struct ystorm_fcoe_conn_st_ctx
{
u8 func_mode ;
u8 cos ;
u8 conf_version ;
u8 eth_hdr_size ;
__le16 stat_ram_addr ;
__le16 mtu ;
__le16 max_fc_payload_len ;
__le16 tx_max_fc_pay_len ;
u8 fcp_cmd_size ;
u8 fcp_rsp_size ;
__le16 mss ;
struct regpair reserved;
__le16 min_frame_size ;
u8 protection_info_flags;
#define YSTORM_FCOE_CONN_ST_CTX_SUPPORT_PROTECTION_MASK 0x1
#define YSTORM_FCOE_CONN_ST_CTX_SUPPORT_PROTECTION_SHIFT 0
#define YSTORM_FCOE_CONN_ST_CTX_VALID_MASK 0x1
#define YSTORM_FCOE_CONN_ST_CTX_VALID_SHIFT 1
#define YSTORM_FCOE_CONN_ST_CTX_RESERVED1_MASK 0x3F
#define YSTORM_FCOE_CONN_ST_CTX_RESERVED1_SHIFT 2
u8 dst_protection_per_mss ;
u8 src_protection_per_mss ;
u8 ptu_log_page_size ;
u8 flags;
#define YSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_MASK 0x1
#define YSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_SHIFT 0
#define YSTORM_FCOE_CONN_ST_CTX_OUTER_VLAN_FLAG_MASK 0x1
#define YSTORM_FCOE_CONN_ST_CTX_OUTER_VLAN_FLAG_SHIFT 1
#define YSTORM_FCOE_CONN_ST_CTX_RSRV_MASK 0x3F
#define YSTORM_FCOE_CONN_ST_CTX_RSRV_SHIFT 2
u8 fcp_xfer_size ;
};
struct fcoe_vlan_fields
{
__le16 fields;
#define FCOE_VLAN_FIELDS_VID_MASK 0xFFF
#define FCOE_VLAN_FIELDS_VID_SHIFT 0
#define FCOE_VLAN_FIELDS_CLI_MASK 0x1
#define FCOE_VLAN_FIELDS_CLI_SHIFT 12
#define FCOE_VLAN_FIELDS_PRI_MASK 0x7
#define FCOE_VLAN_FIELDS_PRI_SHIFT 13
};
union fcoe_vlan_field_union
{
struct fcoe_vlan_fields fields ;
__le16 val ;
};
union fcoe_vlan_vif_field_union
{
union fcoe_vlan_field_union vlan ;
__le16 vif ;
};
struct pstorm_fcoe_eth_context_section
{
u8 remote_addr_3 ;
u8 remote_addr_2 ;
u8 remote_addr_1 ;
u8 remote_addr_0 ;
u8 local_addr_1 ;
u8 local_addr_0 ;
u8 remote_addr_5 ;
u8 remote_addr_4 ;
u8 local_addr_5 ;
u8 local_addr_4 ;
u8 local_addr_3 ;
u8 local_addr_2 ;
union fcoe_vlan_vif_field_union vif_outer_vlan ;
__le16 vif_outer_eth_type ;
union fcoe_vlan_vif_field_union inner_vlan ;
__le16 inner_eth_type ;
};
struct pstorm_fcoe_conn_st_ctx
{
u8 func_mode ;
u8 cos ;
u8 conf_version ;
u8 rsrv;
__le16 stat_ram_addr ;
__le16 mss ;
struct regpair abts_cleanup_addr ;
struct pstorm_fcoe_eth_context_section eth ;
u8 sid_2 ;
u8 sid_1 ;
u8 sid_0 ;
u8 flags;
#define PSTORM_FCOE_CONN_ST_CTX_VNTAG_VLAN_MASK 0x1
#define PSTORM_FCOE_CONN_ST_CTX_VNTAG_VLAN_SHIFT 0
#define PSTORM_FCOE_CONN_ST_CTX_SUPPORT_REC_RR_TOV_MASK 0x1
#define PSTORM_FCOE_CONN_ST_CTX_SUPPORT_REC_RR_TOV_SHIFT 1
#define PSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_MASK 0x1
#define PSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_SHIFT 2
#define PSTORM_FCOE_CONN_ST_CTX_OUTER_VLAN_FLAG_MASK 0x1
#define PSTORM_FCOE_CONN_ST_CTX_OUTER_VLAN_FLAG_SHIFT 3
#define PSTORM_FCOE_CONN_ST_CTX_RESERVED_MASK 0xF
#define PSTORM_FCOE_CONN_ST_CTX_RESERVED_SHIFT 4
u8 did_2 ;
u8 did_1 ;
u8 did_0 ;
u8 src_mac_index;
__le16 rec_rr_tov_val ;
u8 q_relative_offset ;
u8 reserved1;
};
struct xstorm_fcoe_conn_st_ctx
{
u8 func_mode ;
u8 src_mac_index ;
u8 conf_version ;
u8 cached_wqes_avail ;
__le16 stat_ram_addr ;
u8 flags;
#define XSTORM_FCOE_CONN_ST_CTX_SQ_DEFERRED_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_SQ_DEFERRED_SHIFT 0
#define XSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_SHIFT 1
#define XSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_ORIG_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_INNER_VLAN_FLAG_ORIG_SHIFT 2
#define XSTORM_FCOE_CONN_ST_CTX_LAST_QUEUE_HANDLED_MASK 0x3
#define XSTORM_FCOE_CONN_ST_CTX_LAST_QUEUE_HANDLED_SHIFT 3
#define XSTORM_FCOE_CONN_ST_CTX_RSRV_MASK 0x7
#define XSTORM_FCOE_CONN_ST_CTX_RSRV_SHIFT 5
u8 cached_wqes_offset ;
u8 reserved2;
u8 eth_hdr_size ;
u8 seq_id ;
u8 max_conc_seqs ;
__le16 num_pages_in_pbl ;
__le16 reserved;
struct regpair sq_pbl_addr ;
struct regpair sq_curr_page_addr ;
struct regpair sq_next_page_addr ;
struct regpair xferq_pbl_addr ;
struct regpair xferq_curr_page_addr ;
struct regpair xferq_next_page_addr ;
struct regpair respq_pbl_addr ;
struct regpair respq_curr_page_addr ;
struct regpair respq_next_page_addr ;
__le16 mtu ;
__le16 tx_max_fc_pay_len ;
__le16 max_fc_payload_len ;
__le16 min_frame_size ;
__le16 sq_pbl_next_index ;
__le16 respq_pbl_next_index ;
u8 fcp_cmd_byte_credit ;
u8 fcp_rsp_byte_credit ;
__le16 protection_info;
#define XSTORM_FCOE_CONN_ST_CTX_PROTECTION_PERF_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_PROTECTION_PERF_SHIFT 0
#define XSTORM_FCOE_CONN_ST_CTX_SUPPORT_PROTECTION_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_SUPPORT_PROTECTION_SHIFT 1
#define XSTORM_FCOE_CONN_ST_CTX_VALID_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_VALID_SHIFT 2
#define XSTORM_FCOE_CONN_ST_CTX_FRAME_PROT_ALIGNED_MASK 0x1
#define XSTORM_FCOE_CONN_ST_CTX_FRAME_PROT_ALIGNED_SHIFT 3
#define XSTORM_FCOE_CONN_ST_CTX_RESERVED3_MASK 0xF
#define XSTORM_FCOE_CONN_ST_CTX_RESERVED3_SHIFT 4
#define XSTORM_FCOE_CONN_ST_CTX_DST_PROTECTION_PER_MSS_MASK 0xFF
#define XSTORM_FCOE_CONN_ST_CTX_DST_PROTECTION_PER_MSS_SHIFT 8
__le16 xferq_pbl_next_index ;
__le16 page_size ;
u8 mid_seq ;
u8 fcp_xfer_byte_credit ;
u8 reserved1[2];
struct fcoe_wqe cached_wqes[16] ;
};
struct e4_xstorm_fcoe_conn_ag_ctx
{
u8 reserved0 ;
u8 fcoe_state ;
u8 flags0;
#define E4_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED1_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED1_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED2_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED2_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM3_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM3_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED3_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED3_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED4_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED4_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED5_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED5_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED6_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED6_SHIFT 7
u8 flags1;
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED7_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED7_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED8_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED8_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED9_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED9_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT11_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT11_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT12_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT12_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT13_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT13_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT14_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT14_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT15_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT15_SHIFT 7
u8 flags2;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF3_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF3_SHIFT 6
u8 flags3;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF4_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF4_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF5_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF5_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF6_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF6_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF7_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF7_SHIFT 6
u8 flags4;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF8_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF8_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF9_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF9_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF10_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF10_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF11_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF11_SHIFT 6
u8 flags5;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF12_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF12_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF13_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF13_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF14_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF14_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF15_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF15_SHIFT 6
u8 flags6;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF16_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF16_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF17_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF17_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF18_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF18_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_SHIFT 6
u8 flags7;
#define E4_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED10_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED10_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 7
u8 flags8;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF3EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF3EN_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF4EN_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF5EN_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF6EN_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF7EN_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF8EN_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF9EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF9EN_SHIFT 7
u8 flags9;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF10EN_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF11EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF11EN_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF12EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF12EN_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF13EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF13EN_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF14EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF14EN_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF15EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF15EN_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF16EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF16EN_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF17EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF17EN_SHIFT 7
u8 flags10;
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF18EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF18EN_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_EN_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED11_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED11_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_EN_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF23EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF23EN_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED12_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED12_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED13_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED13_SHIFT 7
u8 flags11;
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED14_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED14_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED15_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED15_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED16_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESERVED16_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE5EN_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE6EN_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE7EN_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED1_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED1_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_XFERQ_DECISION_EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_XFERQ_DECISION_EN_SHIFT 7
u8 flags12;
#define E4_XSTORM_FCOE_CONN_AG_CTX_SQ_DECISION_EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_SQ_DECISION_EN_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE11EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE11EN_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED2_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED2_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED3_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED3_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE14EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE14EN_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE15EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE15EN_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE16EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE16EN_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE17EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE17EN_SHIFT 7
u8 flags13;
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESPQ_DECISION_EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RESPQ_DECISION_EN_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE19EN_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_RULE19EN_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED4_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED4_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED5_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED5_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED6_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED6_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED7_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED7_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED8_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED8_SHIFT 6
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED9_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED9_SHIFT 7
u8 flags14;
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT16_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT16_SHIFT 0
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT17_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT17_SHIFT 1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT18_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT18_SHIFT 2
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT19_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT19_SHIFT 3
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT20_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT20_SHIFT 4
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT21_MASK 0x1
#define E4_XSTORM_FCOE_CONN_AG_CTX_BIT21_SHIFT 5
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF23_MASK 0x3
#define E4_XSTORM_FCOE_CONN_AG_CTX_CF23_SHIFT 6
u8 byte2 ;
__le16 physical_q0 ;
__le16 word1 ;
__le16 word2 ;
__le16 sq_cons ;
__le16 sq_prod ;
__le16 xferq_prod ;
__le16 xferq_cons ;
u8 byte3 ;
u8 byte4 ;
u8 byte5 ;
u8 byte6 ;
__le32 remain_io ;
__le32 reg1 ;
__le32 reg2 ;
__le32 reg3 ;
__le32 reg4 ;
__le32 reg5 ;
__le32 reg6 ;
__le16 respq_prod ;
__le16 respq_cons ;
__le16 word9 ;
__le16 word10 ;
__le32 reg7 ;
__le32 reg8 ;
};
struct ustorm_fcoe_conn_st_ctx
{
struct regpair respq_pbl_addr ;
__le16 num_pages_in_pbl ;
u8 ptu_log_page_size ;
u8 log_page_size;
__le16 respq_prod ;
u8 reserved[2];
};
struct e4_tstorm_fcoe_conn_ag_ctx
{
u8 reserved0 ;
u8 fcoe_state ;
u8 flags0;
#define E4_TSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT2_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT2_SHIFT 2
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT3_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT3_SHIFT 3
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT4_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT4_SHIFT 4
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT5_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_BIT5_SHIFT 5
#define E4_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_SHIFT 6
u8 flags1;
#define E4_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_SHIFT 0
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 2
#define E4_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_SHIFT 4
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF4_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF4_SHIFT 6
u8 flags2;
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF5_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF5_SHIFT 0
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF6_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF6_SHIFT 2
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF7_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF7_SHIFT 4
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF8_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF8_SHIFT 6
u8 flags3;
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF9_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF9_SHIFT 0
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF10_MASK 0x3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF10_SHIFT 2
#define E4_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_EN_SHIFT 4
#define E4_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_EN_SHIFT 5
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 6
#define E4_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_EN_SHIFT 7
u8 flags4;
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF4EN_SHIFT 0
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF5EN_SHIFT 1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF6EN_SHIFT 2
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF7EN_SHIFT 3
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF8EN_SHIFT 4
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF9EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF9EN_SHIFT 5
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_CF10EN_SHIFT 6
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags5;
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E4_TSTORM_FCOE_CONN_AG_CTX_RULE8EN_SHIFT 7
__le32 reg0 ;
__le32 reg1 ;
};
struct e4_ustorm_fcoe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E4_USTORM_FCOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E4_USTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 2
#define E4_USTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 4
#define E4_USTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E4_USTORM_FCOE_CONN_AG_CTX_CF3_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF3_SHIFT 0
#define E4_USTORM_FCOE_CONN_AG_CTX_CF4_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF4_SHIFT 2
#define E4_USTORM_FCOE_CONN_AG_CTX_CF5_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF5_SHIFT 4
#define E4_USTORM_FCOE_CONN_AG_CTX_CF6_MASK 0x3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF6_SHIFT 6
u8 flags2;
#define E4_USTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E4_USTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E4_USTORM_FCOE_CONN_AG_CTX_CF3EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF3EN_SHIFT 3
#define E4_USTORM_FCOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF4EN_SHIFT 4
#define E4_USTORM_FCOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF5EN_SHIFT 5
#define E4_USTORM_FCOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_CF6EN_SHIFT 6
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags3;
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E4_USTORM_FCOE_CONN_AG_CTX_RULE8EN_SHIFT 7
u8 byte2 ;
u8 byte3 ;
__le16 word0 ;
__le16 word1 ;
__le32 reg0 ;
__le32 reg1 ;
__le32 reg2 ;
__le32 reg3 ;
__le16 word2 ;
__le16 word3 ;
};
struct tstorm_fcoe_conn_st_ctx
{
__le16 stat_ram_addr ;
__le16 rx_max_fc_payload_len ;
__le16 e_d_tov_val ;
u8 flags;
#define TSTORM_FCOE_CONN_ST_CTX_INC_SEQ_CNT_MASK 0x1
#define TSTORM_FCOE_CONN_ST_CTX_INC_SEQ_CNT_SHIFT 0
#define TSTORM_FCOE_CONN_ST_CTX_SUPPORT_CONF_MASK 0x1
#define TSTORM_FCOE_CONN_ST_CTX_SUPPORT_CONF_SHIFT 1
#define TSTORM_FCOE_CONN_ST_CTX_DEF_Q_IDX_MASK 0x3F
#define TSTORM_FCOE_CONN_ST_CTX_DEF_Q_IDX_SHIFT 2
u8 timers_cleanup_invocation_cnt ;
__le32 reserved1[2];
__le32 dstMacAddressBytes0To3 ;
__le16 dstMacAddressBytes4To5 ;
__le16 ramrodEcho ;
u8 flags1;
#define TSTORM_FCOE_CONN_ST_CTX_MODE_MASK 0x3
#define TSTORM_FCOE_CONN_ST_CTX_MODE_SHIFT 0
#define TSTORM_FCOE_CONN_ST_CTX_RESERVED_MASK 0x3F
#define TSTORM_FCOE_CONN_ST_CTX_RESERVED_SHIFT 2
u8 q_relative_offset ;
u8 bdq_resource_id ;
u8 reserved0[5] ;
};
struct e4_mstorm_fcoe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E4_MSTORM_FCOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E4_MSTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 2
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 4
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 3
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_MSTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 7
__le16 word0 ;
__le16 word1 ;
__le32 reg0 ;
__le32 reg1 ;
};
struct fcoe_mstorm_fcoe_conn_st_ctx_fp
{
__le16 xfer_prod ;
__le16 reserved1;
u8 protection_info;
#define FCOE_MSTORM_FCOE_CONN_ST_CTX_FP_SUPPORT_PROTECTION_MASK 0x1
#define FCOE_MSTORM_FCOE_CONN_ST_CTX_FP_SUPPORT_PROTECTION_SHIFT 0
#define FCOE_MSTORM_FCOE_CONN_ST_CTX_FP_VALID_MASK 0x1
#define FCOE_MSTORM_FCOE_CONN_ST_CTX_FP_VALID_SHIFT 1
#define FCOE_MSTORM_FCOE_CONN_ST_CTX_FP_RESERVED0_MASK 0x3F
#define FCOE_MSTORM_FCOE_CONN_ST_CTX_FP_RESERVED0_SHIFT 2
u8 q_relative_offset ;
u8 reserved2[2];
};
struct fcoe_mstorm_fcoe_conn_st_ctx_non_fp
{
__le16 conn_id ;
__le16 stat_ram_addr ;
__le16 num_pages_in_pbl ;
u8 ptu_log_page_size ;
u8 log_page_size;
__le16 unsolicited_cq_count ;
__le16 cmdq_count ;
u8 bdq_resource_id ;
u8 reserved0[3] ;
struct regpair xferq_pbl_addr ;
struct regpair reserved1;
struct regpair reserved2[3];
};
struct mstorm_fcoe_conn_st_ctx
{
struct fcoe_mstorm_fcoe_conn_st_ctx_fp fp ;
struct fcoe_mstorm_fcoe_conn_st_ctx_non_fp non_fp ;
};
struct fcoe_conn_context
{
struct ystorm_fcoe_conn_st_ctx ystorm_st_context ;
struct pstorm_fcoe_conn_st_ctx pstorm_st_context ;
struct regpair pstorm_st_padding[2] ;
struct xstorm_fcoe_conn_st_ctx xstorm_st_context ;
struct e4_xstorm_fcoe_conn_ag_ctx xstorm_ag_context ;
struct regpair xstorm_ag_padding[6] ;
struct ustorm_fcoe_conn_st_ctx ustorm_st_context ;
struct regpair ustorm_st_padding[2] ;
struct e4_tstorm_fcoe_conn_ag_ctx tstorm_ag_context ;
struct regpair tstorm_ag_padding[2] ;
struct timers_context timer_context ;
struct e4_ustorm_fcoe_conn_ag_ctx ustorm_ag_context ;
struct tstorm_fcoe_conn_st_ctx tstorm_st_context ;
struct e4_mstorm_fcoe_conn_ag_ctx mstorm_ag_context ;
struct mstorm_fcoe_conn_st_ctx mstorm_st_context ;
};
struct fcoe_conn_offload_ramrod_params
{
struct fcoe_conn_offload_ramrod_data offload_ramrod_data;
};
struct fcoe_conn_terminate_ramrod_params
{
struct fcoe_conn_terminate_ramrod_data terminate_ramrod_data;
};
enum fcoe_event_type
{
FCOE_EVENT_INIT_FUNC ,
FCOE_EVENT_DESTROY_FUNC ,
FCOE_EVENT_STAT_FUNC ,
FCOE_EVENT_OFFLOAD_CONN ,
FCOE_EVENT_TERMINATE_CONN ,
FCOE_EVENT_ERROR ,
MAX_FCOE_EVENT_TYPE
};
struct fcoe_init_ramrod_params
{
struct fcoe_init_func_ramrod_data init_ramrod_data;
};
enum fcoe_ramrod_cmd_id
{
FCOE_RAMROD_CMD_ID_INIT_FUNC ,
FCOE_RAMROD_CMD_ID_DESTROY_FUNC ,
FCOE_RAMROD_CMD_ID_STAT_FUNC ,
FCOE_RAMROD_CMD_ID_OFFLOAD_CONN ,
FCOE_RAMROD_CMD_ID_TERMINATE_CONN ,
MAX_FCOE_RAMROD_CMD_ID
};
struct fcoe_stat_ramrod_params
{
struct fcoe_stat_ramrod_data stat_ramrod_data;
};
struct e4_ystorm_fcoe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E4_YSTORM_FCOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E4_YSTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 2
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 4
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 3
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_YSTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 7
u8 byte2 ;
u8 byte3 ;
__le16 word0 ;
__le32 reg0 ;
__le32 reg1 ;
__le16 word1 ;
__le16 word2 ;
__le16 word3 ;
__le16 word4 ;
__le32 reg2 ;
__le32 reg3 ;
};
struct e5_mstorm_fcoe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E5_MSTORM_FCOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E5_MSTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 2
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 4
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 3
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_MSTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 7
__le16 word0 ;
__le16 word1 ;
__le32 reg0 ;
__le32 reg1 ;
};
struct e5_tstorm_fcoe_conn_ag_ctx
{
u8 reserved0 ;
u8 state_and_core_id ;
u8 flags0;
#define E5_TSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT2_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT2_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT3_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT3_SHIFT 3
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT4_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT4_SHIFT 4
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT5_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_BIT5_SHIFT 5
#define E5_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_SHIFT 6
u8 flags1;
#define E5_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_SHIFT 4
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF4_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF4_SHIFT 6
u8 flags2;
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF5_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF5_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF6_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF6_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF7_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF7_SHIFT 4
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF8_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF8_SHIFT 6
u8 flags3;
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF9_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF9_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF10_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF10_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_DUMMY_TIMER_CF_EN_SHIFT 4
#define E5_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_CF_EN_SHIFT 5
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 6
#define E5_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_TIMER_STOP_ALL_CF_EN_SHIFT 7
u8 flags4;
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF4EN_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF5EN_SHIFT 1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF6EN_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF7EN_SHIFT 3
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF8EN_SHIFT 4
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF9EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF9EN_SHIFT 5
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_CF10EN_SHIFT 6
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags5;
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_RULE8EN_SHIFT 7
u8 flags6;
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED1_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED1_SHIFT 0
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED2_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED2_SHIFT 1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED3_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED3_SHIFT 2
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED4_MASK 0x3
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED4_SHIFT 3
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED5_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED5_SHIFT 5
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED6_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED6_SHIFT 6
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED7_MASK 0x1
#define E5_TSTORM_FCOE_CONN_AG_CTX_E4_RESERVED7_SHIFT 7
u8 byte2 ;
__le16 word0 ;
__le32 reg0 ;
};
struct e5_ustorm_fcoe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E5_USTORM_FCOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E5_USTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 2
#define E5_USTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 4
#define E5_USTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E5_USTORM_FCOE_CONN_AG_CTX_CF3_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF3_SHIFT 0
#define E5_USTORM_FCOE_CONN_AG_CTX_CF4_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF4_SHIFT 2
#define E5_USTORM_FCOE_CONN_AG_CTX_CF5_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF5_SHIFT 4
#define E5_USTORM_FCOE_CONN_AG_CTX_CF6_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF6_SHIFT 6
u8 flags2;
#define E5_USTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E5_USTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E5_USTORM_FCOE_CONN_AG_CTX_CF3EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF3EN_SHIFT 3
#define E5_USTORM_FCOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF4EN_SHIFT 4
#define E5_USTORM_FCOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF5EN_SHIFT 5
#define E5_USTORM_FCOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_CF6EN_SHIFT 6
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags3;
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_RULE8EN_SHIFT 7
u8 flags4;
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED1_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED1_SHIFT 0
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED2_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED2_SHIFT 1
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED3_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED3_SHIFT 2
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED4_MASK 0x3
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED4_SHIFT 4
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED5_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED5_SHIFT 6
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED6_MASK 0x1
#define E5_USTORM_FCOE_CONN_AG_CTX_E4_RESERVED6_SHIFT 7
u8 byte2 ;
__le16 word0 ;
__le16 word1 ;
__le32 reg0 ;
__le32 reg1 ;
__le32 reg2 ;
__le32 reg3 ;
__le16 word2 ;
__le16 word3 ;
};
struct e5_xstorm_fcoe_conn_ag_ctx
{
u8 reserved0 ;
u8 state_and_core_id ;
u8 flags0;
#define E5_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED1_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED1_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED2_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED2_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM3_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_EXIST_IN_QM3_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED3_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED3_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED4_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED4_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED5_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED5_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED6_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED6_SHIFT 7
u8 flags1;
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED7_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED7_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED8_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED8_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED9_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED9_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT11_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT11_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT12_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT12_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT13_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT13_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT14_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT14_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT15_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT15_SHIFT 7
u8 flags2;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF3_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF3_SHIFT 6
u8 flags3;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF4_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF4_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF5_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF5_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF6_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF6_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF7_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF7_SHIFT 6
u8 flags4;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF8_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF8_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF9_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF9_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF10_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF10_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF11_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF11_SHIFT 6
u8 flags5;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF12_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF12_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF13_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF13_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF14_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF14_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF15_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF15_SHIFT 6
u8 flags6;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF16_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF16_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF17_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF17_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF18_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF18_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_SHIFT 6
u8 flags7;
#define E5_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED10_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED10_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 7
u8 flags8;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF3EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF3EN_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF4EN_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF5EN_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF6EN_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF7EN_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF8EN_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF9EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF9EN_SHIFT 7
u8 flags9;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF10EN_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF11EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF11EN_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF12EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF12EN_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF13EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF13EN_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF14EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF14EN_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF15EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF15EN_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF16EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF16EN_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF17EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF17EN_SHIFT 7
u8 flags10;
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF18EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF18EN_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_DQ_CF_EN_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED11_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED11_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_SLOW_PATH_EN_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF23EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF23EN_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED12_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED12_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED13_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED13_SHIFT 7
u8 flags11;
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED14_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED14_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED15_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED15_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED16_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESERVED16_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE5EN_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE6EN_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE7EN_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED1_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED1_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_XFERQ_DECISION_EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_XFERQ_DECISION_EN_SHIFT 7
u8 flags12;
#define E5_XSTORM_FCOE_CONN_AG_CTX_SQ_DECISION_EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_SQ_DECISION_EN_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE11EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE11EN_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED2_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED2_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED3_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED3_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE14EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE14EN_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE15EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE15EN_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE16EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE16EN_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE17EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE17EN_SHIFT 7
u8 flags13;
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESPQ_DECISION_EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RESPQ_DECISION_EN_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE19EN_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_RULE19EN_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED4_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED4_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED5_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED5_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED6_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED6_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED7_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED7_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED8_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED8_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED9_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_A0_RESERVED9_SHIFT 7
u8 flags14;
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT16_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT16_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT17_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT17_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT18_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT18_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT19_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT19_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT20_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT20_SHIFT 4
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT21_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_BIT21_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF23_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_CF23_SHIFT 6
u8 byte2 ;
__le16 physical_q0 ;
__le16 word1 ;
__le16 word2 ;
__le16 sq_cons ;
__le16 sq_prod ;
__le16 xferq_prod ;
__le16 xferq_cons ;
u8 byte3 ;
u8 byte4 ;
u8 byte5 ;
u8 byte6 ;
__le32 remain_io ;
__le32 reg1 ;
__le32 reg2 ;
__le32 reg3 ;
__le32 reg4 ;
__le32 reg5 ;
__le32 reg6 ;
u8 flags15;
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED1_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED1_SHIFT 0
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED2_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED2_SHIFT 1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED3_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED3_SHIFT 2
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED4_MASK 0x3
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED4_SHIFT 3
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED5_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED5_SHIFT 5
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED6_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED6_SHIFT 6
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED7_MASK 0x1
#define E5_XSTORM_FCOE_CONN_AG_CTX_E4_RESERVED7_SHIFT 7
u8 byte7 ;
__le16 respq_prod ;
__le16 respq_cons ;
__le16 word9 ;
__le16 word10 ;
__le16 word11 ;
__le32 reg7 ;
};
struct e5_ystorm_fcoe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E5_YSTORM_FCOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E5_YSTORM_FCOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF0_SHIFT 2
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF1_SHIFT 4
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE0EN_SHIFT 3
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_YSTORM_FCOE_CONN_AG_CTX_RULE4EN_SHIFT 7
u8 byte2 ;
u8 byte3 ;
__le16 word0 ;
__le32 reg0 ;
__le32 reg1 ;
__le16 word1 ;
__le16 word2 ;
__le16 word3 ;
__le16 word4 ;
__le32 reg2 ;
__le32 reg3 ;
};
#endif