From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3ACDC45B90; Mon, 21 Oct 2024 10:18:14 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 94F4A4065B; Mon, 21 Oct 2024 10:18:13 +0200 (CEST) Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by mails.dpdk.org (Postfix) with ESMTP id A7D8A4021F for ; Mon, 21 Oct 2024 10:18:09 +0200 (CEST) Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-20c9978a221so48123265ad.1 for ; Mon, 21 Oct 2024 01:18:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1729498688; x=1730103488; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1r4adsuwtBMO2S8EDBP6Ck1c80ofPxp4wEZw5HvBwOM=; b=RS6W7rBs1+f5RwmuUbap2RA+jtYETwNSIfQC3M8HEVMxIMn2kLsDPJdxd0kL2qWANJ xRvdWUr7W/jcZ8d82kRxMS/005jyadQnvnu0d95/cMpND5GNxSECb9zpDXrJWhKK7WlE V/nz8sHrENliqd/+hC0XBzglz7uxO11EuV8C4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729498688; x=1730103488; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1r4adsuwtBMO2S8EDBP6Ck1c80ofPxp4wEZw5HvBwOM=; b=uyDHOJG8i4IQdN7znVIUU9E4DFF4lxkx4jydcgYBYQ82rFlje02hSpuqmWk0k2pdlo b4Eq5tFIm5GzTTNbww52By32Kw0Vz9R6QIkYM+34PpsgQ0LLVhgnKI1IPBL8q4K47DIT TR8dSSULUzkGgKEWW5Gfa+yvyvAoUxr/E2D7eNtZsYkZABBPAuC4wCXq69W89JC8kxL4 0n6IBfjNWDUtEf+LWAwClVq36MtxUTptei6hny7yGyIYLeBBp4FuRjW8XphbpIzTLssQ n3Qad8qJyyZcy8CktVOOArP0PCASaTKEk4OidvLO0OZWLOUiY0sz8drm2TNLyq/Zig+T 1Y4w== X-Gm-Message-State: AOJu0YxaqLz2WYQc8EIHMZxsnFjEnq6Flod6AMCeNE4pJg3rm+k6Ikig 2I8A4Lh0DV+LARfQtdnMtneLr/cDZAF77iKl8/wJcXM3Sf/d2pv9a7BsWSdYFNgDBoAnewQkRje r9xCiFshlSJhttwctO8XwBVy5cCZTMse9Mz3Q3CEot63dZE3dZfVKgdUKyTTYtdcHgLKOMEXTlj gS/DRDpkmhWzRMg2Drp/DT9SZZJzY2Gixz4t08Yax2QQ== X-Google-Smtp-Source: AGHT+IHT5ohMSN6Q3voJ5hmi0FNVlKXQzt15dQ+2GxYa/7RrEuM1f6Ckc24DC9/Os4sIfmR/x5cbKQ== X-Received: by 2002:a05:6a21:6b0c:b0:1d7:1277:8d22 with SMTP id adf61e73a8af0-1d92c57cc45mr14741951637.43.1729498687483; Mon, 21 Oct 2024 01:18:07 -0700 (PDT) Received: from dhcp-10-123-154-23.dhcp.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-71ec1313926sm2291631b3a.4.2024.10.21.01.18.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 21 Oct 2024 01:18:06 -0700 (PDT) From: Sriharsha Basavapatna To: dev@dpdk.org Cc: Kishore Padmanabha , Sriharsha Basavapatna , Ajit Khaparde Subject: [PATCH v6 25/47] net/bnxt: tf_ulp: update template files Date: Mon, 21 Oct 2024 13:55:45 +0530 Message-Id: <20241021082607.232829-26-sriharsha.basavapatna@broadcom.com> X-Mailer: git-send-email 2.39.0.189.g4dbebc36b0 In-Reply-To: <20241021082607.232829-1-sriharsha.basavapatna@broadcom.com> References: <20241021082607.232829-1-sriharsha.basavapatna@broadcom.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org From: Kishore Padmanabha This patch updates template files for the following list of changes, that are being added in the next patch. - enable recipe id generation - fix segfault in the wildcard recipe process Signed-off-by: Kishore Padmanabha Signed-off-by: Sriharsha Basavapatna Reviewed-by: Ajit Khaparde --- .../generic_templates/ulp_template_db_enum.h | 115 +++--- .../generic_templates/ulp_template_db_tbl.c | 8 +- .../ulp_template_db_thor2_class.c | 352 +++++++++++------ .../ulp_template_db_thor_class.c | 372 ++++++++++++------ 4 files changed, 547 insertions(+), 300 deletions(-) diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h index 240acbc564..ddd65a62b1 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_enum.h @@ -6,7 +6,7 @@ #ifndef ULP_TEMPLATE_DB_H_ #define ULP_TEMPLATE_DB_H_ -#define BNXT_ULP_REGFILE_MAX_SZ 81 +#define BNXT_ULP_REGFILE_MAX_SZ 82 #define BNXT_ULP_MAX_NUM_DEVICES 5 #define BNXT_ULP_LOG2_MAX_NUM_DEV 2.32192809488736 #define BNXT_ULP_GEN_TBL_MAX_SZ 50 @@ -31,19 +31,19 @@ #define ULP_WH_PLUS_CLASS_COND_LIST_SIZE 50 #define ULP_WH_PLUS_CLASS_COND_OPER_LIST_SIZE 0 #define ULP_THOR_CLASS_TMPL_LIST_SIZE 5 -#define ULP_THOR_CLASS_TBL_LIST_SIZE 122 +#define ULP_THOR_CLASS_TBL_LIST_SIZE 126 #define ULP_THOR_CLASS_KEY_INFO_LIST_SIZE 605 #define ULP_THOR_CLASS_KEY_EXT_LIST_SIZE 615 -#define ULP_THOR_CLASS_IDENT_LIST_SIZE 39 -#define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1248 +#define ULP_THOR_CLASS_IDENT_LIST_SIZE 43 +#define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1252 #define ULP_THOR_CLASS_COND_LIST_SIZE 3077 #define ULP_THOR_CLASS_COND_OPER_LIST_SIZE 7 #define ULP_THOR2_CLASS_TMPL_LIST_SIZE 5 -#define ULP_THOR2_CLASS_TBL_LIST_SIZE 121 +#define ULP_THOR2_CLASS_TBL_LIST_SIZE 125 #define ULP_THOR2_CLASS_KEY_INFO_LIST_SIZE 665 #define ULP_THOR2_CLASS_KEY_EXT_LIST_SIZE 628 -#define ULP_THOR2_CLASS_IDENT_LIST_SIZE 49 -#define ULP_THOR2_CLASS_RESULT_FIELD_LIST_SIZE 1512 +#define ULP_THOR2_CLASS_IDENT_LIST_SIZE 53 +#define ULP_THOR2_CLASS_RESULT_FIELD_LIST_SIZE 1516 #define ULP_THOR2_CLASS_COND_LIST_SIZE 3298 #define ULP_THOR2_CLASS_COND_OPER_LIST_SIZE 7 #define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 11 @@ -699,8 +699,10 @@ enum bnxt_ulp_key_recipe_opc { enum bnxt_ulp_key_recipe_tbl_opc { BNXT_ULP_KEY_RECIPE_TBL_OPC_NOT_USED = 0, - BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE = 1, - BNXT_ULP_KEY_RECIPE_TBL_OPC_LAST = 2 + BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_REGFILE = 1, + BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_WR_REGFILE = 2, + BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE = 3, + BNXT_ULP_KEY_RECIPE_TBL_OPC_LAST = 4 }; enum bnxt_ulp_mark_db_opc { @@ -795,53 +797,54 @@ enum bnxt_ulp_rf_idx { BNXT_ULP_RF_IDX_HDR_SIG_ID = 32, BNXT_ULP_RF_IDX_FLOW_SIG_ID = 33, BNXT_ULP_RF_IDX_RID = 34, - BNXT_ULP_RF_IDX_RID_1 = 35, - BNXT_ULP_RF_IDX_WC_KEY_ID_0 = 36, - BNXT_ULP_RF_IDX_EM_KEY_ID_0 = 37, - BNXT_ULP_RF_IDX_DRV_FUNC_MAC = 38, - BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC = 39, - BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR = 40, - BNXT_ULP_RF_IDX_CC = 41, - BNXT_ULP_RF_IDX_CF_FLOW_SIG_ID = 42, - BNXT_ULP_RF_IDX_PHY_PORT = 43, - BNXT_ULP_RF_IDX_METADATA_PROF = 44, - BNXT_ULP_RF_IDX_MODIFY_PTR = 45, - BNXT_ULP_RF_IDX_SOCK_DIR_SVIF = 46, - BNXT_ULP_RF_IDX_SOCK_DIR_PARIF = 47, - BNXT_ULP_RF_IDX_SOCK_DIR_ACT_PTR = 48, - BNXT_ULP_RF_IDX_SOCK_DIR_PARENT_MAC = 49, - BNXT_ULP_RF_IDX_RSS_VNIC = 50, - BNXT_ULP_RF_IDX_PORT_IS_PF = 51, - BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 = 52, - BNXT_ULP_RF_IDX_METER_PTR_0 = 53, - BNXT_ULP_RF_IDX_REF_CNT = 54, - BNXT_ULP_RF_IDX_RF_0 = 55, - BNXT_ULP_RF_IDX_RF_1 = 56, - BNXT_ULP_RF_IDX_RF_2 = 57, - BNXT_ULP_RF_IDX_RF_3 = 58, - BNXT_ULP_RF_IDX_RF_4 = 59, - BNXT_ULP_RF_IDX_RF_5 = 60, - BNXT_ULP_RF_IDX_RF_6 = 61, - BNXT_ULP_RF_IDX_RF_7 = 62, - BNXT_ULP_RF_IDX_CMM_ACT_HNDL = 63, - BNXT_ULP_RF_IDX_CMM_STAT_HNDL = 64, - BNXT_ULP_RF_IDX_CMM_MOD_HNDL = 65, - BNXT_ULP_RF_IDX_CMM_ENC_HNDL = 66, - BNXT_ULP_RF_IDX_CMM_SRP_HNDL = 67, - BNXT_ULP_RF_IDX_VF_FUNC_METADATA = 68, - BNXT_ULP_RF_IDX_CHAIN_ID_METADATA = 69, - BNXT_ULP_RF_IDX_RECYCLE_CNT = 70, - BNXT_ULP_RF_IDX_DEST_VNIC = 71, - BNXT_ULP_RF_IDX_DEST_VPORT = 72, - BNXT_ULP_RF_IDX_DEST_METADATA = 73, - BNXT_ULP_RF_IDX_PROF_TCAM_PRI = 74, - BNXT_ULP_RF_IDX_EM_INSERT_FAIL = 75, - BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY = 76, - BNXT_ULP_RF_IDX_TERM_FLOW = 77, - BNXT_ULP_RF_IDX_O_DMAC = 78, - BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_F1 = 79, - BNXT_ULP_RF_IDX_CMM_STAT_HNDL_F1 = 80, - BNXT_ULP_RF_IDX_LAST = 81 + BNXT_ULP_RF_IDX_WC_KEY_ID_0 = 35, + BNXT_ULP_RF_IDX_EM_KEY_ID_0 = 36, + BNXT_ULP_RF_IDX_DRV_FUNC_MAC = 37, + BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC = 38, + BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR = 39, + BNXT_ULP_RF_IDX_CC = 40, + BNXT_ULP_RF_IDX_CF_FLOW_SIG_ID = 41, + BNXT_ULP_RF_IDX_PHY_PORT = 42, + BNXT_ULP_RF_IDX_METADATA_PROF = 43, + BNXT_ULP_RF_IDX_MODIFY_PTR = 44, + BNXT_ULP_RF_IDX_SOCK_DIR_SVIF = 45, + BNXT_ULP_RF_IDX_SOCK_DIR_PARIF = 46, + BNXT_ULP_RF_IDX_SOCK_DIR_ACT_PTR = 47, + BNXT_ULP_RF_IDX_SOCK_DIR_PARENT_MAC = 48, + BNXT_ULP_RF_IDX_RSS_VNIC = 49, + BNXT_ULP_RF_IDX_PORT_IS_PF = 50, + BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 = 51, + BNXT_ULP_RF_IDX_METER_PTR_0 = 52, + BNXT_ULP_RF_IDX_REF_CNT = 53, + BNXT_ULP_RF_IDX_RF_0 = 54, + BNXT_ULP_RF_IDX_RF_1 = 55, + BNXT_ULP_RF_IDX_RF_2 = 56, + BNXT_ULP_RF_IDX_RF_3 = 57, + BNXT_ULP_RF_IDX_RF_4 = 58, + BNXT_ULP_RF_IDX_RF_5 = 59, + BNXT_ULP_RF_IDX_RF_6 = 60, + BNXT_ULP_RF_IDX_RF_7 = 61, + BNXT_ULP_RF_IDX_CMM_ACT_HNDL = 62, + BNXT_ULP_RF_IDX_CMM_STAT_HNDL = 63, + BNXT_ULP_RF_IDX_CMM_MOD_HNDL = 64, + BNXT_ULP_RF_IDX_CMM_ENC_HNDL = 65, + BNXT_ULP_RF_IDX_CMM_SRP_HNDL = 66, + BNXT_ULP_RF_IDX_VF_FUNC_METADATA = 67, + BNXT_ULP_RF_IDX_CHAIN_ID_METADATA = 68, + BNXT_ULP_RF_IDX_RECYCLE_CNT = 69, + BNXT_ULP_RF_IDX_DEST_VNIC = 70, + BNXT_ULP_RF_IDX_DEST_VPORT = 71, + BNXT_ULP_RF_IDX_DEST_METADATA = 72, + BNXT_ULP_RF_IDX_PROF_TCAM_PRI = 73, + BNXT_ULP_RF_IDX_EM_INSERT_FAIL = 74, + BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY = 75, + BNXT_ULP_RF_IDX_TERM_FLOW = 76, + BNXT_ULP_RF_IDX_O_DMAC = 77, + BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_F1 = 78, + BNXT_ULP_RF_IDX_CMM_STAT_HNDL_F1 = 79, + BNXT_ULP_RF_IDX_WC_RECIPE_ID = 80, + BNXT_ULP_RF_IDX_EM_RECIPE_ID = 81, + BNXT_ULP_RF_IDX_LAST = 82 }; enum bnxt_ulp_tcam_tbl_opc { diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c index 70f31946ab..4f8cc5a4b3 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.c @@ -1121,7 +1121,7 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor_generic_tbl_params[] = { .name = "INGRESS GENERIC_TABLE_PROTO_HEADER", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, .result_num_entries = 256, - .result_num_bytes = 10, + .result_num_bytes = 14, .key_num_bytes = 10, .partial_key_num_bytes = 0, .num_buckets = 4, @@ -1133,7 +1133,7 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor_generic_tbl_params[] = { .name = "EGRESS GENERIC_TABLE_PROTO_HEADER", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, .result_num_entries = 256, - .result_num_bytes = 10, + .result_num_bytes = 14, .key_num_bytes = 10, .partial_key_num_bytes = 0, .num_buckets = 4, @@ -1724,7 +1724,7 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = { .name = "INGRESS GENERIC_TABLE_PROTO_HEADER", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, .result_num_entries = 256, - .result_num_bytes = 10, + .result_num_bytes = 14, .key_num_bytes = 10, .partial_key_num_bytes = 0, .num_buckets = 4, @@ -1736,7 +1736,7 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = { .name = "EGRESS GENERIC_TABLE_PROTO_HEADER", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, .result_num_entries = 256, - .result_num_bytes = 10, + .result_num_bytes = 14, .key_num_bytes = 10, .partial_key_num_bytes = 0, .num_buckets = 4, diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_class.c index 5cfdd0804b..99c56fea0c 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_class.c @@ -13,7 +13,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_class_tmpl_list[] = { /* class_tid: 1, ingress */ [1] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, - .num_tbls = 41, + .num_tbls = 43, .start_tbl_idx = 0, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, @@ -23,8 +23,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_class_tmpl_list[] = { /* class_tid: 2, egress */ [2] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, - .num_tbls = 26, - .start_tbl_idx = 41, + .num_tbls = 28, + .start_tbl_idx = 43, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 1655, @@ -34,7 +34,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_class_tmpl_list[] = { [3] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 35, - .start_tbl_idx = 67, + .start_tbl_idx = 71, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 3292, @@ -44,7 +44,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_class_tmpl_list[] = { [4] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 19, - .start_tbl_idx = 102, + .start_tbl_idx = 106, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 3296, @@ -442,20 +442,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_bit_size = 74, .key_num_fields = 3, .ident_start_idx = 11, - .ident_nums = 5 + .ident_nums = 7 }, { /* class_tid: 1, , table: control.proto_header_cache_miss */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 11, + .cond_false_goto = 13, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, .cond_start_idx = 42, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, { /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -479,7 +478,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .partial_key_start_idx = 53, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .ident_start_idx = 16, + .ident_start_idx = 18, .ident_nums = 2 }, { /* class_tid: 1, , table: control.overlap_miss */ @@ -493,7 +492,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1 + .fdb_operand = BNXT_ULP_RF_IDX_RID }, { /* class_tid: 1, , table: profile_tcam.allocate_wc_profile */ .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -509,10 +508,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, + .fdb_operand = BNXT_ULP_RF_IDX_RID, .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, .pri_operand = ULP_THOR2_SYM_PROF_TCAM_PRI_APP, - .ident_start_idx = 18, + .ident_start_idx = 20, .ident_nums = 1 }, { /* class_tid: 1, , table: fkb_select.wc_gen_template */ @@ -529,7 +528,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, + .fdb_operand = BNXT_ULP_RF_IDX_RID, .result_start_idx = 31, .result_bit_size = 256, .result_num_fields = 172 @@ -560,6 +559,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .result_bit_size = 48, .result_num_fields = 3 }, + { /* class_tid: 1, , table: control.proto_header_rid_alloc */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 320, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID + }, { /* class_tid: 1, , table: fkb_select.em_gen_template_alloc */ .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = CFA_RSUBTYPE_IDX_TBL_EM_FKB, @@ -579,6 +591,26 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .result_bit_size = 256, .result_num_fields = 172 }, + { /* class_tid: 1, , table: em_key_recipe.alloc_only */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_KEY_RECIPE_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_KEY_RECIPE_TABLE_EM, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 321, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID, + .result_start_idx = 378, + .result_bit_size = 0, + .result_num_fields = 0 + }, { /* class_tid: 1, , table: control.profile_tcam_priority */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, @@ -622,7 +654,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .result_start_idx = 378, .result_bit_size = 64, .result_num_fields = 10, - .ident_start_idx = 19, + .ident_start_idx = 21, .ident_nums = 1 }, { /* class_tid: 1, , table: wm_key_recipe.0 */ @@ -636,8 +668,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, .cond_start_idx = 568, .cond_nums = 0 }, - .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_WR_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, @@ -669,8 +701,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_bit_size = 74, .key_num_fields = 3, .result_start_idx = 388, - .result_bit_size = 74, - .result_num_fields = 6 + .result_bit_size = 106, + .result_num_fields = 8 }, { /* class_tid: 1, , table: em_flow_conflict_cache.rd */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -691,7 +723,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 74, .key_bit_size = 74, .key_num_fields = 3, - .ident_start_idx = 20, + .ident_start_idx = 22, .ident_nums = 1 }, { /* class_tid: 1, , table: control.em_flow_conflict_cache_miss */ @@ -721,7 +753,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 394, + .result_start_idx = 396, .result_bit_size = 256, .result_num_fields = 172 }, @@ -737,15 +769,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_start_idx = 1246, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .key_start_idx = 162, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 566, + .result_start_idx = 568, .result_bit_size = 0, .result_num_fields = 0 }, @@ -768,7 +799,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 74, .key_bit_size = 74, .key_num_fields = 3, - .result_start_idx = 566, + .result_start_idx = 568, .result_bit_size = 96, .result_num_fields = 2 }, @@ -804,10 +835,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_EM_TBL_OPC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 568, + .result_start_idx = 570, .result_bit_size = 0, .result_num_fields = 17 }, @@ -836,13 +867,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 585, + .result_start_idx = 587, .result_bit_size = 128, .result_num_fields = 15 }, @@ -865,7 +896,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .ident_start_idx = 21, + .ident_start_idx = 23, .ident_nums = 1 }, { /* class_tid: 2, , table: l2_cntxt_tcam_cache.def_rd */ @@ -888,7 +919,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 22, + .ident_start_idx = 24, .ident_nums = 2 }, { /* class_tid: 2, , table: control.l2_only_check */ @@ -954,21 +985,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 74, .key_bit_size = 74, .key_num_fields = 3, - .ident_start_idx = 24, - .ident_nums = 5 + .ident_start_idx = 26, + .ident_nums = 7 }, { /* class_tid: 2, , table: control.proto_header_cache_miss */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 11, + .cond_false_goto = 13, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, .cond_start_idx = 1681, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, { /* class_tid: 2, , table: hdr_overlap_cache.overlap_check */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -992,7 +1022,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .partial_key_start_idx = 205, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .ident_start_idx = 29, + .ident_start_idx = 33, .ident_nums = 2 }, { /* class_tid: 2, , table: control.overlap_miss */ @@ -1006,7 +1036,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1 + .fdb_operand = BNXT_ULP_RF_IDX_RID }, { /* class_tid: 2, , table: profile_tcam.allocate_wc_profile */ .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -1022,10 +1052,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, + .fdb_operand = BNXT_ULP_RF_IDX_RID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, - .ident_start_idx = 31, + .ident_start_idx = 35, .ident_nums = 1 }, { /* class_tid: 2, , table: fkb_select.wc_gen_template */ @@ -1042,8 +1072,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, - .result_start_idx = 600, + .fdb_operand = BNXT_ULP_RF_IDX_RID, + .result_start_idx = 602, .result_bit_size = 256, .result_num_fields = 172 }, @@ -1069,10 +1099,23 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .partial_key_start_idx = 208, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .result_start_idx = 772, + .result_start_idx = 774, .result_bit_size = 48, .result_num_fields = 3 }, + { /* class_tid: 2, , table: control.proto_header_rid_alloc */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 1961, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID + }, { /* class_tid: 2, , table: fkb_select.em_gen_template_alloc */ .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = CFA_RSUBTYPE_IDX_TBL_EM_FKB, @@ -1088,10 +1131,30 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 775, + .result_start_idx = 777, .result_bit_size = 256, .result_num_fields = 172 }, + { /* class_tid: 2, , table: em_key_recipe.alloc_only */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_KEY_RECIPE_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_KEY_RECIPE_TABLE_EM, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 1962, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID, + .result_start_idx = 949, + .result_bit_size = 0, + .result_num_fields = 0 + }, { /* class_tid: 2, , table: control.profile_tcam_priority */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_TX, @@ -1133,10 +1196,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 947, + .result_start_idx = 949, .result_bit_size = 64, .result_num_fields = 10, - .ident_start_idx = 32, + .ident_start_idx = 36, .ident_nums = 1 }, { /* class_tid: 2, , table: wm_key_recipe.0 */ @@ -1150,8 +1213,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, .cond_start_idx = 2201, .cond_nums = 0 }, - .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_WR_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, @@ -1159,7 +1222,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 957, + .result_start_idx = 959, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1182,9 +1245,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 74, .key_bit_size = 74, .key_num_fields = 3, - .result_start_idx = 957, - .result_bit_size = 74, - .result_num_fields = 6 + .result_start_idx = 959, + .result_bit_size = 106, + .result_num_fields = 8 }, { /* class_tid: 2, , table: em_flow_conflict_cache.rd */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -1205,7 +1268,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 74, .key_bit_size = 74, .key_num_fields = 3, - .ident_start_idx = 33, + .ident_start_idx = 37, .ident_nums = 1 }, { /* class_tid: 2, , table: control.em_flow_conflict_cache_miss */ @@ -1235,7 +1298,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 963, + .result_start_idx = 967, .result_bit_size = 256, .result_num_fields = 172 }, @@ -1251,15 +1314,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_start_idx = 2883, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .key_start_idx = 314, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 1135, + .result_start_idx = 1139, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1282,7 +1344,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 74, .key_bit_size = 74, .key_num_fields = 3, - .result_start_idx = 1135, + .result_start_idx = 1139, .result_bit_size = 96, .result_num_fields = 2 }, @@ -1318,10 +1380,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_EM_TBL_OPC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 1137, + .result_start_idx = 1141, .result_bit_size = 0, .result_num_fields = 17 }, @@ -1350,13 +1412,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 1154, + .result_start_idx = 1158, .result_bit_size = 128, .result_num_fields = 15 }, @@ -1377,7 +1439,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1169, + .result_start_idx = 1173, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1398,7 +1460,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1170, + .result_start_idx = 1174, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1419,7 +1481,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1171, + .result_start_idx = 1175, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1440,7 +1502,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1172, + .result_start_idx = 1176, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1461,7 +1523,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1173, + .result_start_idx = 1177, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1482,7 +1544,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1174, + .result_start_idx = 1178, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1505,7 +1567,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .ident_start_idx = 34, + .ident_start_idx = 38, .ident_nums = 2 }, { /* class_tid: 3, , table: control.ts_ing_rd_check */ @@ -1539,7 +1601,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1175, + .result_start_idx = 1179, .result_bit_size = 192, .result_num_fields = 18 }, @@ -1561,7 +1623,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1193, + .result_start_idx = 1197, .result_bit_size = 192, .result_num_fields = 18 }, @@ -1606,10 +1668,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 1211, + .result_start_idx = 1215, .result_bit_size = 65, .result_num_fields = 7, - .ident_start_idx = 36, + .ident_start_idx = 40, .ident_nums = 1 }, { /* class_tid: 3, , table: table_scope_cache.tsid_ing_wr */ @@ -1631,7 +1693,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .result_start_idx = 1218, + .result_start_idx = 1222, .result_bit_size = 88, .result_num_fields = 5 }, @@ -1654,7 +1716,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 1223, + .result_start_idx = 1227, .result_bit_size = 169, .result_num_fields = 6 }, @@ -1677,7 +1739,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 37, + .ident_start_idx = 41, .ident_nums = 1 }, { /* class_tid: 3, , table: control.ing_rd_check */ @@ -1714,10 +1776,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1229, + .result_start_idx = 1233, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 38, + .ident_start_idx = 42, .ident_nums = 1 }, { /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */ @@ -1739,7 +1801,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1246, + .result_start_idx = 1250, .result_bit_size = 94, .result_num_fields = 5 }, @@ -1760,7 +1822,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1251, + .result_start_idx = 1255, .result_bit_size = 192, .result_num_fields = 18, .encap_num_fields = 0 @@ -1782,7 +1844,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1269, + .result_start_idx = 1273, .result_bit_size = 192, .result_num_fields = 18, .encap_num_fields = 0 @@ -1813,7 +1875,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 1287, + .result_start_idx = 1291, .result_bit_size = 169, .result_num_fields = 6 }, @@ -1831,7 +1893,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 1293, + .result_start_idx = 1297, .result_bit_size = 128, .result_num_fields = 14 }, @@ -1854,7 +1916,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 0 }, { /* class_tid: 3, , table: control.non_vfr_egr_rd_check */ @@ -1891,10 +1953,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1307, + .result_start_idx = 1311, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 2 }, { /* class_tid: 3, , table: profile_tcam_bypass.non_vfr_egr_catch_all */ @@ -1919,10 +1981,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 1324, + .result_start_idx = 1328, .result_bit_size = 65, .result_num_fields = 7, - .ident_start_idx = 41, + .ident_start_idx = 45, .ident_nums = 0 }, { /* class_tid: 3, , table: l2_cntxt_tcam_cache.non_vfr_egr_wr */ @@ -1944,7 +2006,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1331, + .result_start_idx = 1335, .result_bit_size = 94, .result_num_fields = 5 }, @@ -1967,7 +2029,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .ident_start_idx = 41, + .ident_start_idx = 45, .ident_nums = 1 }, { /* class_tid: 3, , table: control.tsid_vfr_rd_check */ @@ -2000,7 +2062,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 1336, + .result_start_idx = 1340, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2042,7 +2104,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1356, + .result_start_idx = 1360, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2086,10 +2148,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1374, + .result_start_idx = 1378, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 42, + .ident_start_idx = 46, .ident_nums = 1 }, { /* class_tid: 3, , table: table_scope_cache.tsid_vfr_wr */ @@ -2111,7 +2173,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .result_start_idx = 1391, + .result_start_idx = 1395, .result_bit_size = 88, .result_num_fields = 5 }, @@ -2134,7 +2196,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .ident_start_idx = 43, + .ident_start_idx = 47, .ident_nums = 3 }, { /* class_tid: 4, , table: control.tsid_vfr_egr_check */ @@ -2174,7 +2236,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_src2 = BNXT_ULP_FUNC_SRC_CONST, .func_opr2 = ULP_THOR2_SYM_VF_2_VF_META_VAL, .func_dst_opr = BNXT_ULP_RF_IDX_RF_0 }, - .result_start_idx = 1396, + .result_start_idx = 1400, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2216,7 +2278,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1416, + .result_start_idx = 1420, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2261,10 +2323,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 1434, + .result_start_idx = 1438, .result_bit_size = 65, .result_num_fields = 7, - .ident_start_idx = 46, + .ident_start_idx = 50, .ident_nums = 1 }, { /* class_tid: 4, , table: table_scope_cache.tsid_vfr_egr_wr */ @@ -2286,7 +2348,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .result_start_idx = 1441, + .result_start_idx = 1445, .result_bit_size = 88, .result_num_fields = 5 }, @@ -2310,7 +2372,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 47, + .ident_start_idx = 51, .ident_nums = 1 }, { /* class_tid: 4, , table: control.endpoint_def_egr_rd_check */ @@ -2347,10 +2409,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1446, + .result_start_idx = 1450, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 48, + .ident_start_idx = 52, .ident_nums = 1 }, { /* class_tid: 4, , table: l2_cntxt_tcam_cache.endpoint_def_egr_wr */ @@ -2373,7 +2435,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1463, + .result_start_idx = 1467, .result_bit_size = 94, .result_num_fields = 5 }, @@ -2396,7 +2458,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 1468, + .result_start_idx = 1472, .result_bit_size = 169, .result_num_fields = 6 }, @@ -2423,7 +2485,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_src2 = BNXT_ULP_FUNC_SRC_CONST, .func_opr2 = ULP_THOR2_SYM_VF_2_VF_META_VAL, .func_dst_opr = BNXT_ULP_RF_IDX_RF_0 }, - .result_start_idx = 1474, + .result_start_idx = 1478, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2464,7 +2526,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1494, + .result_start_idx = 1498, .result_bit_size = 192, .result_num_fields = 18 }, @@ -7012,7 +7074,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { }, /* field_cond: class_tid: 1, fkb_select.em_gen_template:1012*/ { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { @@ -42521,8 +42583,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_class_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_RF, .field_opr1 = { - (BNXT_ULP_RF_IDX_RID_1 >> 8) & 0xff, - BNXT_ULP_RF_IDX_RID_1 & 0xff} + (BNXT_ULP_RF_IDX_RID >> 8) & 0xff, + BNXT_ULP_RF_IDX_RID & 0xff} }, { .description = "wc_profile_id", @@ -43718,6 +43780,24 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_class_result_field_list[] = { (BNXT_ULP_RF_IDX_WC_KEY_ID_0 >> 8) & 0xff, BNXT_ULP_RF_IDX_WC_KEY_ID_0 & 0xff} }, + { + .description = "em_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_EM_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_EM_RECIPE_ID & 0xff} + }, + { + .description = "wc_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_WC_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_WC_RECIPE_ID & 0xff} + }, /* class_tid: 1, , table: fkb_select.em_gen_template */ { .description = "l2_cntxt_id.en", @@ -46921,8 +47001,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_class_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_RF, .field_opr1 = { - (BNXT_ULP_RF_IDX_RID_1 >> 8) & 0xff, - BNXT_ULP_RF_IDX_RID_1 & 0xff} + (BNXT_ULP_RF_IDX_RID >> 8) & 0xff, + BNXT_ULP_RF_IDX_RID & 0xff} }, { .description = "wc_profile_id", @@ -48117,6 +48197,24 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_class_result_field_list[] = { (BNXT_ULP_RF_IDX_WC_KEY_ID_0 >> 8) & 0xff, BNXT_ULP_RF_IDX_WC_KEY_ID_0 & 0xff} }, + { + .description = "em_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_EM_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_EM_RECIPE_ID & 0xff} + }, + { + .description = "wc_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_WC_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_WC_RECIPE_ID & 0xff} + }, /* class_tid: 2, , table: fkb_select.em_gen_template */ { .description = "l2_cntxt_id.en", @@ -52303,6 +52401,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_class_ident_list[] = { .ident_bit_pos = 42 }, { + .description = "em_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 74 + }, + { .description = "profile_tcam_index", .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .ident_bit_size = 10, @@ -52320,6 +52424,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_class_ident_list[] = { .ident_bit_size = 8, .ident_bit_pos = 58 }, + { + .description = "wc_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_WC_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 90 + }, /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ { .description = "wc_key_id", @@ -52392,6 +52502,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_class_ident_list[] = { .ident_bit_pos = 42 }, { + .description = "em_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 74 + }, + { .description = "profile_tcam_index", .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .ident_bit_size = 10, @@ -52409,6 +52525,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_class_ident_list[] = { .ident_bit_size = 8, .ident_bit_pos = 58 }, + { + .description = "wc_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_WC_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 90 + }, /* class_tid: 2, , table: hdr_overlap_cache.overlap_check */ { .description = "wc_key_id", diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c index 4d8f54dac1..f2fb25d7b6 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c @@ -13,7 +13,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { /* class_tid: 1, ingress */ [1] = { .device_name = BNXT_ULP_DEVICE_ID_THOR, - .num_tbls = 39, + .num_tbls = 41, .start_tbl_idx = 0, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, @@ -23,8 +23,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { /* class_tid: 2, egress */ [2] = { .device_name = BNXT_ULP_DEVICE_ID_THOR, - .num_tbls = 25, - .start_tbl_idx = 39, + .num_tbls = 27, + .start_tbl_idx = 41, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 1545, @@ -34,7 +34,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { [3] = { .device_name = BNXT_ULP_DEVICE_ID_THOR, .num_tbls = 23, - .start_tbl_idx = 64, + .start_tbl_idx = 68, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 3069, @@ -44,7 +44,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = { [4] = { .device_name = BNXT_ULP_DEVICE_ID_THOR, .num_tbls = 35, - .start_tbl_idx = 87, + .start_tbl_idx = 91, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 3073, @@ -398,20 +398,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_bit_size = 73, .key_num_fields = 3, .ident_start_idx = 10, - .ident_nums = 5 + .ident_nums = 7 }, { /* class_tid: 1, , table: control.proto_header_cache_miss */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 11, + .cond_false_goto = 13, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, .cond_start_idx = 42, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, { /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -435,7 +434,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .partial_key_start_idx = 48, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .ident_start_idx = 15, + .ident_start_idx = 17, .ident_nums = 2 }, { /* class_tid: 1, , table: control.overlap_miss */ @@ -449,7 +448,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1 + .fdb_operand = BNXT_ULP_RF_IDX_RID }, { /* class_tid: 1, , table: profile_tcam.allocate_wc_profile */ .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -465,10 +464,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, + .fdb_operand = BNXT_ULP_RF_IDX_RID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, - .ident_start_idx = 17, + .ident_start_idx = 19, .ident_nums = 1 }, { /* class_tid: 1, , table: fkb_select.wc_gen_template */ @@ -485,7 +484,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, + .fdb_operand = BNXT_ULP_RF_IDX_RID, .result_start_idx = 14, .result_bit_size = 106, .result_num_fields = 106 @@ -516,6 +515,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .result_bit_size = 48, .result_num_fields = 3 }, + { /* class_tid: 1, , table: control.proto_header_rid_alloc */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 253, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID + }, { /* class_tid: 1, , table: fkb_select.em_gen_template_alloc */ .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, @@ -535,6 +547,26 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .result_bit_size = 106, .result_num_fields = 106 }, + { /* class_tid: 1, , table: em_key_recipe.alloc_only */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_KEY_RECIPE_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_KEY_RECIPE_TABLE_EM, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 254, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID, + .result_start_idx = 229, + .result_bit_size = 0, + .result_num_fields = 0 + }, { /* class_tid: 1, , table: control.profile_tcam_priority */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, @@ -579,7 +611,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .result_start_idx = 229, .result_bit_size = 33, .result_num_fields = 8, - .ident_start_idx = 18, + .ident_start_idx = 20, .ident_nums = 1 }, { /* class_tid: 1, , table: wm_key_recipe.0 */ @@ -593,8 +625,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, .cond_start_idx = 513, .cond_nums = 0 }, - .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_WR_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, @@ -626,8 +658,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_bit_size = 73, .key_num_fields = 3, .result_start_idx = 237, - .result_bit_size = 74, - .result_num_fields = 6 + .result_bit_size = 106, + .result_num_fields = 8 }, { /* class_tid: 1, , table: em_flow_conflict_cache.rd */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -648,7 +680,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 73, .key_bit_size = 73, .key_num_fields = 3, - .ident_start_idx = 19, + .ident_start_idx = 21, .ident_nums = 1 }, { /* class_tid: 1, , table: control.em_flow_conflict_cache_miss */ @@ -678,7 +710,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 243, + .result_start_idx = 245, .result_bit_size = 106, .result_num_fields = 106 }, @@ -694,15 +726,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_start_idx = 1136, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .key_start_idx = 134, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 349, + .result_start_idx = 351, .result_bit_size = 0, .result_num_fields = 0 }, @@ -725,7 +756,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 73, .key_bit_size = 73, .key_num_fields = 3, - .result_start_idx = 349, + .result_start_idx = 351, .result_bit_size = 96, .result_num_fields = 2 }, @@ -761,10 +792,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_EM_TBL_OPC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 351, + .result_start_idx = 353, .result_bit_size = 0, .result_num_fields = 6 }, @@ -793,13 +824,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 357, + .result_start_idx = 359, .result_bit_size = 38, .result_num_fields = 5 }, @@ -822,7 +853,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 20, + .ident_start_idx = 22, .ident_nums = 2 }, { /* class_tid: 2, , table: control.l2_only_check */ @@ -888,21 +919,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 73, .key_bit_size = 73, .key_num_fields = 3, - .ident_start_idx = 22, - .ident_nums = 5 + .ident_start_idx = 24, + .ident_nums = 7 }, { /* class_tid: 2, , table: control.proto_header_cache_miss */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 11, + .cond_false_goto = 13, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, .cond_start_idx = 1571, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, { /* class_tid: 2, , table: hdr_overlap_cache.overlap_check */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -926,7 +956,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .partial_key_start_idx = 176, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .ident_start_idx = 27, + .ident_start_idx = 31, .ident_nums = 2 }, { /* class_tid: 2, , table: control.overlap_miss */ @@ -940,7 +970,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1 + .fdb_operand = BNXT_ULP_RF_IDX_RID }, { /* class_tid: 2, , table: profile_tcam.allocate_wc_profile */ .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, @@ -956,10 +986,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, + .fdb_operand = BNXT_ULP_RF_IDX_RID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, - .ident_start_idx = 29, + .ident_start_idx = 33, .ident_nums = 1 }, { /* class_tid: 2, , table: fkb_select.wc_gen_template */ @@ -976,8 +1006,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID_1, - .result_start_idx = 362, + .fdb_operand = BNXT_ULP_RF_IDX_RID, + .result_start_idx = 364, .result_bit_size = 106, .result_num_fields = 106 }, @@ -1003,10 +1033,23 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .partial_key_start_idx = 179, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .result_start_idx = 468, + .result_start_idx = 470, .result_bit_size = 48, .result_num_fields = 3 }, + { /* class_tid: 2, , table: control.proto_header_rid_alloc */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 1784, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID + }, { /* class_tid: 2, , table: fkb_select.em_gen_template_alloc */ .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, .resource_type = TF_TBL_TYPE_EM_FKB, @@ -1022,10 +1065,30 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 471, + .result_start_idx = 473, .result_bit_size = 106, .result_num_fields = 106 }, + { /* class_tid: 2, , table: em_key_recipe.alloc_only */ + .resource_func = BNXT_ULP_RESOURCE_FUNC_KEY_RECIPE_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_KEY_RECIPE_TABLE_EM, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 1785, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, + .fdb_operand = BNXT_ULP_RF_IDX_RID, + .result_start_idx = 579, + .result_bit_size = 0, + .result_num_fields = 0 + }, { /* class_tid: 2, , table: control.profile_tcam_priority */ .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_TX, @@ -1067,10 +1130,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 94, .key_bit_size = 94, .key_num_fields = 43, - .result_start_idx = 577, + .result_start_idx = 579, .result_bit_size = 33, .result_num_fields = 8, - .ident_start_idx = 30, + .ident_start_idx = 34, .ident_nums = 1 }, { /* class_tid: 2, , table: wm_key_recipe.0 */ @@ -1084,8 +1147,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, .cond_start_idx = 2042, .cond_nums = 0 }, - .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_WR_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, @@ -1093,7 +1156,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 585, + .result_start_idx = 587, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1116,9 +1179,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 73, .key_bit_size = 73, .key_num_fields = 3, - .result_start_idx = 585, - .result_bit_size = 74, - .result_num_fields = 6 + .result_start_idx = 587, + .result_bit_size = 106, + .result_num_fields = 8 }, { /* class_tid: 2, , table: em_flow_conflict_cache.rd */ .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -1139,7 +1202,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 73, .key_bit_size = 73, .key_num_fields = 3, - .ident_start_idx = 31, + .ident_start_idx = 35, .ident_nums = 1 }, { /* class_tid: 2, , table: control.em_flow_conflict_cache_miss */ @@ -1169,7 +1232,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 591, + .result_start_idx = 595, .result_bit_size = 106, .result_num_fields = 106 }, @@ -1185,15 +1248,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .cond_start_idx = 2666, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE, - .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, - .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, - .fdb_operand = BNXT_ULP_RF_IDX_RID, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .key_start_idx = 262, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 697, + .result_start_idx = 701, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1216,7 +1278,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 73, .key_bit_size = 73, .key_num_fields = 3, - .result_start_idx = 697, + .result_start_idx = 701, .result_bit_size = 96, .result_num_fields = 2 }, @@ -1252,10 +1314,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_EM_TBL_OPC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 699, + .result_start_idx = 703, .result_bit_size = 0, .result_num_fields = 6 }, @@ -1284,13 +1346,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_DYN_KEY, - .key_recipe_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, + .key_recipe_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 705, + .result_start_idx = 709, .result_bit_size = 38, .result_num_fields = 5 }, @@ -1311,7 +1373,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 710, + .result_start_idx = 714, .result_bit_size = 128, .result_num_fields = 17 }, @@ -1334,7 +1396,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 727, + .result_start_idx = 731, .result_bit_size = 179, .result_num_fields = 8 }, @@ -1357,7 +1419,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 32, + .ident_start_idx = 36, .ident_nums = 0 }, { /* class_tid: 3, , table: control.ing_0 */ @@ -1396,10 +1458,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 213, .key_bit_size = 213, .key_num_fields = 21, - .result_start_idx = 735, + .result_start_idx = 739, .result_bit_size = 43, .result_num_fields = 6, - .ident_start_idx = 32, + .ident_start_idx = 36, .ident_nums = 2 }, { /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */ @@ -1421,7 +1483,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 741, + .result_start_idx = 745, .result_bit_size = 70, .result_num_fields = 5 }, @@ -1447,10 +1509,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 94, .key_bit_size = 94, .key_num_fields = 43, - .result_start_idx = 746, + .result_start_idx = 750, .result_bit_size = 33, .result_num_fields = 8, - .ident_start_idx = 34, + .ident_start_idx = 38, .ident_nums = 0 }, { /* class_tid: 3, , table: parif_def_arec_ptr.ing_0 */ @@ -1467,7 +1529,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 754, + .result_start_idx = 758, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1485,7 +1547,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 755, + .result_start_idx = 759, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1506,7 +1568,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 756, + .result_start_idx = 760, .result_bit_size = 128, .result_num_fields = 17, .encap_num_fields = 0 @@ -1530,7 +1592,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 773, + .result_start_idx = 777, .result_bit_size = 179, .result_num_fields = 8 }, @@ -1565,7 +1627,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 34, + .ident_start_idx = 38, .ident_nums = 0 }, { /* class_tid: 3, , table: control.egr_1 */ @@ -1598,7 +1660,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .fdb_operand = BNXT_ULP_RF_IDX_RID, .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, - .ident_start_idx = 34, + .ident_start_idx = 38, .ident_nums = 1 }, { /* class_tid: 3, , table: ilt_tbl.egr_vfr */ @@ -1616,7 +1678,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 781, + .result_start_idx = 785, .result_bit_size = 64, .result_num_fields = 8 }, @@ -1639,7 +1701,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 789, + .result_start_idx = 793, .result_bit_size = 70, .result_num_fields = 5 }, @@ -1662,7 +1724,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 35, + .ident_start_idx = 39, .ident_nums = 0 }, { /* class_tid: 3, , table: control.egr_2 */ @@ -1699,10 +1761,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 213, .key_bit_size = 213, .key_num_fields = 21, - .result_start_idx = 794, + .result_start_idx = 798, .result_bit_size = 43, .result_num_fields = 6, - .ident_start_idx = 35, + .ident_start_idx = 39, .ident_nums = 2 }, { /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr */ @@ -1724,7 +1786,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 800, + .result_start_idx = 804, .result_bit_size = 70, .result_num_fields = 5 }, @@ -1742,7 +1804,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 805, + .result_start_idx = 809, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1760,7 +1822,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 806, + .result_start_idx = 810, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1784,7 +1846,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 15, .key_bit_size = 15, .key_num_fields = 3, - .ident_start_idx = 37, + .ident_start_idx = 41, .ident_nums = 0 }, { /* class_tid: 4, , table: control.prof_tcam_cache.vfr_glb_act_rec_rd.0 */ @@ -1816,7 +1878,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_MODIFY_PTR, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 807, + .result_start_idx = 811, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -1838,7 +1900,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 827, + .result_start_idx = 831, .result_bit_size = 128, .result_num_fields = 17, .encap_num_fields = 0 @@ -1858,7 +1920,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 844, + .result_start_idx = 848, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1877,7 +1939,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 845, + .result_start_idx = 849, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1901,7 +1963,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 15, .key_bit_size = 15, .key_num_fields = 3, - .result_start_idx = 846, + .result_start_idx = 850, .result_bit_size = 138, .result_num_fields = 7 }, @@ -1924,7 +1986,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 37, + .ident_start_idx = 41, .ident_nums = 0 }, { /* class_tid: 4, , table: control.vf_2_vfr.0 */ @@ -1959,7 +2021,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 37, + .ident_start_idx = 41, .ident_nums = 1 }, { /* class_tid: 4, , table: l2_cntxt_tcam.vf_egr */ @@ -1983,10 +2045,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 213, .key_bit_size = 213, .key_num_fields = 21, - .result_start_idx = 853, + .result_start_idx = 857, .result_bit_size = 43, .result_num_fields = 6, - .ident_start_idx = 38, + .ident_start_idx = 42, .ident_nums = 1 }, { /* class_tid: 4, , table: profile_tcam.prof_func_catch_all */ @@ -2012,10 +2074,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 94, .key_bit_size = 94, .key_num_fields = 43, - .result_start_idx = 859, + .result_start_idx = 863, .result_bit_size = 33, .result_num_fields = 8, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 0 }, { /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_egr_wr */ @@ -2037,7 +2099,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 867, + .result_start_idx = 871, .result_bit_size = 70, .result_num_fields = 5 }, @@ -2058,7 +2120,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG, - .result_start_idx = 872, + .result_start_idx = 876, .result_bit_size = 128, .result_num_fields = 17 }, @@ -2082,7 +2144,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 15, .key_bit_size = 15, .key_num_fields = 3, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 0 }, { /* class_tid: 4, , table: control.prof_tcam_cache.vfr.0 */ @@ -2115,7 +2177,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 889, + .result_start_idx = 893, .result_bit_size = 128, .result_num_fields = 17, .encap_num_fields = 0 @@ -2143,10 +2205,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 213, .key_bit_size = 213, .key_num_fields = 21, - .result_start_idx = 906, + .result_start_idx = 910, .result_bit_size = 43, .result_num_fields = 6, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 0 }, { /* class_tid: 4, , table: l2_cntxt_tcam.vfr_2_vf_ing.0 */ @@ -2172,10 +2234,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 213, .key_bit_size = 213, .key_num_fields = 21, - .result_start_idx = 912, + .result_start_idx = 916, .result_bit_size = 43, .result_num_fields = 6, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 0 }, { /* class_tid: 4, , table: fkb_select.vfr_em */ @@ -2192,7 +2254,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 918, + .result_start_idx = 922, .result_bit_size = 106, .result_num_fields = 106 }, @@ -2210,7 +2272,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_1, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .result_start_idx = 1024, + .result_start_idx = 1028, .result_bit_size = 106, .result_num_fields = 106 }, @@ -2237,7 +2299,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 94, .key_bit_size = 94, .key_num_fields = 43, - .result_start_idx = 1130, + .result_start_idx = 1134, .result_bit_size = 33, .result_num_fields = 8 }, @@ -2264,7 +2326,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 94, .key_bit_size = 94, .key_num_fields = 43, - .result_start_idx = 1138, + .result_start_idx = 1142, .result_bit_size = 33, .result_num_fields = 8 }, @@ -2288,7 +2350,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 15, .key_bit_size = 15, .key_num_fields = 3, - .result_start_idx = 1146, + .result_start_idx = 1150, .result_bit_size = 138, .result_num_fields = 7 }, @@ -2306,7 +2368,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_VF_FUNC_SVIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 1153, + .result_start_idx = 1157, .result_bit_size = 64, .result_num_fields = 8 }, @@ -2327,7 +2389,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 3, - .result_start_idx = 1161, + .result_start_idx = 1165, .result_bit_size = 0, .result_num_fields = 6 }, @@ -2351,7 +2413,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 39, + .ident_start_idx = 43, .ident_nums = 0 }, { /* class_tid: 4, , table: control.0 */ @@ -2382,7 +2444,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE, .fdb_operand = BNXT_ULP_RF_IDX_RID, - .result_start_idx = 1167, + .result_start_idx = 1171, .result_bit_size = 64, .result_num_fields = 8 }, @@ -2405,7 +2467,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1175, + .result_start_idx = 1179, .result_bit_size = 70, .result_num_fields = 5 }, @@ -2423,7 +2485,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_CF_IDX_VF_FUNC_SVIF, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 1180, + .result_start_idx = 1184, .result_bit_size = 64, .result_num_fields = 8 }, @@ -2443,7 +2505,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 1188, + .result_start_idx = 1192, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2465,7 +2527,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1208, + .result_start_idx = 1212, .result_bit_size = 128, .result_num_fields = 17 }, @@ -2486,7 +2548,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 1225, + .result_start_idx = 1229, .result_bit_size = 128, .result_num_fields = 17 }, @@ -2507,7 +2569,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = { .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 2, - .result_start_idx = 1242, + .result_start_idx = 1246, .result_bit_size = 0, .result_num_fields = 6 } @@ -6759,7 +6821,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = { }, /* field_cond: class_tid: 1, fkb_select.em_gen_template:956*/ { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { @@ -39971,8 +40033,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_RF, .field_opr1 = { - (BNXT_ULP_RF_IDX_RID_1 >> 8) & 0xff, - BNXT_ULP_RF_IDX_RID_1 & 0xff} + (BNXT_ULP_RF_IDX_RID >> 8) & 0xff, + BNXT_ULP_RF_IDX_RID & 0xff} }, { .description = "wc_profile_id", @@ -40750,6 +40812,24 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (BNXT_ULP_RF_IDX_WC_KEY_ID_0 >> 8) & 0xff, BNXT_ULP_RF_IDX_WC_KEY_ID_0 & 0xff} }, + { + .description = "em_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_EM_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_EM_RECIPE_ID & 0xff} + }, + { + .description = "wc_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_WC_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_WC_RECIPE_ID & 0xff} + }, /* class_tid: 1, , table: fkb_select.em_gen_template */ { .description = "l2_cntxt_id.en", @@ -42763,8 +42843,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_RF, .field_opr1 = { - (BNXT_ULP_RF_IDX_RID_1 >> 8) & 0xff, - BNXT_ULP_RF_IDX_RID_1 & 0xff} + (BNXT_ULP_RF_IDX_RID >> 8) & 0xff, + BNXT_ULP_RF_IDX_RID & 0xff} }, { .description = "wc_profile_id", @@ -43542,6 +43622,24 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = { (BNXT_ULP_RF_IDX_WC_KEY_ID_0 >> 8) & 0xff, BNXT_ULP_RF_IDX_WC_KEY_ID_0 & 0xff} }, + { + .description = "em_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_EM_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_EM_RECIPE_ID & 0xff} + }, + { + .description = "wc_recipe_id", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_WC_RECIPE_ID >> 8) & 0xff, + BNXT_ULP_RF_IDX_WC_RECIPE_ID & 0xff} + }, /* class_tid: 2, , table: fkb_select.em_gen_template */ { .description = "l2_cntxt_id.en", @@ -48221,6 +48319,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_class_ident_list[] = { .ident_bit_pos = 42 }, { + .description = "em_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 74 + }, + { .description = "profile_tcam_index", .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .ident_bit_size = 10, @@ -48238,6 +48342,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_class_ident_list[] = { .ident_bit_size = 8, .ident_bit_pos = 58 }, + { + .description = "wc_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_WC_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 90 + }, /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ { .description = "wc_key_id", @@ -48303,6 +48413,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_class_ident_list[] = { .ident_bit_pos = 42 }, { + .description = "em_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_EM_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 74 + }, + { .description = "profile_tcam_index", .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, .ident_bit_size = 10, @@ -48320,6 +48436,12 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_class_ident_list[] = { .ident_bit_size = 8, .ident_bit_pos = 58 }, + { + .description = "wc_recipe_id", + .regfile_idx = BNXT_ULP_RF_IDX_WC_RECIPE_ID, + .ident_bit_size = 16, + .ident_bit_pos = 90 + }, /* class_tid: 2, , table: hdr_overlap_cache.overlap_check */ { .description = "wc_key_id", -- 2.39.3