X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fice%2Fbase%2Fice_parser_rt.h;h=28350d018a981fdb168c441b36ab451e12092655;hb=61da0fe6c46ab11aeeeb8a9bd939b98ef50eca15;hp=32fa7f6579924e3897da092359ed2e7d926b94b9;hpb=c84f8aa2100c75f60827e53379c2ff4b98b13de1;p=dpdk.git diff --git a/drivers/net/ice/base/ice_parser_rt.h b/drivers/net/ice/base/ice_parser_rt.h index 32fa7f6579..28350d018a 100644 --- a/drivers/net/ice/base/ice_parser_rt.h +++ b/drivers/net/ice/base/ice_parser_rt.h @@ -9,13 +9,38 @@ struct ice_parser_ctx; #define ICE_PARSER_MAX_PKT_LEN 504 #define ICE_PARSER_GPR_NUM 128 +#define ICE_PARSER_HDR_BUF_LEN 32 +#define ICE_PARSER_BST_KEY_LEN 20 +#define ICE_PARSER_MARKER_NUM_IN_BYTES 9 /* 72 bits */ +#define ICE_PARSER_PROTO_NUM 256 + +struct ice_gpr_pu { + /* flag to indicate if GRP needs to be updated */ + bool gpr_val_upd[ICE_PARSER_GPR_NUM]; + u16 gpr_val[ICE_PARSER_GPR_NUM]; + u64 flg_msk; + u64 flg_val; + u16 err_msk; + u16 err_val; +}; struct ice_parser_rt { struct ice_parser *psr; u16 gpr[ICE_PARSER_GPR_NUM]; - u8 pkt_buf[ICE_PARSER_MAX_PKT_LEN + 32]; + u8 pkt_buf[ICE_PARSER_MAX_PKT_LEN + ICE_PARSER_HDR_BUF_LEN]; u16 pkt_len; u16 po; + u8 bst_key[ICE_PARSER_BST_KEY_LEN]; + struct ice_pg_cam_key pg_key; + struct ice_alu *alu0; + struct ice_alu *alu1; + struct ice_alu *alu2; + struct ice_pg_cam_action *action; + u8 pg; + struct ice_gpr_pu pu; + u8 markers[ICE_PARSER_MARKER_NUM_IN_BYTES]; + bool protocols[ICE_PARSER_PROTO_NUM]; + u16 offsets[ICE_PARSER_PROTO_NUM]; }; void ice_parser_rt_reset(struct ice_parser_rt *rt);