cxgbe(4): Catch up with the rename of tlscaps -> cryptocaps. TLS is one

of the capabilities of the crypto engine in T6.

Sponsored by:	Chelsio Communications
This commit is contained in:
Navdeep Parhar 2016-09-12 00:15:40 +00:00
parent 9113e53d54
commit 4cf3aa135b
3 changed files with 533 additions and 109 deletions

View file

@ -835,7 +835,7 @@ struct adapter {
uint16_t niccaps;
uint16_t toecaps;
uint16_t rdmacaps;
uint16_t tlscaps;
uint16_t cryptocaps;
uint16_t iscsicaps;
uint16_t fcoecaps;

View file

@ -135,7 +135,9 @@ enum fw_wr_opcodes {
FW_POFCOE_ULPTX_WR = 0x43,
FW_ISCSI_TX_DATA_WR = 0x45,
FW_PTP_TX_PKT_WR = 0x46,
FW_SEC_LOOKASIDE_LPBK_WR= 0x6d,
FW_TLSTX_DATA_WR = 0x68,
FW_TLS_KEYCTX_TX_WR = 0x69,
FW_CRYPTO_LOOKASIDE_WR = 0x6d,
FW_COiSCSI_TGT_WR = 0x70,
FW_COiSCSI_TGT_CONN_WR = 0x71,
FW_COiSCSI_TGT_XMIT_WR = 0x72,
@ -3384,8 +3386,429 @@ struct fw_pi_error {
#define G_FW_PI_ERROR_ERR_TYPE(x) \
(((x) >> S_FW_PI_ERROR_ERR_TYPE) & M_FW_PI_ERROR_ERR_TYPE)
struct fw_tlstx_data_wr {
__be32 op_to_immdlen;
__be32 flowid_len16;
__be32 plen;
__be32 lsodisable_to_flags;
__be32 ddraddr;
__be32 ctxloc_to_exp;
__be16 mfs;
__u8 r6[6];
};
struct fw_sec_lookaside_lpbk_wr {
#define S_FW_TLSTX_DATA_WR_COMPL 21
#define M_FW_TLSTX_DATA_WR_COMPL 0x1
#define V_FW_TLSTX_DATA_WR_COMPL(x) ((x) << S_FW_TLSTX_DATA_WR_COMPL)
#define G_FW_TLSTX_DATA_WR_COMPL(x) \
(((x) >> S_FW_TLSTX_DATA_WR_COMPL) & M_FW_TLSTX_DATA_WR_COMPL)
#define F_FW_TLSTX_DATA_WR_COMPL V_FW_TLSTX_DATA_WR_COMPL(1U)
#define S_FW_TLSTX_DATA_WR_IMMDLEN 0
#define M_FW_TLSTX_DATA_WR_IMMDLEN 0xff
#define V_FW_TLSTX_DATA_WR_IMMDLEN(x) ((x) << S_FW_TLSTX_DATA_WR_IMMDLEN)
#define G_FW_TLSTX_DATA_WR_IMMDLEN(x) \
(((x) >> S_FW_TLSTX_DATA_WR_IMMDLEN) & M_FW_TLSTX_DATA_WR_IMMDLEN)
#define S_FW_TLSTX_DATA_WR_FLOWID 8
#define M_FW_TLSTX_DATA_WR_FLOWID 0xfffff
#define V_FW_TLSTX_DATA_WR_FLOWID(x) ((x) << S_FW_TLSTX_DATA_WR_FLOWID)
#define G_FW_TLSTX_DATA_WR_FLOWID(x) \
(((x) >> S_FW_TLSTX_DATA_WR_FLOWID) & M_FW_TLSTX_DATA_WR_FLOWID)
#define S_FW_TLSTX_DATA_WR_LEN16 0
#define M_FW_TLSTX_DATA_WR_LEN16 0xff
#define V_FW_TLSTX_DATA_WR_LEN16(x) ((x) << S_FW_TLSTX_DATA_WR_LEN16)
#define G_FW_TLSTX_DATA_WR_LEN16(x) \
(((x) >> S_FW_TLSTX_DATA_WR_LEN16) & M_FW_TLSTX_DATA_WR_LEN16)
#define S_FW_TLSTX_DATA_WR_LSODISABLE 31
#define M_FW_TLSTX_DATA_WR_LSODISABLE 0x1
#define V_FW_TLSTX_DATA_WR_LSODISABLE(x) \
((x) << S_FW_TLSTX_DATA_WR_LSODISABLE)
#define G_FW_TLSTX_DATA_WR_LSODISABLE(x) \
(((x) >> S_FW_TLSTX_DATA_WR_LSODISABLE) & M_FW_TLSTX_DATA_WR_LSODISABLE)
#define F_FW_TLSTX_DATA_WR_LSODISABLE V_FW_TLSTX_DATA_WR_LSODISABLE(1U)
#define S_FW_TLSTX_DATA_WR_ALIGNPLD 30
#define M_FW_TLSTX_DATA_WR_ALIGNPLD 0x1
#define V_FW_TLSTX_DATA_WR_ALIGNPLD(x) ((x) << S_FW_TLSTX_DATA_WR_ALIGNPLD)
#define G_FW_TLSTX_DATA_WR_ALIGNPLD(x) \
(((x) >> S_FW_TLSTX_DATA_WR_ALIGNPLD) & M_FW_TLSTX_DATA_WR_ALIGNPLD)
#define F_FW_TLSTX_DATA_WR_ALIGNPLD V_FW_TLSTX_DATA_WR_ALIGNPLD(1U)
#define S_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE 29
#define M_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE 0x1
#define V_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE(x) \
((x) << S_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE)
#define G_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE(x) \
(((x) >> S_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE) & \
M_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE)
#define F_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE V_FW_TLSTX_DATA_WR_ALIGNPLDSHOVE(1U)
#define S_FW_TLSTX_DATA_WR_FLAGS 0
#define M_FW_TLSTX_DATA_WR_FLAGS 0xfffffff
#define V_FW_TLSTX_DATA_WR_FLAGS(x) ((x) << S_FW_TLSTX_DATA_WR_FLAGS)
#define G_FW_TLSTX_DATA_WR_FLAGS(x) \
(((x) >> S_FW_TLSTX_DATA_WR_FLAGS) & M_FW_TLSTX_DATA_WR_FLAGS)
#define S_FW_TLSTX_DATA_WR_CTXLOC 30
#define M_FW_TLSTX_DATA_WR_CTXLOC 0x3
#define V_FW_TLSTX_DATA_WR_CTXLOC(x) ((x) << S_FW_TLSTX_DATA_WR_CTXLOC)
#define G_FW_TLSTX_DATA_WR_CTXLOC(x) \
(((x) >> S_FW_TLSTX_DATA_WR_CTXLOC) & M_FW_TLSTX_DATA_WR_CTXLOC)
#define S_FW_TLSTX_DATA_WR_IVDSGL 29
#define M_FW_TLSTX_DATA_WR_IVDSGL 0x1
#define V_FW_TLSTX_DATA_WR_IVDSGL(x) ((x) << S_FW_TLSTX_DATA_WR_IVDSGL)
#define G_FW_TLSTX_DATA_WR_IVDSGL(x) \
(((x) >> S_FW_TLSTX_DATA_WR_IVDSGL) & M_FW_TLSTX_DATA_WR_IVDSGL)
#define F_FW_TLSTX_DATA_WR_IVDSGL V_FW_TLSTX_DATA_WR_IVDSGL(1U)
#define S_FW_TLSTX_DATA_WR_KEYSIZE 24
#define M_FW_TLSTX_DATA_WR_KEYSIZE 0x1f
#define V_FW_TLSTX_DATA_WR_KEYSIZE(x) ((x) << S_FW_TLSTX_DATA_WR_KEYSIZE)
#define G_FW_TLSTX_DATA_WR_KEYSIZE(x) \
(((x) >> S_FW_TLSTX_DATA_WR_KEYSIZE) & M_FW_TLSTX_DATA_WR_KEYSIZE)
#define S_FW_TLSTX_DATA_WR_NUMIVS 14
#define M_FW_TLSTX_DATA_WR_NUMIVS 0xff
#define V_FW_TLSTX_DATA_WR_NUMIVS(x) ((x) << S_FW_TLSTX_DATA_WR_NUMIVS)
#define G_FW_TLSTX_DATA_WR_NUMIVS(x) \
(((x) >> S_FW_TLSTX_DATA_WR_NUMIVS) & M_FW_TLSTX_DATA_WR_NUMIVS)
#define S_FW_TLSTX_DATA_WR_EXP 0
#define M_FW_TLSTX_DATA_WR_EXP 0x3fff
#define V_FW_TLSTX_DATA_WR_EXP(x) ((x) << S_FW_TLSTX_DATA_WR_EXP)
#define G_FW_TLSTX_DATA_WR_EXP(x) \
(((x) >> S_FW_TLSTX_DATA_WR_EXP) & M_FW_TLSTX_DATA_WR_EXP)
struct fw_tls_keyctx_tx_wr {
__be32 op_to_compl;
__be32 flowid_len16;
union fw_key_ctx {
struct fw_tx_keyctx_hdr {
__u8 ctxlen;
__u8 r2;
__be16 dualck_to_txvalid;
__u8 txsalt[4];
__be64 r5;
} txhdr;
struct fw_rx_keyctx_hdr {
__u8 flitcnt_hmacctrl;
__u8 protover_ciphmode;
__u8 authmode_to_rxvalid;
__u8 ivpresent_to_rxmk_size;
__u8 rxsalt[4];
__be64 ivinsert_to_authinsrt;
} rxhdr;
struct fw_keyctx_clear {
__be32 tx_key;
__be32 rx_key;
} kctx_clr;
} u;
struct keys {
__u8 edkey[32];
__u8 ipad[64];
__u8 opad[64];
} keys;
__u8 reneg_to_write_rx;
__u8 protocol;
__u8 r7[2];
__be32 ftid;
};
#define S_FW_TLS_KEYCTX_TX_WR_OPCODE 24
#define M_FW_TLS_KEYCTX_TX_WR_OPCODE 0xff
#define V_FW_TLS_KEYCTX_TX_WR_OPCODE(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_OPCODE)
#define G_FW_TLS_KEYCTX_TX_WR_OPCODE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_OPCODE) & M_FW_TLS_KEYCTX_TX_WR_OPCODE)
#define S_FW_TLS_KEYCTX_TX_WR_ATOMIC 23
#define M_FW_TLS_KEYCTX_TX_WR_ATOMIC 0x1
#define V_FW_TLS_KEYCTX_TX_WR_ATOMIC(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_ATOMIC)
#define G_FW_TLS_KEYCTX_TX_WR_ATOMIC(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_ATOMIC) & M_FW_TLS_KEYCTX_TX_WR_ATOMIC)
#define F_FW_TLS_KEYCTX_TX_WR_ATOMIC V_FW_TLS_KEYCTX_TX_WR_ATOMIC(1U)
#define S_FW_TLS_KEYCTX_TX_WR_FLUSH 22
#define M_FW_TLS_KEYCTX_TX_WR_FLUSH 0x1
#define V_FW_TLS_KEYCTX_TX_WR_FLUSH(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_FLUSH)
#define G_FW_TLS_KEYCTX_TX_WR_FLUSH(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_FLUSH) & M_FW_TLS_KEYCTX_TX_WR_FLUSH)
#define F_FW_TLS_KEYCTX_TX_WR_FLUSH V_FW_TLS_KEYCTX_TX_WR_FLUSH(1U)
#define S_FW_TLS_KEYCTX_TX_WR_COMPL 21
#define M_FW_TLS_KEYCTX_TX_WR_COMPL 0x1
#define V_FW_TLS_KEYCTX_TX_WR_COMPL(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_COMPL)
#define G_FW_TLS_KEYCTX_TX_WR_COMPL(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_COMPL) & M_FW_TLS_KEYCTX_TX_WR_COMPL)
#define F_FW_TLS_KEYCTX_TX_WR_COMPL V_FW_TLS_KEYCTX_TX_WR_COMPL(1U)
#define S_FW_TLS_KEYCTX_TX_WR_FLOWID 8
#define M_FW_TLS_KEYCTX_TX_WR_FLOWID 0xfffff
#define V_FW_TLS_KEYCTX_TX_WR_FLOWID(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_FLOWID)
#define G_FW_TLS_KEYCTX_TX_WR_FLOWID(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_FLOWID) & M_FW_TLS_KEYCTX_TX_WR_FLOWID)
#define S_FW_TLS_KEYCTX_TX_WR_LEN16 0
#define M_FW_TLS_KEYCTX_TX_WR_LEN16 0xff
#define V_FW_TLS_KEYCTX_TX_WR_LEN16(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_LEN16)
#define G_FW_TLS_KEYCTX_TX_WR_LEN16(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_LEN16) & M_FW_TLS_KEYCTX_TX_WR_LEN16)
#define S_FW_TLS_KEYCTX_TX_WR_DUALCK 12
#define M_FW_TLS_KEYCTX_TX_WR_DUALCK 0x1
#define V_FW_TLS_KEYCTX_TX_WR_DUALCK(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_DUALCK)
#define G_FW_TLS_KEYCTX_TX_WR_DUALCK(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_DUALCK) & M_FW_TLS_KEYCTX_TX_WR_DUALCK)
#define F_FW_TLS_KEYCTX_TX_WR_DUALCK V_FW_TLS_KEYCTX_TX_WR_DUALCK(1U)
#define S_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT 11
#define M_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT 0x1
#define V_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT)
#define G_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT) & \
M_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT)
#define F_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT \
V_FW_TLS_KEYCTX_TX_WR_TXOPAD_PRESENT(1U)
#define S_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT 10
#define M_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT 0x1
#define V_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT)
#define G_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT) & \
M_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT)
#define F_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT \
V_FW_TLS_KEYCTX_TX_WR_SALT_PRESENT(1U)
#define S_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE 6
#define M_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE 0xf
#define V_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE)
#define G_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE) & \
M_FW_TLS_KEYCTX_TX_WR_TXCK_SIZE)
#define S_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE 2
#define M_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE 0xf
#define V_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE)
#define G_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE) & \
M_FW_TLS_KEYCTX_TX_WR_TXMK_SIZE)
#define S_FW_TLS_KEYCTX_TX_WR_TXVALID 0
#define M_FW_TLS_KEYCTX_TX_WR_TXVALID 0x1
#define V_FW_TLS_KEYCTX_TX_WR_TXVALID(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_TXVALID)
#define G_FW_TLS_KEYCTX_TX_WR_TXVALID(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_TXVALID) & M_FW_TLS_KEYCTX_TX_WR_TXVALID)
#define F_FW_TLS_KEYCTX_TX_WR_TXVALID V_FW_TLS_KEYCTX_TX_WR_TXVALID(1U)
#define S_FW_TLS_KEYCTX_TX_WR_FLITCNT 3
#define M_FW_TLS_KEYCTX_TX_WR_FLITCNT 0x1f
#define V_FW_TLS_KEYCTX_TX_WR_FLITCNT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_FLITCNT)
#define G_FW_TLS_KEYCTX_TX_WR_FLITCNT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_FLITCNT) & M_FW_TLS_KEYCTX_TX_WR_FLITCNT)
#define S_FW_TLS_KEYCTX_TX_WR_HMACCTRL 0
#define M_FW_TLS_KEYCTX_TX_WR_HMACCTRL 0x7
#define V_FW_TLS_KEYCTX_TX_WR_HMACCTRL(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_HMACCTRL)
#define G_FW_TLS_KEYCTX_TX_WR_HMACCTRL(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_HMACCTRL) & M_FW_TLS_KEYCTX_TX_WR_HMACCTRL)
#define S_FW_TLS_KEYCTX_TX_WR_PROTOVER 4
#define M_FW_TLS_KEYCTX_TX_WR_PROTOVER 0xf
#define V_FW_TLS_KEYCTX_TX_WR_PROTOVER(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_PROTOVER)
#define G_FW_TLS_KEYCTX_TX_WR_PROTOVER(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_PROTOVER) & M_FW_TLS_KEYCTX_TX_WR_PROTOVER)
#define S_FW_TLS_KEYCTX_TX_WR_CIPHMODE 0
#define M_FW_TLS_KEYCTX_TX_WR_CIPHMODE 0xf
#define V_FW_TLS_KEYCTX_TX_WR_CIPHMODE(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_CIPHMODE)
#define G_FW_TLS_KEYCTX_TX_WR_CIPHMODE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_CIPHMODE) & M_FW_TLS_KEYCTX_TX_WR_CIPHMODE)
#define S_FW_TLS_KEYCTX_TX_WR_AUTHMODE 4
#define M_FW_TLS_KEYCTX_TX_WR_AUTHMODE 0xf
#define V_FW_TLS_KEYCTX_TX_WR_AUTHMODE(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_AUTHMODE)
#define G_FW_TLS_KEYCTX_TX_WR_AUTHMODE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_AUTHMODE) & M_FW_TLS_KEYCTX_TX_WR_AUTHMODE)
#define S_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL 3
#define M_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL 0x1
#define V_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL)
#define G_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL) & \
M_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL)
#define F_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL \
V_FW_TLS_KEYCTX_TX_WR_CIPHAUTHSEQCTRL(1U)
#define S_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL 1
#define M_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL 0x3
#define V_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL)
#define G_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL) & \
M_FW_TLS_KEYCTX_TX_WR_SEQNUMCTRL)
#define S_FW_TLS_KEYCTX_TX_WR_RXVALID 0
#define M_FW_TLS_KEYCTX_TX_WR_RXVALID 0x1
#define V_FW_TLS_KEYCTX_TX_WR_RXVALID(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_RXVALID)
#define G_FW_TLS_KEYCTX_TX_WR_RXVALID(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_RXVALID) & M_FW_TLS_KEYCTX_TX_WR_RXVALID)
#define F_FW_TLS_KEYCTX_TX_WR_RXVALID V_FW_TLS_KEYCTX_TX_WR_RXVALID(1U)
#define S_FW_TLS_KEYCTX_TX_WR_IVPRESENT 7
#define M_FW_TLS_KEYCTX_TX_WR_IVPRESENT 0x1
#define V_FW_TLS_KEYCTX_TX_WR_IVPRESENT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_IVPRESENT)
#define G_FW_TLS_KEYCTX_TX_WR_IVPRESENT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_IVPRESENT) & \
M_FW_TLS_KEYCTX_TX_WR_IVPRESENT)
#define F_FW_TLS_KEYCTX_TX_WR_IVPRESENT V_FW_TLS_KEYCTX_TX_WR_IVPRESENT(1U)
#define S_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT 6
#define M_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT 0x1
#define V_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT)
#define G_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT) & \
M_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT)
#define F_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT \
V_FW_TLS_KEYCTX_TX_WR_RXOPAD_PRESENT(1U)
#define S_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE 3
#define M_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE 0x7
#define V_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE)
#define G_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE) & \
M_FW_TLS_KEYCTX_TX_WR_RXCK_SIZE)
#define S_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE 0
#define M_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE 0x7
#define V_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE)
#define G_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE) & \
M_FW_TLS_KEYCTX_TX_WR_RXMK_SIZE)
#define S_FW_TLS_KEYCTX_TX_WR_IVINSERT 55
#define M_FW_TLS_KEYCTX_TX_WR_IVINSERT 0x1ffULL
#define V_FW_TLS_KEYCTX_TX_WR_IVINSERT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_IVINSERT)
#define G_FW_TLS_KEYCTX_TX_WR_IVINSERT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_IVINSERT) & M_FW_TLS_KEYCTX_TX_WR_IVINSERT)
#define S_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST 47
#define M_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST 0xffULL
#define V_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST)
#define G_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST) & \
M_FW_TLS_KEYCTX_TX_WR_AADSTRTOFST)
#define S_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST 39
#define M_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST 0xffULL
#define V_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST)
#define G_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST) & \
M_FW_TLS_KEYCTX_TX_WR_AADSTOPOFST)
#define S_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST 30
#define M_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST 0x1ffULL
#define V_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST)
#define G_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST) & \
M_FW_TLS_KEYCTX_TX_WR_CIPHERSRTOFST)
#define S_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST 23
#define M_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST 0x7f
#define V_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST)
#define G_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST) & \
M_FW_TLS_KEYCTX_TX_WR_CIPHERSTOPOFST)
#define S_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST 14
#define M_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST 0x1ff
#define V_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST)
#define G_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST) & \
M_FW_TLS_KEYCTX_TX_WR_AUTHSRTOFST)
#define S_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST 7
#define M_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST 0x7f
#define V_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST)
#define G_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST) & \
M_FW_TLS_KEYCTX_TX_WR_AUTHSTOPOFST)
#define S_FW_TLS_KEYCTX_TX_WR_AUTHINSRT 0
#define M_FW_TLS_KEYCTX_TX_WR_AUTHINSRT 0x7f
#define V_FW_TLS_KEYCTX_TX_WR_AUTHINSRT(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_AUTHINSRT)
#define G_FW_TLS_KEYCTX_TX_WR_AUTHINSRT(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_AUTHINSRT) & \
M_FW_TLS_KEYCTX_TX_WR_AUTHINSRT)
#define S_FW_TLS_KEYCTX_TX_WR_RENEG 4
#define M_FW_TLS_KEYCTX_TX_WR_RENEG 0x1
#define V_FW_TLS_KEYCTX_TX_WR_RENEG(x) ((x) << S_FW_TLS_KEYCTX_TX_WR_RENEG)
#define G_FW_TLS_KEYCTX_TX_WR_RENEG(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_RENEG) & M_FW_TLS_KEYCTX_TX_WR_RENEG)
#define F_FW_TLS_KEYCTX_TX_WR_RENEG V_FW_TLS_KEYCTX_TX_WR_RENEG(1U)
#define S_FW_TLS_KEYCTX_TX_WR_DELETE_TX 3
#define M_FW_TLS_KEYCTX_TX_WR_DELETE_TX 0x1
#define V_FW_TLS_KEYCTX_TX_WR_DELETE_TX(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_DELETE_TX)
#define G_FW_TLS_KEYCTX_TX_WR_DELETE_TX(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_DELETE_TX) & \
M_FW_TLS_KEYCTX_TX_WR_DELETE_TX)
#define F_FW_TLS_KEYCTX_TX_WR_DELETE_TX V_FW_TLS_KEYCTX_TX_WR_DELETE_TX(1U)
#define S_FW_TLS_KEYCTX_TX_WR_DELETE_RX 2
#define M_FW_TLS_KEYCTX_TX_WR_DELETE_RX 0x1
#define V_FW_TLS_KEYCTX_TX_WR_DELETE_RX(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_DELETE_RX)
#define G_FW_TLS_KEYCTX_TX_WR_DELETE_RX(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_DELETE_RX) & \
M_FW_TLS_KEYCTX_TX_WR_DELETE_RX)
#define F_FW_TLS_KEYCTX_TX_WR_DELETE_RX V_FW_TLS_KEYCTX_TX_WR_DELETE_RX(1U)
#define S_FW_TLS_KEYCTX_TX_WR_WRITE_TX 1
#define M_FW_TLS_KEYCTX_TX_WR_WRITE_TX 0x1
#define V_FW_TLS_KEYCTX_TX_WR_WRITE_TX(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_WRITE_TX)
#define G_FW_TLS_KEYCTX_TX_WR_WRITE_TX(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_WRITE_TX) & M_FW_TLS_KEYCTX_TX_WR_WRITE_TX)
#define F_FW_TLS_KEYCTX_TX_WR_WRITE_TX V_FW_TLS_KEYCTX_TX_WR_WRITE_TX(1U)
#define S_FW_TLS_KEYCTX_TX_WR_WRITE_RX 0
#define M_FW_TLS_KEYCTX_TX_WR_WRITE_RX 0x1
#define V_FW_TLS_KEYCTX_TX_WR_WRITE_RX(x) \
((x) << S_FW_TLS_KEYCTX_TX_WR_WRITE_RX)
#define G_FW_TLS_KEYCTX_TX_WR_WRITE_RX(x) \
(((x) >> S_FW_TLS_KEYCTX_TX_WR_WRITE_RX) & M_FW_TLS_KEYCTX_TX_WR_WRITE_RX)
#define F_FW_TLS_KEYCTX_TX_WR_WRITE_RX V_FW_TLS_KEYCTX_TX_WR_WRITE_RX(1U)
struct fw_crypto_lookaside_wr {
__be32 op_to_cctx_size;
__be32 len16_pkd;
__be32 session_id;
@ -3395,116 +3818,116 @@ struct fw_sec_lookaside_lpbk_wr {
__be64 cookie;
};
#define S_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE 24
#define M_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE 0xff
#define V_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_OPCODE)
#define S_FW_CRYPTO_LOOKASIDE_WR_OPCODE 24
#define M_FW_CRYPTO_LOOKASIDE_WR_OPCODE 0xff
#define V_FW_CRYPTO_LOOKASIDE_WR_OPCODE(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_OPCODE)
#define G_FW_CRYPTO_LOOKASIDE_WR_OPCODE(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_OPCODE) & \
M_FW_CRYPTO_LOOKASIDE_WR_OPCODE)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_COMPL 23
#define M_FW_SEC_LOOKASIDE_LPBK_WR_COMPL 0x1
#define V_FW_SEC_LOOKASIDE_LPBK_WR_COMPL(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_COMPL)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_COMPL(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_COMPL) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_COMPL)
#define F_FW_SEC_LOOKASIDE_LPBK_WR_COMPL V_FW_SEC_LOOKASIDE_LPBK_WR_COMPL(1U)
#define S_FW_CRYPTO_LOOKASIDE_WR_COMPL 23
#define M_FW_CRYPTO_LOOKASIDE_WR_COMPL 0x1
#define V_FW_CRYPTO_LOOKASIDE_WR_COMPL(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_COMPL)
#define G_FW_CRYPTO_LOOKASIDE_WR_COMPL(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_COMPL) & \
M_FW_CRYPTO_LOOKASIDE_WR_COMPL)
#define F_FW_CRYPTO_LOOKASIDE_WR_COMPL V_FW_CRYPTO_LOOKASIDE_WR_COMPL(1U)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN 15
#define M_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN 0xff
#define V_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_IMM_LEN)
#define S_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN 15
#define M_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN 0xff
#define V_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN)
#define G_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN) & \
M_FW_CRYPTO_LOOKASIDE_WR_IMM_LEN)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC 5
#define M_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC 0x3
#define V_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_LOC)
#define S_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC 5
#define M_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC 0x3
#define V_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC)
#define G_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC) & \
M_FW_CRYPTO_LOOKASIDE_WR_CCTX_LOC)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE 0
#define M_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE 0x1f
#define V_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_CCTX_SIZE)
#define S_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE 0
#define M_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE 0x1f
#define V_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE)
#define G_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE) & \
M_FW_CRYPTO_LOOKASIDE_WR_CCTX_SIZE)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_LEN16 0
#define M_FW_SEC_LOOKASIDE_LPBK_WR_LEN16 0xff
#define V_FW_SEC_LOOKASIDE_LPBK_WR_LEN16(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_LEN16)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_LEN16(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_LEN16) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_LEN16)
#define S_FW_CRYPTO_LOOKASIDE_WR_LEN16 0
#define M_FW_CRYPTO_LOOKASIDE_WR_LEN16 0xff
#define V_FW_CRYPTO_LOOKASIDE_WR_LEN16(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_LEN16)
#define G_FW_CRYPTO_LOOKASIDE_WR_LEN16(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_LEN16) & \
M_FW_CRYPTO_LOOKASIDE_WR_LEN16)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID 29
#define M_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID 0x3
#define V_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_RX_CHID)
#define S_FW_CRYPTO_LOOKASIDE_WR_RX_CHID 29
#define M_FW_CRYPTO_LOOKASIDE_WR_RX_CHID 0x3
#define V_FW_CRYPTO_LOOKASIDE_WR_RX_CHID(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_RX_CHID)
#define G_FW_CRYPTO_LOOKASIDE_WR_RX_CHID(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_RX_CHID) & \
M_FW_CRYPTO_LOOKASIDE_WR_RX_CHID)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_LCB 27
#define M_FW_SEC_LOOKASIDE_LPBK_WR_LCB 0x3
#define V_FW_SEC_LOOKASIDE_LPBK_WR_LCB(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_LCB)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_LCB(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_LCB) & M_FW_SEC_LOOKASIDE_LPBK_WR_LCB)
#define S_FW_CRYPTO_LOOKASIDE_WR_LCB 27
#define M_FW_CRYPTO_LOOKASIDE_WR_LCB 0x3
#define V_FW_CRYPTO_LOOKASIDE_WR_LCB(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_LCB)
#define G_FW_CRYPTO_LOOKASIDE_WR_LCB(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_LCB) & M_FW_CRYPTO_LOOKASIDE_WR_LCB)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_PHASH 25
#define M_FW_SEC_LOOKASIDE_LPBK_WR_PHASH 0x3
#define V_FW_SEC_LOOKASIDE_LPBK_WR_PHASH(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_PHASH)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_PHASH(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_PHASH) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_PHASH)
#define S_FW_CRYPTO_LOOKASIDE_WR_PHASH 25
#define M_FW_CRYPTO_LOOKASIDE_WR_PHASH 0x3
#define V_FW_CRYPTO_LOOKASIDE_WR_PHASH(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_PHASH)
#define G_FW_CRYPTO_LOOKASIDE_WR_PHASH(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_PHASH) & \
M_FW_CRYPTO_LOOKASIDE_WR_PHASH)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_IV 23
#define M_FW_SEC_LOOKASIDE_LPBK_WR_IV 0x3
#define V_FW_SEC_LOOKASIDE_LPBK_WR_IV(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_IV)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_IV(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_IV) & M_FW_SEC_LOOKASIDE_LPBK_WR_IV)
#define S_FW_CRYPTO_LOOKASIDE_WR_IV 23
#define M_FW_CRYPTO_LOOKASIDE_WR_IV 0x3
#define V_FW_CRYPTO_LOOKASIDE_WR_IV(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_IV)
#define G_FW_CRYPTO_LOOKASIDE_WR_IV(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_IV) & M_FW_CRYPTO_LOOKASIDE_WR_IV)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH 10
#define M_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH 0x3
#define V_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_TX_CH)
#define S_FW_CRYPTO_LOOKASIDE_WR_TX_CH 10
#define M_FW_CRYPTO_LOOKASIDE_WR_TX_CH 0x3
#define V_FW_CRYPTO_LOOKASIDE_WR_TX_CH(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_TX_CH)
#define G_FW_CRYPTO_LOOKASIDE_WR_TX_CH(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_TX_CH) & \
M_FW_CRYPTO_LOOKASIDE_WR_TX_CH)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID 0
#define M_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID 0x3ff
#define V_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_RX_Q_ID)
#define S_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID 0
#define M_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID 0x3ff
#define V_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID)
#define G_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID) & \
M_FW_CRYPTO_LOOKASIDE_WR_RX_Q_ID)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE 24
#define M_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE 0xff
#define V_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_PLD_SIZE)
#define S_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE 24
#define M_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE 0xff
#define V_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE)
#define G_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE) & \
M_FW_CRYPTO_LOOKASIDE_WR_PLD_SIZE)
#define S_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE 17
#define M_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE 0x7f
#define V_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE(x) \
((x) << S_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE)
#define G_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE(x) \
(((x) >> S_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE) & \
M_FW_SEC_LOOKASIDE_LPBK_WR_HASH_SIZE)
#define S_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE 17
#define M_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE 0x7f
#define V_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE(x) \
((x) << S_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE)
#define G_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE(x) \
(((x) >> S_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE) & \
M_FW_CRYPTO_LOOKASIDE_WR_HASH_SIZE)
/******************************************************************************
* C O M M A N D s
@ -4095,8 +4518,9 @@ enum fw_caps_config_iscsi {
FW_CAPS_CONFIG_ISCSI_TARGET_CMDOFLD = 0x00000100,
};
enum fw_caps_config_tls {
FW_CAPS_CONFIG_TLSKEYS = 0x00000001,
enum fw_caps_config_crypto {
FW_CAPS_CONFIG_CRYPTO_LOOKASIDE = 0x00000001,
FW_CAPS_CONFIG_TLSKEYS = 0x00000002,
};
enum fw_caps_config_fcoe {
@ -4128,7 +4552,7 @@ struct fw_caps_config_cmd {
__be16 niccaps;
__be16 toecaps;
__be16 rdmacaps;
__be16 tlscaps;
__be16 cryptocaps;
__be16 iscsicaps;
__be16 fcoecaps;
__be32 cfcsum;

View file

@ -355,8 +355,8 @@ TUNABLE_INT("hw.cxgbe.toecaps_allowed", &t4_toecaps_allowed);
static int t4_rdmacaps_allowed = -1;
TUNABLE_INT("hw.cxgbe.rdmacaps_allowed", &t4_rdmacaps_allowed);
static int t4_tlscaps_allowed = 0;
TUNABLE_INT("hw.cxgbe.tlscaps_allowed", &t4_tlscaps_allowed);
static int t4_cryptocaps_allowed = 0;
TUNABLE_INT("hw.cxgbe.cryptocaps_allowed", &t4_cryptocaps_allowed);
static int t4_iscsicaps_allowed = -1;
TUNABLE_INT("hw.cxgbe.iscsicaps_allowed", &t4_iscsicaps_allowed);
@ -3114,7 +3114,7 @@ use_config_on_flash:
LIMIT_CAPS(niccaps);
LIMIT_CAPS(toecaps);
LIMIT_CAPS(rdmacaps);
LIMIT_CAPS(tlscaps);
LIMIT_CAPS(cryptocaps);
LIMIT_CAPS(iscsicaps);
LIMIT_CAPS(fcoecaps);
#undef LIMIT_CAPS
@ -3251,7 +3251,7 @@ get_params__post_init(struct adapter *sc)
READ_CAPS(niccaps);
READ_CAPS(toecaps);
READ_CAPS(rdmacaps);
READ_CAPS(tlscaps);
READ_CAPS(cryptocaps);
READ_CAPS(iscsicaps);
READ_CAPS(fcoecaps);
@ -4684,7 +4684,7 @@ static char *caps_decoder[] = {
"\005INITIATOR_SSNOFLD\006TARGET_SSNOFLD"
"\007T10DIF"
"\010INITIATOR_CMDOFLD\011TARGET_CMDOFLD",
"\20\00KEYS", /* 7: TLS */
"\20\001LOOKASIDE\002TLSKEYS", /* 7: Crypto */
"\20\001INITIATOR\002TARGET\003CTRL_OFLD" /* 8: FCoE */
"\004PO_INITIATOR\005PO_TARGET",
};
@ -4792,7 +4792,7 @@ t4_sysctls(struct adapter *sc)
SYSCTL_CAP(toecaps, 4, "TCP offload");
SYSCTL_CAP(rdmacaps, 5, "RDMA");
SYSCTL_CAP(iscsicaps, 6, "iSCSI");
SYSCTL_CAP(tlscaps, 7, "TLS");
SYSCTL_CAP(cryptocaps, 7, "crypto");
SYSCTL_CAP(fcoecaps, 8, "FCoE");
#undef SYSCTL_CAP