cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

fw.h (1708B)


      1/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
      2/* Copyright (C) 2019 Netronome Systems, Inc. */
      3
      4#ifndef NFP_CRYPTO_FW_H
      5#define NFP_CRYPTO_FW_H 1
      6
      7#include "../ccm.h"
      8
      9#define NFP_NET_CRYPTO_OP_TLS_1_2_AES_GCM_128_ENC	0
     10#define NFP_NET_CRYPTO_OP_TLS_1_2_AES_GCM_128_DEC	1
     11
     12struct nfp_net_tls_resync_req {
     13	__be32 fw_handle[2];
     14	__be32 tcp_seq;
     15	u8 l3_offset;
     16	u8 l4_offset;
     17	u8 resv[2];
     18};
     19
     20struct nfp_crypto_reply_simple {
     21	struct nfp_ccm_hdr hdr;
     22	__be32 error;
     23};
     24
     25struct nfp_crypto_req_reset {
     26	struct nfp_ccm_hdr hdr;
     27	__be32 ep_id;
     28};
     29
     30#define NFP_NET_TLS_IPVER		GENMASK(15, 12)
     31#define NFP_NET_TLS_VLAN		GENMASK(11, 0)
     32#define NFP_NET_TLS_VLAN_UNUSED			4095
     33
     34struct nfp_crypto_req_add_front {
     35	struct nfp_ccm_hdr hdr;
     36	__be32 ep_id;
     37	u8 resv[3];
     38	u8 opcode;
     39	u8 key_len;
     40	__be16 ipver_vlan __packed;
     41	u8 l4_proto;
     42#define NFP_NET_TLS_NON_ADDR_KEY_LEN	8
     43	u8 l3_addrs[];
     44};
     45
     46struct nfp_crypto_req_add_back {
     47	__be16 src_port;
     48	__be16 dst_port;
     49	__be32 key[8];
     50	__be32 salt;
     51	__be32 iv[2];
     52	__be32 counter;
     53	__be32 rec_no[2];
     54	__be32 tcp_seq;
     55};
     56
     57struct nfp_crypto_req_add_v4 {
     58	struct nfp_crypto_req_add_front front;
     59	__be32 src_ip;
     60	__be32 dst_ip;
     61	struct nfp_crypto_req_add_back back;
     62};
     63
     64struct nfp_crypto_req_add_v6 {
     65	struct nfp_crypto_req_add_front front;
     66	__be32 src_ip[4];
     67	__be32 dst_ip[4];
     68	struct nfp_crypto_req_add_back back;
     69};
     70
     71struct nfp_crypto_reply_add {
     72	struct nfp_ccm_hdr hdr;
     73	__be32 error;
     74	__be32 handle[2];
     75};
     76
     77struct nfp_crypto_req_del {
     78	struct nfp_ccm_hdr hdr;
     79	__be32 ep_id;
     80	__be32 handle[2];
     81};
     82
     83struct nfp_crypto_req_update {
     84	struct nfp_ccm_hdr hdr;
     85	__be32 ep_id;
     86	u8 resv[3];
     87	u8 opcode;
     88	__be32 handle[2];
     89	__be32 rec_no[2];
     90	__be32 tcp_seq;
     91};
     92#endif