#ifndef __ECORE_HSI_TOE__
#define __ECORE_HSI_TOE__
#include "tcp_common.h"
#define TOE_MAX_RAMROD_PER_PF 8
#define TOE_TX_PAGE_SIZE_BYTES 4096
#define TOE_GRQ_PAGE_SIZE_BYTES 4096
#define TOE_RX_CQ_PAGE_SIZE_BYTES 4096
#define TOE_RX_MAX_RSS_CHAINS 64
#define TOE_TX_MAX_TSS_CHAINS 64
#define TOE_RSS_INDIRECTION_TABLE_SIZE 128
struct mstorm_toe_conn_st_ctx
{
__le32 reserved[24];
};
struct pstorm_toe_conn_st_ctx
{
__le32 reserved[36];
};
struct ystorm_toe_conn_st_ctx
{
__le32 reserved[8];
};
struct xstorm_toe_conn_st_ctx
{
__le32 reserved[44];
};
struct e4_ystorm_toe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E4_YSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E4_YSTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_MASK 0x3
#define E4_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_SHIFT 2
#define E4_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_MASK 0x3
#define E4_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_SHIFT 4
#define E4_YSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_YSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E4_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_SHIFT 0
#define E4_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_EN_SHIFT 1
#define E4_YSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E4_YSTORM_TOE_CONN_AG_CTX_REL_SEQ_EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_REL_SEQ_EN_SHIFT 3
#define E4_YSTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E4_YSTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E4_YSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E4_YSTORM_TOE_CONN_AG_CTX_CONS_PROD_EN_MASK 0x1
#define E4_YSTORM_TOE_CONN_AG_CTX_CONS_PROD_EN_SHIFT 7
u8 completion_opcode ;
u8 byte3 ;
__le16 word0 ;
__le32 rel_seq ;
__le32 rel_seq_threshold ;
__le16 app_prod ;
__le16 app_cons ;
__le16 word3 ;
__le16 word4 ;
__le32 reg2 ;
__le32 reg3 ;
};
struct e4_xstorm_toe_conn_ag_ctx
{
u8 reserved0 ;
u8 state ;
u8 flags0;
#define E4_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM1_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM1_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_RESERVED1_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RESERVED1_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM3_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM3_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_TX_DEC_RULE_RES_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_TX_DEC_RULE_RES_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_RESERVED2_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RESERVED2_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT6_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT6_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT7_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT7_SHIFT 7
u8 flags1;
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT8_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT8_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT9_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT9_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT10_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT10_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT11_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT11_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT12_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT12_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT13_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT13_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT14_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT14_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT15_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT15_SHIFT 7
u8 flags2;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF0_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF1_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 6
u8 flags3;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF4_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF4_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_CF5_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF5_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF6_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF6_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF7_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF7_SHIFT 6
u8 flags4;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF8_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF8_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_CF9_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF9_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF10_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF10_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF11_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF11_SHIFT 6
u8 flags5;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF12_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF12_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_CF13_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF13_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF14_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF14_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF15_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF15_SHIFT 6
u8 flags6;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF16_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF16_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_CF17_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF17_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF18_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF18_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_SHIFT 6
u8 flags7;
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF0EN_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 7
u8 flags8;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF4EN_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF5EN_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF6EN_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF7EN_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF8EN_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_CF9EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF9EN_SHIFT 7
u8 flags9;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF10EN_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_CF11EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF11EN_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF12EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF12EN_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_CF13EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF13EN_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF14EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF14EN_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF15EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF15EN_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_CF16EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF16EN_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_CF17EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF17EN_SHIFT 7
u8 flags10;
#define E4_XSTORM_TOE_CONN_AG_CTX_CF18EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF18EN_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_EN_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_EN_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_EN_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_CF23EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_CF23EN_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_MORE_TO_SEND_RULE_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_MORE_TO_SEND_RULE_EN_SHIFT 7
u8 flags11;
#define E4_XSTORM_TOE_CONN_AG_CTX_TX_BLOCKED_EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_TX_BLOCKED_EN_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_RESERVED3_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RESERVED3_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE5EN_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE6EN_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE7EN_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED1_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED1_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE9EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE9EN_SHIFT 7
u8 flags12;
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE10EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE10EN_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE11EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE11EN_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED2_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED2_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED3_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED3_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE14EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE14EN_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE15EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE15EN_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE16EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE16EN_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE17EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE17EN_SHIFT 7
u8 flags13;
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE18EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE18EN_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE19EN_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_RULE19EN_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED4_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED4_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED5_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED5_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED6_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED6_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED7_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED7_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED8_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED8_SHIFT 6
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED9_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED9_SHIFT 7
u8 flags14;
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT16_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT16_SHIFT 0
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT17_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT17_SHIFT 1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT18_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT18_SHIFT 2
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT19_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT19_SHIFT 3
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT20_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT20_SHIFT 4
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT21_MASK 0x1
#define E4_XSTORM_TOE_CONN_AG_CTX_BIT21_SHIFT 5
#define E4_XSTORM_TOE_CONN_AG_CTX_CF23_MASK 0x3
#define E4_XSTORM_TOE_CONN_AG_CTX_CF23_SHIFT 6
u8 byte2 ;
__le16 physical_q0 ;
__le16 physical_q1 ;
__le16 word2 ;
__le16 word3 ;
__le16 bd_prod ;
__le16 word5 ;
__le16 word6 ;
u8 byte3 ;
u8 byte4 ;
u8 byte5 ;
u8 byte6 ;
__le32 reg0 ;
__le32 reg1 ;
__le32 reg2 ;
__le32 more_to_send_seq ;
__le32 local_adv_wnd_seq ;
__le32 reg5 ;
__le32 reg6 ;
__le16 word7 ;
__le16 word8 ;
__le16 word9 ;
__le16 word10 ;
__le32 reg7 ;
__le32 reg8 ;
__le32 reg9 ;
u8 byte7 ;
u8 byte8 ;
u8 byte9 ;
u8 byte10 ;
u8 byte11 ;
u8 byte12 ;
u8 byte13 ;
u8 byte14 ;
u8 byte15 ;
u8 e5_reserved ;
__le16 word11 ;
__le32 reg10 ;
__le32 reg11 ;
__le32 reg12 ;
__le32 reg13 ;
__le32 reg14 ;
__le32 reg15 ;
__le32 reg16 ;
__le32 reg17 ;
};
struct e4_tstorm_toe_conn_ag_ctx
{
u8 reserved0 ;
u8 byte1 ;
u8 flags0;
#define E4_TSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT2_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT2_SHIFT 2
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT3_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT3_SHIFT 3
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT4_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT4_SHIFT 4
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT5_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_BIT5_SHIFT 5
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_SHIFT 6
u8 flags1;
#define E4_TSTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF1_SHIFT 0
#define E4_TSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 2
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 4
#define E4_TSTORM_TOE_CONN_AG_CTX_CF4_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF4_SHIFT 6
u8 flags2;
#define E4_TSTORM_TOE_CONN_AG_CTX_CF5_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF5_SHIFT 0
#define E4_TSTORM_TOE_CONN_AG_CTX_CF6_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF6_SHIFT 2
#define E4_TSTORM_TOE_CONN_AG_CTX_CF7_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF7_SHIFT 4
#define E4_TSTORM_TOE_CONN_AG_CTX_CF8_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF8_SHIFT 6
u8 flags3;
#define E4_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_SHIFT 0
#define E4_TSTORM_TOE_CONN_AG_CTX_CF10_MASK 0x3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF10_SHIFT 2
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_EN_SHIFT 4
#define E4_TSTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 5
#define E4_TSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 6
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 7
u8 flags4;
#define E4_TSTORM_TOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF4EN_SHIFT 0
#define E4_TSTORM_TOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF5EN_SHIFT 1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF6EN_SHIFT 2
#define E4_TSTORM_TOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF7EN_SHIFT 3
#define E4_TSTORM_TOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF8EN_SHIFT 4
#define E4_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 5
#define E4_TSTORM_TOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_CF10EN_SHIFT 6
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags5;
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E4_TSTORM_TOE_CONN_AG_CTX_RULE8EN_SHIFT 7
__le32 reg0 ;
__le32 reg1 ;
__le32 reg2 ;
__le32 reg3 ;
__le32 reg4 ;
__le32 reg5 ;
__le32 reg6 ;
__le32 reg7 ;
__le32 reg8 ;
u8 byte2 ;
u8 byte3 ;
__le16 word0 ;
};
struct e4_ustorm_toe_conn_ag_ctx
{
u8 reserved ;
u8 byte1 ;
u8 flags0;
#define E4_USTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E4_USTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_USTORM_TOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_CF0_SHIFT 2
#define E4_USTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_CF1_SHIFT 4
#define E4_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_SHIFT 6
u8 flags1;
#define E4_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 0
#define E4_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_SHIFT 2
#define E4_USTORM_TOE_CONN_AG_CTX_DQ_CF_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_DQ_CF_SHIFT 4
#define E4_USTORM_TOE_CONN_AG_CTX_CF6_MASK 0x3
#define E4_USTORM_TOE_CONN_AG_CTX_CF6_SHIFT 6
u8 flags2;
#define E4_USTORM_TOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E4_USTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E4_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_EN_SHIFT 2
#define E4_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 3
#define E4_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_SHIFT 4
#define E4_USTORM_TOE_CONN_AG_CTX_DQ_CF_EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_DQ_CF_EN_SHIFT 5
#define E4_USTORM_TOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_CF6EN_SHIFT 6
#define E4_USTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags3;
#define E4_USTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E4_USTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E4_USTORM_TOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E4_USTORM_TOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E4_USTORM_TOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E4_USTORM_TOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E4_USTORM_TOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E4_USTORM_TOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E4_USTORM_TOE_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_toe_conn_st_ctx
{
__le32 reserved[16];
};
struct ustorm_toe_conn_st_ctx
{
__le32 reserved[52];
};
struct toe_conn_context
{
struct ystorm_toe_conn_st_ctx ystorm_st_context ;
struct pstorm_toe_conn_st_ctx pstorm_st_context ;
struct regpair pstorm_st_padding[2] ;
struct xstorm_toe_conn_st_ctx xstorm_st_context ;
struct regpair xstorm_st_padding[2] ;
struct e4_ystorm_toe_conn_ag_ctx ystorm_ag_context ;
struct e4_xstorm_toe_conn_ag_ctx xstorm_ag_context ;
struct e4_tstorm_toe_conn_ag_ctx tstorm_ag_context ;
struct regpair tstorm_ag_padding[2] ;
struct timers_context timer_context ;
struct e4_ustorm_toe_conn_ag_ctx ustorm_ag_context ;
struct tstorm_toe_conn_st_ctx tstorm_st_context ;
struct mstorm_toe_conn_st_ctx mstorm_st_context ;
struct ustorm_toe_conn_st_ctx ustorm_st_context ;
};
struct toe_init_ramrod_header
{
u8 first_rss ;
u8 num_rss ;
u8 reserved[6];
};
struct toe_pf_init_params
{
__le32 push_timeout ;
__le16 grq_buffer_size ;
__le16 grq_sb_id ;
u8 grq_sb_index ;
u8 max_seg_retransmit ;
u8 doubt_reachability ;
u8 ll2_rx_queue_id ;
__le16 grq_fetch_threshold ;
u8 reserved1[2];
struct regpair grq_page_addr ;
};
struct toe_tss_params
{
struct regpair curr_page_addr ;
struct regpair next_page_addr ;
u8 reserved0 ;
u8 status_block_index ;
__le16 status_block_id ;
__le16 reserved1[2];
};
struct toe_rss_params
{
struct regpair curr_page_addr ;
struct regpair next_page_addr ;
u8 reserved0 ;
u8 status_block_index ;
__le16 status_block_id ;
__le16 reserved1[2];
};
struct toe_init_ramrod_data
{
struct toe_init_ramrod_header hdr;
struct tcp_init_params tcp_params;
struct toe_pf_init_params pf_params;
struct toe_tss_params tss_params[TOE_TX_MAX_TSS_CHAINS];
struct toe_rss_params rss_params[TOE_RX_MAX_RSS_CHAINS];
};
struct toe_offload_params
{
struct regpair tx_bd_page_addr ;
struct regpair tx_app_page_addr ;
struct regpair rx_bd_page_addr ;
__le32 more_to_send_seq ;
__le16 tx_app_prod ;
__le16 rcv_indication_size ;
__le16 reserved;
u8 rss_tss_id ;
u8 ignore_grq_push;
struct regpair rx_db_data_ptr;
__le32 reserved1;
};
struct toe_offload_ramrod_data
{
struct tcp_offload_params tcp_ofld_params;
struct toe_offload_params toe_ofld_params;
};
enum toe_ramrod_cmd_id
{
TOE_RAMROD_UNUSED,
TOE_RAMROD_FUNC_INIT,
TOE_RAMROD_INITATE_OFFLOAD,
TOE_RAMROD_FUNC_CLOSE,
TOE_RAMROD_SEARCHER_DELETE,
TOE_RAMROD_TERMINATE,
TOE_RAMROD_QUERY,
TOE_RAMROD_UPDATE,
TOE_RAMROD_EMPTY,
TOE_RAMROD_RESET_SEND,
TOE_RAMROD_INVALIDATE,
MAX_TOE_RAMROD_CMD_ID
};
struct toe_rx_bd
{
struct regpair addr ;
__le16 size ;
__le16 flags;
#define TOE_RX_BD_START_MASK 0x1
#define TOE_RX_BD_START_SHIFT 0
#define TOE_RX_BD_END_MASK 0x1
#define TOE_RX_BD_END_SHIFT 1
#define TOE_RX_BD_NO_PUSH_MASK 0x1
#define TOE_RX_BD_NO_PUSH_SHIFT 2
#define TOE_RX_BD_SPLIT_MASK 0x1
#define TOE_RX_BD_SPLIT_SHIFT 3
#define TOE_RX_BD_RESERVED0_MASK 0xFFF
#define TOE_RX_BD_RESERVED0_SHIFT 4
__le32 reserved1;
};
enum toe_rx_cmp_opcode
{
TOE_RX_CMP_OPCODE_GA=1,
TOE_RX_CMP_OPCODE_GR=2,
TOE_RX_CMP_OPCODE_GNI=3,
TOE_RX_CMP_OPCODE_GAIR=4,
TOE_RX_CMP_OPCODE_GAIL=5,
TOE_RX_CMP_OPCODE_GRI=6,
TOE_RX_CMP_OPCODE_GJ=7,
TOE_RX_CMP_OPCODE_DGI=8,
TOE_RX_CMP_OPCODE_CMP=9,
TOE_RX_CMP_OPCODE_REL=10,
TOE_RX_CMP_OPCODE_SKP=11,
TOE_RX_CMP_OPCODE_URG=12,
TOE_RX_CMP_OPCODE_RT_TO=13,
TOE_RX_CMP_OPCODE_KA_TO=14,
TOE_RX_CMP_OPCODE_MAX_RT=15,
TOE_RX_CMP_OPCODE_DBT_RE=16,
TOE_RX_CMP_OPCODE_SYN=17,
TOE_RX_CMP_OPCODE_OPT_ERR=18,
TOE_RX_CMP_OPCODE_FW2_TO=19,
TOE_RX_CMP_OPCODE_2WY_CLS=20,
TOE_RX_CMP_OPCODE_RST_RCV=21,
TOE_RX_CMP_OPCODE_FIN_RCV=22,
TOE_RX_CMP_OPCODE_FIN_UPL=23,
TOE_RX_CMP_OPCODE_INIT=32,
TOE_RX_CMP_OPCODE_RSS_UPDATE=33,
TOE_RX_CMP_OPCODE_CLOSE=34,
TOE_RX_CMP_OPCODE_INITIATE_OFFLOAD=80,
TOE_RX_CMP_OPCODE_SEARCHER_DELETE=81,
TOE_RX_CMP_OPCODE_TERMINATE=82,
TOE_RX_CMP_OPCODE_QUERY=83,
TOE_RX_CMP_OPCODE_RESET_SEND=84,
TOE_RX_CMP_OPCODE_INVALIDATE=85,
TOE_RX_CMP_OPCODE_EMPTY=86,
TOE_RX_CMP_OPCODE_UPDATE=87,
MAX_TOE_RX_CMP_OPCODE
};
struct toe_rx_cqe_ooo_params
{
__le32 nbytes;
__le16 grq_buff_id ;
u8 isle_num;
u8 reserved0;
};
struct toe_rx_cqe_in_order_params
{
__le32 nbytes;
__le16 grq_buff_id ;
__le16 reserved1;
};
union toe_rx_cqe_data_union
{
struct toe_rx_cqe_ooo_params ooo_params;
struct toe_rx_cqe_in_order_params in_order_params;
struct regpair raw_data;
};
struct toe_rx_cqe
{
__le16 icid;
u8 completion_opcode;
u8 reserved0;
__le32 reserved1;
union toe_rx_cqe_data_union data;
};
struct toe_rx_db_data
{
__le32 local_adv_wnd_seq ;
__le32 reserved[3];
};
struct toe_rx_grq_bd
{
struct regpair addr ;
__le16 buff_id ;
__le16 reserved0;
__le32 reserved1;
};
struct toe_tx_app_buff_desc
{
__le32 next_buffer_start_seq ;
__le32 reserved;
};
struct toe_tx_app_buff_page_pointer
{
struct regpair next_page_addr ;
};
struct toe_tx_bd
{
struct regpair addr ;
__le16 size ;
__le16 flags;
#define TOE_TX_BD_PUSH_MASK 0x1
#define TOE_TX_BD_PUSH_SHIFT 0
#define TOE_TX_BD_NOTIFY_MASK 0x1
#define TOE_TX_BD_NOTIFY_SHIFT 1
#define TOE_TX_BD_LARGE_IO_MASK 0x1
#define TOE_TX_BD_LARGE_IO_SHIFT 2
#define TOE_TX_BD_BD_CONS_MASK 0x1FFF
#define TOE_TX_BD_BD_CONS_SHIFT 3
__le32 next_bd_start_seq ;
};
enum toe_tx_cmp_opcode
{
TOE_TX_CMP_OPCODE_DATA,
TOE_TX_CMP_OPCODE_TERMINATE,
TOE_TX_CMP_OPCODE_EMPTY,
TOE_TX_CMP_OPCODE_RESET_SEND,
TOE_TX_CMP_OPCODE_INVALIDATE,
TOE_TX_CMP_OPCODE_RST_RCV,
MAX_TOE_TX_CMP_OPCODE
};
struct toe_tx_cqe
{
__le16 icid ;
u8 opcode ;
u8 reserved;
__le32 size ;
};
struct toe_tx_page_pointer_bd
{
struct regpair next_page_addr ;
struct regpair prev_page_addr ;
};
struct toe_tx_page_pointer_cqe
{
struct regpair next_page_addr ;
};
struct toe_update_params
{
__le16 flags;
#define TOE_UPDATE_PARAMS_RCV_INDICATION_SIZE_CHANGED_MASK 0x1
#define TOE_UPDATE_PARAMS_RCV_INDICATION_SIZE_CHANGED_SHIFT 0
#define TOE_UPDATE_PARAMS_RESERVED_MASK 0x7FFF
#define TOE_UPDATE_PARAMS_RESERVED_SHIFT 1
__le16 rcv_indication_size;
__le16 reserved1[2];
};
struct toe_update_ramrod_data
{
struct tcp_update_params tcp_upd_params;
struct toe_update_params toe_upd_params;
};
struct e4_mstorm_toe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E4_MSTORM_TOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E4_MSTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E4_MSTORM_TOE_CONN_AG_CTX_CF0_MASK 0x3
#define E4_MSTORM_TOE_CONN_AG_CTX_CF0_SHIFT 2
#define E4_MSTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E4_MSTORM_TOE_CONN_AG_CTX_CF1_SHIFT 4
#define E4_MSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E4_MSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E4_MSTORM_TOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E4_MSTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E4_MSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 3
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E4_MSTORM_TOE_CONN_AG_CTX_RULE4EN_SHIFT 7
__le16 word0 ;
__le16 word1 ;
__le32 reg0 ;
__le32 reg1 ;
};
struct e5_mstorm_toe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E5_MSTORM_TOE_CONN_AG_CTX_BIT0_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_BIT0_SHIFT 0
#define E5_MSTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_MSTORM_TOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_MSTORM_TOE_CONN_AG_CTX_CF0_SHIFT 2
#define E5_MSTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_MSTORM_TOE_CONN_AG_CTX_CF1_SHIFT 4
#define E5_MSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_MSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E5_MSTORM_TOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E5_MSTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E5_MSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 3
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_MSTORM_TOE_CONN_AG_CTX_RULE4EN_SHIFT 7
__le16 word0 ;
__le16 word1 ;
__le32 reg0 ;
__le32 reg1 ;
};
struct e5_tstorm_toe_conn_ag_ctx
{
u8 reserved0 ;
u8 byte1 ;
u8 flags0;
#define E5_TSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT2_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT2_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT3_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT3_SHIFT 3
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT4_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT4_SHIFT 4
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT5_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_BIT5_SHIFT 5
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_SHIFT 6
u8 flags1;
#define E5_TSTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF1_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 4
#define E5_TSTORM_TOE_CONN_AG_CTX_CF4_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF4_SHIFT 6
u8 flags2;
#define E5_TSTORM_TOE_CONN_AG_CTX_CF5_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF5_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_CF6_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF6_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_CF7_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF7_SHIFT 4
#define E5_TSTORM_TOE_CONN_AG_CTX_CF8_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF8_SHIFT 6
u8 flags3;
#define E5_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_CF10_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF10_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMEOUT_CF_EN_SHIFT 4
#define E5_TSTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 5
#define E5_TSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 6
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 7
u8 flags4;
#define E5_TSTORM_TOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF4EN_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF5EN_SHIFT 1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF6EN_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF7EN_SHIFT 3
#define E5_TSTORM_TOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF8EN_SHIFT 4
#define E5_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 5
#define E5_TSTORM_TOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_CF10EN_SHIFT 6
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags5;
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_RULE8EN_SHIFT 7
u8 flags6;
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED1_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED1_SHIFT 0
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED2_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED2_SHIFT 1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED3_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED3_SHIFT 2
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED4_MASK 0x3
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED4_SHIFT 3
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED5_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED5_SHIFT 5
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED6_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED6_SHIFT 6
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED7_MASK 0x1
#define E5_TSTORM_TOE_CONN_AG_CTX_E4_RESERVED7_SHIFT 7
u8 byte2 ;
__le16 word0 ;
__le32 reg0 ;
__le32 reg1 ;
__le32 reg2 ;
__le32 reg3 ;
__le32 reg4 ;
__le32 reg5 ;
__le32 reg6 ;
__le32 reg7 ;
__le32 reg8 ;
};
struct e5_ustorm_toe_conn_ag_ctx
{
u8 reserved ;
u8 byte1 ;
u8 flags0;
#define E5_USTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E5_USTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_USTORM_TOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_CF0_SHIFT 2
#define E5_USTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_CF1_SHIFT 4
#define E5_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_SHIFT 6
u8 flags1;
#define E5_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 0
#define E5_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_SHIFT 2
#define E5_USTORM_TOE_CONN_AG_CTX_DQ_CF_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_DQ_CF_SHIFT 4
#define E5_USTORM_TOE_CONN_AG_CTX_CF6_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_CF6_SHIFT 6
u8 flags2;
#define E5_USTORM_TOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_CF0EN_SHIFT 0
#define E5_USTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 1
#define E5_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_PUSH_TIMER_CF_EN_SHIFT 2
#define E5_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 3
#define E5_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_SHIFT 4
#define E5_USTORM_TOE_CONN_AG_CTX_DQ_CF_EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_DQ_CF_EN_SHIFT 5
#define E5_USTORM_TOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_CF6EN_SHIFT 6
#define E5_USTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 7
u8 flags3;
#define E5_USTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 0
#define E5_USTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 2
#define E5_USTORM_TOE_CONN_AG_CTX_RULE4EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE4EN_SHIFT 3
#define E5_USTORM_TOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE5EN_SHIFT 4
#define E5_USTORM_TOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE6EN_SHIFT 5
#define E5_USTORM_TOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE7EN_SHIFT 6
#define E5_USTORM_TOE_CONN_AG_CTX_RULE8EN_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_RULE8EN_SHIFT 7
u8 flags4;
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED1_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED1_SHIFT 0
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED2_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED2_SHIFT 1
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED3_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED3_SHIFT 2
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED4_MASK 0x3
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED4_SHIFT 4
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED5_MASK 0x1
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED5_SHIFT 6
#define E5_USTORM_TOE_CONN_AG_CTX_E4_RESERVED6_MASK 0x1
#define E5_USTORM_TOE_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_toe_conn_ag_ctx
{
u8 reserved0 ;
u8 state_and_core_id ;
u8 flags0;
#define E5_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM1_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM1_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_RESERVED1_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RESERVED1_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM3_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM3_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_TX_DEC_RULE_RES_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_TX_DEC_RULE_RES_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_RESERVED2_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RESERVED2_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT6_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT6_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT7_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT7_SHIFT 7
u8 flags1;
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT8_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT8_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT9_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT9_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT10_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT10_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT11_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT11_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT12_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT12_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT13_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT13_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT14_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT14_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT15_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT15_SHIFT 7
u8 flags2;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF0_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF0_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_CF1_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF1_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_SHIFT 6
u8 flags3;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF4_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF4_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_CF5_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF5_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF6_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF6_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF7_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF7_SHIFT 6
u8 flags4;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF8_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF8_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_CF9_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF9_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF10_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF10_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF11_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF11_SHIFT 6
u8 flags5;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF12_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF12_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_CF13_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF13_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF14_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF14_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF15_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF15_SHIFT 6
u8 flags6;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF16_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF16_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_CF17_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF17_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF18_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF18_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_SHIFT 6
u8 flags7;
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF0EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF0EN_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_CF1EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF1EN_SHIFT 7
u8 flags8;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_TIMER_STOP_ALL_EN_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF4EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF4EN_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF5EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF5EN_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF6EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF6EN_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF7EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF7EN_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_CF8EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF8EN_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_CF9EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF9EN_SHIFT 7
u8 flags9;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF10EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF10EN_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_CF11EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF11EN_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF12EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF12EN_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_CF13EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF13EN_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF14EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF14EN_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF15EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF15EN_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_CF16EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF16EN_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_CF17EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF17EN_SHIFT 7
u8 flags10;
#define E5_XSTORM_TOE_CONN_AG_CTX_CF18EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF18EN_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_DQ_FLUSH_EN_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q0_EN_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_FLUSH_Q1_EN_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_SLOW_PATH_EN_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_CF23EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_CF23EN_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE0EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE0EN_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_MORE_TO_SEND_RULE_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_MORE_TO_SEND_RULE_EN_SHIFT 7
u8 flags11;
#define E5_XSTORM_TOE_CONN_AG_CTX_TX_BLOCKED_EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_TX_BLOCKED_EN_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_RESERVED3_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RESERVED3_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE5EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE5EN_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE6EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE6EN_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE7EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE7EN_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED1_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED1_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE9EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE9EN_SHIFT 7
u8 flags12;
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE10EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE10EN_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE11EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE11EN_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED2_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED2_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED3_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED3_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE14EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE14EN_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE15EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE15EN_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE16EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE16EN_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE17EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE17EN_SHIFT 7
u8 flags13;
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE18EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE18EN_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE19EN_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_RULE19EN_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED4_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED4_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED5_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED5_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED6_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED6_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED7_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED7_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED8_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED8_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED9_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_A0_RESERVED9_SHIFT 7
u8 flags14;
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT16_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT16_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT17_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT17_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT18_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT18_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT19_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT19_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT20_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT20_SHIFT 4
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT21_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_BIT21_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_CF23_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_CF23_SHIFT 6
u8 byte2 ;
__le16 physical_q0 ;
__le16 physical_q1 ;
__le16 word2 ;
__le16 word3 ;
__le16 bd_prod ;
__le16 word5 ;
__le16 word6 ;
u8 byte3 ;
u8 byte4 ;
u8 byte5 ;
u8 byte6 ;
__le32 reg0 ;
__le32 reg1 ;
__le32 reg2 ;
__le32 more_to_send_seq ;
__le32 local_adv_wnd_seq ;
__le32 reg5 ;
__le32 reg6 ;
u8 flags15;
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED1_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED1_SHIFT 0
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED2_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED2_SHIFT 1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED3_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED3_SHIFT 2
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED4_MASK 0x3
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED4_SHIFT 3
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED5_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED5_SHIFT 5
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED6_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED6_SHIFT 6
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED7_MASK 0x1
#define E5_XSTORM_TOE_CONN_AG_CTX_E4_RESERVED7_SHIFT 7
u8 byte7 ;
__le16 word7 ;
__le16 word8 ;
__le16 word9 ;
__le16 word10 ;
__le16 word11 ;
__le32 reg7 ;
__le32 reg8 ;
__le32 reg9 ;
u8 byte8 ;
u8 byte9 ;
u8 byte10 ;
u8 byte11 ;
u8 byte12 ;
u8 byte13 ;
u8 byte14 ;
u8 byte15 ;
__le32 reg10 ;
__le32 reg11 ;
__le32 reg12 ;
__le32 reg13 ;
__le32 reg14 ;
__le32 reg15 ;
__le32 reg16 ;
__le32 reg17 ;
};
struct e5_ystorm_toe_conn_ag_ctx
{
u8 byte0 ;
u8 byte1 ;
u8 flags0;
#define E5_YSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_EXIST_IN_QM0_SHIFT 0
#define E5_YSTORM_TOE_CONN_AG_CTX_BIT1_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_BIT1_SHIFT 1
#define E5_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_MASK 0x3
#define E5_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_SHIFT 2
#define E5_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_MASK 0x3
#define E5_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_SHIFT 4
#define E5_YSTORM_TOE_CONN_AG_CTX_CF2_MASK 0x3
#define E5_YSTORM_TOE_CONN_AG_CTX_CF2_SHIFT 6
u8 flags1;
#define E5_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_SLOW_PATH_CF_EN_SHIFT 0
#define E5_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_RESET_RECEIVED_CF_EN_SHIFT 1
#define E5_YSTORM_TOE_CONN_AG_CTX_CF2EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_CF2EN_SHIFT 2
#define E5_YSTORM_TOE_CONN_AG_CTX_REL_SEQ_EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_REL_SEQ_EN_SHIFT 3
#define E5_YSTORM_TOE_CONN_AG_CTX_RULE1EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_RULE1EN_SHIFT 4
#define E5_YSTORM_TOE_CONN_AG_CTX_RULE2EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_RULE2EN_SHIFT 5
#define E5_YSTORM_TOE_CONN_AG_CTX_RULE3EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_RULE3EN_SHIFT 6
#define E5_YSTORM_TOE_CONN_AG_CTX_CONS_PROD_EN_MASK 0x1
#define E5_YSTORM_TOE_CONN_AG_CTX_CONS_PROD_EN_SHIFT 7
u8 completion_opcode ;
u8 byte3 ;
__le16 word0 ;
__le32 rel_seq ;
__le32 rel_seq_threshold ;
__le16 app_prod ;
__le16 app_cons ;
__le16 word3 ;
__le16 word4 ;
__le32 reg2 ;
__le32 reg3 ;
};
struct toe_db_data
{
u8 params;
#define TOE_DB_DATA_DEST_MASK 0x3
#define TOE_DB_DATA_DEST_SHIFT 0
#define TOE_DB_DATA_AGG_CMD_MASK 0x3
#define TOE_DB_DATA_AGG_CMD_SHIFT 2
#define TOE_DB_DATA_BYPASS_EN_MASK 0x1
#define TOE_DB_DATA_BYPASS_EN_SHIFT 4
#define TOE_DB_DATA_RESERVED_MASK 0x1
#define TOE_DB_DATA_RESERVED_SHIFT 5
#define TOE_DB_DATA_AGG_VAL_SEL_MASK 0x3
#define TOE_DB_DATA_AGG_VAL_SEL_SHIFT 6
u8 agg_flags ;
__le16 bd_prod;
};
#endif