net/bnxt: support application ID in ULP matcher

The application id in the ULP matcher makes the template matching
restrict to only flows that are supported for that application.

Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com>
Signed-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>
Reviewed-by: Shahaji Bhosle <sbhosle@broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
This commit is contained in:
Kishore Padmanabha 2021-05-30 14:29:21 +05:30 committed by Ajit Khaparde
parent 286569d5ed
commit 5b73c859f4
10 changed files with 3886 additions and 3082 deletions

View File

@ -99,6 +99,7 @@ bnxt_ulp_init_mapper_params(struct bnxt_ulp_mapper_create_parms *mapper_cparms,
mapper_cparms->fld_bitmap = &params->fld_bitmap;
mapper_cparms->flow_pattern_id = params->flow_pattern_id;
mapper_cparms->act_pattern_id = params->act_pattern_id;
mapper_cparms->app_id = params->app_id;
/* update the signature fields into the computed field list */
ULP_COMP_FLD_IDX_WR(params, BNXT_ULP_CF_IDX_HDR_SIG_ID,
@ -140,6 +141,11 @@ bnxt_ulp_flow_create(struct rte_eth_dev *dev,
memset(&params, 0, sizeof(struct ulp_rte_parser_params));
params.ulp_ctx = ulp_ctx;
if (bnxt_ulp_cntxt_app_id_get(params.ulp_ctx, &params.app_id)) {
BNXT_TF_DBG(ERR, "failed to get the app id\n");
goto flow_error;
}
/* Set the flow attributes */
bnxt_ulp_set_dir_attributes(&params, attr);
@ -258,6 +264,11 @@ bnxt_ulp_flow_validate(struct rte_eth_dev *dev,
memset(&params, 0, sizeof(struct ulp_rte_parser_params));
params.ulp_ctx = ulp_ctx;
if (bnxt_ulp_cntxt_app_id_get(params.ulp_ctx, &params.app_id)) {
BNXT_TF_DBG(ERR, "failed to get the app id\n");
goto parse_error;
}
/* Set the flow attributes */
bnxt_ulp_set_dir_attributes(&params, attr);

View File

@ -225,8 +225,11 @@ ulp_mapper_glb_field_tbl_get(struct bnxt_ulp_mapper_parms *parms,
{
uint32_t t_idx;
t_idx = parms->class_tid << (BNXT_ULP_HDR_SIG_ID_SHIFT +
BNXT_ULP_GLB_FIELD_TBL_SHIFT);
t_idx = parms->app_id << (BNXT_ULP_APP_ID_SHIFT +
BNXT_ULP_HDR_SIG_ID_SHIFT +
BNXT_ULP_GLB_FIELD_TBL_SHIFT);
t_idx += parms->class_tid << (BNXT_ULP_HDR_SIG_ID_SHIFT +
BNXT_ULP_GLB_FIELD_TBL_SHIFT);
t_idx += ULP_COMP_FLD_IDX_RD(parms, BNXT_ULP_CF_IDX_HDR_SIG_ID) <<
BNXT_ULP_GLB_FIELD_TBL_SHIFT;
t_idx += operand;
@ -1350,21 +1353,18 @@ ulp_mapper_field_opc_process(struct bnxt_ulp_mapper_parms *parms,
/* process the field opcodes */
switch (fld->field_opc) {
case BNXT_ULP_FIELD_OPC_SRC1:
if (ulp_mapper_field_blob_write(fld->field_src1,
blob, val1, val1_len, &val))
goto error;
rc = ulp_mapper_field_blob_write(fld->field_src1,
blob, val1, val1_len, &val);
val_len = val1_len;
break;
case BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3:
if (value1) {
if (ulp_mapper_field_blob_write(fld->field_src2, blob,
val2, val2_len, &val))
goto error;
rc = ulp_mapper_field_blob_write(fld->field_src2, blob,
val2, val2_len, &val);
val_len = val2_len;
} else {
if (ulp_mapper_field_blob_write(fld->field_src3, blob,
val3, val3_len, &val))
goto error;
rc = ulp_mapper_field_blob_write(fld->field_src3, blob,
val3, val3_len, &val);
val_len = val3_len;
}
break;
@ -1373,60 +1373,50 @@ ulp_mapper_field_opc_process(struct bnxt_ulp_mapper_parms *parms,
val_int = val1_int + val2_int;
val_int = tfp_cpu_to_be_64(val_int);
val = ulp_blob_push_64(blob, &val_int, fld->field_bit_size);
if (!val) {
BNXT_TF_DBG(ERR, "push to blob failed\n");
goto error;
}
if (!val)
rc = -EINVAL;
break;
case BNXT_ULP_FIELD_OPC_SRC1_MINUS_SRC2:
case BNXT_ULP_FIELD_OPC_SRC1_MINUS_SRC2_POST:
val_int = val1_int - val2_int;
val_int = tfp_cpu_to_be_64(val_int);
val = ulp_blob_push_64(blob, &val_int, fld->field_bit_size);
if (!val) {
BNXT_TF_DBG(ERR, "push to blob failed\n");
goto error;
}
if (!val)
rc = -EINVAL;
break;
case BNXT_ULP_FIELD_OPC_SRC1_OR_SRC2:
val_int = val1_int | val2_int;
val_int = tfp_cpu_to_be_64(val_int);
val = ulp_blob_push_64(blob, &val_int, fld->field_bit_size);
if (!val) {
BNXT_TF_DBG(ERR, "push to blob failed\n");
goto error;
}
if (!val)
rc = -EINVAL;
break;
case BNXT_ULP_FIELD_OPC_SRC1_OR_SRC2_OR_SRC3:
val_int = val1_int | val2_int | val3_int;
val_int = tfp_cpu_to_be_64(val_int);
val = ulp_blob_push_64(blob, &val_int, fld->field_bit_size);
if (!val) {
BNXT_TF_DBG(ERR, "push to blob failed\n");
goto error;
}
if (!val)
rc = -EINVAL;
break;
case BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2:
val_int = val1_int & val2_int;
val_int = tfp_cpu_to_be_64(val_int);
val = ulp_blob_push_64(blob, &val_int, fld->field_bit_size);
if (!val) {
BNXT_TF_DBG(ERR, "push to blob failed\n");
goto error;
}
if (!val)
rc = -EINVAL;
break;
case BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3:
val_int = val1_int & (val2_int | val3_int);
val_int = tfp_cpu_to_be_64(val_int);
val = ulp_blob_push_64(blob, &val_int, fld->field_bit_size);
if (!val) {
BNXT_TF_DBG(ERR, "push to blob failed\n");
goto error;
}
if (!val)
rc = -EINVAL;
break;
case BNXT_ULP_FIELD_OPC_SKIP:
break;
default:
BNXT_TF_DBG(ERR, "Invalid fld opcode %u\n", fld->field_opc);
rc = -EINVAL;
break;
}
@ -3703,6 +3693,7 @@ ulp_mapper_flow_create(struct bnxt_ulp_context *ulp_ctx,
parms.app_priority = cparms->app_priority;
parms.flow_pattern_id = cparms->flow_pattern_id;
parms.act_pattern_id = cparms->act_pattern_id;
parms.app_id = cparms->app_id;
/* Get the device id from the ulp context */
if (bnxt_ulp_cntxt_dev_id_get(ulp_ctx, &parms.dev_id)) {

View File

@ -61,6 +61,7 @@ struct bnxt_ulp_mapper_parms {
uint64_t shared_hndl;
uint32_t flow_pattern_id;
uint32_t act_pattern_id;
uint8_t app_id;
};
struct bnxt_ulp_mapper_create_parms {
@ -88,7 +89,7 @@ struct bnxt_ulp_mapper_create_parms {
/* support pattern based rejection */
uint32_t flow_pattern_id;
uint32_t act_pattern_id;
uint8_t app_id;
};
/* Function to initialize any dynamic mapper data. */

View File

@ -23,13 +23,15 @@ ulp_matcher_class_hash_calculate(uint64_t hi_sig, uint64_t lo_sig)
/* Utility function to calculate the action matcher hash */
static uint32_t
ulp_matcher_action_hash_calculate(uint64_t hi_sig)
ulp_matcher_action_hash_calculate(uint64_t hi_sig, uint64_t app_id)
{
uint64_t hash;
hi_sig |= ((hi_sig % BNXT_ULP_ACT_HID_HIGH_PRIME) <<
BNXT_ULP_ACT_HID_SHFTL);
hash = hi_sig;
app_id |= ((app_id % BNXT_ULP_CLASS_HID_LOW_PRIME) <<
(BNXT_ULP_CLASS_HID_SHFTL + 2));
hash = hi_sig ^ app_id;
hash = (hash >> BNXT_ULP_ACT_HID_SHFTR) & BNXT_ULP_ACT_HID_MASK;
return (uint32_t)hash;
}
@ -51,7 +53,8 @@ ulp_matcher_pattern_match(struct ulp_rte_parser_params *params,
vf_to_vf = ULP_COMP_FLD_IDX_RD(params, BNXT_ULP_CF_IDX_VF_TO_VF);
/* calculate the hash of the given flow */
class_hid = ulp_matcher_class_hash_calculate(params->hdr_bitmap.bits,
class_hid = ulp_matcher_class_hash_calculate((params->hdr_bitmap.bits ^
params->app_id),
params->fld_s_bitmap.bits);
/* validate the calculate hash values */
@ -70,6 +73,14 @@ ulp_matcher_pattern_match(struct ulp_rte_parser_params *params,
BNXT_TF_DBG(DEBUG, "Field signature does not match\n");
goto error;
}
/* Match the application id before proceeding */
if (params->app_id != class_match->app_sig) {
BNXT_TF_DBG(DEBUG, "Field to match the app id %u:%u\n",
params->app_id, class_match->app_sig);
goto error;
}
if (vf_to_vf != class_match->act_vnic) {
BNXT_TF_DBG(DEBUG, "Vnic Match failed\n");
goto error;
@ -101,7 +112,8 @@ ulp_matcher_action_match(struct ulp_rte_parser_params *params,
struct bnxt_ulp_act_match_info *act_match;
/* calculate the hash of the given flow action */
act_hid = ulp_matcher_action_hash_calculate(params->act_bitmap.bits);
act_hid = ulp_matcher_action_hash_calculate(params->act_bitmap.bits,
params->app_id);
/* validate the calculate hash values */
if (act_hid >= BNXT_ULP_ACT_SIG_TBL_MAX_SZ)
@ -115,6 +127,14 @@ ulp_matcher_action_match(struct ulp_rte_parser_params *params,
BNXT_TF_DBG(DEBUG, "Action Header does not match\n");
goto error;
}
/* Match the application id before proceeding */
if (params->app_id != act_match->app_sig) {
BNXT_TF_DBG(DEBUG, "Field to match the app id %u:%u\n",
params->app_id, act_match->app_sig);
goto error;
}
*act_id = act_match->act_tid;
params->act_pattern_id = act_match->act_pattern_id;
BNXT_TF_DBG(DEBUG, "Found matching action template %u\n", *act_id);

View File

@ -3,7 +3,7 @@
* All rights reserved.
*/
/* date: Tue Jan 26 15:51:49 2021 */
/* date: Wed Mar 17 11:31:19 2021 */
#include "ulp_template_db_enum.h"
#include "ulp_template_db_field.h"
@ -107,6 +107,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[1] = {
.act_hid = BNXT_ULP_ACT_HID_0000,
.act_pattern_id = 0,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_FLOW_DIR_BITMASK_ING },
.act_tid = 1
@ -114,6 +115,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[2] = {
.act_hid = BNXT_ULP_ACT_HID_0001,
.act_pattern_id = 1,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DROP |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -122,6 +124,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[3] = {
.act_hid = BNXT_ULP_ACT_HID_0400,
.act_pattern_id = 2,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_POP_VLAN |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -130,6 +133,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[4] = {
.act_hid = BNXT_ULP_ACT_HID_01ab,
.act_pattern_id = 3,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -138,6 +142,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[5] = {
.act_hid = BNXT_ULP_ACT_HID_0010,
.act_pattern_id = 4,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_VXLAN_DECAP |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -146,6 +151,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[6] = {
.act_hid = BNXT_ULP_ACT_HID_05ab,
.act_pattern_id = 5,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_POP_VLAN |
@ -155,6 +161,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[7] = {
.act_hid = BNXT_ULP_ACT_HID_01bb,
.act_pattern_id = 6,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_VXLAN_DECAP |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -164,6 +171,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[8] = {
.act_hid = BNXT_ULP_ACT_HID_0002,
.act_pattern_id = 7,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -172,6 +180,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[9] = {
.act_hid = BNXT_ULP_ACT_HID_0003,
.act_pattern_id = 8,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_DROP |
@ -181,6 +190,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[10] = {
.act_hid = BNXT_ULP_ACT_HID_0402,
.act_pattern_id = 9,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_POP_VLAN |
@ -190,6 +200,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[11] = {
.act_hid = BNXT_ULP_ACT_HID_01ad,
.act_pattern_id = 10,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -199,6 +210,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[12] = {
.act_hid = BNXT_ULP_ACT_HID_0012,
.act_pattern_id = 11,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_VXLAN_DECAP |
@ -208,6 +220,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[13] = {
.act_hid = BNXT_ULP_ACT_HID_05ad,
.act_pattern_id = 12,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -218,6 +231,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[14] = {
.act_hid = BNXT_ULP_ACT_HID_01bd,
.act_pattern_id = 13,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_VXLAN_DECAP |
@ -228,6 +242,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[15] = {
.act_hid = BNXT_ULP_ACT_HID_0613,
.act_pattern_id = 14,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_DROP |
@ -237,6 +252,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[16] = {
.act_hid = BNXT_ULP_ACT_HID_02a9,
.act_pattern_id = 15,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_POP_VLAN |
@ -246,6 +262,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[17] = {
.act_hid = BNXT_ULP_ACT_HID_0054,
.act_pattern_id = 16,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -255,6 +272,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[18] = {
.act_hid = BNXT_ULP_ACT_HID_0622,
.act_pattern_id = 17,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_VXLAN_DECAP |
@ -264,6 +282,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[19] = {
.act_hid = BNXT_ULP_ACT_HID_0454,
.act_pattern_id = 18,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -274,6 +293,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[20] = {
.act_hid = BNXT_ULP_ACT_HID_0064,
.act_pattern_id = 19,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_VXLAN_DECAP |
@ -284,6 +304,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[21] = {
.act_hid = BNXT_ULP_ACT_HID_0614,
.act_pattern_id = 20,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -293,6 +314,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[22] = {
.act_hid = BNXT_ULP_ACT_HID_0615,
.act_pattern_id = 21,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -303,6 +325,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[23] = {
.act_hid = BNXT_ULP_ACT_HID_02ab,
.act_pattern_id = 22,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -313,6 +336,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[24] = {
.act_hid = BNXT_ULP_ACT_HID_0056,
.act_pattern_id = 23,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -323,6 +347,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[25] = {
.act_hid = BNXT_ULP_ACT_HID_0624,
.act_pattern_id = 24,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -333,6 +358,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[26] = {
.act_hid = BNXT_ULP_ACT_HID_0456,
.act_pattern_id = 25,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -344,6 +370,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[27] = {
.act_hid = BNXT_ULP_ACT_HID_0066,
.act_pattern_id = 26,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
BNXT_ULP_ACT_BIT_COUNT |
@ -355,6 +382,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[28] = {
.act_hid = BNXT_ULP_ACT_HID_048d,
.act_pattern_id = 0,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED |
BNXT_ULP_ACT_BIT_SAMPLE |
@ -364,6 +392,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[29] = {
.act_hid = BNXT_ULP_ACT_HID_048f,
.act_pattern_id = 1,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SHARED |
BNXT_ULP_ACT_BIT_SAMPLE |
@ -374,6 +403,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[30] = {
.act_hid = BNXT_ULP_ACT_HID_04bc,
.act_pattern_id = 0,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -382,6 +412,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[31] = {
.act_hid = BNXT_ULP_ACT_HID_00a9,
.act_pattern_id = 1,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
BNXT_ULP_ACT_BIT_SET_TP_SRC |
@ -391,6 +422,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[32] = {
.act_hid = BNXT_ULP_ACT_HID_020f,
.act_pattern_id = 2,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
BNXT_ULP_FLOW_DIR_BITMASK_ING },
@ -399,6 +431,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[33] = {
.act_hid = BNXT_ULP_ACT_HID_04a9,
.act_pattern_id = 3,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
BNXT_ULP_ACT_BIT_SET_TP_SRC |
@ -409,6 +442,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[34] = {
.act_hid = BNXT_ULP_ACT_HID_01fc,
.act_pattern_id = 4,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -420,6 +454,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[35] = {
.act_hid = BNXT_ULP_ACT_HID_04be,
.act_pattern_id = 5,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -429,6 +464,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[36] = {
.act_hid = BNXT_ULP_ACT_HID_00ab,
.act_pattern_id = 6,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -439,6 +475,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[37] = {
.act_hid = BNXT_ULP_ACT_HID_0211,
.act_pattern_id = 7,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -448,6 +485,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[38] = {
.act_hid = BNXT_ULP_ACT_HID_04ab,
.act_pattern_id = 8,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -459,6 +497,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[39] = {
.act_hid = BNXT_ULP_ACT_HID_01fe,
.act_pattern_id = 9,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -471,6 +510,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[40] = {
.act_hid = BNXT_ULP_ACT_HID_0667,
.act_pattern_id = 10,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -480,6 +520,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[41] = {
.act_hid = BNXT_ULP_ACT_HID_0254,
.act_pattern_id = 11,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -490,6 +531,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[42] = {
.act_hid = BNXT_ULP_ACT_HID_03ba,
.act_pattern_id = 12,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -499,6 +541,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[43] = {
.act_hid = BNXT_ULP_ACT_HID_0654,
.act_pattern_id = 13,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -510,6 +553,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[44] = {
.act_hid = BNXT_ULP_ACT_HID_03a7,
.act_pattern_id = 14,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -522,6 +566,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[45] = {
.act_hid = BNXT_ULP_ACT_HID_0669,
.act_pattern_id = 15,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -532,6 +577,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[46] = {
.act_hid = BNXT_ULP_ACT_HID_0256,
.act_pattern_id = 16,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -543,6 +589,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[47] = {
.act_hid = BNXT_ULP_ACT_HID_03bc,
.act_pattern_id = 17,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -553,6 +600,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[48] = {
.act_hid = BNXT_ULP_ACT_HID_0656,
.act_pattern_id = 18,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -565,6 +613,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[49] = {
.act_hid = BNXT_ULP_ACT_HID_03a9,
.act_pattern_id = 19,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -578,6 +627,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[50] = {
.act_hid = BNXT_ULP_ACT_HID_021b,
.act_pattern_id = 0,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
.act_tid = 4
@ -585,6 +635,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[51] = {
.act_hid = BNXT_ULP_ACT_HID_021c,
.act_pattern_id = 1,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DROP |
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
@ -593,6 +644,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[52] = {
.act_hid = BNXT_ULP_ACT_HID_021e,
.act_pattern_id = 2,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DROP |
BNXT_ULP_ACT_BIT_COUNT |
@ -602,6 +654,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[53] = {
.act_hid = BNXT_ULP_ACT_HID_063f,
.act_pattern_id = 3,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_VLAN_PCP |
BNXT_ULP_ACT_BIT_SET_VLAN_VID |
@ -612,6 +665,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[54] = {
.act_hid = BNXT_ULP_ACT_HID_0510,
.act_pattern_id = 4,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_VLAN_VID |
BNXT_ULP_ACT_BIT_PUSH_VLAN |
@ -621,6 +675,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[55] = {
.act_hid = BNXT_ULP_ACT_HID_03c6,
.act_pattern_id = 5,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
@ -629,6 +684,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[56] = {
.act_hid = BNXT_ULP_ACT_HID_0082,
.act_pattern_id = 6,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_VLAN_PCP |
@ -640,6 +696,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[57] = {
.act_hid = BNXT_ULP_ACT_HID_06bb,
.act_pattern_id = 7,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_VLAN_VID |
@ -650,6 +707,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[58] = {
.act_hid = BNXT_ULP_ACT_HID_021d,
.act_pattern_id = 8,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
@ -658,6 +716,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[59] = {
.act_hid = BNXT_ULP_ACT_HID_0641,
.act_pattern_id = 9,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_VLAN_PCP |
@ -669,6 +728,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[60] = {
.act_hid = BNXT_ULP_ACT_HID_0512,
.act_pattern_id = 10,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_VLAN_VID |
@ -679,6 +739,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[61] = {
.act_hid = BNXT_ULP_ACT_HID_03c8,
.act_pattern_id = 11,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -688,6 +749,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[62] = {
.act_hid = BNXT_ULP_ACT_HID_0084,
.act_pattern_id = 12,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -700,6 +762,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[63] = {
.act_hid = BNXT_ULP_ACT_HID_06bd,
.act_pattern_id = 13,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_DEC_TTL |
@ -711,6 +774,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[64] = {
.act_hid = BNXT_ULP_ACT_HID_06d7,
.act_pattern_id = 0,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
@ -719,6 +783,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[65] = {
.act_hid = BNXT_ULP_ACT_HID_02c4,
.act_pattern_id = 1,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
BNXT_ULP_ACT_BIT_SET_TP_SRC |
@ -728,6 +793,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[66] = {
.act_hid = BNXT_ULP_ACT_HID_042a,
.act_pattern_id = 2,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
@ -736,6 +802,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[67] = {
.act_hid = BNXT_ULP_ACT_HID_06c4,
.act_pattern_id = 3,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
BNXT_ULP_ACT_BIT_SET_TP_SRC |
@ -746,6 +813,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[68] = {
.act_hid = BNXT_ULP_ACT_HID_0417,
.act_pattern_id = 4,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -757,6 +825,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[69] = {
.act_hid = BNXT_ULP_ACT_HID_06d9,
.act_pattern_id = 5,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -766,6 +835,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[70] = {
.act_hid = BNXT_ULP_ACT_HID_02c6,
.act_pattern_id = 6,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -776,6 +846,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[71] = {
.act_hid = BNXT_ULP_ACT_HID_042c,
.act_pattern_id = 7,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -785,6 +856,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[72] = {
.act_hid = BNXT_ULP_ACT_HID_06c6,
.act_pattern_id = 8,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -796,6 +868,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[73] = {
.act_hid = BNXT_ULP_ACT_HID_0419,
.act_pattern_id = 9,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_COUNT |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -808,6 +881,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[74] = {
.act_hid = BNXT_ULP_ACT_HID_0119,
.act_pattern_id = 10,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -817,6 +891,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[75] = {
.act_hid = BNXT_ULP_ACT_HID_046f,
.act_pattern_id = 11,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -827,6 +902,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[76] = {
.act_hid = BNXT_ULP_ACT_HID_05d5,
.act_pattern_id = 12,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -836,6 +912,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[77] = {
.act_hid = BNXT_ULP_ACT_HID_0106,
.act_pattern_id = 13,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_DST |
@ -847,6 +924,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[78] = {
.act_hid = BNXT_ULP_ACT_HID_05c2,
.act_pattern_id = 14,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
@ -859,6 +937,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[79] = {
.act_hid = BNXT_ULP_ACT_HID_011b,
.act_pattern_id = 15,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -869,6 +948,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[80] = {
.act_hid = BNXT_ULP_ACT_HID_0471,
.act_pattern_id = 16,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -880,6 +960,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[81] = {
.act_hid = BNXT_ULP_ACT_HID_05d7,
.act_pattern_id = 17,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -890,6 +971,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[82] = {
.act_hid = BNXT_ULP_ACT_HID_0108,
.act_pattern_id = 18,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -902,6 +984,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[83] = {
.act_hid = BNXT_ULP_ACT_HID_05c4,
.act_pattern_id = 19,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_DEC_TTL |
BNXT_ULP_ACT_BIT_COUNT |
@ -915,6 +998,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[84] = {
.act_hid = BNXT_ULP_ACT_HID_00a2,
.act_pattern_id = 0,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_VXLAN_ENCAP |
BNXT_ULP_FLOW_DIR_BITMASK_EGR },
@ -923,6 +1007,7 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
[85] = {
.act_hid = BNXT_ULP_ACT_HID_00a4,
.act_pattern_id = 1,
.app_sig = 0,
.act_sig = { .bits =
BNXT_ULP_ACT_BIT_VXLAN_ENCAP |
BNXT_ULP_ACT_BIT_COUNT |

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
* All rights reserved.
*/
/* date: Fri Jan 29 09:44:41 2021 */
/* date: Wed Mar 17 11:31:19 2021 */
#ifndef ULP_TEMPLATE_DB_H_
#define ULP_TEMPLATE_DB_H_
@ -34,6 +34,7 @@
#define BNXT_ULP_COND_GOTO_RF 0x10000
#define BNXT_ULP_GLB_FIELD_TBL_SHIFT 7
#define BNXT_ULP_HDR_SIG_ID_SHIFT 4
#define BNXT_ULP_APP_ID_SHIFT 4
#define BNXT_ULP_GLB_FIELD_TBL_SIZE 5595
#define ULP_WH_PLUS_CLASS_TMPL_LIST_SIZE 5
#define ULP_WH_PLUS_CLASS_TBL_LIST_SIZE 74
@ -111,7 +112,8 @@ enum bnxt_ulp_hdr_bit {
BNXT_ULP_HDR_BIT_I_UDP = 0x0000000000010000,
BNXT_ULP_HDR_BIT_I_ICMP = 0x0000000000020000,
BNXT_ULP_HDR_BIT_F1 = 0x0000000000040000,
BNXT_ULP_HDR_BIT_LAST = 0x0000000000080000
BNXT_ULP_HDR_BIT_ANY = 0x0000000000080000,
BNXT_ULP_HDR_BIT_LAST = 0x0000000000100000
};
enum bnxt_ulp_accept_opc {
@ -343,10 +345,14 @@ enum bnxt_ulp_glb_rf_idx {
BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_0 = 7,
BNXT_ULP_GLB_RF_IDX_APP_GLB_L2_CNTXT_ID_1 = 8,
BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_0 = 9,
BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0 = 10,
BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_0 = 11,
BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_0 = 12,
BNXT_ULP_GLB_RF_IDX_LAST = 13
BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_PROFILE_ID_1 = 10,
BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_0 = 11,
BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_PROFILE_ID_1 = 12,
BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_0 = 13,
BNXT_ULP_GLB_RF_IDX_APP_GLB_EM_KEY_ID_1 = 14,
BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_0 = 15,
BNXT_ULP_GLB_RF_IDX_APP_GLB_WC_KEY_ID_1 = 16,
BNXT_ULP_GLB_RF_IDX_LAST = 17
};
enum bnxt_ulp_hdr_type {
@ -477,7 +483,8 @@ enum bnxt_ulp_template_type {
};
enum bnxt_ulp_app_cap {
BNXT_ULP_APP_CAP_SHARED_EN = 0x00000001
BNXT_ULP_APP_CAP_SHARED_EN = 0x00000001,
BNXT_ULP_APP_CAP_HOT_UPGRADE_EN = 0x00000002
};
enum bnxt_ulp_fdb_resource_flags {

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
* All rights reserved.
*/
/* date: Mon Mar 15 10:26:20 2021 */
/* date: Wed Mar 17 11:31:19 2021 */
#include "ulp_template_db_enum.h"
#include "ulp_template_db_field.h"
@ -814,7 +814,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = {
.direction = TF_DIR_RX,
.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
.resource_type = TF_TBL_TYPE_ACT_STATS_64,
.count = 16384
.count = 8192
},
{
.app_id = 0,
@ -958,7 +958,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = {
.direction = TF_DIR_TX,
.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
.resource_type = TF_TBL_TYPE_ACT_STATS_64,
.count = 16384
.count = 8192
},
{
.app_id = 0,
@ -1398,7 +1398,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = {
.direction = TF_DIR_RX,
.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
.resource_type = TF_TBL_TYPE_ACT_STATS_64,
.count = 16384
.count = 8192
},
{
.app_id = 1,
@ -1542,7 +1542,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = {
.direction = TF_DIR_TX,
.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
.resource_type = TF_TBL_TYPE_ACT_STATS_64,
.count = 16384
.count = 8192
},
{
.app_id = 1,
@ -1982,7 +1982,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = {
.direction = TF_DIR_RX,
.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
.resource_type = TF_TBL_TYPE_ACT_STATS_64,
.count = 16384
.count = 8192
},
{
.app_id = 2,
@ -2126,7 +2126,7 @@ struct bnxt_ulp_resource_resv_info ulp_resource_resv_list[] = {
.direction = TF_DIR_TX,
.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
.resource_type = TF_TBL_TYPE_ACT_STATS_64,
.count = 16384
.count = 8192
},
{
.app_id = 2,

View File

@ -88,6 +88,7 @@ struct ulp_rte_parser_params {
uint32_t flow_sig_id;
uint32_t flow_pattern_id;
uint32_t act_pattern_id;
uint8_t app_id;
};
/* Flow Parser Header Information Structure */
@ -133,6 +134,7 @@ struct bnxt_ulp_class_match_info {
uint32_t class_tid;
uint8_t act_vnic;
uint8_t wc_pri;
uint8_t app_sig;
uint32_t hdr_sig_id;
uint32_t flow_sig_id;
uint32_t flow_pattern_id;
@ -153,6 +155,7 @@ struct bnxt_ulp_act_match_info {
uint32_t act_hid;
uint32_t act_tid;
uint32_t act_pattern_id;
uint8_t app_sig;
};
/* Flow Matcher templates Structure for action entries */