From patchwork Thu Nov 7 13:52:47 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sriharsha Basavapatna X-Patchwork-Id: 148080 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3B0D245C9F; Thu, 7 Nov 2024 15:10:57 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6EB2B4327F; Thu, 7 Nov 2024 15:06:30 +0100 (CET) Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.47]) by mails.dpdk.org (Postfix) with ESMTP id B2BD142EE9 for ; Thu, 7 Nov 2024 14:46:59 +0100 (CET) Received: by mail-pj1-f47.google.com with SMTP id 98e67ed59e1d1-2e2e87153a3so701739a91.3 for ; Thu, 07 Nov 2024 05:46:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1730987218; x=1731592018; 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=3l2lmpDRTd/k80cvw+BhfxmRqCf1+JuVWcSbRNQJ/6k=; b=Aus7gRxWoJqfowjAuHhk2ferpskgtHyPLMXUV8xNZvNOQEzWOySdozBc/ufu0FTDoO e5jZvqokGkEUSKkCdZsbT52ODfhBiFh7qT2ZDXVqcbGmc/QZ4mCMmzzzglsOoA2hyRUP +7a7TZHtR45Ijxj15be2HcWUAX08FB6PTR+Kk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1730987218; x=1731592018; 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=3l2lmpDRTd/k80cvw+BhfxmRqCf1+JuVWcSbRNQJ/6k=; b=dVZ2P1VkTpqhpOMmmCgV/r8c9i6bGIJRHKGwHdSZCwNiJuB/7AUrGPLmbZHqHUhk2n 7r/0ry3+kZtnOZyGmynDw1vdWLO+GYgYyA2/CXnoy7R6RmbQPfjeCSXBHFth1JjyhPd0 HYhAFWUHljD5BUtDh84uU3aTbVEd2fhjd6V1jxW8t5k7qG/c4gFqLCQlE5948CbaBb2/ ZOYkE/mPNmmvZ8zxgyty0LYVn3D7Gm8C6Fe0MqOaLWSxOnOepoR6LoLkPcZu4RarwXds xUgpcJAceG4ziZP9J490CbpDG/vFmB7lrQZyx2rhOqOhLrFrI+PaV5NI6IGDf8VGva31 1/Fw== X-Gm-Message-State: AOJu0Yy87HAon9jsQjJStE7URD+iVtB/g1NyIvmgSLbrBQuJiis+E3eJ vh7dx5k2LeNEGUmwGq2yFXB5BYP20GSPqhHfH97awW5KO10222pwySagAmxFqkPB5hjq9xmCeAG ql4LeiEu8WDzuya+1hosgVJKlQ7xsoiahw1s2DcMY0vB5SED8ZZkPSo+0RqA2dWgKOW3WGgRx3z Ox31tex3ywzIwwYmyuNtktE0rBNgNbf8CsVH9bSaCv1g== X-Google-Smtp-Source: AGHT+IGP/Si8B7aaYf8q8Tv27jKzfBj4CE0mV7gZjIfLrKr55Cz5b06lAk4ZX0nc6D5jcDjAWGHJdg== X-Received: by 2002:a17:90b:1350:b0:2e0:9a63:9017 with SMTP id 98e67ed59e1d1-2e94c2e2108mr32969832a91.23.1730987216257; Thu, 07 Nov 2024 05:46:56 -0800 (PST) Received: from dhcp-10-123-154-23.dhcp.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2e9a5f52969sm1409878a91.2.2024.11.07.05.46.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Nov 2024 05:46:54 -0800 (PST) From: Sriharsha Basavapatna To: dev@dpdk.org Cc: Kishore Padmanabha , Sriharsha Basavapatna , Ajit Khaparde Subject: [PATCH v8 40/47] net/bnxt: tf_ulp: update template files Date: Thu, 7 Nov 2024 19:22:47 +0530 Message-Id: <20241107135254.1611676-41-sriharsha.basavapatna@broadcom.com> X-Mailer: git-send-email 2.39.0.189.g4dbebc36b0 In-Reply-To: <20241107135254.1611676-1-sriharsha.basavapatna@broadcom.com> References: <20241107135254.1611676-1-sriharsha.basavapatna@broadcom.com> MIME-Version: 1.0 X-Mailman-Approved-At: Thu, 07 Nov 2024 15:06:08 +0100 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 subsequent patches. - support generic template items - fix generic application template Signed-off-by: Kishore Padmanabha Signed-off-by: Sriharsha Basavapatna Reviewed-by: Ajit Khaparde --- .../generic_templates/ulp_template_db_enum.h | 34 +- .../generic_templates/ulp_template_db_tbl.c | 60 +- .../ulp_template_db_thor2_act.c | 1040 +- .../ulp_template_db_thor2_class.c | 22221 +++++++++++----- .../ulp_template_db_thor_class.c | 7404 ++--- 5 files changed, 19533 insertions(+), 11226 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 896b3e2802..445c64134f 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 @@ -37,16 +37,16 @@ #define ULP_THOR_CLASS_KEY_EXT_LIST_SIZE 628 #define ULP_THOR_CLASS_IDENT_LIST_SIZE 52 #define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1280 -#define ULP_THOR_CLASS_COND_LIST_SIZE 3834 +#define ULP_THOR_CLASS_COND_LIST_SIZE 3847 #define ULP_THOR_CLASS_COND_OPER_LIST_SIZE 15 #define ULP_THOR2_CLASS_TMPL_LIST_SIZE 5 -#define ULP_THOR2_CLASS_TBL_LIST_SIZE 125 -#define ULP_THOR2_CLASS_KEY_INFO_LIST_SIZE 669 -#define ULP_THOR2_CLASS_KEY_EXT_LIST_SIZE 628 -#define ULP_THOR2_CLASS_IDENT_LIST_SIZE 53 -#define ULP_THOR2_CLASS_RESULT_FIELD_LIST_SIZE 1516 -#define ULP_THOR2_CLASS_COND_LIST_SIZE 3302 -#define ULP_THOR2_CLASS_COND_OPER_LIST_SIZE 7 +#define ULP_THOR2_CLASS_TBL_LIST_SIZE 181 +#define ULP_THOR2_CLASS_KEY_INFO_LIST_SIZE 737 +#define ULP_THOR2_CLASS_KEY_EXT_LIST_SIZE 660 +#define ULP_THOR2_CLASS_IDENT_LIST_SIZE 61 +#define ULP_THOR2_CLASS_RESULT_FIELD_LIST_SIZE 1603 +#define ULP_THOR2_CLASS_COND_LIST_SIZE 4183 +#define ULP_THOR2_CLASS_COND_OPER_LIST_SIZE 14 #define ULP_WH_PLUS_ACT_TMPL_LIST_SIZE 13 #define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 155 #define ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE 49 @@ -64,12 +64,12 @@ #define ULP_THOR_ACT_COND_LIST_SIZE 90 #define ULP_THOR_ACT_COND_OPER_LIST_SIZE 0 #define ULP_THOR2_ACT_TMPL_LIST_SIZE 13 -#define ULP_THOR2_ACT_TBL_LIST_SIZE 110 -#define ULP_THOR2_ACT_KEY_INFO_LIST_SIZE 79 -#define ULP_THOR2_ACT_KEY_EXT_LIST_SIZE 4 -#define ULP_THOR2_ACT_IDENT_LIST_SIZE 39 -#define ULP_THOR2_ACT_RESULT_FIELD_LIST_SIZE 441 -#define ULP_THOR2_ACT_COND_LIST_SIZE 97 +#define ULP_THOR2_ACT_TBL_LIST_SIZE 115 +#define ULP_THOR2_ACT_KEY_INFO_LIST_SIZE 85 +#define ULP_THOR2_ACT_KEY_EXT_LIST_SIZE 5 +#define ULP_THOR2_ACT_IDENT_LIST_SIZE 40 +#define ULP_THOR2_ACT_RESULT_FIELD_LIST_SIZE 446 +#define ULP_THOR2_ACT_COND_LIST_SIZE 96 #define ULP_THOR2_ACT_COND_OPER_LIST_SIZE 0 enum bnxt_ulp_act_bit { @@ -2073,13 +2073,13 @@ enum ulp_thor2_sym { ULP_THOR2_SYM_VF_FUNC_PARIF = 15, ULP_THOR2_SYM_NO = 0, ULP_THOR2_SYM_YES = 1, - ULP_THOR2_SYM_RECYCLE_DST = 0x800, + ULP_THOR2_SYM_RECYCLE_DST = 0x7ff, ULP_THOR2_SYM_VF_2_VFR_META_VAL = 536870912, ULP_THOR2_SYM_VF_2_VF_META_VAL = 536870912, ULP_THOR2_SYM_VF_2_VFR_META_MASK = 4026531840, ULP_THOR2_SYM_META_PROFILE_0 = 0, - ULP_THOR2_SYM_CHAIN_META_VAL = 12288, - ULP_THOR2_SYM_CHAIN_META_VAL_MASK = 61440, + ULP_THOR2_SYM_CHAIN_META_VAL = 805306368, + ULP_THOR2_SYM_CHAIN_META_VAL_MASK = 4026531840, ULP_THOR2_SYM_CHAIN_META_TYPE = 3, ULP_THOR2_SYM_L2_ECPRI_ETYPE = 44798, ULP_THOR2_SYM_L4_ECPRI_ETYPE = 2048, 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 4afc41a466..3c6d331e03 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 @@ -1615,13 +1615,13 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = { BNXT_ULP_DIRECTION_EGRESS] = { .name = "EGRESS GENERIC_TABLE_SOURCE_PROPERTY_IPV6_CACHE", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, - .result_num_entries = 0, - .result_num_bytes = 0, - .key_num_bytes = 0, + .result_num_entries = 128, + .result_num_bytes = 8, + .key_num_bytes = 23, .partial_key_num_bytes = 0, - .num_buckets = 0, - .hash_tbl_entries = 0, - .result_byte_order = BNXT_ULP_BYTE_ORDER_LE, + .num_buckets = 4, + .hash_tbl_entries = 512, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_OUTER_TUNNEL_CACHE << 1 | BNXT_ULP_DIRECTION_INGRESS] = { @@ -1963,13 +1963,13 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = { BNXT_ULP_DIRECTION_INGRESS] = { .name = "INGRESS GENERIC_TABLE_FLOW_CHAIN_L2_CNTXT", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_SIMPLE_LIST, - .result_num_entries = 0, - .result_num_bytes = 0, - .key_num_bytes = 0, + .result_num_entries = 16, + .result_num_bytes = 6, + .key_num_bytes = 2, .partial_key_num_bytes = 0, .num_buckets = 0, .hash_tbl_entries = 0, - .result_byte_order = BNXT_ULP_BYTE_ORDER_LE, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_L2_CNTXT << 1 | BNXT_ULP_DIRECTION_EGRESS] = { @@ -1987,13 +1987,13 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = { BNXT_ULP_DIRECTION_INGRESS] = { .name = "INGRESS GENERIC_TABLE_TUNNEL_GPARSE_CACHE", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, - .result_num_entries = 0, - .result_num_bytes = 0, - .key_num_bytes = 0, + .result_num_entries = 64, + .result_num_bytes = 10, + .key_num_bytes = 1, .partial_key_num_bytes = 0, - .num_buckets = 0, - .hash_tbl_entries = 0, - .result_byte_order = BNXT_ULP_BYTE_ORDER_LE, + .num_buckets = 4, + .hash_tbl_entries = 256, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_GPARSE_CACHE << 1 | BNXT_ULP_DIRECTION_EGRESS] = { @@ -2011,25 +2011,25 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = { BNXT_ULP_DIRECTION_INGRESS] = { .name = "INGRESS GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, - .result_num_entries = 0, - .result_num_bytes = 0, - .key_num_bytes = 0, + .result_num_entries = 128, + .result_num_bytes = 8, + .key_num_bytes = 56, .partial_key_num_bytes = 0, - .num_buckets = 0, - .hash_tbl_entries = 0, - .result_byte_order = BNXT_ULP_BYTE_ORDER_LE, + .num_buckets = 4, + .hash_tbl_entries = 512, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE }, [BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE << 1 | BNXT_ULP_DIRECTION_EGRESS] = { .name = "EGRESS GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE", .gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_HASH_LIST, - .result_num_entries = 0, - .result_num_bytes = 0, - .key_num_bytes = 0, + .result_num_entries = 128, + .result_num_bytes = 8, + .key_num_bytes = 56, .partial_key_num_bytes = 0, - .num_buckets = 0, - .hash_tbl_entries = 0, - .result_byte_order = BNXT_ULP_BYTE_ORDER_LE, + .num_buckets = 4, + .hash_tbl_entries = 512, + .result_byte_order = BNXT_ULP_BYTE_ORDER_LE } }; @@ -2374,8 +2374,8 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = { .flags = 0, .default_priority = 0, .max_def_priority = 0, - .min_flow_priority = 256, - .max_flow_priority = 0, + .min_flow_priority = 0, + .max_flow_priority = 255, .vxlan_port = 0, .vxlan_ip_port = 0, .max_pools = 1, diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_act.c index e233486870..196a0f01ab 100644 --- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_act.c +++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor2_act.c @@ -16,9 +16,9 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = { .num_tbls = 24, .start_tbl_idx = 0, .reject_info = { - .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, .cond_start_idx = 0, - .cond_nums = 2 } + .cond_nums = 0 } }, /* act_tid: 2, ingress */ [2] = { @@ -27,7 +27,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = { .start_tbl_idx = 24, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 24, + .cond_start_idx = 23, .cond_nums = 0 } }, /* act_tid: 3, ingress */ @@ -37,7 +37,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = { .start_tbl_idx = 25, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 24, + .cond_start_idx = 23, .cond_nums = 0 } }, /* act_tid: 4, ingress */ @@ -47,7 +47,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = { .start_tbl_idx = 37, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 } }, /* act_tid: 5, ingress */ @@ -57,7 +57,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = { .start_tbl_idx = 38, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 } }, /* act_tid: 6, ingress */ @@ -67,67 +67,67 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = { .start_tbl_idx = 39, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 } }, /* act_tid: 7, egress */ [7] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, - .num_tbls = 42, + .num_tbls = 47, .start_tbl_idx = 58, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 43, - .cond_nums = 2 } + .cond_start_idx = 42, + .cond_nums = 1 } }, /* act_tid: 8, egress */ [8] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 1, - .start_tbl_idx = 100, + .start_tbl_idx = 105, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 } }, /* act_tid: 9, egress */ [9] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 1, - .start_tbl_idx = 101, + .start_tbl_idx = 106, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 } }, /* act_tid: 10, egress */ [10] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 1, - .start_tbl_idx = 102, + .start_tbl_idx = 107, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 } }, /* act_tid: 11, egress */ [11] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 1, - .start_tbl_idx = 103, + .start_tbl_idx = 108, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 } }, /* act_tid: 12, egress */ [12] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 6, - .start_tbl_idx = 104, + .start_tbl_idx = 109, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 4 } } }; @@ -139,12 +139,11 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .resource_sub_type = BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE, .direction = TF_DIR_RX, - .true_message = "Reject due to unsupported jump action.", .execute_info = { - .cond_true_goto = 1023, + .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 2, + .cond_start_idx = 0, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -165,7 +164,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3, + .cond_start_idx = 1, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -181,7 +180,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 4, + .cond_start_idx = 2, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC, .tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX, @@ -200,13 +199,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 4, + .cond_start_idx = 2, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .func_info = { .func_opc = BNXT_ULP_FUNC_OPC_BIT_OR, - .func_oper_size = 16, + .func_oper_size = 32, .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, .func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX, .func_src2 = BNXT_ULP_FUNC_SRC_CONST, @@ -223,7 +222,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 4, + .cond_start_idx = 2, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -247,7 +246,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 4, + .cond_start_idx = 2, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -269,7 +268,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 5, + .cond_start_idx = 3, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -285,7 +284,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 6, + .cond_start_idx = 4, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -307,7 +306,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 7, + .cond_start_idx = 5, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -320,7 +319,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 8, + .cond_start_idx = 6, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -352,7 +351,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 9, + .cond_start_idx = 7, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -374,7 +373,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 10, + .cond_start_idx = 8, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -393,7 +392,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 11, + .cond_start_idx = 9, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -415,7 +414,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 11, + .cond_start_idx = 9, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -436,7 +435,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 13, + .cond_start_idx = 11, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -452,7 +451,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 14, + .cond_start_idx = 12, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL_F1, @@ -471,7 +470,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 14, + .cond_start_idx = 12, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -494,7 +493,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 14, + .cond_start_idx = 12, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL, @@ -513,7 +512,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 15, + .cond_start_idx = 13, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -531,10 +530,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .direction = TF_DIR_RX, .true_message = "Reject due to both queue and rss set", .execute_info = { - .cond_true_goto = 1, + .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 15, + .cond_start_idx = 13, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -549,7 +548,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 17, + .cond_start_idx = 15, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC, @@ -569,7 +568,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 18, + .cond_start_idx = 16, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC, @@ -590,7 +589,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 19, + .cond_start_idx = 17, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, @@ -609,7 +608,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 24, + .cond_start_idx = 23, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -630,7 +629,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 24, + .cond_start_idx = 23, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -643,7 +642,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 24, + .cond_start_idx = 23, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -659,7 +658,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 25, + .cond_start_idx = 24, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -681,7 +680,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 25, + .cond_start_idx = 24, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -694,7 +693,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 26, + .cond_start_idx = 25, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE, @@ -715,7 +714,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 27, + .cond_start_idx = 26, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -732,7 +731,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 27, + .cond_start_idx = 26, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0, @@ -756,7 +755,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 27, + .cond_start_idx = 26, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL, @@ -776,7 +775,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -799,7 +798,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, @@ -819,7 +818,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -842,7 +841,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0, @@ -865,7 +864,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -890,7 +889,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -904,7 +903,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -917,7 +916,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 10, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 28, + .cond_start_idx = 27, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -932,7 +931,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 30, + .cond_start_idx = 29, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -954,7 +953,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 31, + .cond_start_idx = 30, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -971,7 +970,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 32, + .cond_start_idx = 31, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -996,7 +995,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 32, + .cond_start_idx = 31, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1018,7 +1017,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 33, + .cond_start_idx = 32, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1034,7 +1033,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 34, + .cond_start_idx = 33, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1056,7 +1055,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 34, + .cond_start_idx = 33, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1072,7 +1071,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 35, + .cond_start_idx = 34, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0, @@ -1094,7 +1093,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 35, + .cond_start_idx = 34, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1117,7 +1116,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 35, + .cond_start_idx = 34, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1132,7 +1131,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 36, + .cond_start_idx = 35, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1154,7 +1153,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 37, + .cond_start_idx = 36, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE, @@ -1177,7 +1176,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 38, + .cond_start_idx = 37, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1199,7 +1198,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 39, + .cond_start_idx = 38, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE, @@ -1220,7 +1219,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 40, + .cond_start_idx = 39, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1235,7 +1234,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 40, + .cond_start_idx = 39, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1260,7 +1259,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 41, + .cond_start_idx = 40, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_RD_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0, @@ -1282,7 +1281,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 42, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0, @@ -1299,12 +1298,11 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .resource_sub_type = BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE, .direction = TF_DIR_TX, - .true_message = "Reject due to unsupported jump action.", .execute_info = { - .cond_true_goto = 1023, + .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 45, + .cond_start_idx = 43, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1325,7 +1323,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 46, + .cond_start_idx = 44, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1341,7 +1339,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 47, + .cond_start_idx = 45, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC, .tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX, @@ -1360,13 +1358,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 47, + .cond_start_idx = 45, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .func_info = { .func_opc = BNXT_ULP_FUNC_OPC_BIT_OR, - .func_oper_size = 16, + .func_oper_size = 32, .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, .func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX, .func_src2 = BNXT_ULP_FUNC_SRC_CONST, @@ -1383,7 +1381,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 47, + .cond_start_idx = 45, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1408,7 +1406,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 47, + .cond_start_idx = 45, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL, @@ -1427,7 +1425,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 48, + .cond_start_idx = 46, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1450,7 +1448,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 48, + .cond_start_idx = 46, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1472,7 +1470,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 49, + .cond_start_idx = 47, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1485,7 +1483,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 50, + .cond_start_idx = 48, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1515,7 +1513,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 51, + .cond_start_idx = 49, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1538,7 +1536,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 52, + .cond_start_idx = 50, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -1560,7 +1558,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 63, + .cond_start_idx = 61, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -1579,7 +1577,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 74, + .cond_start_idx = 72, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1597,9 +1595,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 24, + .cond_false_goto = 29, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 74, + .cond_start_idx = 72, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1613,7 +1611,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 76, + .cond_start_idx = 74, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1626,9 +1624,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 6, + .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 77, + .cond_start_idx = 75, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1647,9 +1645,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 4, + .cond_false_goto = 9, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 78, + .cond_start_idx = 76, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1665,9 +1663,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .execute_info = { .cond_true_goto = 1, .cond_false_goto = 1, - .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 79, - .cond_nums = 1 }, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 77, + .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_SRP_HNDL, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, @@ -1678,15 +1676,15 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .result_num_fields = 0, .encap_num_fields = 3 }, - { /* act_tid: 7, , table: control.srp_handle_to_offset */ - .description = "control.srp_handle_to_offset", + { /* act_tid: 7, , table: control.srp_v4_handle_to_offset */ + .description = "control.srp_v4_handle_to_offset", .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 = 80, + .cond_start_idx = 77, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1705,10 +1703,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_CACHE, .direction = TF_DIR_TX, .execute_info = { - .cond_true_goto = 1, + .cond_true_goto = 6, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 80, + .cond_start_idx = 77, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, @@ -1722,6 +1720,110 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .result_bit_size = 64, .result_num_fields = 2 }, + { /* act_tid: 7, , table: source_property_ipv6_cache.rd */ + .description = "source_property_ipv6_cache.rd", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_IPV6_CACHE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 5, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 77, + .cond_nums = 1 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 25, + .blob_key_bit_size = 181, + .key_bit_size = 181, + .key_num_fields = 3, + .ident_start_idx = 36, + .ident_nums = 1 + }, + { /* act_tid: 7, , table: control.sp_rec_v6 */ + .description = "control.sp_rec_v6", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 4, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 78, + .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 + }, + { /* act_tid: 7, , table: sp_smac_ipv6.0 */ + .description = "sp_smac_ipv6.0", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE, + .resource_type = CFA_RSUBTYPE_CMM_ACT, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT, + .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 = 79, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_CMM_SRP_HNDL, + .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 = 258, + .result_bit_size = 0, + .result_num_fields = 0, + .encap_num_fields = 3 + }, + { /* act_tid: 7, , table: control.srp_v6_handle_to_offset */ + .description = "control.srp_v6_handle_to_offset", + .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 = 79, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_HANDLE_TO_OFFSET, + .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, + .func_opr1 = BNXT_ULP_RF_IDX_CMM_SRP_HNDL, + .func_src2 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr2 = 8, + .func_dst_opr = BNXT_ULP_RF_IDX_MAIN_SP_PTR } + }, + { /* act_tid: 7, , table: source_property_ipv6_cache.wr */ + .description = "source_property_ipv6_cache.wr", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_IPV6_CACHE, + .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 = 79, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 28, + .blob_key_bit_size = 181, + .key_bit_size = 181, + .key_num_fields = 3, + .result_start_idx = 261, + .result_bit_size = 64, + .result_num_fields = 2 + }, { /* act_tid: 7, , table: control.do_vxlan_check */ .description = "control.do_vxlan_check", .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, @@ -1730,7 +1832,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 11, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 80, + .cond_start_idx = 79, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1745,17 +1847,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 81, + .cond_start_idx = 80, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 25, + .key_start_idx = 31, .blob_key_bit_size = 141, .key_bit_size = 141, .key_num_fields = 6, - .ident_start_idx = 36, + .ident_start_idx = 37, .ident_nums = 1 }, { /* act_tid: 7, , table: control.vxlan_v4_encap */ @@ -1766,7 +1868,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 17, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 82, + .cond_start_idx = 81, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1783,14 +1885,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 83, + .cond_start_idx = 82, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ENC_HNDL, .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 = 258, + .result_start_idx = 263, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 25 @@ -1803,7 +1905,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 83, + .cond_start_idx = 82, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1825,17 +1927,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 14, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 83, + .cond_start_idx = 82, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 31, + .key_start_idx = 37, .blob_key_bit_size = 141, .key_bit_size = 141, .key_num_fields = 6, - .result_start_idx = 283, + .result_start_idx = 288, .result_bit_size = 64, .result_num_fields = 2 }, @@ -1849,17 +1951,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 83, + .cond_start_idx = 82, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 37, + .key_start_idx = 43, .blob_key_bit_size = 237, .key_bit_size = 237, .key_num_fields = 6, - .ident_start_idx = 37, + .ident_start_idx = 38, .ident_nums = 1 }, { /* act_tid: 7, , table: control.vxlan_v6_encap */ @@ -1870,7 +1972,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 12, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 84, + .cond_start_idx = 83, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1887,14 +1989,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 85, + .cond_start_idx = 84, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ENC_HNDL, .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 = 285, + .result_start_idx = 290, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 23 @@ -1907,7 +2009,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 85, + .cond_start_idx = 84, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1929,17 +2031,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 9, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 85, + .cond_start_idx = 84, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 43, + .key_start_idx = 49, .blob_key_bit_size = 237, .key_bit_size = 237, .key_num_fields = 6, - .result_start_idx = 308, + .result_start_idx = 313, .result_bit_size = 64, .result_num_fields = 2 }, @@ -1953,17 +2055,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1023, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 85, + .cond_start_idx = 84, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 49, + .key_start_idx = 55, .blob_key_bit_size = 493, .key_bit_size = 493, .key_num_fields = 15, - .ident_start_idx = 38, + .ident_start_idx = 39, .ident_nums = 1 }, { /* act_tid: 7, , table: control.geneve_encap */ @@ -1974,7 +2076,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 7, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 86, + .cond_start_idx = 85, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1991,14 +2093,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 2, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 87, + .cond_start_idx = 86, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ENC_HNDL, .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 = 310, + .result_start_idx = 315, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 31 @@ -2014,14 +2116,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 88, + .cond_start_idx = 87, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ENC_HNDL, .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 = 341, + .result_start_idx = 346, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 29 @@ -2034,7 +2136,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 89, + .cond_start_idx = 88, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2056,17 +2158,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 3, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 89, + .cond_start_idx = 88, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 64, + .key_start_idx = 70, .blob_key_bit_size = 493, .key_bit_size = 493, .key_num_fields = 15, - .result_start_idx = 370, + .result_start_idx = 375, .result_bit_size = 64, .result_num_fields = 2 }, @@ -2081,13 +2183,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 89, + .cond_start_idx = 88, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ENC_HNDL, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .result_start_idx = 372, + .result_start_idx = 377, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 11 @@ -2100,7 +2202,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 90, + .cond_start_idx = 89, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2123,14 +2225,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 90, + .cond_start_idx = 89, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, .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 = 383, + .result_start_idx = 388, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2142,7 +2244,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2163,7 +2265,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -2177,7 +2279,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -2191,7 +2293,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -2205,7 +2307,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 92, + .cond_start_idx = 91, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -2221,7 +2323,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 96, + .cond_start_idx = 95, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -2234,7 +2336,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_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 = 401, + .result_start_idx = 406, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2247,7 +2349,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 96, + .cond_start_idx = 95, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2270,14 +2372,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 2, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 96, + .cond_start_idx = 95, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL, .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 = 421, + .result_start_idx = 426, .result_bit_size = 128, .result_num_fields = 2 }, @@ -2289,7 +2391,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 97, + .cond_start_idx = 96, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2312,14 +2414,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 97, + .cond_start_idx = 96, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, .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 = 423, + .result_start_idx = 428, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2331,7 +2433,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 97, + .cond_start_idx = 96, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2349,61 +2451,52 @@ struct bnxt_ulp_mapper_cond_list_info ulp_thor2_act_cond_oper_list[] = { }; struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { - /* cond_reject: thor2, act_tid: 1 */ - { - .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, - .cond_operand = BNXT_ULP_ACT_BIT_QUEUE - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, - .cond_operand = BNXT_ULP_ACT_BIT_JUMP - }, - /* cond_execute: act_tid: 1, flow_chain_cache.rd:2*/ + /* cond_execute: act_tid: 1, flow_chain_cache.rd:0*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* cond_execute: act_tid: 1, control.flow_chain:3*/ + /* cond_execute: act_tid: 1, control.flow_chain:1*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 1, shared_meter_tbl_cache.rd:4*/ + /* cond_execute: act_tid: 1, shared_meter_tbl_cache.rd:2*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_METER }, - /* cond_execute: act_tid: 1, control.meter_chk:5*/ + /* cond_execute: act_tid: 1, control.meter_chk:3*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 1, shared_mirror_record.rd:6*/ + /* cond_execute: act_tid: 1, shared_mirror_record.rd:4*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE }, - /* cond_execute: act_tid: 1, control.mirror:7*/ + /* cond_execute: act_tid: 1, control.mirror:5*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 1, control.do_mod:8*/ + /* cond_execute: act_tid: 1, control.do_mod:6*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_RF_0 }, - /* cond_execute: act_tid: 1, mod_record.ttl_0:9*/ + /* cond_execute: act_tid: 1, mod_record.ttl_0:7*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL }, - /* cond_execute: act_tid: 1, mod_record.non_ttl_0:10*/ + /* cond_execute: act_tid: 1, mod_record.non_ttl_0:8*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET, .cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL }, - /* cond_execute: act_tid: 1, tunnel_cache.f1_f2_act_rd:11*/ + /* cond_execute: act_tid: 1, tunnel_cache.f1_f2_act_rd:9*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_F1 @@ -2412,17 +2505,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_F2 }, - /* cond_execute: act_tid: 1, control.tunnel_cache_check_act:13*/ + /* cond_execute: act_tid: 1, control.tunnel_cache_check_act:11*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 1, cmm_stat_record.0:14*/ + /* cond_execute: act_tid: 1, cmm_stat_record.0:12*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_COUNT }, - /* cond_execute: act_tid: 1, control.queue_and_rss_test:15*/ + /* cond_execute: act_tid: 1, control.queue_and_rss_test:13*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_QUEUE @@ -2431,22 +2524,22 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_RSS }, - /* cond_execute: act_tid: 1, vnic_interface_rss_config.0:17*/ + /* cond_execute: act_tid: 1, vnic_interface_rss_config.0:15*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_RSS }, - /* cond_execute: act_tid: 1, vnic_interface_queue_config.0:18*/ + /* cond_execute: act_tid: 1, vnic_interface_queue_config.0:16*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_QUEUE }, - /* field_cond: act_tid: 1, cmm_full_act_record.0:19*/ + /* field_cond: act_tid: 1, cmm_full_act_record.0:17*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_DROP }, - /* field_cond: act_tid: 1, cmm_full_act_record.0:20*/ + /* field_cond: act_tid: 1, cmm_full_act_record.0:18*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_RSS @@ -2455,7 +2548,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_QUEUE }, - /* field_cond: act_tid: 1, cmm_full_act_record.0:22*/ + /* field_cond: act_tid: 1, cmm_full_act_record.0:20*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, + .cond_operand = BNXT_ULP_ACT_BIT_JUMP + }, + /* field_cond: act_tid: 1, cmm_full_act_record.0:21*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VXLAN_DECAP @@ -2464,27 +2562,27 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_GENEVE_DECAP }, - /* cond_execute: act_tid: 3, control.delete_chk:24*/ + /* cond_execute: act_tid: 3, control.delete_chk:23*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_DELETE }, - /* cond_execute: act_tid: 3, control.mirror_del_exist_chk:25*/ + /* cond_execute: act_tid: 3, control.mirror_del_exist_chk:24*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 3, control.mirror_ref_cnt_chk:26*/ + /* cond_execute: act_tid: 3, control.mirror_ref_cnt_chk:25*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_CC }, - /* cond_execute: act_tid: 3, cmm_stat_record.0:27*/ + /* cond_execute: act_tid: 3, cmm_stat_record.0:26*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_COUNT }, - /* cond_execute: act_tid: 6, control.create_check:28*/ + /* cond_execute: act_tid: 6, control.create_check:27*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET, .cond_operand = BNXT_ULP_ACT_BIT_UPDATE @@ -2493,62 +2591,62 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET, .cond_operand = BNXT_ULP_ACT_BIT_DELETE }, - /* cond_execute: act_tid: 6, meter_profile_tbl_cache.rd:30*/ + /* cond_execute: act_tid: 6, meter_profile_tbl_cache.rd:29*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_METER_PROFILE }, - /* cond_execute: act_tid: 6, control.shared_meter_profile_0:31*/ + /* cond_execute: act_tid: 6, control.shared_meter_profile_0:30*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd:32*/ + /* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd:31*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER }, - /* cond_execute: act_tid: 6, control.meter_created_chk:33*/ + /* cond_execute: act_tid: 6, control.meter_created_chk:32*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 6, control.shared_meter_profile_chk:34*/ + /* cond_execute: act_tid: 6, control.shared_meter_profile_chk:33*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 6, control.delete_check:35*/ + /* cond_execute: act_tid: 6, control.delete_check:34*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_DELETE }, - /* cond_execute: act_tid: 6, meter_profile_tbl_cache.del_chk:36*/ + /* cond_execute: act_tid: 6, meter_profile_tbl_cache.del_chk:35*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_METER_PROFILE }, - /* cond_execute: act_tid: 6, control.mtr_prof_ref_cnt_chk:37*/ + /* cond_execute: act_tid: 6, control.mtr_prof_ref_cnt_chk:36*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_CC }, - /* cond_execute: act_tid: 6, shared_meter_tbl_cache.del_chk:38*/ + /* cond_execute: act_tid: 6, shared_meter_tbl_cache.del_chk:37*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER }, - /* cond_execute: act_tid: 6, control.shared_mtr_ref_cnt_chk:39*/ + /* cond_execute: act_tid: 6, control.shared_mtr_ref_cnt_chk:38*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_CC }, - /* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd_update:40*/ + /* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd_update:39*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER }, - /* cond_execute: act_tid: 6, meter_tbl.update_rd:41*/ + /* cond_execute: act_tid: 6, meter_tbl.update_rd:40*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS @@ -2560,53 +2658,49 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { /* cond_reject: thor2, act_tid: 7 */ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, - .cond_operand = BNXT_ULP_ACT_BIT_JUMP - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE }, - /* cond_execute: act_tid: 7, flow_chain_cache.rd:45*/ + /* cond_execute: act_tid: 7, flow_chain_cache.rd:43*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* cond_execute: act_tid: 7, control.flow_chain:46*/ + /* cond_execute: act_tid: 7, control.flow_chain:44*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 7, cmm_stat_record.0:47*/ + /* cond_execute: act_tid: 7, cmm_stat_record.0:45*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_COUNT }, - /* cond_execute: act_tid: 7, shared_mirror_record.rd:48*/ + /* cond_execute: act_tid: 7, shared_mirror_record.rd:46*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE }, - /* cond_execute: act_tid: 7, control.mirror:49*/ + /* cond_execute: act_tid: 7, control.mirror:47*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 7, control.do_mod:50*/ + /* cond_execute: act_tid: 7, control.do_mod:48*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_RF_0 }, - /* cond_execute: act_tid: 7, control.vf_to_vf_calc:51*/ + /* cond_execute: act_tid: 7, control.vf_to_vf_calc:49*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF }, - /* cond_execute: act_tid: 7, mod_record.ttl_0:52*/ + /* cond_execute: act_tid: 7, mod_record.ttl_0:50*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL }, - /* field_cond: act_tid: 7, mod_record.ttl_0:53*/ + /* field_cond: act_tid: 7, mod_record.ttl_0:51*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2615,7 +2709,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.ttl_0:55*/ + /* field_cond: act_tid: 7, mod_record.ttl_0:53*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2624,7 +2718,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.ttl_0:57*/ + /* field_cond: act_tid: 7, mod_record.ttl_0:55*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2633,7 +2727,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.ttl_0:59*/ + /* field_cond: act_tid: 7, mod_record.ttl_0:57*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2642,22 +2736,22 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.ttl_0:61*/ + /* field_cond: act_tid: 7, mod_record.ttl_0:59*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF }, - /* field_cond: act_tid: 7, mod_record.ttl_0:62*/ + /* field_cond: act_tid: 7, mod_record.ttl_0:60*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* cond_execute: act_tid: 7, mod_record.non_ttl_0:63*/ + /* cond_execute: act_tid: 7, mod_record.non_ttl_0:61*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET, .cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL }, - /* field_cond: act_tid: 7, mod_record.non_ttl_0:64*/ + /* field_cond: act_tid: 7, mod_record.non_ttl_0:62*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2666,7 +2760,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.non_ttl_0:66*/ + /* field_cond: act_tid: 7, mod_record.non_ttl_0:64*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2675,7 +2769,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.non_ttl_0:68*/ + /* field_cond: act_tid: 7, mod_record.non_ttl_0:66*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2684,7 +2778,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.non_ttl_0:70*/ + /* field_cond: act_tid: 7, mod_record.non_ttl_0:68*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2693,17 +2787,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, mod_record.non_ttl_0:72*/ + /* field_cond: act_tid: 7, mod_record.non_ttl_0:70*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF }, - /* field_cond: act_tid: 7, mod_record.non_ttl_0:73*/ + /* field_cond: act_tid: 7, mod_record.non_ttl_0:71*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* cond_execute: act_tid: 7, control.do_tunnel_check:74*/ + /* cond_execute: act_tid: 7, control.do_tunnel_check:72*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VXLAN_ENCAP @@ -2712,82 +2806,87 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_GENEVE_ENCAP }, - /* cond_execute: act_tid: 7, control.do_tunnel_vlan_exclusion:76*/ + /* cond_execute: act_tid: 7, control.do_tunnel_vlan_exclusion:74*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN }, - /* cond_execute: act_tid: 7, source_property_cache.rd:77*/ + /* cond_execute: act_tid: 7, source_property_cache.rd:75*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET, .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG }, - /* cond_execute: act_tid: 7, control.sp_rec_v4:78*/ + /* cond_execute: act_tid: 7, control.sp_rec_v4:76*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 7, sp_smac_ipv4.0:79*/ + /* cond_execute: act_tid: 7, source_property_ipv6_cache.rd:77*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET, - .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG + .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG }, - /* cond_execute: act_tid: 7, control.do_vxlan_check:80*/ + /* cond_execute: act_tid: 7, control.sp_rec_v6:78*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* cond_execute: act_tid: 7, control.do_vxlan_check:79*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VXLAN_ENCAP }, - /* cond_execute: act_tid: 7, vxlan_encap_rec_cache.rd:81*/ + /* cond_execute: act_tid: 7, vxlan_encap_rec_cache.rd:80*/ { .cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* cond_execute: act_tid: 7, control.vxlan_v4_encap:82*/ + /* cond_execute: act_tid: 7, control.vxlan_v4_encap:81*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 7, vxlan_encap_ipv6_rec_cache.rd:83*/ + /* cond_execute: act_tid: 7, vxlan_encap_ipv6_rec_cache.rd:82*/ { .cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* cond_execute: act_tid: 7, control.vxlan_v6_encap:84*/ + /* cond_execute: act_tid: 7, control.vxlan_v6_encap:83*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 7, geneve_encap_rec_cache.rd:85*/ + /* cond_execute: act_tid: 7, geneve_encap_rec_cache.rd:84*/ { .cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE }, - /* cond_execute: act_tid: 7, control.geneve_encap:86*/ + /* cond_execute: act_tid: 7, control.geneve_encap:85*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: act_tid: 7, ext_tun_geneve_encap_record.ipv4_vxlan:87*/ + /* cond_execute: act_tid: 7, ext_tun_geneve_encap_record.ipv4_vxlan:86*/ { .cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* cond_execute: act_tid: 7, ext_tun_geneve_encap_record.ipv6_geneve:88*/ + /* cond_execute: act_tid: 7, ext_tun_geneve_encap_record.ipv6_geneve:87*/ { .cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* cond_execute: act_tid: 7, ext_vtag_encap_record.0:89*/ + /* cond_execute: act_tid: 7, ext_vtag_encap_record.0:88*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN }, - /* field_cond: act_tid: 7, cmm_full_act_record.0:90*/ + /* field_cond: act_tid: 7, cmm_full_act_record.0:89*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_JUMP }, - /* field_cond: act_tid: 7, cmm_full_act_record.0:91*/ + /* field_cond: act_tid: 7, cmm_full_act_record.0:90*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF @@ -2809,7 +2908,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE }, - /* cond_execute: act_tid: 12, cmm_stat_record.0:96*/ + /* cond_execute: act_tid: 12, cmm_stat_record.0:95*/ { .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET, .cond_operand = BNXT_ULP_ACT_BIT_COUNT @@ -3101,33 +3200,169 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff} } }, - /* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */ + /* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */ + { + .field_info_mask = { + .description = "sw_meter_profile_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "sw_meter_profile_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_opr1 = { + (BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff} + } + }, + /* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */ + { + .field_info_mask = { + .description = "sw_meter_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "sw_meter_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_opr1 = { + (BNXT_ULP_ACT_PROP_IDX_METER_INST_ID >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff} + } + }, + /* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */ + { + .field_info_mask = { + .description = "sw_meter_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "sw_meter_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_opr1 = { + (BNXT_ULP_ACT_PROP_IDX_METER_INST_ID >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff} + } + }, + /* act_tid: 7, , table: flow_chain_cache.rd */ + { + .field_info_mask = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_opr1 = { + (BNXT_ULP_ACT_PROP_IDX_JUMP >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff} + } + }, + /* act_tid: 7, , table: flow_chain_cache.write */ + { + .field_info_mask = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_opr1 = { + (BNXT_ULP_ACT_PROP_IDX_JUMP >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff} + } + }, + /* act_tid: 7, , table: shared_mirror_record.rd */ + { + .field_info_mask = { + .description = "shared_index", + .field_bit_size = 5, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "shared_index", + .field_bit_size = 5, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_opr1 = { + (BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE >> 8) & 0xff, + BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff} + } + }, + /* act_tid: 7, , table: source_property_cache.rd */ { .field_info_mask = { - .description = "sw_meter_profile_id", - .field_bit_size = 32, + .description = "smac", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { + 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff} }, .field_info_spec = { - .description = "sw_meter_profile_id", - .field_bit_size = 32, + .description = "smac", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr1 = { - (BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff} + (BNXT_ULP_ENC_FIELD_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_ETH_SMAC & 0xff} } }, - /* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */ { .field_info_mask = { - .description = "sw_meter_id", + .description = "ipv4_src_addr", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -3138,65 +3373,64 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "sw_meter_id", + .description = "ipv4_src_addr", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr1 = { - (BNXT_ULP_ACT_PROP_IDX_METER_INST_ID >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff} + (BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff} } }, - /* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */ { .field_info_mask = { - .description = "sw_meter_id", - .field_bit_size = 32, + .description = "tbl_scope", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { - 0xff, - 0xff, - 0xff, 0xff} }, .field_info_spec = { - .description = "sw_meter_id", - .field_bit_size = 32, + .description = "tbl_scope", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE, .field_opr1 = { - (BNXT_ULP_ACT_PROP_IDX_METER_INST_ID >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff} + (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff, + (BNXT_ULP_PORT_TABLE_TABLE_SCOPE >> 8) & 0xff, + BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff} } }, - /* act_tid: 7, , table: flow_chain_cache.rd */ + /* act_tid: 7, , table: source_property_cache.wr */ { .field_info_mask = { - .description = "group_id", - .field_bit_size = 32, + .description = "smac", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { + 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff} }, .field_info_spec = { - .description = "group_id", - .field_bit_size = 32, + .description = "smac", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr1 = { - (BNXT_ULP_ACT_PROP_IDX_JUMP >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff} + (BNXT_ULP_ENC_FIELD_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_ETH_SMAC & 0xff} } }, - /* act_tid: 7, , table: flow_chain_cache.write */ { .field_info_mask = { - .description = "group_id", + .description = "ipv4_src_addr", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -3207,19 +3441,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "group_id", + .description = "ipv4_src_addr", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr1 = { - (BNXT_ULP_ACT_PROP_IDX_JUMP >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff} + (BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff} } }, - /* act_tid: 7, , table: shared_mirror_record.rd */ { .field_info_mask = { - .description = "shared_index", + .description = "tbl_scope", .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -3227,16 +3460,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "shared_index", + .description = "tbl_scope", .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP, + .field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE, .field_opr1 = { - (BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE >> 8) & 0xff, - BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff} + (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff, + (BNXT_ULP_PORT_TABLE_TABLE_SCOPE >> 8) & 0xff, + BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff} } }, - /* act_tid: 7, , table: source_property_cache.rd */ + /* act_tid: 7, , table: source_property_ipv6_cache.rd */ { .field_info_mask = { .description = "smac", @@ -3263,24 +3498,36 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { }, { .field_info_mask = { - .description = "ipv4_src_addr", - .field_bit_size = 32, + .description = "ipv6_src_addr", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff} }, .field_info_spec = { - .description = "ipv4_src_addr", - .field_bit_size = 32, + .description = "ipv6_src_addr", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr1 = { - (BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff} + (BNXT_ULP_ENC_FIELD_IPV6_SADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff} } }, { @@ -3304,7 +3551,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff} } }, - /* act_tid: 7, , table: source_property_cache.wr */ + /* act_tid: 7, , table: source_property_ipv6_cache.wr */ { .field_info_mask = { .description = "smac", @@ -3331,24 +3578,36 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = { }, { .field_info_mask = { - .description = "ipv4_src_addr", - .field_bit_size = 32, + .description = "ipv6_src_addr", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff} }, .field_info_spec = { - .description = "ipv4_src_addr", - .field_bit_size = 32, + .description = "ipv6_src_addr", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, .field_opr1 = { - (BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff, - BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff} + (BNXT_ULP_ENC_FIELD_IPV6_SADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff} } }, { @@ -4595,14 +4854,33 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (20 >> 8) & 0xff, - 20 & 0xff, + (18 >> 8) & 0xff, + 18 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { (BNXT_ULP_RF_IDX_RSS_VNIC >> 8) & 0xff, BNXT_ULP_RF_IDX_RSS_VNIC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (1 >> 8) & 0xff, + 1 & 0xff} + }, + { + .description = "vnic_or_vport", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (20 >> 8) & 0xff, + 20 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + (ULP_THOR2_SYM_RECYCLE_DST >> 8) & 0xff, + ULP_THOR2_SYM_RECYCLE_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP, .field_opr3 = { (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff, @@ -4614,8 +4892,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (62 >> 8) & 0xff, - 62 & 0xff, + (60 >> 8) & 0xff, + 60 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -4630,8 +4908,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (73 >> 8) & 0xff, - 73 & 0xff, + (71 >> 8) & 0xff, + 71 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -4646,8 +4924,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (91 >> 8) & 0xff, - 91 & 0xff, + (90 >> 8) & 0xff, + 90 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -5713,8 +5991,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (19 >> 8) & 0xff, - 19 & 0xff, + (17 >> 8) & 0xff, + 17 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -5732,8 +6010,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (22 >> 8) & 0xff, - 22 & 0xff, + (21 >> 8) & 0xff, + 21 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -6651,8 +6929,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (53 >> 8) & 0xff, - 53 & 0xff, + (51 >> 8) & 0xff, + 51 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -6862,8 +7140,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (55 >> 8) & 0xff, - 55 & 0xff, + (53 >> 8) & 0xff, + 53 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -6875,8 +7153,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (57 >> 8) & 0xff, - 57 & 0xff, + (55 >> 8) & 0xff, + 55 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -6888,8 +7166,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (59 >> 8) & 0xff, - 59 & 0xff, + (57 >> 8) & 0xff, + 57 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -6901,8 +7179,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (61 >> 8) & 0xff, - 61 & 0xff, + (59 >> 8) & 0xff, + 59 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -6911,8 +7189,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { BNXT_ULP_RF_IDX_RF_1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (1 >> 8) & 0xff, - 1 & 0xff} + (2 >> 8) & 0xff, + 2 & 0xff} }, { .description = "alt_pfid", @@ -7135,8 +7413,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (64 >> 8) & 0xff, - 64 & 0xff, + (62 >> 8) & 0xff, + 62 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -7344,8 +7622,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (66 >> 8) & 0xff, - 66 & 0xff, + (64 >> 8) & 0xff, + 64 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -7357,8 +7635,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (68 >> 8) & 0xff, - 68 & 0xff, + (66 >> 8) & 0xff, + 66 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -7370,8 +7648,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (70 >> 8) & 0xff, - 70 & 0xff, + (68 >> 8) & 0xff, + 68 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -7383,8 +7661,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (72 >> 8) & 0xff, - 72 & 0xff, + (70 >> 8) & 0xff, + 70 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -7393,8 +7671,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { BNXT_ULP_RF_IDX_RF_1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (2 >> 8) & 0xff, - 2 & 0xff} + (3 >> 8) & 0xff, + 3 & 0xff} }, { .description = "l2_dmac", @@ -7600,6 +7878,50 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { (BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff, BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff} }, + /* act_tid: 7, , table: sp_smac_ipv6.0 */ + { + .description = "smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, + .field_opr1 = { + (BNXT_ULP_ENC_FIELD_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_ETH_SMAC & 0xff} + }, + { + .description = "ipv6_src_addr", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD, + .field_opr1 = { + (BNXT_ULP_ENC_FIELD_IPV6_SADDR >> 8) & 0xff, + BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff} + }, + { + .description = "reserved", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + /* act_tid: 7, , table: source_property_ipv6_cache.wr */ + { + .description = "rid", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_RID >> 8) & 0xff, + BNXT_ULP_RF_IDX_RID & 0xff} + }, + { + .description = "sp_rec_ptr", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff, + BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff} + }, /* act_tid: 7, , table: ext_tun_vxlan_encap_record.ipv4_vxlan */ { .description = "ecv_valid", @@ -8891,8 +9213,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (90 >> 8) & 0xff, - 90 & 0xff, + (89 >> 8) & 0xff, + 89 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -8901,8 +9223,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { ULP_THOR2_SYM_RECYCLE_DST & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (3 >> 8) & 0xff, - 3 & 0xff} + (4 >> 8) & 0xff, + 4 & 0xff} }, { .description = "dest_op", @@ -8992,7 +9314,10 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = { .description = "src_ptr", .field_bit_size = 28, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff, + BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff} }, { .description = "rsvd0", @@ -9505,6 +9830,13 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_act_ident_list[] = { .ident_bit_size = 32, .ident_bit_pos = 32 }, + /* act_tid: 7, , table: source_property_ipv6_cache.rd */ + { + .description = "sp_rec_ptr", + .regfile_idx = BNXT_ULP_RF_IDX_MAIN_SP_PTR, + .ident_bit_size = 32, + .ident_bit_pos = 32 + }, /* act_tid: 7, , table: vxlan_encap_rec_cache.rd */ { .description = "enc_rec_ptr", 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 1e386113d5..6e163e61a5 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 = 43, + .num_tbls = 77, .start_tbl_idx = 0, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, @@ -23,31 +23,31 @@ 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 = 28, - .start_tbl_idx = 43, + .num_tbls = 50, + .start_tbl_idx = 77, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 1657, + .cond_start_idx = 2109, .cond_nums = 0 } }, /* class_tid: 3, ingress */ [3] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 35, - .start_tbl_idx = 71, + .start_tbl_idx = 127, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 } }, /* class_tid: 4, egress */ [4] = { .device_name = BNXT_ULP_DEVICE_ID_THOR2, .num_tbls = 19, - .start_tbl_idx = 106, + .start_tbl_idx = 162, .reject_info = { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 } } }; @@ -76,6 +76,159 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .ident_start_idx = 0, .ident_nums = 2 }, + { /* class_tid: 1, , table: control.vxlan_ip_check */ + .description = "control.vxlan_ip_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .false_message = "invalid vxlan header combination", + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1023, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_OR, + .cond_start_idx = 0, + .cond_nums = 3 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 1, , table: tunnel_gparse_cache.custom_tunnel_rd */ + .description = "tunnel_gparse_cache.custom_tunnel_rd", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_GPARSE_CACHE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 7, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, + .cond_start_idx = 8, + .cond_nums = 2 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 1, + .blob_key_bit_size = 8, + .key_bit_size = 8, + .key_num_fields = 1, + .ident_start_idx = 2, + .ident_nums = 2 + }, + { /* class_tid: 1, , table: control.custom_tunnel */ + .description = "control.custom_tunnel", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 2, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 15, + .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 + }, + { /* class_tid: 1, , table: control.custom_tunnel_port_check_value */ + .description = "control.custom_tunnel_port_check_value", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .false_message = "port does not match configured custom tunnel port", + .execute_info = { + .cond_true_goto = 5, + .cond_false_goto = 1023, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 16, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_EQ, + .func_src1 = BNXT_ULP_FUNC_SRC_COMP_FIELD, + .func_opr1 = BNXT_ULP_CF_IDX_TUNNEL_PORT, + .func_src2 = BNXT_ULP_FUNC_SRC_REGFILE, + .func_opr2 = BNXT_ULP_RF_IDX_TUNNEL_PORT, + .func_dst_opr = BNXT_ULP_RF_IDX_CC } + }, + { /* class_tid: 1, , table: cust_tunnel.configure_vxlan_port */ + .description = "cust_tunnel.configure_vxlan_port", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GLOBAL_REGISTER_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GLOBAL_REGISTER_CUST_VXLAN, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 3, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_AND, + .cond_start_idx = 3, + .cond_nums = 1 }, + .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 = 0, + .result_bit_size = 16, + .result_num_fields = 1 + }, + { /* class_tid: 1, , table: cust_tunnel.configure_vxlan_ip_port */ + .description = "cust_tunnel.configure_vxlan_ip_port", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GLOBAL_REGISTER_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GLOBAL_REGISTER_CUST_VXLAN_IP, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 2, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_AND, + .cond_start_idx = 4, + .cond_nums = 1 }, + .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 = 1, + .result_bit_size = 16, + .result_num_fields = 1 + }, + { /* class_tid: 1, , table: cust_tunnel.configure_geneve_port */ + .description = "cust_tunnel.configure_geneve_port", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GLOBAL_REGISTER_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GLOBAL_REGISTER_CUST_GENEVE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 21, + .cond_nums = 1 }, + .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 = 2, + .result_bit_size = 16, + .result_num_fields = 1 + }, + { /* class_tid: 1, , table: tunnel_gparse_cache.custom_tunnel_wr */ + .description = "tunnel_gparse_cache.custom_tunnel_wr", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_GPARSE_CACHE, + .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 = 22, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 2, + .blob_key_bit_size = 8, + .key_bit_size = 8, + .key_num_fields = 1, + .result_start_idx = 3, + .result_bit_size = 80, + .result_num_fields = 3 + }, { /* class_tid: 1, , table: l2_cntxt_tcam_cache.def_rd */ .description = "l2_cntxt_tcam_cache.def_rd", .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -87,17 +240,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 0, + .cond_start_idx = 27, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 1, + .key_start_idx = 3, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 2, + .ident_start_idx = 4, .ident_nums = 3 }, { /* class_tid: 1, , table: control.check_f1_f2_flow */ @@ -108,7 +261,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 7, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, - .cond_start_idx = 0, + .cond_start_idx = 27, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -123,17 +276,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 2, + .cond_start_idx = 29, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 2, + .key_start_idx = 4, .blob_key_bit_size = 19, .key_bit_size = 19, .key_num_fields = 2, - .ident_start_idx = 5, + .ident_start_idx = 7, .ident_nums = 3 }, { /* class_tid: 1, , table: control.tunnel_cache_check */ @@ -144,7 +297,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 2, + .cond_start_idx = 29, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -159,17 +312,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3, + .cond_start_idx = 30, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_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, - .pri_opcode = BNXT_ULP_PRI_OPC_CONST, - .pri_operand = 0, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, + .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_APP, .track_type = CFA_TRACK_TYPE_SID, - .ident_start_idx = 8, + .ident_start_idx = 10, .ident_nums = 1 }, { /* class_tid: 1, , table: cmm_stat_record.add_stat_tunnel_cache */ @@ -183,7 +336,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3, + .cond_start_idx = 30, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_NOP_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL_F1, @@ -191,7 +344,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 = 0, + .result_start_idx = 6, .result_bit_size = 128, .result_num_fields = 2 }, @@ -205,17 +358,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3, + .cond_start_idx = 30, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 4, + .key_start_idx = 6, .blob_key_bit_size = 19, .key_bit_size = 19, .key_num_fields = 2, - .result_start_idx = 2, + .result_start_idx = 8, .result_bit_size = 182, .result_num_fields = 5 }, @@ -224,10 +377,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, .execute_info = { - .cond_true_goto = 9, + .cond_true_goto = 28, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3, + .cond_start_idx = 30, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -240,7 +393,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 4, + .cond_start_idx = 31, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -248,9 +401,383 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opc = BNXT_ULP_FUNC_OPC_COND_LIST, .func_oper_size = 48, .func_src1 = BNXT_ULP_FUNC_SRC_KEY_EXT_LIST, - .func_opr1 = 0, + .func_opr1 = 2, .func_dst_opr = BNXT_ULP_RF_IDX_O_DMAC } }, + { /* class_tid: 1, , table: control.check_tunnel_recycle */ + .description = "control.check_tunnel_recycle", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 9, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_AND, + .cond_start_idx = 5, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 1, , table: control.multi_tunnel_check */ + .description = "control.multi_tunnel_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .false_message = "reject multi tunnel flow if group id or partial mask is specified", + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1023, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 38, + .cond_nums = 2 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 1, , table: multi_flow_tunnel_cache.rd */ + .description = "multi_flow_tunnel_cache.rd", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE, + .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 = 40, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 8, + .blob_key_bit_size = 447, + .key_bit_size = 447, + .key_num_fields = 9, + .ident_start_idx = 11, + .ident_nums = 1 + }, + { /* class_tid: 1, , table: control.multi_flow_cache_check */ + .description = "control.multi_flow_cache_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 5, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 64, + .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 + }, + { /* class_tid: 1, , table: jump_index_table.multi_flow_alloc */ + .description = "jump_index_table.multi_flow_alloc", + .resource_func = BNXT_ULP_RESOURCE_FUNC_ALLOCATOR_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_ALLOCATOR_TABLE_JUMP_INDEX, + .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 = 65, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC, + .tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .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 = 13, + .result_bit_size = 0, + .result_num_fields = 0 + }, + { /* class_tid: 1, , table: control.multi_flow_metadata_cal */ + .description = "control.multi_flow_metadata_cal", + .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 = 65, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_BIT_OR, + .func_oper_size = 32, + .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, + .func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .func_src2 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr2 = ULP_THOR2_SYM_CHAIN_META_VAL, + .func_dst_opr = BNXT_ULP_RF_IDX_JUMP_META } + }, + { /* class_tid: 1, , table: control.outer_present_mode_1 */ + .description = "control.outer_present_mode_1", + .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 = 65, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 8, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 1, + .func_dst_opr = BNXT_ULP_RF_IDX_OUTER_ADD } + }, + { /* class_tid: 1, , table: multi_flow_tunnel_cache.wr */ + .description = "multi_flow_tunnel_cache.wr", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE, + .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 = 65, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 17, + .blob_key_bit_size = 447, + .key_bit_size = 447, + .key_num_fields = 9, + .result_start_idx = 13, + .result_bit_size = 64, + .result_num_fields = 2 + }, + { /* class_tid: 1, , table: control.multi_flow_outer_loop_bit */ + .description = "control.multi_flow_outer_loop_bit", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 7, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 93, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 8, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 1, + .func_dst_opr = BNXT_ULP_RF_IDX_OUTER_LOOP } + }, + { /* class_tid: 1, , table: control.group_id_check */ + .description = "control.group_id_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 10, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 93, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 1, , table: flow_chain_cache.group_check */ + .description = "flow_chain_cache.group_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE, + .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 = 94, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 26, + .blob_key_bit_size = 32, + .key_bit_size = 32, + .key_num_fields = 1, + .ident_start_idx = 12, + .ident_nums = 1 + }, + { /* class_tid: 1, , table: control.flow_chain_group_id */ + .description = "control.flow_chain_group_id", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 4, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 94, + .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 + }, + { /* class_tid: 1, , table: jump_index_table.alloc */ + .description = "jump_index_table.alloc", + .resource_func = BNXT_ULP_RESOURCE_FUNC_ALLOCATOR_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_ALLOCATOR_TABLE_JUMP_INDEX, + .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 = 95, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC, + .tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .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 = 15, + .result_bit_size = 0, + .result_num_fields = 0 + }, + { /* class_tid: 1, , table: control.metadata_cal */ + .description = "control.metadata_cal", + .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 = 95, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_BIT_OR, + .func_oper_size = 32, + .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, + .func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .func_src2 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr2 = ULP_THOR2_SYM_CHAIN_META_VAL, + .func_dst_opr = BNXT_ULP_RF_IDX_JUMP_META } + }, + { /* class_tid: 1, , table: flow_chain_cache.write */ + .description = "flow_chain_cache.write", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE, + .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 = 95, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 27, + .blob_key_bit_size = 32, + .key_bit_size = 32, + .key_num_fields = 1, + .result_start_idx = 15, + .result_bit_size = 64, + .result_num_fields = 2 + }, + { /* class_tid: 1, , table: flow_chain_l2_cntxt.chaining_check */ + .description = "flow_chain_l2_cntxt.chaining_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_L2_CNTXT, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 4, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, + .cond_start_idx = 95, + .cond_nums = 2 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 28, + .blob_key_bit_size = 11, + .key_bit_size = 11, + .key_num_fields = 1, + .ident_start_idx = 13, + .ident_nums = 1 + }, + { /* class_tid: 1, , table: control.flow_chain_group_l2_cntxt_check */ + .description = "control.flow_chain_group_l2_cntxt_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 3, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 97, + .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 + }, + { /* class_tid: 1, , table: l2_cntxt_tcam.chain_entry */ + .description = "l2_cntxt_tcam.chain_entry", + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = CFA_RSUBTYPE_TCAM_L2CTX, + .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 = 98, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, + .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_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, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, + .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_APP, + .track_type = CFA_TRACK_TYPE_SID, + .key_start_idx = 29, + .blob_key_bit_size = 256, + .key_bit_size = 256, + .key_num_fields = 24, + .result_start_idx = 17, + .result_bit_size = 127, + .result_num_fields = 17, + .ident_start_idx = 14, + .ident_nums = 1 + }, + { /* class_tid: 1, , table: flow_chain_l2_cntxt.write */ + .description = "flow_chain_l2_cntxt.write", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_L2_CNTXT, + .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 = 100, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 53, + .blob_key_bit_size = 11, + .key_bit_size = 11, + .key_num_fields = 1, + .result_start_idx = 34, + .result_bit_size = 43, + .result_num_fields = 2 + }, { /* class_tid: 1, , table: mac_addr_cache.l2_table_rd */ .description = "mac_addr_cache.l2_table_rd", .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -261,17 +788,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 5, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 8, - .cond_nums = 1 }, + .cond_start_idx = 100, + .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 6, + .key_start_idx = 54, .blob_key_bit_size = 131, .key_bit_size = 131, .key_num_fields = 9, - .ident_start_idx = 9, + .ident_start_idx = 15, .ident_nums = 1 }, { /* class_tid: 1, , table: control.mac_addr_cache_check */ @@ -282,7 +809,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 11, + .cond_start_idx = 105, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -297,17 +824,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 12, + .cond_start_idx = 106, .cond_nums = 2 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_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, - .pri_opcode = BNXT_ULP_PRI_OPC_CONST, - .pri_operand = 140, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, + .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_APP, .track_type = CFA_TRACK_TYPE_SID, - .ident_start_idx = 10, + .ident_start_idx = 16, .ident_nums = 1 }, { /* class_tid: 1, , table: l2_cntxt_tcam.l2_table_create */ @@ -319,24 +846,24 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 14, + .cond_start_idx = 108, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_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, - .pri_opcode = BNXT_ULP_PRI_OPC_CONST, - .pri_operand = 140, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, + .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_APP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 15, + .key_start_idx = 63, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 7, + .result_start_idx = 36, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 11, + .ident_start_idx = 17, .ident_nums = 0 }, { /* class_tid: 1, , table: mac_addr_cache.l2_table_wr */ @@ -349,17 +876,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 18, + .cond_start_idx = 110, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 39, + .key_start_idx = 87, .blob_key_bit_size = 131, .key_bit_size = 131, .key_num_fields = 9, - .result_start_idx = 24, + .result_start_idx = 53, .result_bit_size = 94, .result_num_fields = 5 }, @@ -369,9 +896,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .direction = TF_DIR_RX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 2, + .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 20, + .cond_start_idx = 113, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -387,42 +914,42 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 21, + .cond_start_idx = 114, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_NOP_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL_F1, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID_SW_ONLY, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, - .result_start_idx = 29, + .result_start_idx = 58, .result_bit_size = 128, .result_num_fields = 2 }, - { /* class_tid: 1, , table: control.tunnel_ipv6_sip_check */ - .description = "control.tunnel_ipv6_sip_check", + { /* class_tid: 1, , table: control.l2_only_check */ + .description = "control.l2_only_check", .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, - .true_message = "reject ipv6 tunnel flow with tunnel source ip", + .true_message = "Reject due to missing Ethertype for L2 flows", .execute_info = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_OR, - .cond_start_idx = 0, - .cond_nums = 1 }, + .cond_start_idx = 6, + .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, - { /* class_tid: 1, , table: control.l2_only_check */ - .description = "control.l2_only_check", + { /* class_tid: 1, , table: control.tunnel_ipv6_sip_check */ + .description = "control.tunnel_ipv6_sip_check", .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, - .true_message = "Reject due to missing Ethertype for L2 flows", + .true_message = "reject ipv6 tunnel flow with tunnel source ip", .execute_info = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_OR, - .cond_start_idx = 1, - .cond_nums = 2 }, + .cond_start_idx = 8, + .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, @@ -434,7 +961,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 34, + .cond_start_idx = 128, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -442,7 +969,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opc = BNXT_ULP_FUNC_OPC_COND_LIST, .func_oper_size = 8, .func_src1 = BNXT_ULP_FUNC_SRC_KEY_EXT_LIST, - .func_opr1 = 3, + .func_opr1 = 5, .func_dst_opr = BNXT_ULP_RF_IDX_TERM_FLOW } }, { /* class_tid: 1, , table: proto_header_cache.rd */ @@ -455,17 +982,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 42, + .cond_start_idx = 139, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 48, + .key_start_idx = 96, .blob_key_bit_size = 76, .key_bit_size = 76, .key_num_fields = 3, - .ident_start_idx = 11, + .ident_start_idx = 17, .ident_nums = 7 }, { /* class_tid: 1, , table: control.proto_header_cache_miss */ @@ -476,7 +1003,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 13, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 42, + .cond_start_idx = 141, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -491,20 +1018,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 43, + .cond_start_idx = 142, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .key_start_idx = 51, + .key_start_idx = 99, .blob_key_bit_size = 12, .key_bit_size = 12, .key_num_fields = 2, - .partial_key_start_idx = 53, + .partial_key_start_idx = 101, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .ident_start_idx = 18, + .ident_start_idx = 24, .ident_nums = 2 }, { /* class_tid: 1, , table: control.overlap_miss */ @@ -515,7 +1042,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 44, + .cond_start_idx = 144, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -530,7 +1057,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 45, + .cond_start_idx = 145, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -540,7 +1067,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, .pri_operand = ULP_THOR2_SYM_PROF_TCAM_PRI_APP, .track_type = CFA_TRACK_TYPE_SID, - .ident_start_idx = 20, + .ident_start_idx = 26, .ident_nums = 1 }, { /* class_tid: 1, , table: fkb_select.wc_gen_template */ @@ -552,7 +1079,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 45, + .cond_start_idx = 145, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0, @@ -560,7 +1087,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, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 31, + .result_start_idx = 60, .result_bit_size = 256, .result_num_fields = 172 }, @@ -574,20 +1101,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 321, + .cond_start_idx = 483, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 54, + .key_start_idx = 102, .blob_key_bit_size = 12, .key_bit_size = 12, .key_num_fields = 2, - .partial_key_start_idx = 56, + .partial_key_start_idx = 104, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .result_start_idx = 203, + .result_start_idx = 232, .result_bit_size = 48, .result_num_fields = 3 }, @@ -599,7 +1126,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 322, + .cond_start_idx = 485, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -614,7 +1141,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 322, + .cond_start_idx = 485, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, @@ -622,7 +1149,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, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 206, + .result_start_idx = 235, .result_bit_size = 256, .result_num_fields = 172 }, @@ -636,14 +1163,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 323, + .cond_start_idx = 486, .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_start_idx = 407, .result_bit_size = 0, .result_num_fields = 0 }, @@ -655,7 +1182,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 323, + .cond_start_idx = 486, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -663,7 +1190,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opc = BNXT_ULP_FUNC_OPC_COND_LIST, .func_oper_size = 8, .func_src1 = BNXT_ULP_FUNC_SRC_KEY_EXT_LIST, - .func_opr1 = 48, + .func_opr1 = 54, .func_dst_opr = BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY } }, { /* class_tid: 1, , table: profile_tcam.gen_template */ @@ -675,7 +1202,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 339, + .cond_start_idx = 502, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -686,14 +1213,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_operand = BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 57, + .key_start_idx = 105, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 378, + .result_start_idx = 407, .result_bit_size = 64, .result_num_fields = 10, - .ident_start_idx = 21, + .ident_start_idx = 27, .ident_nums = 1 }, { /* class_tid: 1, , table: wm_key_recipe.0 */ @@ -706,18 +1233,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 570, + .cond_start_idx = 759, .cond_nums = 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, - .key_start_idx = 123, + .key_start_idx = 171, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 388, + .result_start_idx = 417, .result_bit_size = 0, .result_num_fields = 0 }, @@ -731,17 +1258,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 988, + .cond_start_idx = 1277, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 156, + .key_start_idx = 204, .blob_key_bit_size = 76, .key_bit_size = 76, .key_num_fields = 3, - .result_start_idx = 388, + .result_start_idx = 417, .result_bit_size = 106, .result_num_fields = 8 }, @@ -753,19 +1280,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .direction = TF_DIR_RX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 8, + .cond_false_goto = 11, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 988, - .cond_nums = 2 }, + .cond_start_idx = 1279, + .cond_nums = 3 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 159, + .key_start_idx = 207, .blob_key_bit_size = 78, .key_bit_size = 78, .key_num_fields = 4, - .ident_start_idx = 22, + .ident_start_idx = 28, .ident_nums = 1 }, { /* class_tid: 1, , table: control.em_flow_conflict_cache_miss */ @@ -776,7 +1303,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 990, + .cond_start_idx = 1284, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -791,14 +1318,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 991, + .cond_start_idx = 1285, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE, .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, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 396, + .result_start_idx = 425, .result_bit_size = 256, .result_num_fields = 172 }, @@ -812,17 +1339,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1248, + .cond_start_idx = 1600, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_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_NOP, - .key_start_idx = 163, + .key_start_idx = 211, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 568, + .result_start_idx = 597, .result_bit_size = 0, .result_num_fields = 0 }, @@ -833,20 +1360,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_EM_FLOW_CONFLICT, .direction = TF_DIR_RX, .execute_info = { - .cond_true_goto = 2, + .cond_true_goto = 4, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1652, + .cond_start_idx = 2094, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 196, + .key_start_idx = 244, .blob_key_bit_size = 78, .key_bit_size = 78, .key_num_fields = 4, - .result_start_idx = 568, + .result_start_idx = 597, .result_bit_size = 96, .result_num_fields = 2 }, @@ -855,10 +1382,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, .execute_info = { - .cond_true_goto = 3, + .cond_true_goto = 6, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1652, + .cond_start_idx = 2096, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -870,6 +1397,32 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID, .func_dst_opr = BNXT_ULP_RF_IDX_CC } }, + { /* class_tid: 1, , table: control.outer_loop_add_check */ + .description = "control.outer_loop_add_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 8, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2098, + .cond_nums = 2 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 1, , table: control.em_wc_check */ + .description = "control.em_wc_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 4, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2100, + .cond_nums = 3 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, { /* class_tid: 1, , table: em_normal.ingress_generic_template */ .description = "em_normal.ingress_generic_template", .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, @@ -877,29 +1430,50 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .direction = TF_DIR_RX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 2, + .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1654, - .cond_nums = 2 }, + .cond_start_idx = 2103, + .cond_nums = 1 }, .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_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 570, + .result_start_idx = 599, .result_bit_size = 0, .result_num_fields = 17 }, + { /* class_tid: 1, , table: em_recycle.ingress_generic_template_recycle */ + .description = "em_recycle.ingress_generic_template_recycle", + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_MEM_INTERNAL, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2104, + .cond_nums = 1 }, + .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_RECIPE_ID, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO, + .result_start_idx = 616, + .result_bit_size = 0, + .result_num_fields = 13 + }, { /* class_tid: 1, , table: control.em_add_check */ .description = "control.em_add_check", .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_RX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 0, + .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1656, + .cond_start_idx = 2105, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -910,46 +1484,120 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .resource_type = CFA_RSUBTYPE_TCAM_WC, .direction = TF_DIR_RX, .execute_info = { - .cond_true_goto = 0, - .cond_false_goto = 0, - .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1657, - .cond_nums = 0 }, + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2106, + .cond_nums = 1 }, .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_WC_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .pri_opcode = BNXT_ULP_PRI_OPC_CONST, - .pri_operand = 0, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 587, + .result_start_idx = 629, .result_bit_size = 128, .result_num_fields = 15 }, - { /* class_tid: 2, , table: port_table.get_def_rd */ - .description = "port_table.get_def_rd", - .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, - .resource_sub_type = - BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE, - .direction = TF_DIR_TX, + { /* class_tid: 1, , table: wm_recycle.ingress_generic_template_recycle */ + .description = "wm_recycle.ingress_generic_template_recycle", + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = CFA_RSUBTYPE_TCAM_WC, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2107, + .cond_nums = 1 }, + .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_WC_RECIPE_ID, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI, + .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, + .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, + .track_type = CFA_TRACK_TYPE_SID, + .result_start_idx = 644, + .result_bit_size = 128, + .result_num_fields = 14 + }, + { /* class_tid: 1, , table: control.outer_loop_check */ + .description = "control.outer_loop_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 0, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2108, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 1, , table: control.reset_outer_loop */ + .description = "control.reset_outer_loop", + .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 = 1657, + .cond_start_idx = 2109, .cond_nums = 0 }, - .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 16, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 0, + .func_dst_opr = BNXT_ULP_RF_IDX_OUTER_LOOP } + }, + { /* class_tid: 1, , table: control.inner_loop_cal */ + .description = "control.inner_loop_cal", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_RX, + .execute_info = { + .cond_true_goto = -30, + .cond_false_goto = 0, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 2109, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 16, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 1, + .func_dst_opr = BNXT_ULP_RF_IDX_INNER_LOOP } + }, + { /* class_tid: 2, , table: port_table.get_def_rd */ + .description = "port_table.get_def_rd", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_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 = 2109, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .key_start_idx = 200, + .key_start_idx = 248, .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .ident_start_idx = 23, + .ident_start_idx = 29, .ident_nums = 1 }, { /* class_tid: 2, , table: l2_cntxt_tcam_cache.def_rd */ @@ -963,17 +1611,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1657, + .cond_start_idx = 2109, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 201, + .key_start_idx = 249, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 24, + .ident_start_idx = 30, .ident_nums = 2 }, { /* class_tid: 2, , table: control.l2_only_check */ @@ -985,7 +1633,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_OR, - .cond_start_idx = 3, + .cond_start_idx = 9, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -999,11 +1647,179 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1023, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_OR, - .cond_start_idx = 5, + .cond_start_idx = 11, + .cond_nums = 2 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 2, , table: control.check_tunnel_recycle */ + .description = "control.check_tunnel_recycle", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 9, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_AND, + .cond_start_idx = 13, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 2, , table: control.multi_tunnel_check */ + .description = "control.multi_tunnel_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .false_message = "reject multi tunnel flow if group id or partial mask is specified", + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1023, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2131, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP }, + { /* class_tid: 2, , table: multi_flow_tunnel_cache.rd */ + .description = "multi_flow_tunnel_cache.rd", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE, + .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 = 2133, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 250, + .blob_key_bit_size = 447, + .key_bit_size = 447, + .key_num_fields = 9, + .ident_start_idx = 32, + .ident_nums = 1 + }, + { /* class_tid: 2, , table: control.multi_flow_cache_check */ + .description = "control.multi_flow_cache_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 5, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2161, + .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 + }, + { /* class_tid: 2, , table: jump_index_table.multi_flow_alloc */ + .description = "jump_index_table.multi_flow_alloc", + .resource_func = BNXT_ULP_RESOURCE_FUNC_ALLOCATOR_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_ALLOCATOR_TABLE_JUMP_INDEX, + .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 = 2162, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC, + .tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .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 = 658, + .result_bit_size = 0, + .result_num_fields = 0 + }, + { /* class_tid: 2, , table: control.multi_flow_metadata_cal */ + .description = "control.multi_flow_metadata_cal", + .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 = 2162, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_BIT_OR, + .func_oper_size = 32, + .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, + .func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .func_src2 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr2 = ULP_THOR2_SYM_CHAIN_META_VAL, + .func_dst_opr = BNXT_ULP_RF_IDX_JUMP_META } + }, + { /* class_tid: 2, , table: control.outer_present_mode_1 */ + .description = "control.outer_present_mode_1", + .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 = 2162, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 8, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 1, + .func_dst_opr = BNXT_ULP_RF_IDX_OUTER_ADD } + }, + { /* class_tid: 2, , table: multi_flow_tunnel_cache.wr */ + .description = "multi_flow_tunnel_cache.wr", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MULTI_FLOW_TUNNEL_CACHE, + .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 = 2162, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 259, + .blob_key_bit_size = 447, + .key_bit_size = 447, + .key_num_fields = 9, + .result_start_idx = 658, + .result_bit_size = 64, + .result_num_fields = 2 + }, + { /* class_tid: 2, , table: control.multi_flow_outer_loop_bit */ + .description = "control.multi_flow_outer_loop_bit", + .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 = 2190, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 8, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 1, + .func_dst_opr = BNXT_ULP_RF_IDX_OUTER_LOOP } + }, { /* class_tid: 2, , table: control.terminating_flow */ .description = "control.terminating_flow", .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, @@ -1012,7 +1828,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1675, + .cond_start_idx = 2190, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1020,9 +1836,125 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opc = BNXT_ULP_FUNC_OPC_COND_LIST, .func_oper_size = 8, .func_src1 = BNXT_ULP_FUNC_SRC_KEY_EXT_LIST, - .func_opr1 = 316, + .func_opr1 = 332, .func_dst_opr = BNXT_ULP_RF_IDX_TERM_FLOW } }, + { /* class_tid: 2, , table: control.group_id_check */ + .description = "control.group_id_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 6, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2198, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 2, , table: flow_chain_cache.group_check */ + .description = "flow_chain_cache.group_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE, + .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 = 2199, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 268, + .blob_key_bit_size = 32, + .key_bit_size = 32, + .key_num_fields = 1, + .ident_start_idx = 33, + .ident_nums = 1 + }, + { /* class_tid: 2, , table: control.flow_chain_group_id */ + .description = "control.flow_chain_group_id", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 4, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2199, + .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 + }, + { /* class_tid: 2, , table: jump_index_table.alloc */ + .description = "jump_index_table.alloc", + .resource_func = BNXT_ULP_RESOURCE_FUNC_ALLOCATOR_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_ALLOCATOR_TABLE_JUMP_INDEX, + .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 = 2200, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC, + .tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .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 = 660, + .result_bit_size = 0, + .result_num_fields = 0 + }, + { /* class_tid: 2, , table: control.metadata_cal */ + .description = "control.metadata_cal", + .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 = 2200, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_BIT_OR, + .func_oper_size = 32, + .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE, + .func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX, + .func_src2 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr2 = ULP_THOR2_SYM_CHAIN_META_VAL, + .func_dst_opr = BNXT_ULP_RF_IDX_JUMP_META } + }, + { /* class_tid: 2, , table: flow_chain_cache.write */ + .description = "flow_chain_cache.write", + .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, + .resource_sub_type = + BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE, + .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 = 2200, + .cond_nums = 0 }, + .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, + .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .key_start_idx = 269, + .blob_key_bit_size = 32, + .key_bit_size = 32, + .key_num_fields = 1, + .result_start_idx = 660, + .result_bit_size = 64, + .result_num_fields = 2 + }, { /* class_tid: 2, , table: proto_header_cache.rd */ .description = "proto_header_cache.rd", .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE, @@ -1033,17 +1965,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1683, + .cond_start_idx = 2200, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 202, + .key_start_idx = 270, .blob_key_bit_size = 76, .key_bit_size = 76, .key_num_fields = 3, - .ident_start_idx = 26, + .ident_start_idx = 34, .ident_nums = 7 }, { /* class_tid: 2, , table: control.proto_header_cache_miss */ @@ -1054,7 +1986,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 13, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1683, + .cond_start_idx = 2202, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1069,20 +2001,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1684, + .cond_start_idx = 2203, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, - .key_start_idx = 205, + .key_start_idx = 273, .blob_key_bit_size = 12, .key_bit_size = 12, .key_num_fields = 2, - .partial_key_start_idx = 207, + .partial_key_start_idx = 275, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .ident_start_idx = 33, + .ident_start_idx = 41, .ident_nums = 2 }, { /* class_tid: 2, , table: control.overlap_miss */ @@ -1093,7 +2025,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1685, + .cond_start_idx = 2205, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1108,7 +2040,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1686, + .cond_start_idx = 2206, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1118,7 +2050,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_opcode = BNXT_ULP_PRI_OPC_CONST, .pri_operand = 0, .track_type = CFA_TRACK_TYPE_SID, - .ident_start_idx = 35, + .ident_start_idx = 43, .ident_nums = 1 }, { /* class_tid: 2, , table: fkb_select.wc_gen_template */ @@ -1130,7 +2062,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1686, + .cond_start_idx = 2206, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0, @@ -1138,7 +2070,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, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 602, + .result_start_idx = 662, .result_bit_size = 256, .result_num_fields = 172 }, @@ -1152,20 +2084,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1964, + .cond_start_idx = 2547, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 208, + .key_start_idx = 276, .blob_key_bit_size = 12, .key_bit_size = 12, .key_num_fields = 2, - .partial_key_start_idx = 210, + .partial_key_start_idx = 278, .partial_key_num_fields = 1, .partial_key_bit_size = 64, - .result_start_idx = 774, + .result_start_idx = 834, .result_bit_size = 48, .result_num_fields = 3 }, @@ -1177,7 +2109,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1965, + .cond_start_idx = 2549, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1192,7 +2124,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1965, + .cond_start_idx = 2549, .cond_nums = 1 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0, @@ -1200,7 +2132,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, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 777, + .result_start_idx = 837, .result_bit_size = 256, .result_num_fields = 172 }, @@ -1214,14 +2146,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1966, + .cond_start_idx = 2550, .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_start_idx = 1009, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1233,7 +2165,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1966, + .cond_start_idx = 2550, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1241,7 +2173,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opc = BNXT_ULP_FUNC_OPC_COND_LIST, .func_oper_size = 8, .func_src1 = BNXT_ULP_FUNC_SRC_KEY_EXT_LIST, - .func_opr1 = 362, + .func_opr1 = 381, .func_dst_opr = BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY } }, { /* class_tid: 2, , table: profile_tcam.gen_template */ @@ -1253,7 +2185,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 1982, + .cond_start_idx = 2566, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1265,14 +2197,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 211, + .key_start_idx = 279, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 949, + .result_start_idx = 1009, .result_bit_size = 64, .result_num_fields = 10, - .ident_start_idx = 36, + .ident_start_idx = 44, .ident_nums = 1 }, { /* class_tid: 2, , table: wm_key_recipe.0 */ @@ -1285,18 +2217,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 2205, + .cond_start_idx = 2821, .cond_nums = 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, - .key_start_idx = 277, + .key_start_idx = 345, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 959, + .result_start_idx = 1019, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1310,17 +2242,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 2627, + .cond_start_idx = 3345, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 310, + .key_start_idx = 378, .blob_key_bit_size = 76, .key_bit_size = 76, .key_num_fields = 3, - .result_start_idx = 959, + .result_start_idx = 1019, .result_bit_size = 106, .result_num_fields = 8 }, @@ -1332,19 +2264,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 8, + .cond_false_goto = 11, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 2627, - .cond_nums = 2 }, + .cond_start_idx = 3347, + .cond_nums = 3 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 313, + .key_start_idx = 381, .blob_key_bit_size = 78, .key_bit_size = 78, .key_num_fields = 4, - .ident_start_idx = 37, + .ident_start_idx = 45, .ident_nums = 1 }, { /* class_tid: 2, , table: control.em_flow_conflict_cache_miss */ @@ -1355,7 +2287,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 2629, + .cond_start_idx = 3352, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1370,14 +2302,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 2630, + .cond_start_idx = 3353, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE, .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, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 967, + .result_start_idx = 1027, .result_bit_size = 256, .result_num_fields = 172 }, @@ -1391,17 +2323,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 2887, + .cond_start_idx = 3668, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_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_NOP, - .key_start_idx = 317, + .key_start_idx = 385, .blob_key_bit_size = 0, .key_bit_size = 0, .key_num_fields = 33, - .result_start_idx = 1139, + .result_start_idx = 1199, .result_bit_size = 0, .result_num_fields = 0 }, @@ -1412,20 +2344,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_EM_FLOW_CONFLICT, .direction = TF_DIR_TX, .execute_info = { - .cond_true_goto = 2, + .cond_true_goto = 4, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3291, + .cond_start_idx = 4162, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 350, + .key_start_idx = 418, .blob_key_bit_size = 78, .key_bit_size = 78, .key_num_fields = 4, - .result_start_idx = 1139, + .result_start_idx = 1199, .result_bit_size = 96, .result_num_fields = 2 }, @@ -1434,10 +2366,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_TX, .execute_info = { - .cond_true_goto = 3, + .cond_true_goto = 6, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3291, + .cond_start_idx = 4164, .cond_nums = 2 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1449,6 +2381,32 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID, .func_dst_opr = BNXT_ULP_RF_IDX_CC } }, + { /* class_tid: 2, , table: control.outer_loop_add_check */ + .description = "control.outer_loop_add_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 8, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 4166, + .cond_nums = 2 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 2, , table: control.em_wc_check */ + .description = "control.em_wc_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 4, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 4168, + .cond_nums = 3 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, { /* class_tid: 2, , table: em_normal.egress_generic_template */ .description = "em_normal.egress_generic_template", .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, @@ -1456,29 +2414,50 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 2, + .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3293, - .cond_nums = 2 }, + .cond_start_idx = 4171, + .cond_nums = 1 }, .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_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, - .result_start_idx = 1141, + .result_start_idx = 1201, .result_bit_size = 0, .result_num_fields = 17 }, + { /* class_tid: 2, , table: em_recycle.egress_generic_template_recycle */ + .description = "em_recycle.egress_generic_template_recycle", + .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE, + .resource_type = TF_MEM_INTERNAL, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 4172, + .cond_nums = 1 }, + .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_RECIPE_ID, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO, + .result_start_idx = 1218, + .result_bit_size = 0, + .result_num_fields = 13 + }, { /* class_tid: 2, , table: control.em_add_check */ .description = "control.em_add_check", .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, .direction = TF_DIR_TX, .execute_info = { .cond_true_goto = 1, - .cond_false_goto = 0, + .cond_false_goto = 3, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3295, + .cond_start_idx = 4173, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP @@ -1489,25 +2468,99 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .resource_type = CFA_RSUBTYPE_TCAM_WC, .direction = TF_DIR_TX, .execute_info = { - .cond_true_goto = 0, - .cond_false_goto = 0, - .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, - .cond_nums = 0 }, + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 4174, + .cond_nums = 1 }, .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_WC_RECIPE_ID, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .pri_opcode = BNXT_ULP_PRI_OPC_CONST, - .pri_operand = 0, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1158, + .result_start_idx = 1231, .result_bit_size = 128, .result_num_fields = 15 }, + { /* class_tid: 2, , table: wm_recycle.egress_generic_template_recycle */ + .description = "wm_recycle.egress_generic_template_recycle", + .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE, + .resource_type = CFA_RSUBTYPE_TCAM_WC, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 1, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 4175, + .cond_nums = 1 }, + .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_WC_RECIPE_ID, + .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, + .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI, + .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, + .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES, + .track_type = CFA_TRACK_TYPE_SID, + .result_start_idx = 1246, + .result_bit_size = 128, + .result_num_fields = 14 + }, + { /* class_tid: 2, , table: control.outer_loop_check */ + .description = "control.outer_loop_check", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = 1, + .cond_false_goto = 0, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 4176, + .cond_nums = 1 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP + }, + { /* class_tid: 2, , table: control.reset_outer_loop */ + .description = "control.reset_outer_loop", + .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 = 4177, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 16, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 0, + .func_dst_opr = BNXT_ULP_RF_IDX_OUTER_LOOP } + }, + { /* class_tid: 2, , table: control.inner_loop_cal */ + .description = "control.inner_loop_cal", + .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE, + .direction = TF_DIR_TX, + .execute_info = { + .cond_true_goto = -29, + .cond_false_goto = 0, + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, + .cond_start_idx = 4177, + .cond_nums = 0 }, + .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, + .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, + .func_info = { + .func_opc = BNXT_ULP_FUNC_OPC_COPY_SRC1_TO_RF, + .func_oper_size = 16, + .func_src1 = BNXT_ULP_FUNC_SRC_CONST, + .func_opr1 = 1, + .func_dst_opr = BNXT_ULP_RF_IDX_INNER_LOOP } + }, { /* class_tid: 3, , table: metadata_record.act_rx_wr */ .description = "metadata_record.act_rx_wr", .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE, @@ -1519,7 +2572,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_RX_ACT_0, @@ -1527,7 +2580,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1173, + .result_start_idx = 1260, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1542,7 +2595,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_RX_PROF_0, @@ -1550,7 +2603,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1174, + .result_start_idx = 1261, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1565,7 +2618,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_RX_LKUP_0, @@ -1573,7 +2626,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1175, + .result_start_idx = 1262, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1588,7 +2641,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_TX_ACT_0, @@ -1596,7 +2649,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1176, + .result_start_idx = 1263, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1611,7 +2664,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_TX_PROF_0, @@ -1619,7 +2672,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1177, + .result_start_idx = 1264, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1634,7 +2687,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE, .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_TX_LKUP_0, @@ -1642,7 +2695,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .result_start_idx = 1178, + .result_start_idx = 1265, .result_bit_size = 32, .result_num_fields = 1 }, @@ -1656,17 +2709,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 354, + .key_start_idx = 422, .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .ident_start_idx = 38, + .ident_start_idx = 46, .ident_nums = 2 }, { /* class_tid: 3, , table: control.ts_ing_rd_check */ @@ -1677,7 +2730,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 6, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3296, + .cond_start_idx = 4177, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1694,7 +2747,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, @@ -1702,7 +2755,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 = 1179, + .result_start_idx = 1266, .result_bit_size = 192, .result_num_fields = 18 }, @@ -1717,7 +2770,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, @@ -1725,7 +2778,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 = 1197, + .result_start_idx = 1284, .result_bit_size = 192, .result_num_fields = 18 }, @@ -1737,7 +2790,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -1758,7 +2811,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -1769,14 +2822,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_operand = ULP_THOR2_SYM_PROF_TCAM_PRI_CATCHALL, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 356, + .key_start_idx = 424, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 1215, + .result_start_idx = 1302, .result_bit_size = 65, .result_num_fields = 7, - .ident_start_idx = 40, + .ident_start_idx = 48, .ident_nums = 1 }, { /* class_tid: 3, , table: table_scope_cache.tsid_ing_wr */ @@ -1789,17 +2842,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 422, + .key_start_idx = 490, .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .result_start_idx = 1222, + .result_start_idx = 1309, .result_bit_size = 88, .result_num_fields = 5 }, @@ -1813,17 +2866,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 424, + .key_start_idx = 492, .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 1227, + .result_start_idx = 1314, .result_bit_size = 169, .result_num_fields = 6 }, @@ -1837,17 +2890,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 425, + .key_start_idx = 493, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 41, + .ident_start_idx = 49, .ident_nums = 1 }, { /* class_tid: 3, , table: control.ing_rd_check */ @@ -1858,7 +2911,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3297, + .cond_start_idx = 4178, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -1873,7 +2926,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -1883,14 +2936,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_CATCHALL, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 426, + .key_start_idx = 494, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1233, + .result_start_idx = 1320, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 42, + .ident_start_idx = 50, .ident_nums = 1 }, { /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */ @@ -1903,17 +2956,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 450, + .key_start_idx = 518, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1250, + .result_start_idx = 1337, .result_bit_size = 94, .result_num_fields = 5 }, @@ -1928,14 +2981,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, .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 = 1255, + .result_start_idx = 1342, .result_bit_size = 192, .result_num_fields = 18, .encap_num_fields = 0 @@ -1951,14 +3004,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, .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 = 1273, + .result_start_idx = 1360, .result_bit_size = 192, .result_num_fields = 18, .encap_num_fields = 0 @@ -1973,7 +3026,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, @@ -1986,11 +3039,11 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .func_src2 = BNXT_ULP_FUNC_SRC_CONST, .func_opr2 = 32, .func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }, - .key_start_idx = 451, + .key_start_idx = 519, .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 1291, + .result_start_idx = 1378, .result_bit_size = 169, .result_num_fields = 6 }, @@ -2003,13 +3056,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD, .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 = 1297, + .result_start_idx = 1384, .result_bit_size = 128, .result_num_fields = 14 }, @@ -2023,17 +3076,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 452, + .key_start_idx = 520, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 43, + .ident_start_idx = 51, .ident_nums = 0 }, { /* class_tid: 3, , table: control.non_vfr_egr_rd_check */ @@ -2044,7 +3097,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3298, + .cond_start_idx = 4179, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -2059,7 +3112,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3299, + .cond_start_idx = 4180, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -2069,14 +3122,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_APP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 453, + .key_start_idx = 521, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1311, + .result_start_idx = 1398, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 43, + .ident_start_idx = 51, .ident_nums = 2 }, { /* class_tid: 3, , table: profile_tcam_bypass.non_vfr_egr_catch_all */ @@ -2088,7 +3141,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3299, + .cond_start_idx = 4180, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -2099,14 +3152,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_operand = ULP_THOR2_SYM_PROF_TCAM_PRI_CATCHALL, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 477, + .key_start_idx = 545, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 1328, + .result_start_idx = 1415, .result_bit_size = 65, .result_num_fields = 7, - .ident_start_idx = 45, + .ident_start_idx = 53, .ident_nums = 0 }, { /* class_tid: 3, , table: l2_cntxt_tcam_cache.non_vfr_egr_wr */ @@ -2119,17 +3172,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3299, + .cond_start_idx = 4180, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 543, + .key_start_idx = 611, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1335, + .result_start_idx = 1422, .result_bit_size = 94, .result_num_fields = 5 }, @@ -2143,17 +3196,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3299, + .cond_start_idx = 4180, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 544, + .key_start_idx = 612, .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .ident_start_idx = 45, + .ident_start_idx = 53, .ident_nums = 1 }, { /* class_tid: 3, , table: control.tsid_vfr_rd_check */ @@ -2164,7 +3217,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3299, + .cond_start_idx = 4180, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -2181,14 +3234,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, .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 = 1340, + .result_start_idx = 1427, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2201,7 +3254,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2224,7 +3277,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, @@ -2232,7 +3285,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 = 1360, + .result_start_idx = 1447, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2244,7 +3297,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2265,7 +3318,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -2275,14 +3328,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_APP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 546, + .key_start_idx = 614, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1378, + .result_start_idx = 1465, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 46, + .ident_start_idx = 54, .ident_nums = 1 }, { /* class_tid: 3, , table: table_scope_cache.tsid_vfr_wr */ @@ -2295,17 +3348,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 570, + .key_start_idx = 638, .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .result_start_idx = 1395, + .result_start_idx = 1482, .result_bit_size = 88, .result_num_fields = 5 }, @@ -2319,17 +3372,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 572, + .key_start_idx = 640, .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .ident_start_idx = 47, + .ident_start_idx = 55, .ident_nums = 3 }, { /* class_tid: 4, , table: control.tsid_vfr_egr_check */ @@ -2340,7 +3393,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 7, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3300, + .cond_start_idx = 4181, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -2357,7 +3410,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -2371,7 +3424,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 = 1400, + .result_start_idx = 1487, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2384,7 +3437,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2407,7 +3460,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, @@ -2415,7 +3468,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 = 1420, + .result_start_idx = 1507, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2427,7 +3480,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2448,7 +3501,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0, @@ -2459,14 +3512,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_operand = ULP_THOR2_SYM_PROF_TCAM_PRI_CATCHALL, .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 574, + .key_start_idx = 642, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 66, - .result_start_idx = 1438, + .result_start_idx = 1525, .result_bit_size = 65, .result_num_fields = 7, - .ident_start_idx = 50, + .ident_start_idx = 58, .ident_nums = 1 }, { /* class_tid: 4, , table: table_scope_cache.tsid_vfr_egr_wr */ @@ -2479,17 +3532,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 640, + .key_start_idx = 708, .blob_key_bit_size = 6, .key_bit_size = 6, .key_num_fields = 2, - .result_start_idx = 1445, + .result_start_idx = 1532, .result_bit_size = 88, .result_num_fields = 5 }, @@ -2504,17 +3557,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 642, + .key_start_idx = 710, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .ident_start_idx = 51, + .ident_start_idx = 59, .ident_nums = 1 }, { /* class_tid: 4, , table: control.endpoint_def_egr_rd_check */ @@ -2525,7 +3578,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 4, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 3301, + .cond_start_idx = 4182, .cond_nums = 1 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE, @@ -2540,7 +3593,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0, @@ -2550,14 +3603,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .pri_opcode = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST, .pri_operand = ULP_THOR2_SYM_L2_CTXT_PRI_CATCHALL, .track_type = CFA_TRACK_TYPE_SID, - .key_start_idx = 643, + .key_start_idx = 711, .blob_key_bit_size = 256, .key_bit_size = 256, .key_num_fields = 24, - .result_start_idx = 1450, + .result_start_idx = 1537, .result_bit_size = 127, .result_num_fields = 17, - .ident_start_idx = 52, + .ident_start_idx = 60, .ident_nums = 1 }, { /* class_tid: 4, , table: l2_cntxt_tcam_cache.endpoint_def_egr_wr */ @@ -2571,17 +3624,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 667, + .key_start_idx = 735, .blob_key_bit_size = 11, .key_bit_size = 11, .key_num_fields = 1, - .result_start_idx = 1467, + .result_start_idx = 1554, .result_bit_size = 94, .result_num_fields = 5 }, @@ -2595,17 +3648,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE, .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID, - .key_start_idx = 668, + .key_start_idx = 736, .blob_key_bit_size = 10, .key_bit_size = 10, .key_num_fields = 1, - .result_start_idx = 1472, + .result_start_idx = 1559, .result_bit_size = 169, .result_num_fields = 6 }, @@ -2620,7 +3673,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL, @@ -2633,7 +3686,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 = 1478, + .result_start_idx = 1565, .result_bit_size = 0, .result_num_fields = 0, .encap_num_fields = 20 @@ -2646,7 +3699,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2669,14 +3722,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE, .tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL, .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 = 1498, + .result_start_idx = 1585, .result_bit_size = 192, .result_num_fields = 18 }, @@ -2688,7 +3741,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2708,7 +3761,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 1, .cond_false_goto = 1, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2728,7 +3781,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { .cond_true_goto = 0, .cond_false_goto = 0, .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE, - .cond_start_idx = 3302, + .cond_start_idx = 4183, .cond_nums = 0 }, .key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP, .fdb_opcode = BNXT_ULP_FDB_OPC_NOP, @@ -2744,52 +3797,98 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = { }; struct bnxt_ulp_mapper_cond_list_info ulp_thor2_class_cond_oper_list[] = { - /* cond_execute: class_tid: 1, control.tunnel_ipv6_sip_check:21*/ + /* cond_execute: class_tid: 1, control.vxlan_ip_check:0*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR, + .cond_start_idx = 0, + .cond_nums = 3 + }, + /* cond_execute: class_tid: 1, control.vxlan_ip_check:0*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 21, + .cond_start_idx = 3, + .cond_nums = 2 + }, + /* cond_execute: class_tid: 1, control.vxlan_ip_check:0*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 5, + .cond_nums = 3 + }, + /* cond_execute: class_tid: 1, cust_tunnel.configure_vxlan_port:17*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 17, + .cond_nums = 2 + }, + /* cond_execute: class_tid: 1, cust_tunnel.configure_vxlan_ip_port:19*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 19, + .cond_nums = 2 + }, + /* cond_execute: class_tid: 1, control.check_tunnel_recycle:35*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 35, .cond_nums = 3 }, - /* cond_execute: class_tid: 1, control.l2_only_check:24*/ + /* cond_execute: class_tid: 1, control.l2_only_check:114*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 24, + .cond_start_idx = 114, .cond_nums = 5 }, - /* cond_execute: class_tid: 1, control.l2_only_check:24*/ + /* cond_execute: class_tid: 1, control.l2_only_check:114*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 29, + .cond_start_idx = 119, .cond_nums = 5 }, - /* cond_execute: class_tid: 2, control.l2_only_check:1657*/ + /* cond_execute: class_tid: 1, control.tunnel_ipv6_sip_check:124*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1657, + .cond_start_idx = 124, + .cond_nums = 4 + }, + /* cond_execute: class_tid: 2, control.l2_only_check:2109*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2109, .cond_nums = 5 }, - /* cond_execute: class_tid: 2, control.l2_only_check:1657*/ + /* cond_execute: class_tid: 2, control.l2_only_check:2109*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1662, + .cond_start_idx = 2114, .cond_nums = 5 }, - /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1667*/ + /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:2119*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1667, - .cond_nums = 4 + .cond_start_idx = 2119, + .cond_nums = 5 }, - /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1667*/ + /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:2119*/ { .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, - .cond_start_idx = 1671, - .cond_nums = 4 + .cond_start_idx = 2124, + .cond_nums = 5 + }, + /* cond_execute: class_tid: 2, control.check_tunnel_recycle:2129*/ + { + .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND, + .cond_start_idx = 2129, + .cond_nums = 2 } }; struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { - /* cond_execute: class_tid: 1, control.check_f1_f2_flow:0*/ + /* cond_execute: class_tid: 1, control.vxlan_ip_check:0*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_F1 @@ -2798,17 +3897,134 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_F2 }, - /* cond_execute: class_tid: 1, control.tunnel_cache_check:2*/ + /* cond_execute: class_tid: 1, control.vxlan_ip_check:0*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* cond_execute: class_tid: 1, control.vxlan_ip_check:0*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* cond_execute: class_tid: 1, tunnel_gparse_cache.custom_tunnel_rd:8*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE + }, + /* field_cond: class_tid: 1, tunnel_gparse_cache.custom_tunnel_rd:10*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* field_cond: class_tid: 1, tunnel_gparse_cache.custom_tunnel_rd:12*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* cond_execute: class_tid: 1, control.custom_tunnel:15*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 1, control.check_f2_flow:3*/ + /* cond_execute: class_tid: 1, control.custom_tunnel_port_check_value:16*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_CC + }, + /* cond_execute: class_tid: 1, cust_tunnel.configure_vxlan_port:17*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_DYNAMIC_VXLAN_PORT + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* cond_execute: class_tid: 1, cust_tunnel.configure_vxlan_ip_port:19*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_DYNAMIC_VXLAN_PORT + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* cond_execute: class_tid: 1, cust_tunnel.configure_geneve_port:21*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_DYNAMIC_GENEVE_PORT + }, + /* field_cond: class_tid: 1, tunnel_gparse_cache.custom_tunnel_wr:22*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* field_cond: class_tid: 1, tunnel_gparse_cache.custom_tunnel_wr:24*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* cond_execute: class_tid: 1, control.check_f1_f2_flow:27*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_F1 + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_F2 }, - /* field_cond: class_tid: 1, control.dmac_calculation:4*/ + /* cond_execute: class_tid: 1, control.tunnel_cache_check:29*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* cond_execute: class_tid: 1, control.check_f2_flow:30*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_F2 + }, + /* field_cond: class_tid: 1, control.dmac_calculation:31*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH @@ -2817,94 +4033,378 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, control.dmac_calculation:6*/ + /* field_cond: class_tid: 1, control.dmac_calculation:33*/ { .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, .cond_operand = BNXT_ULP_FEATURE_BIT_PORT_DMAC }, - /* field_cond: class_tid: 1, control.dmac_calculation:7*/ + /* field_cond: class_tid: 1, control.dmac_calculation:34*/ { .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, .cond_operand = BNXT_ULP_FEATURE_BIT_PARENT_DMAC }, - /* cond_execute: class_tid: 1, mac_addr_cache.l2_table_rd:8*/ + /* cond_execute: class_tid: 1, control.check_tunnel_recycle:35*/ { - .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, - .cond_operand = BNXT_ULP_RF_IDX_O_DMAC + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW }, - /* field_cond: class_tid: 1, mac_addr_cache.l2_table_rd:9*/ { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN }, - /* field_cond: class_tid: 1, mac_addr_cache.l2_table_rd:10*/ { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_F1 + }, + /* cond_execute: class_tid: 1, control.multi_tunnel_check:38*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET, + .cond_operand = BNXT_ULP_CF_IDX_OUTER_EM_ONLY + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:40*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:42*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:44*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:46*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:48*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:50*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* cond_execute: class_tid: 1, control.mac_addr_cache_check:11*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:52*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:54*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:56*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:58*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:60*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.rd:62*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* cond_execute: class_tid: 1, control.multi_flow_cache_check:64*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 1, l2_cntxt_tcam.allocate_l2_context:12*/ + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:65*/ { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, - .cond_operand = BNXT_ULP_HDR_BIT_F1 + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, - .cond_operand = BNXT_ULP_HDR_BIT_F2 + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:67*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:69*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:71*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, l2_cntxt_tcam.l2_table_create:14*/ + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:73*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:75*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:77*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:79*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:81*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:83*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:85*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:87*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:89*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* field_cond: class_tid: 1, multi_flow_tunnel_cache.wr:91*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* cond_execute: class_tid: 1, control.group_id_check:93*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID }, - /* field_cond: class_tid: 1, l2_cntxt_tcam.l2_table_create:15*/ + /* cond_execute: class_tid: 1, control.flow_chain_group_id:94*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* cond_execute: class_tid: 1, flow_chain_l2_cntxt.chaining_check:95*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP }, - /* field_cond: class_tid: 1, l2_cntxt_tcam.l2_table_create:16*/ + /* cond_execute: class_tid: 1, control.flow_chain_group_l2_cntxt_check:97*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* field_cond: class_tid: 1, l2_cntxt_tcam.chain_entry:98*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, l2_cntxt_tcam.l2_table_create:17*/ + /* field_cond: class_tid: 1, l2_cntxt_tcam.chain_entry:99*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, mac_addr_cache.l2_table_wr:18*/ + /* cond_execute: class_tid: 1, mac_addr_cache.l2_table_rd:100*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_O_DMAC + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + /* field_cond: class_tid: 1, mac_addr_cache.l2_table_rd:102*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, mac_addr_cache.l2_table_wr:19*/ + /* field_cond: class_tid: 1, mac_addr_cache.l2_table_rd:103*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_METADATA }, - /* cond_execute: class_tid: 1, control.check_f1_flow:20*/ { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, control.mac_addr_cache_check:105*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* cond_execute: class_tid: 1, l2_cntxt_tcam.allocate_l2_context:106*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, .cond_operand = BNXT_ULP_HDR_BIT_F1 }, - /* cond_execute: class_tid: 1, control.tunnel_ipv6_sip_check:21*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_F2 + }, + /* field_cond: class_tid: 1, l2_cntxt_tcam.l2_table_create:108*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, + /* field_cond: class_tid: 1, l2_cntxt_tcam.l2_table_create:109*/ { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, + /* field_cond: class_tid: 1, mac_addr_cache.l2_table_wr:110*/ { - .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT + }, + /* field_cond: class_tid: 1, mac_addr_cache.l2_table_wr:111*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_METADATA + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, control.check_f1_flow:113*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_F1 }, - /* cond_execute: class_tid: 1, control.l2_only_check:24*/ + /* cond_execute: class_tid: 1, control.l2_only_check:114*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -2925,7 +4425,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* cond_execute: class_tid: 1, control.l2_only_check:24*/ + /* cond_execute: class_tid: 1, control.l2_only_check:114*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -2946,7 +4446,28 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, control.terminating_flow:34*/ + /* cond_execute: class_tid: 1, control.tunnel_ipv6_sip_check:124*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 1, control.terminating_flow:128*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -2955,7 +4476,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, control.terminating_flow:36*/ + /* field_cond: class_tid: 1, control.terminating_flow:131*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -2964,7 +4489,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, control.terminating_flow:38*/ + /* field_cond: class_tid: 1, control.terminating_flow:134*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -2973,7 +4498,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, control.terminating_flow:40*/ + /* field_cond: class_tid: 1, control.terminating_flow:136*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -2982,42 +4507,76 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* cond_execute: class_tid: 1, control.proto_header_cache_miss:42*/ + /* field_cond: class_tid: 1, control.terminating_flow:138*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* field_cond: class_tid: 1, proto_header_cache.rd:139*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, control.proto_header_cache_miss:141*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* field_cond: class_tid: 1, hdr_overlap_cache.overlap_check:43*/ + /* field_cond: class_tid: 1, hdr_overlap_cache.overlap_check:142*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID }, - /* cond_execute: class_tid: 1, control.overlap_miss:44*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, control.overlap_miss:144*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:45*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:145*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:46*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:147*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:47*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:149*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:48*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:151*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:49*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:152*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3030,7 +4589,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:52*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:156*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3043,7 +4606,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:55*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:160*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3060,7 +4627,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:59*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:165*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3077,7 +4648,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:63*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:170*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3094,12 +4669,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:67*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:175*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3111,7 +4690,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:71*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:180*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3124,7 +4707,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:74*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:185*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3137,7 +4728,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:77*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:190*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3150,7 +4749,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:80*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:195*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3163,7 +4770,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:83*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:199*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:200*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3176,7 +4792,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:86*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:204*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3189,7 +4809,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:89*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:208*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3202,7 +4826,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:92*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:212*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3215,7 +4843,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:95*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:216*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3228,7 +4860,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:98*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:220*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3241,7 +4877,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:101*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:224*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3254,7 +4894,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:104*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:228*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3267,7 +4911,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:107*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:232*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3280,7 +4928,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:110*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:236*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3293,7 +4945,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:113*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:240*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3306,7 +4962,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:116*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:244*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3319,7 +4979,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:119*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:248*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3332,7 +4996,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:122*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:252*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3345,7 +5013,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:125*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:256*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3358,7 +5030,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:128*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:261*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3371,7 +5051,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:131*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:265*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -3380,7 +5064,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:133*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:268*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -3389,7 +5077,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:135*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:271*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3402,7 +5094,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:138*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:275*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3415,7 +5107,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:141*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:278*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3428,7 +5124,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:144*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:282*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3441,7 +5137,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:147*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:285*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3458,7 +5158,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:151*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:290*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3475,7 +5175,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:155*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:294*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3492,7 +5196,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:159*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:299*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3509,7 +5217,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:163*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:304*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3526,7 +5234,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:167*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:308*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -3543,12 +5251,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:171*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:312*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3560,7 +5272,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:175*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:317*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3577,12 +5289,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:179*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:321*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3594,7 +5310,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:183*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:326*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3611,12 +5327,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:187*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:330*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3628,7 +5348,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:191*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:335*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3645,12 +5365,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:195*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:339*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3662,7 +5386,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:199*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:344*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3679,12 +5403,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:203*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:348*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3696,12 +5424,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:207*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:353*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3713,7 +5445,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:211*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:358*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3730,7 +5462,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:215*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:362*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3747,12 +5479,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:219*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:366*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3764,7 +5500,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:223*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:371*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3781,12 +5517,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:227*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:375*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3798,7 +5538,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:231*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:380*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3815,12 +5555,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:235*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:384*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3832,7 +5576,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:239*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:389*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3849,12 +5593,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:243*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:393*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3866,12 +5614,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:247*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:398*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3883,7 +5635,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:251*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:403*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3900,7 +5652,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:255*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:407*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3917,12 +5669,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:259*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:411*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3934,12 +5690,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:263*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:416*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -3951,7 +5711,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:267*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:421*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3968,7 +5728,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:271*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:425*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -3985,12 +5745,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:275*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:429*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -4002,12 +5766,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:279*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:434*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -4019,7 +5787,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:283*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:439*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -4036,7 +5804,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:287*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:443*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -4053,12 +5821,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:291*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:447*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -4070,12 +5842,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:295*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:452*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -4087,7 +5863,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:299*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:457*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -4104,7 +5880,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:303*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:461*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -4121,12 +5897,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:307*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:465*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:308*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:467*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 @@ -4139,7 +5919,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ICMP }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:311*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:470*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:471*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 @@ -4152,12 +5937,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ICMP }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:314*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:474*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:315*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:476*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 @@ -4170,7 +5959,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ICMP }, - /* field_cond: class_tid: 1, fkb_select.wc_gen_template:318*/ + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:479*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + /* field_cond: class_tid: 1, fkb_select.wc_gen_template:480*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 @@ -4183,17 +5977,21 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ICMP }, - /* field_cond: class_tid: 1, hdr_overlap_cache.overlap_wr:321*/ + /* field_cond: class_tid: 1, hdr_overlap_cache.overlap_wr:483*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID }, - /* cond_execute: class_tid: 1, fkb_select.em_gen_template_alloc:322*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, fkb_select.em_gen_template_alloc:485*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:323*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:486*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4202,7 +6000,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:325*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:488*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4211,7 +6009,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:327*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:490*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4220,7 +6018,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:329*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:492*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4229,7 +6027,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:331*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:494*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4238,7 +6036,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:333*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:496*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4247,7 +6045,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:335*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:498*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4256,7 +6054,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, control.profile_tcam_priority:337*/ + /* field_cond: class_tid: 1, control.profile_tcam_priority:500*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4265,7 +6063,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:339*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:502*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4274,7 +6072,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:341*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:504*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4283,7 +6081,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:343*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:506*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4292,7 +6090,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:345*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:508*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4301,7 +6099,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:347*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:510*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4310,7 +6108,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:349*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:512*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4319,7 +6117,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:351*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:514*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4328,7 +6126,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:353*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:516*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4337,7 +6135,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:355*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:518*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4346,7 +6144,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:357*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:520*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4355,7 +6153,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:359*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:522*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4364,7 +6162,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:361*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:524*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4373,7 +6171,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:363*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:526*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4382,7 +6180,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:365*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:528*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4391,7 +6189,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:367*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:530*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4400,7 +6198,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:369*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:532*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4409,7 +6207,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:371*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:534*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4418,7 +6216,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:373*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:536*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4427,7 +6225,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:375*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:538*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4436,7 +6234,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:377*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:540*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4445,7 +6243,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:379*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:542*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4454,7 +6252,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:381*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:544*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4463,7 +6261,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:383*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:546*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4472,7 +6270,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:385*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:548*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4481,7 +6279,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:387*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:550*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4490,7 +6288,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:389*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:552*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4499,7 +6297,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:391*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:554*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4508,7 +6306,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:393*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:556*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4517,7 +6315,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:395*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:558*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4526,7 +6324,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:397*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:560*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4535,7 +6333,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:399*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:562*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4544,7 +6342,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:401*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:564*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4553,7 +6351,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:403*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:566*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4562,7 +6360,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:405*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:568*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4571,7 +6369,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:407*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:570*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4580,7 +6378,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:409*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:572*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4589,7 +6387,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:411*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:574*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4598,7 +6396,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:413*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:576*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4607,7 +6405,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:415*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:578*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4616,7 +6414,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:417*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:580*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4625,7 +6423,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:419*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:582*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4634,7 +6432,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:421*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:584*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:586*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4643,7 +6450,25 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:423*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:588*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:590*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:592*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4652,7 +6477,52 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:425*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:594*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:596*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:598*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:600*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:602*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:604*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4661,7 +6531,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:427*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:606*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4670,7 +6540,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:429*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:608*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4679,7 +6549,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:431*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:610*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4688,7 +6558,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:433*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:612*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4697,7 +6567,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:435*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:614*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4706,7 +6576,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:437*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:616*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4715,7 +6585,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:439*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:618*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4724,7 +6594,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:441*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:620*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4733,7 +6603,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:443*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:622*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4742,7 +6612,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:445*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:624*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4751,7 +6621,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:447*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:626*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4760,7 +6630,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:449*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:628*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4769,7 +6639,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:451*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:630*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4782,7 +6652,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_II_VLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:454*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:633*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4795,7 +6665,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OI_VLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:457*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:636*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4808,7 +6678,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_IO_VLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:460*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:639*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4821,17 +6691,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OO_VLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:463*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:642*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:464*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:643*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:465*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:644*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4840,7 +6710,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:467*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:646*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4849,7 +6719,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:469*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:648*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4858,7 +6728,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:471*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:650*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4867,7 +6737,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:473*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:652*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4876,7 +6746,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:475*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:654*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4885,7 +6755,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:477*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:656*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4894,7 +6764,24 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:479*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:659*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:662*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4903,7 +6790,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:481*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:664*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4912,7 +6799,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:483*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:666*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4921,7 +6808,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GRE }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:485*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:668*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4930,7 +6817,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR1 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:487*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:670*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4939,7 +6826,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR2 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:489*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:672*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:675*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4948,7 +6848,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:491*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + /* field_cond: class_tid: 1, profile_tcam.gen_template:678*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4957,7 +6861,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:493*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:680*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4966,7 +6870,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:495*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:682*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4975,7 +6879,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GRE }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:497*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:684*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4984,7 +6888,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR1 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:499*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:686*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -4993,22 +6897,22 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR2 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:501*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:688*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:502*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:689*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:503*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:690*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:504*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:691*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5017,7 +6921,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:506*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:693*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5026,7 +6930,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:508*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:695*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5035,7 +6939,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:510*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:697*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5044,7 +6948,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:512*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:699*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5053,7 +6957,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:514*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:701*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5062,7 +6966,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:516*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:703*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5071,7 +6975,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:518*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:705*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5080,7 +6984,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:520*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:707*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5089,7 +6993,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:522*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:709*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5098,7 +7002,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:524*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:711*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5107,7 +7011,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:526*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:713*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5116,7 +7020,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:528*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:715*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5125,7 +7029,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:530*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:717*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5134,12 +7038,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:532*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:719*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:533*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:720*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5148,7 +7052,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:535*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:722*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5157,12 +7061,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:537*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:724*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:538*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:725*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5171,7 +7075,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:540*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:727*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5180,7 +7084,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:542*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:729*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5189,7 +7093,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:544*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:731*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5198,7 +7102,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:546*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:733*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5207,7 +7111,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:548*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:735*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5216,7 +7120,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:550*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:737*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5225,7 +7129,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:552*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:739*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5234,7 +7138,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:554*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:741*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5243,7 +7147,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:556*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:743*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5252,7 +7156,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:558*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:745*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5265,7 +7169,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OI_VLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:561*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:748*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5278,17 +7182,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OO_VLAN }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:564*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:751*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:565*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:752*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:566*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:753*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5297,7 +7201,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 1, profile_tcam.gen_template:568*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:755*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5306,37 +7210,66 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_F2 }, - /* field_cond: class_tid: 1, wm_key_recipe.0:570*/ + /* field_cond: class_tid: 1, profile_tcam.gen_template:757*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* field_cond: class_tid: 1, wm_key_recipe.0:759*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:571*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:761*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:572*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:763*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:573*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:765*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:574*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:767*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:575*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:768*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:576*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:769*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5349,7 +7282,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:579*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:773*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5362,7 +7299,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:582*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:777*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5375,7 +7316,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:585*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:781*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5388,7 +7333,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:588*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:785*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5405,7 +7354,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:592*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:790*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5422,7 +7375,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:596*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:795*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5439,7 +7396,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:600*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:800*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5456,7 +7417,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:604*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:805*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5473,7 +7438,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:608*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:810*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5490,12 +7459,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:612*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:815*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -5507,12 +7480,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, wm_key_recipe.0:616*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:820*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -5524,7 +7501,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, wm_key_recipe.0:620*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:825*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5537,7 +7518,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:623*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:829*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5550,7 +7535,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:626*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:833*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5563,7 +7552,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:629*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:837*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 1, wm_key_recipe.0:838*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5576,7 +7574,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:632*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:842*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 1, wm_key_recipe.0:843*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5589,7 +7596,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:635*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:847*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5602,7 +7613,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:638*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:851*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5615,7 +7630,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:641*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:855*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5628,7 +7647,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:644*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:859*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5641,7 +7664,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:647*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:863*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5654,7 +7681,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:650*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:867*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5667,7 +7698,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:653*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:871*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5680,7 +7715,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:656*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:875*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5693,7 +7732,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:659*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:879*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5706,7 +7749,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:662*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:883*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5719,7 +7766,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:665*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:887*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5732,7 +7783,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:668*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:891*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5745,7 +7800,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:671*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:895*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5758,7 +7817,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:674*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:899*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5771,7 +7834,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:677*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:903*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5784,7 +7851,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:680*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:907*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5797,7 +7868,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:683*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:911*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5810,7 +7885,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:686*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:915*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5823,7 +7902,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:689*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:919*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5836,12 +7919,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:692*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:923*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -5849,7 +7940,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:695*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:928*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5862,12 +7957,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:698*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:932*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -5875,7 +7978,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:701*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:937*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5888,7 +7995,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:704*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:941*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -5897,7 +8008,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 1, wm_key_recipe.0:706*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:944*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -5906,7 +8021,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 1, wm_key_recipe.0:708*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:947*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -5915,7 +8034,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 1, wm_key_recipe.0:710*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:950*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -5924,7 +8047,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 1, wm_key_recipe.0:712*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:953*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5937,7 +8064,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:715*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:957*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5950,7 +8077,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:718*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:960*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5963,7 +8094,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:721*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:964*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5976,7 +8107,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:724*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:967*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -5989,7 +8124,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:727*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:971*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6002,7 +8137,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:730*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:974*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6015,7 +8154,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:733*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:978*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6028,7 +8167,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, wm_key_recipe.0:736*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:981*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6045,7 +8188,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:740*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:986*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6062,7 +8205,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:744*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:990*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6079,7 +8226,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:748*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:995*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6096,7 +8243,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:752*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:999*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6113,7 +8264,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:756*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1004*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6130,7 +8285,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:760*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1009*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6147,7 +8302,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:764*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1013*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6164,7 +8319,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:768*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1017*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6181,7 +8340,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:772*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1022*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6198,7 +8361,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:776*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1027*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6215,7 +8378,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:780*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1031*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6232,12 +8395,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:784*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1035*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -6249,7 +8416,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, wm_key_recipe.0:788*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1040*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -6266,12 +8433,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, wm_key_recipe.0:792*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1044*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -6283,7 +8454,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, wm_key_recipe.0:796*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1049*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -6300,7 +8471,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, wm_key_recipe.0:800*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1053*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6313,7 +8488,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:803*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1057*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6326,7 +8501,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:806*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1060*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6339,7 +8518,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:809*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1064*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6352,7 +8531,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:812*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1067*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6365,7 +8548,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:815*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1071*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6378,7 +8561,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:818*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1074*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6391,7 +8578,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:821*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1078*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6404,7 +8591,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:824*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1081*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6417,7 +8608,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:827*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1085*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6430,7 +8621,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:830*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1088*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6443,7 +8638,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:833*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1092*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6456,7 +8651,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:836*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1095*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6469,7 +8668,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:839*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1099*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6482,7 +8681,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:842*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1102*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6495,7 +8698,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:845*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1106*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6508,7 +8711,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, wm_key_recipe.0:848*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1109*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6521,7 +8728,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:851*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1113*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6534,7 +8745,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:854*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1117*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6547,7 +8758,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:857*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1120*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6560,7 +8771,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:860*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1123*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6573,7 +8788,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:863*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1127*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6586,7 +8805,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:866*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1131*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6599,7 +8818,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:869*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1134*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6612,7 +8831,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, wm_key_recipe.0:872*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1137*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6621,7 +8844,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:874*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1140*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6630,7 +8857,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:876*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1143*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6639,7 +8866,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:878*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1145*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6648,7 +8875,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:880*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1147*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6661,7 +8892,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:883*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1151*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6674,7 +8909,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:886*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1155*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6687,7 +8922,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:889*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1158*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6700,7 +8935,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:892*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1161*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6709,7 +8948,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:894*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1164*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6718,7 +8961,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:896*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1167*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6727,7 +8970,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:898*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1169*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6736,7 +8979,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 1, wm_key_recipe.0:900*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1171*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6749,7 +8996,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:903*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1175*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6762,7 +9013,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:906*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1179*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6775,7 +9026,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:909*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1182*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6788,7 +9039,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, wm_key_recipe.0:912*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1185*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6801,7 +9056,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:915*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1189*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6814,7 +9073,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:918*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1193*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6827,7 +9086,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:921*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1196*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6840,7 +9099,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:924*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1199*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6853,7 +9116,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:927*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1203*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6866,7 +9133,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:930*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1207*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6879,7 +9146,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:933*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1210*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6892,7 +9159,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, wm_key_recipe.0:936*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1213*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6905,7 +9176,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:939*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1217*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6918,7 +9193,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:942*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1221*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6931,7 +9206,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:945*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1224*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6944,12 +9219,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:948*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1227*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* field_cond: class_tid: 1, wm_key_recipe.0:949*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1229*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6962,7 +9245,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:952*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1233*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6975,7 +9262,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:955*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1237*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -6988,7 +9275,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:958*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1240*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7001,12 +9288,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:961*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1243*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* field_cond: class_tid: 1, wm_key_recipe.0:962*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1245*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7019,7 +9314,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:965*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1249*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7032,7 +9331,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:968*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1253*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7045,7 +9344,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:971*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1256*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7058,12 +9357,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:974*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1259*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* field_cond: class_tid: 1, wm_key_recipe.0:975*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1261*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7076,7 +9383,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:978*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1265*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7089,7 +9400,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:981*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1269*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7102,7 +9413,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:984*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1272*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7115,12 +9426,25 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, wm_key_recipe.0:987*/ + /* field_cond: class_tid: 1, wm_key_recipe.0:1275*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* cond_execute: class_tid: 1, em_flow_conflict_cache.rd:988*/ + /* field_cond: class_tid: 1, proto_header_cache.wr:1277*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, em_flow_conflict_cache.rd:1279*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET, .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH @@ -7129,32 +9453,61 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW }, - /* cond_execute: class_tid: 1, control.em_flow_conflict_cache_miss:990*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* field_cond: class_tid: 1, em_flow_conflict_cache.rd:1282*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, control.em_flow_conflict_cache_miss:1284*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:991*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1285*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:992*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1287*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:993*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1289*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:994*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1291*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:995*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1292*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7171,7 +9524,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:999*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1297*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7184,7 +9541,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1002*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1301*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7201,7 +9562,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1006*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1306*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7218,7 +9583,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1010*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1311*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7235,12 +9604,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1014*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1316*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -7252,7 +9625,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1018*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1321*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7265,7 +9642,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1021*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1325*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7278,7 +9659,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1024*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1329*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7291,7 +9676,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1027*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1333*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7304,7 +9693,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1030*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1337*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7317,7 +9710,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1033*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1341*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7330,7 +9727,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1036*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1345*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7343,7 +9744,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1039*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1349*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7356,7 +9761,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1042*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1353*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7369,7 +9778,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1045*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1357*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7382,7 +9795,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1048*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1361*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7395,7 +9812,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1051*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1365*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7408,7 +9829,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1054*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1369*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7421,7 +9846,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1057*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1373*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7434,7 +9863,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1060*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1377*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7447,7 +9880,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1063*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1381*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7460,7 +9897,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1066*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1385*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7473,7 +9914,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1069*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1389*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7486,12 +9931,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1072*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1393*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -7499,7 +9952,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1075*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1398*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7512,7 +9969,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1078*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1402*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -7521,7 +9982,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1080*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1405*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -7530,7 +9995,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1082*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1408*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7547,7 +10016,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1086*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1413*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7564,7 +10033,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1090*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1417*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7577,7 +10050,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1093*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1421*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7590,7 +10063,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1096*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1424*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7607,7 +10084,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1100*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1429*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7624,7 +10101,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1104*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1433*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7641,7 +10122,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1108*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1438*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7658,7 +10143,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1112*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1443*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7675,7 +10160,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1116*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1447*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7692,12 +10177,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1120*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1451*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -7709,7 +10198,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1124*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1456*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -7726,7 +10215,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1128*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1460*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7739,7 +10232,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1131*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1464*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7752,7 +10245,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1134*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1467*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7765,7 +10262,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1137*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1471*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7778,7 +10275,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1140*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1474*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7791,7 +10292,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1143*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1478*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7804,7 +10305,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1146*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1481*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7817,7 +10322,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1149*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1485*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7830,7 +10339,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1152*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1489*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7843,7 +10352,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1155*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1492*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7856,7 +10365,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1158*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1495*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7869,7 +10382,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1161*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1499*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7882,7 +10395,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1164*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1502*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7895,7 +10412,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1167*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1506*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7908,7 +10425,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1170*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1509*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7921,7 +10442,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1173*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1513*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7934,7 +10455,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1176*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1516*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7947,7 +10472,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1179*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1520*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7960,7 +10489,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1182*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1524*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7973,7 +10502,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1185*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1527*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7986,7 +10515,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1188*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1530*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -7999,7 +10532,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1191*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1534*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8012,7 +10549,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1194*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1538*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8025,7 +10562,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1197*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1541*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8038,7 +10575,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1200*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1544*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8051,7 +10592,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1203*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1548*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8064,7 +10609,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1206*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1552*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8077,7 +10622,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1209*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1555*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8090,7 +10635,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1212*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1558*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8103,7 +10652,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1215*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1562*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8116,7 +10669,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1218*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1566*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8129,7 +10682,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1221*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1569*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8142,7 +10695,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1224*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1572*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8155,7 +10712,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1227*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1576*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8168,7 +10729,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1230*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1580*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8181,7 +10742,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1233*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1583*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8194,7 +10755,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1236*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1586*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8207,7 +10772,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1239*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1590*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8220,7 +10789,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1242*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1594*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8233,7 +10802,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, fkb_select.em_gen_template:1245*/ + /* field_cond: class_tid: 1, fkb_select.em_gen_template:1597*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8246,37 +10815,57 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1248*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1600*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1249*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1602*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1250*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1604*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, em_key_recipe.0:1251*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1606*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 1, em_key_recipe.0:1252*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1608*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1253*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1609*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1254*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1610*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8293,7 +10882,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1258*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1615*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8310,7 +10903,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1262*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1620*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8323,7 +10920,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1265*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1624*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8336,7 +10937,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1268*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1628*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8353,7 +10958,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1272*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1633*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8370,7 +10979,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1276*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1638*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8387,7 +11000,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1280*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1643*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8404,7 +11021,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1284*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1648*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8421,7 +11042,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1288*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1653*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8438,12 +11063,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1292*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1658*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -8455,12 +11084,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, em_key_recipe.0:1296*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1663*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -8472,7 +11105,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, em_key_recipe.0:1300*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1668*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8485,7 +11122,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1303*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1672*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8498,7 +11139,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1306*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1676*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8511,7 +11156,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1309*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1680*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8524,7 +11173,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1312*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1684*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8537,7 +11190,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1315*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1688*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8550,7 +11207,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1318*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1692*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8563,7 +11224,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1321*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1696*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8576,7 +11241,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1324*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1700*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8589,7 +11258,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1327*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1704*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8602,7 +11275,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1330*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1708*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8615,7 +11292,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1333*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1712*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8628,7 +11309,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1336*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1716*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8641,7 +11326,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1339*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1720*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8654,7 +11343,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1342*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1724*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8667,7 +11360,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1345*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1728*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8680,7 +11377,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1348*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1732*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8693,7 +11394,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1351*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1736*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8706,7 +11411,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1354*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1740*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8719,7 +11428,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1357*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1744*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8732,7 +11445,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1360*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1748*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8745,7 +11462,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1363*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1752*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8758,7 +11479,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1366*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1756*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8771,7 +11496,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1369*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1760*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8784,12 +11513,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1372*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1764*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -8797,7 +11534,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1375*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1769*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8810,12 +11551,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1378*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1773*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -8823,7 +11572,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1381*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1778*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8836,7 +11589,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1384*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1782*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -8845,7 +11602,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 1, em_key_recipe.0:1386*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1785*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -8854,7 +11615,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 1, em_key_recipe.0:1388*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1788*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -8863,7 +11628,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 1, em_key_recipe.0:1390*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1791*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -8872,7 +11641,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 1, em_key_recipe.0:1392*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1794*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8889,7 +11662,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1396*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1799*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8906,7 +11679,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1400*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1803*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8923,7 +11700,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1404*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1808*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8940,7 +11717,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1408*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1812*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8953,7 +11734,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1411*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1816*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8966,7 +11747,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1414*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1819*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8979,7 +11764,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1417*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1823*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -8992,7 +11777,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 1, em_key_recipe.0:1420*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1826*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9009,7 +11798,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1424*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1831*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9026,7 +11815,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1428*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1835*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9043,7 +11836,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1432*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1840*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9060,7 +11853,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1436*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1844*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9077,7 +11874,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1440*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1849*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9094,7 +11895,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1444*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1854*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9111,7 +11912,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1448*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1858*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9128,7 +11929,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1452*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1862*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9145,7 +11950,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1456*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1867*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9162,7 +11971,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1460*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1872*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9179,7 +11988,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1464*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1876*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9196,12 +12005,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1468*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1880*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -9213,7 +12026,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, em_key_recipe.0:1472*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1885*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -9230,12 +12043,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, em_key_recipe.0:1476*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1889*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -9247,7 +12064,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 1, em_key_recipe.0:1480*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1894*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -9264,7 +12081,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 1, em_key_recipe.0:1484*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1898*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9277,7 +12098,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1487*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1902*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9290,7 +12111,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1490*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1905*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9303,7 +12128,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1493*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1909*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9316,7 +12141,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1496*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1912*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9329,7 +12158,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1499*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1916*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9342,7 +12171,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1502*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1919*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9355,7 +12188,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1505*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1923*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9368,7 +12201,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1508*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1926*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9381,7 +12218,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1511*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1930*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9394,7 +12231,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1514*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1933*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9407,7 +12248,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1517*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1937*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9420,7 +12261,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1520*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1940*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9433,7 +12278,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1523*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1944*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9446,7 +12291,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1526*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1947*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9459,7 +12308,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1529*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1951*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9472,7 +12321,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 1, em_key_recipe.0:1532*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1954*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9485,7 +12338,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1535*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1958*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9498,7 +12355,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1538*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1962*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9511,7 +12368,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1541*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1965*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9524,7 +12381,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1544*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1968*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9537,7 +12398,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1547*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1972*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9550,7 +12415,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1550*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1976*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9563,7 +12428,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1553*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1979*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9576,7 +12441,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 1, em_key_recipe.0:1556*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1982*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9589,7 +12458,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1559*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1986*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9602,7 +12475,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1562*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1990*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9615,7 +12488,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1565*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1993*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9628,7 +12501,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1568*/ + /* field_cond: class_tid: 1, em_key_recipe.0:1996*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9641,7 +12518,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1571*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2000*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9654,7 +12535,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1574*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2004*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9667,7 +12548,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1577*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2007*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9680,7 +12561,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 1, em_key_recipe.0:1580*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2010*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9693,7 +12578,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1583*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2014*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9706,7 +12595,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1586*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2018*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9719,7 +12608,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1589*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2021*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9732,7 +12621,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1592*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2024*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9745,7 +12638,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1595*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2028*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9758,7 +12655,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1598*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2032*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9771,7 +12668,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1601*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2035*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9784,7 +12681,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 1, em_key_recipe.0:1604*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2038*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9797,7 +12698,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1607*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2042*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9810,7 +12715,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1610*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2046*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9823,7 +12728,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1613*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2049*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9836,7 +12741,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1616*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2052*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9849,7 +12758,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1619*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2056*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9862,7 +12775,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1622*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2060*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9875,7 +12788,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1625*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2063*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9888,7 +12801,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1628*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2066*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9901,7 +12818,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1631*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2070*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9914,7 +12835,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1634*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2074*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9927,7 +12848,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1637*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2077*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9940,7 +12861,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1640*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2080*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9953,7 +12878,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1643*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2084*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9966,7 +12895,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1646*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2088*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9979,7 +12908,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 1, em_key_recipe.0:1649*/ + /* field_cond: class_tid: 1, em_key_recipe.0:2091*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -9992,7 +12921,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* cond_execute: class_tid: 1, control.field_sig_validation:1652*/ + /* field_cond: class_tid: 1, em_flow_conflict_cache.wr:2094*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 1, control.field_sig_validation:2096*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, .cond_operand = BNXT_ULP_RF_IDX_CC @@ -10001,7 +12939,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_FLOW_SIG_ID }, - /* cond_execute: class_tid: 1, em_normal.ingress_generic_template:1654*/ + /* cond_execute: class_tid: 1, control.outer_loop_add_check:2098*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_ADD + }, + /* cond_execute: class_tid: 1, control.em_wc_check:2100*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET, .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH @@ -10010,12 +12957,41 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW }, - /* cond_execute: class_tid: 1, control.em_add_check:1656*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_DEF_PRIO + }, + /* cond_execute: class_tid: 1, em_normal.ingress_generic_template:2103*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 1, em_recycle.ingress_generic_template_recycle:2104*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 1, control.em_add_check:2105*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL }, - /* cond_execute: class_tid: 2, control.l2_only_check:1657*/ + /* cond_execute: class_tid: 1, wm_normal.ingress_generic_template:2106*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 1, wm_recycle.ingress_generic_template_recycle:2107*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 1, control.outer_loop_check:2108*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 2, control.l2_only_check:2109*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10036,7 +13012,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* cond_execute: class_tid: 2, control.l2_only_check:1657*/ + /* cond_execute: class_tid: 2, control.l2_only_check:2109*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10057,7 +13033,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1667*/ + /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:2119*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10074,7 +13054,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1667*/ + /* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:2119*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10091,7 +13075,282 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, control.terminating_flow:1675*/ + /* cond_execute: class_tid: 2, control.check_tunnel_recycle:2129*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN + }, + /* cond_execute: class_tid: 2, control.multi_tunnel_check:2131*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET, + .cond_operand = BNXT_ULP_CF_IDX_OUTER_EM_ONLY + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2133*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2135*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2137*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2139*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2141*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2143*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2145*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2147*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2149*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2151*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2153*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2155*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2157*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:2159*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* cond_execute: class_tid: 2, control.multi_flow_cache_check:2161*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2162*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2164*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2166*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2168*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2170*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2172*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2174*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2176*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2178*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2180*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2182*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2184*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2186*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2188*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT + }, + /* field_cond: class_tid: 2, control.terminating_flow:2190*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10100,7 +13359,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, control.terminating_flow:1677*/ + /* field_cond: class_tid: 2, control.terminating_flow:2192*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10109,7 +13368,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, control.terminating_flow:1679*/ + /* field_cond: class_tid: 2, control.terminating_flow:2194*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10118,7 +13377,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, control.terminating_flow:1681*/ + /* field_cond: class_tid: 2, control.terminating_flow:2196*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10127,42 +13386,81 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* cond_execute: class_tid: 2, control.proto_header_cache_miss:1683*/ + /* cond_execute: class_tid: 2, control.group_id_check:2198*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + /* cond_execute: class_tid: 2, control.flow_chain_group_id:2199*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* field_cond: class_tid: 2, hdr_overlap_cache.overlap_check:1684*/ + /* field_cond: class_tid: 2, proto_header_cache.rd:2200*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID }, - /* cond_execute: class_tid: 2, control.overlap_miss:1685*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 2, control.proto_header_cache_miss:2202*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1686*/ + /* field_cond: class_tid: 2, hdr_overlap_cache.overlap_check:2203*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 2, control.overlap_miss:2205*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2206*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1687*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2208*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1688*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2210*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1689*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2212*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1690*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2213*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10175,7 +13473,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1693*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2217*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10188,7 +13490,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1696*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2221*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 @@ -10197,7 +13503,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1698*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2224*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10214,7 +13524,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1702*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2229*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10231,7 +13545,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1706*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2234*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10248,12 +13566,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1710*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2239*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10265,7 +13587,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1714*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2244*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10278,7 +13604,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1717*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2249*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10291,7 +13625,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1720*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2254*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10304,7 +13646,15 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1723*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2259*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10317,7 +13667,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1726*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2263*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2264*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10330,7 +13689,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1729*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2268*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10343,7 +13706,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1732*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2272*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10356,7 +13723,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1735*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2276*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10369,7 +13740,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1738*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2280*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10382,7 +13757,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1741*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2284*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10395,7 +13774,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1744*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2288*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10408,7 +13791,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1747*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2292*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10421,7 +13808,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1750*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2296*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10434,7 +13825,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1753*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2300*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10447,7 +13842,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1756*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2304*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10460,7 +13859,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1759*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2308*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10473,7 +13876,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1762*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2312*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10486,7 +13893,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1765*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2316*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10499,12 +13910,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1768*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2320*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -10512,7 +13931,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1771*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2325*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10525,7 +13948,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1774*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2329*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -10534,7 +13961,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1776*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2332*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -10543,7 +13974,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1778*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2335*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10556,7 +13991,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1781*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2339*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10569,7 +14004,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1784*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2342*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10582,7 +14021,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1787*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2346*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10595,7 +14034,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1790*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2349*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10612,7 +14055,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1794*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2354*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10629,7 +14072,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1798*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2358*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10646,7 +14093,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1802*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2363*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10663,7 +14114,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1806*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2368*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10680,7 +14131,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1810*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2372*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -10697,12 +14148,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1814*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2376*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10714,7 +14169,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1818*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2381*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10731,12 +14186,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1822*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2385*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10748,7 +14207,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1826*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2390*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10765,12 +14224,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1830*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2394*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10782,7 +14245,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1834*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2399*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10799,12 +14262,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1838*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2403*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10816,7 +14283,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1842*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2408*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10833,12 +14300,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1846*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2412*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10850,12 +14321,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1850*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2417*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10867,7 +14342,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1854*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2422*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10884,7 +14359,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1858*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2426*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10901,12 +14376,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1862*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2430*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10918,7 +14397,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1866*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2435*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10935,12 +14414,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1870*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2439*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10952,7 +14435,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1874*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2444*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -10969,12 +14452,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1878*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2448*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -10986,7 +14473,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1882*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2453*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11003,12 +14490,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1886*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2457*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11020,12 +14511,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1890*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2462*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11037,7 +14532,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1894*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2467*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11054,7 +14549,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1898*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2471*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11071,12 +14566,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1902*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2475*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11088,12 +14587,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1906*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2480*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11105,7 +14608,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1910*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2485*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11122,7 +14625,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1914*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2489*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11139,12 +14642,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1918*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2493*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11156,12 +14663,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1922*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2498*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11173,7 +14684,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1926*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2503*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11190,7 +14701,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1930*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2507*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11207,12 +14718,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1934*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2511*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11224,12 +14739,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1938*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2516*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -11241,7 +14760,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1942*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2521*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11258,7 +14777,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1946*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2525*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -11275,12 +14794,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1950*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2529*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1951*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2531*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 @@ -11293,7 +14816,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ICMP }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1954*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2534*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2535*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 @@ -11306,12 +14834,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ICMP }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1957*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2538*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1958*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2540*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 @@ -11324,7 +14856,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ICMP }, - /* field_cond: class_tid: 2, fkb_select.wc_gen_template:1961*/ + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2543*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + /* field_cond: class_tid: 2, fkb_select.wc_gen_template:2544*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 @@ -11337,17 +14874,21 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ICMP }, - /* field_cond: class_tid: 2, hdr_overlap_cache.overlap_wr:1964*/ + /* field_cond: class_tid: 2, hdr_overlap_cache.overlap_wr:2547*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID }, - /* cond_execute: class_tid: 2, fkb_select.em_gen_template_alloc:1965*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 2, fkb_select.em_gen_template_alloc:2549*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1966*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2550*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11356,7 +14897,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1968*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2552*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11365,7 +14906,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1970*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2554*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11374,7 +14915,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1972*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2556*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11383,7 +14924,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1974*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2558*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11392,7 +14933,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1976*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2560*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11401,7 +14942,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1978*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2562*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11410,7 +14951,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, control.profile_tcam_priority:1980*/ + /* field_cond: class_tid: 2, control.profile_tcam_priority:2564*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11419,7 +14960,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1982*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2566*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11428,7 +14969,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1984*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2568*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11437,7 +14978,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1986*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2570*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11446,7 +14987,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1988*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2572*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11455,7 +14996,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1990*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2574*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11464,7 +15005,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1992*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2576*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11473,7 +15014,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1994*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2578*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11482,7 +15023,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1996*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2580*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11491,7 +15032,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:1998*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2582*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11500,7 +15041,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2000*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2584*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11509,7 +15050,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2002*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2586*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11518,7 +15059,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2004*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2588*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11527,7 +15068,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2006*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2590*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11536,7 +15077,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2008*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2592*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11545,7 +15086,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2010*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2594*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11554,7 +15095,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2012*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2596*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11563,7 +15104,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2014*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2598*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11572,7 +15113,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2016*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2600*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11581,7 +15122,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2018*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2602*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11590,7 +15131,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2020*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2604*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11599,7 +15140,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2022*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2606*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11608,7 +15149,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2024*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2608*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11617,7 +15158,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2026*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2610*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11626,7 +15167,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2028*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2612*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11635,7 +15176,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2030*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2614*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11644,7 +15185,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2032*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2616*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11653,7 +15194,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2034*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2618*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11662,7 +15203,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2036*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2620*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11671,7 +15212,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2038*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2622*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11680,7 +15221,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2040*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2624*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11689,7 +15230,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2042*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2626*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11698,7 +15239,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2044*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2628*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11707,7 +15248,79 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2046*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2630*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2632*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2634*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2636*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2638*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2640*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2642*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2644*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2646*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11716,7 +15329,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2048*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2648*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11725,7 +15338,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2050*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2650*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11734,7 +15347,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2052*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2652*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11743,7 +15356,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2054*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2654*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11752,7 +15365,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2056*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2656*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11761,7 +15374,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2058*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2658*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11770,7 +15383,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2060*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2660*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11779,7 +15392,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2062*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2662*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11788,7 +15401,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2064*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2664*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11797,7 +15410,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2066*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2666*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11806,7 +15419,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2068*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2668*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11815,7 +15428,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2070*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2670*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11824,7 +15437,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2072*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2672*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11833,7 +15446,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2074*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2674*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11842,7 +15455,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2076*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2676*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11851,7 +15464,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2078*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2678*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11860,7 +15473,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2080*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2680*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11869,7 +15482,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2082*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2682*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11878,7 +15491,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2084*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2684*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11887,7 +15500,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2086*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2686*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11896,7 +15509,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2088*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2688*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11905,7 +15518,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2090*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2690*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11914,7 +15527,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2092*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2692*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11923,7 +15536,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2094*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2694*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11936,7 +15549,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_II_VLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2097*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2697*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11949,7 +15562,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OI_VLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2100*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2700*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11962,7 +15575,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_IO_VLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2103*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2703*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11975,17 +15588,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OO_VLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2106*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2706*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2107*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2707*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2108*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2708*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -11994,7 +15607,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ETH }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2110*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2710*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12003,7 +15616,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2112*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2712*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12012,7 +15625,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ETH }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2114*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2714*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12021,7 +15634,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2116*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2716*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12030,7 +15643,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_ETH }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2118*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2718*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12039,7 +15652,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2120*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2720*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12048,7 +15661,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2122*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2722*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12057,7 +15670,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2124*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2724*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12066,7 +15679,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2126*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2726*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12075,7 +15688,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GRE }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2128*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2728*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12084,7 +15697,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR1 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2130*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2730*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12093,7 +15706,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR2 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2132*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2732*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12102,7 +15715,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2134*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2734*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12111,7 +15724,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2136*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2736*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12120,7 +15733,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2138*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2738*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12129,7 +15742,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_GRE }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2140*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2740*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12138,7 +15751,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR1 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2142*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2742*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12147,22 +15760,22 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_UPAR2 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2144*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2744*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2145*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2745*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2146*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2746*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2147*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2747*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12171,7 +15784,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2149*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2749*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12180,7 +15793,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2151*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2751*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12189,7 +15802,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2153*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2753*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12198,7 +15811,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2155*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2755*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12207,7 +15820,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2157*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2757*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12216,7 +15829,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2159*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2759*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12225,7 +15838,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2161*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2761*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12234,7 +15847,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2163*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2763*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12243,7 +15856,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2165*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2765*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12252,7 +15865,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2167*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2767*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12261,7 +15874,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2169*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2769*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12270,7 +15883,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2171*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2771*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12279,7 +15892,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2173*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2773*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12288,7 +15901,35 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2175*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2775*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2776*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_TCP + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2778*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_UDP + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2780*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2781*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12297,7 +15938,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2177*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2783*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12306,7 +15947,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2179*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2785*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12315,7 +15956,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2181*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2787*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12324,7 +15965,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2183*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2789*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12333,7 +15974,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2185*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2791*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12342,7 +15983,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2187*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2793*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12351,7 +15992,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2189*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2795*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12360,7 +16001,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2191*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2797*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12369,7 +16010,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2193*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2799*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12378,7 +16019,43 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2195*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2801*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2803*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2805*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2807*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4 + }, + /* field_cond: class_tid: 2, profile_tcam.gen_template:2809*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12391,7 +16068,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OI_VLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2198*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2812*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12404,17 +16081,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_OO_VLAN }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2201*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2815*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2202*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2816*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_DIX_TRAFFIC }, - /* field_cond: class_tid: 2, profile_tcam.gen_template:2203*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2817*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12423,37 +16100,66 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_ETH }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2205*/ + /* field_cond: class_tid: 2, profile_tcam.gen_template:2819*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* field_cond: class_tid: 2, wm_key_recipe.0:2821*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2206*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2823*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2207*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2825*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2208*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2827*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2209*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2829*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2210*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2830*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2211*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2831*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12466,7 +16172,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2214*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2835*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12479,7 +16189,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2217*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2839*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12492,7 +16206,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2220*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2843*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 @@ -12501,7 +16219,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2222*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2846*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12514,7 +16236,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2225*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2850*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6 @@ -12523,7 +16249,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6 }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2227*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2853*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12540,7 +16270,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2231*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2858*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12557,7 +16291,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2235*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2863*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12574,7 +16312,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2239*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2868*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12591,7 +16333,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2243*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2873*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12608,7 +16354,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2247*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2878*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12625,12 +16375,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2251*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2883*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -12642,12 +16396,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2255*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2888*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -12659,7 +16417,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2259*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2893*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12672,7 +16434,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2262*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2897*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12685,7 +16451,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2265*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2901*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12698,7 +16468,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2268*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2905*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 2, wm_key_recipe.0:2906*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12711,7 +16490,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2271*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2910*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET, + .cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW + }, + /* field_cond: class_tid: 2, wm_key_recipe.0:2911*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12724,7 +16512,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2274*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2915*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12737,7 +16529,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2277*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2919*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12750,7 +16546,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2280*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2923*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12763,7 +16563,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2283*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2927*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12776,7 +16580,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2286*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2931*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12789,7 +16597,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2289*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2935*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12802,7 +16614,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2292*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2939*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12815,7 +16631,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2295*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2943*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12828,7 +16648,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2298*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2947*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12841,7 +16665,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2301*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2951*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12854,7 +16682,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2304*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2955*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12867,7 +16699,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2307*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2959*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12880,7 +16716,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2310*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2963*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12893,7 +16733,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2313*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2967*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12906,7 +16750,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2316*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2971*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12919,7 +16767,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2319*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2975*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12932,7 +16784,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2322*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2979*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12945,7 +16801,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2325*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2983*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12958,7 +16818,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2328*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2987*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12971,12 +16835,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2331*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2991*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -12984,7 +16856,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2334*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:2996*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -12997,12 +16873,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2337*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3000*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -13010,7 +16894,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2340*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3005*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13023,7 +16911,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2343*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3009*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -13032,7 +16924,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2345*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3012*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -13041,7 +16937,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2347*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3015*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -13050,7 +16950,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2349*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3018*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -13059,7 +16963,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2351*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3021*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13072,7 +16980,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2354*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3025*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13085,7 +16993,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2357*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3028*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13098,7 +17010,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2360*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3032*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13111,33 +17023,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2363*/ - { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_I_ETH - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC - }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2366*/ - { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, - .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_O_ETH - }, + /* field_cond: class_tid: 2, wm_key_recipe.0:3035*/ { - .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2369*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13150,7 +17040,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2372*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3039*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13163,7 +17053,41 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2375*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3042*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC + }, + /* field_cond: class_tid: 2, wm_key_recipe.0:3046*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC + }, + /* field_cond: class_tid: 2, wm_key_recipe.0:3049*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13180,7 +17104,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2379*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3054*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13197,7 +17121,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2383*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3058*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13214,7 +17142,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2387*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3063*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13231,7 +17159,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2391*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3067*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13248,7 +17180,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2395*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3072*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13265,7 +17201,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2399*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3077*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13282,7 +17218,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2403*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3081*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13299,7 +17235,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2407*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3085*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13316,7 +17256,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2411*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3090*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13333,7 +17277,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2415*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3095*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13350,7 +17294,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2419*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3099*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13367,12 +17311,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2423*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3103*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -13384,7 +17332,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2427*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3108*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -13401,12 +17349,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2431*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3112*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -13418,7 +17370,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2435*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3117*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -13435,7 +17387,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2439*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3121*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13448,7 +17404,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2442*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3125*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13461,7 +17417,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2445*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3128*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13474,7 +17434,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2448*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3132*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13487,7 +17447,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2451*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3135*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13500,7 +17464,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2454*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3139*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13513,7 +17477,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2457*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3142*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13526,7 +17494,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2460*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3146*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13539,7 +17507,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2463*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3149*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13552,7 +17524,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2466*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3153*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13565,7 +17537,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2469*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3156*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13578,7 +17554,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2472*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3160*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13591,7 +17567,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2475*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3163*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13604,7 +17584,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2478*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3167*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13617,7 +17597,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2481*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3170*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13630,7 +17614,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2484*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3174*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13643,7 +17627,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2487*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3177*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13656,7 +17644,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2490*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3181*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13669,7 +17661,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2493*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3185*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13682,7 +17674,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2496*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3188*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13695,7 +17687,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2499*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3191*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13708,7 +17704,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2502*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3195*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13721,7 +17721,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2505*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3199*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13734,7 +17734,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2508*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3202*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13747,7 +17747,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2511*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3205*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13756,7 +17760,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2513*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3208*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13765,7 +17773,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2515*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3211*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13774,7 +17782,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2517*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3213*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13783,7 +17791,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2519*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3215*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13796,7 +17808,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2522*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3219*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13809,7 +17825,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2525*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3223*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13822,7 +17838,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2528*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3226*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13835,7 +17851,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2531*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3229*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13844,7 +17864,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_TCP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2533*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3232*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13853,7 +17877,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_I_UDP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2535*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3235*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13862,7 +17886,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_TCP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2537*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3237*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13871,7 +17895,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2539*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3239*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13884,7 +17912,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2542*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3243*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13897,7 +17929,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2545*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3247*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13910,7 +17942,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2548*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3250*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13923,7 +17955,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2551*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3253*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13936,7 +17972,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2554*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3257*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13949,7 +17989,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2557*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3261*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13962,7 +18002,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2560*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3264*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13975,7 +18015,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2563*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3267*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -13988,7 +18032,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2566*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3271*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14001,7 +18049,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2569*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3275*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14014,7 +18062,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2572*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3278*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14027,7 +18075,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2575*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3281*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14040,7 +18092,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2578*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3285*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14053,7 +18109,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2581*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3289*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14066,7 +18122,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2584*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3292*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14079,12 +18135,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2587*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3295*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2588*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3297*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14097,7 +18161,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2591*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3301*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14110,7 +18178,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2594*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3305*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14123,7 +18191,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2597*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3308*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14136,12 +18204,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2600*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3311*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2601*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3313*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14154,7 +18230,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2604*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3317*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14167,7 +18247,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2607*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3321*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14180,7 +18260,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2610*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3324*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14193,12 +18273,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2613*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3327*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2614*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3329*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14211,7 +18299,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2617*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3333*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14224,7 +18316,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2620*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3337*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14237,7 +18329,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2623*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3340*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14250,12 +18342,25 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_WC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, wm_key_recipe.0:2626*/ + /* field_cond: class_tid: 2, wm_key_recipe.0:3343*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, - /* cond_execute: class_tid: 2, em_flow_conflict_cache.rd:2627*/ + /* field_cond: class_tid: 2, proto_header_cache.wr:3345*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 2, em_flow_conflict_cache.rd:3347*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET, .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH @@ -14264,32 +18369,61 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW }, - /* cond_execute: class_tid: 2, control.em_flow_conflict_cache_miss:2629*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* field_cond: class_tid: 2, em_flow_conflict_cache.rd:3350*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 2, control.em_flow_conflict_cache_miss:3352*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2630*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3353*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2631*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3355*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2632*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3357*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2633*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3359*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2634*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3360*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14306,7 +18440,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2638*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3365*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14319,7 +18457,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2641*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3369*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14336,7 +18478,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2645*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3374*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14353,7 +18499,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2649*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3379*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14370,12 +18520,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2653*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3384*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -14387,7 +18541,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2657*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3389*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14400,7 +18558,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2660*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3393*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14413,7 +18575,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2663*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3397*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14426,7 +18592,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2666*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3401*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14439,7 +18609,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2669*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3405*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14452,7 +18626,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2672*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3409*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14465,7 +18643,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2675*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3413*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14478,7 +18660,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2678*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3417*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14491,7 +18677,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2681*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3421*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14504,7 +18694,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2684*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3425*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14517,7 +18711,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2687*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3429*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14530,7 +18728,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2690*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3433*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14543,7 +18745,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2693*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3437*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14556,7 +18762,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2696*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3441*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14569,7 +18779,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2699*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3445*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14582,7 +18796,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2702*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3449*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14595,7 +18813,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2705*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3453*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14608,7 +18830,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2708*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3457*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14621,12 +18847,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2711*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3461*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -14634,7 +18868,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2714*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3466*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14647,7 +18885,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2717*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3470*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -14656,7 +18898,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2719*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3473*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -14665,7 +18911,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2721*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3476*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14682,7 +18932,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2725*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3481*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14699,7 +18949,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2729*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3485*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14712,7 +18966,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2732*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3489*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14725,7 +18979,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2735*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3492*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14742,7 +19000,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2739*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3497*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14759,7 +19017,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2743*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3501*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14776,7 +19038,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2747*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3506*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14793,7 +19059,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2751*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3511*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14810,7 +19076,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2755*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3515*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14827,12 +19093,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2759*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3519*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -14844,7 +19114,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2763*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3524*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -14861,7 +19131,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2767*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3528*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14874,7 +19148,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2770*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3532*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14887,7 +19161,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2773*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3535*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14900,7 +19178,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2776*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3539*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14913,7 +19191,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2779*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3542*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14926,7 +19208,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2782*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3546*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14939,7 +19221,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2785*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3549*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14952,7 +19238,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2788*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3553*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14965,7 +19255,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2791*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3557*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14978,7 +19268,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2794*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3560*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -14991,7 +19281,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2797*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3563*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15004,7 +19298,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2800*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3567*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15017,7 +19311,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2803*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3570*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15030,7 +19328,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2806*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3574*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15043,7 +19341,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2809*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3577*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15056,7 +19358,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2812*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3581*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15069,7 +19371,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2815*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3584*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15082,7 +19388,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2818*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3588*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15095,7 +19405,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2821*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3592*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15108,7 +19418,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2824*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3595*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15121,7 +19431,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2827*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3598*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15134,7 +19448,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2830*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3602*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15147,7 +19465,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2833*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3606*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15160,7 +19478,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2836*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3609*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15173,7 +19491,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2839*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3612*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15186,7 +19508,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2842*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3616*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15199,7 +19525,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2845*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3620*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15212,7 +19538,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2848*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3623*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15225,7 +19551,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2851*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3626*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15238,7 +19568,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2854*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3630*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15251,7 +19585,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2857*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3634*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15264,7 +19598,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2860*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3637*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15277,7 +19611,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2863*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3640*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15290,7 +19628,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2866*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3644*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15303,7 +19645,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2869*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3648*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15316,7 +19658,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2872*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3651*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15329,7 +19671,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2875*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3654*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15342,7 +19688,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2878*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3658*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15355,7 +19705,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2881*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3662*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15368,7 +19718,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, fkb_select.em_gen_template:2884*/ + /* field_cond: class_tid: 2, fkb_select.em_gen_template:3665*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15381,37 +19731,57 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:2887*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3668*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2888*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3670*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_CNTXT_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2889*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3672*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, em_key_recipe.0:2890*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3674*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_METADATA + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP }, - /* field_cond: class_tid: 2, em_key_recipe.0:2891*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3676*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 2, em_key_recipe.0:2892*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3677*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_RECYCLE_CNT }, - /* field_cond: class_tid: 2, em_key_recipe.0:2893*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3678*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15428,7 +19798,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:2897*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3683*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15445,7 +19819,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:2901*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3688*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15458,7 +19836,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:2904*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3692*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15471,7 +19853,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:2907*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3696*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15488,7 +19874,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2911*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3701*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15505,7 +19895,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2915*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3706*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15522,7 +19916,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2919*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3711*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15539,7 +19937,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2923*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3716*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15556,7 +19958,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2927*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3721*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15573,12 +19979,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2931*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3726*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -15590,12 +20000,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, em_key_recipe.0:2935*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3731*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -15607,7 +20021,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, em_key_recipe.0:2939*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3736*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15620,7 +20038,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2942*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3740*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15633,7 +20055,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2945*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3744*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15646,7 +20072,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2948*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3748*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15659,7 +20089,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2951*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3752*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15672,7 +20106,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2954*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3756*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15685,7 +20123,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2957*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3760*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15698,7 +20140,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2960*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3764*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15711,7 +20157,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:2963*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3768*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15724,7 +20174,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:2966*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3772*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15737,7 +20191,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:2969*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3776*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15750,7 +20208,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:2972*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3780*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15763,7 +20225,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:2975*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3784*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15776,7 +20242,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2978*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3788*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15789,7 +20259,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2981*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3792*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15802,7 +20276,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2984*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3796*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15815,7 +20293,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:2987*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3800*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15828,7 +20310,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:2990*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3804*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15841,7 +20327,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:2993*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3808*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15854,7 +20344,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:2996*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3812*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15867,7 +20361,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:2999*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3816*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15880,7 +20378,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3002*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3820*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15893,7 +20395,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3005*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3824*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15906,7 +20412,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3008*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3828*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15919,12 +20429,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3011*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3832*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -15932,7 +20450,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3014*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3837*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15945,12 +20467,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3017*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3841*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_O_UDP }, @@ -15958,7 +20488,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3020*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3846*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -15971,25 +20505,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3023*/ - { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI - }, - /* field_cond: class_tid: 2, em_key_recipe.0:3025*/ - { - .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE - }, + /* field_cond: class_tid: 2, em_key_recipe.0:3850*/ { - .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP }, - /* field_cond: class_tid: 2, em_key_recipe.0:3027*/ { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN @@ -15998,7 +20518,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 2, em_key_recipe.0:3029*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3853*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE @@ -16007,41 +20531,37 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, - /* field_cond: class_tid: 2, em_key_recipe.0:3031*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3856*/ { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, - .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN }, { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC - }, - { - .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC + .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI }, - /* field_cond: class_tid: 2, em_key_recipe.0:3035*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3859*/ { - .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, - .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP }, { .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, - .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN_GPE }, { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + .cond_operand = BNXT_ULP_GLB_HF_ID_T_VXLAN_GPE_VNI }, + /* field_cond: class_tid: 2, em_key_recipe.0:3862*/ { - .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, - .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP }, - /* field_cond: class_tid: 2, em_key_recipe.0:3039*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16058,7 +20578,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:3043*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3867*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16075,7 +20595,49 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:3047*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3871*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_I_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC + }, + /* field_cond: class_tid: 2, em_key_recipe.0:3876*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, + .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET, + .cond_operand = BNXT_ULP_HDR_BIT_O_ETH + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_EXCLUDE_FIELD_BIT_NOT_SET, + .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC + }, + /* field_cond: class_tid: 2, em_key_recipe.0:3880*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16088,7 +20650,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:3050*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3884*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16101,7 +20663,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:3053*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3887*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16114,7 +20680,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_SMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:3056*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3891*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16127,7 +20693,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC }, - /* field_cond: class_tid: 2, em_key_recipe.0:3059*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3894*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16144,7 +20714,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3063*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3899*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16161,7 +20731,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3067*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3903*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16178,7 +20752,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3071*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3908*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16195,7 +20769,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3075*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3912*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16212,7 +20790,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3079*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3917*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16229,7 +20811,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3083*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3922*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16246,7 +20828,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3087*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3926*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16263,7 +20845,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3091*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3930*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16280,7 +20866,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_II_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3095*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3935*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16297,7 +20887,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_IO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3099*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3940*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16314,7 +20904,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OI_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3103*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3944*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16331,12 +20921,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_OO_VLAN_VID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3107*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3948*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -16348,7 +20942,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 2, em_key_recipe.0:3111*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3953*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -16365,12 +20959,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, em_key_recipe.0:3115*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3957*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY }, { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL }, @@ -16382,7 +20980,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_TYPE }, - /* field_cond: class_tid: 2, em_key_recipe.0:3119*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3962*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_L2_ONLY @@ -16399,7 +20997,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_TYPE }, - /* field_cond: class_tid: 2, em_key_recipe.0:3123*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3966*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16412,7 +21014,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3126*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3970*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16425,7 +21027,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3129*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3973*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16438,7 +21044,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3132*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3977*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16451,7 +21057,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3135*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3980*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16464,7 +21074,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3138*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3984*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16477,7 +21087,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3141*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3987*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16490,7 +21104,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3144*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3991*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16503,7 +21117,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3147*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3994*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16516,7 +21134,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3150*/ + /* field_cond: class_tid: 2, em_key_recipe.0:3998*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16529,7 +21147,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3153*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4001*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16542,7 +21164,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3156*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4005*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16555,7 +21177,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3159*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4008*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16568,7 +21194,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3162*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4012*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16581,7 +21207,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3165*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4015*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16594,7 +21224,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3168*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4019*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16607,7 +21237,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR }, - /* field_cond: class_tid: 2, em_key_recipe.0:3171*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4022*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16620,7 +21254,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3174*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4026*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16633,7 +21271,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3177*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4030*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16646,7 +21284,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3180*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4033*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16659,7 +21297,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3183*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4036*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16672,7 +21314,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3186*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4040*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16685,7 +21331,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3189*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4044*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16698,7 +21344,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3192*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4047*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16711,7 +21357,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_TTL }, - /* field_cond: class_tid: 2, em_key_recipe.0:3195*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4050*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16724,7 +21374,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3198*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4054*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16737,7 +21391,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3201*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4058*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16750,7 +21404,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3204*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4061*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16763,7 +21417,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3207*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4064*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16776,7 +21434,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3210*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4068*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16789,7 +21451,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3213*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4072*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16802,7 +21464,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3216*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4075*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16815,7 +21477,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID }, - /* field_cond: class_tid: 2, em_key_recipe.0:3219*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4078*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16828,7 +21494,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3222*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4082*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16841,7 +21511,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3225*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4086*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16854,7 +21524,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3228*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4089*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16867,7 +21537,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3231*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4092*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16880,7 +21554,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV6_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3234*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4096*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16893,7 +21571,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_IPV4_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3237*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4100*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16906,7 +21584,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV6_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3240*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4103*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16919,7 +21597,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_IPV4_QOS }, - /* field_cond: class_tid: 2, em_key_recipe.0:3243*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4106*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16932,7 +21614,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3246*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4110*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16945,7 +21631,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3249*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4114*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16958,7 +21644,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3252*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4117*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16971,7 +21657,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3255*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4120*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16984,7 +21674,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3258*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4124*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -16997,7 +21691,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3261*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4128*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17010,7 +21704,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3264*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4131*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17023,7 +21717,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3267*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4134*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17036,7 +21734,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3270*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4138*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17049,7 +21751,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3273*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4142*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17062,7 +21764,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3276*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4145*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17075,7 +21777,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3279*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4148*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17088,7 +21794,11 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3282*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4152*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17101,7 +21811,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_I_TCP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3285*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4156*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17114,7 +21824,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT }, - /* field_cond: class_tid: 2, em_key_recipe.0:3288*/ + /* field_cond: class_tid: 2, em_key_recipe.0:4159*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET, .cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL @@ -17127,7 +21837,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET, .cond_operand = BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT }, - /* cond_execute: class_tid: 2, control.field_sig_validation:3291*/ + /* field_cond: class_tid: 2, em_flow_conflict_cache.wr:4162*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_GROUP_ID + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP + }, + /* cond_execute: class_tid: 2, control.field_sig_validation:4164*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, .cond_operand = BNXT_ULP_RF_IDX_CC @@ -17136,7 +21855,16 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_FLOW_SIG_ID }, - /* cond_execute: class_tid: 2, em_normal.egress_generic_template:3293*/ + /* cond_execute: class_tid: 2, control.outer_loop_add_check:4166*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_ADD + }, + /* cond_execute: class_tid: 2, control.em_wc_check:4168*/ { .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET, .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH @@ -17145,37 +21873,66 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_class_cond_list[] = { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW }, - /* cond_execute: class_tid: 2, control.em_add_check:3295*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET, + .cond_operand = BNXT_ULP_CF_BIT_DEF_PRIO + }, + /* cond_execute: class_tid: 2, em_normal.egress_generic_template:4171*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 2, em_recycle.egress_generic_template_recycle:4172*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 2, control.em_add_check:4173*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL }, - /* cond_execute: class_tid: 3, control.ts_ing_rd_check:3296*/ + /* cond_execute: class_tid: 2, wm_normal.egress_generic_template:4174*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 2, wm_recycle.egress_generic_template_recycle:4175*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 2, control.outer_loop_check:4176*/ + { + .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, + .cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP + }, + /* cond_execute: class_tid: 3, control.ts_ing_rd_check:4177*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 3, control.ing_rd_check:3297*/ + /* cond_execute: class_tid: 3, control.ing_rd_check:4178*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 3, control.non_vfr_egr_rd_check:3298*/ + /* cond_execute: class_tid: 3, control.non_vfr_egr_rd_check:4179*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 3, control.tsid_vfr_rd_check:3299*/ + /* cond_execute: class_tid: 3, control.tsid_vfr_rd_check:4180*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 4, control.tsid_vfr_egr_check:3300*/ + /* cond_execute: class_tid: 4, control.tsid_vfr_egr_check:4181*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS }, - /* cond_execute: class_tid: 4, control.endpoint_def_egr_rd_check:3301*/ + /* cond_execute: class_tid: 4, control.endpoint_def_egr_rd_check:4182*/ { .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET, .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS @@ -17204,6 +21961,61 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff} } }, + /* class_tid: 1, , table: tunnel_gparse_cache.custom_tunnel_rd */ + { + .field_info_mask = { + .description = "tunnel_type", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tunnel_type", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (10 >> 8) & 0xff, + 10 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_DPORT_TUN_TYPE_VXLAN}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT + } + }, + /* class_tid: 1, , table: tunnel_gparse_cache.custom_tunnel_wr */ + { + .field_info_mask = { + .description = "tunnel_type", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tunnel_type", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (22 >> 8) & 0xff, + 22 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_DPORT_TUN_TYPE_VXLAN}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (1 >> 8) & 0xff, + 1 & 0xff} + } + }, /* class_tid: 1, , table: l2_cntxt_tcam_cache.def_rd */ { .field_info_mask = { @@ -17305,7 +22117,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { BNXT_ULP_CF_IDX_TUNNEL_ID & 0xff} } }, - /* class_tid: 1, , table: mac_addr_cache.l2_table_rd */ + /* class_tid: 1, , table: multi_flow_tunnel_cache.rd */ { .field_info_mask = { .description = "svif", @@ -17328,7 +22140,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { }, { .field_info_mask = { - .description = "tun_hdr", + .description = "tunnel_type", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -17336,43 +22148,62 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "tun_hdr", + .description = "tunnel_type", .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - } - }, - { - .field_info_mask = { - .description = "one_tag", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - }, - .field_info_spec = { - .description = "one_tag", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3, + .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT, + .field_opr1 = { + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff, + (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_DPORT_TUN_TYPE_VXLAN}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "vid", - .field_bit_size = 12, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (40 >> 8) & 0xff, + 40 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "vid", - .field_bit_size = 12, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (42 >> 8) & 0xff, + 42 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "mac_addr", + .description = "tunnel_dmac", .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -17385,7 +22216,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "mac_addr", + .description = "tunnel_dmac", .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_RF, @@ -17396,156 +22227,603 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { }, { .field_info_mask = { - .description = "etype", - .field_bit_size = 16, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - 0xff, - 0xff} + (44 >> 8) & 0xff, + 44 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "etype", - .field_bit_size = 16, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (46 >> 8) & 0xff, + 46 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "recycle_cnt", - .field_bit_size = 2, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .description = "tunnel_sip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - 0xff} + (48 >> 8) & 0xff, + 48 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "recycle_cnt", - .field_bit_size = 2, + .description = "tunnel_sip_v6", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (9 >> 8) & 0xff, - 9 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (50 >> 8) & 0xff, + 50 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "metadata", + .description = "tunnel_dip_v4", .field_bit_size = 32, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - 0xff, - 0xff, - 0xff, - 0xff} + (52 >> 8) & 0xff, + 52 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "metadata", + .description = "tunnel_dip_v4", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (10 >> 8) & 0xff, - 10 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (54 >> 8) & 0xff, + 54 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "tbl_scope", - .field_bit_size = 5, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_sip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (56 >> 8) & 0xff, + 56 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "tbl_scope", - .field_bit_size = 5, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_sip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (58 >> 8) & 0xff, + 58 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, - /* class_tid: 1, , table: l2_cntxt_tcam.l2_table_create */ { .field_info_mask = { - .description = "etype", + .description = "tunnel_sport", .field_bit_size = 16, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (60 >> 8) & 0xff, + 60 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "etype", + .description = "tunnel_sport", .field_bit_size = 16, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (62 >> 8) & 0xff, + 62 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, + /* class_tid: 1, , table: multi_flow_tunnel_cache.wr */ { .field_info_mask = { - .description = "l2_ivlan_tpid_sel", - .field_bit_size = 3, + .description = "svif", + .field_bit_size = 11, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} }, .field_info_spec = { - .description = "l2_ivlan_tpid_sel", - .field_bit_size = 3, + .description = "svif", + .field_bit_size = 11, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} } }, { .field_info_mask = { - .description = "l2_ivlan_vid", - .field_bit_size = 12, + .description = "tunnel_type", + .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} }, .field_info_spec = { - .description = "l2_ivlan_vid", - .field_bit_size = 12, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3, + .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT, + .field_opr1 = { + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff, + (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_DPORT_TUN_TYPE_VXLAN}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l2_ovlan_tpid_sel", - .field_bit_size = 3, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (65 >> 8) & 0xff, + 65 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l2_ovlan_tpid_sel", - .field_bit_size = 3, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (67 >> 8) & 0xff, + 67 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l2_ovlan_vid", - .field_bit_size = 12, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_dmac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (69 >> 8) & 0xff, + 69 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l2_ovlan_vid", - .field_bit_size = 12, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .description = "tunnel_dmac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (71 >> 8) & 0xff, + 71 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "two_vtags", + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (73 >> 8) & 0xff, + 73 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (75 >> 8) & 0xff, + 75 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_sip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (77 >> 8) & 0xff, + 77 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_sip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (79 >> 8) & 0xff, + 79 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_dip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (81 >> 8) & 0xff, + 81 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_dip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (83 >> 8) & 0xff, + 83 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_sip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (85 >> 8) & 0xff, + 85 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_sip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (87 >> 8) & 0xff, + 87 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_sport", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (89 >> 8) & 0xff, + 89 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_sport", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (91 >> 8) & 0xff, + 91 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + /* class_tid: 1, , table: flow_chain_cache.group_check */ + { + .field_info_mask = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_GROUP_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_GROUP_ID & 0xff} + } + }, + /* class_tid: 1, , table: flow_chain_cache.write */ + { + .field_info_mask = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "group_id", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_GROUP_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_GROUP_ID & 0xff} + } + }, + /* class_tid: 1, , table: flow_chain_l2_cntxt.chaining_check */ + { + .field_info_mask = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + }, + .field_info_spec = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + } + }, + /* class_tid: 1, , table: l2_cntxt_tcam.chain_entry */ + { + .field_info_mask = { + .description = "etype", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "etype", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l2_ivlan_tpid_sel", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l2_ivlan_tpid_sel", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l2_ivlan_vid", + .field_bit_size = 12, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l2_ivlan_vid", + .field_bit_size = 12, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l2_ovlan_tpid_sel", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l2_ovlan_tpid_sel", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l2_ovlan_vid", + .field_bit_size = 12, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l2_ovlan_vid", + .field_bit_size = 12, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "two_vtags", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO @@ -17590,23 +22868,13 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "addr0", .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { .description = "addr0", .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_RF, - .field_opr1 = { - (BNXT_ULP_RF_IDX_O_DMAC >> 8) & 0xff, - BNXT_ULP_RF_IDX_O_DMAC & 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { @@ -17642,13 +22910,17 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "out_tun_hdr_type", .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr1 = { + ULP_THOR2_SYM_TUN_HDR_TYPE_NONE} }, .field_info_spec = { .description = "out_tun_hdr_type", .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr1 = { + ULP_THOR2_SYM_TUN_HDR_TYPE_NONE} } }, { @@ -17699,27 +22971,24 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_info_mask = { .description = "metadata", .field_bit_size = 32, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (14 >> 8) & 0xff, - 14 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 24) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 16) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 8) & 0xff, + ULP_THOR2_SYM_CHAIN_META_VAL_MASK & 0xff} }, .field_info_spec = { .description = "metadata", .field_bit_size = 32, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (15 >> 8) & 0xff, - 15 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src3 = BNXT_ULP_FIELD_SRC_CONST + (ULP_THOR2_SYM_CHAIN_META_VAL >> 24) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL >> 16) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL >> 8) & 0xff, + ULP_THOR2_SYM_CHAIN_META_VAL & 0xff} } }, { @@ -17775,9 +23044,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "loopback", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { .description = "loopback", @@ -17793,8 +23060,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (16 >> 8) & 0xff, - 16 & 0xff, + (98 >> 8) & 0xff, + 98 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -17806,8 +23073,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (17 >> 8) & 0xff, - 17 & 0xff, + (99 >> 8) & 0xff, + 99 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_CONST @@ -17818,9 +23085,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "mpass_cnt", .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr1 = { - 3} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { .description = "mpass_cnt", @@ -17861,7 +23126,28 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 1} } }, - /* class_tid: 1, , table: mac_addr_cache.l2_table_wr */ + /* class_tid: 1, , table: flow_chain_l2_cntxt.write */ + { + .field_info_mask = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + }, + .field_info_spec = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + } + }, + /* class_tid: 1, , table: mac_addr_cache.l2_table_rd */ { .field_info_mask = { .description = "svif", @@ -17982,8 +23268,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (18 >> 8) & 0xff, - 18 & 0xff, + (102 >> 8) & 0xff, + 102 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO @@ -18005,12 +23291,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "metadata", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (19 >> 8) & 0xff, - 19 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (103 >> 8) & 0xff, + 103 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + (ULP_THOR2_SYM_CHAIN_META_VAL >> 24) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL >> 16) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL >> 8) & 0xff, + ULP_THOR2_SYM_CHAIN_META_VAL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, @@ -18028,188 +23320,123 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, - /* class_tid: 1, , table: proto_header_cache.rd */ + /* class_tid: 1, , table: l2_cntxt_tcam.l2_table_create */ { .field_info_mask = { - .description = "group_metadata", - .field_bit_size = 4, + .description = "etype", + .field_bit_size = 16, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "group_metadata", - .field_bit_size = 4, + .description = "etype", + .field_bit_size = 16, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "prof_func_id", - .field_bit_size = 8, + .description = "l2_ivlan_tpid_sel", + .field_bit_size = 3, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "prof_func_id", - .field_bit_size = 8, + .description = "l2_ivlan_tpid_sel", + .field_bit_size = 3, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_RF, - .field_opr1 = { - (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "l2_ivlan_vid", + .field_bit_size = 12, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "l2_ivlan_vid", + .field_bit_size = 12, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_CF, - .field_opr1 = { - (BNXT_ULP_CF_IDX_PROFILE_BITMAP >> 8) & 0xff, - BNXT_ULP_CF_IDX_PROFILE_BITMAP & 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, - /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ { .field_info_mask = { - .description = "group_metadata", - .field_bit_size = 4, + .description = "l2_ovlan_tpid_sel", + .field_bit_size = 3, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "group_metadata", - .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (43 >> 8) & 0xff, - 43 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_CHAIN_META_TYPE}, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + .description = "l2_ovlan_tpid_sel", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "prof_func_id", - .field_bit_size = 8, + .description = "l2_ovlan_vid", + .field_bit_size = 12, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "prof_func_id", - .field_bit_size = 8, + .description = "l2_ovlan_vid", + .field_bit_size = 12, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_RF, - .field_opr1 = { - (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, - /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ { .field_info_mask = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "two_vtags", + .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff, - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "two_vtags", + .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_CF, - .field_opr1 = { - (BNXT_ULP_CF_IDX_HDR_BITMAP >> 8) & 0xff, - BNXT_ULP_CF_IDX_HDR_BITMAP & 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, - /* class_tid: 1, , table: hdr_overlap_cache.overlap_wr */ { .field_info_mask = { - .description = "group_metadata", - .field_bit_size = 4, + .description = "vtag_present", + .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "group_metadata", - .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (321 >> 8) & 0xff, - 321 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_CHAIN_META_TYPE}, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + .description = "vtag_present", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "prof_func_id", - .field_bit_size = 8, + .description = "addr1", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "prof_func_id", - .field_bit_size = 8, + .description = "addr1", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_RF, - .field_opr1 = { - (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, - /* class_tid: 1, , table: hdr_overlap_cache.overlap_wr */ { .field_info_mask = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "addr0", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { @@ -18218,226 +23445,182 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 0xff, 0xff, 0xff, - 0xff, - 0xff, 0xff} }, .field_info_spec = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "addr0", + .field_bit_size = 48, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, .field_opr1 = { - (BNXT_ULP_CF_IDX_HDR_BITMAP >> 8) & 0xff, - BNXT_ULP_CF_IDX_HDR_BITMAP & 0xff} + (BNXT_ULP_RF_IDX_O_DMAC >> 8) & 0xff, + BNXT_ULP_RF_IDX_O_DMAC & 0xff} } }, - /* class_tid: 1, , table: profile_tcam.gen_template */ { .field_info_mask = { - .description = "l4_hdr_dcn_present", - .field_bit_size = 2, + .description = "tunnel_id", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4_hdr_dcn_present", - .field_bit_size = 2, + .description = "tunnel_id", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4_hdr_flags", - .field_bit_size = 9, + .description = "tun_hdr_type", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4_hdr_flags", - .field_bit_size = 9, + .description = "tun_hdr_type", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4_hdr_subtype", - .field_bit_size = 3, + .description = "out_tun_hdr_type", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4_hdr_subtype", - .field_bit_size = 3, + .description = "out_tun_hdr_type", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4_hdr_is_udp_tcp", + .description = "llc", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (339 >> 8) & 0xff, - 339 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (56 >> 8) & 0xff, - 56 & 0xff} + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4_hdr_is_udp_tcp", + .description = "llc", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (347 >> 8) & 0xff, - 347 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_L4_HDR_IS_UDP_TCP_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (59 >> 8) & 0xff, - 59 & 0xff} + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4_hdr_type", - .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "roce", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (355 >> 8) & 0xff, - 355 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (62 >> 8) & 0xff, - 62 & 0xff} + 1} }, .field_info_spec = { - .description = "l4_hdr_type", - .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (363 >> 8) & 0xff, - 363 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (65 >> 8) & 0xff, - 65 & 0xff} + .description = "roce", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4_hdr_error", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (371 >> 8) & 0xff, - 371 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (68 >> 8) & 0xff, - 68 & 0xff} + .description = "l2ip_func", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4_hdr_error", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "l2ip_func", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "metadata", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (379 >> 8) & 0xff, - 379 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (71 >> 8) & 0xff, - 71 & 0xff} + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 24) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 16) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 8) & 0xff, + ULP_THOR2_SYM_CHAIN_META_VAL_MASK & 0xff} + }, + .field_info_spec = { + .description = "metadata", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4_hdr_valid", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, .field_opr1 = { - (387 >> 8) & 0xff, - 387 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (74 >> 8) & 0xff, - 74 & 0xff} + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} }, .field_info_spec = { - .description = "l4_hdr_valid", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, .field_opr1 = { - (395 >> 8) & 0xff, - 395 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_L4_HDR_VALID_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (77 >> 8) & 0xff, - 77 & 0xff} + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} } }, { .field_info_mask = { - .description = "l3_protocol", - .field_bit_size = 8, + .description = "parif", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l3_protocol", - .field_bit_size = 8, + .description = "parif", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l3_hdr_isIP", - .field_bit_size = 1, + .description = "spif", + .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l3_hdr_isIP", + .description = "spif", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "loopback", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "loopback", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO @@ -18445,626 +23628,809 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { }, { .field_info_mask = { - .description = "l3_hdr_type", + .description = "recycle_cnt", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (403 >> 8) & 0xff, - 403 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (108 >> 8) & 0xff, + 108 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (80 >> 8) & 0xff, - 80 & 0xff} + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l3_hdr_type", + .description = "recycle_cnt", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (411 >> 8) & 0xff, - 411 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_L3_HDR_TYPE_IPV6}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (83 >> 8) & 0xff, - 83 & 0xff} + (109 >> 8) & 0xff, + 109 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_CONST } }, { .field_info_mask = { - .description = "l3_hdr_error", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "mpass_cnt", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (419 >> 8) & 0xff, - 419 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (86 >> 8) & 0xff, - 86 & 0xff} + 3} }, .field_info_spec = { - .description = "l3_hdr_error", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (427 >> 8) & 0xff, - 427 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (89 >> 8) & 0xff, - 89 & 0xff} + .description = "mpass_cnt", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l3_hdr_valid", + .description = "spare", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "spare", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "valid", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (435 >> 8) & 0xff, - 435 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (92 >> 8) & 0xff, - 92 & 0xff} + 1} }, .field_info_spec = { - .description = "l3_hdr_valid", + .description = "valid", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, .field_opr1 = { - (443 >> 8) & 0xff, - 443 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_L3_HDR_VALID_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (95 >> 8) & 0xff, - 95 & 0xff} + 1} } }, + /* class_tid: 1, , table: mac_addr_cache.l2_table_wr */ { .field_info_mask = { - .description = "l2_two_vtags", - .field_bit_size = 1, + .description = "svif", + .field_bit_size = 11, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, .field_opr1 = { - 0xff} + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} }, .field_info_spec = { - .description = "l2_two_vtags", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, .field_opr1 = { - (451 >> 8) & 0xff, - 451 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_L2_TWO_VTAGS_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (98 >> 8) & 0xff, - 98 & 0xff} + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} } }, { .field_info_mask = { - .description = "l2_vtag_present", - .field_bit_size = 1, + .description = "tun_hdr", + .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { 0xff} }, .field_info_spec = { - .description = "l2_vtag_present", + .description = "tun_hdr", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "one_tag", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, - .field_opr1 = { - (457 >> 8) & 0xff, - 457 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CONST, - .field_opr2 = { - ULP_THOR2_SYM_L2_VTAG_PRESENT_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (99 >> 8) & 0xff, - 99 & 0xff} + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "one_tag", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l2_uc_mc_bc", - .field_bit_size = 2, + .description = "vid", + .field_bit_size = 12, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l2_uc_mc_bc", - .field_bit_size = 2, + .description = "vid", + .field_bit_size = 12, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l2_hdr_type", - .field_bit_size = 2, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "mac_addr", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { - (463 >> 8) & 0xff, - 463 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff} }, .field_info_spec = { - .description = "l2_hdr_type", - .field_bit_size = 2, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "mac_addr", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, .field_opr1 = { - (464 >> 8) & 0xff, - 464 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + (BNXT_ULP_RF_IDX_O_DMAC >> 8) & 0xff, + BNXT_ULP_RF_IDX_O_DMAC & 0xff} } }, { .field_info_mask = { - .description = "l2_hdr_error", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "etype", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { - (465 >> 8) & 0xff, - 465 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (100 >> 8) & 0xff, - 100 & 0xff} + 0xff, + 0xff} }, .field_info_spec = { - .description = "l2_hdr_error", - .field_bit_size = 1, + .description = "etype", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "recycle_cnt", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "recycle_cnt", + .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (469 >> 8) & 0xff, - 469 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (101 >> 8) & 0xff, - 101 & 0xff} + (110 >> 8) & 0xff, + 110 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l2_hdr_valid", - .field_bit_size = 1, + .description = "metadata", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { + 0xff, + 0xff, + 0xff, 0xff} }, .field_info_spec = { - .description = "l2_hdr_valid", - .field_bit_size = 1, + .description = "metadata", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (473 >> 8) & 0xff, - 473 & 0xff, + (111 >> 8) & 0xff, + 111 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_L2_HDR_VALID_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (102 >> 8) & 0xff, - 102 & 0xff} + (ULP_THOR2_SYM_CHAIN_META_VAL >> 24) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL >> 16) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL >> 8) & 0xff, + ULP_THOR2_SYM_CHAIN_META_VAL & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "tun_hdr_flags", - .field_bit_size = 8, + .description = "tbl_scope", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "tun_hdr_flags", - .field_bit_size = 8, + .description = "tbl_scope", + .field_bit_size = 5, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, + /* class_tid: 1, , table: proto_header_cache.rd */ { .field_info_mask = { - .description = "tun_hdr_type", - .field_bit_size = 5, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "group_metadata", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { - (477 >> 8) & 0xff, - 477 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (103 >> 8) & 0xff, - 103 & 0xff} + 0xff} }, .field_info_spec = { - .description = "tun_hdr_type", - .field_bit_size = 5, + .description = "group_metadata", + .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (489 >> 8) & 0xff, - 489 & 0xff, + (139 >> 8) & 0xff, + 139 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (108 >> 8) & 0xff, - 108 & 0xff} + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_CHAIN_META_TYPE}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "tun_hdr_err", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { - (501 >> 8) & 0xff, - 501 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + 0xff} }, .field_info_spec = { - .description = "tun_hdr_err", - .field_bit_size = 1, + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + } + }, + { + .field_info_mask = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_PROFILE_BITMAP >> 8) & 0xff, + BNXT_ULP_CF_IDX_PROFILE_BITMAP & 0xff} + } + }, + /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ + { + .field_info_mask = { + .description = "group_metadata", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "group_metadata", + .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (502 >> 8) & 0xff, - 502 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + (142 >> 8) & 0xff, + 142 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_CHAIN_META_TYPE}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "tun_hdr_valid", - .field_bit_size = 1, + .description = "prof_func_id", + .field_bit_size = 8, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { 0xff} }, .field_info_spec = { - .description = "tun_hdr_valid", - .field_bit_size = 1, + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + } + }, + /* class_tid: 1, , table: hdr_overlap_cache.overlap_check */ + { + .field_info_mask = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_HDR_BITMAP >> 8) & 0xff, + BNXT_ULP_CF_IDX_HDR_BITMAP & 0xff} + } + }, + /* class_tid: 1, , table: hdr_overlap_cache.overlap_wr */ + { + .field_info_mask = { + .description = "group_metadata", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "group_metadata", + .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (503 >> 8) & 0xff, - 503 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (483 >> 8) & 0xff, + 483 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TUN_HDR_VALID_YES}, + ULP_THOR2_SYM_CHAIN_META_TYPE}, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "tl4_hdr_is_udp_tcp", + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + } + }, + /* class_tid: 1, , table: hdr_overlap_cache.overlap_wr */ + { + .field_info_mask = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_HDR_BITMAP >> 8) & 0xff, + BNXT_ULP_CF_IDX_HDR_BITMAP & 0xff} + } + }, + /* class_tid: 1, , table: profile_tcam.gen_template */ + { + .field_info_mask = { + .description = "l4_hdr_dcn_present", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l4_hdr_dcn_present", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l4_hdr_flags", + .field_bit_size = 9, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l4_hdr_flags", + .field_bit_size = 9, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l4_hdr_subtype", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "l4_hdr_subtype", + .field_bit_size = 3, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "l4_hdr_is_udp_tcp", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (504 >> 8) & 0xff, - 504 & 0xff, + (502 >> 8) & 0xff, + 502 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (113 >> 8) & 0xff, - 113 & 0xff} + (62 >> 8) & 0xff, + 62 & 0xff} }, .field_info_spec = { - .description = "tl4_hdr_is_udp_tcp", + .description = "l4_hdr_is_udp_tcp", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (508 >> 8) & 0xff, - 508 & 0xff, + (510 >> 8) & 0xff, + 510 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL4_HDR_IS_UDP_TCP_YES}, + ULP_THOR2_SYM_L4_HDR_IS_UDP_TCP_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (114 >> 8) & 0xff, - 114 & 0xff} + (65 >> 8) & 0xff, + 65 & 0xff} } }, { .field_info_mask = { - .description = "tl4_hdr_type", + .description = "l4_hdr_type", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (512 >> 8) & 0xff, - 512 & 0xff, + (518 >> 8) & 0xff, + 518 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (115 >> 8) & 0xff, - 115 & 0xff} + (68 >> 8) & 0xff, + 68 & 0xff} }, .field_info_spec = { - .description = "tl4_hdr_type", + .description = "l4_hdr_type", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (516 >> 8) & 0xff, - 516 & 0xff, + (526 >> 8) & 0xff, + 526 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (116 >> 8) & 0xff, - 116 & 0xff} + (71 >> 8) & 0xff, + 71 & 0xff} } }, { .field_info_mask = { - .description = "tl4_hdr_error", + .description = "l4_hdr_error", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (520 >> 8) & 0xff, - 520 & 0xff, + (534 >> 8) & 0xff, + 534 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (117 >> 8) & 0xff, - 117 & 0xff} + (74 >> 8) & 0xff, + 74 & 0xff} }, .field_info_spec = { - .description = "tl4_hdr_error", + .description = "l4_hdr_error", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (524 >> 8) & 0xff, - 524 & 0xff, + (542 >> 8) & 0xff, + 542 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (118 >> 8) & 0xff, - 118 & 0xff} + (77 >> 8) & 0xff, + 77 & 0xff} } }, { .field_info_mask = { - .description = "tl4_hdr_valid", + .description = "l4_hdr_valid", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (528 >> 8) & 0xff, - 528 & 0xff, + (550 >> 8) & 0xff, + 550 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (119 >> 8) & 0xff, - 119 & 0xff} + (80 >> 8) & 0xff, + 80 & 0xff} }, .field_info_spec = { - .description = "tl4_hdr_valid", + .description = "l4_hdr_valid", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (533 >> 8) & 0xff, - 533 & 0xff, + (558 >> 8) & 0xff, + 558 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL4_HDR_VALID_YES}, + ULP_THOR2_SYM_L4_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (121 >> 8) & 0xff, - 121 & 0xff} + (83 >> 8) & 0xff, + 83 & 0xff} } }, { .field_info_mask = { - .description = "tl3_hdr_isIP", - .field_bit_size = 1, + .description = "l3_protocol", + .field_bit_size = 8, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "tl3_hdr_isIP", - .field_bit_size = 1, + .description = "l3_protocol", + .field_bit_size = 8, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "tl3_hdr_type", + .description = "l3_hdr_isIP", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (566 >> 8) & 0xff, + 566 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (86 >> 8) & 0xff, + 86 & 0xff} + }, + .field_info_spec = { + .description = "l3_hdr_isIP", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (574 >> 8) & 0xff, + 574 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_L3_HDR_ISIP_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (89 >> 8) & 0xff, + 89 & 0xff} + } + }, + { + .field_info_mask = { + .description = "l3_hdr_type", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (538 >> 8) & 0xff, - 538 & 0xff, + (582 >> 8) & 0xff, + 582 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (123 >> 8) & 0xff, - 123 & 0xff} + (92 >> 8) & 0xff, + 92 & 0xff} }, .field_info_spec = { - .description = "tl3_hdr_type", + .description = "l3_hdr_type", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (542 >> 8) & 0xff, - 542 & 0xff, + (590 >> 8) & 0xff, + 590 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL3_HDR_TYPE_IPV6}, + ULP_THOR2_SYM_L3_HDR_TYPE_IPV6}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (124 >> 8) & 0xff, - 124 & 0xff} + (95 >> 8) & 0xff, + 95 & 0xff} } }, { .field_info_mask = { - .description = "tl3_hdr_error", + .description = "l3_hdr_error", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (546 >> 8) & 0xff, - 546 & 0xff, + (598 >> 8) & 0xff, + 598 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (125 >> 8) & 0xff, - 125 & 0xff} + (98 >> 8) & 0xff, + 98 & 0xff} }, .field_info_spec = { - .description = "tl3_hdr_error", + .description = "l3_hdr_error", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (550 >> 8) & 0xff, - 550 & 0xff, + (606 >> 8) & 0xff, + 606 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (126 >> 8) & 0xff, - 126 & 0xff} + (101 >> 8) & 0xff, + 101 & 0xff} } }, { .field_info_mask = { - .description = "tl3_hdr_valid", + .description = "l3_hdr_valid", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - 0xff} + (614 >> 8) & 0xff, + 614 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (104 >> 8) & 0xff, + 104 & 0xff} }, .field_info_spec = { - .description = "tl3_hdr_valid", + .description = "l3_hdr_valid", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (554 >> 8) & 0xff, - 554 & 0xff, + (622 >> 8) & 0xff, + 622 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL3_HDR_VALID_YES}, + ULP_THOR2_SYM_L3_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (127 >> 8) & 0xff, - 127 & 0xff} + (107 >> 8) & 0xff, + 107 & 0xff} } }, { .field_info_mask = { - .description = "tl2_two_vtags", + .description = "l2_two_vtags", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -19072,24 +24438,27 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "tl2_two_vtags", + .description = "l2_two_vtags", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (558 >> 8) & 0xff, - 558 & 0xff, + (630 >> 8) & 0xff, + 630 & 0xff, (3 >> 8) & 0xff, 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL2_TWO_VTAGS_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + ULP_THOR2_SYM_L2_TWO_VTAGS_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (110 >> 8) & 0xff, + 110 & 0xff} } }, { .field_info_mask = { - .description = "tl2_vtag_present", + .description = "l2_vtag_present", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -19097,30 +24466,33 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "tl2_vtag_present", + .description = "l2_vtag_present", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (561 >> 8) & 0xff, - 561 & 0xff, + (636 >> 8) & 0xff, + 636 & 0xff, (3 >> 8) & 0xff, 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL2_VTAG_PRESENT_YES}, - .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + ULP_THOR2_SYM_L2_VTAG_PRESENT_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (111 >> 8) & 0xff, + 111 & 0xff} } }, { .field_info_mask = { - .description = "tl2_uc_mc_bc", + .description = "l2_uc_mc_bc", .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "tl2_uc_mc_bc", + .description = "l2_uc_mc_bc", .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO @@ -19128,26 +24500,26 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { }, { .field_info_mask = { - .description = "tl2_hdr_type", + .description = "l2_hdr_type", .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (564 >> 8) & 0xff, - 564 & 0xff, + (642 >> 8) & 0xff, + 642 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "tl2_hdr_type", + .description = "l2_hdr_type", .field_bit_size = 2, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (565 >> 8) & 0xff, - 565 & 0xff, + (643 >> 8) & 0xff, + 643 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -19156,7 +24528,41 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { }, { .field_info_mask = { - .description = "tl2_hdr_valid", + .description = "l2_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (644 >> 8) & 0xff, + 644 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (112 >> 8) & 0xff, + 112 & 0xff} + }, + .field_info_spec = { + .description = "l2_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (648 >> 8) & 0xff, + 648 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (113 >> 8) & 0xff, + 113 & 0xff} + } + }, + { + .field_info_mask = { + .description = "l2_hdr_valid", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, @@ -19164,33 +24570,33 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { 0xff} }, .field_info_spec = { - .description = "tl2_hdr_valid", + .description = "l2_hdr_valid", .field_bit_size = 1, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (566 >> 8) & 0xff, - 566 & 0xff, + (652 >> 8) & 0xff, + 652 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { - ULP_THOR2_SYM_TL2_HDR_VALID_YES}, + ULP_THOR2_SYM_L2_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (128 >> 8) & 0xff, - 128 & 0xff} + (114 >> 8) & 0xff, + 114 & 0xff} } }, { .field_info_mask = { - .description = "ot_hdr_flags", + .description = "tun_hdr_flags", .field_bit_size = 8, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "ot_hdr_flags", + .description = "tun_hdr_flags", .field_bit_size = 8, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ZERO @@ -19198,24 +24604,497 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { }, { .field_info_mask = { - .description = "ot_hdr_type", + .description = "tun_hdr_type", .field_bit_size = 5, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (656 >> 8) & 0xff, + 656 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (115 >> 8) & 0xff, + 115 & 0xff} }, .field_info_spec = { - .description = "ot_hdr_type", + .description = "tun_hdr_type", .field_bit_size = 5, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - } - }, - { - .field_info_mask = { - .description = "ot_hdr_error", - .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (672 >> 8) & 0xff, + 672 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (121 >> 8) & 0xff, + 121 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tun_hdr_err", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (688 >> 8) & 0xff, + 688 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tun_hdr_err", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (689 >> 8) & 0xff, + 689 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tun_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tun_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (690 >> 8) & 0xff, + 690 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TUN_HDR_VALID_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tl4_hdr_is_udp_tcp", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (691 >> 8) & 0xff, + 691 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (127 >> 8) & 0xff, + 127 & 0xff} + }, + .field_info_spec = { + .description = "tl4_hdr_is_udp_tcp", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (695 >> 8) & 0xff, + 695 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL4_HDR_IS_UDP_TCP_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (128 >> 8) & 0xff, + 128 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl4_hdr_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (699 >> 8) & 0xff, + 699 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (129 >> 8) & 0xff, + 129 & 0xff} + }, + .field_info_spec = { + .description = "tl4_hdr_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (703 >> 8) & 0xff, + 703 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (130 >> 8) & 0xff, + 130 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl4_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (707 >> 8) & 0xff, + 707 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (131 >> 8) & 0xff, + 131 & 0xff} + }, + .field_info_spec = { + .description = "tl4_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (711 >> 8) & 0xff, + 711 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (132 >> 8) & 0xff, + 132 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl4_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (715 >> 8) & 0xff, + 715 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (133 >> 8) & 0xff, + 133 & 0xff} + }, + .field_info_spec = { + .description = "tl4_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (720 >> 8) & 0xff, + 720 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL4_HDR_VALID_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (135 >> 8) & 0xff, + 135 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl3_hdr_isIP", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tl3_hdr_isIP", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tl3_hdr_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (725 >> 8) & 0xff, + 725 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (137 >> 8) & 0xff, + 137 & 0xff} + }, + .field_info_spec = { + .description = "tl3_hdr_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (729 >> 8) & 0xff, + 729 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL3_HDR_TYPE_IPV6}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (138 >> 8) & 0xff, + 138 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl3_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (733 >> 8) & 0xff, + 733 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (139 >> 8) & 0xff, + 139 & 0xff} + }, + .field_info_spec = { + .description = "tl3_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (737 >> 8) & 0xff, + 737 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (140 >> 8) & 0xff, + 140 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl3_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tl3_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (741 >> 8) & 0xff, + 741 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL3_HDR_VALID_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (141 >> 8) & 0xff, + 141 & 0xff} + } + }, + { + .field_info_mask = { + .description = "tl2_two_vtags", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tl2_two_vtags", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (745 >> 8) & 0xff, + 745 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL2_TWO_VTAGS_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tl2_vtag_present", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tl2_vtag_present", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (748 >> 8) & 0xff, + 748 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL2_VTAG_PRESENT_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tl2_uc_mc_bc", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tl2_uc_mc_bc", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tl2_hdr_type", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (751 >> 8) & 0xff, + 751 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tl2_hdr_type", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (752 >> 8) & 0xff, + 752 & 0xff, + (1 >> 8) & 0xff, + 1 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tl2_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tl2_hdr_valid", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (753 >> 8) & 0xff, + 753 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL2_HDR_VALID_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (142 >> 8) & 0xff, + 142 & 0xff} + } + }, + { + .field_info_mask = { + .description = "ot_hdr_flags", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "ot_hdr_flags", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "ot_hdr_type", + .field_bit_size = 5, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "ot_hdr_type", + .field_bit_size = 5, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "ot_hdr_error", + .field_bit_size = 1, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { .description = "ot_hdr_error", @@ -19528,13 +25407,28 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "metadata", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr1 = { + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 24) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 16) & 0xff, + (ULP_THOR2_SYM_CHAIN_META_VAL_MASK >> 8) & 0xff, + ULP_THOR2_SYM_CHAIN_META_VAL_MASK & 0xff} }, .field_info_spec = { .description = "metadata", .field_bit_size = 32, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, + .field_opr1 = { + (757 >> 8) & 0xff, + 757 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_RF, + .field_opr2 = { + (BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff, + BNXT_ULP_RF_IDX_JUMP_META & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_CONST } }, { @@ -19652,10 +25546,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (570 >> 8) & 0xff, - 570 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (759 >> 8) & 0xff, + 759 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -19665,10 +25559,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (571 >> 8) & 0xff, - 571 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (761 >> 8) & 0xff, + 761 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff, @@ -19681,12 +25575,12 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "meta", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (572 >> 8) & 0xff, - 572 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (763 >> 8) & 0xff, + 763 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -19694,16 +25588,16 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "meta", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (573 >> 8) & 0xff, - 573 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CF, + (765 >> 8) & 0xff, + 765 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_CF_IDX_VF_META_FID >> 8) & 0xff, - BNXT_ULP_CF_IDX_VF_META_FID & 0xff}, + (BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff, + BNXT_ULP_RF_IDX_JUMP_META & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -19714,8 +25608,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (574 >> 8) & 0xff, - 574 & 0xff, + (767 >> 8) & 0xff, + 767 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -19727,8 +25621,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (575 >> 8) & 0xff, - 575 & 0xff, + (768 >> 8) & 0xff, + 768 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -19745,10 +25639,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (576 >> 8) & 0xff, - 576 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (769 >> 8) & 0xff, + 769 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, @@ -19761,10 +25655,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (579 >> 8) & 0xff, - 579 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (773 >> 8) & 0xff, + 773 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, @@ -19779,10 +25673,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (582 >> 8) & 0xff, - 582 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (777 >> 8) & 0xff, + 777 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, @@ -19795,10 +25689,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (585 >> 8) & 0xff, - 585 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (781 >> 8) & 0xff, + 781 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, @@ -19813,10 +25707,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (588 >> 8) & 0xff, - 588 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (785 >> 8) & 0xff, + 785 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, @@ -19829,10 +25723,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (592 >> 8) & 0xff, - 592 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (790 >> 8) & 0xff, + 790 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, @@ -19847,18 +25741,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (596 >> 8) & 0xff, - 596 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (795 >> 8) & 0xff, + 795 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OI_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_OI_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (129 >> 8) & 0xff, - 129 & 0xff} + (143 >> 8) & 0xff, + 143 & 0xff} }, .field_info_spec = { .description = "tl2_ivv", @@ -19866,18 +25760,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (604 >> 8) & 0xff, - 604 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (805 >> 8) & 0xff, + 805 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OI_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_OI_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (130 >> 8) & 0xff, - 130 & 0xff} + (144 >> 8) & 0xff, + 144 & 0xff} } }, { @@ -19887,10 +25781,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (612 >> 8) & 0xff, - 612 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (815 >> 8) & 0xff, + 815 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_TYPE >> 8) & 0xff, @@ -19903,10 +25797,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (616 >> 8) & 0xff, - 616 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (820 >> 8) & 0xff, + 820 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_TYPE >> 8) & 0xff, @@ -19921,10 +25815,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (620 >> 8) & 0xff, - 620 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (825 >> 8) & 0xff, + 825 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, @@ -19937,10 +25831,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (623 >> 8) & 0xff, - 623 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (829 >> 8) & 0xff, + 829 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, @@ -19955,11 +25849,14 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (626 >> 8) & 0xff, - 626 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_SKIP, + (833 >> 8) & 0xff, + 833 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr2 = { + (145 >> 8) & 0xff, + 145 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -19968,11 +25865,14 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (629 >> 8) & 0xff, - 629 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_SKIP, + (838 >> 8) & 0xff, + 838 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr2 = { + (146 >> 8) & 0xff, + 146 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -19983,10 +25883,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (632 >> 8) & 0xff, - 632 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (843 >> 8) & 0xff, + 843 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, @@ -19999,10 +25899,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (635 >> 8) & 0xff, - 635 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (847 >> 8) & 0xff, + 847 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, @@ -20017,10 +25917,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (638 >> 8) & 0xff, - 638 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (851 >> 8) & 0xff, + 851 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, @@ -20033,10 +25933,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (641 >> 8) & 0xff, - 641 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (855 >> 8) & 0xff, + 855 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, @@ -20051,18 +25951,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (644 >> 8) & 0xff, - 644 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (859 >> 8) & 0xff, + 859 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (131 >> 8) & 0xff, - 131 & 0xff} + (147 >> 8) & 0xff, + 147 & 0xff} }, .field_info_spec = { .description = "tl3.ttl", @@ -20070,18 +25970,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (650 >> 8) & 0xff, - 650 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (867 >> 8) & 0xff, + 867 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (132 >> 8) & 0xff, - 132 & 0xff} + (148 >> 8) & 0xff, + 148 & 0xff} } }, { @@ -20091,18 +25991,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (656 >> 8) & 0xff, - 656 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (875 >> 8) & 0xff, + 875 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (133 >> 8) & 0xff, - 133 & 0xff} + (149 >> 8) & 0xff, + 149 & 0xff} }, .field_info_spec = { .description = "tl3.prot", @@ -20110,18 +26010,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (662 >> 8) & 0xff, - 662 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (883 >> 8) & 0xff, + 883 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (134 >> 8) & 0xff, - 134 & 0xff} + (150 >> 8) & 0xff, + 150 & 0xff} } }, { @@ -20131,18 +26031,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (668 >> 8) & 0xff, - 668 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (891 >> 8) & 0xff, + 891 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_QOS >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_QOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (135 >> 8) & 0xff, - 135 & 0xff} + (151 >> 8) & 0xff, + 151 & 0xff} }, .field_info_spec = { .description = "tl3.qos", @@ -20150,18 +26050,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (674 >> 8) & 0xff, - 674 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (899 >> 8) & 0xff, + 899 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_QOS >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_QOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (136 >> 8) & 0xff, - 136 & 0xff} + (152 >> 8) & 0xff, + 152 & 0xff} } }, { @@ -20171,18 +26071,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (680 >> 8) & 0xff, - 680 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (907 >> 8) & 0xff, + 907 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (137 >> 8) & 0xff, - 137 & 0xff} + (153 >> 8) & 0xff, + 153 & 0xff} }, .field_info_spec = { .description = "tl4.src", @@ -20190,18 +26090,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (686 >> 8) & 0xff, - 686 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (915 >> 8) & 0xff, + 915 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (138 >> 8) & 0xff, - 138 & 0xff} + (154 >> 8) & 0xff, + 154 & 0xff} } }, { @@ -20211,18 +26111,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (692 >> 8) & 0xff, - 692 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (923 >> 8) & 0xff, + 923 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (139 >> 8) & 0xff, - 139 & 0xff} + (155 >> 8) & 0xff, + 155 & 0xff} }, .field_info_spec = { .description = "tl4.dst", @@ -20230,18 +26130,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (698 >> 8) & 0xff, - 698 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (932 >> 8) & 0xff, + 932 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (140 >> 8) & 0xff, - 140 & 0xff} + (156 >> 8) & 0xff, + 156 & 0xff} } }, { @@ -20251,18 +26151,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (704 >> 8) & 0xff, - 704 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (941 >> 8) & 0xff, + 941 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (141 >> 8) & 0xff, - 141 & 0xff} + (157 >> 8) & 0xff, + 157 & 0xff} }, .field_info_spec = { .description = "tids", @@ -20270,18 +26170,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (708 >> 8) & 0xff, - 708 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (947 >> 8) & 0xff, + 947 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (142 >> 8) & 0xff, - 142 & 0xff} + (158 >> 8) & 0xff, + 158 & 0xff} } }, { @@ -20291,18 +26191,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (712 >> 8) & 0xff, - 712 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (953 >> 8) & 0xff, + 953 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (143 >> 8) & 0xff, - 143 & 0xff} + (159 >> 8) & 0xff, + 159 & 0xff} }, .field_info_spec = { .description = "l2_dmac", @@ -20310,18 +26210,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (718 >> 8) & 0xff, - 718 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (960 >> 8) & 0xff, + 960 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (144 >> 8) & 0xff, - 144 & 0xff} + (160 >> 8) & 0xff, + 160 & 0xff} } }, { @@ -20331,18 +26231,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (724 >> 8) & 0xff, - 724 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (967 >> 8) & 0xff, + 967 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (145 >> 8) & 0xff, - 145 & 0xff} + (161 >> 8) & 0xff, + 161 & 0xff} }, .field_info_spec = { .description = "l2_smac", @@ -20350,18 +26250,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (730 >> 8) & 0xff, - 730 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (974 >> 8) & 0xff, + 974 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (146 >> 8) & 0xff, - 146 & 0xff} + (162 >> 8) & 0xff, + 162 & 0xff} } }, { @@ -20371,18 +26271,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (736 >> 8) & 0xff, - 736 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (981 >> 8) & 0xff, + 981 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_IO_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_IO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (147 >> 8) & 0xff, - 147 & 0xff} + (163 >> 8) & 0xff, + 163 & 0xff} }, .field_info_spec = { .description = "l2_ovv", @@ -20390,18 +26290,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (744 >> 8) & 0xff, - 744 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (990 >> 8) & 0xff, + 990 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_IO_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_IO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (148 >> 8) & 0xff, - 148 & 0xff} + (164 >> 8) & 0xff, + 164 & 0xff} } }, { @@ -20411,18 +26311,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (752 >> 8) & 0xff, - 752 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (999 >> 8) & 0xff, + 999 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_II_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_II_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (149 >> 8) & 0xff, - 149 & 0xff} + (165 >> 8) & 0xff, + 165 & 0xff} }, .field_info_spec = { .description = "l2_ivv", @@ -20430,18 +26330,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (768 >> 8) & 0xff, - 768 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1017 >> 8) & 0xff, + 1017 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_II_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_II_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (152 >> 8) & 0xff, - 152 & 0xff} + (168 >> 8) & 0xff, + 168 & 0xff} } }, { @@ -20451,18 +26351,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (784 >> 8) & 0xff, - 784 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1035 >> 8) & 0xff, + 1035 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_TYPE >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (155 >> 8) & 0xff, - 155 & 0xff} + (171 >> 8) & 0xff, + 171 & 0xff} }, .field_info_spec = { .description = "l2_etype", @@ -20470,18 +26370,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (792 >> 8) & 0xff, - 792 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1044 >> 8) & 0xff, + 1044 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_TYPE >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (156 >> 8) & 0xff, - 156 & 0xff} + (172 >> 8) & 0xff, + 172 & 0xff} } }, { @@ -20491,18 +26391,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (800 >> 8) & 0xff, - 800 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1053 >> 8) & 0xff, + 1053 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (157 >> 8) & 0xff, - 157 & 0xff} + (173 >> 8) & 0xff, + 173 & 0xff} }, .field_info_spec = { .description = "l3.sip.ipv4", @@ -20510,18 +26410,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (806 >> 8) & 0xff, - 806 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1060 >> 8) & 0xff, + 1060 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (158 >> 8) & 0xff, - 158 & 0xff} + (174 >> 8) & 0xff, + 174 & 0xff} } }, { @@ -20531,18 +26431,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (812 >> 8) & 0xff, - 812 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1067 >> 8) & 0xff, + 1067 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (159 >> 8) & 0xff, - 159 & 0xff} + (175 >> 8) & 0xff, + 175 & 0xff} }, .field_info_spec = { .description = "l3.sip.ipv6", @@ -20550,18 +26450,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (818 >> 8) & 0xff, - 818 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1074 >> 8) & 0xff, + 1074 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (160 >> 8) & 0xff, - 160 & 0xff} + (176 >> 8) & 0xff, + 176 & 0xff} } }, { @@ -20571,18 +26471,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (824 >> 8) & 0xff, - 824 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1081 >> 8) & 0xff, + 1081 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (161 >> 8) & 0xff, - 161 & 0xff} + (177 >> 8) & 0xff, + 177 & 0xff} }, .field_info_spec = { .description = "l3.dip.ipv4", @@ -20590,18 +26490,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (830 >> 8) & 0xff, - 830 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1088 >> 8) & 0xff, + 1088 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (162 >> 8) & 0xff, - 162 & 0xff} + (178 >> 8) & 0xff, + 178 & 0xff} } }, { @@ -20611,18 +26511,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (836 >> 8) & 0xff, - 836 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1095 >> 8) & 0xff, + 1095 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (163 >> 8) & 0xff, - 163 & 0xff} + (179 >> 8) & 0xff, + 179 & 0xff} }, .field_info_spec = { .description = "l3.dip.ipv6", @@ -20630,18 +26530,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (842 >> 8) & 0xff, - 842 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1102 >> 8) & 0xff, + 1102 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (164 >> 8) & 0xff, - 164 & 0xff} + (180 >> 8) & 0xff, + 180 & 0xff} } }, { @@ -20651,18 +26551,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (848 >> 8) & 0xff, - 848 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1109 >> 8) & 0xff, + 1109 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (165 >> 8) & 0xff, - 165 & 0xff} + (181 >> 8) & 0xff, + 181 & 0xff} }, .field_info_spec = { .description = "l3.ttl", @@ -20670,18 +26570,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (860 >> 8) & 0xff, - 860 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1123 >> 8) & 0xff, + 1123 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (168 >> 8) & 0xff, - 168 & 0xff} + (184 >> 8) & 0xff, + 184 & 0xff} } }, { @@ -20691,15 +26591,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (872 >> 8) & 0xff, - 872 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (1137 >> 8) & 0xff, + 1137 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (171 >> 8) & 0xff, - 171 & 0xff} + (187 >> 8) & 0xff, + 187 & 0xff} }, .field_info_spec = { .description = "l3.prot", @@ -20707,17 +26607,17 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (892 >> 8) & 0xff, - 892 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (1161 >> 8) & 0xff, + 1161 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { ULP_THOR2_SYM_IP_PROTO_TCP}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (178 >> 8) & 0xff, - 178 & 0xff} + (194 >> 8) & 0xff, + 194 & 0xff} } }, { @@ -20727,18 +26627,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (912 >> 8) & 0xff, - 912 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1185 >> 8) & 0xff, + 1185 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_QOS >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_QOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (185 >> 8) & 0xff, - 185 & 0xff} + (201 >> 8) & 0xff, + 201 & 0xff} }, .field_info_spec = { .description = "l3.qos", @@ -20746,18 +26646,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (924 >> 8) & 0xff, - 924 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1199 >> 8) & 0xff, + 1199 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_QOS >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_QOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (188 >> 8) & 0xff, - 188 & 0xff} + (204 >> 8) & 0xff, + 204 & 0xff} } }, { @@ -20767,18 +26667,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (936 >> 8) & 0xff, - 936 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1213 >> 8) & 0xff, + 1213 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (191 >> 8) & 0xff, - 191 & 0xff} + (207 >> 8) & 0xff, + 207 & 0xff} }, .field_info_spec = { .description = "l4.src", @@ -20786,18 +26686,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (949 >> 8) & 0xff, - 949 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1229 >> 8) & 0xff, + 1229 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (195 >> 8) & 0xff, - 195 & 0xff} + (211 >> 8) & 0xff, + 211 & 0xff} } }, { @@ -20807,18 +26707,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (962 >> 8) & 0xff, - 962 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1245 >> 8) & 0xff, + 1245 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (199 >> 8) & 0xff, - 199 & 0xff} + (215 >> 8) & 0xff, + 215 & 0xff} }, .field_info_spec = { .description = "l4.dst", @@ -20826,18 +26726,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (975 >> 8) & 0xff, - 975 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1261 >> 8) & 0xff, + 1261 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (203 >> 8) & 0xff, - 203 & 0xff} + (219 >> 8) & 0xff, + 219 & 0xff} } }, /* class_tid: 1, , table: proto_header_cache.wr */ @@ -20846,13 +26746,24 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "group_metadata", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} }, .field_info_spec = { .description = "group_metadata", .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, + .field_opr1 = { + (1277 >> 8) & 0xff, + 1277 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_CHAIN_META_TYPE}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { @@ -20920,13 +26831,24 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "group_metadata", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} }, .field_info_spec = { .description = "group_metadata", .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, + .field_opr1 = { + (1282 >> 8) & 0xff, + 1282 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_CHAIN_META_TYPE}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { @@ -21001,10 +26923,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1248 >> 8) & 0xff, - 1248 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (1600 >> 8) & 0xff, + 1600 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21014,10 +26936,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1249 >> 8) & 0xff, - 1249 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (1602 >> 8) & 0xff, + 1602 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff, @@ -21030,12 +26952,12 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "meta", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (1250 >> 8) & 0xff, - 1250 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (1604 >> 8) & 0xff, + 1604 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21043,16 +26965,16 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "meta", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (1251 >> 8) & 0xff, - 1251 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CF, + (1606 >> 8) & 0xff, + 1606 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_CF_IDX_VF_META_FID >> 8) & 0xff, - BNXT_ULP_CF_IDX_VF_META_FID & 0xff}, + (BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff, + BNXT_ULP_RF_IDX_JUMP_META & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -21063,8 +26985,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1252 >> 8) & 0xff, - 1252 & 0xff, + (1608 >> 8) & 0xff, + 1608 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -21076,8 +26998,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1253 >> 8) & 0xff, - 1253 & 0xff, + (1609 >> 8) & 0xff, + 1609 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -21094,10 +27016,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1254 >> 8) & 0xff, - 1254 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1610 >> 8) & 0xff, + 1610 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21107,10 +27029,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1258 >> 8) & 0xff, - 1258 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1615 >> 8) & 0xff, + 1615 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, @@ -21125,10 +27047,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1262 >> 8) & 0xff, - 1262 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1620 >> 8) & 0xff, + 1620 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21138,10 +27060,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1265 >> 8) & 0xff, - 1265 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1624 >> 8) & 0xff, + 1624 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, @@ -21156,10 +27078,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1268 >> 8) & 0xff, - 1268 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1628 >> 8) & 0xff, + 1628 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21169,10 +27091,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1272 >> 8) & 0xff, - 1272 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1633 >> 8) & 0xff, + 1633 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, @@ -21187,15 +27109,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1276 >> 8) & 0xff, - 1276 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1638 >> 8) & 0xff, + 1638 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (250 >> 8) & 0xff, - 250 & 0xff} + (266 >> 8) & 0xff, + 266 & 0xff} }, .field_info_spec = { .description = "tl2_ivv", @@ -21203,18 +27125,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1284 >> 8) & 0xff, - 1284 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1648 >> 8) & 0xff, + 1648 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OI_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_OI_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (251 >> 8) & 0xff, - 251 & 0xff} + (267 >> 8) & 0xff, + 267 & 0xff} } }, { @@ -21224,10 +27146,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1292 >> 8) & 0xff, - 1292 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1658 >> 8) & 0xff, + 1658 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21237,10 +27159,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1296 >> 8) & 0xff, - 1296 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1663 >> 8) & 0xff, + 1663 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_TYPE >> 8) & 0xff, @@ -21255,10 +27177,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1300 >> 8) & 0xff, - 1300 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1668 >> 8) & 0xff, + 1668 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21268,10 +27190,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1303 >> 8) & 0xff, - 1303 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1672 >> 8) & 0xff, + 1672 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, @@ -21286,10 +27208,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1306 >> 8) & 0xff, - 1306 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1676 >> 8) & 0xff, + 1676 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21299,10 +27221,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1309 >> 8) & 0xff, - 1309 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1680 >> 8) & 0xff, + 1680 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, @@ -21317,10 +27239,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1312 >> 8) & 0xff, - 1312 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1684 >> 8) & 0xff, + 1684 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21330,10 +27252,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1315 >> 8) & 0xff, - 1315 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1688 >> 8) & 0xff, + 1688 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, @@ -21348,10 +27270,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1318 >> 8) & 0xff, - 1318 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1692 >> 8) & 0xff, + 1692 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -21361,10 +27283,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1321 >> 8) & 0xff, - 1321 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1696 >> 8) & 0xff, + 1696 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, @@ -21379,15 +27301,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1324 >> 8) & 0xff, - 1324 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1700 >> 8) & 0xff, + 1700 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (252 >> 8) & 0xff, - 252 & 0xff} + (268 >> 8) & 0xff, + 268 & 0xff} }, .field_info_spec = { .description = "tl3.ttl", @@ -21395,18 +27317,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1330 >> 8) & 0xff, - 1330 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1708 >> 8) & 0xff, + 1708 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (253 >> 8) & 0xff, - 253 & 0xff} + (269 >> 8) & 0xff, + 269 & 0xff} } }, { @@ -21416,15 +27338,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1336 >> 8) & 0xff, - 1336 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1716 >> 8) & 0xff, + 1716 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (254 >> 8) & 0xff, - 254 & 0xff} + (270 >> 8) & 0xff, + 270 & 0xff} }, .field_info_spec = { .description = "tl3.prot", @@ -21432,18 +27354,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1342 >> 8) & 0xff, - 1342 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1724 >> 8) & 0xff, + 1724 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (255 >> 8) & 0xff, - 255 & 0xff} + (271 >> 8) & 0xff, + 271 & 0xff} } }, { @@ -21453,15 +27375,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1348 >> 8) & 0xff, - 1348 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1732 >> 8) & 0xff, + 1732 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (256 >> 8) & 0xff, - 256 & 0xff} + (272 >> 8) & 0xff, + 272 & 0xff} }, .field_info_spec = { .description = "tl3.qos", @@ -21469,18 +27391,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1354 >> 8) & 0xff, - 1354 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1740 >> 8) & 0xff, + 1740 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_QOS >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_QOS & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (257 >> 8) & 0xff, - 257 & 0xff} + (273 >> 8) & 0xff, + 273 & 0xff} } }, { @@ -21490,15 +27412,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1360 >> 8) & 0xff, - 1360 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1748 >> 8) & 0xff, + 1748 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (258 >> 8) & 0xff, - 258 & 0xff} + (274 >> 8) & 0xff, + 274 & 0xff} }, .field_info_spec = { .description = "tl4.src", @@ -21506,18 +27428,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1366 >> 8) & 0xff, - 1366 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1756 >> 8) & 0xff, + 1756 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (259 >> 8) & 0xff, - 259 & 0xff} + (275 >> 8) & 0xff, + 275 & 0xff} } }, { @@ -21527,15 +27449,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1372 >> 8) & 0xff, - 1372 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1764 >> 8) & 0xff, + 1764 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (260 >> 8) & 0xff, - 260 & 0xff} + (276 >> 8) & 0xff, + 276 & 0xff} }, .field_info_spec = { .description = "tl4.dst", @@ -21543,18 +27465,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1378 >> 8) & 0xff, - 1378 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1773 >> 8) & 0xff, + 1773 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (261 >> 8) & 0xff, - 261 & 0xff} + (277 >> 8) & 0xff, + 277 & 0xff} } }, { @@ -21564,15 +27486,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1384 >> 8) & 0xff, - 1384 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (1782 >> 8) & 0xff, + 1782 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (262 >> 8) & 0xff, - 262 & 0xff} + (278 >> 8) & 0xff, + 278 & 0xff} }, .field_info_spec = { .description = "tids", @@ -21580,18 +27502,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1388 >> 8) & 0xff, - 1388 & 0xff, - (2 >> 8) & 0xff, - 2 & 0xff}, + (1788 >> 8) & 0xff, + 1788 & 0xff, + (3 >> 8) & 0xff, + 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (263 >> 8) & 0xff, - 263 & 0xff} + (279 >> 8) & 0xff, + 279 & 0xff} } }, { @@ -21601,15 +27523,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1392 >> 8) & 0xff, - 1392 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1794 >> 8) & 0xff, + 1794 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (264 >> 8) & 0xff, - 264 & 0xff} + (280 >> 8) & 0xff, + 280 & 0xff} }, .field_info_spec = { .description = "l2_dmac", @@ -21617,18 +27539,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1400 >> 8) & 0xff, - 1400 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1803 >> 8) & 0xff, + 1803 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (265 >> 8) & 0xff, - 265 & 0xff} + (281 >> 8) & 0xff, + 281 & 0xff} } }, { @@ -21638,15 +27560,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1408 >> 8) & 0xff, - 1408 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1812 >> 8) & 0xff, + 1812 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (266 >> 8) & 0xff, - 266 & 0xff} + (282 >> 8) & 0xff, + 282 & 0xff} }, .field_info_spec = { .description = "l2_smac", @@ -21654,18 +27576,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1414 >> 8) & 0xff, - 1414 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1819 >> 8) & 0xff, + 1819 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (267 >> 8) & 0xff, - 267 & 0xff} + (283 >> 8) & 0xff, + 283 & 0xff} } }, { @@ -21675,15 +27597,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1420 >> 8) & 0xff, - 1420 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1826 >> 8) & 0xff, + 1826 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (268 >> 8) & 0xff, - 268 & 0xff} + (284 >> 8) & 0xff, + 284 & 0xff} }, .field_info_spec = { .description = "l2_ovv", @@ -21691,18 +27613,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1428 >> 8) & 0xff, - 1428 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1835 >> 8) & 0xff, + 1835 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_IO_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_IO_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (269 >> 8) & 0xff, - 269 & 0xff} + (285 >> 8) & 0xff, + 285 & 0xff} } }, { @@ -21712,15 +27634,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1436 >> 8) & 0xff, - 1436 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1844 >> 8) & 0xff, + 1844 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (270 >> 8) & 0xff, - 270 & 0xff} + (286 >> 8) & 0xff, + 286 & 0xff} }, .field_info_spec = { .description = "l2_ivv", @@ -21728,18 +27650,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1452 >> 8) & 0xff, - 1452 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1862 >> 8) & 0xff, + 1862 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_II_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_II_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (273 >> 8) & 0xff, - 273 & 0xff} + (289 >> 8) & 0xff, + 289 & 0xff} } }, { @@ -21749,15 +27671,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1468 >> 8) & 0xff, - 1468 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1880 >> 8) & 0xff, + 1880 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (276 >> 8) & 0xff, - 276 & 0xff} + (292 >> 8) & 0xff, + 292 & 0xff} }, .field_info_spec = { .description = "l2_etype", @@ -21765,18 +27687,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1476 >> 8) & 0xff, - 1476 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (1889 >> 8) & 0xff, + 1889 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_ETH_TYPE >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_ETH_TYPE & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (277 >> 8) & 0xff, - 277 & 0xff} + (293 >> 8) & 0xff, + 293 & 0xff} } }, { @@ -21786,15 +27708,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1484 >> 8) & 0xff, - 1484 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1898 >> 8) & 0xff, + 1898 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (278 >> 8) & 0xff, - 278 & 0xff} + (294 >> 8) & 0xff, + 294 & 0xff} }, .field_info_spec = { .description = "l3.sip.ipv4", @@ -21802,18 +27724,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1490 >> 8) & 0xff, - 1490 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1905 >> 8) & 0xff, + 1905 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (279 >> 8) & 0xff, - 279 & 0xff} + (295 >> 8) & 0xff, + 295 & 0xff} } }, { @@ -21823,15 +27745,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1496 >> 8) & 0xff, - 1496 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1912 >> 8) & 0xff, + 1912 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (280 >> 8) & 0xff, - 280 & 0xff} + (296 >> 8) & 0xff, + 296 & 0xff} }, .field_info_spec = { .description = "l3.sip.ipv6", @@ -21839,18 +27761,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1502 >> 8) & 0xff, - 1502 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1919 >> 8) & 0xff, + 1919 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (281 >> 8) & 0xff, - 281 & 0xff} + (297 >> 8) & 0xff, + 297 & 0xff} } }, { @@ -21860,15 +27782,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1508 >> 8) & 0xff, - 1508 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1926 >> 8) & 0xff, + 1926 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (282 >> 8) & 0xff, - 282 & 0xff} + (298 >> 8) & 0xff, + 298 & 0xff} }, .field_info_spec = { .description = "l3.dip.ipv4", @@ -21876,18 +27798,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1514 >> 8) & 0xff, - 1514 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1933 >> 8) & 0xff, + 1933 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (283 >> 8) & 0xff, - 283 & 0xff} + (299 >> 8) & 0xff, + 299 & 0xff} } }, { @@ -21897,15 +27819,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1520 >> 8) & 0xff, - 1520 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1940 >> 8) & 0xff, + 1940 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (284 >> 8) & 0xff, - 284 & 0xff} + (300 >> 8) & 0xff, + 300 & 0xff} }, .field_info_spec = { .description = "l3.dip.ipv6", @@ -21913,18 +27835,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1526 >> 8) & 0xff, - 1526 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1947 >> 8) & 0xff, + 1947 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (285 >> 8) & 0xff, - 285 & 0xff} + (301 >> 8) & 0xff, + 301 & 0xff} } }, { @@ -21934,298 +27856,931 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1532 >> 8) & 0xff, - 1532 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (1954 >> 8) & 0xff, + 1954 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (286 >> 8) & 0xff, - 286 & 0xff} + (302 >> 8) & 0xff, + 302 & 0xff} + }, + .field_info_spec = { + .description = "l3.ttl", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (1968 >> 8) & 0xff, + 1968 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_I_IPV6_TTL >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_TTL & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (305 >> 8) & 0xff, + 305 & 0xff} + } + }, + { + .field_info_mask = { + .description = "l3.prot", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (1982 >> 8) & 0xff, + 1982 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (308 >> 8) & 0xff, + 308 & 0xff} + }, + .field_info_spec = { + .description = "l3.prot", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (1996 >> 8) & 0xff, + 1996 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (311 >> 8) & 0xff, + 311 & 0xff} + } + }, + { + .field_info_mask = { + .description = "l3.qos", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2010 >> 8) & 0xff, + 2010 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (314 >> 8) & 0xff, + 314 & 0xff} + }, + .field_info_spec = { + .description = "l3.qos", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2024 >> 8) & 0xff, + 2024 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_I_IPV6_QOS >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_IPV6_QOS & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (317 >> 8) & 0xff, + 317 & 0xff} + } + }, + { + .field_info_mask = { + .description = "l4.src", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2038 >> 8) & 0xff, + 2038 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (320 >> 8) & 0xff, + 320 & 0xff} + }, + .field_info_spec = { + .description = "l4.src", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2052 >> 8) & 0xff, + 2052 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (323 >> 8) & 0xff, + 323 & 0xff} + } + }, + { + .field_info_mask = { + .description = "l4.dst", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2066 >> 8) & 0xff, + 2066 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (326 >> 8) & 0xff, + 326 & 0xff} + }, + .field_info_spec = { + .description = "l4.dst", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2080 >> 8) & 0xff, + 2080 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (329 >> 8) & 0xff, + 329 & 0xff} + } + }, + /* class_tid: 1, , table: em_flow_conflict_cache.wr */ + { + .field_info_mask = { + .description = "recycle_cnt", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "recycle_cnt", + .field_bit_size = 2, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "group_metadata", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "group_metadata", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, + .field_opr1 = { + (2094 >> 8) & 0xff, + 2094 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_CHAIN_META_TYPE}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "prof_func_id", + .field_bit_size = 8, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_RF, + .field_opr1 = { + (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, + BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + } + }, + { + .field_info_mask = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "hdr_bitmap", + .field_bit_size = 64, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_PROFILE_BITMAP >> 8) & 0xff, + BNXT_ULP_CF_IDX_PROFILE_BITMAP & 0xff} + } + }, + /* class_tid: 2, , table: port_table.get_def_rd */ + { + .field_info_mask = { + .description = "dev.port_id", + .field_bit_size = 10, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff, + 0xff} + }, + .field_info_spec = { + .description = "dev.port_id", + .field_bit_size = 10, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_CF, + .field_opr1 = { + (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff} + } + }, + /* class_tid: 2, , table: l2_cntxt_tcam_cache.def_rd */ + { + .field_info_mask = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + }, + .field_info_spec = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + } + }, + /* class_tid: 2, , table: multi_flow_tunnel_cache.rd */ + { + .field_info_mask = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + }, + .field_info_spec = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + } + }, + { + .field_info_mask = { + .description = "tunnel_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tunnel_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3, + .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT, + .field_opr1 = { + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff, + (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_DPORT_TUN_TYPE_VXLAN}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2133 >> 8) & 0xff, + 2133 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2135 >> 8) & 0xff, + 2135 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_dmac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2137 >> 8) & 0xff, + 2137 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_dmac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2139 >> 8) & 0xff, + 2139 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2141 >> 8) & 0xff, + 2141 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2143 >> 8) & 0xff, + 2143 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_sip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2145 >> 8) & 0xff, + 2145 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_sip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2147 >> 8) & 0xff, + 2147 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_dip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2149 >> 8) & 0xff, + 2149 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_dip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2151 >> 8) & 0xff, + 2151 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_sip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2153 >> 8) & 0xff, + 2153 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_sip_v4", + .field_bit_size = 32, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2155 >> 8) & 0xff, + 2155 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_sport", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2157 >> 8) & 0xff, + 2157 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_sport", + .field_bit_size = 16, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2159 >> 8) & 0xff, + 2159 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + /* class_tid: 2, , table: multi_flow_tunnel_cache.wr */ + { + .field_info_mask = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + }, + .field_info_spec = { + .description = "svif", + .field_bit_size = 11, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_HF, + .field_opr1 = { + (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + } + }, + { + .field_info_mask = { + .description = "tunnel_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1, + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} + }, + .field_info_spec = { + .description = "tunnel_type", + .field_bit_size = 4, + .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3, + .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT, + .field_opr1 = { + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff, + ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff, + (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_DPORT_TUN_TYPE_VXLAN}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2162 >> 8) & 0xff, + 2162 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_smac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2164 >> 8) & 0xff, + 2164 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_dmac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2166 >> 8) & 0xff, + 2166 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + }, + .field_info_spec = { + .description = "tunnel_dmac", + .field_bit_size = 48, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2168 >> 8) & 0xff, + 2168 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO + } + }, + { + .field_info_mask = { + .description = "tunnel_dip_v6", + .field_bit_size = 128, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2170 >> 8) & 0xff, + 2170 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l3.ttl", - .field_bit_size = 8, + .description = "tunnel_dip_v6", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1544 >> 8) & 0xff, - 1544 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2172 >> 8) & 0xff, + 2172 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_TTL >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_TTL & 0xff}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (289 >> 8) & 0xff, - 289 & 0xff} + (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l3.prot", - .field_bit_size = 8, + .description = "tunnel_sip_v6", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1556 >> 8) & 0xff, - 1556 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (292 >> 8) & 0xff, - 292 & 0xff} + (2174 >> 8) & 0xff, + 2174 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l3.prot", - .field_bit_size = 8, + .description = "tunnel_sip_v6", + .field_bit_size = 128, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1568 >> 8) & 0xff, - 1568 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2176 >> 8) & 0xff, + 2176 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_PROTO_ID & 0xff}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (295 >> 8) & 0xff, - 295 & 0xff} + (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l3.qos", - .field_bit_size = 8, + .description = "tunnel_dip_v4", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1580 >> 8) & 0xff, - 1580 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (298 >> 8) & 0xff, - 298 & 0xff} + (2178 >> 8) & 0xff, + 2178 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l3.qos", - .field_bit_size = 8, + .description = "tunnel_dip_v4", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1592 >> 8) & 0xff, - 1592 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2180 >> 8) & 0xff, + 2180 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_IPV6_QOS >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_IPV6_QOS & 0xff}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (301 >> 8) & 0xff, - 301 & 0xff} + (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4.src", - .field_bit_size = 16, + .description = "tunnel_sip_v4", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1604 >> 8) & 0xff, - 1604 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (304 >> 8) & 0xff, - 304 & 0xff} + (2182 >> 8) & 0xff, + 2182 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4.src", - .field_bit_size = 16, + .description = "tunnel_sip_v4", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1616 >> 8) & 0xff, - 1616 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2184 >> 8) & 0xff, + 2184 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_UDP_SRC_PORT & 0xff}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (307 >> 8) & 0xff, - 307 & 0xff} + (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { .field_info_mask = { - .description = "l4.dst", + .description = "tunnel_sport", .field_bit_size = 16, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1628 >> 8) & 0xff, - 1628 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_ONES, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (310 >> 8) & 0xff, - 310 & 0xff} + (2186 >> 8) & 0xff, + 2186 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_HF, + .field_opr2 = { + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO }, .field_info_spec = { - .description = "l4.dst", + .description = "tunnel_sport", .field_bit_size = 16, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1640 >> 8) & 0xff, - 1640 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2188 >> 8) & 0xff, + 2188 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_I_UDP_DST_PORT & 0xff}, - .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, - .field_opr3 = { - (313 >> 8) & 0xff, - 313 & 0xff} - } - }, - /* class_tid: 1, , table: em_flow_conflict_cache.wr */ - { - .field_info_mask = { - .description = "recycle_cnt", - .field_bit_size = 2, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - }, - .field_info_spec = { - .description = "recycle_cnt", - .field_bit_size = 2, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - } - }, - { - .field_info_mask = { - .description = "group_metadata", - .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - }, - .field_info_spec = { - .description = "group_metadata", - .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO - } - }, - { - .field_info_mask = { - .description = "prof_func_id", - .field_bit_size = 8, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, - .field_opr1 = { - 0xff} - }, - .field_info_spec = { - .description = "prof_func_id", - .field_bit_size = 8, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_RF, - .field_opr1 = { - (BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 >> 8) & 0xff, - BNXT_ULP_RF_IDX_PROF_FUNC_ID_0 & 0xff} + (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff, + BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, + /* class_tid: 2, , table: flow_chain_cache.group_check */ { .field_info_mask = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "group_id", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { - 0xff, - 0xff, - 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff} }, .field_info_spec = { - .description = "hdr_bitmap", - .field_bit_size = 64, + .description = "group_id", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_CF, .field_opr1 = { - (BNXT_ULP_CF_IDX_PROFILE_BITMAP >> 8) & 0xff, - BNXT_ULP_CF_IDX_PROFILE_BITMAP & 0xff} + (BNXT_ULP_CF_IDX_GROUP_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_GROUP_ID & 0xff} } }, - /* class_tid: 2, , table: port_table.get_def_rd */ + /* class_tid: 2, , table: flow_chain_cache.write */ { .field_info_mask = { - .description = "dev.port_id", - .field_bit_size = 10, + .description = "group_id", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_ONES, .field_opr1 = { + 0xff, + 0xff, 0xff, 0xff} }, .field_info_spec = { - .description = "dev.port_id", - .field_bit_size = 10, + .description = "group_id", + .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, .field_src1 = BNXT_ULP_FIELD_SRC_CF, .field_opr1 = { - (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff, - BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff} - } - }, - /* class_tid: 2, , table: l2_cntxt_tcam_cache.def_rd */ - { - .field_info_mask = { - .description = "svif", - .field_bit_size = 11, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_HF, - .field_opr1 = { - (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} - }, - .field_info_spec = { - .description = "svif", - .field_bit_size = 11, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_HF, - .field_opr1 = { - (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff} + (BNXT_ULP_CF_IDX_GROUP_ID >> 8) & 0xff, + BNXT_ULP_CF_IDX_GROUP_ID & 0xff} } }, /* class_tid: 2, , table: proto_header_cache.rd */ @@ -22234,13 +28789,24 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "group_metadata", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opr1 = { + 0xff} }, .field_info_spec = { .description = "group_metadata", .field_bit_size = 4, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, + .field_opr1 = { + (2200 >> 8) & 0xff, + 2200 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_CHAIN_META_TYPE}, + .field_src3 = BNXT_ULP_FIELD_SRC_ZERO } }, { @@ -22302,12 +28868,12 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "group_metadata", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (1684 >> 8) & 0xff, - 1684 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (2203 >> 8) & 0xff, + 2203 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { ULP_THOR2_SYM_CHAIN_META_TYPE}, @@ -22374,12 +28940,12 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "group_metadata", .field_bit_size = 4, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (1964 >> 8) & 0xff, - 1964 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (2547 >> 8) & 0xff, + 2547 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, .field_opr2 = { ULP_THOR2_SYM_CHAIN_META_TYPE}, @@ -22482,15 +29048,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1982 >> 8) & 0xff, - 1982 & 0xff, + (2566 >> 8) & 0xff, + 2566 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (370 >> 8) & 0xff, - 370 & 0xff} + (389 >> 8) & 0xff, + 389 & 0xff} }, .field_info_spec = { .description = "l4_hdr_is_udp_tcp", @@ -22498,8 +29064,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1990 >> 8) & 0xff, - 1990 & 0xff, + (2574 >> 8) & 0xff, + 2574 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22507,8 +29073,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L4_HDR_IS_UDP_TCP_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (373 >> 8) & 0xff, - 373 & 0xff} + (392 >> 8) & 0xff, + 392 & 0xff} } }, { @@ -22518,15 +29084,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (1998 >> 8) & 0xff, - 1998 & 0xff, + (2582 >> 8) & 0xff, + 2582 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (376 >> 8) & 0xff, - 376 & 0xff} + (395 >> 8) & 0xff, + 395 & 0xff} }, .field_info_spec = { .description = "l4_hdr_type", @@ -22534,15 +29100,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2006 >> 8) & 0xff, - 2006 & 0xff, + (2590 >> 8) & 0xff, + 2590 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (379 >> 8) & 0xff, - 379 & 0xff} + (398 >> 8) & 0xff, + 398 & 0xff} } }, { @@ -22552,15 +29118,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2014 >> 8) & 0xff, - 2014 & 0xff, + (2598 >> 8) & 0xff, + 2598 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (382 >> 8) & 0xff, - 382 & 0xff} + (401 >> 8) & 0xff, + 401 & 0xff} }, .field_info_spec = { .description = "l4_hdr_error", @@ -22568,15 +29134,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2022 >> 8) & 0xff, - 2022 & 0xff, + (2606 >> 8) & 0xff, + 2606 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (385 >> 8) & 0xff, - 385 & 0xff} + (404 >> 8) & 0xff, + 404 & 0xff} } }, { @@ -22586,15 +29152,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2030 >> 8) & 0xff, - 2030 & 0xff, + (2614 >> 8) & 0xff, + 2614 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (388 >> 8) & 0xff, - 388 & 0xff} + (407 >> 8) & 0xff, + 407 & 0xff} }, .field_info_spec = { .description = "l4_hdr_valid", @@ -22602,8 +29168,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2038 >> 8) & 0xff, - 2038 & 0xff, + (2622 >> 8) & 0xff, + 2622 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22611,8 +29177,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L4_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (391 >> 8) & 0xff, - 391 & 0xff} + (410 >> 8) & 0xff, + 410 & 0xff} } }, { @@ -22633,14 +29199,36 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_info_mask = { .description = "l3_hdr_isIP", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2630 >> 8) & 0xff, + 2630 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (413 >> 8) & 0xff, + 413 & 0xff} }, .field_info_spec = { .description = "l3_hdr_isIP", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2638 >> 8) & 0xff, + 2638 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_L3_HDR_ISIP_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (416 >> 8) & 0xff, + 416 & 0xff} } }, { @@ -22650,15 +29238,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2046 >> 8) & 0xff, - 2046 & 0xff, + (2646 >> 8) & 0xff, + 2646 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (394 >> 8) & 0xff, - 394 & 0xff} + (419 >> 8) & 0xff, + 419 & 0xff} }, .field_info_spec = { .description = "l3_hdr_type", @@ -22666,8 +29254,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2054 >> 8) & 0xff, - 2054 & 0xff, + (2654 >> 8) & 0xff, + 2654 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22675,8 +29263,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L3_HDR_TYPE_IPV6}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (397 >> 8) & 0xff, - 397 & 0xff} + (422 >> 8) & 0xff, + 422 & 0xff} } }, { @@ -22686,15 +29274,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2062 >> 8) & 0xff, - 2062 & 0xff, + (2662 >> 8) & 0xff, + 2662 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (400 >> 8) & 0xff, - 400 & 0xff} + (425 >> 8) & 0xff, + 425 & 0xff} }, .field_info_spec = { .description = "l3_hdr_error", @@ -22702,15 +29290,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2070 >> 8) & 0xff, - 2070 & 0xff, + (2670 >> 8) & 0xff, + 2670 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (403 >> 8) & 0xff, - 403 & 0xff} + (428 >> 8) & 0xff, + 428 & 0xff} } }, { @@ -22720,15 +29308,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2078 >> 8) & 0xff, - 2078 & 0xff, + (2678 >> 8) & 0xff, + 2678 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (406 >> 8) & 0xff, - 406 & 0xff} + (431 >> 8) & 0xff, + 431 & 0xff} }, .field_info_spec = { .description = "l3_hdr_valid", @@ -22736,8 +29324,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2086 >> 8) & 0xff, - 2086 & 0xff, + (2686 >> 8) & 0xff, + 2686 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22745,8 +29333,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L3_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (409 >> 8) & 0xff, - 409 & 0xff} + (434 >> 8) & 0xff, + 434 & 0xff} } }, { @@ -22764,8 +29352,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2094 >> 8) & 0xff, - 2094 & 0xff, + (2694 >> 8) & 0xff, + 2694 & 0xff, (3 >> 8) & 0xff, 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22773,8 +29361,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L2_TWO_VTAGS_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (412 >> 8) & 0xff, - 412 & 0xff} + (437 >> 8) & 0xff, + 437 & 0xff} } }, { @@ -22792,8 +29380,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2100 >> 8) & 0xff, - 2100 & 0xff, + (2700 >> 8) & 0xff, + 2700 & 0xff, (3 >> 8) & 0xff, 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22801,8 +29389,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L2_VTAG_PRESENT_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (413 >> 8) & 0xff, - 413 & 0xff} + (438 >> 8) & 0xff, + 438 & 0xff} } }, { @@ -22826,8 +29414,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2106 >> 8) & 0xff, - 2106 & 0xff, + (2706 >> 8) & 0xff, + 2706 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -22839,8 +29427,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2107 >> 8) & 0xff, - 2107 & 0xff, + (2707 >> 8) & 0xff, + 2707 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -22854,15 +29442,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2108 >> 8) & 0xff, - 2108 & 0xff, + (2708 >> 8) & 0xff, + 2708 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (414 >> 8) & 0xff, - 414 & 0xff} + (439 >> 8) & 0xff, + 439 & 0xff} }, .field_info_spec = { .description = "l2_hdr_error", @@ -22870,15 +29458,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2112 >> 8) & 0xff, - 2112 & 0xff, + (2712 >> 8) & 0xff, + 2712 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (415 >> 8) & 0xff, - 415 & 0xff} + (440 >> 8) & 0xff, + 440 & 0xff} } }, { @@ -22896,8 +29484,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2116 >> 8) & 0xff, - 2116 & 0xff, + (2716 >> 8) & 0xff, + 2716 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -22905,8 +29493,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_L2_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (416 >> 8) & 0xff, - 416 & 0xff} + (441 >> 8) & 0xff, + 441 & 0xff} } }, { @@ -22930,15 +29518,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2120 >> 8) & 0xff, - 2120 & 0xff, + (2720 >> 8) & 0xff, + 2720 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (417 >> 8) & 0xff, - 417 & 0xff} + (442 >> 8) & 0xff, + 442 & 0xff} }, .field_info_spec = { .description = "tun_hdr_type", @@ -22946,15 +29534,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2132 >> 8) & 0xff, - 2132 & 0xff, + (2732 >> 8) & 0xff, + 2732 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (422 >> 8) & 0xff, - 422 & 0xff} + (447 >> 8) & 0xff, + 447 & 0xff} } }, { @@ -22964,8 +29552,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2144 >> 8) & 0xff, - 2144 & 0xff, + (2744 >> 8) & 0xff, + 2744 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -22977,8 +29565,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2145 >> 8) & 0xff, - 2145 & 0xff, + (2745 >> 8) & 0xff, + 2745 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -23000,8 +29588,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2146 >> 8) & 0xff, - 2146 & 0xff, + (2746 >> 8) & 0xff, + 2746 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23017,15 +29605,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2147 >> 8) & 0xff, - 2147 & 0xff, + (2747 >> 8) & 0xff, + 2747 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (427 >> 8) & 0xff, - 427 & 0xff} + (452 >> 8) & 0xff, + 452 & 0xff} }, .field_info_spec = { .description = "tl4_hdr_is_udp_tcp", @@ -23033,8 +29621,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2151 >> 8) & 0xff, - 2151 & 0xff, + (2751 >> 8) & 0xff, + 2751 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23042,8 +29630,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_TL4_HDR_IS_UDP_TCP_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (428 >> 8) & 0xff, - 428 & 0xff} + (453 >> 8) & 0xff, + 453 & 0xff} } }, { @@ -23053,15 +29641,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2155 >> 8) & 0xff, - 2155 & 0xff, + (2755 >> 8) & 0xff, + 2755 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (429 >> 8) & 0xff, - 429 & 0xff} + (454 >> 8) & 0xff, + 454 & 0xff} }, .field_info_spec = { .description = "tl4_hdr_type", @@ -23069,15 +29657,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2159 >> 8) & 0xff, - 2159 & 0xff, + (2759 >> 8) & 0xff, + 2759 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (430 >> 8) & 0xff, - 430 & 0xff} + (455 >> 8) & 0xff, + 455 & 0xff} } }, { @@ -23087,15 +29675,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2163 >> 8) & 0xff, - 2163 & 0xff, + (2763 >> 8) & 0xff, + 2763 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (431 >> 8) & 0xff, - 431 & 0xff} + (456 >> 8) & 0xff, + 456 & 0xff} }, .field_info_spec = { .description = "tl4_hdr_error", @@ -23103,25 +29691,33 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2167 >> 8) & 0xff, - 2167 & 0xff, + (2767 >> 8) & 0xff, + 2767 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (432 >> 8) & 0xff, - 432 & 0xff} + (457 >> 8) & 0xff, + 457 & 0xff} } }, { .field_info_mask = { .description = "tl4_hdr_valid", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ONES, + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - 0xff} + (2771 >> 8) & 0xff, + 2771 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (458 >> 8) & 0xff, + 458 & 0xff} }, .field_info_spec = { .description = "tl4_hdr_valid", @@ -23129,8 +29725,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2171 >> 8) & 0xff, - 2171 & 0xff, + (2776 >> 8) & 0xff, + 2776 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23138,22 +29734,44 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_TL4_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (433 >> 8) & 0xff, - 433 & 0xff} + (460 >> 8) & 0xff, + 460 & 0xff} } }, { .field_info_mask = { .description = "tl3_hdr_isIP", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2781 >> 8) & 0xff, + 2781 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_ONES, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (462 >> 8) & 0xff, + 462 & 0xff} }, .field_info_spec = { .description = "tl3_hdr_isIP", .field_bit_size = 1, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_opr1 = { + (2785 >> 8) & 0xff, + 2785 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr2 = { + ULP_THOR2_SYM_TL3_HDR_ISIP_YES}, + .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, + .field_opr3 = { + (463 >> 8) & 0xff, + 463 & 0xff} } }, { @@ -23163,15 +29781,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2175 >> 8) & 0xff, - 2175 & 0xff, + (2789 >> 8) & 0xff, + 2789 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (434 >> 8) & 0xff, - 434 & 0xff} + (464 >> 8) & 0xff, + 464 & 0xff} }, .field_info_spec = { .description = "tl3_hdr_type", @@ -23179,8 +29797,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2179 >> 8) & 0xff, - 2179 & 0xff, + (2793 >> 8) & 0xff, + 2793 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23188,8 +29806,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_TL3_HDR_TYPE_IPV6}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (435 >> 8) & 0xff, - 435 & 0xff} + (465 >> 8) & 0xff, + 465 & 0xff} } }, { @@ -23199,15 +29817,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2183 >> 8) & 0xff, - 2183 & 0xff, + (2797 >> 8) & 0xff, + 2797 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (436 >> 8) & 0xff, - 436 & 0xff} + (466 >> 8) & 0xff, + 466 & 0xff} }, .field_info_spec = { .description = "tl3_hdr_error", @@ -23215,15 +29833,15 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2187 >> 8) & 0xff, - 2187 & 0xff, + (2801 >> 8) & 0xff, + 2801 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (437 >> 8) & 0xff, - 437 & 0xff} + (467 >> 8) & 0xff, + 467 & 0xff} } }, { @@ -23241,8 +29859,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2191 >> 8) & 0xff, - 2191 & 0xff, + (2805 >> 8) & 0xff, + 2805 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23250,8 +29868,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { ULP_THOR2_SYM_TL3_HDR_VALID_YES}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (438 >> 8) & 0xff, - 438 & 0xff} + (468 >> 8) & 0xff, + 468 & 0xff} } }, { @@ -23269,8 +29887,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2195 >> 8) & 0xff, - 2195 & 0xff, + (2809 >> 8) & 0xff, + 2809 & 0xff, (3 >> 8) & 0xff, 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23294,8 +29912,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2198 >> 8) & 0xff, - 2198 & 0xff, + (2812 >> 8) & 0xff, + 2812 & 0xff, (3 >> 8) & 0xff, 3 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23325,8 +29943,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2201 >> 8) & 0xff, - 2201 & 0xff, + (2815 >> 8) & 0xff, + 2815 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -23338,8 +29956,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2202 >> 8) & 0xff, - 2202 & 0xff, + (2816 >> 8) & 0xff, + 2816 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ZERO, @@ -23361,8 +29979,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2203 >> 8) & 0xff, - 2203 & 0xff, + (2817 >> 8) & 0xff, + 2817 & 0xff, (2 >> 8) & 0xff, 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_CONST, @@ -23717,13 +30335,28 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "metadata", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_src1 = BNXT_ULP_FIELD_SRC_CONST, + .field_opr1 = { + (0xf0000000 >> 24) & 0xff, + (0xf0000000 >> 16) & 0xff, + (0xf0000000 >> 8) & 0xff, + 0xf0000000 & 0xff} }, .field_info_spec = { .description = "metadata", .field_bit_size = 32, - .field_opc = BNXT_ULP_FIELD_OPC_SRC1, - .field_src1 = BNXT_ULP_FIELD_SRC_ZERO + .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, + .field_opr1 = { + (2819 >> 8) & 0xff, + 2819 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_RF, + .field_opr2 = { + (BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff, + BNXT_ULP_RF_IDX_JUMP_META & 0xff}, + .field_src3 = BNXT_ULP_FIELD_SRC_CONST } }, { @@ -23841,10 +30474,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2205 >> 8) & 0xff, - 2205 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (2821 >> 8) & 0xff, + 2821 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -23854,10 +30487,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2206 >> 8) & 0xff, - 2206 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (2823 >> 8) & 0xff, + 2823 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff, @@ -23870,12 +30503,12 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "meta", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (2207 >> 8) & 0xff, - 2207 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, + (2825 >> 8) & 0xff, + 2825 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, @@ -23883,16 +30516,16 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .description = "meta", .field_bit_size = 32, .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, - .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, + .field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR, .field_opr1 = { - (2208 >> 8) & 0xff, - 2208 & 0xff, - (1 >> 8) & 0xff, - 1 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_CF, + (2827 >> 8) & 0xff, + 2827 & 0xff, + (2 >> 8) & 0xff, + 2 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_RF, .field_opr2 = { - (BNXT_ULP_CF_IDX_VF_META_FID >> 8) & 0xff, - BNXT_ULP_CF_IDX_VF_META_FID & 0xff}, + (BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff, + BNXT_ULP_RF_IDX_JUMP_META & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -23903,8 +30536,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2209 >> 8) & 0xff, - 2209 & 0xff, + (2829 >> 8) & 0xff, + 2829 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_ONES, @@ -23916,8 +30549,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2210 >> 8) & 0xff, - 2210 & 0xff, + (2830 >> 8) & 0xff, + 2830 & 0xff, (1 >> 8) & 0xff, 1 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_RF, @@ -23934,10 +30567,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2211 >> 8) & 0xff, - 2211 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2831 >> 8) & 0xff, + 2831 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, @@ -23950,10 +30583,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2214 >> 8) & 0xff, - 2214 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2835 >> 8) & 0xff, + 2835 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff, @@ -23968,14 +30601,14 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2217 >> 8) & 0xff, - 2217 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2839 >> 8) & 0xff, + 2839 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr2 = { - (439 >> 8) & 0xff, - 439 & 0xff}, + (469 >> 8) & 0xff, + 469 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -23984,14 +30617,14 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2222 >> 8) & 0xff, - 2222 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2846 >> 8) & 0xff, + 2846 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr2 = { - (440 >> 8) & 0xff, - 440 & 0xff}, + (470 >> 8) & 0xff, + 470 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24002,10 +30635,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2227 >> 8) & 0xff, - 2227 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (2853 >> 8) & 0xff, + 2853 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, @@ -24018,10 +30651,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2231 >> 8) & 0xff, - 2231 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (2858 >> 8) & 0xff, + 2858 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff, @@ -24036,18 +30669,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2235 >> 8) & 0xff, - 2235 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (2863 >> 8) & 0xff, + 2863 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OI_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_OI_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (441 >> 8) & 0xff, - 441 & 0xff} + (471 >> 8) & 0xff, + 471 & 0xff} }, .field_info_spec = { .description = "tl2_ivv", @@ -24055,18 +30688,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2243 >> 8) & 0xff, - 2243 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (2873 >> 8) & 0xff, + 2873 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_OI_VLAN_VID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_OI_VLAN_VID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (442 >> 8) & 0xff, - 442 & 0xff} + (472 >> 8) & 0xff, + 472 & 0xff} } }, { @@ -24076,10 +30709,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2251 >> 8) & 0xff, - 2251 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (2883 >> 8) & 0xff, + 2883 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_TYPE >> 8) & 0xff, @@ -24092,10 +30725,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2255 >> 8) & 0xff, - 2255 & 0xff, - (4 >> 8) & 0xff, - 4 & 0xff}, + (2888 >> 8) & 0xff, + 2888 & 0xff, + (5 >> 8) & 0xff, + 5 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_ETH_TYPE >> 8) & 0xff, @@ -24110,10 +30743,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2259 >> 8) & 0xff, - 2259 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2893 >> 8) & 0xff, + 2893 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, @@ -24126,10 +30759,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2262 >> 8) & 0xff, - 2262 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2897 >> 8) & 0xff, + 2897 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff, @@ -24144,14 +30777,14 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2265 >> 8) & 0xff, - 2265 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_HF, + (2901 >> 8) & 0xff, + 2901 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (473 >> 8) & 0xff, + 473 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP }, .field_info_spec = { @@ -24160,14 +30793,14 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2268 >> 8) & 0xff, - 2268 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, - .field_src2 = BNXT_ULP_FIELD_SRC_HF, + (2906 >> 8) & 0xff, + 2906 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, + .field_src2 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr2 = { - (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff, - BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}, + (474 >> 8) & 0xff, + 474 & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_SKIP } }, @@ -24178,10 +30811,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2271 >> 8) & 0xff, - 2271 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2911 >> 8) & 0xff, + 2911 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, @@ -24194,10 +30827,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2274 >> 8) & 0xff, - 2274 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2915 >> 8) & 0xff, + 2915 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff, @@ -24212,10 +30845,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2277 >> 8) & 0xff, - 2277 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2919 >> 8) & 0xff, + 2919 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, @@ -24228,10 +30861,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2280 >> 8) & 0xff, - 2280 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2923 >> 8) & 0xff, + 2923 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff, @@ -24246,18 +30879,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2283 >> 8) & 0xff, - 2283 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2927 >> 8) & 0xff, + 2927 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (443 >> 8) & 0xff, - 443 & 0xff} + (475 >> 8) & 0xff, + 475 & 0xff} }, .field_info_spec = { .description = "tl3.ttl", @@ -24265,18 +30898,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2289 >> 8) & 0xff, - 2289 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2935 >> 8) & 0xff, + 2935 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_TTL >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_TTL & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (444 >> 8) & 0xff, - 444 & 0xff} + (476 >> 8) & 0xff, + 476 & 0xff} } }, { @@ -24286,18 +30919,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2295 >> 8) & 0xff, - 2295 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2943 >> 8) & 0xff, + 2943 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (445 >> 8) & 0xff, - 445 & 0xff} + (477 >> 8) & 0xff, + 477 & 0xff} }, .field_info_spec = { .description = "tl3.prot", @@ -24305,18 +30938,18 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_class_key_info_list[] = { .field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST, .field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND, .field_opr1 = { - (2301 >> 8) & 0xff, - 2301 & 0xff, - (3 >> 8) & 0xff, - 3 & 0xff}, + (2951 >> 8) & 0xff, + 2951 & 0xff, + (4 >> 8) & 0xff, + 4 & 0xff}, .field_src2 = BNXT_ULP_FIELD_SRC_HF, .field_opr2 = { (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff, BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}, .field_src3 = BNXT_ULP_FIELD_SRC_NEXT, .field_opr3 = { - (446 >> 8) & 0xff, - 446 & 0xff} + (478 >> 8) & 0xff, + 478