aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/avf/avf.h
diff options
context:
space:
mode:
authorChenmin Sun <chenmin.sun@intel.com>2020-11-20 05:06:41 +0800
committerDamjan Marion <dmarion@me.com>2021-03-26 08:30:54 +0000
commit245fb34b33e062d9831da7e834c3b1fd9cf4c2b4 (patch)
treeabf2e1e3509b99481c274e1b00ca71ca62531701 /src/plugins/avf/avf.h
parentffe9a5489499467dfb5a2ee0fed14e397f5f825c (diff)
avf: handle flow id in data path
Type: improvement Signed-off-by: Chenmin Sun <chenmin.sun@intel.com> Change-Id: I24fa52fee88dabad8f0b84446f796ee055819617
Diffstat (limited to 'src/plugins/avf/avf.h')
-rw-r--r--src/plugins/avf/avf.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/plugins/avf/avf.h b/src/plugins/avf/avf.h
index 6c09084eb8c..51a81c65e29 100644
--- a/src/plugins/avf/avf.h
+++ b/src/plugins/avf/avf.h
@@ -47,6 +47,7 @@
#define AVF_RXD_STATUS(x) (1ULL << x)
#define AVF_RXD_STATUS_DD AVF_RXD_STATUS(0)
#define AVF_RXD_STATUS_EOP AVF_RXD_STATUS(1)
+#define AVF_RXD_STATUS_FLM AVF_RXD_STATUS (11)
#define AVF_RXD_ERROR_SHIFT 19
#define AVF_RXD_PTYPE_SHIFT 30
#define AVF_RXD_LEN_SHIFT 38
@@ -134,6 +135,10 @@ typedef volatile struct
u64 rsv2:3;
u64 ptype:8;
u64 length:26;
+
+ u64 rsv3 : 64;
+ u32 flex_lo;
+ u32 fdid_flex_hi;
};
u64 qword[4];
#ifdef CLIB_HAVE_VEC256
@@ -298,7 +303,9 @@ typedef struct
{
CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
vlib_buffer_t *bufs[AVF_RX_VECTOR_SZ];
+ u16 next[AVF_RX_VECTOR_SZ];
u64 qw1s[AVF_RX_VECTOR_SZ];
+ u32 flow_ids[AVF_RX_VECTOR_SZ];
avf_rx_tail_t tails[AVF_RX_VECTOR_SZ];
vlib_buffer_t buffer_template;
} avf_per_thread_data_t;
@@ -436,6 +443,7 @@ typedef struct
u16 qid;
u16 next_index;
u32 hw_if_index;
+ u32 flow_id;
u64 qw1s[AVF_RX_MAX_DESC_IN_CHAIN];
} avf_input_trace_t;