DPDK patches and discussions
 help / color / mirror / Atom feed
From: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
To: dev@dpdk.org
Cc: Kishore Padmanabha <kishore.padmanabha@broadcom.com>,
	Farah Smith <farah.smith@broadcom.com>,
	Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
Subject: [PATCH 37/47] net/bnxt: tf_ulp: add track type feature to tables
Date: Fri, 30 Aug 2024 19:30:39 +0530	[thread overview]
Message-ID: <20240830140049.1715230-38-sriharsha.basavapatna@broadcom.com> (raw)
In-Reply-To: <20240830140049.1715230-1-sriharsha.basavapatna@broadcom.com>

From: Kishore Padmanabha <kishore.padmanabha@broadcom.com>

Added track type field to the mapper tables so that resources
can be tracked by session id or function id. By default, the track type
is session id unless specified as function id.

This patch also includes a couple of additional changes.

action template consolidation for Thor/Thor2
	Reduced the number of action templates in order to reduce
	duplication and make more permutations of actions easier to
	handle going forward.

Change on GPE flow creation/deletion
	Corrected the tunnel type for GPE flow creation;
	Corrected the port number for GPE flow deletion.

This patch also updates template files for the following list
of changes, that are being added in this patch.

- add track type feature to tables
- action template consolidation for Thor/Thor2

Signed-off-by: Kishore Padmanabha <kishore.padmanabha@broadcom.com>
Reviewed-by: Farah Smith <farah.smith@broadcom.com>
Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
---
 drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c    |    2 +-
 drivers/net/bnxt/tf_ulp/bnxt_ulp.c            |   34 +
 drivers/net/bnxt/tf_ulp/bnxt_ulp.h            |   15 +
 drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c         |    4 +
 drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c        |    5 +
 .../generic_templates/ulp_template_db_act.c   |  153 +-
 .../generic_templates/ulp_template_db_class.c | 1134 ++-
 .../generic_templates/ulp_template_db_enum.h  |   52 +-
 .../generic_templates/ulp_template_db_tbl.c   |   65 +-
 .../generic_templates/ulp_template_db_tbl.h   |    9 +
 .../ulp_template_db_thor2_act.c               | 6465 ++++++++---------
 .../ulp_template_db_thor2_class.c             |   28 +
 .../ulp_template_db_thor_act.c                | 6425 ++++++----------
 .../ulp_template_db_thor_class.c              | 3925 +++++-----
 .../ulp_template_db_wh_plus_act.c             |  911 ++-
 .../ulp_template_db_wh_plus_class.c           |   29 +
 drivers/net/bnxt/tf_ulp/ulp_mapper.c          |    9 +-
 drivers/net/bnxt/tf_ulp/ulp_mapper.h          |    1 +
 drivers/net/bnxt/tf_ulp/ulp_mapper_tf.c       |    1 +
 drivers/net/bnxt/tf_ulp/ulp_mapper_tfc.c      |    6 +-
 drivers/net/bnxt/tf_ulp/ulp_matcher.c         |    8 +
 drivers/net/bnxt/tf_ulp/ulp_rte_parser.c      |    5 +
 drivers/net/bnxt/tf_ulp/ulp_template_struct.h |    4 +
 23 files changed, 8987 insertions(+), 10303 deletions(-)

diff --git a/drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c b/drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c
index b091c192c2..1817701d15 100644
--- a/drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c
+++ b/drivers/net/bnxt/tf_ulp/bnxt_tf_pmd_shim.c
@@ -603,7 +603,7 @@ bnxt_pmd_global_tunnel_set(struct bnxt_ulp_context *ulp_ctx,
 			rc = bnxt_hwrm_tunnel_dst_port_alloc(bp, udp_port,
 							     hwtype);
 		else
-			rc = bnxt_hwrm_tunnel_dst_port_free(bp, port_id,
+			rc = bnxt_hwrm_tunnel_dst_port_free(bp, ludp_port,
 							    hwtype);
 	}
 
diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c
index d258f51106..2b5f1dc4fd 100644
--- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.c
+++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.c
@@ -1127,6 +1127,40 @@ bnxt_ulp_cntxt_fid_get(struct bnxt_ulp_context *ulp, uint16_t *fid)
 	return 0;
 }
 
+void
+bnxt_ulp_cntxt_ptr2_default_class_bits_set(struct bnxt_ulp_context *ulp_ctx,
+					   uint64_t bits)
+{
+	if (!ulp_ctx || !ulp_ctx->cfg_data)
+		return;
+	ulp_ctx->cfg_data->default_class_bits = bits;
+}
+
+uint64_t
+bnxt_ulp_cntxt_ptr2_default_class_bits_get(struct bnxt_ulp_context *ulp_ctx)
+{
+	if (!ulp_ctx || !ulp_ctx->cfg_data)
+		return 0;
+	return ulp_ctx->cfg_data->default_class_bits;
+}
+
+void
+bnxt_ulp_cntxt_ptr2_default_act_bits_set(struct bnxt_ulp_context *ulp_ctx,
+					 uint64_t bits)
+{
+	if (!ulp_ctx || !ulp_ctx->cfg_data)
+		return;
+	ulp_ctx->cfg_data->default_act_bits = bits;
+}
+
+uint64_t
+bnxt_ulp_cntxt_ptr2_default_act_bits_get(struct bnxt_ulp_context *ulp_ctx)
+{
+	if (!ulp_ctx || !ulp_ctx->cfg_data)
+		return 0;
+	return ulp_ctx->cfg_data->default_act_bits;
+}
+
 /*
  * Get the device table entry based on the device id.
  *
diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h
index 4868339478..da5c9bc61a 100644
--- a/drivers/net/bnxt/tf_ulp/bnxt_ulp.h
+++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp.h
@@ -150,6 +150,8 @@ struct bnxt_ulp_data {
 	enum bnxt_ulp_session_type	def_session_type;
 	uint16_t			num_key_recipes_per_dir;
 	uint64_t			feature_bits;
+	uint64_t			default_class_bits;
+	uint64_t			default_act_bits;
 };
 
 enum bnxt_ulp_tfo_type {
@@ -624,4 +626,17 @@ bnxt_ulp_vfr_session_fid_rem(struct bnxt_ulp_context *ulp_ctx,
 int32_t
 bnxt_flow_mtr_init(struct bnxt *bp __rte_unused);
 
+void
+bnxt_ulp_cntxt_ptr2_default_class_bits_set(struct bnxt_ulp_context *ulp_ctx,
+					   uint64_t bits);
+
+uint64_t
+bnxt_ulp_cntxt_ptr2_default_class_bits_get(struct bnxt_ulp_context *ulp_ctx);
+
+void
+bnxt_ulp_cntxt_ptr2_default_act_bits_set(struct bnxt_ulp_context *ulp_ctx,
+					 uint64_t bits);
+uint64_t
+bnxt_ulp_cntxt_ptr2_default_act_bits_get(struct bnxt_ulp_context *ulp_ctx);
+
 #endif /* _BNXT_ULP_H_ */
diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c
index c7a712b8c8..5589e36db4 100644
--- a/drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c
+++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp_tf.c
@@ -475,6 +475,10 @@ ulp_tf_cntxt_app_caps_init(struct bnxt *bp,
 		bnxt_ulp_max_flow_priority_set(ulp_ctx,
 					       info[i].max_flow_priority);
 		ulp_ctx->cfg_data->feature_bits = info[i].feature_bits;
+		bnxt_ulp_cntxt_ptr2_default_class_bits_set(ulp_ctx,
+							   info[i].default_class_bits);
+		bnxt_ulp_cntxt_ptr2_default_act_bits_set(ulp_ctx,
+							 info[i].default_act_bits);
 	}
 	if (!found) {
 		BNXT_DRV_DBG(ERR, "APP ID %d, Device ID: 0x%x not supported.\n",
diff --git a/drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c b/drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c
index 42ad944b2c..0f98340564 100644
--- a/drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c
+++ b/drivers/net/bnxt/tf_ulp/bnxt_ulp_tfc.c
@@ -533,6 +533,11 @@ ulp_tfc_cntxt_app_caps_init(struct bnxt *bp, uint8_t app_id, uint32_t dev_id)
 					    "Socket Direct feature is enabled\n");
 			}
 		}
+		ulp_ctx->cfg_data->feature_bits = info[i].feature_bits;
+		bnxt_ulp_cntxt_ptr2_default_class_bits_set(ulp_ctx,
+							   info[i].default_class_bits);
+		bnxt_ulp_cntxt_ptr2_default_act_bits_set(ulp_ctx,
+							 info[i].default_act_bits);
 
 		rc = bnxt_ulp_cntxt_tbl_scope_max_pools_set(ulp_ctx,
 							    info[i].max_pools);
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c
index 1288db9974..01fa5a40be 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_act.c
@@ -12,22 +12,31 @@
 struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
 	[1] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_DROP |
+		BNXT_ULP_ACT_BIT_COUNT |
+		BNXT_ULP_ACT_BIT_RSS |
+		BNXT_ULP_ACT_BIT_QUEUE |
 		BNXT_ULP_ACT_BIT_POP_VLAN |
 		BNXT_ULP_ACT_BIT_DEC_TTL |
+		BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+		BNXT_ULP_ACT_BIT_SET_MAC_DST |
+		BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+		BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+		BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+		BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+		BNXT_ULP_ACT_BIT_SET_TP_SRC |
+		BNXT_ULP_ACT_BIT_SET_TP_DST |
 		BNXT_ULP_ACT_BIT_VXLAN_DECAP |
 		BNXT_ULP_ACT_BIT_GENEVE_DECAP |
-		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_ACT_BIT_METER |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
-		BNXT_ULP_ACT_BIT_SET_MAC_SRC |
-		BNXT_ULP_ACT_BIT_SET_MAC_DST |
-		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
 	.act_tid = 1
 	},
 	[2] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_JUMP |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
@@ -35,21 +44,43 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
 	},
 	[3] = {
 	.act_bitmap = { .bits =
-		BNXT_ULP_ACT_BIT_SHARED |
-		BNXT_ULP_ACT_BIT_SAMPLE |
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_DROP |
+		BNXT_ULP_ACT_BIT_POP_VLAN |
+		BNXT_ULP_ACT_BIT_DEC_TTL |
+		BNXT_ULP_ACT_BIT_VXLAN_DECAP |
+		BNXT_ULP_ACT_BIT_GENEVE_DECAP |
 		BNXT_ULP_ACT_BIT_COUNT |
+		BNXT_ULP_ACT_BIT_METER |
+		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
+		BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+		BNXT_ULP_ACT_BIT_SET_MAC_DST |
+		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
 	.act_tid = 2
 	},
 	[4] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
+		BNXT_ULP_ACT_BIT_SHARED |
+		BNXT_ULP_ACT_BIT_SAMPLE |
+		BNXT_ULP_ACT_BIT_COUNT |
+		BNXT_ULP_FLOW_DIR_BITMASK_ING },
+	.act_tid = 3
+	},
+	[5] = {
+	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_DELETE |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 2
+	.act_tid = 3
 	},
-	[5] = {
+	[6] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_ACT_BIT_DEC_TTL |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
@@ -63,72 +94,110 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
 		BNXT_ULP_ACT_BIT_SET_TP_SRC |
 		BNXT_ULP_ACT_BIT_SET_TP_DST |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 3
+	.act_tid = 4
 	},
-	[6] = {
+	[7] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
 		BNXT_ULP_ACT_BIT_RSS |
 		BNXT_ULP_ACT_BIT_QUEUE |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 4
+	.act_tid = 5
 	},
-	[7] = {
+	[8] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_METER_PROFILE |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 5
+	.act_tid = 6
 	},
-	[8] = {
+	[9] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_SHARED_METER |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 5
+	.act_tid = 6
 	},
-	[9] = {
+	[10] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_DELETE |
 		BNXT_ULP_ACT_BIT_METER_PROFILE |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 5
+	.act_tid = 6
 	},
-	[10] = {
+	[11] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_DELETE |
 		BNXT_ULP_ACT_BIT_SHARED_METER |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 5
+	.act_tid = 6
 	},
-	[11] = {
+	[12] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_UPDATE |
 		BNXT_ULP_ACT_BIT_SHARED_METER |
 		BNXT_ULP_FLOW_DIR_BITMASK_ING },
-	.act_tid = 5
+	.act_tid = 6
 	},
-	[12] = {
+	[13] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_DROP |
-		BNXT_ULP_ACT_BIT_SET_VLAN_PCP |
-		BNXT_ULP_ACT_BIT_SET_VLAN_VID |
-		BNXT_ULP_ACT_BIT_PUSH_VLAN |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_ACT_BIT_DEC_TTL |
+		BNXT_ULP_ACT_BIT_VF_TO_VF |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
-		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
+		BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+		BNXT_ULP_ACT_BIT_SET_MAC_DST |
+		BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+		BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+		BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+		BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+		BNXT_ULP_ACT_BIT_SET_TP_SRC |
+		BNXT_ULP_ACT_BIT_SET_TP_DST |
+		BNXT_ULP_ACT_BIT_PUSH_VLAN |
+		BNXT_ULP_ACT_BIT_SET_VLAN_PCP |
+		BNXT_ULP_ACT_BIT_SET_VLAN_VID |
+		BNXT_ULP_ACT_BIT_VXLAN_ENCAP |
+		BNXT_ULP_ACT_BIT_GENEVE_ENCAP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 6
+	.act_tid = 7
 	},
-	[13] = {
+	[14] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_JUMP |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 6
+	.act_tid = 7
 	},
-	[14] = {
+	[15] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_DROP |
+		BNXT_ULP_ACT_BIT_SET_VLAN_PCP |
+		BNXT_ULP_ACT_BIT_SET_VLAN_VID |
+		BNXT_ULP_ACT_BIT_PUSH_VLAN |
+		BNXT_ULP_ACT_BIT_COUNT |
+		BNXT_ULP_ACT_BIT_DEC_TTL |
+		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
+		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.act_tid = 8
+	},
+	[16] = {
+	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_ACT_BIT_SET_MAC_SRC |
 		BNXT_ULP_ACT_BIT_SET_MAC_DST |
@@ -142,10 +211,11 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
 		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 7
+	.act_tid = 9
 	},
-	[15] = {
+	[17] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
 		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
 		BNXT_ULP_ACT_BIT_SET_MAC_SRC |
@@ -154,32 +224,37 @@ struct bnxt_ulp_act_match_info ulp_act_match_list[] = {
 		BNXT_ULP_ACT_BIT_GENEVE_ENCAP |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 8
+	.act_tid = 10
 	},
-	[16] = {
+	[18] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
 		BNXT_ULP_ACT_BIT_MULTIPLE_PORT |
 		BNXT_ULP_ACT_BIT_VF_TO_VF |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 9
+	.act_tid = 11
 	},
-	[17] = {
+	[19] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_SHARED |
 		BNXT_ULP_ACT_BIT_SAMPLE |
 		BNXT_ULP_ACT_BIT_VF_TO_VF |
 		BNXT_ULP_ACT_BIT_COUNT |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 10
+	.act_tid = 12
 	},
-	[18] = {
+	[20] = {
 	.act_bitmap = { .bits =
+		BNXT_ULP_ACT_BIT_NON_GENERIC |
+		BNXT_ULP_ACT_BIT_GENERIC |
 		BNXT_ULP_ACT_BIT_DELETE |
 		BNXT_ULP_ACT_BIT_SHARED_SAMPLE |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
-	.act_tid = 10
+	.act_tid = 12
 	}
 };
 
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c
index a14c4c2e6f..cf5cfec692 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_class.c
@@ -5047,15 +5047,742 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 	},
 	[126] = {
 	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A100000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[52] = 5,
+		[54] = 6,
+		[56] = 7,
+		[58] = 8,
+		[60] = 9,
+		[62] = 10,
+		[64] = 11,
+		[66] = 12,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[127] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB006840000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[128] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A170000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 21,
+		[8] = 3,
+		[9] = 22,
+		[10] = 4,
+		[11] = 23,
+		[52] = 5,
+		[54] = 6,
+		[56] = 7,
+		[58] = 8,
+		[60] = 9,
+		[62] = 10,
+		[64] = 11,
+		[66] = 12,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[129] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB00685C000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 23,
+		[8] = 3,
+		[9] = 24,
+		[10] = 4,
+		[11] = 25,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[130] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A105800000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[52] = 5,
+		[53] = 21,
+		[54] = 6,
+		[55] = 22,
+		[56] = 7,
+		[57] = 23,
+		[58] = 8,
+		[59] = 24,
+		[60] = 9,
+		[61] = 25,
+		[62] = 10,
+		[63] = 26,
+		[64] = 11,
+		[65] = 27,
+		[66] = 12,
+		[67] = 28,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[131] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB006841600000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[53] = 23,
+		[55] = 24,
+		[57] = 25,
+		[59] = 26,
+		[61] = 27,
+		[63] = 28,
+		[65] = 29,
+		[67] = 30,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[132] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_IPV4 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A101600000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[33] = 21,
+		[35] = 22,
+		[37] = 23,
+		[39] = 24,
+		[41] = 25,
+		[43] = 26,
+		[45] = 27,
+		[47] = 28,
+		[49] = 29,
+		[51] = 30,
+		[52] = 5,
+		[54] = 6,
+		[56] = 7,
+		[58] = 8,
+		[60] = 9,
+		[62] = 10,
+		[64] = 11,
+		[66] = 12,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[133] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_IPV4 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB006840580000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[32] = 5,
+		[33] = 23,
+		[34] = 6,
+		[35] = 24,
+		[36] = 7,
+		[37] = 25,
+		[38] = 8,
+		[39] = 26,
+		[40] = 9,
+		[41] = 27,
+		[42] = 10,
+		[43] = 28,
+		[44] = 11,
+		[45] = 29,
+		[46] = 12,
+		[47] = 30,
+		[48] = 13,
+		[49] = 31,
+		[50] = 14,
+		[51] = 32,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[134] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A170B00000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 21,
+		[8] = 3,
+		[9] = 22,
+		[10] = 4,
+		[11] = 23,
+		[52] = 5,
+		[53] = 24,
+		[54] = 6,
+		[55] = 25,
+		[56] = 7,
+		[57] = 26,
+		[58] = 8,
+		[59] = 27,
+		[60] = 9,
+		[61] = 28,
+		[62] = 10,
+		[63] = 29,
+		[64] = 11,
+		[65] = 30,
+		[66] = 12,
+		[67] = 31,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[135] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB00685C2C0000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 23,
+		[8] = 3,
+		[9] = 24,
+		[10] = 4,
+		[11] = 25,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[53] = 26,
+		[55] = 27,
+		[57] = 28,
+		[59] = 29,
+		[61] = 30,
+		[63] = 31,
+		[65] = 32,
+		[67] = 33,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[136] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_IPV4 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A1702C0000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 21,
+		[8] = 3,
+		[9] = 22,
+		[10] = 4,
+		[11] = 23,
+		[33] = 24,
+		[35] = 25,
+		[37] = 26,
+		[39] = 27,
+		[41] = 28,
+		[43] = 29,
+		[45] = 30,
+		[47] = 31,
+		[49] = 32,
+		[51] = 33,
+		[52] = 5,
+		[54] = 6,
+		[56] = 7,
+		[58] = 8,
+		[60] = 9,
+		[62] = 10,
+		[64] = 11,
+		[66] = 12,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[137] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_IPV4 |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB00685C0B0000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 23,
+		[8] = 3,
+		[9] = 24,
+		[10] = 4,
+		[11] = 25,
+		[32] = 5,
+		[33] = 26,
+		[34] = 6,
+		[35] = 27,
+		[36] = 7,
+		[37] = 28,
+		[38] = 8,
+		[39] = 29,
+		[40] = 9,
+		[41] = 30,
+		[42] = 10,
+		[43] = 31,
+		[44] = 11,
+		[45] = 32,
+		[46] = 12,
+		[47] = 33,
+		[48] = 13,
+		[49] = 34,
+		[50] = 14,
+		[51] = 35,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[138] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_TCP |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A160000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[52] = 5,
+		[54] = 6,
+		[56] = 7,
+		[58] = 8,
+		[60] = 9,
+		[62] = 10,
+		[64] = 11,
+		[66] = 12,
+		[83] = 21,
+		[85] = 22,
+		[87] = 23,
+		[89] = 24,
+		[91] = 25,
+		[93] = 26,
+		[95] = 27,
+		[97] = 28,
+		[99] = 29,
+		[100] = 13,
+		[102] = 14,
+		[104] = 15,
+		[106] = 16,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[139] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_TCP |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB006858000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[83] = 23,
+		[85] = 24,
+		[87] = 25,
+		[89] = 26,
+		[91] = 27,
+		[93] = 28,
+		[95] = 29,
+		[97] = 30,
+		[99] = 31,
+		[100] = 15,
+		[102] = 16,
+		[104] = 17,
+		[106] = 18,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[140] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_UDP |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A160000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[52] = 5,
+		[54] = 6,
+		[56] = 7,
+		[58] = 8,
+		[60] = 9,
+		[62] = 10,
+		[64] = 11,
+		[66] = 12,
+		[100] = 13,
+		[101] = 21,
+		[102] = 14,
+		[103] = 22,
+		[104] = 15,
+		[105] = 23,
+		[106] = 16,
+		[107] = 24,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[141] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_UDP |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB006858000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[100] = 15,
+		[101] = 23,
+		[102] = 16,
+		[103] = 24,
+		[104] = 17,
+		[105] = 25,
+		[106] = 18,
+		[107] = 26,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[142] = {
+	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV6 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
 		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A170000000000,
+	.field_opt_bitmap = 0xB01A17C000000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5075,6 +5802,15 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[62] = 10,
 		[64] = 11,
 		[66] = 12,
+		[83] = 24,
+		[85] = 25,
+		[87] = 26,
+		[89] = 27,
+		[91] = 28,
+		[93] = 29,
+		[95] = 30,
+		[97] = 31,
+		[99] = 32,
 		[100] = 13,
 		[102] = 14,
 		[104] = 15,
@@ -5085,7 +5821,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[127] = {
+	[143] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5093,9 +5829,10 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
 		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C000000000,
+	.field_opt_bitmap = 0xB00685F000000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5117,6 +5854,15 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[46] = 12,
 		[48] = 13,
 		[50] = 14,
+		[83] = 26,
+		[85] = 27,
+		[87] = 28,
+		[89] = 29,
+		[91] = 30,
+		[93] = 31,
+		[95] = 32,
+		[97] = 33,
+		[99] = 34,
 		[100] = 15,
 		[102] = 16,
 		[104] = 17,
@@ -5127,7 +5873,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[128] = {
+	[144] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5135,10 +5881,10 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
 		BNXT_ULP_HDR_BIT_I_ETH |
-		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A170B00000000,
+	.field_opt_bitmap = 0xB01A17C000000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5151,21 +5897,119 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[10] = 4,
 		[11] = 23,
 		[52] = 5,
-		[53] = 24,
 		[54] = 6,
-		[55] = 25,
 		[56] = 7,
-		[57] = 26,
 		[58] = 8,
-		[59] = 27,
 		[60] = 9,
-		[61] = 28,
 		[62] = 10,
-		[63] = 29,
 		[64] = 11,
-		[65] = 30,
 		[66] = 12,
-		[67] = 31,
+		[100] = 13,
+		[101] = 24,
+		[102] = 14,
+		[103] = 25,
+		[104] = 15,
+		[105] = 26,
+		[106] = 16,
+		[107] = 27,
+		[120] = 17,
+		[121] = 18,
+		[122] = 19,
+		[123] = 20,
+		},
+	},
+	[145] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV4 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_UDP |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB00685F000000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[7] = 23,
+		[8] = 3,
+		[9] = 24,
+		[10] = 4,
+		[11] = 25,
+		[32] = 5,
+		[34] = 6,
+		[36] = 7,
+		[38] = 8,
+		[40] = 9,
+		[42] = 10,
+		[44] = 11,
+		[46] = 12,
+		[48] = 13,
+		[50] = 14,
+		[100] = 15,
+		[101] = 26,
+		[102] = 16,
+		[103] = 27,
+		[104] = 17,
+		[105] = 28,
+		[106] = 18,
+		[107] = 29,
+		[120] = 19,
+		[121] = 20,
+		[122] = 21,
+		[123] = 22,
+		},
+	},
+	[146] = {
+	.app_id = 0,
+	.hdr_bitmap = { .bits =
+		BNXT_ULP_HDR_BIT_O_ETH |
+		BNXT_ULP_HDR_BIT_O_IPV6 |
+		BNXT_ULP_HDR_BIT_O_UDP |
+		BNXT_ULP_HDR_BIT_T_VXLAN |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_HDR_BIT_I_TCP |
+		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
+	.field_man_bitmap = 0x0,
+	.field_opt_bitmap = 0xB01A105E00000000,
+	.field_exclude_bitmap = 0x0,
+	.class_tid = 2,
+	.flow_pattern_id = 1,
+	.field_list = {
+		[1] = 1,
+		[6] = 2,
+		[8] = 3,
+		[10] = 4,
+		[52] = 5,
+		[53] = 21,
+		[54] = 6,
+		[55] = 22,
+		[56] = 7,
+		[57] = 23,
+		[58] = 8,
+		[59] = 24,
+		[60] = 9,
+		[61] = 25,
+		[62] = 10,
+		[63] = 26,
+		[64] = 11,
+		[65] = 27,
+		[66] = 12,
+		[67] = 28,
+		[83] = 29,
+		[85] = 30,
+		[87] = 31,
+		[89] = 32,
+		[91] = 33,
+		[93] = 34,
+		[95] = 35,
+		[97] = 36,
+		[99] = 37,
 		[100] = 13,
 		[102] = 14,
 		[104] = 15,
@@ -5176,29 +6020,26 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[129] = {
+	[147] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV4 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
 		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C2C0000000,
+	.field_opt_bitmap = 0xB006841780000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 23,
 		[8] = 3,
-		[9] = 24,
 		[10] = 4,
-		[11] = 25,
 		[32] = 5,
 		[34] = 6,
 		[36] = 7,
@@ -5209,14 +6050,23 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[46] = 12,
 		[48] = 13,
 		[50] = 14,
-		[53] = 26,
-		[55] = 27,
-		[57] = 28,
-		[59] = 29,
-		[61] = 30,
-		[63] = 31,
-		[65] = 32,
-		[67] = 33,
+		[53] = 23,
+		[55] = 24,
+		[57] = 25,
+		[59] = 26,
+		[61] = 27,
+		[63] = 28,
+		[65] = 29,
+		[67] = 30,
+		[83] = 31,
+		[85] = 32,
+		[87] = 33,
+		[89] = 34,
+		[91] = 35,
+		[93] = 36,
+		[95] = 37,
+		[97] = 38,
+		[99] = 39,
 		[100] = 15,
 		[102] = 16,
 		[104] = 17,
@@ -5227,39 +6077,36 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[130] = {
+	[148] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV6 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
 		BNXT_ULP_HDR_BIT_I_IPV4 |
+		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A1702C0000000,
+	.field_opt_bitmap = 0xB01A101780000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 21,
 		[8] = 3,
-		[9] = 22,
 		[10] = 4,
-		[11] = 23,
-		[33] = 24,
-		[35] = 25,
-		[37] = 26,
-		[39] = 27,
-		[41] = 28,
-		[43] = 29,
-		[45] = 30,
-		[47] = 31,
-		[49] = 32,
-		[51] = 33,
+		[33] = 21,
+		[35] = 22,
+		[37] = 23,
+		[39] = 24,
+		[41] = 25,
+		[43] = 26,
+		[45] = 27,
+		[47] = 28,
+		[49] = 29,
+		[51] = 30,
 		[52] = 5,
 		[54] = 6,
 		[56] = 7,
@@ -5268,6 +6115,15 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[62] = 10,
 		[64] = 11,
 		[66] = 12,
+		[83] = 31,
+		[85] = 32,
+		[87] = 33,
+		[89] = 34,
+		[91] = 35,
+		[93] = 36,
+		[95] = 37,
+		[97] = 38,
+		[99] = 39,
 		[100] = 13,
 		[102] = 14,
 		[104] = 15,
@@ -5278,49 +6134,55 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[131] = {
+	[149] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV4 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
 		BNXT_ULP_HDR_BIT_I_IPV4 |
+		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C0B0000000,
+	.field_opt_bitmap = 0xB0068405E0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 23,
 		[8] = 3,
-		[9] = 24,
 		[10] = 4,
-		[11] = 25,
 		[32] = 5,
-		[33] = 26,
+		[33] = 23,
 		[34] = 6,
-		[35] = 27,
+		[35] = 24,
 		[36] = 7,
-		[37] = 28,
+		[37] = 25,
 		[38] = 8,
-		[39] = 29,
+		[39] = 26,
 		[40] = 9,
-		[41] = 30,
+		[41] = 27,
 		[42] = 10,
-		[43] = 31,
+		[43] = 28,
 		[44] = 11,
-		[45] = 32,
+		[45] = 29,
 		[46] = 12,
-		[47] = 33,
+		[47] = 30,
 		[48] = 13,
-		[49] = 34,
+		[49] = 31,
 		[50] = 14,
-		[51] = 35,
+		[51] = 32,
+		[83] = 33,
+		[85] = 34,
+		[87] = 35,
+		[89] = 36,
+		[91] = 37,
+		[93] = 38,
+		[95] = 39,
+		[97] = 40,
+		[99] = 41,
 		[100] = 15,
 		[102] = 16,
 		[104] = 17,
@@ -5331,79 +6193,76 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[132] = {
+	[150] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV6 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
-		BNXT_ULP_HDR_BIT_I_TCP |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A17C000000000,
+	.field_opt_bitmap = 0xB01A105E00000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 21,
 		[8] = 3,
-		[9] = 22,
 		[10] = 4,
-		[11] = 23,
 		[52] = 5,
+		[53] = 21,
 		[54] = 6,
+		[55] = 22,
 		[56] = 7,
+		[57] = 23,
 		[58] = 8,
+		[59] = 24,
 		[60] = 9,
+		[61] = 25,
 		[62] = 10,
+		[63] = 26,
 		[64] = 11,
+		[65] = 27,
 		[66] = 12,
-		[83] = 24,
-		[85] = 25,
-		[87] = 26,
-		[89] = 27,
-		[91] = 28,
-		[93] = 29,
-		[95] = 30,
-		[97] = 31,
-		[99] = 32,
+		[67] = 28,
 		[100] = 13,
+		[101] = 29,
 		[102] = 14,
+		[103] = 30,
 		[104] = 15,
+		[105] = 31,
 		[106] = 16,
+		[107] = 32,
 		[120] = 17,
 		[121] = 18,
 		[122] = 19,
 		[123] = 20,
 		},
 	},
-	[133] = {
+	[151] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV4 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
-		BNXT_ULP_HDR_BIT_I_TCP |
+		BNXT_ULP_HDR_BIT_I_IPV6 |
+		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285F000000000,
+	.field_opt_bitmap = 0xB006841780000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 23,
 		[8] = 3,
-		[9] = 24,
 		[10] = 4,
-		[11] = 25,
 		[32] = 5,
 		[34] = 6,
 		[36] = 7,
@@ -5414,48 +6273,58 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[46] = 12,
 		[48] = 13,
 		[50] = 14,
-		[83] = 26,
-		[85] = 27,
-		[87] = 28,
-		[89] = 29,
-		[91] = 30,
-		[93] = 31,
-		[95] = 32,
-		[97] = 33,
-		[99] = 34,
+		[53] = 23,
+		[55] = 24,
+		[57] = 25,
+		[59] = 26,
+		[61] = 27,
+		[63] = 28,
+		[65] = 29,
+		[67] = 30,
 		[100] = 15,
+		[101] = 31,
 		[102] = 16,
+		[103] = 32,
 		[104] = 17,
+		[105] = 33,
 		[106] = 18,
+		[107] = 34,
 		[120] = 19,
 		[121] = 20,
 		[122] = 21,
 		[123] = 22,
 		},
 	},
-	[134] = {
+	[152] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV6 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_IPV4 |
 		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A17C000000000,
+	.field_opt_bitmap = 0xB01A101780000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 21,
 		[8] = 3,
-		[9] = 22,
 		[10] = 4,
-		[11] = 23,
+		[33] = 21,
+		[35] = 22,
+		[37] = 23,
+		[39] = 24,
+		[41] = 25,
+		[43] = 26,
+		[45] = 27,
+		[47] = 28,
+		[49] = 29,
+		[51] = 30,
 		[52] = 5,
 		[54] = 6,
 		[56] = 7,
@@ -5465,67 +6334,74 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[64] = 11,
 		[66] = 12,
 		[100] = 13,
-		[101] = 24,
+		[101] = 31,
 		[102] = 14,
-		[103] = 25,
+		[103] = 32,
 		[104] = 15,
-		[105] = 26,
+		[105] = 33,
 		[106] = 16,
-		[107] = 27,
+		[107] = 34,
 		[120] = 17,
 		[121] = 18,
 		[122] = 19,
 		[123] = 20,
 		},
 	},
-	[135] = {
+	[153] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
 		BNXT_ULP_HDR_BIT_O_IPV4 |
 		BNXT_ULP_HDR_BIT_O_UDP |
 		BNXT_ULP_HDR_BIT_T_VXLAN |
-		BNXT_ULP_HDR_BIT_I_ETH |
+		BNXT_ULP_HDR_BIT_I_IPV4 |
 		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285F000000000,
+	.field_opt_bitmap = 0xB0068405E0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
 	.field_list = {
 		[1] = 1,
 		[6] = 2,
-		[7] = 23,
 		[8] = 3,
-		[9] = 24,
 		[10] = 4,
-		[11] = 25,
 		[32] = 5,
+		[33] = 23,
 		[34] = 6,
+		[35] = 24,
 		[36] = 7,
+		[37] = 25,
 		[38] = 8,
+		[39] = 26,
 		[40] = 9,
+		[41] = 27,
 		[42] = 10,
+		[43] = 28,
 		[44] = 11,
+		[45] = 29,
 		[46] = 12,
+		[47] = 30,
 		[48] = 13,
+		[49] = 31,
 		[50] = 14,
+		[51] = 32,
 		[100] = 15,
-		[101] = 26,
+		[101] = 33,
 		[102] = 16,
-		[103] = 27,
+		[103] = 34,
 		[104] = 17,
-		[105] = 28,
+		[105] = 35,
 		[106] = 18,
-		[107] = 29,
+		[107] = 36,
 		[120] = 19,
 		[121] = 20,
 		[122] = 21,
 		[123] = 22,
 		},
 	},
-	[136] = {
+	[154] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5537,7 +6413,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A170BC0000000,
+	.field_opt_bitmap = 0xB01A170BC0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5584,7 +6460,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[137] = {
+	[155] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5596,7 +6472,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C2F0000000,
+	.field_opt_bitmap = 0xB00685C2F0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5645,7 +6521,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[138] = {
+	[156] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5657,7 +6533,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A1702F0000000,
+	.field_opt_bitmap = 0xB01A1702F0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5706,7 +6582,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[139] = {
+	[157] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5718,7 +6594,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_TCP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C0BC000000,
+	.field_opt_bitmap = 0xB00685C0BC000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5769,7 +6645,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[140] = {
+	[158] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5781,7 +6657,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A170BC0000000,
+	.field_opt_bitmap = 0xB01A170BC0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5823,7 +6699,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[141] = {
+	[159] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5835,7 +6711,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C2F0000000,
+	.field_opt_bitmap = 0xB00685C2F0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5879,7 +6755,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[142] = {
+	[160] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5891,7 +6767,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00A1702F0000000,
+	.field_opt_bitmap = 0xB01A1702F0000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5935,7 +6811,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 20,
 		},
 	},
-	[143] = {
+	[161] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
@@ -5947,7 +6823,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		BNXT_ULP_HDR_BIT_I_UDP |
 		BNXT_ULP_FLOW_DIR_BITMASK_EGR },
 	.field_man_bitmap = 0x0,
-	.field_opt_bitmap = 0xB00285C0BC000000,
+	.field_opt_bitmap = 0xB00685C0BC000000,
 	.field_exclude_bitmap = 0x0,
 	.class_tid = 2,
 	.flow_pattern_id = 1,
@@ -5993,7 +6869,7 @@ struct bnxt_ulp_class_match_info ulp_class_match_list[] = {
 		[123] = 22,
 		},
 	},
-	[144] = {
+	[162] = {
 	.app_id = 0,
 	.hdr_bitmap = { .bits =
 		BNXT_ULP_HDR_BIT_O_ETH |
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 ee1d861dd1..896b3e2802 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
@@ -11,8 +11,8 @@
 #define BNXT_ULP_LOG2_MAX_NUM_DEV 2.32192809488736
 #define BNXT_ULP_GEN_TBL_MAX_SZ 56
 #define BNXT_ULP_ALLOCATOR_TBL_MAX_SZ 2
-#define BNXT_ULP_CLASS_MATCH_LIST_MAX_SZ 145
-#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 19
+#define BNXT_ULP_CLASS_MATCH_LIST_MAX_SZ 163
+#define BNXT_ULP_ACT_MATCH_LIST_MAX_SZ 21
 #define BNXT_ULP_APP_RESOURCE_RESV_LIST_MAX_SZ 0
 #define BNXT_ULP_GLB_RESOURCE_TBL_MAX_SZ 57
 #define BNXT_ULP_APP_GLB_RESOURCE_TBL_MAX_SZ 0
@@ -35,9 +35,9 @@
 #define ULP_THOR_CLASS_TBL_LIST_SIZE 175
 #define ULP_THOR_CLASS_KEY_INFO_LIST_SIZE 717
 #define ULP_THOR_CLASS_KEY_EXT_LIST_SIZE 628
-#define ULP_THOR_CLASS_IDENT_LIST_SIZE 53
+#define ULP_THOR_CLASS_IDENT_LIST_SIZE 52
 #define ULP_THOR_CLASS_RESULT_FIELD_LIST_SIZE 1280
-#define ULP_THOR_CLASS_COND_LIST_SIZE 3828
+#define ULP_THOR_CLASS_COND_LIST_SIZE 3834
 #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
@@ -47,29 +47,29 @@
 #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_WH_PLUS_ACT_TMPL_LIST_SIZE 11
-#define ULP_WH_PLUS_ACT_TBL_LIST_SIZE 154
+#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
 #define ULP_WH_PLUS_ACT_KEY_EXT_LIST_SIZE 0
 #define ULP_WH_PLUS_ACT_IDENT_LIST_SIZE 20
 #define ULP_WH_PLUS_ACT_RESULT_FIELD_LIST_SIZE 995
 #define ULP_WH_PLUS_ACT_COND_LIST_SIZE 134
 #define ULP_WH_PLUS_ACT_COND_OPER_LIST_SIZE 6
-#define ULP_THOR_ACT_TMPL_LIST_SIZE 11
-#define ULP_THOR_ACT_TBL_LIST_SIZE 117
-#define ULP_THOR_ACT_KEY_INFO_LIST_SIZE 88
-#define ULP_THOR_ACT_KEY_EXT_LIST_SIZE 0
-#define ULP_THOR_ACT_IDENT_LIST_SIZE 24
-#define ULP_THOR_ACT_RESULT_FIELD_LIST_SIZE 644
-#define ULP_THOR_ACT_COND_LIST_SIZE 111
-#define ULP_THOR_ACT_COND_OPER_LIST_SIZE 2
-#define ULP_THOR2_ACT_TMPL_LIST_SIZE 11
-#define ULP_THOR2_ACT_TBL_LIST_SIZE 109
-#define ULP_THOR2_ACT_KEY_INFO_LIST_SIZE 64
-#define ULP_THOR2_ACT_KEY_EXT_LIST_SIZE 0
-#define ULP_THOR2_ACT_IDENT_LIST_SIZE 37
-#define ULP_THOR2_ACT_RESULT_FIELD_LIST_SIZE 591
-#define ULP_THOR2_ACT_COND_LIST_SIZE 86
+#define ULP_THOR_ACT_TMPL_LIST_SIZE 13
+#define ULP_THOR_ACT_TBL_LIST_SIZE 104
+#define ULP_THOR_ACT_KEY_INFO_LIST_SIZE 83
+#define ULP_THOR_ACT_KEY_EXT_LIST_SIZE 5
+#define ULP_THOR_ACT_IDENT_LIST_SIZE 19
+#define ULP_THOR_ACT_RESULT_FIELD_LIST_SIZE 416
+#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_COND_OPER_LIST_SIZE 0
 
 enum bnxt_ulp_act_bit {
@@ -115,7 +115,9 @@ enum bnxt_ulp_act_bit {
 	BNXT_ULP_ACT_BIT_GENEVE_DECAP        = 0x0000008000000000,
 	BNXT_ULP_ACT_BIT_GENEVE_ENCAP        = 0x0000010000000000,
 	BNXT_ULP_ACT_BIT_MULTIPLE_PORT       = 0x0000020000000000,
-	BNXT_ULP_ACT_BIT_LAST                = 0x0000040000000000
+	BNXT_ULP_ACT_BIT_NON_GENERIC         = 0x0000040000000000,
+	BNXT_ULP_ACT_BIT_GENERIC             = 0x0000080000000000,
+	BNXT_ULP_ACT_BIT_LAST                = 0x0000100000000000
 };
 
 enum bnxt_ulp_cf_bit {
@@ -177,7 +179,9 @@ enum bnxt_ulp_hdr_bit {
 	BNXT_ULP_HDR_BIT_L2_ONLY             = 0x0000000080000000,
 	BNXT_ULP_HDR_BIT_O_L4_FLOW           = 0x0000000100000000,
 	BNXT_ULP_HDR_BIT_I_L4_FLOW           = 0x0000000200000000,
-	BNXT_ULP_HDR_BIT_LAST                = 0x0000000400000000
+	BNXT_ULP_HDR_BIT_NON_GENERIC         = 0x0000000400000000,
+	BNXT_ULP_HDR_BIT_GENERIC             = 0x0000000800000000,
+	BNXT_ULP_HDR_BIT_LAST                = 0x0000001000000000
 };
 
 enum bnxt_ulp_accept_opc {
@@ -928,7 +932,7 @@ enum bnxt_ulp_feature_bit {
 };
 
 enum bnxt_ulp_flow_dir_bitmask {
-	BNXT_ULP_FLOW_DIR_BITMASK_ING = 0x0000000000000000,
+	BNXT_ULP_FLOW_DIR_BITMASK_ING = 0x4000000000000000,
 	BNXT_ULP_FLOW_DIR_BITMASK_EGR = 0x8000000000000000
 };
 
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 daf649ab29..4afc41a466 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
@@ -1423,13 +1423,13 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = {
 		BNXT_ULP_DIRECTION_EGRESS] = {
 	.name = "EGRESS GENERIC_TABLE_SHARED_MIRROR",
 	.gen_tbl_type = BNXT_ULP_GEN_TBL_TYPE_KEY_LIST,
-	.result_num_entries = 0,
-	.result_num_bytes = 0,
-	.key_num_bytes = 0,
+	.result_num_entries = 32,
+	.result_num_bytes = 5,
+	.key_num_bytes = 1,
 	.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_MAC_ADDR_CACHE << 1 |
 		BNXT_ULP_DIRECTION_INGRESS] = {
@@ -1591,13 +1591,13 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = {
 		BNXT_ULP_DIRECTION_EGRESS] = {
 	.name = "EGRESS GENERIC_TABLE_VXLAN_ENCAP_IPV6_REC_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 = 4096,
+	.result_num_bytes = 8,
+	.key_num_bytes = 30,
 	.partial_key_num_bytes = 0,
-	.num_buckets = 0,
-	.hash_tbl_entries = 0,
-	.result_byte_order = BNXT_ULP_BYTE_ORDER_LE,
+	.num_buckets = 8,
+	.hash_tbl_entries = 16384,
+	.result_byte_order = BNXT_ULP_BYTE_ORDER_LE
 	},
 	[BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_IPV6_CACHE << 1 |
 		BNXT_ULP_DIRECTION_INGRESS] = {
@@ -1939,25 +1939,25 @@ const struct bnxt_ulp_generic_tbl_params ulp_thor2_generic_tbl_params[] = {
 		BNXT_ULP_DIRECTION_INGRESS] = {
 	.name = "INGRESS GENERIC_TABLE_FLOW_CHAIN_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 = 32,
+	.result_num_bytes = 8,
+	.key_num_bytes = 4,
 	.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 = 128,
+	.result_byte_order = BNXT_ULP_BYTE_ORDER_LE
 	},
 	[BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_CACHE << 1 |
 		BNXT_ULP_DIRECTION_EGRESS] = {
 	.name = "EGRESS GENERIC_TABLE_FLOW_CHAIN_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 = 32,
+	.result_num_bytes = 8,
+	.key_num_bytes = 4,
 	.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 = 128,
+	.result_byte_order = BNXT_ULP_BYTE_ORDER_LE
 	},
 	[BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_FLOW_CHAIN_L2_CNTXT << 1 |
 		BNXT_ULP_DIRECTION_INGRESS] = {
@@ -2063,12 +2063,12 @@ const struct bnxt_ulp_allocator_tbl_params ulp_thor2_allocator_tbl_params[] = {
 	[BNXT_ULP_RESOURCE_SUB_TYPE_ALLOCATOR_TABLE_JUMP_INDEX << 1 |
 		BNXT_ULP_DIRECTION_INGRESS] = {
 	.name = "INGRESS ALLOCATOR_TABLE_JUMP_INDEX",
-	.num_entries = 0,
+	.num_entries = 32,
 	},
 	[BNXT_ULP_RESOURCE_SUB_TYPE_ALLOCATOR_TABLE_JUMP_INDEX << 1 |
 		BNXT_ULP_DIRECTION_EGRESS] = {
 	.name = "EGRESS ALLOCATOR_TABLE_JUMP_INDEX",
-	.num_entries = 0,
+	.num_entries = 32,
 	}
 };
 
@@ -2099,6 +2099,8 @@ const struct bnxt_ulp_template_device_tbls ulp_template_wh_plus_tbls[] = {
 	.tbl_list_size           = ULP_WH_PLUS_ACT_TBL_LIST_SIZE,
 	.key_info_list           = ulp_wh_plus_act_key_info_list,
 	.key_info_list_size      = ULP_WH_PLUS_ACT_KEY_INFO_LIST_SIZE,
+	.key_ext_list            = ulp_wh_plus_act_key_ext_list,
+	.key_ext_list_size       = ULP_WH_PLUS_ACT_KEY_EXT_LIST_SIZE,
 	.ident_list              = ulp_wh_plus_act_ident_list,
 	.ident_list_size         = ULP_WH_PLUS_ACT_IDENT_LIST_SIZE,
 	.cond_list               = ulp_wh_plus_act_cond_list,
@@ -2137,6 +2139,8 @@ const struct bnxt_ulp_template_device_tbls ulp_template_thor_tbls[] = {
 	.tbl_list_size           = ULP_THOR_ACT_TBL_LIST_SIZE,
 	.key_info_list           = ulp_thor_act_key_info_list,
 	.key_info_list_size      = ULP_THOR_ACT_KEY_INFO_LIST_SIZE,
+	.key_ext_list            = ulp_thor_act_key_ext_list,
+	.key_ext_list_size       = ULP_THOR_ACT_KEY_EXT_LIST_SIZE,
 	.ident_list              = ulp_thor_act_ident_list,
 	.ident_list_size         = ULP_THOR_ACT_IDENT_LIST_SIZE,
 	.cond_list               = ulp_thor_act_cond_list,
@@ -2175,6 +2179,8 @@ const struct bnxt_ulp_template_device_tbls ulp_template_thor2_tbls[] = {
 	.tbl_list_size           = ULP_THOR2_ACT_TBL_LIST_SIZE,
 	.key_info_list           = ulp_thor2_act_key_info_list,
 	.key_info_list_size      = ULP_THOR2_ACT_KEY_INFO_LIST_SIZE,
+	.key_ext_list            = ulp_thor2_act_key_ext_list,
+	.key_ext_list_size       = ULP_THOR2_ACT_KEY_EXT_LIST_SIZE,
 	.ident_list              = ulp_thor2_act_ident_list,
 	.ident_list_size         = ULP_THOR2_ACT_IDENT_LIST_SIZE,
 	.cond_list               = ulp_thor2_act_cond_list,
@@ -2344,7 +2350,9 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = {
 	.min_flow_priority       = 65535,
 	.max_flow_priority       = 0,
 	.vxlan_port              = 4789,
-	.vxlan_ip_port           = 0
+	.vxlan_ip_port           = 0,
+	.default_class_bits      = 0,
+	.default_act_bits        = BNXT_ULP_ACT_BIT_NON_GENERIC
 	},
 	{
 	.app_id                  = 0,
@@ -2357,7 +2365,8 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = {
 	.vxlan_port              = 0,
 	.vxlan_ip_port           = 0,
 	.num_key_recipes_per_dir = 256,
-	.feature_bits            = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW
+	.default_class_bits      = 0,
+	.default_act_bits        = BNXT_ULP_ACT_BIT_GENERIC
 	},
 	{
 	.app_id                  = 0,
@@ -2378,7 +2387,9 @@ struct bnxt_ulp_app_capabilities_info ulp_app_cap_info_list[] = {
 	.em_rx_key_max_sz        = 112,
 	.em_tx_key_max_sz        = 112,
 	.pbl_page_sz_in_bytes    = 4096,
-	.num_key_recipes_per_dir = 256
+	.num_key_recipes_per_dir = 256,
+	.default_class_bits      = 0,
+	.default_act_bits        = BNXT_ULP_ACT_BIT_GENERIC
 	}
 };
 
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.h b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.h
index d6f4089b6b..e29273dd4c 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.h
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_tbl.h
@@ -33,6 +33,9 @@ extern struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[];
 
 extern struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[];
 
+extern struct
+bnxt_ulp_mapper_field_info ulp_wh_plus_act_key_ext_list[];
+
 extern struct
 bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[];
 
@@ -109,6 +112,9 @@ extern struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[];
 
 extern struct bnxt_ulp_mapper_ident_info ulp_thor_act_ident_list[];
 
+extern struct
+bnxt_ulp_mapper_field_info ulp_thor_act_key_ext_list[];
+
 extern struct
 bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[];
 
@@ -158,6 +164,9 @@ extern struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[];
 extern struct
 bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[];
 
+extern struct
+bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[];
+
 extern struct
 bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[];
 
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 e41a80ac78..e233486870 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
@@ -13,106 +13,230 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor2_act_tmpl_list[] = {
 	/* act_tid: 1, ingress */
 	[1] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 16,
+	.num_tbls = 24,
 	.start_tbl_idx = 0,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
 		.cond_start_idx = 0,
-		.cond_nums = 4 }
+		.cond_nums = 2 }
 	},
 	/* act_tid: 2, ingress */
 	[2] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 12,
-	.start_tbl_idx = 16,
+	.num_tbls = 1,
+	.start_tbl_idx = 24,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 19,
+		.cond_start_idx = 24,
 		.cond_nums = 0 }
 	},
 	/* act_tid: 3, ingress */
 	[3] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 9,
-	.start_tbl_idx = 28,
+	.num_tbls = 12,
+	.start_tbl_idx = 25,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 23,
+		.cond_start_idx = 24,
 		.cond_nums = 0 }
 	},
 	/* act_tid: 4, ingress */
 	[4] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 7,
+	.num_tbls = 1,
 	.start_tbl_idx = 37,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
 		.cond_start_idx = 28,
-		.cond_nums = 1 }
+		.cond_nums = 0 }
 	},
 	/* act_tid: 5, ingress */
 	[5] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 19,
-	.start_tbl_idx = 44,
+	.num_tbls = 1,
+	.start_tbl_idx = 38,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 33,
+		.cond_start_idx = 28,
 		.cond_nums = 0 }
 	},
-	/* act_tid: 6, egress */
+	/* act_tid: 6, ingress */
 	[6] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 6,
-	.start_tbl_idx = 63,
+	.num_tbls = 19,
+	.start_tbl_idx = 39,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 48,
-		.cond_nums = 4 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 28,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 7, egress */
 	[7] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 7,
-	.start_tbl_idx = 69,
+	.num_tbls = 42,
+	.start_tbl_idx = 58,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 54,
-		.cond_nums = 1 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
+		.cond_start_idx = 43,
+		.cond_nums = 2 }
 	},
 	/* act_tid: 8, egress */
 	[8] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 21,
-	.start_tbl_idx = 76,
+	.num_tbls = 1,
+	.start_tbl_idx = 100,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 58,
-		.cond_nums = 2 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 9, egress */
 	[9] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 6,
-	.start_tbl_idx = 97,
+	.num_tbls = 1,
+	.start_tbl_idx = 101,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 78,
-		.cond_nums = 2 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 10, egress */
 	[10] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
-	.num_tbls = 6,
+	.num_tbls = 1,
+	.start_tbl_idx = 102,
+	.reject_info = {
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 }
+	},
+	/* act_tid: 11, egress */
+	[11] = {
+	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
+	.num_tbls = 1,
 	.start_tbl_idx = 103,
+	.reject_info = {
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 }
+	},
+	/* act_tid: 12, egress */
+	[12] = {
+	.device_name = BNXT_ULP_DEVICE_ID_THOR2,
+	.num_tbls = 6,
+	.start_tbl_idx = 104,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 81,
+		.cond_start_idx = 92,
 		.cond_nums = 4 }
 	}
 };
 
 struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
+	{ /* act_tid: 1, , table: flow_chain_cache.rd */
+	.description = "flow_chain_cache.rd",
+	.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,
+	.true_message = "Reject due to unsupported jump action.",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 5,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.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,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.key_start_idx = 0,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.ident_start_idx = 0,
+	.ident_nums = 1
+	},
+	{ /* act_tid: 1, , table: control.flow_chain */
+	.description = "control.flow_chain",
+	.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 = 3,
+		.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: 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 = 4,
+		.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 = 0,
+	.result_bit_size = 0,
+	.result_num_fields = 0
+	},
+	{ /* act_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 = 4,
+		.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_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 }
+	},
+	{ /* act_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 = 4,
+		.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 = 1,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.result_start_idx = 0,
+	.result_bit_size = 64,
+	.result_num_fields = 2
+	},
 	{ /* act_tid: 1, , table: shared_meter_tbl_cache.rd */
 	.description = "shared_meter_tbl_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
@@ -129,17 +253,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.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 = 0,
+	.key_start_idx = 2,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 0,
+	.ident_start_idx = 1,
 	.ident_nums = 1
 	},
 	{ /* act_tid: 1, , table: control.meter_chk */
 	.description = "control.meter_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Reject due to unknown meter.",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
@@ -166,17 +291,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.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 = 5,
 	.key_bit_size = 5,
 	.key_num_fields = 1,
-	.ident_start_idx = 1,
+	.ident_start_idx = 2,
 	.ident_nums = 1
 	},
 	{ /* act_tid: 1, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Reject due to non-existent handle",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
@@ -186,43 +312,59 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 1, , table: control.check_mods */
-	.description = "control.check_mods",
+	{ /* act_tid: 1, , table: control.do_mod */
+	.description = "control.do_mod",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
-		.cond_true_goto  = 4,
-		.cond_false_goto = 1,
+		.cond_true_goto  = 1,
+		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 8,
-		.cond_nums = 3 },
+		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
-	},
-	{ /* act_tid: 1, , table: mod_record.ing_no_ttl */
-	.description = "mod_record.ing_no_ttl",
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.func_info = {
+		.func_opc = BNXT_ULP_FUNC_OPC_BIT_AND,
+		.func_src1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_opr1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
+		.func_opr2 = BNXT_ULP_ACT_BIT_DEC_TTL |
+			BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+			BNXT_ULP_ACT_BIT_SET_MAC_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+			BNXT_ULP_ACT_BIT_SET_TP_SRC |
+			BNXT_ULP_ACT_BIT_SET_TP_DST |
+			BNXT_ULP_ACT_BIT_JUMP,
+		.func_dst_opr = BNXT_ULP_RF_IDX_RF_0 }
+	},
+	{ /* act_tid: 1, , table: mod_record.ttl_0 */
+	.description = "mod_record.ttl_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_RX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 2,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 11,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 9,
 		.cond_nums = 1 },
 	.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_FID,
-	.result_start_idx = 0,
+	.result_start_idx = 2,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 18
+	.encap_num_fields = 36
 	},
-	{ /* act_tid: 1, , table: mod_record.ing_ttl */
-	.description = "mod_record.ing_ttl",
+	{ /* act_tid: 1, , table: mod_record.non_ttl_0 */
+	.description = "mod_record.non_ttl_0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
 	.resource_sub_type =
@@ -232,16 +374,16 @@ 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 = 12,
+		.cond_start_idx = 10,
 		.cond_nums = 1 },
 	.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_FID,
-	.result_start_idx = 18,
+	.result_start_idx = 38,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 26
+	.encap_num_fields = 28
 	},
 	{ /* act_tid: 1, , table: control.mod_handle_to_offset */
 	.description = "control.mod_handle_to_offset",
@@ -251,7 +393,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 = 13,
+		.cond_start_idx = 11,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -273,17 +415,17 @@ 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 = 13,
+		.cond_start_idx = 11,
 		.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 = 2,
+	.key_start_idx = 4,
 	.blob_key_bit_size = 19,
 	.key_bit_size = 19,
 	.key_num_fields = 2,
-	.ident_start_idx = 2,
+	.ident_start_idx = 3,
 	.ident_nums = 2
 	},
 	{ /* act_tid: 1, , table: control.tunnel_cache_check_act */
@@ -294,7 +436,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 = 15,
+		.cond_start_idx = 13,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -310,14 +452,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 = 16,
+		.cond_start_idx = 14,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_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_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 44,
+	.result_start_idx = 66,
 	.result_bit_size = 128,
 	.result_num_fields = 2
 	},
@@ -329,7 +471,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 = 16,
+		.cond_start_idx = 14,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -350,16 +492,16 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 16,
-		.cond_nums = 2 },
+		.cond_start_idx = 14,
+		.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 = 46,
+	.result_start_idx = 68,
 	.result_bit_size = 128,
 	.result_num_fields = 2
 	},
@@ -371,7 +513,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 = 18,
+		.cond_start_idx = 15,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -383,6 +525,60 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
 	},
+	{ /* act_tid: 1, , table: control.queue_and_rss_test */
+	.description = "control.queue_and_rss_test",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_RX,
+	.true_message = "Reject due to both queue and rss set",
+	.execute_info = {
+		.cond_true_goto  = 1,
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 15,
+		.cond_nums = 2 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 1, , table: vnic_interface_rss_config.0 */
+	.description = "vnic_interface_rss_config.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_RSS,
+	.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 = 17,
+		.cond_nums = 1 },
+	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.result_start_idx = 70,
+	.result_bit_size = 0,
+	.result_num_fields = 0
+	},
+	{ /* act_tid: 1, , table: vnic_interface_queue_config.0 */
+	.description = "vnic_interface_queue_config.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_QUEUE,
+	.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 = 18,
+		.cond_nums = 1 },
+	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.result_start_idx = 70,
+	.result_bit_size = 0,
+	.result_num_fields = 0
+	},
 	{ /* act_tid: 1, , table: cmm_full_act_record.0 */
 	.description = "cmm_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
@@ -392,16 +588,16 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.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 = 18,
-		.cond_nums = 1 },
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 19,
+		.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 = 48,
+	.result_start_idx = 70,
 	.result_bit_size = 192,
 	.result_num_fields = 18
 	},
@@ -413,7 +609,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 = 19,
+		.cond_start_idx = 24,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -425,7 +621,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 32,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
 	},
-	{ /* act_tid: 2, , table: control.delete_chk */
+	{ /* act_tid: 2, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_RX,
+	.true_message = "Thor 2 not supporting non-generic template",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 24,
+		.cond_nums = 0 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 3, , table: control.delete_chk */
 	.description = "control.delete_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -433,12 +643,12 @@ 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 = 19,
+		.cond_start_idx = 24,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 2, , table: shared_mirror_record.del_chk */
+	{ /* act_tid: 3, , table: shared_mirror_record.del_chk */
 	.description = "shared_mirror_record.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = CFA_RSUBTYPE_IDX_TBL_MIRROR,
@@ -449,21 +659,21 @@ 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 = 20,
+		.cond_start_idx = 25,
 		.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,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 4,
+	.key_start_idx = 6,
 	.blob_key_bit_size = 5,
 	.key_bit_size = 5,
 	.key_num_fields = 1,
-	.ident_start_idx = 4,
+	.ident_start_idx = 5,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 2, , table: control.mirror_del_exist_chk */
+	{ /* act_tid: 3, , table: control.mirror_del_exist_chk */
 	.description = "control.mirror_del_exist_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -471,12 +681,12 @@ 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 = 20,
+		.cond_start_idx = 25,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 2, , table: control.mirror_ref_cnt_chk */
+	{ /* act_tid: 3, , table: control.mirror_ref_cnt_chk */
 	.description = "control.mirror_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -484,7 +694,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 = 21,
+		.cond_start_idx = 26,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -497,7 +707,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 2, , table: control.create */
+	{ /* act_tid: 3, , table: control.create */
 	.description = "control.create",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -505,13 +715,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 = 22,
+		.cond_start_idx = 27,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 2, , table: mirror_tbl.alloc */
+	{ /* act_tid: 3, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = CFA_RSUBTYPE_IDX_TBL_MIRROR,
@@ -522,7 +732,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 = 22,
+		.cond_start_idx = 27,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
@@ -530,11 +740,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_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 = 66,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 88,
 	.result_bit_size = 128,
 	.result_num_fields = 12
 	},
-	{ /* act_tid: 2, , table: cmm_stat_record.0 */
+	{ /* act_tid: 3, , table: cmm_stat_record.0 */
 	.description = "cmm_stat_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -545,7 +756,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 = 22,
+		.cond_start_idx = 27,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL,
@@ -553,11 +764,11 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_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 = 78,
+	.result_start_idx = 100,
 	.result_bit_size = 128,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 2, , table: control.stat_handle_to_offset */
+	{ /* act_tid: 3, , table: control.stat_handle_to_offset */
 	.description = "control.stat_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -565,7 +776,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 = 23,
+		.cond_start_idx = 28,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -577,7 +788,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
 	},
-	{ /* act_tid: 2, , table: cmm_full_act_record.0 */
+	{ /* act_tid: 3, , table: cmm_full_act_record.0 */
 	.description = "cmm_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -588,7 +799,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 = 23,
+		.cond_start_idx = 28,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL,
@@ -596,11 +807,11 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_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 = 80,
+	.result_start_idx = 102,
 	.result_bit_size = 192,
 	.result_num_fields = 18
 	},
-	{ /* act_tid: 2, , table: control.act_handle_to_offset */
+	{ /* act_tid: 3, , table: control.act_handle_to_offset */
 	.description = "control.act_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -608,7 +819,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 = 23,
+		.cond_start_idx = 28,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -620,7 +831,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 32,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
 	},
-	{ /* act_tid: 2, , table: mirror_tbl.wr */
+	{ /* act_tid: 3, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = CFA_RSUBTYPE_IDX_TBL_MIRROR,
@@ -631,18 +842,19 @@ 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 = 23,
+		.cond_start_idx = 28,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 98,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 120,
 	.result_bit_size = 128,
 	.result_num_fields = 12
 	},
-	{ /* act_tid: 2, , table: shared_mirror_record.wr */
+	{ /* act_tid: 3, , table: shared_mirror_record.wr */
 	.description = "shared_mirror_record.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = CFA_RSUBTYPE_IDX_TBL_MIRROR,
@@ -653,7 +865,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 = 23,
+		.cond_start_idx = 28,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -661,525 +873,228 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_INC,
-	.key_start_idx = 5,
+	.key_start_idx = 7,
 	.blob_key_bit_size = 5,
 	.key_bit_size = 5,
 	.key_num_fields = 1,
-	.result_start_idx = 110,
+	.result_start_idx = 132,
 	.result_bit_size = 37,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 3, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
+	{ /* act_tid: 4, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Thor 2 not supporting non-generic template",
 	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 23,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
-	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 28,
+		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 6,
-	.blob_key_bit_size = 5,
-	.key_bit_size = 5,
-	.key_num_fields = 1,
-	.ident_start_idx = 5,
-	.ident_nums = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: control.mirror */
-	.description = "control.mirror",
+	{ /* act_tid: 5, , table: control.reject */
+	.description = "control.reject",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Thor 2 not supporting non-generic template",
 	.execute_info = {
 		.cond_true_goto  = 1023,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 24,
-		.cond_nums = 1 },
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 28,
+		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: mod_record.ing_no_ttl */
-	.description = "mod_record.ing_no_ttl",
-	.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,
+	{ /* act_tid: 6, , table: control.create_check */
+	.description = "control.create_check",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 10,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 25,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL,
+		.cond_start_idx = 28,
+		.cond_nums = 2 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 112,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 24
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: mod_record.ing_ttl */
-	.description = "mod_record.ing_ttl",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.rd */
+	.description = "meter_profile_tbl_cache.rd",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_METER_PROFILE_TBL_CACHE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 3,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 26,
+		.cond_start_idx = 30,
 		.cond_nums = 1 },
-	.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_FID,
-	.result_start_idx = 136,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 32
-	},
-	{ /* act_tid: 3, , table: control.mod_handle_to_offset */
-	.description = "control.mod_handle_to_offset",
-	.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 = 27,
-		.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,
-	.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_MOD_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MODIFY_PTR }
+	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
+	.key_start_idx = 8,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.ident_start_idx = 6,
+	.ident_nums = 0
 	},
-	{ /* act_tid: 3, , table: cmm_stat_record.0 */
-	.description = "cmm_stat_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+	{ /* act_tid: 6, , table: control.shared_meter_profile_0 */
+	.description = "control.shared_meter_profile_0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
+		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 27,
+		.cond_start_idx = 31,
 		.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 = 168,
-	.result_bit_size = 128,
-	.result_num_fields = 2
+	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 3, , table: control.stat_handle_to_offset */
-	.description = "control.stat_handle_to_offset",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.wr */
+	.description = "meter_profile_tbl_cache.wr",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
+	.resource_type = TF_TBL_TYPE_METER_PROF,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_METER_PROFILE_TBL_CACHE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 0,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 28,
+		.cond_start_idx = 32,
 		.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_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_STAT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.key_start_idx = 9,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.result_start_idx = 134,
+	.result_bit_size = 97,
+	.result_num_fields = 12
 	},
-	{ /* act_tid: 3, , table: cmm_full_act_record.0 */
-	.description = "cmm_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.rd */
+	.description = "shared_meter_tbl_cache.rd",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_METER_TBL_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 = 28,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL,
+		.cond_false_goto = 1023,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 32,
+		.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,
-	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 170,
-	.result_bit_size = 192,
-	.result_num_fields = 18
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
+	.key_start_idx = 10,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.ident_start_idx = 6,
+	.ident_nums = 0
 	},
-	{ /* act_tid: 3, , table: control.act_handle_to_offset */
-	.description = "control.act_handle_to_offset",
+	{ /* act_tid: 6, , table: control.meter_created_chk */
+	.description = "control.meter_created_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.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 = 28,
-		.cond_nums = 0 },
+		.cond_true_goto  = 1,
+		.cond_false_goto = 1023,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 33,
+		.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_HANDLE_TO_OFFSET,
-		.func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
-		.func_opr1 = BNXT_ULP_RF_IDX_CMM_ACT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 32,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
+	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 4, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.rd2 */
+	.description = "meter_profile_tbl_cache.rd2",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_METER_PROFILE_TBL_CACHE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 29,
-		.cond_nums = 1 },
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 34,
+		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
-	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
+	.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 = 7,
-	.blob_key_bit_size = 5,
-	.key_bit_size = 5,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.key_start_idx = 11,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
 	.key_num_fields = 1,
 	.ident_start_idx = 6,
-	.ident_nums = 1
+	.ident_nums = 11
 	},
-	{ /* act_tid: 4, , table: control.mirror */
-	.description = "control.mirror",
+	{ /* act_tid: 6, , table: control.shared_meter_profile_chk */
+	.description = "control.shared_meter_profile_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 30,
+		.cond_start_idx = 34,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 4, , table: vnic_interface_rss_config.0 */
-	.description = "vnic_interface_rss_config.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
+	{ /* act_tid: 6, , table: meter_tbl.0 */
+	.description = "meter_tbl.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
+	.resource_type = CFA_RSUBTYPE_IDX_TBL_METER_INST,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_RSS,
+		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
 	.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 = 31,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 35,
+		.cond_nums = 0 },
+	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 188,
-	.result_bit_size = 0,
-	.result_num_fields = 0
+	.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 = 146,
+	.result_bit_size = 128,
+	.result_num_fields = 18
 	},
-	{ /* act_tid: 4, , table: cmm_stat_record.0 */
-	.description = "cmm_stat_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.wr */
+	.description = "shared_meter_tbl_cache.wr",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 32,
-		.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 = 188,
-	.result_bit_size = 128,
-	.result_num_fields = 2
-	},
-	{ /* act_tid: 4, , table: control.stat_handle_to_offset */
-	.description = "control.stat_handle_to_offset",
-	.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 = 33,
-		.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_STAT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
-	},
-	{ /* act_tid: 4, , table: cmm_full_act_record.0 */
-	.description = "cmm_full_act_record.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_RX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 33,
-		.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 = 190,
-	.result_bit_size = 192,
-	.result_num_fields = 18
-	},
-	{ /* act_tid: 4, , table: control.act_handle_to_offset */
-	.description = "control.act_handle_to_offset",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.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 = 33,
-		.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_ACT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 32,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
-	},
-	{ /* act_tid: 5, , table: control.create_check */
-	.description = "control.create_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 = 33,
-		.cond_nums = 2 },
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
-	},
-	{ /* act_tid: 5, , table: meter_profile_tbl_cache.rd */
-	.description = "meter_profile_tbl_cache.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_METER_PROFILE_TBL_CACHE,
-	.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 = 35,
-		.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_NOP,
-	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 8,
-	.blob_key_bit_size = 32,
-	.key_bit_size = 32,
-	.key_num_fields = 1,
-	.ident_start_idx = 7,
-	.ident_nums = 0
-	},
-	{ /* act_tid: 5, , table: control.shared_meter_profile_0 */
-	.description = "control.shared_meter_profile_0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 1023,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 36,
-		.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: 5, , table: meter_profile_tbl_cache.wr */
-	.description = "meter_profile_tbl_cache.wr",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_METER_PROF,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_METER_PROFILE_TBL_CACHE,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 0,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 37,
-		.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_RID_REGFILE,
-	.fdb_operand = BNXT_ULP_RF_IDX_RID,
-	.key_start_idx = 9,
-	.blob_key_bit_size = 32,
-	.key_bit_size = 32,
-	.key_num_fields = 1,
-	.result_start_idx = 208,
-	.result_bit_size = 97,
-	.result_num_fields = 12
-	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.rd */
-	.description = "shared_meter_tbl_cache.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_METER_TBL_CACHE,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 1023,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.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,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
-	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 10,
-	.blob_key_bit_size = 32,
-	.key_bit_size = 32,
-	.key_num_fields = 1,
-	.ident_start_idx = 7,
-	.ident_nums = 0
-	},
-	{ /* act_tid: 5, , table: control.meter_created_chk */
-	.description = "control.meter_created_chk",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.direction = TF_DIR_RX,
-	.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 = 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: 5, , table: meter_profile_tbl_cache.rd2 */
-	.description = "meter_profile_tbl_cache.rd2",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_METER_PROFILE_TBL_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 = 39,
-		.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_RID_REGFILE,
-	.fdb_operand = BNXT_ULP_RF_IDX_RID,
-	.key_start_idx = 11,
-	.blob_key_bit_size = 32,
-	.key_bit_size = 32,
-	.key_num_fields = 1,
-	.ident_start_idx = 7,
-	.ident_nums = 11
-	},
-	{ /* act_tid: 5, , table: control.shared_meter_profile_chk */
-	.description = "control.shared_meter_profile_chk",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1023,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 39,
-		.cond_nums = 1 },
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
-	},
-	{ /* act_tid: 5, , table: meter_tbl.0 */
-	.description = "meter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = CFA_RSUBTYPE_IDX_TBL_METER_INST,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_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,
-	.result_start_idx = 220,
-	.result_bit_size = 128,
-	.result_num_fields = 18
-	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.wr */
-	.description = "shared_meter_tbl_cache.wr",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_METER_TBL_CACHE,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_METER_TBL_CACHE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 40,
+		.cond_start_idx = 35,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1190,11 +1105,11 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.result_start_idx = 238,
+	.result_start_idx = 164,
 	.result_bit_size = 74,
 	.result_num_fields = 3
 	},
-	{ /* act_tid: 5, , table: control.delete_check */
+	{ /* act_tid: 6, , table: control.delete_check */
 	.description = "control.delete_check",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1202,12 +1117,12 @@ 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 = 40,
+		.cond_start_idx = 35,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 5, , table: meter_profile_tbl_cache.del_chk */
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */
 	.description = "meter_profile_tbl_cache.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1217,7 +1132,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 = 41,
+		.cond_start_idx = 36,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1228,10 +1143,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 18,
+	.ident_start_idx = 17,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: control.mtr_prof_ref_cnt_chk */
+	{ /* act_tid: 6, , table: control.mtr_prof_ref_cnt_chk */
 	.description = "control.mtr_prof_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1239,7 +1154,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 = 42,
+		.cond_start_idx = 37,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -1252,7 +1167,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.del_chk */
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */
 	.description = "shared_meter_tbl_cache.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1262,7 +1177,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 = 43,
+		.cond_start_idx = 38,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1273,10 +1188,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 19,
+	.ident_start_idx = 18,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: control.shared_mtr_ref_cnt_chk */
+	{ /* act_tid: 6, , table: control.shared_mtr_ref_cnt_chk */
 	.description = "control.shared_mtr_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1284,7 +1199,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 = 44,
+		.cond_start_idx = 39,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -1297,7 +1212,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 5, , table: control.update_check */
+	{ /* act_tid: 6, , table: control.update_check */
 	.description = "control.update_check",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1305,12 +1220,12 @@ 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 = 45,
+		.cond_start_idx = 40,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.rd_update */
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */
 	.description = "shared_meter_tbl_cache.rd_update",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1320,7 +1235,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 = 45,
+		.cond_start_idx = 40,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1331,10 +1246,10 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 20,
+	.ident_start_idx = 19,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: meter_tbl.update_rd */
+	{ /* act_tid: 6, , table: meter_tbl.update_rd */
 	.description = "meter_tbl.update_rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = CFA_RSUBTYPE_IDX_TBL_METER_INST,
@@ -1345,17 +1260,18 @@ 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 = 46,
+		.cond_start_idx = 41,
 		.cond_nums = 2 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_RD_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
-	.ident_start_idx = 21,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.ident_start_idx = 20,
 	.ident_nums = 13,
 	.result_bit_size = 128
 	},
-	{ /* act_tid: 5, , table: meter_tbl.update_wr */
+	{ /* act_tid: 6, , table: meter_tbl.update_wr */
 	.description = "meter_tbl.update_wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = CFA_RSUBTYPE_IDX_TBL_METER_INST,
@@ -1366,59 +1282,122 @@ 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 = 48,
+		.cond_start_idx = 43,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
-	.result_start_idx = 241,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 167,
 	.result_bit_size = 128,
 	.result_num_fields = 18
 	},
-	{ /* act_tid: 6, , table: mod_record.ing_ttl */
-	.description = "mod_record.ing_ttl",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 7, , table: flow_chain_cache.rd */
+	.description = "flow_chain_cache.rd",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+		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  = 1,
-		.cond_false_goto = 2,
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 5,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 52,
+		.cond_start_idx = 45,
 		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL,
+	.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,
-	.result_start_idx = 259,
+	.key_start_idx = 16,
+	.blob_key_bit_size = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.ident_start_idx = 33,
+	.ident_nums = 1
+	},
+	{ /* act_tid: 7, , table: control.flow_chain */
+	.description = "control.flow_chain",
+	.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 = 46,
+		.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: 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 = 47,
+		.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 = 185,
 	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 24
+	.result_num_fields = 0
 	},
-	{ /* act_tid: 6, , table: control.mod_handle_to_offset */
-	.description = "control.mod_handle_to_offset",
+	{ /* act_tid: 7, , 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 = 53,
+		.cond_start_idx = 47,
 		.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_opc = BNXT_ULP_FUNC_OPC_BIT_OR,
+		.func_oper_size = 16,
 		.func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
-		.func_opr1 = BNXT_ULP_RF_IDX_CMM_MOD_HNDL,
+		.func_opr1 = BNXT_ULP_RF_IDX_JUMP_META_IDX,
 		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MODIFY_PTR }
+		.func_opr2 = ULP_THOR2_SYM_CHAIN_META_VAL,
+		.func_dst_opr = BNXT_ULP_RF_IDX_JUMP_META }
+	},
+	{ /* act_tid: 7, , 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 = 47,
+		.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 = 32,
+	.key_bit_size = 32,
+	.key_num_fields = 1,
+	.result_start_idx = 185,
+	.result_bit_size = 64,
+	.result_num_fields = 2
 	},
-	{ /* act_tid: 6, , table: cmm_stat_record.0 */
+	{ /* act_tid: 7, , table: cmm_stat_record.0 */
 	.description = "cmm_stat_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -1429,18 +1408,18 @@ 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 = 53,
+		.cond_start_idx = 47,
 		.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 = 283,
+	.result_start_idx = 187,
 	.result_bit_size = 128,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 6, , table: control.stat_handle_to_offset */
+	{ /* act_tid: 7, , table: control.stat_handle_to_offset */
 	.description = "control.stat_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1448,7 +1427,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 = 54,
+		.cond_start_idx = 48,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1460,72 +1439,118 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
 	},
-	{ /* act_tid: 6, , table: cmm_full_act_record.0 */
-	.description = "cmm_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 7, , table: shared_mirror_record.rd */
+	.description = "shared_mirror_record.rd",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
+	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
 	.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 = 54,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL,
+		.cond_false_goto = 2,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 48,
+		.cond_nums = 1 },
+	.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,
-	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 285,
-	.result_bit_size = 192,
-	.result_num_fields = 18
+	.key_start_idx = 18,
+	.blob_key_bit_size = 5,
+	.key_bit_size = 5,
+	.key_num_fields = 1,
+	.ident_start_idx = 34,
+	.ident_nums = 1
 	},
-	{ /* act_tid: 6, , table: control.act_handle_to_offset */
-	.description = "control.act_handle_to_offset",
+	{ /* act_tid: 7, , table: control.mirror */
+	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Reject due to non-existent handle",
 	.execute_info = {
-		.cond_true_goto  = 0,
-		.cond_false_goto = 0,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 54,
-		.cond_nums = 0 },
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 49,
+		.cond_nums = 1 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 7, , table: control.do_mod */
+	.description = "control.do_mod",
+	.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 = 50,
+		.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_HANDLE_TO_OFFSET,
-		.func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
-		.func_opr1 = BNXT_ULP_RF_IDX_CMM_ACT_HNDL,
+		.func_opc = BNXT_ULP_FUNC_OPC_BIT_AND,
+		.func_src1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_opr1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
 		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 32,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
+		.func_opr2 = BNXT_ULP_ACT_BIT_DEC_TTL |
+			BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+			BNXT_ULP_ACT_BIT_SET_MAC_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+			BNXT_ULP_ACT_BIT_SET_TP_SRC |
+			BNXT_ULP_ACT_BIT_SET_TP_DST |
+			BNXT_ULP_ACT_BIT_VF_TO_VF |
+			BNXT_ULP_ACT_BIT_JUMP,
+		.func_dst_opr = BNXT_ULP_RF_IDX_RF_0 }
+	},
+	{ /* act_tid: 7, , table: control.vf_to_vf_calc */
+	.description = "control.vf_to_vf_calc",
+	.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_AND,
+		.cond_start_idx = 51,
+		.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_BIT_OR,
+		.func_src1 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
+		.func_opr1 = BNXT_ULP_CF_IDX_VNIC,
+		.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_1 }
 	},
-	{ /* act_tid: 7, , table: mod_record.egr_no_ttl */
-	.description = "mod_record.egr_no_ttl",
+	{ /* act_tid: 7, , table: mod_record.ttl_0 */
+	.description = "mod_record.ttl_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_true_goto  = 2,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 55,
+		.cond_start_idx = 52,
 		.cond_nums = 1 },
 	.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_FID,
-	.result_start_idx = 303,
+	.result_start_idx = 189,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 24
+	.encap_num_fields = 36
 	},
-	{ /* act_tid: 7, , table: mod_record.egr_ttl */
-	.description = "mod_record.egr_ttl",
+	{ /* act_tid: 7, , table: mod_record.non_ttl_0 */
+	.description = "mod_record.non_ttl_0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
 	.resource_sub_type =
@@ -1535,16 +1560,16 @@ 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 = 56,
+		.cond_start_idx = 63,
 		.cond_nums = 1 },
 	.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_FID,
-	.result_start_idx = 327,
+	.result_start_idx = 225,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 32
+	.encap_num_fields = 28
 	},
 	{ /* act_tid: 7, , table: control.mod_handle_to_offset */
 	.description = "control.mod_handle_to_offset",
@@ -1554,7 +1579,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 = 57,
+		.cond_start_idx = 74,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1566,213 +1591,189 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MODIFY_PTR }
 	},
-	{ /* act_tid: 7, , table: cmm_stat_record.0 */
-	.description = "cmm_stat_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+	{ /* act_tid: 7, , table: control.do_tunnel_check */
+	.description = "control.do_tunnel_check",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 57,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL,
+		.cond_false_goto = 24,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
+		.cond_start_idx = 74,
+		.cond_nums = 2 },
 	.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 = 359,
-	.result_bit_size = 128,
-	.result_num_fields = 2
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: control.stat_handle_to_offset */
-	.description = "control.stat_handle_to_offset",
+	{ /* act_tid: 7, , table: control.do_tunnel_vlan_exclusion */
+	.description = "control.do_tunnel_vlan_exclusion",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Tunnel Encap + Push VLAN unsupported.",
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 58,
-		.cond_nums = 0 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
+		.cond_start_idx = 76,
+		.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_HANDLE_TO_OFFSET,
-		.func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
-		.func_opr1 = BNXT_ULP_RF_IDX_CMM_STAT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: cmm_full_act_record.0 */
-	.description = "cmm_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 7, , table: source_property_cache.rd */
+	.description = "source_property_cache.rd",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_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 = 58,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_ACT_HNDL,
+		.cond_false_goto = 6,
+		.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,
-	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 361,
-	.result_bit_size = 192,
-	.result_num_fields = 18
+	.key_start_idx = 19,
+	.blob_key_bit_size = 85,
+	.key_bit_size = 85,
+	.key_num_fields = 3,
+	.ident_start_idx = 35,
+	.ident_nums = 1
 	},
-	{ /* act_tid: 7, , table: control.act_handle_to_offset */
-	.description = "control.act_handle_to_offset",
+	{ /* act_tid: 7, , table: control.sp_rec_v4 */
+	.description = "control.sp_rec_v4",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.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 = 58,
-		.cond_nums = 0 },
+		.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_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_ACT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 32,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
+	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 8, , table: cmm_stat_record.0 */
-	.description = "cmm_stat_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
+	{ /* act_tid: 7, , table: sp_smac_ipv4.0 */
+	.description = "sp_smac_ipv4.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 = 2,
+		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 60,
+		.cond_start_idx = 79,
 		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_STAT_HNDL,
+	.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_FID,
-	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 379,
-	.result_bit_size = 128,
-	.result_num_fields = 2
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.result_start_idx = 253,
+	.result_bit_size = 0,
+	.result_num_fields = 0,
+	.encap_num_fields = 3
 	},
-	{ /* act_tid: 8, , table: control.stat_handle_to_offset */
-	.description = "control.stat_handle_to_offset",
+	{ /* act_tid: 7, , table: control.srp_handle_to_offset */
+	.description = "control.srp_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 = 61,
+		.cond_start_idx = 80,
 		.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_STAT_HNDL,
+		.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_FLOW_CNTR_PTR_0 }
+		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_SP_PTR }
 	},
-	{ /* act_tid: 8, , table: mod_record.egr_set_mac */
-	.description = "mod_record.egr_set_mac",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
-	.resource_type = CFA_RSUBTYPE_CMM_ACT,
+	{ /* act_tid: 7, , table: source_property_cache.wr */
+	.description = "source_property_cache.wr",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 61,
-		.cond_nums = 2 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL,
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 80,
+		.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,
-	.result_start_idx = 381,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 18
+	.key_start_idx = 22,
+	.blob_key_bit_size = 85,
+	.key_bit_size = 85,
+	.key_num_fields = 3,
+	.result_start_idx = 256,
+	.result_bit_size = 64,
+	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: control.mod_handle_to_offset */
-	.description = "control.mod_handle_to_offset",
+	{ /* act_tid: 7, , table: control.do_vxlan_check */
+	.description = "control.do_vxlan_check",
 	.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 = 63,
-		.cond_nums = 0 },
+		.cond_false_goto = 11,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
+		.cond_start_idx = 80,
+		.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_HANDLE_TO_OFFSET,
-		.func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
-		.func_opr1 = BNXT_ULP_RF_IDX_CMM_MOD_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MODIFY_PTR }
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: source_property_cache.rd */
-	.description = "source_property_cache.rd",
+	{ /* act_tid: 7, , table: vxlan_encap_rec_cache.rd */
+	.description = "vxlan_encap_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_CACHE,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_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 = 63,
+		.cond_start_idx = 81,
 		.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 = 16,
-	.blob_key_bit_size = 85,
-	.key_bit_size = 85,
-	.key_num_fields = 3,
-	.ident_start_idx = 34,
+	.key_start_idx = 25,
+	.blob_key_bit_size = 141,
+	.key_bit_size = 141,
+	.key_num_fields = 6,
+	.ident_start_idx = 36,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.sp_rec_v4 */
-	.description = "control.sp_rec_v4",
+	{ /* act_tid: 7, , table: control.vxlan_v4_encap */
+	.description = "control.vxlan_v4_encap",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 4,
+		.cond_false_goto = 17,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 64,
+		.cond_start_idx = 82,
 		.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: 8, , table: sp_smac_ipv4.0 */
-	.description = "sp_smac_ipv4.0",
+	{ /* act_tid: 7, , table: ext_tun_vxlan_encap_record.ipv4_vxlan */
+	.description = "ext_tun_vxlan_encap_record.ipv4_vxlan",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
 	.resource_sub_type =
@@ -1781,102 +1782,102 @@ 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 = 65,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 83,
+		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_CMM_SRP_HNDL,
+	.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 = 399,
+	.result_start_idx = 258,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 3
+	.encap_num_fields = 25
 	},
-	{ /* act_tid: 8, , table: control.srp_handle_to_offset */
-	.description = "control.srp_handle_to_offset",
+	{ /* act_tid: 7, , table: control.enc_handle_to_offset */
+	.description = "control.enc_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 = 66,
+		.cond_start_idx = 83,
 		.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_opr1 = BNXT_ULP_RF_IDX_CMM_ENC_HNDL,
 		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
 		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_SP_PTR }
+		.func_dst_opr = BNXT_ULP_RF_IDX_ENCAP_PTR_0 }
 	},
-	{ /* act_tid: 8, , table: source_property_cache.wr */
-	.description = "source_property_cache.wr",
+	{ /* act_tid: 7, , table: vxlan_encap_rec_cache.wr */
+	.description = "vxlan_encap_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_CACHE,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 14,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 66,
+		.cond_start_idx = 83,
 		.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 = 19,
-	.blob_key_bit_size = 85,
-	.key_bit_size = 85,
-	.key_num_fields = 3,
-	.result_start_idx = 402,
+	.key_start_idx = 31,
+	.blob_key_bit_size = 141,
+	.key_bit_size = 141,
+	.key_num_fields = 6,
+	.result_start_idx = 283,
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
-	.description = "vxlan_encap_rec_cache.rd",
+	{ /* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.rd */
+	.description = "vxlan_encap_ipv6_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_IPV6_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 10,
+		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 66,
-		.cond_nums = 2 },
+		.cond_start_idx = 83,
+		.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 = 22,
-	.blob_key_bit_size = 141,
-	.key_bit_size = 141,
+	.key_start_idx = 37,
+	.blob_key_bit_size = 237,
+	.key_bit_size = 237,
 	.key_num_fields = 6,
-	.ident_start_idx = 35,
+	.ident_start_idx = 37,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.vxlan_v4_encap */
-	.description = "control.vxlan_v4_encap",
+	{ /* act_tid: 7, , table: control.vxlan_v6_encap */
+	.description = "control.vxlan_v6_encap",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 4,
+		.cond_false_goto = 12,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 68,
+		.cond_start_idx = 84,
 		.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: 8, , table: ext_tun_vxlan_encap_record.ipv4_vxlan */
-	.description = "ext_tun_vxlan_encap_record.ipv4_vxlan",
+	{ /* act_tid: 7, , table: ext_tun_vxlan_encap_record.ipv6_vxlan */
+	.description = "ext_tun_vxlan_encap_record.ipv6_vxlan",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
 	.resource_sub_type =
@@ -1885,28 +1886,28 @@ 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 = 69,
-		.cond_nums = 2 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 85,
+		.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 = 404,
+	.result_start_idx = 285,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 25
+	.encap_num_fields = 23
 	},
-	{ /* act_tid: 8, , table: control.enc_handle_to_offset */
-	.description = "control.enc_handle_to_offset",
+	{ /* act_tid: 7, , table: control.v6_vxlan_enc_handle_to_offset */
+	.description = "control.v6_vxlan_enc_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 = 71,
+		.cond_start_idx = 85,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1918,31 +1919,31 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_ENCAP_PTR_0 }
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
-	.description = "vxlan_encap_rec_cache.wr",
+	{ /* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.wr */
+	.description = "vxlan_encap_ipv6_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE,
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_IPV6_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 9,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 71,
+		.cond_start_idx = 85,
 		.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 = 141,
-	.key_bit_size = 141,
+	.key_start_idx = 43,
+	.blob_key_bit_size = 237,
+	.key_bit_size = 237,
 	.key_num_fields = 6,
-	.result_start_idx = 429,
+	.result_start_idx = 308,
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: geneve_encap_rec_cache.rd */
+	{ /* act_tid: 7, , table: geneve_encap_rec_cache.rd */
 	.description = "geneve_encap_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1950,36 +1951,36 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 5,
+		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 71,
+		.cond_start_idx = 85,
 		.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 = 34,
+	.key_start_idx = 49,
 	.blob_key_bit_size = 493,
 	.key_bit_size = 493,
 	.key_num_fields = 15,
-	.ident_start_idx = 36,
+	.ident_start_idx = 38,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.geneve_encap */
+	{ /* act_tid: 7, , table: control.geneve_encap */
 	.description = "control.geneve_encap",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 4,
+		.cond_false_goto = 7,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 72,
+		.cond_start_idx = 86,
 		.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: 8, , table: ext_tun_geneve_encap_record.ipv4_vxlan */
+	{ /* act_tid: 7, , table: ext_tun_geneve_encap_record.ipv4_vxlan */
 	.description = "ext_tun_geneve_encap_record.ipv4_vxlan",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -1987,22 +1988,22 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		BNXT_ULP_RESOURCE_SUB_TYPE_CMM_TABLE_ACT,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 2,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 73,
-		.cond_nums = 2 },
+		.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 = 431,
+	.result_start_idx = 310,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 31
 	},
-	{ /* act_tid: 8, , table: ext_tun_geneve_encap_record.ipv6_geneve */
+	{ /* act_tid: 7, , table: ext_tun_geneve_encap_record.ipv6_geneve */
 	.description = "ext_tun_geneve_encap_record.ipv6_geneve",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -2013,43 +2014,105 @@ 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 = 75,
-		.cond_nums = 2 },
+		.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_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
-	.result_start_idx = 462,
+	.result_start_idx = 341,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 29
 	},
-	{ /* act_tid: 8, , table: geneve_encap_rec_cache.wr */
+	{ /* act_tid: 7, , table: control.geneve_enc_handle_to_offset */
+	.description = "control.geneve_enc_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 = 89,
+		.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_ENC_HNDL,
+		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
+		.func_opr2 = 8,
+		.func_dst_opr = BNXT_ULP_RF_IDX_ENCAP_PTR_0 }
+	},
+	{ /* act_tid: 7, , table: geneve_encap_rec_cache.wr */
 	.description = "geneve_encap_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_GENEVE_ENCAP_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 3,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 77,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 89,
+		.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 = 49,
+	.key_start_idx = 64,
 	.blob_key_bit_size = 493,
 	.key_bit_size = 493,
 	.key_num_fields = 15,
-	.result_start_idx = 491,
+	.result_start_idx = 370,
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: cmm_full_act_record.0 */
+	{ /* act_tid: 7, , table: ext_vtag_encap_record.0 */
+	.description = "ext_vtag_encap_record.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_AND,
+		.cond_start_idx = 89,
+		.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_bit_size = 0,
+	.result_num_fields = 0,
+	.encap_num_fields = 11
+	},
+	{ /* act_tid: 7, , table: control.vtag_enc_handle_to_offset */
+	.description = "control.vtag_enc_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 = 90,
+		.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_ENC_HNDL,
+		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
+		.func_opr2 = 8,
+		.func_dst_opr = BNXT_ULP_RF_IDX_ENCAP_PTR_0 }
+	},
+	{ /* act_tid: 7, , table: cmm_full_act_record.0 */
 	.description = "cmm_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -2060,18 +2123,18 @@ 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 = 78,
+		.cond_start_idx = 90,
 		.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 = 493,
+	.result_start_idx = 383,
 	.result_bit_size = 192,
 	.result_num_fields = 18
 	},
-	{ /* act_tid: 8, , table: control.act_handle_to_offset */
+	{ /* act_tid: 7, , table: control.act_handle_to_offset */
 	.description = "control.act_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2079,7 +2142,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 = 78,
+		.cond_start_idx = 92,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2091,7 +2154,63 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 32,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
 	},
-	{ /* act_tid: 9, , table: mod_record.meta */
+	{ /* act_tid: 8, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.true_message = "Thor 2 not supporting non-generic template",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 9, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.true_message = "Thor 2 not supporting non-generic template",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 10, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.true_message = "Thor 2 not supporting non-generic template",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 11, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.true_message = "Thor 2 not supporting non-generic template",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 92,
+		.cond_nums = 0 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 12, , table: mod_record.meta */
 	.description = "mod_record.meta",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -2102,7 +2221,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 = 80,
+		.cond_start_idx = 96,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_CMM_MOD_HNDL,
@@ -2115,12 +2234,12 @@ 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 = 511,
+	.result_start_idx = 401,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 20
 	},
-	{ /* act_tid: 9, , table: control.mod_handle_to_offset */
+	{ /* act_tid: 12, , table: control.mod_handle_to_offset */
 	.description = "control.mod_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2128,7 +2247,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 = 80,
+		.cond_start_idx = 96,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2140,7 +2259,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MODIFY_PTR }
 	},
-	{ /* act_tid: 9, , table: cmm_stat_record.0 */
+	{ /* act_tid: 12, , table: cmm_stat_record.0 */
 	.description = "cmm_stat_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -2151,18 +2270,18 @@ 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 = 80,
+		.cond_start_idx = 96,
 		.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 = 531,
+	.result_start_idx = 421,
 	.result_bit_size = 128,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 9, , table: control.stat_handle_to_offset */
+	{ /* act_tid: 12, , table: control.stat_handle_to_offset */
 	.description = "control.stat_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2170,7 +2289,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 = 81,
+		.cond_start_idx = 97,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2182,7 +2301,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_opr2 = 8,
 		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
 	},
-	{ /* act_tid: 9, , table: cmm_full_act_record.0 */
+	{ /* act_tid: 12, , table: cmm_full_act_record.0 */
 	.description = "cmm_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_TABLE,
 	.resource_type = CFA_RSUBTYPE_CMM_ACT,
@@ -2193,18 +2312,18 @@ 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 = 81,
+		.cond_start_idx = 97,
 		.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 = 533,
+	.result_start_idx = 423,
 	.result_bit_size = 192,
 	.result_num_fields = 18
 	},
-	{ /* act_tid: 9, , table: control.act_handle_to_offset */
+	{ /* act_tid: 12, , table: control.act_handle_to_offset */
 	.description = "control.act_handle_to_offset",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2212,7 +2331,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 = 81,
+		.cond_start_idx = 97,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2223,162 +2342,31 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_act_tbl_list[] = {
 		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
 		.func_opr2 = 32,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
-	},
-	{ /* act_tid: 10, , table: mod_record.meta */
-	.description = "mod_record.meta",
-	.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 = 85,
-		.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_FID,
-	.func_info = {
-		.func_opc = BNXT_ULP_FUNC_OPC_BIT_OR,
-		.func_src1 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
-		.func_opr1 = BNXT_ULP_CF_IDX_VNIC,
-		.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 = 551,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 20
-	},
-	{ /* act_tid: 10, , table: control.mod_handle_to_offset */
-	.description = "control.mod_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 = 85,
-		.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_MOD_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MODIFY_PTR }
-	},
-	{ /* act_tid: 10, , table: cmm_stat_record.0 */
-	.description = "cmm_stat_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CMM_STAT,
-	.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 = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 85,
-		.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 = 571,
-	.result_bit_size = 128,
-	.result_num_fields = 2
-	},
-	{ /* act_tid: 10, , table: control.stat_handle_to_offset */
-	.description = "control.stat_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 = 86,
-		.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_STAT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 8,
-		.func_dst_opr = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 }
-	},
-	{ /* act_tid: 10, , table: cmm_full_act_record.0 */
-	.description = "cmm_full_act_record.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 = 86,
-		.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 = 573,
-	.result_bit_size = 192,
-	.result_num_fields = 18
-	},
-	{ /* act_tid: 10, , table: control.act_handle_to_offset */
-	.description = "control.act_handle_to_offset",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.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 = 86,
-		.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_ACT_HNDL,
-		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
-		.func_opr2 = 32,
-		.func_dst_opr = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR }
-	}
-};
-
-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_PUSH_VLAN
+	}
+};
+
+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_POP_VLAN
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
+	/* cond_execute: act_tid: 1, flow_chain_cache.rd:2*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_VLAN_VID
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
+	/* cond_execute: act_tid: 1, control.flow_chain:3*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_VLAN_PCP
+	.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*/
 	{
@@ -2400,30 +2388,22 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 1, control.check_mods:8*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
-	},
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_SRC
-	},
+	/* cond_execute: act_tid: 1, control.do_mod:8*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_RF_0
 	},
-	/* cond_execute: act_tid: 1, mod_record.ing_no_ttl:11*/
+	/* cond_execute: act_tid: 1, mod_record.ttl_0:9*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
+	.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.ing_ttl:12*/
+	/* cond_execute: act_tid: 1, mod_record.non_ttl_0:10*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.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:13*/
+	/* cond_execute: act_tid: 1, tunnel_cache.f1_f2_act_rd:11*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_F1
@@ -2432,96 +2412,79 @@ 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:15*/
+	/* cond_execute: act_tid: 1, control.tunnel_cache_check_act:13*/
 	{
 	.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:16*/
+	/* cond_execute: act_tid: 1, cmm_stat_record.0:14*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_F1
-	},
-	/* cond_execute: act_tid: 1, cmm_full_act_record.0:18*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_F1
-	},
-	/* cond_execute: act_tid: 2, control.delete_chk:19*/
+	/* cond_execute: act_tid: 1, control.queue_and_rss_test:15*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
-	},
-	/* cond_execute: act_tid: 2, control.mirror_del_exist_chk:20*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
-	/* cond_execute: act_tid: 2, control.mirror_ref_cnt_chk:21*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_CC
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* cond_execute: act_tid: 2, cmm_stat_record.0:22*/
+	/* cond_execute: act_tid: 1, vnic_interface_rss_config.0:17*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* cond_execute: act_tid: 3, shared_mirror_record.rd:23*/
+	/* cond_execute: act_tid: 1, vnic_interface_queue_config.0:18*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
-	/* cond_execute: act_tid: 3, control.mirror:24*/
+	/* field_cond: act_tid: 1, cmm_full_act_record.0:19*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_DROP
 	},
-	/* cond_execute: act_tid: 3, mod_record.ing_no_ttl:25*/
+	/* field_cond: act_tid: 1, cmm_full_act_record.0:20*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* cond_execute: act_tid: 3, mod_record.ing_ttl:26*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
-	/* cond_execute: act_tid: 3, cmm_stat_record.0:27*/
+	/* field_cond: act_tid: 1, cmm_full_act_record.0:22*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_VXLAN_DECAP
 	},
-	/* cond_reject: thor2, act_tid: 4 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
+	.cond_operand = BNXT_ULP_ACT_BIT_GENEVE_DECAP
 	},
-	/* cond_execute: act_tid: 4, shared_mirror_record.rd:29*/
+	/* cond_execute: act_tid: 3, control.delete_chk:24*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
 	},
-	/* cond_execute: act_tid: 4, control.mirror:30*/
+	/* cond_execute: act_tid: 3, control.mirror_del_exist_chk:25*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 4, vnic_interface_rss_config.0:31*/
+	/* cond_execute: act_tid: 3, control.mirror_ref_cnt_chk:26*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_RSS
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 4, cmm_stat_record.0:32*/
+	/* cond_execute: act_tid: 3, cmm_stat_record.0:27*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 5, control.create_check:33*/
+	/* cond_execute: act_tid: 6, control.create_check:28*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_UPDATE
@@ -2530,62 +2493,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: 5, meter_profile_tbl_cache.rd:35*/
+	/* cond_execute: act_tid: 6, meter_profile_tbl_cache.rd:30*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_METER_PROFILE
 	},
-	/* cond_execute: act_tid: 5, control.shared_meter_profile_0:36*/
+	/* cond_execute: act_tid: 6, control.shared_meter_profile_0:31*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 5, shared_meter_tbl_cache.rd:37*/
+	/* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd:32*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER
 	},
-	/* cond_execute: act_tid: 5, control.meter_created_chk:38*/
+	/* cond_execute: act_tid: 6, control.meter_created_chk:33*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 5, control.shared_meter_profile_chk:39*/
+	/* cond_execute: act_tid: 6, control.shared_meter_profile_chk:34*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 5, control.delete_check:40*/
+	/* cond_execute: act_tid: 6, control.delete_check:35*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
 	},
-	/* cond_execute: act_tid: 5, meter_profile_tbl_cache.del_chk:41*/
+	/* cond_execute: act_tid: 6, meter_profile_tbl_cache.del_chk:36*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_METER_PROFILE
 	},
-	/* cond_execute: act_tid: 5, control.mtr_prof_ref_cnt_chk:42*/
+	/* cond_execute: act_tid: 6, control.mtr_prof_ref_cnt_chk:37*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 5, shared_meter_tbl_cache.del_chk:43*/
+	/* cond_execute: act_tid: 6, shared_meter_tbl_cache.del_chk:38*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER
 	},
-	/* cond_execute: act_tid: 5, control.shared_mtr_ref_cnt_chk:44*/
+	/* cond_execute: act_tid: 6, control.shared_mtr_ref_cnt_chk:39*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 5, shared_meter_tbl_cache.rd_update:45*/
+	/* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd_update:40*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER
 	},
-	/* cond_execute: act_tid: 5, meter_tbl.update_rd:46*/
+	/* cond_execute: act_tid: 6, meter_tbl.update_rd:41*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
@@ -2594,169 +2557,249 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_PROP_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID_UPDATE
 	},
-	/* cond_reject: thor2, act_tid: 6 */
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_VLAN_PCP
-	},
+	/* cond_reject: thor2, act_tid: 7 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_VLAN_VID
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
+	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
+	/* cond_execute: act_tid: 7, flow_chain_cache.rd:45*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 6, mod_record.ing_ttl:52*/
+	/* cond_execute: act_tid: 7, control.flow_chain:46*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 6, cmm_stat_record.0:53*/
+	/* cond_execute: act_tid: 7, cmm_stat_record.0:47*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_reject: thor2, act_tid: 7 */
+	/* cond_execute: act_tid: 7, shared_mirror_record.rd:48*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
-	/* cond_execute: act_tid: 7, mod_record.egr_no_ttl:55*/
+	/* cond_execute: act_tid: 7, control.mirror:49*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 7, mod_record.egr_ttl:56*/
+	/* cond_execute: act_tid: 7, control.do_mod:50*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_RF_0
 	},
-	/* cond_execute: act_tid: 7, cmm_stat_record.0:57*/
+	/* cond_execute: act_tid: 7, control.vf_to_vf_calc:51*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_reject: thor2, act_tid: 8 */
+	/* cond_execute: act_tid: 7, mod_record.ttl_0:52*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
 	},
+	/* field_cond: act_tid: 7, mod_record.ttl_0:53*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, cmm_stat_record.0:60*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, mod_record.egr_set_mac:61*/
+	/* 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_SET_MAC_SRC
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, source_property_cache.rd:63*/
+	/* field_cond: act_tid: 7, mod_record.ttl_0:57*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, control.sp_rec_v4:64*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, sp_smac_ipv4.0:65*/
+	/* field_cond: act_tid: 7, mod_record.ttl_0:59*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_rec_cache.rd:66*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
+	.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*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, control.vxlan_v4_encap:68*/
+	/* field_cond: act_tid: 7, mod_record.ttl_0:62*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, ext_tun_vxlan_encap_record.ipv4_vxlan:69*/
+	/* cond_execute: act_tid: 7, mod_record.non_ttl_0:63*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
+	.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*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, geneve_encap_rec_cache.rd:71*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, control.geneve_encap:72*/
+	/* field_cond: act_tid: 7, mod_record.non_ttl_0:66*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, ext_tun_geneve_encap_record.ipv4_vxlan:73*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
+	.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*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, ext_tun_geneve_encap_record.ipv6_geneve:75*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
+	.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*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, geneve_encap_rec_cache.wr:77*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_reject: thor2, act_tid: 9 */
+	/* field_cond: act_tid: 7, mod_record.non_ttl_0:72*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
+	/* field_cond: act_tid: 7, mod_record.non_ttl_0:73*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 9, cmm_stat_record.0:80*/
+	/* cond_execute: act_tid: 7, control.do_tunnel_check:74*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_VXLAN_ENCAP
 	},
-	/* cond_reject: thor2, act_tid: 10 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED
+	.cond_operand = BNXT_ULP_ACT_BIT_GENEVE_ENCAP
 	},
+	/* cond_execute: act_tid: 7, control.do_tunnel_vlan_exclusion:76*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
+	},
+	/* cond_execute: act_tid: 7, source_property_cache.rd:77*/
+	{
+	.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_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_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
+	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
+	},
+	/* cond_execute: act_tid: 7, control.do_vxlan_check:80*/
+	{
+	.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_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_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_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_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_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_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_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_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_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*/
+	{
+	.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*/
+	{
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
+	},
+	/* cond_reject: thor2, act_tid: 12 */
+	{
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_SHARED
+	},
+	{
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_SAMPLE
 	},
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
@@ -2766,7 +2809,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: 10, cmm_stat_record.0:85*/
+	/* cond_execute: act_tid: 12, cmm_stat_record.0:96*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
@@ -2774,6 +2817,52 @@ struct bnxt_ulp_mapper_cond_info ulp_thor2_act_cond_list[] = {
 };
 
 struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
+	/* act_tid: 1, , 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: 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_ACT_PROP,
+		.field_opr1 = {
+		(BNXT_ULP_ACT_PROP_IDX_JUMP >> 8) & 0xff,
+		BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff}
+		}
+	},
 	/* act_tid: 1, , table: shared_meter_tbl_cache.rd */
 	{
 	.field_info_mask = {
@@ -2857,7 +2946,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_TUNNEL_ID & 0xff}
 		}
 	},
-	/* act_tid: 2, , table: shared_mirror_record.del_chk */
+	/* act_tid: 3, , table: shared_mirror_record.del_chk */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -2877,7 +2966,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 2, , table: shared_mirror_record.wr */
+	/* act_tid: 3, , table: shared_mirror_record.wr */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -2897,50 +2986,56 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
 		}
 	},
-	/* act_tid: 3, , table: shared_mirror_record.rd */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.rd */
 	{
 	.field_info_mask = {
-		.description = "shared_index",
-		.field_bit_size = 5,
+		.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 = "shared_index",
-		.field_bit_size = 5,
+		.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_SHARED_HANDLE >> 8) & 0xff,
-		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
+		(BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID >> 8) & 0xff,
+		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 4, , table: shared_mirror_record.rd */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.wr */
 	{
 	.field_info_mask = {
-		.description = "shared_index",
-		.field_bit_size = 5,
+		.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 = "shared_index",
-		.field_bit_size = 5,
+		.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_SHARED_HANDLE >> 8) & 0xff,
-		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
+		(BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID >> 8) & 0xff,
+		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.rd */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.rd */
 	{
 	.field_info_mask = {
-		.description = "sw_meter_profile_id",
+		.description = "sw_meter_id",
 		.field_bit_size = 32,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
@@ -2951,16 +3046,16 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "sw_meter_profile_id",
+		.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_PROF_ID >> 8) & 0xff,
-		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
+		(BNXT_ULP_ACT_PROP_IDX_METER_INST_ID >> 8) & 0xff,
+		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.wr */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.rd2 */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_profile_id",
@@ -2983,7 +3078,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.rd */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_id",
@@ -3006,7 +3101,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.rd2 */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_profile_id",
@@ -3029,7 +3124,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.wr */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_id",
@@ -3052,10 +3147,10 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.del_chk */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */
 	{
 	.field_info_mask = {
-		.description = "sw_meter_profile_id",
+		.description = "sw_meter_id",
 		.field_bit_size = 32,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
@@ -3066,19 +3161,19 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "sw_meter_profile_id",
+		.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_PROF_ID >> 8) & 0xff,
-		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
+		(BNXT_ULP_ACT_PROP_IDX_METER_INST_ID >> 8) & 0xff,
+		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.del_chk */
+	/* act_tid: 7, , table: flow_chain_cache.rd */
 	{
 	.field_info_mask = {
-		.description = "sw_meter_id",
+		.description = "group_id",
 		.field_bit_size = 32,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
@@ -3089,19 +3184,19 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "sw_meter_id",
+		.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_METER_INST_ID >> 8) & 0xff,
-		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
+		(BNXT_ULP_ACT_PROP_IDX_JUMP >> 8) & 0xff,
+		BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.rd_update */
+	/* act_tid: 7, , table: flow_chain_cache.write */
 	{
 	.field_info_mask = {
-		.description = "sw_meter_id",
+		.description = "group_id",
 		.field_bit_size = 32,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
@@ -3112,16 +3207,36 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "sw_meter_id",
+		.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_METER_INST_ID >> 8) & 0xff,
-		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
+		(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: 8, , table: source_property_cache.rd */
+	/* act_tid: 7, , table: source_property_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "smac",
@@ -3189,7 +3304,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: source_property_cache.wr */
+	/* act_tid: 7, , table: source_property_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "smac",
@@ -3257,7 +3372,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -3386,7 +3501,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -3515,7 +3630,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 			BNXT_ULP_PORT_TABLE_TABLE_SCOPE & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -3541,39 +3656,6 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		}
 	},
 	{
-	.field_info_mask = {
-		.description = "ipv4_dst_addr",
-		.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 = "ipv4_dst_addr",
-		.field_bit_size = 32,
-		.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
-		.field_opr1 = {
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
-		(uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
-		.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-		.field_opr2 = {
-		(BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff},
-		.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-		}
-	},
-	{
 	.field_info_mask = {
 		.description = "ipv6_dst_addr",
 		.field_bit_size = 128,
@@ -3600,22 +3682,11 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 	.field_info_spec = {
 		.description = "ipv6_dst_addr",
 		.field_bit_size = 128,
-		.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 		.field_opr1 = {
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
-		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
-		(uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
-		.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-		.field_opr2 = {
 		(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff},
-		.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+		BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
 		}
 	},
 	{
@@ -3660,195 +3731,157 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 	},
 	{
 	.field_info_mask = {
-		.description = "ver_opt_len_o_c_rsvd0",
-		.field_bit_size = 16,
+		.description = "vni",
+		.field_bit_size = 24,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
 		.field_opr1 = {
+			0xff,
 			0xff,
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "ver_opt_len_o_c_rsvd0",
-		.field_bit_size = 16,
+		.description = "vni",
+		.field_bit_size = 24,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 & 0xff}
+		(BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}
 		}
 	},
 	{
 	.field_info_mask = {
-		.description = "proto_type",
-		.field_bit_size = 16,
+		.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}
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		},
 	.field_info_spec = {
-		.description = "proto_type",
-		.field_bit_size = 16,
+		.description = "tbl_scope",
+		.field_bit_size = 5,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE & 0xff}
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.wr */
 	{
 	.field_info_mask = {
-		.description = "vni",
-		.field_bit_size = 24,
+		.description = "dmac",
+		.field_bit_size = 48,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
 		.field_opr1 = {
 			0xff,
 			0xff,
-			0xff}
-		},
-	.field_info_spec = {
-		.description = "vni",
-		.field_bit_size = 24,
-		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_VNI >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_VNI & 0xff}
-		}
-	},
-	{
-	.field_info_mask = {
-		.description = "opt_w0",
-		.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 = "opt_w0",
-		.field_bit_size = 32,
+		.description = "dmac",
+		.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_GENEVE_OPT_W0 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 & 0xff}
+		(BNXT_ULP_ENC_FIELD_ETH_DMAC >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_ETH_DMAC & 0xff}
 		}
 	},
 	{
 	.field_info_mask = {
-		.description = "opt_w1",
-		.field_bit_size = 32,
+		.description = "ipv6_dst_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}
-		},
-	.field_info_spec = {
-		.description = "opt_w1",
-		.field_bit_size = 32,
-		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 & 0xff}
-		}
-	},
-	{
-	.field_info_mask = {
-		.description = "opt_w2",
-		.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,
+			0xff,
 			0xff,
 			0xff,
 			0xff,
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "opt_w2",
-		.field_bit_size = 32,
+		.description = "ipv6_dst_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_GENEVE_OPT_W2 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 & 0xff}
+		(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
 		}
 	},
 	{
 	.field_info_mask = {
-		.description = "opt_w3",
-		.field_bit_size = 32,
+		.description = "udp_sport",
+		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
 		.field_opr1 = {
-			0xff,
-			0xff,
 			0xff,
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "opt_w3",
-		.field_bit_size = 32,
+		.description = "udp_sport",
+		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 & 0xff}
+		(BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}
 		}
 	},
 	{
 	.field_info_mask = {
-		.description = "opt_w4",
-		.field_bit_size = 32,
+		.description = "udp_dport",
+		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
 		.field_opr1 = {
-			0xff,
-			0xff,
 			0xff,
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "opt_w4",
-		.field_bit_size = 32,
+		.description = "udp_dport",
+		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 & 0xff}
+		(BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}
 		}
 	},
 	{
 	.field_info_mask = {
-		.description = "opt_w5",
-		.field_bit_size = 32,
+		.description = "vni",
+		.field_bit_size = 24,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
 		.field_opr1 = {
-			0xff,
 			0xff,
 			0xff,
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "opt_w5",
-		.field_bit_size = 32,
+		.description = "vni",
+		.field_bit_size = 24,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
+		(BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}
 		}
 	},
 	{
@@ -3865,7 +3898,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.wr */
+	/* act_tid: 7, , table: geneve_encap_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4013,13 +4046,19 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		.description = "ver_opt_len_o_c_rsvd0",
 		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+		.field_opr1 = {
+			0xff,
+			0xff}
 		},
 	.field_info_spec = {
 		.description = "ver_opt_len_o_c_rsvd0",
 		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 & 0xff}
 		}
 	},
 	{
@@ -4027,13 +4066,19 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		.description = "proto_type",
 		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+		.field_opr1 = {
+			0xff,
+			0xff}
 		},
 	.field_info_spec = {
 		.description = "proto_type",
 		.field_bit_size = 16,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE & 0xff}
 		}
 	},
 	{
@@ -4202,894 +4247,423 @@ struct bnxt_ulp_mapper_key_info ulp_thor2_act_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
-	}
-};
-
-struct bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[] = {
-};
-
-struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
-	/* act_tid: 1, , table: mod_record.ing_no_ttl */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
+	/* act_tid: 7, , table: geneve_encap_rec_cache.wr */
 	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "dmac",
+		.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 = "dmac",
+		.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_DMAC >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_ETH_DMAC & 0xff}
+		}
 	},
 	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "ipv4_dst_addr",
+		.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 = "ipv4_dst_addr",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
+		.field_opr1 = {
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
+		(uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
+		.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr2 = {
+		(BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff},
+		.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+		}
 	},
 	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "ipv6_dst_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 = "ipv6_dst_addr",
+		.field_bit_size = 128,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
+		.field_opr1 = {
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
+		((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
+		(uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
+		.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr2 = {
+		(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff},
+		.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+		}
 	},
 	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l2_smac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	/* act_tid: 1, , table: mod_record.ing_ttl */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_pfid",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_rsvd",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_tl3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_il3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_otl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_tl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_il3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l2_smac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	/* act_tid: 1, , table: cmm_stat_record.f1_flow */
-	{
-	.description = "packet_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "byte_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 1, , table: cmm_stat_record.0 */
-	{
-	.description = "packet_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "byte_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 1, , table: cmm_full_act_record.0 */
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
-	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr3 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
-	},
-	{
-	.description = "dest_op",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	ULP_THOR2_SYM_DECAP_FUNC_THRU_TUN},
-	.field_src3 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr3 = {
-	ULP_THOR2_SYM_DECAP_FUNC_NONE}
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_METER & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_METER_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "stat0_ing_egr",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_F1 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_F1 & 0xff}
-	},
-	{
-	.description = "stat1_ing_egr",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
-	},
-	{
-	.description = "encap_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "src_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rsvd0",
-	.field_bit_size = 7,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 2, , table: mirror_tbl.alloc */
-	{
-	.description = "reserved1",
-	.field_bit_size = 21,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "arp_relative",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "action_hint",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "sample_mode",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "trunc_mode",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ignore_drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "copy_mode",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirr_cond",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "act_rec_ptr",
-	.field_bit_size = 26,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved2",
-	.field_bit_size = 6,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "samp_cfg",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "padding1",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 2, , table: cmm_stat_record.0 */
-	{
-	.description = "packet_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "byte_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 2, , table: cmm_full_act_record.0 */
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
-	},
-	{
-	.description = "dest_op",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "stat0_ing_egr",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_ing_egr",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "udp_sport",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+		.field_opr1 = {
+			0xff,
+			0xff}
+		},
+	.field_info_spec = {
+		.description = "udp_sport",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}
+		}
 	},
 	{
-	.description = "stat1_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "udp_dport",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+		.field_opr1 = {
+			0xff,
+			0xff}
+		},
+	.field_info_spec = {
+		.description = "udp_dport",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}
+		}
 	},
 	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "ver_opt_len_o_c_rsvd0",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		},
+	.field_info_spec = {
+		.description = "ver_opt_len_o_c_rsvd0",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		}
 	},
 	{
-	.description = "encap_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "proto_type",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		},
+	.field_info_spec = {
+		.description = "proto_type",
+		.field_bit_size = 16,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		}
 	},
 	{
-	.description = "src_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "vni",
+		.field_bit_size = 24,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+		.field_opr1 = {
+			0xff,
+			0xff,
+			0xff}
+		},
+	.field_info_spec = {
+		.description = "vni",
+		.field_bit_size = 24,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_VNI >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_VNI & 0xff}
+		}
 	},
 	{
-	.description = "rsvd0",
-	.field_bit_size = 7,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "opt_w0",
+		.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 = "opt_w0",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 & 0xff}
+		}
 	},
-	/* act_tid: 2, , table: mirror_tbl.wr */
 	{
-	.description = "reserved1",
-	.field_bit_size = 21,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "opt_w1",
+		.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 = "opt_w1",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 & 0xff}
+		}
 	},
 	{
-	.description = "arp_relative",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "opt_w2",
+		.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 = "opt_w2",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 & 0xff}
+		}
 	},
 	{
-	.description = "action_hint",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "opt_w3",
+		.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 = "opt_w3",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 & 0xff}
+		}
 	},
 	{
-	.description = "sample_mode",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "opt_w4",
+		.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 = "opt_w4",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 & 0xff}
+		}
 	},
 	{
-	.description = "trunc_mode",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_info_mask = {
+		.description = "opt_w5",
+		.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 = "opt_w5",
+		.field_bit_size = 32,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+		.field_opr1 = {
+		(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
+		}
 	},
 	{
-	.description = "ignore_drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = 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
+		},
+	.field_info_spec = {
+		.description = "tbl_scope",
+		.field_bit_size = 5,
+		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+		}
+	}
+};
+
+struct bnxt_ulp_mapper_field_info ulp_thor2_act_key_ext_list[] = {
 	{
-	.description = "copy_mode",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+		.description = "vnic_or_vport",
+		.field_bit_size = 11,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-	3}
-	},
-	{
-	.description = "mirr_cond",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
+		(20 >> 8) & 0xff,
+		20 & 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_ACT_PROP,
+	.field_opr3 = {
+	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
+		},
 	{
-	.description = "act_rec_ptr",
-	.field_bit_size = 26,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+		.description = "metadata_data",
+		.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
-	},
-	{
-	.description = "reserved2",
-	.field_bit_size = 6,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
+		(62 >> 8) & 0xff,
+		62 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 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_SKIP
+		},
 	{
-	.description = "samp_cfg",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+		.description = "metadata_data",
+		.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		0xff,
-		0xff,
-		0xff,
-		0xff}
-	},
+		(73 >> 8) & 0xff,
+		73 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 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_SKIP
+		},
 	{
-	.description = "padding1",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 2, , table: shared_mirror_record.wr */
+		.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 = {
+		(91 >> 8) & 0xff,
+		91 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	(ULP_THOR2_SYM_LOOPBACK_PORT >> 8) & 0xff,
+	ULP_THOR2_SYM_LOOPBACK_PORT & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr3 = {
+	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
+		}
+};
+
+struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
+	/* act_tid: 1, , table: jump_index_table.alloc */
+	/* act_tid: 1, , table: flow_chain_cache.write */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -5100,20 +4674,33 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "mirror_id",
-	.field_bit_size = 5,
+	.description = "metadata",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MIRROR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
+	(BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_JUMP_META & 0xff}
 	},
-	/* act_tid: 3, , table: mod_record.ing_no_ttl */
+	/* act_tid: 1, , table: mod_record.ttl_0 */
 	{
 	.description = "metadata_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "rem_ovlan",
@@ -5143,7 +4730,9 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "ttl_update",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
 	},
 	{
 	.description = "tun_md_en",
@@ -5310,6 +4899,135 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
+	.description = "metadata_rsvd",
+	.field_bit_size = 10,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_op",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	ULP_THOR2_SYM_METADATA_OP_NORMAL},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_prof",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	ULP_THOR2_SYM_META_PROFILE_0},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_data",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 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_SKIP
+	},
+	{
+	.description = "alt_pfid",
+	.field_bit_size = 5,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "alt_vid",
+	.field_bit_size = 12,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_rsvd",
+	.field_bit_size = 10,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_tl3_dec",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opr1 = {
+	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
+	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
+	},
+	{
+	.description = "ttl_il3_dec",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opr1 = {
+	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
+	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
+	},
+	{
+	.description = "ttl_otl3_rdir",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_tl3_rdir",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_il3_rdir",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
 	.description = "l2_dmac",
 	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
@@ -5469,12 +5187,25 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 3, , table: mod_record.ing_ttl */
+	/* act_tid: 1, , table: mod_record.non_ttl_0 */
 	{
 	.description = "metadata_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "rem_ovlan",
@@ -5504,9 +5235,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "ttl_update",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "tun_md_en",
@@ -5673,58 +5402,79 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "alt_pfid",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_rsvd",
+	.description = "metadata_rsvd",
 	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_tl3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_il3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
 	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "ttl_otl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "metadata_op",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	ULP_THOR2_SYM_METADATA_OP_NORMAL},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "ttl_tl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "metadata_prof",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	ULP_THOR2_SYM_META_PROFILE_0},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "ttl_il3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "metadata_data",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 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_SKIP
 	},
 	{
 	.description = "l2_dmac",
@@ -5886,7 +5636,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 3, , table: cmm_stat_record.0 */
+	/* act_tid: 1, , table: cmm_stat_record.f1_flow */
 	{
 	.description = "packet_count",
 	.field_bit_size = 64,
@@ -5899,7 +5649,22 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: cmm_full_act_record.0 */
+	/* act_tid: 1, , table: cmm_stat_record.0 */
+	{
+	.description = "packet_count",
+	.field_bit_size = 64,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "byte_count",
+	.field_bit_size = 64,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	/* act_tid: 1, , table: vnic_interface_rss_config.0 */
+	/* act_tid: 1, , table: vnic_interface_queue_config.0 */
+	/* act_tid: 1, , table: cmm_full_act_record.0 */
 	{
 	.description = "type",
 	.field_bit_size = 3,
@@ -5926,28 +5691,34 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	{
 	.description = "vlan_del_rpt",
 	.field_bit_size = 2,
-	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	ULP_THOR2_SYM_VLAN_DEL_RPT_STRIP_OUTER},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "vnic_or_vport",
 	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff},
+		(19 >> 8) & 0xff,
+		19 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
-	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr3 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
+	.field_src3 = BNXT_ULP_FIELD_SRC_NEXT
 	},
 	{
 	.description = "dest_op",
@@ -5958,34 +5729,35 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	{
 	.description = "decap_func",
 	.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_OR,
+	.field_opr1 = {
+		(22 >> 8) & 0xff,
+		22 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	ULP_THOR2_SYM_DECAP_FUNC_THRU_TUN},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "mirror",
 	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
 	{
 	.description = "meter_ptr",
 	.field_bit_size = 10,
 	.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_METER_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff}
 	},
 	{
 	.description = "stat0_ptr",
@@ -6012,7 +5784,10 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "stat1_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_FLOW_CNTR_PTR_F1 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_F1 & 0xff}
 	},
 	{
 	.description = "stat1_ing_egr",
@@ -6053,8 +5828,80 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 4, , table: vnic_interface_rss_config.0 */
-	/* act_tid: 4, , table: cmm_stat_record.0 */
+	/* act_tid: 3, , table: mirror_tbl.alloc */
+	{
+	.description = "reserved1",
+	.field_bit_size = 21,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "arp_relative",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "action_hint",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "sample_mode",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "trunc_mode",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ignore_drop",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "copy_mode",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "mirr_cond",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "act_rec_ptr",
+	.field_bit_size = 26,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "reserved2",
+	.field_bit_size = 6,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "samp_cfg",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "padding1",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	/* act_tid: 3, , table: cmm_stat_record.0 */
 	{
 	.description = "packet_count",
 	.field_bit_size = 64,
@@ -6067,7 +5914,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 4, , table: cmm_full_act_record.0 */
+	/* act_tid: 3, , table: cmm_full_act_record.0 */
 	{
 	.description = "type",
 	.field_bit_size = 3,
@@ -6092,10 +5939,10 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "vnic_or_vport",
 	.field_bit_size = 11,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_RSS_VNIC >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RSS_VNIC & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
 	},
 	{
 	.description = "dest_op",
@@ -6112,22 +5959,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	{
 	.description = "mirror",
 	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "meter_ptr",
@@ -6151,54 +5984,156 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat0_ctr_type",
+	.description = "stat0_ctr_type",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "stat1_ptr",
+	.field_bit_size = 28,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "stat1_ing_egr",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "stat1_ctr_type",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "mod_rec_ptr",
+	.field_bit_size = 28,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "encap_ptr",
+	.field_bit_size = 28,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "src_ptr",
+	.field_bit_size = 28,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "rsvd0",
+	.field_bit_size = 7,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	/* act_tid: 3, , table: mirror_tbl.wr */
+	{
+	.description = "reserved1",
+	.field_bit_size = 21,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "arp_relative",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "action_hint",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "sample_mode",
 	.field_bit_size = 2,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat1_ptr",
-	.field_bit_size = 28,
+	.description = "trunc_mode",
+	.field_bit_size = 2,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat1_ing_egr",
+	.description = "ignore_drop",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat1_ctr_type",
+	.description = "copy_mode",
 	.field_bit_size = 2,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	3}
 	},
 	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 28,
+	.description = "mirr_cond",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "encap_ptr",
-	.field_bit_size = 28,
+	.description = "act_rec_ptr",
+	.field_bit_size = 26,
 	.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_ACTION_PTR >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
 	},
 	{
-	.description = "src_ptr",
-	.field_bit_size = 28,
+	.description = "reserved2",
+	.field_bit_size = 6,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "rsvd0",
-	.field_bit_size = 7,
+	.description = "samp_cfg",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+	.field_opr1 = {
+		0xff,
+		0xff,
+		0xff,
+		0xff}
+	},
+	{
+	.description = "padding1",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.wr */
+	/* act_tid: 3, , table: shared_mirror_record.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 = "mirror_id",
+	.field_bit_size = 5,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr1 = {
+	(BNXT_ULP_RF_IDX_MIRROR_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
+	},
+	/* act_tid: 6, , table: meter_profile_tbl_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -6305,202 +6240,9 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
 	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR & 0xff}
-	},
-	/* act_tid: 5, , table: meter_tbl.0 */
-	{
-	.description = "bkt_c",
-	.field_bit_size = 27,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	(134217727 >> 24) & 0xff,
-	(134217727 >> 16) & 0xff,
-	(134217727 >> 8) & 0xff,
-	134217727 & 0xff}
-	},
-	{
-	.description = "bkt_e",
-	.field_bit_size = 27,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	(134217727 >> 24) & 0xff,
-	(134217727 >> 16) & 0xff,
-	(134217727 >> 8) & 0xff,
-	134217727 & 0xff}
-	},
-	{
-	.description = "mtr_val",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff}
-	},
-	{
-	.description = "ecn_rmp_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff}
-	},
-	{
-	.description = "cf",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_CF_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_CF_0 & 0xff}
-	},
-	{
-	.description = "pm",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_PM_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_PM_0 & 0xff}
-	},
-	{
-	.description = "rfc2698",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_RFC2698_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RFC2698_0 & 0xff}
-	},
-	{
-	.description = "cbsm",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_CBSM_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_CBSM_0 & 0xff}
-	},
-	{
-	.description = "ebsm",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_EBSM_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_EBSM_0 & 0xff}
-	},
-	{
-	.description = "cbnd",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_CBND_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_CBND_0 & 0xff}
-	},
-	{
-	.description = "ebnd",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_EBND_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_EBND_0 & 0xff}
-	},
-	{
-	.description = "cbs",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_CBS_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_CBS_0 & 0xff}
-	},
-	{
-	.description = "ebs",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_EBS_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_EBS_0 & 0xff}
-	},
-	{
-	.description = "cir",
-	.field_bit_size = 17,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_CIR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_CIR_0 & 0xff}
-	},
-	{
-	.description = "eir",
-	.field_bit_size = 17,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_EIR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_EIR_0 & 0xff}
-	},
-	{
-	.description = "scope",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
-	.field_opr1 = {
-		(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}
-	},
-	{
-	.description = "rsvd",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "prot_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	/* act_tid: 5, , table: shared_meter_tbl_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 = "meter_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_METER_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff}
-	},
-	{
-	.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}
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR & 0xff}
 	},
-	/* act_tid: 5, , table: meter_tbl.update_wr */
+	/* act_tid: 6, , table: meter_tbl.0 */
 	{
 	.description = "bkt_c",
 	.field_bit_size = 27,
@@ -6526,36 +6268,20 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	{
 	.description = "mtr_val",
 	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
 	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr3 = {
-	(BNXT_ULP_RF_IDX_RF_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RF_0 & 0xff}
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff}
 	},
 	{
 	.description = "ecn_rmp_en",
 	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
 	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr3 = {
-	(BNXT_ULP_RF_IDX_RF_1 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RF_1 & 0xff}
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff}
 	},
 	{
 	.description = "cf",
@@ -6660,7 +6386,12 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "scope",
 	.field_bit_size = 5,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
+	.field_opr1 = {
+		(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}
 	},
 	{
 	.description = "rsvd",
@@ -6676,307 +6407,258 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 6, , table: mod_record.ing_ttl */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.wr */
 	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
+	.description = "rid",
+	.field_bit_size = 32,
 	.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_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
+	.description = "meter_ptr",
+	.field_bit_size = 10,
 	.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_METER_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff}
 	},
 	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
+	.description = "sw_meter_profile_id",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.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: meter_tbl.update_wr */
 	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
+	.description = "bkt_c",
+	.field_bit_size = 27,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
 	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_pfid",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_rsvd",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	(134217727 >> 24) & 0xff,
+	(134217727 >> 16) & 0xff,
+	(134217727 >> 8) & 0xff,
+	134217727 & 0xff}
 	},
 	{
-	.description = "ttl_tl3_dec",
-	.field_bit_size = 1,
+	.description = "bkt_e",
+	.field_bit_size = 27,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
 	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
+	(134217727 >> 24) & 0xff,
+	(134217727 >> 16) & 0xff,
+	(134217727 >> 8) & 0xff,
+	134217727 & 0xff}
 	},
 	{
-	.description = "ttl_il3_dec",
+	.description = "mtr_val",
 	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr3 = {
+	(BNXT_ULP_RF_IDX_RF_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RF_0 & 0xff}
 	},
 	{
-	.description = "ttl_otl3_rdir",
+	.description = "ecn_rmp_en",
 	.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_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr3 = {
+	(BNXT_ULP_RF_IDX_RF_1 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RF_1 & 0xff}
 	},
 	{
-	.description = "ttl_tl3_rdir",
+	.description = "cf",
 	.field_bit_size = 1,
 	.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_CF_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_CF_0 & 0xff}
 	},
 	{
-	.description = "ttl_il3_rdir",
+	.description = "pm",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 6, , table: cmm_stat_record.0 */
-	{
-	.description = "packet_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "byte_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 6, , table: cmm_full_act_record.0 */
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	1}
+	(BNXT_ULP_RF_IDX_PM_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_PM_0 & 0xff}
 	},
 	{
-	.description = "drop",
+	.description = "rfc2698",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_RF_IDX_RFC2698_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RFC2698_0 & 0xff}
 	},
 	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
+	.description = "cbsm",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
+	(BNXT_ULP_RF_IDX_CBSM_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_CBSM_0 & 0xff}
 	},
 	{
-	.description = "dest_op",
-	.field_bit_size = 2,
+	.description = "ebsm",
+	.field_bit_size = 1,
 	.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_EBSM_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_EBSM_0 & 0xff}
 	},
 	{
-	.description = "decap_func",
-	.field_bit_size = 5,
+	.description = "cbnd",
+	.field_bit_size = 1,
 	.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_CBND_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_CBND_0 & 0xff}
 	},
 	{
-	.description = "mirror",
-	.field_bit_size = 5,
+	.description = "ebnd",
+	.field_bit_size = 1,
 	.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_EBND_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_EBND_0 & 0xff}
 	},
 	{
-	.description = "meter_ptr",
-	.field_bit_size = 10,
+	.description = "cbs",
+	.field_bit_size = 12,
 	.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_CBS_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_CBS_0 & 0xff}
 	},
 	{
-	.description = "stat0_ptr",
-	.field_bit_size = 28,
+	.description = "ebs",
+	.field_bit_size = 12,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
+	(BNXT_ULP_RF_IDX_EBS_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_EBS_0 & 0xff}
 	},
 	{
-	.description = "stat0_ing_egr",
-	.field_bit_size = 1,
+	.description = "cir",
+	.field_bit_size = 17,
 	.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_CIR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_CIR_0 & 0xff}
 	},
 	{
-	.description = "stat0_ctr_type",
-	.field_bit_size = 2,
+	.description = "eir",
+	.field_bit_size = 17,
 	.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_EIR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_EIR_0 & 0xff}
 	},
 	{
-	.description = "stat1_ptr",
-	.field_bit_size = 28,
+	.description = "scope",
+	.field_bit_size = 5,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat1_ing_egr",
+	.description = "rsvd",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat1_ctr_type",
-	.field_bit_size = 2,
+	.description = "prot_en",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
 	},
+	/* act_tid: 7, , table: jump_index_table.alloc */
+	/* act_tid: 7, , table: flow_chain_cache.write */
 	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 28,
+	.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_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
+	(BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "encap_ptr",
-	.field_bit_size = 28,
+	.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_RF,
+	.field_opr1 = {
+	(BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_JUMP_META & 0xff}
 	},
+	/* act_tid: 7, , table: cmm_stat_record.0 */
 	{
-	.description = "src_ptr",
-	.field_bit_size = 28,
+	.description = "packet_count",
+	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "rsvd0",
-	.field_bit_size = 7,
+	.description = "byte_count",
+	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: mod_record.egr_no_ttl */
+	/* act_tid: 7, , table: mod_record.ttl_0 */
 	{
 	.description = "metadata_en",
 	.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_OR,
+	.field_opr1 = {
+		(53 >> 8) & 0xff,
+		53 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "rem_ovlan",
@@ -7006,7 +6688,9 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "ttl_update",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
 	},
 	{
 	.description = "tun_md_en",
@@ -7173,6 +6857,118 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
+	.description = "metadata_rsvd",
+	.field_bit_size = 10,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(55 >> 8) & 0xff,
+		55 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_op",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(57 >> 8) & 0xff,
+		57 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_prof",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(59 >> 8) & 0xff,
+		59 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_data",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
+	.field_opr1 = {
+		(61 >> 8) & 0xff,
+		61 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr2 = {
+	(BNXT_ULP_RF_IDX_RF_1 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RF_1 & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_NEXT,
+	.field_opr3 = {
+	(1 >> 8) & 0xff,
+	1 & 0xff}
+	},
+	{
+	.description = "alt_pfid",
+	.field_bit_size = 5,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "alt_vid",
+	.field_bit_size = 12,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_rsvd",
+	.field_bit_size = 10,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_tl3_dec",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opr1 = {
+	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
+	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
+	},
+	{
+	.description = "ttl_il3_dec",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opr1 = {
+	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
+	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
+	},
+	{
+	.description = "ttl_otl3_rdir",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_tl3_rdir",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ttl_il3_rdir",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
 	.description = "l2_dmac",
 	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
@@ -7332,12 +7128,21 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 7, , table: mod_record.egr_ttl */
+	/* act_tid: 7, , table: mod_record.non_ttl_0 */
 	{
 	.description = "metadata_en",
 	.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_OR,
+	.field_opr1 = {
+		(64 >> 8) & 0xff,
+		64 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "rem_ovlan",
@@ -7367,9 +7172,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "ttl_update",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "tun_md_en",
@@ -7536,58 +7339,62 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "alt_pfid",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_rsvd",
+	.description = "metadata_rsvd",
 	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_tl3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_il3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
+		(66 >> 8) & 0xff,
+		66 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "ttl_otl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "metadata_op",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(68 >> 8) & 0xff,
+		68 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "ttl_tl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "metadata_prof",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(70 >> 8) & 0xff,
+		70 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "ttl_il3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "metadata_data",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
+	.field_opr1 = {
+		(72 >> 8) & 0xff,
+		72 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr2 = {
+	(BNXT_ULP_RF_IDX_RF_1 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RF_1 & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_NEXT,
+	.field_opr3 = {
+	(2 >> 8) & 0xff,
+	2 & 0xff}
 	},
 	{
 	.description = "l2_dmac",
@@ -7749,350 +7556,314 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 7, , table: cmm_stat_record.0 */
-	{
-	.description = "packet_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "byte_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 7, , table: cmm_full_act_record.0 */
+	/* act_tid: 7, , table: sp_smac_ipv4.0 */
 	{
-	.description = "type",
-	.field_bit_size = 3,
+	.description = "smac",
+	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	1}
+	(BNXT_ULP_ENC_FIELD_ETH_SMAC >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_ETH_SMAC & 0xff}
 	},
 	{
-	.description = "drop",
-	.field_bit_size = 1,
+	.description = "ipv4_src_addr",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
+	(BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff}
 	},
 	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
+	.description = "reserved",
+	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
+	/* act_tid: 7, , table: source_property_cache.wr */
 	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
+	.description = "rid",
+	.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_RF,
 	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
-	},
-	{
-	.description = "dest_op",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "stat0_ptr",
-	.field_bit_size = 28,
+	.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_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
+	(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 = "stat0_ing_egr",
+	.description = "ecv_valid",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_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_CONST,
+	.field_opr1 = {
+	ULP_THOR2_SYM_ECV_VALID_YES}
 	},
 	{
-	.description = "stat1_ing_egr",
+	.description = "ecv_custom_en",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "stat1_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 28,
+	.description = "ecv_vtag_type",
+	.field_bit_size = 4,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
-	},
-	{
-	.description = "encap_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "src_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rsvd0",
-	.field_bit_size = 7,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 8, , table: cmm_stat_record.0 */
-	{
-	.description = "packet_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "byte_count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 8, , table: mod_record.egr_set_mac */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE & 0xff}
 	},
 	{
-	.description = "rem_ovlan",
+	.description = "ecv_l2_en",
 	.field_bit_size = 1,
 	.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_ECV_L2_EN_YES}
 	},
 	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
+	.description = "ecv_l3_type",
+	.field_bit_size = 3,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE & 0xff}
 	},
 	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
+	.description = "ecv_l4_type",
+	.field_bit_size = 3,
 	.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_ECV_L4_TYPE_UDP_CSUM}
 	},
 	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
+	.description = "ecv_tun_type",
+	.field_bit_size = 3,
 	.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_ECV_TUN_TYPE_VXLAN}
 	},
 	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
+	.description = "enc_eth_dmac",
+	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_ETH_DMAC >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_ETH_DMAC & 0xff}
 	},
 	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "enc_o_vlan_tag",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr2 = {
+	(BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.description = "enc_o_vlan_type",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr2 = {
+	(BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
+	.description = "enc_i_vlan_tag",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
+	.description = "enc_i_vlan_type",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
+	.description = "enc_ipv4_ihl",
+	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff}
 	},
 	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
+	.description = "enc_ipv4_tos",
+	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff}
 	},
 	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
+	.description = "enc_ipv4_pkt_id",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff}
 	},
 	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
+	.description = "enc_ipv4_frag",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff}
 	},
 	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
+	.description = "enc_ipv4_ttl",
+	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff}
 	},
 	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
+	.description = "enc_ipv4_proto",
+	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff}
 	},
 	{
-	.description = "l2_dmac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.description = "enc_ipv4_daddr",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	(BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}
 	},
 	{
-	.description = "l2_smac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.description = "enc_udp_sport",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	(BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}
 	},
-	/* act_tid: 8, , table: sp_smac_ipv4.0 */
 	{
-	.description = "smac",
-	.field_bit_size = 48,
+	.description = "enc_udp_dport",
+	.field_bit_size = 16,
 	.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}
+	(BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}
 	},
 	{
-	.description = "ipv4_src_addr",
-	.field_bit_size = 32,
+	.description = "enc_vxlan_flags",
+	.field_bit_size = 8,
 	.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_VXLAN_FLAGS >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff}
 	},
 	{
-	.description = "reserved",
-	.field_bit_size = 48,
+	.description = "enc_vxlan_rsvd0",
+	.field_bit_size = 24,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff}
 	},
-	/* act_tid: 8, , table: source_property_cache.wr */
+	{
+	.description = "enc_vxlan_vni",
+	.field_bit_size = 24,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}
+	},
+	{
+	.description = "enc_vxlan_rsvd1",
+	.field_bit_size = 8,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}
+	},
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -8103,15 +7874,15 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "sp_rec_ptr",
+	.description = "enc_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}
+	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
-	/* act_tid: 8, , table: ext_tun_vxlan_encap_record.ipv4_vxlan */
+	/* act_tid: 7, , table: ext_tun_vxlan_encap_record.ipv6_vxlan */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -8258,67 +8029,46 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "enc_ipv4_ihl",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff}
-	},
-	{
-	.description = "enc_ipv4_tos",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff}
-	},
-	{
-	.description = "enc_ipv4_pkt_id",
-	.field_bit_size = 16,
+	.description = "enc_ipv6_vtc",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff}
+	(BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff}
 	},
 	{
-	.description = "enc_ipv4_frag",
+	.description = "enc_ipv6_zero",
 	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "enc_ipv4_ttl",
+	.description = "enc_ipv6_proto",
 	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff}
+	(BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}
 	},
 	{
-	.description = "enc_ipv4_proto",
+	.description = "enc_ipv6_ttl",
 	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff}
+	(BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}
 	},
 	{
-	.description = "enc_ipv4_daddr",
-	.field_bit_size = 32,
+	.description = "enc_ipv6_daddr",
+	.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_DADDR >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}
+	(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
 	},
 	{
 	.description = "enc_udp_sport",
@@ -8374,7 +8124,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -8393,7 +8143,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
-	/* act_tid: 8, , table: ext_tun_geneve_encap_record.ipv4_vxlan */
+	/* act_tid: 7, , table: ext_tun_geneve_encap_record.ipv4_vxlan */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -8710,7 +8460,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
 	},
-	/* act_tid: 8, , table: ext_tun_geneve_encap_record.ipv6_geneve */
+	/* act_tid: 7, , table: ext_tun_geneve_encap_record.ipv6_geneve */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -8875,434 +8625,237 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "enc_ipv6_proto",
 	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}
-	},
-	{
-	.description = "enc_ipv6_ttl",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}
-	},
-	{
-	.description = "enc_ipv6_daddr",
-	.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_DADDR >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
-	},
-	{
-	.description = "enc_udp_sport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}
-	},
-	{
-	.description = "enc_udp_dport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}
-	},
-	{
-	.description = "enc_geneve_ver_opt_len_o_c_rsvd0",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 & 0xff}
-	},
-	{
-	.description = "enc_geneve_proto_type",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE & 0xff}
-	},
-	{
-	.description = "enc_geneve_vni",
-	.field_bit_size = 24,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_VNI >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_VNI & 0xff}
-	},
-	{
-	.description = "enc_geneve_rsvd1",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_RSVD1 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_RSVD1 & 0xff}
-	},
-	{
-	.description = "enc_geneve_opt_w0",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 & 0xff}
-	},
-	{
-	.description = "enc_geneve_opt_w1",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 & 0xff}
-	},
-	{
-	.description = "enc_geneve_opt_w2",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 & 0xff}
-	},
-	{
-	.description = "enc_geneve_opt_w3",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 & 0xff}
-	},
-	{
-	.description = "enc_geneve_opt_w4",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 & 0xff}
-	},
-	{
-	.description = "enc_geneve_opt_w5",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
-	.field_opr1 = {
-	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
-	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
-	},
-	/* act_tid: 8, , table: geneve_encap_rec_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 = "enc_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_ENCAP_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
-	},
-	/* act_tid: 8, , table: cmm_full_act_record.0 */
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
-	},
-	{
-	.description = "dest_op",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "stat0_ing_egr",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat0_ctr_type",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_ptr",
-	.field_bit_size = 28,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stat1_ing_egr",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff}
 	},
 	{
-	.description = "stat1_ctr_type",
-	.field_bit_size = 2,
+	.description = "enc_ipv6_ttl",
+	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff}
 	},
 	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 28,
+	.description = "enc_ipv6_daddr",
+	.field_bit_size = 128,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
+	(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
 	},
 	{
-	.description = "encap_ptr",
-	.field_bit_size = 28,
+	.description = "enc_udp_sport",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
+	(BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff}
 	},
 	{
-	.description = "src_ptr",
-	.field_bit_size = 28,
+	.description = "enc_udp_dport",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff}
+	(BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff}
 	},
 	{
-	.description = "rsvd0",
-	.field_bit_size = 7,
+	.description = "enc_geneve_ver_opt_len_o_c_rsvd0",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_VER_OPT_LEN_O_C_RSVD0 & 0xff}
 	},
-	/* act_tid: 9, , table: mod_record.meta */
 	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
+	.description = "enc_geneve_proto_type",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 	.field_opr1 = {
-	1}
+	(BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_PROTO_TYPE & 0xff}
 	},
 	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
+	.description = "enc_geneve_vni",
+	.field_bit_size = 24,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_VNI >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_VNI & 0xff}
 	},
 	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
+	.description = "enc_geneve_rsvd1",
+	.field_bit_size = 8,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_RSVD1 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_RSVD1 & 0xff}
 	},
 	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
+	.description = "enc_geneve_opt_w0",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W0 & 0xff}
 	},
 	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
+	.description = "enc_geneve_opt_w1",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W1 & 0xff}
 	},
 	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
+	.description = "enc_geneve_opt_w2",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W2 & 0xff}
 	},
 	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
+	.description = "enc_geneve_opt_w3",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W3 & 0xff}
 	},
 	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
+	.description = "enc_geneve_opt_w4",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W4 & 0xff}
 	},
 	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
+	.description = "enc_geneve_opt_w5",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
+	.field_opr1 = {
+	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
+	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
 	},
+	/* act_tid: 7, , table: geneve_encap_rec_cache.wr */
 	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
+	.description = "rid",
+	.field_bit_size = 32,
 	.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_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
+	.description = "enc_rec_ptr",
+	.field_bit_size = 32,
 	.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_ENCAP_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
+	/* act_tid: 7, , table: ext_vtag_encap_record.0 */
 	{
-	.description = "l3_dip_ipv6_en",
+	.description = "ecv_valid",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
 	},
 	{
-	.description = "l3_sip_ipv4_en",
+	.description = "ecv_custom_en",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
+	.description = "ecv_vtag_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_CONST,
+	.field_opr1 = {
+	ULP_THOR2_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
 	},
 	{
-	.description = "l4_sport_en",
+	.description = "ecv_l2_en",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
+	.description = "ecv_l3_type",
+	.field_bit_size = 3,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "metadata_rsvd",
-	.field_bit_size = 10,
+	.description = "ecv_l4_type",
+	.field_bit_size = 3,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "metadata_op",
-	.field_bit_size = 2,
+	.description = "ecv_tun_type",
+	.field_bit_size = 3,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "metadata_prof",
-	.field_bit_size = 4,
+	.description = "vtag_tpid",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_GLB_RF_IDX_GLB_METADATA_TX_ACT_0 >> 8) & 0xff,
-	BNXT_ULP_GLB_RF_IDX_GLB_METADATA_TX_ACT_0 & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff}
 	},
 	{
-	.description = "metadata_data",
-	.field_bit_size = 32,
+	.description = "vtag_pcp",
+	.field_bit_size = 3,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_RF_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RF_0 & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff}
 	},
-	/* act_tid: 9, , table: cmm_stat_record.0 */
 	{
-	.description = "packet_count",
-	.field_bit_size = 64,
+	.description = "vtag_de",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
-	.description = "byte_count",
-	.field_bit_size = 64,
+	.description = "vtag_vid",
+	.field_bit_size = 12,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
 	},
-	/* act_tid: 9, , table: cmm_full_act_record.0 */
+	/* act_tid: 7, , table: cmm_full_act_record.0 */
 	{
 	.description = "type",
 	.field_bit_size = 3,
@@ -9335,11 +8888,21 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	{
 	.description = "vnic_or_vport",
 	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-	(ULP_THOR2_SYM_LOOPBACK_PORT >> 8) & 0xff,
-	ULP_THOR2_SYM_LOOPBACK_PORT & 0xff}
+		(90 >> 8) & 0xff,
+		90 & 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_NEXT,
+	.field_opr3 = {
+	(3 >> 8) & 0xff,
+	3 & 0xff}
 	},
 	{
 	.description = "dest_op",
@@ -9357,7 +8920,10 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "mirror",
 	.field_bit_size = 5,
 	.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_MIRROR_ID_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
 	{
 	.description = "meter_ptr",
@@ -9378,9 +8944,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "stat0_ing_egr",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "stat0_ctr_type",
@@ -9419,7 +8983,10 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.description = "encap_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_ENCAP_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
 	{
 	.description = "src_ptr",
@@ -9433,7 +9000,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 10, , table: mod_record.meta */
+	/* act_tid: 12, , table: mod_record.meta */
 	{
 	.description = "metadata_en",
 	.field_bit_size = 1,
@@ -9562,7 +9129,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_RF_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_RF_0 & 0xff}
 	},
-	/* act_tid: 10, , table: cmm_stat_record.0 */
+	/* act_tid: 12, , table: cmm_stat_record.0 */
 	{
 	.description = "packet_count",
 	.field_bit_size = 64,
@@ -9575,7 +9142,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 10, , table: cmm_full_act_record.0 */
+	/* act_tid: 12, , table: cmm_full_act_record.0 */
 	{
 	.description = "type",
 	.field_bit_size = 3,
@@ -9709,6 +9276,13 @@ struct bnxt_ulp_mapper_field_info ulp_thor2_act_result_field_list[] = {
 };
 
 struct bnxt_ulp_mapper_ident_info ulp_thor2_act_ident_list[] = {
+	/* act_tid: 1, , table: flow_chain_cache.rd */
+	{
+	.description = "metadata",
+	.regfile_idx = BNXT_ULP_RF_IDX_JUMP_META,
+	.ident_bit_size = 32,
+	.ident_bit_pos = 32
+	},
 	/* act_tid: 1, , table: shared_meter_tbl_cache.rd */
 	{
 	.description = "meter_ptr",
@@ -9736,28 +9310,14 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_act_ident_list[] = {
 	.ident_bit_size = 64,
 	.ident_bit_pos = 54
 	},
-	/* act_tid: 2, , table: shared_mirror_record.del_chk */
+	/* act_tid: 3, , table: shared_mirror_record.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 0
 	},
-	/* act_tid: 3, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 5,
-	.ident_bit_pos = 32
-	},
-	/* act_tid: 4, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 5,
-	.ident_bit_pos = 32
-	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.rd2 */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.rd2 */
 	{
 	.description = "cbnd",
 	.regfile_idx = BNXT_ULP_RF_IDX_CBND_0,
@@ -9824,28 +9384,28 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_act_ident_list[] = {
 	.ident_bit_size = 1,
 	.ident_bit_pos = 34
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.del_chk */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 0
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.del_chk */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 0
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.rd_update */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */
 	{
 	.description = "meter_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.ident_bit_size = 10,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 5, , table: meter_tbl.update_rd */
+	/* act_tid: 6, , table: meter_tbl.update_rd */
 	{
 	.description = "cbnd",
 	.regfile_idx = BNXT_ULP_RF_IDX_CBND_0,
@@ -9924,21 +9484,42 @@ struct bnxt_ulp_mapper_ident_info ulp_thor2_act_ident_list[] = {
 	.ident_bit_size = 1,
 	.ident_bit_pos = 58
 	},
-	/* act_tid: 8, , table: source_property_cache.rd */
+	/* act_tid: 7, , table: flow_chain_cache.rd */
+	{
+	.description = "metadata",
+	.regfile_idx = BNXT_ULP_RF_IDX_JUMP_META,
+	.ident_bit_size = 32,
+	.ident_bit_pos = 32
+	},
+	/* act_tid: 7, , table: shared_mirror_record.rd */
+	{
+	.description = "mirror_id",
+	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
+	.ident_bit_size = 5,
+	.ident_bit_pos = 32
+	},
+	/* act_tid: 7, , table: source_property_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: 8, , table: vxlan_encap_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.rd */
+	{
+	.description = "enc_rec_ptr",
+	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
+	.ident_bit_size = 32,
+	.ident_bit_pos = 32
+	},
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.rd */
+	/* act_tid: 7, , table: geneve_encap_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
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 28c9b47815..1e386113d5 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
@@ -168,6 +168,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.ident_start_idx = 8,
 	.ident_nums = 1
 	},
@@ -305,6 +306,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 140,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.ident_start_idx = 10,
 	.ident_nums = 1
 	},
@@ -326,6 +328,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 140,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 15,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -536,6 +539,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_APP_PRI_OR_CONST,
 	.pri_operand = ULP_THOR2_SYM_PROF_TCAM_PRI_APP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.ident_start_idx = 20,
 	.ident_nums = 1
 	},
@@ -555,6 +559,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 31,
 	.result_bit_size = 256,
 	.result_num_fields = 172
@@ -616,6 +621,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 206,
 	.result_bit_size = 256,
 	.result_num_fields = 172
@@ -679,6 +685,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.pri_opcode  = BNXT_ULP_PRI_OPC_REGFILE,
 	.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,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -790,6 +797,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 396,
 	.result_bit_size = 256,
 	.result_num_fields = 172
@@ -916,6 +924,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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_bit_size = 128,
 	.result_num_fields = 15
@@ -1108,6 +1117,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.ident_start_idx = 35,
 	.ident_nums = 1
 	},
@@ -1127,6 +1137,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 602,
 	.result_bit_size = 256,
 	.result_num_fields = 172
@@ -1188,6 +1199,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 777,
 	.result_bit_size = 256,
 	.result_num_fields = 172
@@ -1252,6 +1264,7 @@ 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,
 	.critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 211,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -1363,6 +1376,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 967,
 	.result_bit_size = 256,
 	.result_num_fields = 172
@@ -1489,6 +1503,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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_bit_size = 128,
 	.result_num_fields = 15
@@ -1511,6 +1526,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1173,
 	.result_bit_size = 32,
 	.result_num_fields = 1
@@ -1533,6 +1549,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1174,
 	.result_bit_size = 32,
 	.result_num_fields = 1
@@ -1555,6 +1572,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1175,
 	.result_bit_size = 32,
 	.result_num_fields = 1
@@ -1577,6 +1595,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1176,
 	.result_bit_size = 32,
 	.result_num_fields = 1
@@ -1599,6 +1618,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1177,
 	.result_bit_size = 32,
 	.result_num_fields = 1
@@ -1621,6 +1641,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1178,
 	.result_bit_size = 32,
 	.result_num_fields = 1
@@ -1747,6 +1768,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_CATCHALL,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 356,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -1860,6 +1882,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.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_CATCHALL,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 426,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -2045,6 +2068,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.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 = 453,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -2074,6 +2098,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_CATCHALL,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 477,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -2249,6 +2274,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.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 = 546,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -2432,6 +2458,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_CATCHALL,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 574,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
@@ -2522,6 +2549,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor2_class_tbl_list[] = {
 	.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_CATCHALL,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 643,
 	.blob_key_bit_size = 256,
 	.key_bit_size = 256,
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c
index b8eb5e47f8..79850b2ad6 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_act.c
@@ -13,101 +13,121 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_act_tmpl_list[] = {
 	/* act_tid: 1, ingress */
 	[1] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 14,
+	.num_tbls = 17,
 	.start_tbl_idx = 0,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
 		.cond_start_idx = 0,
-		.cond_nums = 1 }
+		.cond_nums = 0 }
 	},
 	/* act_tid: 2, ingress */
 	[2] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 10,
-	.start_tbl_idx = 14,
+	.num_tbls = 1,
+	.start_tbl_idx = 17,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 17,
+		.cond_start_idx = 20,
 		.cond_nums = 0 }
 	},
 	/* act_tid: 3, ingress */
 	[3] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 6,
-	.start_tbl_idx = 24,
+	.num_tbls = 10,
+	.start_tbl_idx = 18,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 21,
-		.cond_nums = 1 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 20,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 4, ingress */
 	[4] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 7,
-	.start_tbl_idx = 30,
+	.num_tbls = 1,
+	.start_tbl_idx = 28,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 27,
-		.cond_nums = 2 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 24,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 5, ingress */
 	[5] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 20,
-	.start_tbl_idx = 37,
+	.num_tbls = 1,
+	.start_tbl_idx = 29,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 36,
+		.cond_start_idx = 24,
 		.cond_nums = 0 }
 	},
-	/* act_tid: 6, egress */
+	/* act_tid: 6, ingress */
 	[6] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 13,
-	.start_tbl_idx = 57,
+	.num_tbls = 20,
+	.start_tbl_idx = 30,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 51,
-		.cond_nums = 1 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 24,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 7, egress */
 	[7] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 6,
-	.start_tbl_idx = 70,
+	.num_tbls = 39,
+	.start_tbl_idx = 50,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 65,
-		.cond_nums = 1 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 39,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 8, egress */
 	[8] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 25,
-	.start_tbl_idx = 76,
+	.num_tbls = 1,
+	.start_tbl_idx = 89,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 71,
-		.cond_nums = 1 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 9, egress */
 	[9] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
-	.num_tbls = 5,
-	.start_tbl_idx = 101,
+	.num_tbls = 1,
+	.start_tbl_idx = 90,
 	.reject_info = {
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 103,
-		.cond_nums = 1 }
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 }
 	},
 	/* act_tid: 10, egress */
 	[10] = {
 	.device_name = BNXT_ULP_DEVICE_ID_THOR,
+	.num_tbls = 1,
+	.start_tbl_idx = 91,
+	.reject_info = {
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 }
+	},
+	/* act_tid: 11, egress */
+	[11] = {
+	.device_name = BNXT_ULP_DEVICE_ID_THOR,
+	.num_tbls = 1,
+	.start_tbl_idx = 92,
+	.reject_info = {
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 }
+	},
+	/* act_tid: 12, egress */
+	[12] = {
+	.device_name = BNXT_ULP_DEVICE_ID_THOR,
 	.num_tbls = 11,
-	.start_tbl_idx = 106,
+	.start_tbl_idx = 93,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 107,
+		.cond_start_idx = 86,
 		.cond_nums = 0 }
 	}
 };
@@ -123,7 +143,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 5,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 1,
+		.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,
@@ -142,9 +162,9 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 0,
+		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 2,
+		.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,
@@ -160,7 +180,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 2,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC,
 	.tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX,
@@ -179,7 +199,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 2,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -202,7 +222,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 2,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -226,7 +246,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3,
+		.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,
@@ -243,11 +263,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.description = "control.meter_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Reject due to unknown meter.",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 4,
+		.cond_start_idx = 3,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -263,7 +284,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 5,
+		.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,
@@ -280,36 +301,44 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Reject due to non-existent handle",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 6,
+		.cond_start_idx = 5,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 1, , table: int_flow_counter_tbl.0 */
-	.description = "int_flow_counter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
+	{ /* act_tid: 1, , table: control.do_mod */
+	.description = "control.do_mod",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 3,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 7,
+		.cond_start_idx = 6,
 		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.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 = 2,
-	.result_bit_size = 64,
-	.result_num_fields = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.func_info = {
+		.func_opc = BNXT_ULP_FUNC_OPC_BIT_AND,
+		.func_src1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_opr1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
+		.func_opr2 = BNXT_ULP_ACT_BIT_DEC_TTL |
+			BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+			BNXT_ULP_ACT_BIT_SET_MAC_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+			BNXT_ULP_ACT_BIT_SET_TP_SRC |
+			BNXT_ULP_ACT_BIT_SET_TP_DST |
+			BNXT_ULP_ACT_BIT_JUMP,
+		.func_dst_opr = BNXT_ULP_RF_IDX_RF_0 }
 	},
 	{ /* act_tid: 1, , table: mod_record.ing_ttl */
 	.description = "mod_record.ing_ttl",
@@ -322,16 +351,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 2,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 8,
+		.cond_start_idx = 7,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 3,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 2,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 29
+	.encap_num_fields = 35
 	},
 	{ /* act_tid: 1, , table: mod_record.ing_no_ttl */
 	.description = "mod_record.ing_no_ttl",
@@ -342,18 +372,95 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_AND,
-		.cond_start_idx = 0,
-		.cond_nums = 2 },
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 8,
+		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 32,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 37,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 22
+	.encap_num_fields = 28
+	},
+	{ /* act_tid: 1, , table: control.queue_and_rss_test */
+	.description = "control.queue_and_rss_test",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_RX,
+	.true_message = "Reject due to both queue and rss set",
+	.execute_info = {
+		.cond_true_goto  = 1,
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 9,
+		.cond_nums = 2 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 1, , table: vnic_interface_rss_config.0 */
+	.description = "vnic_interface_rss_config.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_RSS,
+	.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 = 11,
+		.cond_nums = 1 },
+	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.result_start_idx = 65,
+	.result_bit_size = 0,
+	.result_num_fields = 0
+	},
+	{ /* act_tid: 1, , table: vnic_interface_queue_config.0 */
+	.description = "vnic_interface_queue_config.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_QUEUE,
+	.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 = 12,
+		.cond_nums = 1 },
+	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.result_start_idx = 65,
+	.result_bit_size = 0,
+	.result_num_fields = 0
+	},
+	{ /* act_tid: 1, , table: int_flow_counter_tbl.0 */
+	.description = "int_flow_counter_tbl.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
+	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
+	.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 = 13,
+		.cond_nums = 1 },
+	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 65,
+	.result_bit_size = 64,
+	.result_num_fields = 1
 	},
 	{ /* act_tid: 1, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
@@ -364,42 +471,36 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 0,
-		.cond_false_goto = 1,
+		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 13,
+		.cond_start_idx = 14,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.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 = 54,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 66,
 	.result_bit_size = 128,
-	.result_num_fields = 17
+	.result_num_fields = 17,
+	.encap_num_fields = 0
 	},
-	{ /* act_tid: 1, , table: int_compact_act_record.0 */
-	.description = "int_compact_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
+	{ /* act_tid: 2, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
-		.cond_true_goto  = 0,
+		.cond_true_goto  = 1023,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 15,
+		.cond_start_idx = 20,
 		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.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 = 71,
-	.result_bit_size = 64,
-	.result_num_fields = 13
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 2, , table: control.delete_chk */
+	{ /* act_tid: 3, , table: control.delete_chk */
 	.description = "control.delete_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -407,12 +508,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 17,
+		.cond_start_idx = 20,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 2, , table: shared_mirror_record.del_chk */
+	{ /* act_tid: 3, , table: shared_mirror_record.del_chk */
 	.description = "shared_mirror_record.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -423,7 +524,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 21,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -437,7 +538,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.ident_start_idx = 3,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 2, , table: control.mirror_del_exist_chk */
+	{ /* act_tid: 3, , table: control.mirror_del_exist_chk */
 	.description = "control.mirror_del_exist_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -445,12 +546,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 18,
+		.cond_start_idx = 21,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 2, , table: control.mirror_ref_cnt_chk */
+	{ /* act_tid: 3, , table: control.mirror_ref_cnt_chk */
 	.description = "control.mirror_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -458,7 +559,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 19,
+		.cond_start_idx = 22,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -471,7 +572,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 2, , table: control.create */
+	{ /* act_tid: 3, , table: control.create */
 	.description = "control.create",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -479,13 +580,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 20,
+		.cond_start_idx = 23,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 2, , table: mirror_tbl.alloc */
+	{ /* act_tid: 3, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -496,7 +597,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 20,
+		.cond_start_idx = 23,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
@@ -504,11 +605,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 84,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 83,
 	.result_bit_size = 32,
 	.result_num_fields = 5
 	},
-	{ /* act_tid: 2, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 3, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -519,7 +621,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 20,
+		.cond_start_idx = 23,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
@@ -527,11 +629,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 89,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 88,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 2, , table: int_compact_act_record.0 */
+	{ /* act_tid: 3, , table: int_compact_act_record.0 */
 	.description = "int_compact_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
@@ -542,7 +645,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 21,
+		.cond_start_idx = 24,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
@@ -550,12 +653,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 90,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 89,
 	.result_bit_size = 64,
 	.result_num_fields = 13,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 2, , table: mirror_tbl.wr */
+	{ /* act_tid: 3, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -566,18 +670,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 21,
+		.cond_start_idx = 24,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 103,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 102,
 	.result_bit_size = 32,
 	.result_num_fields = 5
 	},
-	{ /* act_tid: 2, , table: shared_mirror_record.wr */
+	{ /* act_tid: 3, , table: shared_mirror_record.wr */
 	.description = "shared_mirror_record.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -588,7 +693,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 21,
+		.cond_start_idx = 24,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -600,292 +705,52 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.blob_key_bit_size = 8,
 	.key_bit_size = 8,
 	.key_num_fields = 1,
-	.result_start_idx = 108,
+	.result_start_idx = 107,
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 3, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
+	{ /* act_tid: 4, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 22,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
-	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 24,
+		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 6,
-	.blob_key_bit_size = 8,
-	.key_bit_size = 8,
-	.key_num_fields = 1,
-	.ident_start_idx = 4,
-	.ident_nums = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: control.mirror */
-	.description = "control.mirror",
+	{ /* act_tid: 5, , table: control.reject */
+	.description = "control.reject",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
 		.cond_true_goto  = 1023,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 23,
-		.cond_nums = 1 },
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 24,
+		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: int_flow_counter_tbl.0 */
-	.description = "int_flow_counter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
+	{ /* act_tid: 6, , table: control.create_check */
+	.description = "control.create_check",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 11,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 24,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
+		.cond_nums = 2 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 110,
-	.result_bit_size = 64,
-	.result_num_fields = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: mod_record.ing_ttl */
-	.description = "mod_record.ing_ttl",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 25,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 111,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 31
-	},
-	{ /* act_tid: 3, , table: mod_record.ing_no_ttl */
-	.description = "mod_record.ing_no_ttl",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 26,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 142,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 24
-	},
-	{ /* act_tid: 3, , table: int_full_act_record.0 */
-	.description = "int_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 27,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 166,
-	.result_bit_size = 128,
-	.result_num_fields = 17
-	},
-	{ /* act_tid: 4, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.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_INDEX,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 7,
-	.blob_key_bit_size = 8,
-	.key_bit_size = 8,
-	.key_num_fields = 1,
-	.ident_start_idx = 5,
-	.ident_nums = 1
-	},
-	{ /* act_tid: 4, , table: control.mirror */
-	.description = "control.mirror",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1023,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 30,
-		.cond_nums = 1 },
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
-	},
-	{ /* act_tid: 4, , table: int_flow_counter_tbl.0 */
-	.description = "int_flow_counter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
-	.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 = 31,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
-	.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 = 183,
-	.result_bit_size = 64,
-	.result_num_fields = 1
-	},
-	{ /* act_tid: 4, , table: vnic_interface_rss_config.0 */
-	.description = "vnic_interface_rss_config.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_RSS,
-	.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 = 32,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 184,
-	.result_bit_size = 0,
-	.result_num_fields = 0
-	},
-	{ /* act_tid: 4, , table: vnic_interface_queue_config.0 */
-	.description = "vnic_interface_queue_config.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_VNIC_TABLE_QUEUE,
-	.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 = 33,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_VNIC_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_RSS_VNIC,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 184,
-	.result_bit_size = 0,
-	.result_num_fields = 0
-	},
-	{ /* act_tid: 4, , table: int_compact_act_record.0 */
-	.description = "int_compact_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 0,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 34,
-		.cond_nums = 2 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
-	.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 = 184,
-	.result_bit_size = 64,
-	.result_num_fields = 13,
-	.encap_num_fields = 0
-	},
-	{ /* act_tid: 4, , table: int_compact_act_record.1 */
-	.description = "int_compact_act_record.1",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 36,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
-	.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 = 197,
-	.result_bit_size = 64,
-	.result_num_fields = 13,
-	.encap_num_fields = 0
-	},
-	{ /* act_tid: 5, , table: control.create_check */
-	.description = "control.create_check",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.direction = TF_DIR_RX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 11,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 36,
-		.cond_nums = 2 },
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
-	},
-	{ /* act_tid: 5, , table: meter_profile_tbl_cache.rd */
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.rd */
 	.description = "meter_profile_tbl_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -895,21 +760,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 38,
+		.cond_start_idx = 26,
 		.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_NOP,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 8,
+	.key_start_idx = 6,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 6,
+	.ident_start_idx = 4,
 	.ident_nums = 0
 	},
-	{ /* act_tid: 5, , table: control.shared_meter_profile_0 */
+	{ /* act_tid: 6, , table: control.shared_meter_profile_0 */
 	.description = "control.shared_meter_profile_0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -917,13 +782,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 39,
+		.cond_start_idx = 27,
 		.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: 5, , table: meter_profile_tbl.0 */
+	{ /* act_tid: 6, , table: meter_profile_tbl.0 */
 	.description = "meter_profile_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_METER_PROF,
@@ -934,18 +799,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 40,
+		.cond_start_idx = 28,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_METER_PROFILE_PTR_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,
-	.result_start_idx = 210,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 109,
 	.result_bit_size = 65,
 	.result_num_fields = 11
 	},
-	{ /* act_tid: 5, , table: meter_profile_tbl_cache.wr */
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.wr */
 	.description = "meter_profile_tbl_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_METER_PROF,
@@ -956,22 +822,22 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 40,
+		.cond_start_idx = 28,
 		.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_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
-	.key_start_idx = 9,
+	.key_start_idx = 7,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.result_start_idx = 221,
+	.result_start_idx = 120,
 	.result_bit_size = 42,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.rd */
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.rd */
 	.description = "shared_meter_tbl_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -981,21 +847,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 28,
 		.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_NOP,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 10,
+	.key_start_idx = 8,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 6,
+	.ident_start_idx = 4,
 	.ident_nums = 0
 	},
-	{ /* act_tid: 5, , table: control.meter_created_chk */
+	{ /* act_tid: 6, , table: control.meter_created_chk */
 	.description = "control.meter_created_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1003,13 +869,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 29,
 		.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: 5, , table: meter_profile_tbl_cache.rd2 */
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.rd2 */
 	.description = "meter_profile_tbl_cache.rd2",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1019,21 +885,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 30,
 		.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_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
-	.key_start_idx = 11,
+	.key_start_idx = 9,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 6,
+	.ident_start_idx = 4,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: control.shared_meter_profile_chk */
+	{ /* act_tid: 6, , table: control.shared_meter_profile_chk */
 	.description = "control.shared_meter_profile_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1041,12 +907,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 42,
+		.cond_start_idx = 30,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 5, , table: meter_tbl.0 */
+	{ /* act_tid: 6, , table: meter_tbl.0 */
 	.description = "meter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_METER_INST,
@@ -1057,18 +923,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 31,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_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,
-	.result_start_idx = 223,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 122,
 	.result_bit_size = 64,
 	.result_num_fields = 5
 	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.wr */
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.wr */
 	.description = "shared_meter_tbl_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1078,22 +945,22 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 43,
+		.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,
 	.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 = 12,
+	.key_start_idx = 10,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.result_start_idx = 228,
+	.result_start_idx = 127,
 	.result_bit_size = 74,
 	.result_num_fields = 3
 	},
-	{ /* act_tid: 5, , table: control.delete_check */
+	{ /* act_tid: 6, , table: control.delete_check */
 	.description = "control.delete_check",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1101,12 +968,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 5,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 43,
+		.cond_start_idx = 31,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 5, , table: meter_profile_tbl_cache.del_chk */
+	{ /* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */
 	.description = "meter_profile_tbl_cache.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1116,21 +983,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 44,
+		.cond_start_idx = 32,
 		.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_NOP,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 13,
+	.key_start_idx = 11,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 7,
+	.ident_start_idx = 5,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: control.mtr_prof_ref_cnt_chk */
+	{ /* act_tid: 6, , table: control.mtr_prof_ref_cnt_chk */
 	.description = "control.mtr_prof_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1138,7 +1005,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 45,
+		.cond_start_idx = 33,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -1151,7 +1018,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.del_chk */
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */
 	.description = "shared_meter_tbl_cache.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1161,21 +1028,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 46,
+		.cond_start_idx = 34,
 		.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_NOP,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 14,
+	.key_start_idx = 12,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 8,
+	.ident_start_idx = 6,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: control.shared_mtr_ref_cnt_chk */
+	{ /* act_tid: 6, , table: control.shared_mtr_ref_cnt_chk */
 	.description = "control.shared_mtr_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1183,7 +1050,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 47,
+		.cond_start_idx = 35,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -1196,7 +1063,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 5, , table: control.update_check */
+	{ /* act_tid: 6, , table: control.update_check */
 	.description = "control.update_check",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -1204,12 +1071,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 48,
+		.cond_start_idx = 36,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 5, , table: shared_meter_tbl_cache.rd_update */
+	{ /* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */
 	.description = "shared_meter_tbl_cache.rd_update",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1219,21 +1086,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 48,
+		.cond_start_idx = 36,
 		.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_NOP,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 15,
+	.key_start_idx = 13,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 9,
+	.ident_start_idx = 7,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 5, , table: meter_tbl.update_rd */
+	{ /* act_tid: 6, , table: meter_tbl.update_rd */
 	.description = "meter_tbl.update_rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_METER_INST,
@@ -1244,17 +1111,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 49,
+		.cond_start_idx = 37,
 		.cond_nums = 2 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_RD_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
-	.ident_start_idx = 10,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.ident_start_idx = 8,
 	.ident_nums = 3,
 	.result_bit_size = 64
 	},
-	{ /* act_tid: 5, , table: meter_tbl.update_wr */
+	{ /* act_tid: 6, , table: meter_tbl.update_wr */
 	.description = "meter_tbl.update_wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_METER_INST,
@@ -1265,17 +1133,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 51,
+		.cond_start_idx = 39,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
-	.result_start_idx = 231,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 130,
 	.result_bit_size = 64,
 	.result_num_fields = 5
 	},
-	{ /* act_tid: 6, , table: flow_chain_cache.rd */
+	{ /* act_tid: 7, , table: flow_chain_cache.rd */
 	.description = "flow_chain_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1283,36 +1152,50 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 5,
+		.cond_false_goto = 6,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 52,
+		.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,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 16,
+	.key_start_idx = 14,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 13,
+	.ident_start_idx = 11,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 6, , table: control.flow_chain */
+	{ /* act_tid: 7, , table: control.no_jump_vf_to_vf */
+	.description = "control.no_jump_vf_to_vf",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.true_message = "Reject: unsupported vf_to_vf + jump.",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 40,
+		.cond_nums = 1 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 7, , table: control.flow_chain */
 	.description = "control.flow_chain",
 	.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 = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 53,
+		.cond_start_idx = 41,
 		.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: 6, , table: jump_index_table.alloc */
+	{ /* act_tid: 7, , table: jump_index_table.alloc */
 	.description = "jump_index_table.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_ALLOCATOR_TABLE,
 	.resource_sub_type =
@@ -1322,18 +1205,18 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 54,
+		.cond_start_idx = 42,
 		.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 = 236,
+	.result_start_idx = 135,
 	.result_bit_size = 0,
 	.result_num_fields = 0
 	},
-	{ /* act_tid: 6, , table: control.metadata_cal */
+	{ /* act_tid: 7, , table: control.metadata_cal */
 	.description = "control.metadata_cal",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1341,7 +1224,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 54,
+		.cond_start_idx = 42,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1354,7 +1237,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.func_opr2 = ULP_THOR_SYM_CHAIN_META_VAL,
 		.func_dst_opr = BNXT_ULP_RF_IDX_JUMP_META }
 	},
-	{ /* act_tid: 6, , table: flow_chain_cache.write */
+	{ /* act_tid: 7, , table: flow_chain_cache.write */
 	.description = "flow_chain_cache.write",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1364,58 +1247,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 54,
+		.cond_start_idx = 42,
 		.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,
+	.key_start_idx = 15,
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.result_start_idx = 236,
+	.result_start_idx = 135,
 	.result_bit_size = 48,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 6, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
-	.direction = TF_DIR_TX,
-	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 54,
-		.cond_nums = 1 },
-	.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 = 18,
-	.blob_key_bit_size = 8,
-	.key_bit_size = 8,
-	.key_num_fields = 1,
-	.ident_start_idx = 14,
-	.ident_nums = 1
-	},
-	{ /* act_tid: 6, , table: control.mirror */
-	.description = "control.mirror",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
-	.direction = TF_DIR_TX,
-	.execute_info = {
-		.cond_true_goto  = 1023,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 55,
-		.cond_nums = 1 },
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
-	},
-	{ /* act_tid: 6, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 7, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -1426,124 +1272,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 56,
+		.cond_start_idx = 42,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 238,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 137,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 6, , table: int_vtag_encap_record.0 */
-	.description = "int_vtag_encap_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 57,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 239,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 11
-	},
-	{ /* act_tid: 6, , table: mod_record.dec_ttl_egr */
-	.description = "mod_record.dec_ttl_egr",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 58,
-		.cond_nums = 2 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 250,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 23
-	},
-	{ /* act_tid: 6, , table: mod_record.no_dec_ttl_egr */
-	.description = "mod_record.no_dec_ttl_egr",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 60,
-		.cond_nums = 2 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 273,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 20
-	},
-	{ /* act_tid: 6, , table: int_full_act_record.0 */
-	.description = "int_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.direction = TF_DIR_TX,
-	.execute_info = {
-		.cond_true_goto  = 0,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 62,
-		.cond_nums = 3 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 293,
-	.result_bit_size = 128,
-	.result_num_fields = 17
-	},
-	{ /* act_tid: 6, , table: int_compact_act_record.0 */
-	.description = "int_compact_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 65,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 310,
-	.result_bit_size = 64,
-	.result_num_fields = 13
-	},
 	{ /* act_tid: 7, , table: shared_mirror_record.rd */
 	.description = "shared_mirror_record.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
@@ -1555,52 +1294,62 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 66,
+		.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_INDEX,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 19,
+	.key_start_idx = 16,
 	.blob_key_bit_size = 8,
 	.key_bit_size = 8,
 	.key_num_fields = 1,
-	.ident_start_idx = 15,
+	.ident_start_idx = 12,
 	.ident_nums = 1
 	},
 	{ /* act_tid: 7, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Reject due to non-existent shared handle",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 67,
+		.cond_start_idx = 44,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: int_flow_counter_tbl.0 */
-	.description = "int_flow_counter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
+	{ /* act_tid: 7, , table: control.do_mod */
+	.description = "control.do_mod",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 3,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 68,
+		.cond_start_idx = 45,
 		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 323,
-	.result_bit_size = 64,
-	.result_num_fields = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.func_info = {
+		.func_opc = BNXT_ULP_FUNC_OPC_BIT_AND,
+		.func_src1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_opr1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
+		.func_opr2 = BNXT_ULP_ACT_BIT_DEC_TTL |
+			BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+			BNXT_ULP_ACT_BIT_SET_MAC_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+			BNXT_ULP_ACT_BIT_SET_TP_SRC |
+			BNXT_ULP_ACT_BIT_SET_TP_DST |
+			BNXT_ULP_ACT_BIT_JUMP |
+			BNXT_ULP_ACT_BIT_VF_TO_VF,
+		.func_dst_opr = BNXT_ULP_RF_IDX_RF_0 }
 	},
 	{ /* act_tid: 7, , table: mod_record.ing_ttl */
 	.description = "mod_record.ing_ttl",
@@ -1613,16 +1362,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 2,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 69,
+		.cond_start_idx = 46,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 324,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 138,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 31
+	.encap_num_fields = 35
 	},
 	{ /* act_tid: 7, , table: mod_record.ing_no_ttl */
 	.description = "mod_record.ing_no_ttl",
@@ -1634,98 +1384,47 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 70,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 57,
+		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 355,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 173,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 24
-	},
-	{ /* act_tid: 7, , table: int_full_act_record.0 */
-	.description = "int_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 71,
-		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 379,
-	.result_bit_size = 128,
-	.result_num_fields = 17
+	.encap_num_fields = 28
 	},
-	{ /* act_tid: 8, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
+	{ /* act_tid: 7, , table: control.do_tunnel_check */
+	.description = "control.do_tunnel_check",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 72,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
-	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
+		.cond_false_goto = 24,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
+		.cond_start_idx = 67,
+		.cond_nums = 2 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 20,
-	.blob_key_bit_size = 8,
-	.key_bit_size = 8,
-	.key_num_fields = 1,
-	.ident_start_idx = 16,
-	.ident_nums = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: control.mirror */
-	.description = "control.mirror",
+	{ /* act_tid: 7, , table: control.do_tunnel_vlan_exclusion */
+	.description = "control.do_tunnel_vlan_exclusion",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Tunnel Encap + Push VLAN unsupported.",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 73,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
+		.cond_start_idx = 69,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: int_flow_counter_tbl.0 */
-	.description = "int_flow_counter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
-	.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 = 74,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
-	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 396,
-	.result_bit_size = 64,
-	.result_num_fields = 1
-	},
-	{ /* act_tid: 8, , table: source_property_cache.rd */
+	{ /* act_tid: 7, , table: source_property_cache.rd */
 	.description = "source_property_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1735,34 +1434,34 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 75,
+		.cond_start_idx = 70,
 		.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 = 21,
+	.key_start_idx = 17,
 	.blob_key_bit_size = 85,
 	.key_bit_size = 85,
 	.key_num_fields = 3,
-	.ident_start_idx = 17,
+	.ident_start_idx = 13,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.sp_rec_v4 */
+	{ /* act_tid: 7, , table: control.sp_rec_v4 */
 	.description = "control.sp_rec_v4",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 3,
+		.cond_false_goto = 7,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 76,
+		.cond_start_idx = 71,
 		.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: 8, , table: sp_smac_ipv4.0 */
+	{ /* act_tid: 7, , table: sp_smac_ipv4.0 */
 	.description = "sp_smac_ipv4.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4,
@@ -1772,45 +1471,46 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 77,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 72,
+		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
 	.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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 16,
-	.result_start_idx = 397,
+	.result_start_idx = 201,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 3
 	},
-	{ /* act_tid: 8, , table: source_property_cache.wr */
+	{ /* act_tid: 7, , table: source_property_cache.wr */
 	.description = "source_property_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SOURCE_PROPERTY_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 5,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 78,
+		.cond_start_idx = 72,
 		.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 = 24,
+	.key_start_idx = 20,
 	.blob_key_bit_size = 85,
 	.key_bit_size = 85,
 	.key_num_fields = 3,
-	.result_start_idx = 400,
+	.result_start_idx = 204,
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: source_property_ipv6_cache.rd */
+	{ /* 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 =
@@ -1818,22 +1518,22 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 4,
+		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 78,
+		.cond_start_idx = 72,
 		.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 = 27,
+	.key_start_idx = 23,
 	.blob_key_bit_size = 176,
 	.key_bit_size = 176,
 	.key_num_fields = 2,
-	.ident_start_idx = 18,
+	.ident_start_idx = 14,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.sp_rec_v6 */
+	{ /* 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,
@@ -1841,13 +1541,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 3,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 79,
+		.cond_start_idx = 73,
 		.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: 8, , table: sp_smac_ipv6.0 */
+	{ /* act_tid: 7, , table: sp_smac_ipv6.0 */
 	.description = "sp_smac_ipv6.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6,
@@ -1857,20 +1557,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 80,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 74,
+		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 32,
-	.result_start_idx = 402,
+	.result_start_idx = 206,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 3
 	},
-	{ /* act_tid: 8, , table: source_property_ipv6_cache.wr */
+	{ /* 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 =
@@ -1880,66 +1581,119 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 81,
+		.cond_start_idx = 74,
 		.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 = 29,
+	.key_start_idx = 25,
 	.blob_key_bit_size = 176,
 	.key_bit_size = 176,
 	.key_num_fields = 2,
-	.result_start_idx = 405,
+	.result_start_idx = 209,
 	.result_bit_size = 48,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: mod_record.ing_l2write */
-	.description = "mod_record.ing_l2write",
+	{ /* act_tid: 7, , table: control.do_vxlan_check */
+	.description = "control.do_vxlan_check",
+	.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_OR,
+		.cond_start_idx = 74,
+		.cond_nums = 1 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 7, , table: vxlan_encap_rec_cache.rd */
+	.description = "vxlan_encap_rec_cache.rd",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE,
+	.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 = 75,
+		.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 = 27,
+	.blob_key_bit_size = 141,
+	.key_bit_size = 141,
+	.key_num_fields = 6,
+	.ident_start_idx = 15,
+	.ident_nums = 1
+	},
+	{ /* act_tid: 7, , table: control.vxlan_v4_encap */
+	.description = "control.vxlan_v4_encap",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.execute_info = {
+		.cond_true_goto  = 1,
+		.cond_false_goto = 13,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.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,
+	.fdb_operand = BNXT_ULP_RF_IDX_RID
+	},
+	{ /* act_tid: 7, , table: int_tun_encap_record.ipv4_vxlan */
+	.description = "int_tun_encap_record.ipv4_vxlan",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
+	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 81,
-		.cond_nums = 2 },
+		.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_MODIFY_PTR,
+	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 407,
+	.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 = 211,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
-	.encap_num_fields = 18
+	.encap_num_fields = 25
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
-	.description = "vxlan_encap_rec_cache.rd",
+	{ /* act_tid: 7, , table: vxlan_encap_rec_cache.wr */
+	.description = "vxlan_encap_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 11,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 83,
-		.cond_nums = 2 },
-	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.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,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 31,
+	.key_start_idx = 33,
 	.blob_key_bit_size = 141,
 	.key_bit_size = 141,
 	.key_num_fields = 6,
-	.ident_start_idx = 19,
-	.ident_nums = 1
+	.result_start_idx = 236,
+	.result_bit_size = 64,
+	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.rd */
+	{ /* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.rd */
 	.description = "vxlan_encap_ipv6_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -1949,57 +1703,34 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 85,
-		.cond_nums = 2 },
+		.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 = 37,
+	.key_start_idx = 39,
 	.blob_key_bit_size = 237,
 	.key_bit_size = 237,
 	.key_num_fields = 6,
-	.ident_start_idx = 20,
+	.ident_start_idx = 16,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.vxlan_v6_encap */
+	{ /* act_tid: 7, , table: control.vxlan_v6_encap */
 	.description = "control.vxlan_v6_encap",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 5,
+		.cond_false_goto = 9,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 87,
+		.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: 8, , table: int_tun_encap_record.ipv4_vxlan */
-	.description = "int_tun_encap_record.ipv4_vxlan",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
-	.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 = 88,
-		.cond_nums = 2 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_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,
-	.result_start_idx = 425,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 25
-	},
-	{ /* act_tid: 8, , table: int_tun_encap_record.ipv6_vxlan */
+	{ /* act_tid: 7, , table: int_tun_encap_record.ipv6_vxlan */
 	.description = "int_tun_encap_record.ipv6_vxlan",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -2009,67 +1740,44 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 90,
-		.cond_nums = 2 },
+		.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_ENCAP_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 450,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 238,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 23
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
-	.description = "vxlan_encap_rec_cache.wr",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_REC_CACHE,
-	.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 = 92,
-		.cond_nums = 2 },
-	.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,
-	.blob_key_bit_size = 141,
-	.key_bit_size = 141,
-	.key_num_fields = 6,
-	.result_start_idx = 473,
-	.result_bit_size = 64,
-	.result_num_fields = 2
-	},
-	{ /* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.wr */
+	{ /* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.wr */
 	.description = "vxlan_encap_ipv6_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_VXLAN_ENCAP_IPV6_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 7,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 94,
-		.cond_nums = 2 },
+		.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 = 49,
+	.key_start_idx = 45,
 	.blob_key_bit_size = 237,
 	.key_bit_size = 237,
 	.key_num_fields = 6,
-	.result_start_idx = 475,
+	.result_start_idx = 261,
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: geneve_encap_rec_cache.rd */
+	{ /* act_tid: 7, , table: geneve_encap_rec_cache.rd */
 	.description = "geneve_encap_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -2078,35 +1786,35 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 96,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 79,
+		.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 = 55,
+	.key_start_idx = 51,
 	.blob_key_bit_size = 493,
 	.key_bit_size = 493,
 	.key_num_fields = 15,
-	.ident_start_idx = 21,
+	.ident_start_idx = 17,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.geneve_encap */
+	{ /* act_tid: 7, , table: control.geneve_encap */
 	.description = "control.geneve_encap",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 4,
+		.cond_false_goto = 5,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 97,
+		.cond_start_idx = 79,
 		.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: 8, , table: int_geneve_encap_record.ipv4_geneve */
+	{ /* act_tid: 7, , table: int_geneve_encap_record.ipv4_geneve */
 	.description = "int_geneve_encap_record.ipv4_geneve",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -2114,68 +1822,94 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 2,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 98,
-		.cond_nums = 2 },
+		.cond_start_idx = 80,
+		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_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,
-	.result_start_idx = 477,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 263,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 31
 	},
-	{ /* act_tid: 8, , table: int_geneve_encap_record.ipv6_geneve */
+	{ /* act_tid: 7, , table: int_geneve_encap_record.ipv6_geneve */
 	.description = "int_geneve_encap_record.ipv6_geneve",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
 	.direction = TF_DIR_TX,
+	.false_message = "Geneve outer hdr must be v4 or v6.",
 	.execute_info = {
 		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 100,
-		.cond_nums = 2 },
+		.cond_start_idx = 81,
+		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 508,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 294,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 29
 	},
-	{ /* act_tid: 8, , table: geneve_encap_rec_cache.wr */
+	{ /* act_tid: 7, , table: geneve_encap_rec_cache.wr */
 	.description = "geneve_encap_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
 		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_GENEVE_ENCAP_REC_CACHE,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
+		.cond_true_goto  = 2,
 		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 102,
-		.cond_nums = 1 },
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.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 = 70,
+	.key_start_idx = 66,
 	.blob_key_bit_size = 493,
 	.key_bit_size = 493,
 	.key_num_fields = 15,
-	.result_start_idx = 537,
+	.result_start_idx = 323,
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: int_full_act_record.0 */
+	{ /* act_tid: 7, , table: int_vtag_encap_record.0 */
+	.description = "int_vtag_encap_record.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
+	.resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
+	.resource_sub_type =
+		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
+	.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 = 82,
+		.cond_nums = 1 },
+	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 325,
+	.result_bit_size = 0,
+	.result_num_fields = 0,
+	.encap_num_fields = 11
+	},
+	{ /* act_tid: 7, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -2184,121 +1918,122 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.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 = 103,
-		.cond_nums = 0 },
+		.cond_false_goto = 1,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+		.cond_start_idx = 83,
+		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.func_info = {
+		.func_opc = BNXT_ULP_FUNC_OPC_BIT_AND,
+		.func_src1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_opr1 = BNXT_ULP_FUNC_SRC_ACTION_BITMAP,
+		.func_src2 = BNXT_ULP_FUNC_SRC_CONST,
+		.func_opr2 = BNXT_ULP_ACT_BIT_DEC_TTL |
+			BNXT_ULP_ACT_BIT_SET_MAC_SRC |
+			BNXT_ULP_ACT_BIT_SET_MAC_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV4_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV4_DST |
+			BNXT_ULP_ACT_BIT_SET_IPV6_SRC |
+			BNXT_ULP_ACT_BIT_SET_IPV6_DST |
+			BNXT_ULP_ACT_BIT_SET_TP_SRC |
+			BNXT_ULP_ACT_BIT_SET_TP_DST |
+			BNXT_ULP_ACT_BIT_JUMP |
+			BNXT_ULP_ACT_BIT_VF_TO_VF |
+			BNXT_ULP_ACT_BIT_VXLAN_ENCAP |
+			BNXT_ULP_ACT_BIT_GENEVE_ENCAP |
+			BNXT_ULP_ACT_BIT_PUSH_VLAN,
+		.func_dst_opr = BNXT_ULP_RF_IDX_RF_0 },
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 539,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 336,
 	.result_bit_size = 128,
-	.result_num_fields = 17
+	.result_num_fields = 17,
+	.encap_num_fields = 0
 	},
-	{ /* act_tid: 9, , table: shared_mirror_record.rd */
-	.description = "shared_mirror_record.rd",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
-	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
+	{ /* act_tid: 7, , table: int_compact_act_record.0 */
+	.description = "int_compact_act_record.0",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
+	.resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
 	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
+		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
 	.direction = TF_DIR_TX,
 	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 2,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 104,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
-	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
+		.cond_true_goto  = 0,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 },
+	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
+	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.key_start_idx = 85,
-	.blob_key_bit_size = 8,
-	.key_bit_size = 8,
-	.key_num_fields = 1,
-	.ident_start_idx = 22,
-	.ident_nums = 1
+	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 353,
+	.result_bit_size = 64,
+	.result_num_fields = 13,
+	.encap_num_fields = 0
 	},
-	{ /* act_tid: 9, , table: control.mirror */
-	.description = "control.mirror",
+	{ /* act_tid: 8, , table: control.reject */
+	.description = "control.reject",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
 		.cond_true_goto  = 1023,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 105,
-		.cond_nums = 1 },
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 9, , table: int_flow_counter_tbl.0 */
-	.description = "int_flow_counter_tbl.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
+	{ /* act_tid: 9, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 106,
-		.cond_nums = 1 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 86,
+		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 556,
-	.result_bit_size = 64,
-	.result_num_fields = 1
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 9, , table: mod_record.vf_2_vf */
-	.description = "mod_record.vf_2_vf",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
+	{ /* act_tid: 10, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
-		.cond_true_goto  = 1,
-		.cond_false_goto = 1,
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 107,
+		.cond_start_idx = 86,
 		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 557,
-	.result_bit_size = 0,
-	.result_num_fields = 0,
-	.encap_num_fields = 20
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 9, , table: int_full_act_record.0 */
-	.description = "int_full_act_record.0",
-	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
-	.resource_sub_type =
-		BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
+	{ /* act_tid: 11, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
+	.true_message = "Thor not supporting non-generic template",
 	.execute_info = {
-		.cond_true_goto  = 0,
+		.cond_true_goto  = 1023,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 107,
+		.cond_start_idx = 86,
 		.cond_nums = 0 },
-	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
-	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
-	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-	.result_start_idx = 577,
-	.result_bit_size = 128,
-	.result_num_fields = 17
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 10, , table: control.delete_chk */
+	{ /* act_tid: 12, , table: control.delete_chk */
 	.description = "control.delete_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2306,12 +2041,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 107,
+		.cond_start_idx = 86,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 10, , table: shared_mirror_record.del_chk */
+	{ /* act_tid: 12, , table: shared_mirror_record.del_chk */
 	.description = "shared_mirror_record.del_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2322,21 +2057,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 108,
+		.cond_start_idx = 87,
 		.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,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_NOP,
-	.key_start_idx = 86,
+	.key_start_idx = 81,
 	.blob_key_bit_size = 8,
 	.key_bit_size = 8,
 	.key_num_fields = 1,
-	.ident_start_idx = 23,
+	.ident_start_idx = 18,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 10, , table: control.mirror_del_exist_chk */
+	{ /* act_tid: 12, , table: control.mirror_del_exist_chk */
 	.description = "control.mirror_del_exist_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2344,12 +2079,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 108,
+		.cond_start_idx = 87,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 10, , table: control.mirror_ref_cnt_chk */
+	{ /* act_tid: 12, , table: control.mirror_ref_cnt_chk */
 	.description = "control.mirror_ref_cnt_chk",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2357,7 +2092,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 109,
+		.cond_start_idx = 88,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_DELETE_RID_REGFILE,
@@ -2370,7 +2105,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_CC }
 	},
-	{ /* act_tid: 10, , table: control.create */
+	{ /* act_tid: 12, , table: control.create */
 	.description = "control.create",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2378,13 +2113,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 110,
+		.cond_start_idx = 89,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 10, , table: mirror_tbl.alloc */
+	{ /* act_tid: 12, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2395,7 +2130,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 110,
+		.cond_start_idx = 89,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
@@ -2403,11 +2138,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 594,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 366,
 	.result_bit_size = 32,
 	.result_num_fields = 5
 	},
-	{ /* act_tid: 10, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 12, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -2418,7 +2154,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 110,
+		.cond_start_idx = 89,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
@@ -2426,11 +2162,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 599,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 371,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 10, , table: mod_record.vf_2_vf */
+	{ /* act_tid: 12, , table: mod_record.vf_2_vf */
 	.description = "mod_record.vf_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
@@ -2441,19 +2178,20 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 111,
+		.cond_start_idx = 90,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.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 = 600,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 372,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 20
 	},
-	{ /* act_tid: 10, , table: int_full_act_record.0 */
+	{ /* act_tid: 12, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -2464,7 +2202,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 111,
+		.cond_start_idx = 90,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
@@ -2472,11 +2210,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_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 = 620,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 392,
 	.result_bit_size = 128,
 	.result_num_fields = 17
 	},
-	{ /* act_tid: 10, , table: mirror_tbl.wr */
+	{ /* act_tid: 12, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2487,18 +2226,19 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 111,
+		.cond_start_idx = 90,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-	.result_start_idx = 637,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.result_start_idx = 409,
 	.result_bit_size = 32,
 	.result_num_fields = 5
 	},
-	{ /* act_tid: 10, , table: shared_mirror_record.wr */
+	{ /* act_tid: 12, , table: shared_mirror_record.wr */
 	.description = "shared_mirror_record.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2509,7 +2249,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 111,
+		.cond_start_idx = 90,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2517,105 +2257,90 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.ref_cnt_opcode = BNXT_ULP_REF_CNT_OPC_INC,
-	.key_start_idx = 87,
+	.key_start_idx = 82,
 	.blob_key_bit_size = 8,
 	.key_bit_size = 8,
 	.key_num_fields = 1,
-	.result_start_idx = 642,
+	.result_start_idx = 414,
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	}
 };
 
 struct bnxt_ulp_mapper_cond_list_info ulp_thor_act_cond_oper_list[] = {
-	/* cond_execute: act_tid: 1, mod_record.ing_no_ttl:9*/
-	{
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 9,
-		.cond_nums = 1
-	},
-	/* cond_execute: act_tid: 1, mod_record.ing_no_ttl:9*/
-	{
-		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 10,
-		.cond_nums = 3
-	}
 };
 
 struct bnxt_ulp_mapper_cond_info ulp_thor_act_cond_list[] = {
-	/* cond_reject: thor, act_tid: 1 */
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
-	},
-	/* cond_execute: act_tid: 1, flow_chain_cache.rd:1*/
+	/* 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:2*/
+	/* 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:3*/
+	/* 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:4*/
+	/* 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:5*/
+	/* 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:6*/
+	/* 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, int_flow_counter_tbl.0:7*/
+	/* cond_execute: act_tid: 1, control.do_mod:6*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_RF_0
 	},
-	/* cond_execute: act_tid: 1, mod_record.ing_ttl:8*/
+	/* cond_execute: act_tid: 1, mod_record.ing_ttl: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.ing_no_ttl:9*/
+	/* cond_execute: act_tid: 1, mod_record.ing_no_ttl:8*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
 	},
-	/* cond_execute: act_tid: 1, mod_record.ing_no_ttl:9*/
+	/* cond_execute: act_tid: 1, control.queue_and_rss_test:9*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_SRC
+	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
+	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
+	/* cond_execute: act_tid: 1, vnic_interface_rss_config.0:11*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
+	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* field_cond: act_tid: 1, int_full_act_record.0:13*/
+	/* cond_execute: act_tid: 1, vnic_interface_queue_config.0:12*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_VXLAN_DECAP
+	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
+	/* cond_execute: act_tid: 1, int_flow_counter_tbl.0:13*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_GENEVE_DECAP
+	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* field_cond: act_tid: 1, int_compact_act_record.0:15*/
+	/* field_cond: act_tid: 1, int_full_act_record.0:14*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_VXLAN_DECAP
@@ -2624,100 +2349,46 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, control.delete_chk:17*/
+	/* field_cond: act_tid: 1, int_full_act_record.0:16*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
-	},
-	/* cond_execute: act_tid: 2, control.mirror_del_exist_chk:18*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_operand = BNXT_ULP_ACT_BIT_DROP
 	},
-	/* cond_execute: act_tid: 2, control.mirror_ref_cnt_chk:19*/
+	/* field_cond: act_tid: 1, int_full_act_record.0:17*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_CC
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* cond_execute: act_tid: 2, int_flow_counter_tbl.0:20*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
-	/* cond_reject: thor, act_tid: 3 */
+	/* field_cond: act_tid: 1, int_full_act_record.0:19*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 3, shared_mirror_record.rd:22*/
+	/* cond_execute: act_tid: 3, control.delete_chk:20*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
 	},
-	/* cond_execute: act_tid: 3, control.mirror:23*/
+	/* cond_execute: act_tid: 3, control.mirror_del_exist_chk:21*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 3, int_flow_counter_tbl.0:24*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
-	},
-	/* cond_execute: act_tid: 3, mod_record.ing_ttl:25*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
-	},
-	/* cond_execute: act_tid: 3, mod_record.ing_no_ttl:26*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
-	},
-	/* cond_reject: thor, act_tid: 4 */
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_RSS
-	},
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
-	},
-	/* cond_execute: act_tid: 4, shared_mirror_record.rd:29*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
-	},
-	/* cond_execute: act_tid: 4, control.mirror:30*/
+	/* cond_execute: act_tid: 3, control.mirror_ref_cnt_chk:22*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 4, int_flow_counter_tbl.0:31*/
+	/* cond_execute: act_tid: 3, int_flow_counter_tbl.0:23*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 4, vnic_interface_rss_config.0:32*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_RSS
-	},
-	/* cond_execute: act_tid: 4, vnic_interface_queue_config.0:33*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
-	},
-	/* cond_execute: act_tid: 4, int_compact_act_record.0:34*/
-	{
-	.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_RSS
-	},
-	/* cond_execute: act_tid: 5, control.create_check:36*/
+	/* cond_execute: act_tid: 6, control.create_check:24*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_UPDATE
@@ -2726,62 +2397,62 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
 	},
-	/* cond_execute: act_tid: 5, meter_profile_tbl_cache.rd:38*/
+	/* cond_execute: act_tid: 6, meter_profile_tbl_cache.rd:26*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_METER_PROFILE
 	},
-	/* cond_execute: act_tid: 5, control.shared_meter_profile_0:39*/
+	/* cond_execute: act_tid: 6, control.shared_meter_profile_0:27*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 5, shared_meter_tbl_cache.rd:40*/
+	/* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd:28*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER
 	},
-	/* cond_execute: act_tid: 5, control.meter_created_chk:41*/
+	/* cond_execute: act_tid: 6, control.meter_created_chk:29*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 5, control.shared_meter_profile_chk:42*/
+	/* cond_execute: act_tid: 6, control.shared_meter_profile_chk:30*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 5, control.delete_check:43*/
+	/* cond_execute: act_tid: 6, control.delete_check:31*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
 	},
-	/* cond_execute: act_tid: 5, meter_profile_tbl_cache.del_chk:44*/
+	/* cond_execute: act_tid: 6, meter_profile_tbl_cache.del_chk:32*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_METER_PROFILE
 	},
-	/* cond_execute: act_tid: 5, control.mtr_prof_ref_cnt_chk:45*/
+	/* cond_execute: act_tid: 6, control.mtr_prof_ref_cnt_chk:33*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 5, shared_meter_tbl_cache.del_chk:46*/
+	/* cond_execute: act_tid: 6, shared_meter_tbl_cache.del_chk:34*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER
 	},
-	/* cond_execute: act_tid: 5, control.shared_mtr_ref_cnt_chk:47*/
+	/* cond_execute: act_tid: 6, control.shared_mtr_ref_cnt_chk:35*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 5, shared_meter_tbl_cache.rd_update:48*/
+	/* cond_execute: act_tid: 6, shared_meter_tbl_cache.rd_update:36*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_METER
 	},
-	/* cond_execute: act_tid: 5, meter_tbl.update_rd:49*/
+	/* cond_execute: act_tid: 6, meter_tbl.update_rd:37*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
@@ -2790,289 +2461,248 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_PROP_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID_UPDATE
 	},
-	/* cond_reject: thor, act_tid: 6 */
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
-	},
-	/* cond_execute: act_tid: 6, flow_chain_cache.rd:52*/
+	/* cond_execute: act_tid: 7, flow_chain_cache.rd:39*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 6, control.flow_chain:53*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
-	},
-	/* cond_execute: act_tid: 6, shared_mirror_record.rd:54*/
+	/* cond_execute: act_tid: 7, control.no_jump_vf_to_vf:40*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 6, control.mirror:55*/
+	/* cond_execute: act_tid: 7, control.flow_chain:41*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 6, int_flow_counter_tbl.0:56*/
+	/* cond_execute: act_tid: 7, int_flow_counter_tbl.0:42*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 6, int_vtag_encap_record.0:57*/
+	/* cond_execute: act_tid: 7, shared_mirror_record.rd:43*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
+	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
-	/* cond_execute: act_tid: 6, mod_record.dec_ttl_egr:58*/
+	/* cond_execute: act_tid: 7, control.mirror:44*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.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:45*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_RF_0
 	},
-	/* cond_execute: act_tid: 6, mod_record.no_dec_ttl_egr:60*/
+	/* cond_execute: act_tid: 7, mod_record.ing_ttl:46*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
+	.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.ing_ttl:47*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 6, int_full_act_record.0:62*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
-	},
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
+	/* field_cond: act_tid: 7, mod_record.ing_ttl:49*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_reject: thor, act_tid: 7 */
+	/* field_cond: act_tid: 7, mod_record.ing_ttl:50*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 7, shared_mirror_record.rd:66*/
+	/* field_cond: act_tid: 7, mod_record.ing_ttl:51*/
 	{
 	.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:67*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 7, int_flow_counter_tbl.0:68*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 7, mod_record.ing_ttl:69*/
+	/* field_cond: act_tid: 7, mod_record.ing_ttl:53*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 7, mod_record.ing_no_ttl:70*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_DEC_TTL
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_reject: thor, act_tid: 8 */
+	/* field_cond: act_tid: 7, mod_record.ing_ttl:55*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, shared_mirror_record.rd:72*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, control.mirror:73*/
+	/* field_cond: act_tid: 7, mod_record.ing_no_ttl:57*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, int_flow_counter_tbl.0:74*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, source_property_cache.rd:75*/
+	/* field_cond: act_tid: 7, mod_record.ing_no_ttl:59*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, control.sp_rec_v4:76*/
+	/* field_cond: act_tid: 7, mod_record.ing_no_ttl:60*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, sp_smac_ipv4.0:77*/
+	/* field_cond: act_tid: 7, mod_record.ing_no_ttl:61*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, source_property_ipv6_cache.rd:78*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, control.sp_rec_v6:79*/
+	/* field_cond: act_tid: 7, mod_record.ing_no_ttl:63*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 8, sp_smac_ipv6.0:80*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
-	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, mod_record.ing_l2write:81*/
+	/* field_cond: act_tid: 7, mod_record.ing_no_ttl:65*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_SRC
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_rec_cache.rd:83*/
+	/* cond_execute: act_tid: 7, control.do_tunnel_check:67*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VXLAN_ENCAP
 	},
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_GENEVE_ENCAP
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_ipv6_rec_cache.rd:85*/
+	/* cond_execute: act_tid: 7, control.do_tunnel_vlan_exclusion:69*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
+	.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:70*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
+	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
 	},
-	/* cond_execute: act_tid: 8, control.vxlan_v6_encap:87*/
+	/* cond_execute: act_tid: 7, control.sp_rec_v4:71*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, int_tun_encap_record.ipv4_vxlan:88*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
-	},
+	/* cond_execute: act_tid: 7, source_property_ipv6_cache.rd:72*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
+	.cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG
 	},
-	/* cond_execute: act_tid: 8, int_tun_encap_record.ipv6_vxlan:90*/
+	/* cond_execute: act_tid: 7, control.sp_rec_v6:73*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
+	.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:74*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_VXLAN_ENCAP
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_rec_cache.wr:92*/
+	/* cond_execute: act_tid: 7, vxlan_encap_rec_cache.rd:75*/
 	{
 	.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:76*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_ipv6_rec_cache.wr:94*/
+	/* cond_execute: act_tid: 7, vxlan_encap_ipv6_rec_cache.rd:77*/
 	{
 	.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:78*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
-	},
-	/* cond_execute: act_tid: 8, geneve_encap_rec_cache.rd:96*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, control.geneve_encap:97*/
+	/* cond_execute: act_tid: 7, control.geneve_encap:79*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, int_geneve_encap_record.ipv4_geneve:98*/
+	/* cond_execute: act_tid: 7, int_geneve_encap_record.ipv4_geneve:80*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
 	},
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
-	},
-	/* cond_execute: act_tid: 8, int_geneve_encap_record.ipv6_geneve:100*/
+	/* cond_execute: act_tid: 7, int_geneve_encap_record.ipv6_geneve:81*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
 	},
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
-	},
-	/* cond_execute: act_tid: 8, geneve_encap_rec_cache.wr:102*/
-	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_HDR_BIT_T_GENEVE
-	},
-	/* cond_reject: thor, act_tid: 9 */
+	/* cond_execute: act_tid: 7, int_vtag_encap_record.0:82*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
+	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
 	},
-	/* cond_execute: act_tid: 9, shared_mirror_record.rd:104*/
+	/* cond_execute: act_tid: 7, int_full_act_record.0:83*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
+	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.cond_operand = BNXT_ULP_RF_IDX_RF_0
 	},
-	/* cond_execute: act_tid: 9, control.mirror:105*/
+	/* field_cond: act_tid: 7, int_full_act_record.0:84*/
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
-	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
+	.cond_operand = BNXT_ULP_ACT_BIT_JUMP
 	},
-	/* cond_execute: act_tid: 9, int_flow_counter_tbl.0:106*/
+	/* field_cond: act_tid: 7, int_full_act_record.0:85*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
-	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
+	.cond_operand = BNXT_ULP_ACT_BIT_VF_TO_VF
 	},
-	/* cond_execute: act_tid: 10, control.delete_chk:107*/
+	/* cond_execute: act_tid: 12, control.delete_chk:86*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_DELETE
 	},
-	/* cond_execute: act_tid: 10, control.mirror_del_exist_chk:108*/
+	/* cond_execute: act_tid: 12, control.mirror_del_exist_chk:87*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 10, control.mirror_ref_cnt_chk:109*/
+	/* cond_execute: act_tid: 12, control.mirror_ref_cnt_chk:88*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_CC
 	},
-	/* cond_execute: act_tid: 10, int_flow_counter_tbl.0:110*/
+	/* cond_execute: act_tid: 12, int_flow_counter_tbl.0:89*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
@@ -3169,7 +2799,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 2, , table: shared_mirror_record.del_chk */
+	/* act_tid: 3, , table: shared_mirror_record.del_chk */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -3189,7 +2819,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 2, , table: shared_mirror_record.wr */
+	/* act_tid: 3, , table: shared_mirror_record.wr */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -3209,47 +2839,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
 		}
 	},
-	/* act_tid: 3, , table: shared_mirror_record.rd */
-	{
-	.field_info_mask = {
-		.description = "shared_index",
-		.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 = "shared_index",
-		.field_bit_size = 8,
-		.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: 4, , table: shared_mirror_record.rd */
-	{
-	.field_info_mask = {
-		.description = "shared_index",
-		.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 = "shared_index",
-		.field_bit_size = 8,
-		.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: 5, , table: meter_profile_tbl_cache.rd */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_profile_id",
@@ -3272,7 +2862,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.wr */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_profile_id",
@@ -3295,7 +2885,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.rd */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_id",
@@ -3318,7 +2908,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.rd2 */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.rd2 */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_profile_id",
@@ -3341,7 +2931,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.wr */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_id",
@@ -3364,7 +2954,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , 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",
@@ -3387,7 +2977,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_PROF_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.del_chk */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_id",
@@ -3410,7 +3000,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.rd_update */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */
 	{
 	.field_info_mask = {
 		.description = "sw_meter_id",
@@ -3433,7 +3023,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_METER_INST_ID & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: flow_chain_cache.rd */
+	/* act_tid: 7, , table: flow_chain_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "group_id",
@@ -3456,7 +3046,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: flow_chain_cache.write */
+	/* act_tid: 7, , table: flow_chain_cache.write */
 	{
 	.field_info_mask = {
 		.description = "group_id",
@@ -3479,26 +3069,6 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_JUMP & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: shared_mirror_record.rd */
-	{
-	.field_info_mask = {
-		.description = "shared_index",
-		.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 = "shared_index",
-		.field_bit_size = 8,
-		.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: shared_mirror_record.rd */
 	{
 	.field_info_mask = {
@@ -3519,27 +3089,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: shared_mirror_record.rd */
-	{
-	.field_info_mask = {
-		.description = "shared_index",
-		.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 = "shared_index",
-		.field_bit_size = 8,
-		.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: 8, , table: source_property_cache.rd */
+	/* act_tid: 7, , table: source_property_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "smac",
@@ -3600,7 +3150,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: source_property_cache.wr */
+	/* act_tid: 7, , table: source_property_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "smac",
@@ -3661,7 +3211,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: source_property_ipv6_cache.rd */
+	/* act_tid: 7, , table: source_property_ipv6_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "smac",
@@ -3720,7 +3270,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: source_property_ipv6_cache.wr */
+	/* act_tid: 7, , table: source_property_ipv6_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "smac",
@@ -3779,7 +3329,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -3901,7 +3451,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -3928,36 +3478,24 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 	},
 	{
 	.field_info_mask = {
-		.description = "ipv6_dst_addr",
-		.field_bit_size = 128,
+		.description = "ipv4_dst_addr",
+		.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,
-			0xff,
-			0xff,
-			0xff,
-			0xff,
 			0xff,
 			0xff,
 			0xff,
 			0xff}
 		},
 	.field_info_spec = {
-		.description = "ipv6_dst_addr",
-		.field_bit_size = 128,
+		.description = "ipv4_dst_addr",
+		.field_bit_size = 32,
 		.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 		.field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
 		.field_opr1 = {
-		(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
+		(BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}
 		}
 	},
 	{
@@ -4035,7 +3573,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4062,24 +3600,36 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 	},
 	{
 	.field_info_mask = {
-		.description = "ipv4_dst_addr",
-		.field_bit_size = 32,
+		.description = "ipv6_dst_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_dst_addr",
-		.field_bit_size = 32,
+		.description = "ipv6_dst_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_DADDR >> 8) & 0xff,
-		BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff}
+		(BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
+		BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff}
 		}
 	},
 	{
@@ -4157,7 +3707,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.wr */
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4291,7 +3841,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.rd */
+	/* act_tid: 7, , table: geneve_encap_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4641,7 +4191,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.wr */
+	/* act_tid: 7, , table: geneve_encap_rec_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4991,27 +4541,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 9, , table: shared_mirror_record.rd */
-	{
-	.field_info_mask = {
-		.description = "shared_index",
-		.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 = "shared_index",
-		.field_bit_size = 8,
-		.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: 10, , table: shared_mirror_record.del_chk */
+	/* act_tid: 12, , table: shared_mirror_record.del_chk */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -5031,7 +4561,7 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 10, , table: shared_mirror_record.wr */
+	/* act_tid: 12, , table: shared_mirror_record.wr */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -5054,6 +4584,99 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
 };
 
 struct bnxt_ulp_mapper_field_info ulp_thor_act_key_ext_list[] = {
+	{
+		.description = "vnic_or_vport",
+		.field_bit_size = 11,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(17 >> 8) & 0xff,
+		17 & 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 = {
+		(19 >> 8) & 0xff,
+		19 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	(ULP_THOR_SYM_RECYCLE_DST >> 8) & 0xff,
+	ULP_THOR_SYM_RECYCLE_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr3 = {
+	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
+		},
+	{
+		.description = "metadata_data",
+		.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
+	.field_opr1 = {
+		(50 >> 8) & 0xff,
+		50 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
+	.field_opr2 = {
+		(BNXT_ULP_CF_IDX_DEV_ACT_PORT_ID >> 8) & 0xff,
+		BNXT_ULP_CF_IDX_DEV_ACT_PORT_ID & 0xff,
+		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
+		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+		},
+	{
+		.description = "metadata_data",
+		.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
+	.field_opr1 = {
+		(60 >> 8) & 0xff,
+		60 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
+	.field_opr2 = {
+		(BNXT_ULP_CF_IDX_DEV_ACT_PORT_ID >> 8) & 0xff,
+		BNXT_ULP_CF_IDX_DEV_ACT_PORT_ID & 0xff,
+		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
+		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+		},
+	{
+		.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 = {
+		(85 >> 8) & 0xff,
+		85 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	(ULP_THOR_SYM_LOOPBACK_PORT >> 8) & 0xff,
+	ULP_THOR_SYM_LOOPBACK_PORT & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr3 = {
+	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
+		}
 };
 
 struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
@@ -5077,13 +4700,6 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_JUMP_META & 0xff}
 	},
-	/* act_tid: 1, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
 	/* act_tid: 1, , table: mod_record.ing_ttl */
 	{
 	.description = "metadata_en",
@@ -5189,38 +4805,116 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "l3_sip_ipv6_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l3_dip_ipv6_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l3_sip_ipv4_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l3_dip_ipv4_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
 	.description = "l4_sport_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l4_dport_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "metadata_data",
@@ -5385,6 +5079,126 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
+	{
+	.description = "l3_sip_ipv6",
+	.field_bit_size = 128,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l3_dip_ipv6",
+	.field_bit_size = 128,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l3_sip_ipv4",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l3_dip_ipv4",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l4_sport",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l4_dport",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
 	/* act_tid: 1, , table: mod_record.ing_no_ttl */
 	{
 	.description = "metadata_en",
@@ -5488,38 +5302,116 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "l3_sip_ipv6_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l3_dip_ipv6_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l3_sip_ipv4_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l3_dip_ipv4_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l4_sport_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "l4_dport_en",
 	.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_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "metadata_data",
@@ -5636,6 +5528,135 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
+	{
+	.description = "l3_sip_ipv6",
+	.field_bit_size = 128,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l3_dip_ipv6",
+	.field_bit_size = 128,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l3_sip_ipv4",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l3_dip_ipv4",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l4_sport",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "l4_dport",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	/* act_tid: 1, , table: vnic_interface_rss_config.0 */
+	/* act_tid: 1, , table: vnic_interface_queue_config.0 */
+	/* act_tid: 1, , table: int_flow_counter_tbl.0 */
+	{
+	.description = "count",
+	.field_bit_size = 64,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
 	/* act_tid: 1, , table: int_full_act_record.0 */
 	{
 	.description = "sp_rec_ptr",
@@ -5676,8 +5697,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(13 >> 8) & 0xff,
-		13 & 0xff,
+		(14 >> 8) & 0xff,
+		14 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -5688,22 +5709,11 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "meter",
 	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_METER & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
 	(BNXT_ULP_RF_IDX_METER_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff}
 	},
 	{
 	.description = "stats_op",
@@ -5725,25 +5735,15 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "vnic_or_vport",
 	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	(ULP_THOR_SYM_RECYCLE_DST >> 8) & 0xff,
-	ULP_THOR_SYM_RECYCLE_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr3 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
+		(16 >> 8) & 0xff,
+		16 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_NEXT
 	},
 	{
 	.description = "use_default",
@@ -5754,22 +5754,11 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "mirror",
 	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
 	{
 	.description = "cond_copy",
@@ -5825,7 +5814,47 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 1, , table: int_compact_act_record.0 */
+	/* act_tid: 3, , table: mirror_tbl.alloc */
+	{
+	.description = "act_rec_ptr",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "reserved",
+	.field_bit_size = 13,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ignore_drop",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "copy_ing_or_egr",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "enable",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
+	},
+	/* act_tid: 3, , table: int_flow_counter_tbl.0 */
+	{
+	.description = "count",
+	.field_bit_size = 64,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	/* act_tid: 3, , table: int_compact_act_record.0 */
 	{
 	.description = "rsvd0",
 	.field_bit_size = 8,
@@ -5835,37 +5864,14 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "decap_func",
 	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
-	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
-	.field_opr1 = {
-		(15 >> 8) & 0xff,
-		15 & 0xff,
-		(2 >> 8) & 0xff,
-		2 & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	ULP_THOR_SYM_DECAP_FUNC_THRU_TUN},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "meter",
 	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_METER >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_METER & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_METER_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "stats_op",
@@ -5902,22 +5908,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "mirror",
 	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "cond_copy",
@@ -5928,36 +5920,14 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "vlan_del_rpt",
 	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	ULP_THOR_SYM_VLAN_DEL_RPT_STRIP_OUTER},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "drop",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "hit",
@@ -5971,12 +5941,15 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: mirror_tbl.alloc */
+	/* act_tid: 3, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
 	.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_ACTION_PTR >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
 	},
 	{
 	.description = "reserved",
@@ -5994,7 +5967,9 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "copy_ing_or_egr",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
 	},
 	{
 	.description = "enable",
@@ -6004,139 +5979,195 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 2, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 3, , table: shared_mirror_record.wr */
 	{
-	.description = "count",
-	.field_bit_size = 64,
+	.description = "rid",
+	.field_bit_size = 32,
 	.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_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
-	/* act_tid: 2, , table: int_compact_act_record.0 */
 	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
+	.description = "mirror_id",
+	.field_bit_size = 4,
 	.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_MIRROR_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
 	},
+	/* act_tid: 6, , table: meter_profile_tbl.0 */
 	{
-	.description = "decap_func",
-	.field_bit_size = 5,
+	.description = "cf",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CF >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CF & 0xff}
 	},
 	{
-	.description = "meter",
-	.field_bit_size = 10,
+	.description = "pm",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_PM >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_PM & 0xff}
 	},
 	{
-	.description = "stats_op",
+	.description = "rfc2698",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	1}
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_RFC2698 >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_RFC2698 & 0xff}
 	},
 	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
+	.description = "cbsm",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBSM >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBSM & 0xff}
 	},
 	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
+	.description = "ebsm",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBSM >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBSM & 0xff}
 	},
 	{
-	.description = "use_default",
+	.description = "cbnd",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBND >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBND & 0xff}
 	},
 	{
-	.description = "mirror",
-	.field_bit_size = 4,
+	.description = "ebnd",
+	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBND >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBND & 0xff}
 	},
 	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
+	.description = "cbs",
+	.field_bit_size = 12,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBS >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBS & 0xff}
 	},
 	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
+	.description = "ebs",
+	.field_bit_size = 12,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBS >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBS & 0xff}
 	},
 	{
-	.description = "drop",
-	.field_bit_size = 1,
+	.description = "cir",
+	.field_bit_size = 17,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CIR >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CIR & 0xff}
 	},
 	{
-	.description = "hit",
-	.field_bit_size = 1,
+	.description = "eir",
+	.field_bit_size = 17,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR & 0xff}
 	},
+	/* act_tid: 6, , table: meter_profile_tbl_cache.wr */
 	{
-	.description = "type",
-	.field_bit_size = 3,
+	.description = "rid",
+	.field_bit_size = 32,
 	.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_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
-	/* act_tid: 2, , table: mirror_tbl.wr */
 	{
-	.description = "act_rec_ptr",
-	.field_bit_size = 16,
+	.description = "meter_profile_ptr",
+	.field_bit_size = 10,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
+	(BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 & 0xff}
 	},
+	/* act_tid: 6, , table: meter_tbl.0 */
 	{
-	.description = "reserved",
-	.field_bit_size = 13,
+	.description = "bkt_c",
+	.field_bit_size = 27,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	(134217727 >> 24) & 0xff,
+	(134217727 >> 16) & 0xff,
+	(134217727 >> 8) & 0xff,
+	134217727 & 0xff}
 	},
 	{
-	.description = "ignore_drop",
-	.field_bit_size = 1,
+	.description = "bkt_e",
+	.field_bit_size = 27,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	(134217727 >> 24) & 0xff,
+	(134217727 >> 16) & 0xff,
+	(134217727 >> 8) & 0xff,
+	134217727 & 0xff}
 	},
 	{
-	.description = "copy_ing_or_egr",
+	.description = "mtr_val",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	1}
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff}
 	},
 	{
-	.description = "enable",
+	.description = "ecn_rmp_en",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	1}
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff}
+	},
+	{
+	.description = "meter_profile",
+	.field_bit_size = 8,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr1 = {
+	(BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 & 0xff}
 	},
-	/* act_tid: 2, , table: shared_mirror_record.wr */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -6147,47 +6178,151 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "mirror_id",
-	.field_bit_size = 4,
+	.description = "meter_ptr",
+	.field_bit_size = 10,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MIRROR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
-	},
-	/* act_tid: 3, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_RF_IDX_METER_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff}
 	},
-	/* act_tid: 3, , table: mod_record.ing_ttl */
 	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
+	.description = "sw_meter_profile_id",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.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: meter_tbl.update_wr */
 	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
+	.description = "bkt_c",
+	.field_bit_size = 27,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	(134217727 >> 24) & 0xff,
+	(134217727 >> 16) & 0xff,
+	(134217727 >> 8) & 0xff,
+	134217727 & 0xff}
 	},
 	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
+	.description = "bkt_e",
+	.field_bit_size = 27,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	(134217727 >> 24) & 0xff,
+	(134217727 >> 16) & 0xff,
+	(134217727 >> 8) & 0xff,
+	134217727 & 0xff}
 	},
 	{
-	.description = "rep_add_ivlan",
+	.description = "mtr_val",
 	.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_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr3 = {
+	(BNXT_ULP_RF_IDX_RF_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RF_0 & 0xff}
+	},
+	{
+	.description = "ecn_rmp_en",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr2 = {
+	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr3 = {
+	(BNXT_ULP_RF_IDX_RF_1 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RF_1 & 0xff}
+	},
+	{
+	.description = "meter_profile",
+	.field_bit_size = 8,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr1 = {
+	(BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 & 0xff}
+	},
+	/* act_tid: 7, , table: jump_index_table.alloc */
+	/* act_tid: 7, , table: flow_chain_cache.write */
+	{
+	.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 = "metadata",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr1 = {
+	(BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_JUMP_META & 0xff}
+	},
+	/* act_tid: 7, , table: int_flow_counter_tbl.0 */
+	{
+	.description = "count",
+	.field_bit_size = 64,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	/* act_tid: 7, , table: mod_record.ing_ttl */
+	{
+	.description = "metadata_en",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(47 >> 8) & 0xff,
+		47 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "rem_ovlan",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "rem_ivlan",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "rep_add_ivlan",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
 	.description = "rep_add_ovlan",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
@@ -6366,6 +6501,64 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
+	.description = "metadata_data",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
+	.field_opr1 = {
+		(49 >> 8) & 0xff,
+		49 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 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_NEXT,
+	.field_opr3 = {
+	(2 >> 8) & 0xff,
+	2 & 0xff}
+	},
+	{
+	.description = "metadata_rsvd",
+	.field_bit_size = 10,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(51 >> 8) & 0xff,
+		51 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_op",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(53 >> 8) & 0xff,
+		53 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_prof",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(55 >> 8) & 0xff,
+		55 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
 	.description = "alt_pfid",
 	.field_bit_size = 4,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
@@ -6573,12 +6766,21 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 3, , table: mod_record.ing_no_ttl */
+	/* act_tid: 7, , table: mod_record.ing_no_ttl */
 	{
 	.description = "metadata_en",
 	.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_OR,
+	.field_opr1 = {
+		(57 >> 8) & 0xff,
+		57 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	1},
+	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "rem_ovlan",
@@ -6775,6 +6977,64 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
+	.description = "metadata_data",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
+	.field_opr1 = {
+		(59 >> 8) & 0xff,
+		59 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 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_NEXT,
+	.field_opr3 = {
+	(3 >> 8) & 0xff,
+	3 & 0xff}
+	},
+	{
+	.description = "metadata_rsvd",
+	.field_bit_size = 10,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(61 >> 8) & 0xff,
+		61 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_op",
+	.field_bit_size = 2,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(63 >> 8) & 0xff,
+		63 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
+	.description = "metadata_prof",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
+	.field_opr1 = {
+		(65 >> 8) & 0xff,
+		65 & 0xff,
+		(2 >> 8) & 0xff,
+		2 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	},
+	{
 	.description = "l2_dmac",
 	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
@@ -6907,2469 +7167,122 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
 	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
 	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l4_dport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	/* act_tid: 3, , table: int_full_act_record.0 */
-	{
-	.description = "sp_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "encap_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
-	},
-	{
-	.description = "rsvd1",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_op",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
-	},
-	{
-	.description = "use_default",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
-	},
-	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "hit",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	/* act_tid: 4, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 4, , table: vnic_interface_rss_config.0 */
-	/* act_tid: 4, , table: vnic_interface_queue_config.0 */
-	/* act_tid: 4, , table: int_compact_act_record.0 */
-	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_op",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_RSS_VNIC >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RSS_VNIC & 0xff}
-	},
-	{
-	.description = "use_default",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
-	},
-	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "hit",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 4, , table: int_compact_act_record.1 */
-	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_op",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
-	},
-	{
-	.description = "use_default",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
-	},
-	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "hit",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 5, , table: meter_profile_tbl.0 */
-	{
-	.description = "cf",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CF >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CF & 0xff}
-	},
-	{
-	.description = "pm",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_PM >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_PM & 0xff}
-	},
-	{
-	.description = "rfc2698",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_RFC2698 >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_RFC2698 & 0xff}
-	},
-	{
-	.description = "cbsm",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBSM >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBSM & 0xff}
-	},
-	{
-	.description = "ebsm",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBSM >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBSM & 0xff}
-	},
-	{
-	.description = "cbnd",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBND >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBND & 0xff}
-	},
-	{
-	.description = "ebnd",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBND >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBND & 0xff}
-	},
-	{
-	.description = "cbs",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBS >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CBS & 0xff}
-	},
-	{
-	.description = "ebs",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBS >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EBS & 0xff}
-	},
-	{
-	.description = "cir",
-	.field_bit_size = 17,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_CIR >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_CIR & 0xff}
-	},
-	{
-	.description = "eir",
-	.field_bit_size = 17,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_PROF_EIR & 0xff}
-	},
-	/* act_tid: 5, , table: meter_profile_tbl_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 = "meter_profile_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 & 0xff}
-	},
-	/* act_tid: 5, , table: meter_tbl.0 */
-	{
-	.description = "bkt_c",
-	.field_bit_size = 27,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	(134217727 >> 24) & 0xff,
-	(134217727 >> 16) & 0xff,
-	(134217727 >> 8) & 0xff,
-	134217727 & 0xff}
-	},
-	{
-	.description = "bkt_e",
-	.field_bit_size = 27,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	(134217727 >> 24) & 0xff,
-	(134217727 >> 16) & 0xff,
-	(134217727 >> 8) & 0xff,
-	134217727 & 0xff}
-	},
-	{
-	.description = "mtr_val",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff}
-	},
-	{
-	.description = "ecn_rmp_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff}
-	},
-	{
-	.description = "meter_profile",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 & 0xff}
-	},
-	/* act_tid: 5, , table: shared_meter_tbl_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 = "meter_ptr",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_METER_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PTR_0 & 0xff}
-	},
-	{
-	.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: 5, , table: meter_tbl.update_wr */
-	{
-	.description = "bkt_c",
-	.field_bit_size = 27,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	(134217727 >> 24) & 0xff,
-	(134217727 >> 16) & 0xff,
-	(134217727 >> 8) & 0xff,
-	134217727 & 0xff}
-	},
-	{
-	.description = "bkt_e",
-	.field_bit_size = 27,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	(134217727 >> 24) & 0xff,
-	(134217727 >> 16) & 0xff,
-	(134217727 >> 8) & 0xff,
-	134217727 & 0xff}
-	},
-	{
-	.description = "mtr_val",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL_UPDATE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_MTR_VAL & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr3 = {
-	(BNXT_ULP_RF_IDX_RF_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RF_0 & 0xff}
-	},
-	{
-	.description = "ecn_rmp_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN_UPDATE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_METER_INST_ECN_RMP_EN & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr3 = {
-	(BNXT_ULP_RF_IDX_RF_1 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_RF_1 & 0xff}
-	},
-	{
-	.description = "meter_profile",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0 & 0xff}
-	},
-	/* act_tid: 6, , table: jump_index_table.alloc */
-	/* act_tid: 6, , table: flow_chain_cache.write */
-	{
-	.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 = "metadata",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_JUMP_META >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_JUMP_META & 0xff}
-	},
-	/* act_tid: 6, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 6, , table: int_vtag_encap_record.0 */
-	{
-	.description = "ecv_valid",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "ecv_custom_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ecv_vtag_type",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	ULP_THOR_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
-	},
-	{
-	.description = "ecv_l2_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ecv_l3_type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ecv_l4_type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ecv_tun_type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vtag_tpid",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff}
-	},
-	{
-	.description = "vtag_pcp",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff}
-	},
-	{
-	.description = "vtag_de",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vtag_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
-	},
-	/* act_tid: 6, , table: mod_record.dec_ttl_egr */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_pfid",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_rsvd",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_tl3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_il3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_tl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_il3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 6, , table: mod_record.no_dec_ttl_egr */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "metadata_data",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 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_SKIP
-	},
-	{
-	.description = "metadata_rsvd",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "metadata_op",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	ULP_THOR_SYM_METADATA_OP_NORMAL},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "metadata_prof",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	ULP_THOR_SYM_META_PROFILE_0},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	/* act_tid: 6, , table: int_full_act_record.0 */
-	{
-	.description = "sp_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "encap_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
-	},
-	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
-	},
-	{
-	.description = "rsvd1",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_op",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_JUMP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_JUMP & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	(ULP_THOR_SYM_RECYCLE_DST >> 8) & 0xff,
-	ULP_THOR_SYM_RECYCLE_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr3 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
-	},
-	{
-	.description = "use_default",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
-	},
-	{
-	.description = "hit",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	/* act_tid: 6, , table: int_compact_act_record.0 */
-	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_op",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
-	},
-	{
-	.description = "use_default",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
-	},
-	{
-	.description = "hit",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 7, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 7, , table: mod_record.ing_ttl */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_pfid",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "alt_vid",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_rsvd",
-	.field_bit_size = 12,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_tl3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_il3_dec",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CF,
-	.field_opr1 = {
-	(BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
-	BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
-	},
-	{
-	.description = "ttl_tl3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_il3_rdir",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l2_smac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_sip_ipv6",
-	.field_bit_size = 128,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_dip_ipv6",
-	.field_bit_size = 128,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_sip_ipv4",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_dip_ipv4",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l4_sport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l4_dport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	/* act_tid: 7, , table: mod_record.ing_no_ttl */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l2_smac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_sip_ipv6",
-	.field_bit_size = 128,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_dip_ipv6",
-	.field_bit_size = 128,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV6_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV6_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_sip_ipv4",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l3_dip_ipv4",
-	.field_bit_size = 32,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_IPV4_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l4_sport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	{
-	.description = "l4_dport",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
-	},
-	/* act_tid: 7, , table: int_full_act_record.0 */
-	{
-	.description = "sp_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "encap_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
-	},
-	{
-	.description = "rsvd1",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rsvd0",
-	.field_bit_size = 8,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "decap_func",
-	.field_bit_size = 5,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "meter",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "stats_op",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
-	},
-	{
-	.description = "stats_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
-	},
-	{
-	.description = "vnic_or_vport",
-	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
-	},
-	{
-	.description = "use_default",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mirror",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
-	},
-	{
-	.description = "cond_copy",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "vlan_del_rpt",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "drop",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "hit",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "type",
-	.field_bit_size = 3,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	/* act_tid: 8, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 8, , table: sp_smac_ipv4.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 = "ipv4_src_addr",
-	.field_bit_size = 32,
-	.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}
-	},
-	{
-	.description = "reserved",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 8, , table: source_property_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: 8, , 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: 8, , 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 = 16,
-	.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: 8, , table: mod_record.ing_l2write */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
-	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
 	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
+	.description = "l4_dport",
+	.field_bit_size = 16,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr2 = {
-	1},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	(BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
+	/* act_tid: 7, , table: sp_smac_ipv4.0 */
 	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
+	.description = "smac",
+	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.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 = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
+	.description = "ipv4_src_addr",
+	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.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}
 	},
 	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
+	.description = "reserved",
+	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
+	/* act_tid: 7, , table: source_property_cache.wr */
 	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
+	.description = "rid",
+	.field_bit_size = 32,
 	.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_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
+	.description = "sp_rec_ptr",
+	.field_bit_size = 32,
 	.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}
 	},
+	/* act_tid: 7, , table: sp_smac_ipv6.0 */
 	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
+	.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 = "l2_dmac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.description = "rid",
+	.field_bit_size = 32,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_DST & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_DST & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	(BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_RID & 0xff}
 	},
 	{
-	.description = "l2_smac",
-	.field_bit_size = 48,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.description = "sp_rec_ptr",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SET_MAC_SRC & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
-	.field_opr2 = {
-	(BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_SET_MAC_SRC & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
+	(BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff}
 	},
-	/* act_tid: 8, , table: int_tun_encap_record.ipv4_vxlan */
+	/* act_tid: 7, , table: int_tun_encap_record.ipv4_vxlan */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -9632,7 +7545,26 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}
 	},
-	/* act_tid: 8, , table: int_tun_encap_record.ipv6_vxlan */
+	/* act_tid: 7, , table: vxlan_encap_rec_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 = "enc_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_ENCAP_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
+	},
+	/* act_tid: 7, , table: int_tun_encap_record.ipv6_vxlan */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -9874,7 +7806,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -9893,26 +7825,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_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 = "enc_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_ENCAP_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
-	},
-	/* act_tid: 8, , table: int_geneve_encap_record.ipv4_geneve */
+	/* act_tid: 7, , table: int_geneve_encap_record.ipv4_geneve */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -10229,7 +8142,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
 	},
-	/* act_tid: 8, , table: int_geneve_encap_record.ipv6_geneve */
+	/* act_tid: 7, , table: int_geneve_encap_record.ipv6_geneve */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -10525,7 +8438,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_GENEVE_OPT_W5 & 0xff}
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.wr */
+	/* act_tid: 7, , table: geneve_encap_rec_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -10539,12 +8452,92 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "enc_rec_ptr",
 	.field_bit_size = 32,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+	.field_opr1 = {
+	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
+	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
+	},
+	/* act_tid: 7, , table: int_vtag_encap_record.0 */
+	{
+	.description = "ecv_valid",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	1}
+	},
+	{
+	.description = "ecv_custom_en",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ecv_vtag_type",
+	.field_bit_size = 4,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr1 = {
+	ULP_THOR_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
+	},
+	{
+	.description = "ecv_l2_en",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ecv_l3_type",
+	.field_bit_size = 3,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ecv_l4_type",
+	.field_bit_size = 3,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "ecv_tun_type",
+	.field_bit_size = 3,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "vtag_tpid",
+	.field_bit_size = 16,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff}
+	},
+	{
+	.description = "vtag_pcp",
+	.field_bit_size = 3,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opr1 = {
+	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff}
+	},
+	{
+	.description = "vtag_de",
+	.field_bit_size = 1,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	},
+	{
+	.description = "vtag_vid",
+	.field_bit_size = 12,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
 	},
-	/* act_tid: 8, , table: int_full_act_record.0 */
+	/* act_tid: 7, , table: int_full_act_record.0 */
 	{
 	.description = "sp_rec_ptr",
 	.field_bit_size = 16,
@@ -10600,9 +8593,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "stats_op",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "stats_ptr",
@@ -10616,11 +8607,21 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "vnic_or_vport",
 	.field_bit_size = 11,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
+	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
-	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
+		(84 >> 8) & 0xff,
+		84 & 0xff,
+		(1 >> 8) & 0xff,
+		1 & 0xff},
+	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_opr2 = {
+	(ULP_THOR_SYM_RECYCLE_DST >> 8) & 0xff,
+	ULP_THOR_SYM_RECYCLE_DST & 0xff},
+	.field_src3 = BNXT_ULP_FIELD_SRC_NEXT,
+	.field_opr3 = {
+	(4 >> 8) & 0xff,
+	4 & 0xff}
 	},
 	{
 	.description = "use_default",
@@ -10653,7 +8654,16 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "drop",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
 	},
 	{
 	.description = "hit",
@@ -10669,169 +8679,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 9, , table: int_flow_counter_tbl.0 */
-	{
-	.description = "count",
-	.field_bit_size = 64,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 9, , table: mod_record.vf_2_vf */
-	{
-	.description = "metadata_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
-	},
-	{
-	.description = "rem_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rem_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ivlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "rep_add_ovlan",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "ttl_update",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "tun_md_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "reserved_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_dmac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l2_smac_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv6_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_sip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l3_dip_ipv4_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_sport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "l4_dport_en",
-	.field_bit_size = 1,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "metadata_data",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
-	.field_opr1 = {
-		(BNXT_ULP_CF_IDX_DEV_ACT_PORT_ID >> 8) & 0xff,
-		BNXT_ULP_CF_IDX_DEV_ACT_PORT_ID & 0xff,
-		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
-		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff}
-	},
-	{
-	.description = "metadata_rsvd",
-	.field_bit_size = 10,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "metadata_op",
-	.field_bit_size = 2,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "metadata_prof",
-	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	/* act_tid: 9, , table: int_full_act_record.0 */
-	{
-	.description = "sp_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "encap_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
-	{
-	.description = "mod_rec_ptr",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr1 = {
-	(BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
-	},
-	{
-	.description = "rsvd1",
-	.field_bit_size = 16,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-	},
+	/* act_tid: 7, , table: int_compact_act_record.0 */
 	{
 	.description = "rsvd0",
 	.field_bit_size = 8,
@@ -10854,9 +8702,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "stats_op",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
 	{
 	.description = "stats_ptr",
@@ -10871,10 +8717,10 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "vnic_or_vport",
 	.field_bit_size = 11,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
 	.field_opr1 = {
-	(ULP_THOR_SYM_LOOPBACK_PORT >> 8) & 0xff,
-	ULP_THOR_SYM_LOOPBACK_PORT & 0xff}
+	(BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
+	BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
 	},
 	{
 	.description = "use_default",
@@ -10885,22 +8731,11 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	{
 	.description = "mirror",
 	.field_bit_size = 4,
-	.field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+	.field_src1 = BNXT_ULP_FIELD_SRC_RF,
 	.field_opr1 = {
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
-	((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
-	(uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
-	.field_opr2 = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
-	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
 	{
 	.description = "cond_copy",
@@ -10918,7 +8753,16 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "drop",
 	.field_bit_size = 1,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+	.field_opr1 = {
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
+	((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
+	(uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
 	},
 	{
 	.description = "hit",
@@ -10930,11 +8774,9 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.description = "type",
 	.field_bit_size = 3,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_CONST,
-	.field_opr1 = {
-	1}
+	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 10, , table: mirror_tbl.alloc */
+	/* act_tid: 12, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -10967,14 +8809,14 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 10, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 12, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 10, , table: mod_record.vf_2_vf */
+	/* act_tid: 12, , table: mod_record.vf_2_vf */
 	{
 	.description = "metadata_en",
 	.field_bit_size = 1,
@@ -11102,7 +8944,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 10, , table: int_full_act_record.0 */
+	/* act_tid: 12, , table: int_full_act_record.0 */
 	{
 	.description = "sp_rec_ptr",
 	.field_bit_size = 16,
@@ -11218,7 +9060,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 10, , table: mirror_tbl.wr */
+	/* act_tid: 12, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -11256,7 +9098,7 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
 	.field_opr1 = {
 	1}
 	},
-	/* act_tid: 10, , table: shared_mirror_record.wr */
+	/* act_tid: 12, , table: shared_mirror_record.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -11299,56 +9141,42 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_act_ident_list[] = {
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 2, , table: shared_mirror_record.del_chk */
+	/* act_tid: 3, , table: shared_mirror_record.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 0
 	},
-	/* act_tid: 3, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 4,
-	.ident_bit_pos = 32
-	},
-	/* act_tid: 4, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 4,
-	.ident_bit_pos = 32
-	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.rd2 */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.rd2 */
 	{
 	.description = "meter_profile_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_METER_PROFILE_PTR_0,
 	.ident_bit_size = 10,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 5, , table: meter_profile_tbl_cache.del_chk */
+	/* act_tid: 6, , table: meter_profile_tbl_cache.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 0
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.del_chk */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 0
 	},
-	/* act_tid: 5, , table: shared_meter_tbl_cache.rd_update */
+	/* act_tid: 6, , table: shared_meter_tbl_cache.rd_update */
 	{
 	.description = "meter_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_METER_PTR_0,
 	.ident_bit_size = 10,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 5, , table: meter_tbl.update_rd */
+	/* act_tid: 6, , table: meter_tbl.update_rd */
 	{
 	.description = "ecn_rmp_en",
 	.regfile_idx = BNXT_ULP_RF_IDX_RF_1,
@@ -11367,20 +9195,13 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_act_ident_list[] = {
 	.ident_bit_size = 1,
 	.ident_bit_pos = 54
 	},
-	/* act_tid: 6, , table: flow_chain_cache.rd */
+	/* act_tid: 7, , table: flow_chain_cache.rd */
 	{
 	.description = "metadata",
 	.regfile_idx = BNXT_ULP_RF_IDX_JUMP_META,
 	.ident_bit_size = 16,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 6, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 4,
-	.ident_bit_pos = 32
-	},
 	/* act_tid: 7, , table: shared_mirror_record.rd */
 	{
 	.description = "mirror_id",
@@ -11388,56 +9209,42 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_act_ident_list[] = {
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 4,
-	.ident_bit_pos = 32
-	},
-	/* act_tid: 8, , table: source_property_cache.rd */
+	/* act_tid: 7, , table: source_property_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: 8, , table: source_property_ipv6_cache.rd */
+	/* 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 = 16,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.rd */
+	/* act_tid: 7, , table: vxlan_encap_ipv6_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: geneve_encap_rec_cache.rd */
+	/* act_tid: 7, , table: geneve_encap_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 9, , table: shared_mirror_record.rd */
-	{
-	.description = "mirror_id",
-	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
-	.ident_bit_size = 4,
-	.ident_bit_pos = 32
-	},
-	/* act_tid: 10, , table: shared_mirror_record.del_chk */
+	/* act_tid: 12, , table: shared_mirror_record.del_chk */
 	{
 	.description = "rid",
 	.regfile_idx = BNXT_ULP_RF_IDX_RID,
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c
index 30be90bbd8..bfa833904b 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_thor_class.c
@@ -37,7 +37,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = {
 	.start_tbl_idx = 118,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 0 }
 	},
 	/* class_tid: 4, egress */
@@ -47,7 +47,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = {
 	.start_tbl_idx = 140,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-		.cond_start_idx = 3824,
+		.cond_start_idx = 3830,
 		.cond_nums = 0 }
 	}
 };
@@ -74,7 +74,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.key_bit_size = 10,
 	.key_num_fields = 1,
 	.ident_start_idx = 0,
-	.ident_nums = 3
+	.ident_nums = 2
 	},
 	{ /* class_tid: 1, , table: control.vxlan_ip_check */
 	.description = "control.vxlan_ip_check",
@@ -110,7 +110,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 8,
 	.key_bit_size = 8,
 	.key_num_fields = 1,
-	.ident_start_idx = 3,
+	.ident_start_idx = 2,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 1, , table: control.custom_tunnel */
@@ -249,7 +249,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 5,
+	.ident_start_idx = 4,
 	.ident_nums = 3
 	},
 	{ /* class_tid: 1, , table: control.check_f1_f2_flow */
@@ -285,7 +285,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 19,
 	.key_bit_size = 19,
 	.key_num_fields = 2,
-	.ident_start_idx = 8,
+	.ident_start_idx = 7,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: control.tunnel_cache_check */
@@ -320,7 +320,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
-	.ident_start_idx = 9,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.ident_start_idx = 8,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: tunnel_cache.f1_f2_wr */
@@ -426,7 +427,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 447,
 	.key_bit_size = 447,
 	.key_num_fields = 9,
-	.ident_start_idx = 10,
+	.ident_start_idx = 9,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: control.multi_flow_cache_check */
@@ -580,7 +581,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 11,
+	.ident_start_idx = 10,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: control.flow_chain_group_id */
@@ -683,7 +684,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 12,
+	.ident_start_idx = 11,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: control.flow_chain_group_l2_cntxt_check */
@@ -718,6 +719,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 29,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -725,7 +727,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 13,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 13,
+	.ident_start_idx = 12,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: flow_chain_l2_cntxt.write */
@@ -772,7 +774,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 110,
 	.key_bit_size = 110,
 	.key_num_fields = 8,
-	.ident_start_idx = 14,
+	.ident_start_idx = 13,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: control.mac_addr_cache_miss */
@@ -807,7 +809,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
-	.ident_start_idx = 15,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.ident_start_idx = 14,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: l2_cntxt_tcam.ingress_entry */
@@ -828,6 +831,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 59,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -835,7 +839,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 21,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 16,
+	.ident_start_idx = 15,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 1, , table: mac_addr_cache.wr */
@@ -942,7 +946,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 75,
 	.key_bit_size = 75,
 	.key_num_fields = 3,
-	.ident_start_idx = 16,
+	.ident_start_idx = 15,
 	.ident_nums = 7
 	},
 	{ /* class_tid: 1, , table: control.proto_header_cache_miss */
@@ -981,7 +985,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.partial_key_start_idx = 93,
 	.partial_key_num_fields = 1,
 	.partial_key_bit_size = 64,
-	.ident_start_idx = 23,
+	.ident_start_idx = 22,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 1, , table: control.overlap_miss */
@@ -1016,7 +1020,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
-	.ident_start_idx = 25,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.ident_start_idx = 24,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: fkb_select.wc_gen_template */
@@ -1035,6 +1040,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 32,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -1096,6 +1102,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 141,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -1160,6 +1167,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand  = BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY,
 	.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 = 97,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -1167,7 +1175,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 247,
 	.result_bit_size = 33,
 	.result_num_fields = 8,
-	.ident_start_idx = 26,
+	.ident_start_idx = 25,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: wm_key_recipe.0 */
@@ -1239,7 +1247,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 77,
 	.key_bit_size = 77,
 	.key_num_fields = 4,
-	.ident_start_idx = 27,
+	.ident_start_idx = 26,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 1, , table: control.em_flow_conflict_cache_miss */
@@ -1271,6 +1279,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 263,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -1409,6 +1418,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.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 = 377,
 	.result_bit_size = 38,
 	.result_num_fields = 5
@@ -1484,7 +1494,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 28,
+	.ident_start_idx = 27,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 2, , table: control.l2_only_check */
@@ -1537,7 +1547,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1023,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 1956,
+		.cond_start_idx = 1958,
 		.cond_nums = 2 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -1552,7 +1562,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 1958,
+		.cond_start_idx = 1960,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1562,7 +1572,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 447,
 	.key_bit_size = 447,
 	.key_num_fields = 9,
-	.ident_start_idx = 30,
+	.ident_start_idx = 29,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 2, , table: control.multi_flow_cache_check */
@@ -1573,7 +1583,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 5,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 1982,
+		.cond_start_idx = 1988,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -1589,7 +1599,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 1983,
+		.cond_start_idx = 1989,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC,
 	.tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX,
@@ -1608,7 +1618,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 1983,
+		.cond_start_idx = 1989,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1629,7 +1639,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 1983,
+		.cond_start_idx = 1989,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1650,7 +1660,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 1983,
+		.cond_start_idx = 1989,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1672,7 +1682,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2011,
+		.cond_start_idx = 2017,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1691,7 +1701,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2011,
+		.cond_start_idx = 2017,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1710,7 +1720,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 6,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 2019,
+		.cond_start_idx = 2025,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -1725,7 +1735,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2020,
+		.cond_start_idx = 2026,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1735,7 +1745,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 32,
 	.key_bit_size = 32,
 	.key_num_fields = 1,
-	.ident_start_idx = 31,
+	.ident_start_idx = 30,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 2, , table: control.flow_chain_group_id */
@@ -1746,7 +1756,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 2020,
+		.cond_start_idx = 2026,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -1762,7 +1772,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2021,
+		.cond_start_idx = 2027,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_ALLOC_TBL_OPC_ALLOC,
 	.tbl_operand = BNXT_ULP_RF_IDX_JUMP_META_IDX,
@@ -1781,7 +1791,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2021,
+		.cond_start_idx = 2027,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -1804,7 +1814,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2021,
+		.cond_start_idx = 2027,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1828,7 +1838,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2021,
+		.cond_start_idx = 2027,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1838,7 +1848,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 75,
 	.key_bit_size = 75,
 	.key_num_fields = 3,
-	.ident_start_idx = 32,
+	.ident_start_idx = 31,
 	.ident_nums = 7
 	},
 	{ /* class_tid: 2, , table: control.proto_header_cache_miss */
@@ -1849,7 +1859,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 13,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 2023,
+		.cond_start_idx = 2029,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -1864,7 +1874,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2024,
+		.cond_start_idx = 2030,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1877,7 +1887,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.partial_key_start_idx = 243,
 	.partial_key_num_fields = 1,
 	.partial_key_bit_size = 64,
-	.ident_start_idx = 39,
+	.ident_start_idx = 38,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 2, , table: control.overlap_miss */
@@ -1888,7 +1898,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 2026,
+		.cond_start_idx = 2032,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -1903,7 +1913,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2027,
+		.cond_start_idx = 2033,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -1912,7 +1922,8 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
-	.ident_start_idx = 41,
+	.track_type = CFA_TRACK_TYPE_SID,
+	.ident_start_idx = 40,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 2, , table: fkb_select.wc_gen_template */
@@ -1924,13 +1935,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2027,
+		.cond_start_idx = 2033,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_WC_KEY_ID_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 386,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -1945,7 +1957,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2284,
+		.cond_start_idx = 2290,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -1970,7 +1982,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2286,
+		.cond_start_idx = 2292,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -1985,13 +1997,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 2286,
+		.cond_start_idx = 2292,
 		.cond_nums = 1 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_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_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 495,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -2006,7 +2019,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2287,
+		.cond_start_idx = 2293,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID,
@@ -2025,7 +2038,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2287,
+		.cond_start_idx = 2293,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2045,7 +2058,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2303,
+		.cond_start_idx = 2309,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -2056,6 +2069,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand  = BNXT_ULP_RF_IDX_PROF_TCAM_PRIORITY,
 	.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 = 247,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -2063,7 +2077,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 601,
 	.result_bit_size = 33,
 	.result_num_fields = 8,
-	.ident_start_idx = 42,
+	.ident_start_idx = 41,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 2, , table: wm_key_recipe.0 */
@@ -2076,7 +2090,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 2546,
+		.cond_start_idx = 2552,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_WC_RECIPE_ID,
@@ -2101,7 +2115,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3068,
+		.cond_start_idx = 3074,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -2125,7 +2139,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 9,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3070,
+		.cond_start_idx = 3076,
 		.cond_nums = 3 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -2135,7 +2149,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 77,
 	.key_bit_size = 77,
 	.key_num_fields = 4,
-	.ident_start_idx = 43,
+	.ident_start_idx = 42,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 2, , table: control.em_flow_conflict_cache_miss */
@@ -2146,7 +2160,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3075,
+		.cond_start_idx = 3081,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -2161,12 +2175,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3076,
+		.cond_start_idx = 3082,
 		.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 = 617,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -2181,7 +2196,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3319,
+		.cond_start_idx = 3325,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_KEY_RECIPE_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_EM_RECIPE_ID,
@@ -2205,7 +2220,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 3,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3805,
+		.cond_start_idx = 3811,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -2227,7 +2242,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 4,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3807,
+		.cond_start_idx = 3813,
 		.cond_nums = 2 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2247,7 +2262,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 5,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3809,
+		.cond_start_idx = 3815,
 		.cond_nums = 2 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -2261,7 +2276,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3811,
+		.cond_start_idx = 3817,
 		.cond_nums = 4 },
 	.tbl_opcode = BNXT_ULP_EM_TBL_OPC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL,
@@ -2281,7 +2296,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 2,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3815,
+		.cond_start_idx = 3821,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -2295,7 +2310,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3816,
+		.cond_start_idx = 3822,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
@@ -2305,6 +2320,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.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 = 731,
 	.result_bit_size = 38,
 	.result_num_fields = 5
@@ -2317,7 +2333,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3816,
+		.cond_start_idx = 3822,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
@@ -2330,7 +2346,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2349,7 +2365,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = -26,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
@@ -2371,13 +2387,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR,
 	.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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 736,
 	.result_bit_size = 128,
 	.result_num_fields = 17
@@ -2392,7 +2409,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2416,7 +2433,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2426,7 +2443,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 44,
+	.ident_start_idx = 43,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 3, , table: control.ing_0 */
@@ -2437,7 +2454,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3817,
+		.cond_start_idx = 3823,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -2452,7 +2469,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
@@ -2463,6 +2480,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 369,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -2470,7 +2488,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 761,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 45,
+	.ident_start_idx = 44,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */
@@ -2483,7 +2501,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2506,7 +2524,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -2516,6 +2534,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 5,
 	.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 = 391,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -2523,7 +2542,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 772,
 	.result_bit_size = 33,
 	.result_num_fields = 8,
-	.ident_start_idx = 47,
+	.ident_start_idx = 46,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 3, , table: parif_def_arec_ptr.ing_0 */
@@ -2535,7 +2554,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
 	.tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
@@ -2554,7 +2573,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
 	.tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
@@ -2575,13 +2594,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 782,
 	.result_bit_size = 128,
 	.result_num_fields = 17,
@@ -2597,7 +2617,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2620,7 +2640,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
 	.tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF,
@@ -2640,7 +2660,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2650,7 +2670,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 47,
+	.ident_start_idx = 46,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 3, , table: control.non_vfr_egr_2 */
@@ -2661,7 +2681,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3818,
+		.cond_start_idx = 3824,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -2676,7 +2696,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3819,
+		.cond_start_idx = 3825,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
@@ -2685,6 +2705,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 436,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -2692,7 +2713,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 815,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 47,
+	.ident_start_idx = 46,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 3, , table: profile_tcam.non_vfr_prof_func_egr_catch_all */
@@ -2704,7 +2725,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3819,
+		.cond_start_idx = 3825,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -2714,6 +2735,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 5,
 	.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 = 457,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -2721,7 +2743,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 821,
 	.result_bit_size = 33,
 	.result_num_fields = 8,
-	.ident_start_idx = 49,
+	.ident_start_idx = 48,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 3, , table: l2_cntxt_tcam_cache.non_vfr_egr_wr */
@@ -2734,7 +2756,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3819,
+		.cond_start_idx = 3825,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2768,7 +2790,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 8,
 	.key_bit_size = 8,
 	.key_num_fields = 1,
-	.ident_start_idx = 49,
+	.ident_start_idx = 48,
 	.ident_nums = 2
 	},
 	{ /* class_tid: 3, , table: control.default_custom_tunnel */
@@ -2779,7 +2801,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3821,
+		.cond_start_idx = 3827,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -2795,7 +2817,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3822,
+		.cond_start_idx = 3828,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
@@ -2814,7 +2836,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3823,
+		.cond_start_idx = 3829,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
@@ -2833,7 +2855,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3824,
+		.cond_start_idx = 3830,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
@@ -2858,7 +2880,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3824,
+		.cond_start_idx = 3830,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -2868,7 +2890,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 15,
 	.key_bit_size = 15,
 	.key_num_fields = 3,
-	.ident_start_idx = 51,
+	.ident_start_idx = 50,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: control.prof_tcam_cache.vfr_glb_act_rec_rd.0 */
@@ -2879,7 +2901,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 6,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3824,
+		.cond_start_idx = 3830,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -2896,12 +2918,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 839,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
@@ -2918,13 +2941,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 859,
 	.result_bit_size = 128,
 	.result_num_fields = 17,
@@ -2939,7 +2963,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
 	.tbl_operand = ULP_THOR_SYM_LOOPBACK_PARIF,
@@ -2959,7 +2983,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
 	.tbl_operand = ULP_THOR_SYM_LOOPBACK_PARIF,
@@ -2981,7 +3005,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3005,7 +3029,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3015,7 +3039,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 51,
+	.ident_start_idx = 50,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: control.vf_2_vfr.0 */
@@ -3026,7 +3050,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 5,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3825,
+		.cond_start_idx = 3831,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -3042,7 +3066,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3052,7 +3076,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 51,
+	.ident_start_idx = 50,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 4, , table: l2_cntxt_tcam.vf_egr */
@@ -3064,7 +3088,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
@@ -3073,6 +3097,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 511,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -3080,7 +3105,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 885,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 52,
+	.ident_start_idx = 51,
 	.ident_nums = 1
 	},
 	{ /* class_tid: 4, , table: profile_tcam.prof_func_catch_all */
@@ -3092,7 +3117,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -3103,6 +3128,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 5,
 	.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 = 532,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -3110,7 +3136,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 891,
 	.result_bit_size = 33,
 	.result_num_fields = 8,
-	.ident_start_idx = 53,
+	.ident_start_idx = 52,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_egr_wr */
@@ -3123,7 +3149,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3148,13 +3174,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 904,
 	.result_bit_size = 128,
 	.result_num_fields = 17
@@ -3170,7 +3197,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3180,7 +3207,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 15,
 	.key_bit_size = 15,
 	.key_num_fields = 3,
-	.ident_start_idx = 53,
+	.ident_start_idx = 52,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: control.prof_tcam_cache.vfr.0 */
@@ -3191,7 +3218,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 10,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3826,
+		.cond_start_idx = 3832,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -3208,13 +3235,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_DROP_AREC_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 921,
 	.result_bit_size = 128,
 	.result_num_fields = 17,
@@ -3229,7 +3257,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
@@ -3240,6 +3268,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 579,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -3247,7 +3276,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 938,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 53,
+	.ident_start_idx = 52,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: l2_cntxt_tcam.vfr_2_vf_ing.0 */
@@ -3259,7 +3288,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
@@ -3270,6 +3299,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 600,
 	.blob_key_bit_size = 213,
 	.key_bit_size = 213,
@@ -3277,7 +3307,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.result_start_idx = 944,
 	.result_bit_size = 43,
 	.result_num_fields = 6,
-	.ident_start_idx = 53,
+	.ident_start_idx = 52,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: fkb_select.vfr_em */
@@ -3289,12 +3319,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 950,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -3308,12 +3339,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_1,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1056,
 	.result_bit_size = 106,
 	.result_num_fields = 106
@@ -3327,7 +3359,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -3338,6 +3370,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 621,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -3355,7 +3388,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
@@ -3366,6 +3399,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 664,
 	.blob_key_bit_size = 94,
 	.key_bit_size = 94,
@@ -3385,7 +3419,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3408,7 +3442,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
 	.tbl_operand = BNXT_ULP_CF_IDX_VF_FUNC_SVIF,
@@ -3427,7 +3461,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
@@ -3451,7 +3485,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3461,7 +3495,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 	.blob_key_bit_size = 11,
 	.key_bit_size = 11,
 	.key_num_fields = 1,
-	.ident_start_idx = 53,
+	.ident_start_idx = 52,
 	.ident_nums = 0
 	},
 	{ /* class_tid: 4, , table: control.0 */
@@ -3472,7 +3506,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 4,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 3827,
+		.cond_start_idx = 3833,
 		.cond_nums = 1 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
@@ -3487,7 +3521,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
 	.tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF,
@@ -3508,7 +3542,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
 	.gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
@@ -3531,7 +3565,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
 	.tbl_operand = BNXT_ULP_CF_IDX_VF_FUNC_SVIF,
@@ -3552,12 +3586,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1220,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
@@ -3574,13 +3609,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1240,
 	.result_bit_size = 128,
 	.result_num_fields = 17
@@ -3596,13 +3632,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 1,
 		.cond_false_goto = 1,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 1257,
 	.result_bit_size = 128,
 	.result_num_fields = 17
@@ -3616,7 +3653,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
 		.cond_true_goto  = 0,
 		.cond_false_goto = 0,
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
-		.cond_start_idx = 3828,
+		.cond_start_idx = 3834,
 		.cond_nums = 0 },
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
@@ -3702,24 +3739,24 @@ struct bnxt_ulp_mapper_cond_list_info ulp_thor_class_cond_oper_list[] = {
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 1946,
-		.cond_nums = 4
+		.cond_nums = 5
 	},
 	/* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1946*/
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 1950,
-		.cond_nums = 4
+		.cond_start_idx = 1951,
+		.cond_nums = 5
 	},
-	/* cond_execute: class_tid: 2, control.check_tunnel_recycle:1954*/
+	/* cond_execute: class_tid: 2, control.check_tunnel_recycle:1956*/
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
-		.cond_start_idx = 1954,
+		.cond_start_idx = 1956,
 		.cond_nums = 2
 	},
-	/* cond_execute: class_tid: 3, tunnel_gparse_cache.def_cust_tun_rd:3819*/
+	/* cond_execute: class_tid: 3, tunnel_gparse_cache.def_cust_tun_rd:3825*/
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
-		.cond_start_idx = 3819,
+		.cond_start_idx = 3825,
 		.cond_nums = 2
 	}
 };
@@ -8876,7 +8913,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW
 	},
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.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:1183*/
@@ -12138,6 +12175,10 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	},
 	/* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1946*/
 	{
+	.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
 	},
@@ -12155,6 +12196,10 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	},
 	/* cond_execute: class_tid: 2, control.tunnel_ipv6_sip_check:1946*/
 	{
+	.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
 	},
@@ -12170,7 +12215,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC
 	},
-	/* cond_execute: class_tid: 2, control.check_tunnel_recycle:1954*/
+	/* cond_execute: class_tid: 2, control.check_tunnel_recycle:1956*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW
@@ -12179,7 +12224,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:1956*/
+	/* cond_execute: class_tid: 2, control.multi_tunnel_check:1958*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
 	.cond_operand = BNXT_ULP_CF_IDX_OUTER_EM_ONLY
@@ -12188,7 +12233,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:1958*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1960*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_ETH
@@ -12197,7 +12242,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1960*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1962*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_ETH
@@ -12206,7 +12251,25 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1962*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1964*/
+	{
+	.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:1966*/
+	{
+	.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:1968*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12215,7 +12278,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1964*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1970*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12224,7 +12287,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1966*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1972*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12233,7 +12296,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1968*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1974*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12242,7 +12305,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1970*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1976*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12251,7 +12314,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1972*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1978*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12260,7 +12323,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1974*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1980*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12269,7 +12332,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1976*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1982*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12278,7 +12341,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1978*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1984*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_UDP
@@ -12287,7 +12350,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.rd:1980*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.rd:1986*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_UDP
@@ -12296,12 +12359,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:1982*/
+	/* cond_execute: class_tid: 2, control.multi_flow_cache_check:1988*/
 	{
 	.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:1983*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:1989*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_ETH
@@ -12310,7 +12373,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:1985*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:1991*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_ETH
@@ -12319,7 +12382,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:1987*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:1993*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_ETH
@@ -12328,7 +12391,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, multi_flow_tunnel_cache.wr:1989*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:1995*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_ETH
@@ -12337,7 +12400,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, multi_flow_tunnel_cache.wr:1991*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:1997*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12346,7 +12409,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:1993*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:1999*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12355,7 +12418,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:1995*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2001*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12364,7 +12427,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:1997*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2003*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -12373,7 +12436,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:1999*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2005*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12382,7 +12445,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:2001*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2007*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12391,7 +12454,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:2003*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2009*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12400,7 +12463,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:2005*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2011*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -12409,7 +12472,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:2007*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2013*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_UDP
@@ -12418,7 +12481,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, multi_flow_tunnel_cache.wr:2009*/
+	/* field_cond: class_tid: 2, multi_flow_tunnel_cache.wr:2015*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_UDP
@@ -12427,7 +12490,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, control.terminating_flow:2011*/
+	/* field_cond: class_tid: 2, control.terminating_flow:2017*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -12436,7 +12499,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2013*/
+	/* field_cond: class_tid: 2, control.terminating_flow:2019*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -12445,7 +12508,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2015*/
+	/* field_cond: class_tid: 2, control.terminating_flow:2021*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -12454,7 +12517,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2017*/
+	/* field_cond: class_tid: 2, control.terminating_flow:2023*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -12463,17 +12526,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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.group_id_check:2019*/
+	/* cond_execute: class_tid: 2, control.group_id_check:2025*/
 	{
 	.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:2020*/
+	/* cond_execute: class_tid: 2, control.flow_chain_group_id:2026*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* field_cond: class_tid: 2, proto_header_cache.rd:2021*/
+	/* field_cond: class_tid: 2, proto_header_cache.rd:2027*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -12482,12 +12545,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2023*/
+	/* cond_execute: class_tid: 2, control.proto_header_cache_miss:2029*/
 	{
 	.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:2024*/
+	/* field_cond: class_tid: 2, hdr_overlap_cache.overlap_check:2030*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -12496,12 +12559,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2026*/
+	/* cond_execute: class_tid: 2, control.overlap_miss:2032*/
 	{
 	.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:2027*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2033*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12510,7 +12573,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2029*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2035*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -12519,12 +12582,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2031*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2037*/
 	{
 	.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:2032*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2038*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12541,7 +12604,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2036*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2042*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12558,7 +12621,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2040*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2046*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW
@@ -12571,7 +12634,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2043*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2049*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12592,7 +12655,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2048*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2054*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12613,7 +12676,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2053*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2059*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12634,7 +12697,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2058*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2064*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -12655,7 +12718,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2063*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2069*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12672,12 +12735,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2067*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2073*/
 	{
 	.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:2068*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2074*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12694,7 +12757,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2072*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2078*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12711,7 +12774,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2076*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2082*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12728,7 +12791,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2080*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2086*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12745,7 +12808,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2084*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2090*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12762,7 +12825,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2088*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2094*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12779,7 +12842,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2092*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2098*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12796,7 +12859,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2096*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2102*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12813,7 +12876,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2100*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2106*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12830,7 +12893,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2104*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2110*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12847,7 +12910,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2108*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2114*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12864,7 +12927,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2112*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2118*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12881,7 +12944,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2116*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2122*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -12898,7 +12961,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2120*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2126*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -12911,7 +12974,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2123*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2129*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -12924,7 +12987,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2126*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2132*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -12941,7 +13004,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2130*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2136*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -12954,7 +13017,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2133*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2139*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -12971,7 +13034,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2137*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2143*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -12984,7 +13047,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2140*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2146*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -13005,7 +13068,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2145*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2151*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13022,7 +13085,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2149*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2155*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -13043,7 +13106,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2154*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2160*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -13064,7 +13127,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2159*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2165*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13081,7 +13144,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2163*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2169*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13098,7 +13161,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2167*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2173*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13119,7 +13182,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2172*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2178*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13136,7 +13199,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2176*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2182*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13157,7 +13220,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2181*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2187*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13178,7 +13241,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2186*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2192*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13195,7 +13258,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2190*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2196*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13212,7 +13275,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2194*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2200*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13233,7 +13296,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2199*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2205*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13254,7 +13317,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2204*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2210*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13271,7 +13334,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2208*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2214*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13288,7 +13351,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2212*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2218*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13309,7 +13372,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2217*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2223*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13330,7 +13393,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2222*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2228*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13347,7 +13410,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2226*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2232*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13364,7 +13427,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2230*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2236*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13385,7 +13448,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2235*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2241*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13406,7 +13469,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2240*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2246*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13423,7 +13486,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2244*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2250*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13440,7 +13503,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2248*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2254*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13461,7 +13524,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2253*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2259*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13482,7 +13545,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2258*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2264*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13499,7 +13562,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2262*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2268*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -13516,7 +13579,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2266*/
+	/* 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_OUTER_LOOP
@@ -13525,7 +13588,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2268*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2274*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_I_IPV4
@@ -13538,12 +13601,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2271*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2277*/
 	{
 	.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:2272*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2278*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -13556,7 +13619,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2275*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2281*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -13565,7 +13628,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2277*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2283*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_I_IPV4
@@ -13578,12 +13641,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2280*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2286*/
 	{
 	.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:2281*/
+	/* field_cond: class_tid: 2, fkb_select.wc_gen_template:2287*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -13596,7 +13659,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2284*/
+	/* field_cond: class_tid: 2, hdr_overlap_cache.overlap_wr:2290*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -13605,12 +13668,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2286*/
+	/* cond_execute: class_tid: 2, fkb_select.em_gen_template_alloc:2292*/
 	{
 	.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:2287*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2293*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13619,7 +13682,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2289*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2295*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13628,7 +13691,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2291*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2297*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13637,7 +13700,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2293*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2299*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13646,7 +13709,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2295*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2301*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13655,7 +13718,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2297*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2303*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13664,7 +13727,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2299*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2305*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13673,7 +13736,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2301*/
+	/* field_cond: class_tid: 2, control.profile_tcam_priority:2307*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13682,7 +13745,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2303*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2309*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13691,7 +13754,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2305*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2311*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13700,7 +13763,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2307*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2313*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13709,7 +13772,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2309*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2315*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13718,7 +13781,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2311*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2317*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13727,7 +13790,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2313*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2319*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13736,7 +13799,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2315*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2321*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13745,7 +13808,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2317*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2323*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13754,7 +13817,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2319*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2325*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13763,7 +13826,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2321*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2327*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13772,7 +13835,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2323*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2329*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13781,7 +13844,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2325*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2331*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13790,7 +13853,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2327*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2333*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13799,7 +13862,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2329*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2335*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13808,7 +13871,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2331*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2337*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13817,7 +13880,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2333*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2339*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13826,7 +13889,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2335*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2341*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13835,7 +13898,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2337*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2343*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13844,7 +13907,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2339*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2345*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13853,7 +13916,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2341*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2347*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13862,7 +13925,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2343*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2349*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13871,7 +13934,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2345*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2351*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13880,7 +13943,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2347*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2353*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13889,7 +13952,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2349*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2355*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13898,7 +13961,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2351*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2357*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13907,7 +13970,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2353*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2359*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13916,7 +13979,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2355*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2361*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13925,7 +13988,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2357*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2363*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13934,7 +13997,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2359*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2365*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13943,7 +14006,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2361*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2367*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13952,7 +14015,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2363*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2369*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13961,7 +14024,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2365*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2371*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13970,7 +14033,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2367*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2373*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13979,7 +14042,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2369*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2375*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13988,7 +14051,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2371*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2377*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -13997,7 +14060,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2373*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2379*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14006,7 +14069,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2375*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2381*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14015,7 +14078,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2377*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2383*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14024,7 +14087,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2379*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2385*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14033,7 +14096,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2381*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2387*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14042,7 +14105,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2383*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2389*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14051,7 +14114,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2385*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2391*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14060,7 +14123,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2387*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2393*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14069,7 +14132,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2389*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2395*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14078,7 +14141,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2391*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2397*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14087,7 +14150,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2393*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2399*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14096,7 +14159,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2395*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2401*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14105,7 +14168,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2397*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2403*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14114,7 +14177,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2399*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2405*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14123,7 +14186,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2401*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2407*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14132,7 +14195,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2403*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2409*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14141,7 +14204,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2405*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2411*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14150,7 +14213,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2407*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2413*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14159,7 +14222,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2409*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2415*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14168,7 +14231,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2411*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2417*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14177,7 +14240,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2413*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2419*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14186,7 +14249,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2415*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2421*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14195,7 +14258,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2417*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2423*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14204,7 +14267,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2419*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2425*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14213,7 +14276,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2421*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2427*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14222,7 +14285,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2423*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2429*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14235,7 +14298,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2426*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2432*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14248,7 +14311,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2429*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2435*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14261,7 +14324,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2432*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2438*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14274,17 +14337,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2435*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2441*/
 	{
 	.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:2436*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2442*/
 	{
 	.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:2437*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2443*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14293,7 +14356,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2439*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2445*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14302,7 +14365,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2441*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2447*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14311,7 +14374,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2443*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2449*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14320,7 +14383,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2445*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2451*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14329,7 +14392,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2447*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2453*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14338,7 +14401,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2449*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2455*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14347,7 +14410,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2451*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2457*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14356,7 +14419,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2453*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2459*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14365,7 +14428,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2455*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2461*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14374,7 +14437,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2457*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2463*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14383,7 +14446,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2459*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2465*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14392,7 +14455,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2461*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2467*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14401,7 +14464,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2463*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2469*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14410,7 +14473,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2465*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2471*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14419,7 +14482,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2467*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2473*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14428,7 +14491,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2469*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2475*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14437,7 +14500,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2471*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2477*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14446,22 +14509,22 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2473*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2479*/
 	{
 	.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:2474*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2480*/
 	{
 	.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:2475*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2481*/
 	{
 	.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:2476*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2482*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14470,7 +14533,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2478*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2484*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14479,7 +14542,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2480*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2486*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14488,7 +14551,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2482*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2488*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14497,7 +14560,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2484*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2490*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14506,7 +14569,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2486*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2492*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14515,7 +14578,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2488*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2494*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14524,7 +14587,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2490*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2496*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14533,7 +14596,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2492*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2498*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14542,7 +14605,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2494*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2500*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14551,7 +14614,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2496*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2502*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14560,7 +14623,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2498*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2504*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14569,7 +14632,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2500*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2506*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14578,7 +14641,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2502*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2508*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14587,12 +14650,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2504*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2510*/
 	{
 	.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:2505*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2511*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14601,7 +14664,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2507*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2513*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14610,12 +14673,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2509*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2515*/
 	{
 	.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:2510*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2516*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14624,7 +14687,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2512*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2518*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14633,7 +14696,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2514*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2520*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14642,7 +14705,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2516*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2522*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14651,7 +14714,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2518*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2524*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14660,7 +14723,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2520*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2526*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14669,7 +14732,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2522*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2528*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14678,7 +14741,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2524*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2530*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14687,7 +14750,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2526*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2532*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14696,7 +14759,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2528*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2534*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14705,7 +14768,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2530*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2536*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14714,7 +14777,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2532*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2538*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14723,7 +14786,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2534*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2540*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14736,7 +14799,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2537*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2543*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14749,17 +14812,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2540*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2546*/
 	{
 	.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:2541*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2547*/
 	{
 	.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:2542*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2548*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -14768,7 +14831,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2544*/
+	/* field_cond: class_tid: 2, profile_tcam.gen_template:2550*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -14777,7 +14840,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2546*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2552*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14786,7 +14849,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2548*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2554*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14795,7 +14858,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2550*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2556*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -14804,7 +14867,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2552*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2558*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -14813,17 +14876,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:2554*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2560*/
 	{
 	.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:2555*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2561*/
 	{
 	.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:2556*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2562*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14840,7 +14903,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2560*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2566*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14857,7 +14920,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2564*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2570*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14874,7 +14937,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2568*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2574*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW
@@ -14887,7 +14950,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2571*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2577*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14904,7 +14967,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2575*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2581*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_FEATURE_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_FEATURE_BIT_MULTI_TUNNEL_FLOW
@@ -14917,7 +14980,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2578*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2584*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14938,7 +15001,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2583*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2589*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14959,7 +15022,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2588*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2594*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -14980,7 +15043,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2593*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2599*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15001,7 +15064,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2598*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2604*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15022,7 +15085,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2603*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2609*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15043,7 +15106,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2608*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2614*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -15064,7 +15127,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2613*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2619*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -15085,7 +15148,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2618*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2624*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15102,7 +15165,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2622*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2628*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15119,7 +15182,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2626*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2632*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15136,12 +15199,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2630*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2636*/
 	{
 	.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:2631*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2637*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15158,12 +15221,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2635*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2641*/
 	{
 	.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:2636*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2642*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15180,7 +15243,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2640*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2646*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15197,7 +15260,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2644*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2650*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15214,7 +15277,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2648*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2654*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15231,7 +15294,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2652*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2658*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15248,7 +15311,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2656*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2662*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15265,7 +15328,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2660*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2666*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15282,7 +15345,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2664*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2670*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15299,7 +15362,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2668*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2674*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15316,7 +15379,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2672*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2678*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15333,7 +15396,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2676*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2682*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15350,7 +15413,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2680*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2686*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15367,7 +15430,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2684*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2690*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15384,7 +15447,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2688*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2694*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15401,7 +15464,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2692*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2698*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15418,7 +15481,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2696*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2702*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15435,7 +15498,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2700*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2706*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15452,7 +15515,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2704*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2710*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15469,7 +15532,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2708*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2714*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15486,7 +15549,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2712*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2718*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15503,7 +15566,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2716*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2722*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15520,7 +15583,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2720*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2726*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15537,7 +15600,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2724*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2730*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15554,7 +15617,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2728*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2734*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -15571,7 +15634,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2732*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2738*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15584,7 +15647,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2735*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2741*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15597,7 +15660,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2738*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2744*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15610,7 +15673,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2741*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2747*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15623,7 +15686,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2744*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2750*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15640,7 +15703,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2748*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2754*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15653,7 +15716,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2751*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2757*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15670,7 +15733,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2755*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2761*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15683,7 +15746,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2758*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2764*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15700,7 +15763,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2762*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2768*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15713,7 +15776,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2765*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2771*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15730,7 +15793,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2769*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2775*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15743,7 +15806,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2772*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2778*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15764,7 +15827,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2777*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2783*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15781,7 +15844,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2781*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2787*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15802,7 +15865,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2786*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2792*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15819,7 +15882,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2790*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2796*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15840,7 +15903,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2795*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2801*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15861,7 +15924,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2800*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2806*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15878,7 +15941,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2804*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2810*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15895,7 +15958,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2808*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2814*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15916,7 +15979,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2813*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2819*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -15937,7 +16000,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2818*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2824*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15954,7 +16017,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2822*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2828*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -15971,7 +16034,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2826*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2832*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -15992,7 +16055,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2831*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2837*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -16009,7 +16072,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2835*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2841*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -16030,7 +16093,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2840*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2846*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -16047,7 +16110,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2844*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2850*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16064,7 +16127,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2848*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2854*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16077,7 +16140,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2851*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2857*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16094,7 +16157,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2855*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2861*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16107,7 +16170,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2858*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2864*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16124,7 +16187,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2862*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2868*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16137,7 +16200,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2865*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2871*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16154,7 +16217,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2869*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2875*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16167,7 +16230,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2872*/
+	/* 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_OUTER_LOOP
@@ -16184,7 +16247,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2876*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2882*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16197,7 +16260,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2879*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2885*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16214,7 +16277,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2883*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2889*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16227,7 +16290,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2886*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2892*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16244,7 +16307,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2890*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2896*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16257,7 +16320,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2893*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2899*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16274,7 +16337,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2897*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2903*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16287,7 +16350,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2900*/
+	/* 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_OUTER_LOOP
@@ -16304,7 +16367,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2904*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2910*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16321,7 +16384,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2908*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2914*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16334,7 +16397,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2911*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2917*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16347,7 +16410,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2914*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2920*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16364,7 +16427,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2918*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2924*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16381,7 +16444,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2922*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2928*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16394,7 +16457,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2925*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2931*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16407,7 +16470,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2928*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2934*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16420,7 +16483,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2931*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2937*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16433,7 +16496,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2934*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2940*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16442,7 +16505,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2936*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2942*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16451,7 +16514,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2938*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2944*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16468,7 +16531,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2942*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2948*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16485,7 +16548,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2946*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2952*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16498,7 +16561,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2949*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2955*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16511,7 +16574,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2952*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2958*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16524,7 +16587,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2955*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2961*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16537,7 +16600,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2958*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2964*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16546,7 +16609,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2960*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2966*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16555,7 +16618,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2962*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2968*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16572,7 +16635,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2966*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2972*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16589,7 +16652,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2970*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2976*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16602,7 +16665,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2973*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2979*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16615,7 +16678,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2976*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2982*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16632,7 +16695,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2980*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2986*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16649,7 +16712,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2984*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2990*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16662,7 +16725,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2987*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:2993*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16675,7 +16738,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2990*/
+	/* 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_OUTER_LOOP
@@ -16692,7 +16755,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2994*/
+	/* 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_OUTER_LOOP
@@ -16709,7 +16772,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:2998*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3004*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16722,7 +16785,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3001*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3007*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16735,7 +16798,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3004*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3010*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16752,7 +16815,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3008*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3014*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16769,7 +16832,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3012*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3018*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16782,7 +16845,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3015*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3021*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16795,7 +16858,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3018*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3024*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16804,7 +16867,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3020*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3026*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16821,7 +16884,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3024*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3030*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16838,7 +16901,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3028*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3034*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16851,7 +16914,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3031*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3037*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16864,7 +16927,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3034*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3040*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16873,7 +16936,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3036*/
+	/* 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
@@ -16890,7 +16953,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3040*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3046*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16907,7 +16970,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3044*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3050*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16920,7 +16983,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3047*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3053*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16933,7 +16996,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3050*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3056*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16942,7 +17005,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3052*/
+	/* 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
@@ -16959,7 +17022,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3056*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3062*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -16976,7 +17039,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3060*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3066*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -16989,7 +17052,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3063*/
+	/* field_cond: class_tid: 2, wm_key_recipe.0:3069*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17002,7 +17065,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3066*/
+	/* 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
@@ -17011,7 +17074,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
 	},
-	/* field_cond: class_tid: 2, proto_header_cache.wr:3068*/
+	/* field_cond: class_tid: 2, proto_header_cache.wr:3074*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -17020,7 +17083,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3070*/
+	/* cond_execute: class_tid: 2, em_flow_conflict_cache.rd:3076*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
@@ -17030,10 +17093,10 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_operand = BNXT_ULP_RF_IDX_TERM_FLOW
 	},
 	{
-	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+	.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:3073*/
+	/* field_cond: class_tid: 2, em_flow_conflict_cache.rd:3079*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -17042,12 +17105,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3075*/
+	/* cond_execute: class_tid: 2, control.em_flow_conflict_cache_miss:3081*/
 	{
 	.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:3076*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3082*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17056,7 +17119,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3078*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3084*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -17065,12 +17128,12 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3080*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3086*/
 	{
 	.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:3081*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3087*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17087,7 +17150,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, fkb_select.em_gen_template:3085*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3091*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17104,7 +17167,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3089*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3095*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17125,7 +17188,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3094*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3100*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17146,7 +17209,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3099*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3105*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17167,7 +17230,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3104*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3110*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -17188,7 +17251,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3109*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3115*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17205,7 +17268,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3113*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3119*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17222,7 +17285,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3117*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3123*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17239,7 +17302,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3121*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3127*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17256,7 +17319,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3125*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3131*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17273,7 +17336,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3129*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3135*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17290,7 +17353,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3133*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3139*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17307,7 +17370,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3137*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3143*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17324,7 +17387,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3141*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3147*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17341,7 +17404,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3145*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3151*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17358,7 +17421,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3149*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3155*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17375,7 +17438,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3153*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3159*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17392,7 +17455,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3157*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3163*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17409,7 +17472,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3161*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3167*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -17426,7 +17489,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3165*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3171*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17439,7 +17502,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3168*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3174*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17452,7 +17515,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3171*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3177*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17469,7 +17532,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC
 	},
-	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3175*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3181*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17482,7 +17545,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, fkb_select.em_gen_template:3178*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3184*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17499,7 +17562,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3182*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3188*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17512,7 +17575,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3185*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3191*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17533,7 +17596,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3190*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3196*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17550,7 +17613,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3194*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3200*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17571,7 +17634,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3199*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3205*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17592,7 +17655,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3204*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3210*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17609,7 +17672,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3208*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3214*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17626,7 +17689,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3212*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3218*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -17647,7 +17710,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3217*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3223*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -17664,7 +17727,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3221*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3227*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17681,7 +17744,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3225*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3231*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17698,7 +17761,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3229*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3235*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17711,7 +17774,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3232*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3238*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17724,7 +17787,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3235*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3241*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17741,7 +17804,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3239*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3245*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17758,7 +17821,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3243*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3249*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17771,7 +17834,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3246*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3252*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17784,7 +17847,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3249*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3255*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17801,7 +17864,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3253*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3259*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17818,7 +17881,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3257*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3263*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17831,7 +17894,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3260*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3266*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17844,7 +17907,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3263*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3269*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17861,7 +17924,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3267*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3273*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17878,7 +17941,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3271*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3277*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17891,7 +17954,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3274*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3280*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17904,7 +17967,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3277*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3283*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17921,7 +17984,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3281*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3287*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17938,7 +18001,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3285*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3291*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17951,7 +18014,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3288*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3294*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -17964,7 +18027,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3291*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3297*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17981,7 +18044,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3295*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3301*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -17998,7 +18061,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3299*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3305*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18011,7 +18074,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3302*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3308*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18024,7 +18087,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3305*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3311*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18041,7 +18104,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3309*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3315*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18058,7 +18121,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3313*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3319*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18071,7 +18134,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3316*/
+	/* field_cond: class_tid: 2, fkb_select.em_gen_template:3322*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18084,7 +18147,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3319*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3325*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18093,7 +18156,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3321*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3327*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18102,7 +18165,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3323*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3329*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -18111,7 +18174,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3325*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3331*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -18120,17 +18183,17 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3327*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3333*/
 	{
 	.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:3328*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3334*/
 	{
 	.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:3329*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3335*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18147,7 +18210,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, em_key_recipe.0:3333*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3339*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18164,7 +18227,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, em_key_recipe.0:3337*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3343*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18181,7 +18244,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3341*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3347*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18198,7 +18261,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3345*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3351*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18219,7 +18282,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3350*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3356*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18240,7 +18303,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3355*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3361*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18261,7 +18324,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3360*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3366*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18282,7 +18345,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3365*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3371*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18303,7 +18366,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3370*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3376*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18324,7 +18387,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3375*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3381*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -18345,7 +18408,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3380*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3386*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -18366,7 +18429,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3385*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3391*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18383,7 +18446,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3389*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3395*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18400,7 +18463,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3393*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3399*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18417,7 +18480,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3397*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3403*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18434,7 +18497,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3401*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3407*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18451,7 +18514,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3405*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3411*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18468,7 +18531,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3409*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3415*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18485,7 +18548,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3413*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3419*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18502,7 +18565,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3417*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3423*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18519,7 +18582,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3421*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3427*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18536,7 +18599,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3425*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3431*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18553,7 +18616,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3429*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3435*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18570,7 +18633,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3433*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3439*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18587,7 +18650,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3437*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3443*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18604,7 +18667,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3441*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3447*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18621,7 +18684,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3445*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3451*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18638,7 +18701,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3449*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3455*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18655,7 +18718,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3453*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3459*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18672,7 +18735,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3457*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3463*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18689,7 +18752,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3461*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3467*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18706,7 +18769,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3465*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3471*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18723,7 +18786,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3469*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3475*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18740,7 +18803,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3473*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3479*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18757,7 +18820,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3477*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3483*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18774,7 +18837,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3481*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3487*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18791,7 +18854,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3485*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3491*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18808,7 +18871,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3489*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3495*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18825,7 +18888,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3493*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3499*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_INNER_LOOP
@@ -18842,7 +18905,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3497*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3503*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18855,7 +18918,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3500*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3506*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18868,7 +18931,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3503*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3509*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18881,7 +18944,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3506*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3512*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18894,7 +18957,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3509*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3515*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18911,7 +18974,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC
 	},
-	/* field_cond: class_tid: 2, em_key_recipe.0:3513*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3519*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18924,7 +18987,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, em_key_recipe.0:3516*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3522*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18941,7 +19004,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_GLB_HF_ID_I_ETH_DMAC
 	},
-	/* field_cond: class_tid: 2, em_key_recipe.0:3520*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3526*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18954,7 +19017,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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: 2, em_key_recipe.0:3523*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3529*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -18971,7 +19034,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3527*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3533*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -18984,7 +19047,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3530*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3536*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19001,7 +19064,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3534*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3540*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19014,7 +19077,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3537*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3543*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19035,7 +19098,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3542*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3548*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19052,7 +19115,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3546*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3552*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19073,7 +19136,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3551*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3557*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19090,7 +19153,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3555*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3561*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19111,7 +19174,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3560*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3566*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19132,7 +19195,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3565*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3571*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19149,7 +19212,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3569*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3575*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19166,7 +19229,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3573*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3579*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19187,7 +19250,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3578*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3584*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19208,7 +19271,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3583*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3589*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19225,7 +19288,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3587*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3593*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19242,7 +19305,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3591*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3597*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -19263,7 +19326,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3596*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3602*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -19280,7 +19343,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3600*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3606*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -19301,7 +19364,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3605*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3611*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_L2_ONLY
@@ -19318,7 +19381,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3609*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3615*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19335,7 +19398,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3613*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3619*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19348,7 +19411,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3616*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3622*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19365,7 +19428,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3620*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3626*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19378,7 +19441,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3623*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3629*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19395,7 +19458,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3627*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3633*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19408,7 +19471,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3630*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3636*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19425,7 +19488,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3634*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3640*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19438,7 +19501,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3637*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3643*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19455,7 +19518,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3641*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3647*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19468,7 +19531,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3644*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3650*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19485,7 +19548,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3648*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3654*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19498,7 +19561,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3651*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3657*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19515,7 +19578,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3655*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3661*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19528,7 +19591,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3658*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3664*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19545,7 +19608,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3662*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3668*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19558,7 +19621,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3665*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3671*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19575,7 +19638,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3669*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3675*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19592,7 +19655,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3673*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3679*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19605,7 +19668,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3676*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3682*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19618,7 +19681,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3679*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3685*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19635,7 +19698,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3683*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3689*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19652,7 +19715,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3687*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3693*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19665,7 +19728,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3690*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3696*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19678,7 +19741,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3693*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3699*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19695,7 +19758,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3697*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3703*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19712,7 +19775,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3701*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3707*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19725,7 +19788,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3704*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3710*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19738,7 +19801,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3707*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3713*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19755,7 +19818,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3711*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3717*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19772,7 +19835,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3715*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3721*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19785,7 +19848,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3718*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3724*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19798,7 +19861,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3721*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3727*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19815,7 +19878,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3725*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3731*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19832,7 +19895,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3729*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3735*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19845,7 +19908,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3732*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3738*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19858,7 +19921,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3735*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3741*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19875,7 +19938,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3739*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3745*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19892,7 +19955,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3743*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3749*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19905,7 +19968,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3746*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3752*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19918,7 +19981,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3749*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3755*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19935,7 +19998,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3753*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3759*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19952,7 +20015,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3757*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3763*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19965,7 +20028,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3760*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3766*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -19978,7 +20041,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3763*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3769*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -19995,7 +20058,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3767*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3773*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -20012,7 +20075,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3771*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3777*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -20025,7 +20088,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3774*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3780*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -20038,7 +20101,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3777*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3783*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -20055,7 +20118,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3781*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3787*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -20072,7 +20135,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3785*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3791*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -20085,7 +20148,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3788*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3794*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -20098,7 +20161,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3791*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3797*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -20115,7 +20178,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3795*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3801*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -20132,7 +20195,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3799*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3805*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -20145,7 +20208,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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:3802*/
+	/* field_cond: class_tid: 2, em_key_recipe.0:3808*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_IS_TUNNEL
@@ -20158,7 +20221,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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_flow_conflict_cache.wr:3805*/
+	/* field_cond: class_tid: 2, em_flow_conflict_cache.wr:3811*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_GROUP_ID
@@ -20167,7 +20230,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.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:3807*/
+	/* cond_execute: class_tid: 2, control.field_sig_validation:3813*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_CC
@@ -20176,7 +20239,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_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, control.outer_loop_add_check:3809*/
+	/* cond_execute: class_tid: 2, control.outer_loop_add_check:3815*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
@@ -20185,7 +20248,7 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_ADD
 	},
-	/* cond_execute: class_tid: 2, em.egress_generic_template:3811*/
+	/* cond_execute: class_tid: 2, em.egress_generic_template:3817*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
@@ -20202,27 +20265,27 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_NOT_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
 	},
-	/* cond_execute: class_tid: 2, control.em_add_check:3815*/
+	/* cond_execute: class_tid: 2, control.em_add_check:3821*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_EM_INSERT_FAIL
 	},
-	/* cond_execute: class_tid: 2, control.outer_loop_check:3816*/
+	/* cond_execute: class_tid: 2, control.outer_loop_check:3822*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_OUTER_LOOP
 	},
-	/* cond_execute: class_tid: 3, control.ing_0:3817*/
+	/* cond_execute: class_tid: 3, control.ing_0:3823*/
 	{
 	.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_2:3818*/
+	/* cond_execute: class_tid: 3, control.non_vfr_egr_2:3824*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: class_tid: 3, tunnel_gparse_cache.def_cust_tun_rd:3819*/
+	/* cond_execute: class_tid: 3, tunnel_gparse_cache.def_cust_tun_rd:3825*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_STATIC_VXLAN_PORT
@@ -20231,37 +20294,37 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_STATIC_VXLAN_IP_PORT
 	},
-	/* cond_execute: class_tid: 3, control.default_custom_tunnel:3821*/
+	/* cond_execute: class_tid: 3, control.default_custom_tunnel:3827*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: class_tid: 3, cust_tunnel.def_conf_vxlan_port:3822*/
+	/* cond_execute: class_tid: 3, cust_tunnel.def_conf_vxlan_port:3828*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_STATIC_VXLAN_PORT
 	},
-	/* cond_execute: class_tid: 3, cust_tunnel.def_conf_vxlan_ip_port:3823*/
+	/* cond_execute: class_tid: 3, cust_tunnel.def_conf_vxlan_ip_port:3829*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_CF_BIT_STATIC_VXLAN_IP_PORT
 	},
-	/* cond_execute: class_tid: 4, control.prof_tcam_cache.vfr_glb_act_rec_rd.0:3824*/
+	/* cond_execute: class_tid: 4, control.prof_tcam_cache.vfr_glb_act_rec_rd.0:3830*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: class_tid: 4, control.vf_2_vfr.0:3825*/
+	/* cond_execute: class_tid: 4, control.vf_2_vfr.0:3831*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: class_tid: 4, control.prof_tcam_cache.vfr.0:3826*/
+	/* cond_execute: class_tid: 4, control.prof_tcam_cache.vfr.0:3832*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: class_tid: 4, control.0:3827*/
+	/* cond_execute: class_tid: 4, control.0:3833*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
@@ -26072,8 +26135,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1958 >> 8) & 0xff,
-			1958 & 0xff,
+			(1960 >> 8) & 0xff,
+			1960 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26088,8 +26151,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1960 >> 8) & 0xff,
-			1960 & 0xff,
+			(1962 >> 8) & 0xff,
+			1962 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26103,24 +26166,34 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 	.field_info_mask = {
 		.description = "tunnel_dmac",
 		.field_bit_size = 48,
-		.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,
-			0xff,
-			0xff}
+			(1964 >> 8) & 0xff,
+			1964 & 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_SRC1,
-		.field_src1 = BNXT_ULP_FIELD_SRC_RF,
+		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
+		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-		(BNXT_ULP_RF_IDX_O_DMAC >> 8) & 0xff,
-		BNXT_ULP_RF_IDX_O_DMAC & 0xff}
+			(1966 >> 8) & 0xff,
+			1966 & 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
 		}
 	},
 	{
@@ -26130,8 +26203,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1962 >> 8) & 0xff,
-			1962 & 0xff,
+			(1968 >> 8) & 0xff,
+			1968 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26146,8 +26219,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1964 >> 8) & 0xff,
-			1964 & 0xff,
+			(1970 >> 8) & 0xff,
+			1970 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26164,8 +26237,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1966 >> 8) & 0xff,
-			1966 & 0xff,
+			(1972 >> 8) & 0xff,
+			1972 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26180,8 +26253,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1968 >> 8) & 0xff,
-			1968 & 0xff,
+			(1974 >> 8) & 0xff,
+			1974 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26198,8 +26271,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1970 >> 8) & 0xff,
-			1970 & 0xff,
+			(1976 >> 8) & 0xff,
+			1976 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26214,8 +26287,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1972 >> 8) & 0xff,
-			1972 & 0xff,
+			(1978 >> 8) & 0xff,
+			1978 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26232,8 +26305,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1974 >> 8) & 0xff,
-			1974 & 0xff,
+			(1980 >> 8) & 0xff,
+			1980 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26248,8 +26321,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1976 >> 8) & 0xff,
-			1976 & 0xff,
+			(1982 >> 8) & 0xff,
+			1982 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26266,8 +26339,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1978 >> 8) & 0xff,
-			1978 & 0xff,
+			(1984 >> 8) & 0xff,
+			1984 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26282,8 +26355,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1980 >> 8) & 0xff,
-			1980 & 0xff,
+			(1986 >> 8) & 0xff,
+			1986 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26350,8 +26423,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1983 >> 8) & 0xff,
-			1983 & 0xff,
+			(1989 >> 8) & 0xff,
+			1989 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26366,8 +26439,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1985 >> 8) & 0xff,
-			1985 & 0xff,
+			(1991 >> 8) & 0xff,
+			1991 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26384,8 +26457,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1987 >> 8) & 0xff,
-			1987 & 0xff,
+			(1993 >> 8) & 0xff,
+			1993 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26400,8 +26473,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1989 >> 8) & 0xff,
-			1989 & 0xff,
+			(1995 >> 8) & 0xff,
+			1995 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26418,8 +26491,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1991 >> 8) & 0xff,
-			1991 & 0xff,
+			(1997 >> 8) & 0xff,
+			1997 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26434,8 +26507,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1993 >> 8) & 0xff,
-			1993 & 0xff,
+			(1999 >> 8) & 0xff,
+			1999 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26452,8 +26525,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1995 >> 8) & 0xff,
-			1995 & 0xff,
+			(2001 >> 8) & 0xff,
+			2001 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26468,8 +26541,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1997 >> 8) & 0xff,
-			1997 & 0xff,
+			(2003 >> 8) & 0xff,
+			2003 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26486,8 +26559,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(1999 >> 8) & 0xff,
-			1999 & 0xff,
+			(2005 >> 8) & 0xff,
+			2005 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26502,8 +26575,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2001 >> 8) & 0xff,
-			2001 & 0xff,
+			(2007 >> 8) & 0xff,
+			2007 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26520,8 +26593,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2003 >> 8) & 0xff,
-			2003 & 0xff,
+			(2009 >> 8) & 0xff,
+			2009 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26536,8 +26609,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2005 >> 8) & 0xff,
-			2005 & 0xff,
+			(2011 >> 8) & 0xff,
+			2011 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26554,8 +26627,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2007 >> 8) & 0xff,
-			2007 & 0xff,
+			(2013 >> 8) & 0xff,
+			2013 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26570,8 +26643,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2009 >> 8) & 0xff,
-			2009 & 0xff,
+			(2015 >> 8) & 0xff,
+			2015 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -26643,8 +26716,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(2021 >> 8) & 0xff,
-			2021 & 0xff,
+			(2027 >> 8) & 0xff,
+			2027 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -26714,8 +26787,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(2024 >> 8) & 0xff,
-			2024 & 0xff,
+			(2030 >> 8) & 0xff,
+			2030 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -26786,8 +26859,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(2284 >> 8) & 0xff,
-			2284 & 0xff,
+			(2290 >> 8) & 0xff,
+			2290 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -26850,8 +26923,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2303 >> 8) & 0xff,
-			2303 & 0xff,
+			(2309 >> 8) & 0xff,
+			2309 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -26866,8 +26939,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2311 >> 8) & 0xff,
-			2311 & 0xff,
+			(2317 >> 8) & 0xff,
+			2317 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -26886,8 +26959,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2319 >> 8) & 0xff,
-			2319 & 0xff,
+			(2325 >> 8) & 0xff,
+			2325 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -26902,8 +26975,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2327 >> 8) & 0xff,
-			2327 & 0xff,
+			(2333 >> 8) & 0xff,
+			2333 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -26920,8 +26993,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2335 >> 8) & 0xff,
-			2335 & 0xff,
+			(2341 >> 8) & 0xff,
+			2341 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -26936,8 +27009,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2343 >> 8) & 0xff,
-			2343 & 0xff,
+			(2349 >> 8) & 0xff,
+			2349 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -26954,8 +27027,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2351 >> 8) & 0xff,
-			2351 & 0xff,
+			(2357 >> 8) & 0xff,
+			2357 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -26970,8 +27043,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2359 >> 8) & 0xff,
-			2359 & 0xff,
+			(2365 >> 8) & 0xff,
+			2365 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27040,8 +27113,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2367 >> 8) & 0xff,
-			2367 & 0xff,
+			(2373 >> 8) & 0xff,
+			2373 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27060,8 +27133,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2375 >> 8) & 0xff,
-			2375 & 0xff,
+			(2381 >> 8) & 0xff,
+			2381 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27076,8 +27149,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2383 >> 8) & 0xff,
-			2383 & 0xff,
+			(2389 >> 8) & 0xff,
+			2389 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27096,8 +27169,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2391 >> 8) & 0xff,
-			2391 & 0xff,
+			(2397 >> 8) & 0xff,
+			2397 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27112,8 +27185,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2399 >> 8) & 0xff,
-			2399 & 0xff,
+			(2405 >> 8) & 0xff,
+			2405 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27130,8 +27203,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2407 >> 8) & 0xff,
-			2407 & 0xff,
+			(2413 >> 8) & 0xff,
+			2413 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27146,8 +27219,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2415 >> 8) & 0xff,
-			2415 & 0xff,
+			(2421 >> 8) & 0xff,
+			2421 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27174,8 +27247,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2423 >> 8) & 0xff,
-			2423 & 0xff,
+			(2429 >> 8) & 0xff,
+			2429 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27202,8 +27275,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2429 >> 8) & 0xff,
-			2429 & 0xff,
+			(2435 >> 8) & 0xff,
+			2435 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27238,8 +27311,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2435 >> 8) & 0xff,
-			2435 & 0xff,
+			(2441 >> 8) & 0xff,
+			2441 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27251,8 +27324,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2436 >> 8) & 0xff,
-			2436 & 0xff,
+			(2442 >> 8) & 0xff,
+			2442 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27266,8 +27339,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2437 >> 8) & 0xff,
-			2437 & 0xff,
+			(2443 >> 8) & 0xff,
+			2443 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27282,8 +27355,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2441 >> 8) & 0xff,
-			2441 & 0xff,
+			(2447 >> 8) & 0xff,
+			2447 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27308,8 +27381,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2445 >> 8) & 0xff,
-			2445 & 0xff,
+			(2451 >> 8) & 0xff,
+			2451 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27342,8 +27415,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2449 >> 8) & 0xff,
-			2449 & 0xff,
+			(2455 >> 8) & 0xff,
+			2455 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27358,8 +27431,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2461 >> 8) & 0xff,
-			2461 & 0xff,
+			(2467 >> 8) & 0xff,
+			2467 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27376,8 +27449,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2473 >> 8) & 0xff,
-			2473 & 0xff,
+			(2479 >> 8) & 0xff,
+			2479 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27389,8 +27462,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2474 >> 8) & 0xff,
-			2474 & 0xff,
+			(2480 >> 8) & 0xff,
+			2480 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27412,8 +27485,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2475 >> 8) & 0xff,
-			2475 & 0xff,
+			(2481 >> 8) & 0xff,
+			2481 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27429,8 +27502,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2476 >> 8) & 0xff,
-			2476 & 0xff,
+			(2482 >> 8) & 0xff,
+			2482 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27445,8 +27518,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2480 >> 8) & 0xff,
-			2480 & 0xff,
+			(2486 >> 8) & 0xff,
+			2486 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27465,8 +27538,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2484 >> 8) & 0xff,
-			2484 & 0xff,
+			(2490 >> 8) & 0xff,
+			2490 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27481,8 +27554,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2488 >> 8) & 0xff,
-			2488 & 0xff,
+			(2494 >> 8) & 0xff,
+			2494 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27499,8 +27572,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2492 >> 8) & 0xff,
-			2492 & 0xff,
+			(2498 >> 8) & 0xff,
+			2498 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27515,8 +27588,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2496 >> 8) & 0xff,
-			2496 & 0xff,
+			(2502 >> 8) & 0xff,
+			2502 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27533,8 +27606,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2500 >> 8) & 0xff,
-			2500 & 0xff,
+			(2506 >> 8) & 0xff,
+			2506 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27549,8 +27622,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2505 >> 8) & 0xff,
-			2505 & 0xff,
+			(2511 >> 8) & 0xff,
+			2511 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27605,8 +27678,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2510 >> 8) & 0xff,
-			2510 & 0xff,
+			(2516 >> 8) & 0xff,
+			2516 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27625,8 +27698,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2514 >> 8) & 0xff,
-			2514 & 0xff,
+			(2520 >> 8) & 0xff,
+			2520 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27641,8 +27714,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2518 >> 8) & 0xff,
-			2518 & 0xff,
+			(2524 >> 8) & 0xff,
+			2524 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27661,8 +27734,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2522 >> 8) & 0xff,
-			2522 & 0xff,
+			(2528 >> 8) & 0xff,
+			2528 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27677,8 +27750,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2526 >> 8) & 0xff,
-			2526 & 0xff,
+			(2532 >> 8) & 0xff,
+			2532 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27703,8 +27776,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2530 >> 8) & 0xff,
-			2530 & 0xff,
+			(2536 >> 8) & 0xff,
+			2536 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27731,8 +27804,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2534 >> 8) & 0xff,
-			2534 & 0xff,
+			(2540 >> 8) & 0xff,
+			2540 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27756,8 +27829,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2537 >> 8) & 0xff,
-			2537 & 0xff,
+			(2543 >> 8) & 0xff,
+			2543 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27787,8 +27860,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2540 >> 8) & 0xff,
-			2540 & 0xff,
+			(2546 >> 8) & 0xff,
+			2546 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27800,8 +27873,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2541 >> 8) & 0xff,
-			2541 & 0xff,
+			(2547 >> 8) & 0xff,
+			2547 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -27823,8 +27896,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2542 >> 8) & 0xff,
-			2542 & 0xff,
+			(2548 >> 8) & 0xff,
+			2548 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -27896,8 +27969,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(2544 >> 8) & 0xff,
-			2544 & 0xff,
+			(2550 >> 8) & 0xff,
+			2550 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -27982,8 +28055,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2546 >> 8) & 0xff,
-			2546 & 0xff,
+			(2552 >> 8) & 0xff,
+			2552 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -27995,8 +28068,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2548 >> 8) & 0xff,
-			2548 & 0xff,
+			(2554 >> 8) & 0xff,
+			2554 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -28013,8 +28086,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(2550 >> 8) & 0xff,
-			2550 & 0xff,
+			(2556 >> 8) & 0xff,
+			2556 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -28026,8 +28099,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(2552 >> 8) & 0xff,
-			2552 & 0xff,
+			(2558 >> 8) & 0xff,
+			2558 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -28044,8 +28117,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2554 >> 8) & 0xff,
-			2554 & 0xff,
+			(2560 >> 8) & 0xff,
+			2560 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -28057,8 +28130,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2555 >> 8) & 0xff,
-			2555 & 0xff,
+			(2561 >> 8) & 0xff,
+			2561 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -28075,8 +28148,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2556 >> 8) & 0xff,
-			2556 & 0xff,
+			(2562 >> 8) & 0xff,
+			2562 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28091,8 +28164,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2560 >> 8) & 0xff,
-			2560 & 0xff,
+			(2566 >> 8) & 0xff,
+			2566 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28109,8 +28182,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2564 >> 8) & 0xff,
-			2564 & 0xff,
+			(2570 >> 8) & 0xff,
+			2570 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -28125,8 +28198,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2571 >> 8) & 0xff,
-			2571 & 0xff,
+			(2577 >> 8) & 0xff,
+			2577 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -28143,8 +28216,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2578 >> 8) & 0xff,
-			2578 & 0xff,
+			(2584 >> 8) & 0xff,
+			2584 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28159,8 +28232,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2583 >> 8) & 0xff,
-			2583 & 0xff,
+			(2589 >> 8) & 0xff,
+			2589 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28177,8 +28250,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2588 >> 8) & 0xff,
-			2588 & 0xff,
+			(2594 >> 8) & 0xff,
+			2594 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28196,8 +28269,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2598 >> 8) & 0xff,
-			2598 & 0xff,
+			(2604 >> 8) & 0xff,
+			2604 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28217,8 +28290,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2608 >> 8) & 0xff,
-			2608 & 0xff,
+			(2614 >> 8) & 0xff,
+			2614 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28233,8 +28306,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2613 >> 8) & 0xff,
-			2613 & 0xff,
+			(2619 >> 8) & 0xff,
+			2619 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28251,8 +28324,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2618 >> 8) & 0xff,
-			2618 & 0xff,
+			(2624 >> 8) & 0xff,
+			2624 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28267,8 +28340,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2622 >> 8) & 0xff,
-			2622 & 0xff,
+			(2628 >> 8) & 0xff,
+			2628 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28285,8 +28358,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2626 >> 8) & 0xff,
-			2626 & 0xff,
+			(2632 >> 8) & 0xff,
+			2632 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -28301,8 +28374,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2631 >> 8) & 0xff,
-			2631 & 0xff,
+			(2637 >> 8) & 0xff,
+			2637 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -28319,8 +28392,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2636 >> 8) & 0xff,
-			2636 & 0xff,
+			(2642 >> 8) & 0xff,
+			2642 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28335,8 +28408,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2640 >> 8) & 0xff,
-			2640 & 0xff,
+			(2646 >> 8) & 0xff,
+			2646 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28353,8 +28426,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2644 >> 8) & 0xff,
-			2644 & 0xff,
+			(2650 >> 8) & 0xff,
+			2650 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28369,8 +28442,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2648 >> 8) & 0xff,
-			2648 & 0xff,
+			(2654 >> 8) & 0xff,
+			2654 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28387,8 +28460,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2652 >> 8) & 0xff,
-			2652 & 0xff,
+			(2658 >> 8) & 0xff,
+			2658 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28406,8 +28479,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2660 >> 8) & 0xff,
-			2660 & 0xff,
+			(2666 >> 8) & 0xff,
+			2666 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28427,8 +28500,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2668 >> 8) & 0xff,
-			2668 & 0xff,
+			(2674 >> 8) & 0xff,
+			2674 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28446,8 +28519,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2676 >> 8) & 0xff,
-			2676 & 0xff,
+			(2682 >> 8) & 0xff,
+			2682 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28467,8 +28540,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2684 >> 8) & 0xff,
-			2684 & 0xff,
+			(2690 >> 8) & 0xff,
+			2690 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28486,8 +28559,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2692 >> 8) & 0xff,
-			2692 & 0xff,
+			(2698 >> 8) & 0xff,
+			2698 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28507,8 +28580,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2700 >> 8) & 0xff,
-			2700 & 0xff,
+			(2706 >> 8) & 0xff,
+			2706 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28526,8 +28599,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2708 >> 8) & 0xff,
-			2708 & 0xff,
+			(2714 >> 8) & 0xff,
+			2714 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28547,8 +28620,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2716 >> 8) & 0xff,
-			2716 & 0xff,
+			(2722 >> 8) & 0xff,
+			2722 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28566,8 +28639,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2724 >> 8) & 0xff,
-			2724 & 0xff,
+			(2730 >> 8) & 0xff,
+			2730 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28587,8 +28660,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2732 >> 8) & 0xff,
-			2732 & 0xff,
+			(2738 >> 8) & 0xff,
+			2738 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28606,8 +28679,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2738 >> 8) & 0xff,
-			2738 & 0xff,
+			(2744 >> 8) & 0xff,
+			2744 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28627,8 +28700,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2744 >> 8) & 0xff,
-			2744 & 0xff,
+			(2750 >> 8) & 0xff,
+			2750 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28646,8 +28719,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2751 >> 8) & 0xff,
-			2751 & 0xff,
+			(2757 >> 8) & 0xff,
+			2757 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28667,8 +28740,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2758 >> 8) & 0xff,
-			2758 & 0xff,
+			(2764 >> 8) & 0xff,
+			2764 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28686,8 +28759,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2765 >> 8) & 0xff,
-			2765 & 0xff,
+			(2771 >> 8) & 0xff,
+			2771 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28707,8 +28780,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2772 >> 8) & 0xff,
-			2772 & 0xff,
+			(2778 >> 8) & 0xff,
+			2778 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28726,8 +28799,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2781 >> 8) & 0xff,
-			2781 & 0xff,
+			(2787 >> 8) & 0xff,
+			2787 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28747,8 +28820,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2790 >> 8) & 0xff,
-			2790 & 0xff,
+			(2796 >> 8) & 0xff,
+			2796 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28766,8 +28839,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2808 >> 8) & 0xff,
-			2808 & 0xff,
+			(2814 >> 8) & 0xff,
+			2814 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28787,8 +28860,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2826 >> 8) & 0xff,
-			2826 & 0xff,
+			(2832 >> 8) & 0xff,
+			2832 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28806,8 +28879,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2835 >> 8) & 0xff,
-			2835 & 0xff,
+			(2841 >> 8) & 0xff,
+			2841 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28827,8 +28900,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2844 >> 8) & 0xff,
-			2844 & 0xff,
+			(2850 >> 8) & 0xff,
+			2850 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28846,8 +28919,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2851 >> 8) & 0xff,
-			2851 & 0xff,
+			(2857 >> 8) & 0xff,
+			2857 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28867,8 +28940,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2858 >> 8) & 0xff,
-			2858 & 0xff,
+			(2864 >> 8) & 0xff,
+			2864 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28886,8 +28959,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2865 >> 8) & 0xff,
-			2865 & 0xff,
+			(2871 >> 8) & 0xff,
+			2871 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28907,8 +28980,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2872 >> 8) & 0xff,
-			2872 & 0xff,
+			(2878 >> 8) & 0xff,
+			2878 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28926,8 +28999,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2879 >> 8) & 0xff,
-			2879 & 0xff,
+			(2885 >> 8) & 0xff,
+			2885 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28947,8 +29020,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2886 >> 8) & 0xff,
-			2886 & 0xff,
+			(2892 >> 8) & 0xff,
+			2892 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28966,8 +29039,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2893 >> 8) & 0xff,
-			2893 & 0xff,
+			(2899 >> 8) & 0xff,
+			2899 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -28987,8 +29060,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2900 >> 8) & 0xff,
-			2900 & 0xff,
+			(2906 >> 8) & 0xff,
+			2906 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29006,8 +29079,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2914 >> 8) & 0xff,
-			2914 & 0xff,
+			(2920 >> 8) & 0xff,
+			2920 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29027,8 +29100,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2928 >> 8) & 0xff,
-			2928 & 0xff,
+			(2934 >> 8) & 0xff,
+			2934 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29043,8 +29116,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2952 >> 8) & 0xff,
-			2952 & 0xff,
+			(2958 >> 8) & 0xff,
+			2958 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -29063,8 +29136,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2976 >> 8) & 0xff,
-			2976 & 0xff,
+			(2982 >> 8) & 0xff,
+			2982 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29082,8 +29155,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2990 >> 8) & 0xff,
-			2990 & 0xff,
+			(2996 >> 8) & 0xff,
+			2996 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29103,8 +29176,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3004 >> 8) & 0xff,
-			3004 & 0xff,
+			(3010 >> 8) & 0xff,
+			3010 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29122,8 +29195,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3020 >> 8) & 0xff,
-			3020 & 0xff,
+			(3026 >> 8) & 0xff,
+			3026 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29143,8 +29216,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3036 >> 8) & 0xff,
-			3036 & 0xff,
+			(3042 >> 8) & 0xff,
+			3042 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29162,8 +29235,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3052 >> 8) & 0xff,
-			3052 & 0xff,
+			(3058 >> 8) & 0xff,
+			3058 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29192,8 +29265,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3068 >> 8) & 0xff,
-			3068 & 0xff,
+			(3074 >> 8) & 0xff,
+			3074 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -29277,8 +29350,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3073 >> 8) & 0xff,
-			3073 & 0xff,
+			(3079 >> 8) & 0xff,
+			3079 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -29359,8 +29432,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3319 >> 8) & 0xff,
-			3319 & 0xff,
+			(3325 >> 8) & 0xff,
+			3325 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29372,8 +29445,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3321 >> 8) & 0xff,
-			3321 & 0xff,
+			(3327 >> 8) & 0xff,
+			3327 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -29390,8 +29463,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3323 >> 8) & 0xff,
-			3323 & 0xff,
+			(3329 >> 8) & 0xff,
+			3329 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29403,8 +29476,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3325 >> 8) & 0xff,
-			3325 & 0xff,
+			(3331 >> 8) & 0xff,
+			3331 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -29421,8 +29494,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3327 >> 8) & 0xff,
-			3327 & 0xff,
+			(3333 >> 8) & 0xff,
+			3333 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29434,8 +29507,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3328 >> 8) & 0xff,
-			3328 & 0xff,
+			(3334 >> 8) & 0xff,
+			3334 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_RF,
@@ -29452,8 +29525,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3329 >> 8) & 0xff,
-			3329 & 0xff,
+			(3335 >> 8) & 0xff,
+			3335 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29465,8 +29538,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3333 >> 8) & 0xff,
-			3333 & 0xff,
+			(3339 >> 8) & 0xff,
+			3339 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29483,8 +29556,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3337 >> 8) & 0xff,
-			3337 & 0xff,
+			(3343 >> 8) & 0xff,
+			3343 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29496,8 +29569,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3341 >> 8) & 0xff,
-			3341 & 0xff,
+			(3347 >> 8) & 0xff,
+			3347 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29514,8 +29587,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3345 >> 8) & 0xff,
-			3345 & 0xff,
+			(3351 >> 8) & 0xff,
+			3351 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29527,8 +29600,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3350 >> 8) & 0xff,
-			3350 & 0xff,
+			(3356 >> 8) & 0xff,
+			3356 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29545,8 +29618,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3355 >> 8) & 0xff,
-			3355 & 0xff,
+			(3361 >> 8) & 0xff,
+			3361 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29561,8 +29634,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3365 >> 8) & 0xff,
-			3365 & 0xff,
+			(3371 >> 8) & 0xff,
+			3371 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29582,8 +29655,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3375 >> 8) & 0xff,
-			3375 & 0xff,
+			(3381 >> 8) & 0xff,
+			3381 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29595,8 +29668,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3380 >> 8) & 0xff,
-			3380 & 0xff,
+			(3386 >> 8) & 0xff,
+			3386 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29613,8 +29686,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3385 >> 8) & 0xff,
-			3385 & 0xff,
+			(3391 >> 8) & 0xff,
+			3391 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29626,8 +29699,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3389 >> 8) & 0xff,
-			3389 & 0xff,
+			(3395 >> 8) & 0xff,
+			3395 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29644,8 +29717,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3393 >> 8) & 0xff,
-			3393 & 0xff,
+			(3399 >> 8) & 0xff,
+			3399 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29657,8 +29730,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3397 >> 8) & 0xff,
-			3397 & 0xff,
+			(3403 >> 8) & 0xff,
+			3403 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29675,8 +29748,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3401 >> 8) & 0xff,
-			3401 & 0xff,
+			(3407 >> 8) & 0xff,
+			3407 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29688,8 +29761,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3405 >> 8) & 0xff,
-			3405 & 0xff,
+			(3411 >> 8) & 0xff,
+			3411 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29706,8 +29779,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3409 >> 8) & 0xff,
-			3409 & 0xff,
+			(3415 >> 8) & 0xff,
+			3415 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29719,8 +29792,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3413 >> 8) & 0xff,
-			3413 & 0xff,
+			(3419 >> 8) & 0xff,
+			3419 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29737,8 +29810,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3417 >> 8) & 0xff,
-			3417 & 0xff,
+			(3423 >> 8) & 0xff,
+			3423 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29753,8 +29826,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3425 >> 8) & 0xff,
-			3425 & 0xff,
+			(3431 >> 8) & 0xff,
+			3431 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29774,8 +29847,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3433 >> 8) & 0xff,
-			3433 & 0xff,
+			(3439 >> 8) & 0xff,
+			3439 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29790,8 +29863,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3441 >> 8) & 0xff,
-			3441 & 0xff,
+			(3447 >> 8) & 0xff,
+			3447 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29811,8 +29884,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3449 >> 8) & 0xff,
-			3449 & 0xff,
+			(3455 >> 8) & 0xff,
+			3455 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29827,8 +29900,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3457 >> 8) & 0xff,
-			3457 & 0xff,
+			(3463 >> 8) & 0xff,
+			3463 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29848,8 +29921,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3465 >> 8) & 0xff,
-			3465 & 0xff,
+			(3471 >> 8) & 0xff,
+			3471 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29864,8 +29937,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3473 >> 8) & 0xff,
-			3473 & 0xff,
+			(3479 >> 8) & 0xff,
+			3479 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29885,8 +29958,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3481 >> 8) & 0xff,
-			3481 & 0xff,
+			(3487 >> 8) & 0xff,
+			3487 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29901,8 +29974,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3489 >> 8) & 0xff,
-			3489 & 0xff,
+			(3495 >> 8) & 0xff,
+			3495 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29922,8 +29995,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3497 >> 8) & 0xff,
-			3497 & 0xff,
+			(3503 >> 8) & 0xff,
+			3503 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29938,8 +30011,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3503 >> 8) & 0xff,
-			3503 & 0xff,
+			(3509 >> 8) & 0xff,
+			3509 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29959,8 +30032,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3509 >> 8) & 0xff,
-			3509 & 0xff,
+			(3515 >> 8) & 0xff,
+			3515 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -29975,8 +30048,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3516 >> 8) & 0xff,
-			3516 & 0xff,
+			(3522 >> 8) & 0xff,
+			3522 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -29996,8 +30069,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3523 >> 8) & 0xff,
-			3523 & 0xff,
+			(3529 >> 8) & 0xff,
+			3529 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30012,8 +30085,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3530 >> 8) & 0xff,
-			3530 & 0xff,
+			(3536 >> 8) & 0xff,
+			3536 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30033,8 +30106,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3537 >> 8) & 0xff,
-			3537 & 0xff,
+			(3543 >> 8) & 0xff,
+			3543 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30049,8 +30122,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3546 >> 8) & 0xff,
-			3546 & 0xff,
+			(3552 >> 8) & 0xff,
+			3552 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30070,8 +30143,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3555 >> 8) & 0xff,
-			3555 & 0xff,
+			(3561 >> 8) & 0xff,
+			3561 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30086,8 +30159,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3573 >> 8) & 0xff,
-			3573 & 0xff,
+			(3579 >> 8) & 0xff,
+			3579 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30107,8 +30180,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3591 >> 8) & 0xff,
-			3591 & 0xff,
+			(3597 >> 8) & 0xff,
+			3597 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30123,8 +30196,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3600 >> 8) & 0xff,
-			3600 & 0xff,
+			(3606 >> 8) & 0xff,
+			3606 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30144,8 +30217,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3609 >> 8) & 0xff,
-			3609 & 0xff,
+			(3615 >> 8) & 0xff,
+			3615 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30160,8 +30233,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3616 >> 8) & 0xff,
-			3616 & 0xff,
+			(3622 >> 8) & 0xff,
+			3622 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30181,8 +30254,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3623 >> 8) & 0xff,
-			3623 & 0xff,
+			(3629 >> 8) & 0xff,
+			3629 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30197,8 +30270,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3630 >> 8) & 0xff,
-			3630 & 0xff,
+			(3636 >> 8) & 0xff,
+			3636 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30218,8 +30291,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3637 >> 8) & 0xff,
-			3637 & 0xff,
+			(3643 >> 8) & 0xff,
+			3643 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30234,8 +30307,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3644 >> 8) & 0xff,
-			3644 & 0xff,
+			(3650 >> 8) & 0xff,
+			3650 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30255,8 +30328,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3651 >> 8) & 0xff,
-			3651 & 0xff,
+			(3657 >> 8) & 0xff,
+			3657 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30271,8 +30344,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3658 >> 8) & 0xff,
-			3658 & 0xff,
+			(3664 >> 8) & 0xff,
+			3664 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30292,8 +30365,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3665 >> 8) & 0xff,
-			3665 & 0xff,
+			(3671 >> 8) & 0xff,
+			3671 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30308,8 +30381,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3679 >> 8) & 0xff,
-			3679 & 0xff,
+			(3685 >> 8) & 0xff,
+			3685 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30329,8 +30402,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3693 >> 8) & 0xff,
-			3693 & 0xff,
+			(3699 >> 8) & 0xff,
+			3699 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30345,8 +30418,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3707 >> 8) & 0xff,
-			3707 & 0xff,
+			(3713 >> 8) & 0xff,
+			3713 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30366,8 +30439,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3721 >> 8) & 0xff,
-			3721 & 0xff,
+			(3727 >> 8) & 0xff,
+			3727 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30382,8 +30455,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3735 >> 8) & 0xff,
-			3735 & 0xff,
+			(3741 >> 8) & 0xff,
+			3741 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30403,8 +30476,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3749 >> 8) & 0xff,
-			3749 & 0xff,
+			(3755 >> 8) & 0xff,
+			3755 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30419,8 +30492,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3763 >> 8) & 0xff,
-			3763 & 0xff,
+			(3769 >> 8) & 0xff,
+			3769 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30440,8 +30513,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3777 >> 8) & 0xff,
-			3777 & 0xff,
+			(3783 >> 8) & 0xff,
+			3783 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -30456,8 +30529,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3791 >> 8) & 0xff,
-			3791 & 0xff,
+			(3797 >> 8) & 0xff,
+			3797 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -30500,8 +30573,8 @@ struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3805 >> 8) & 0xff,
-			3805 & 0xff,
+			(3811 >> 8) & 0xff,
+			3811 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -35819,10 +35892,12 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		34 & 0xff,
 		(1 >> 8) & 0xff,
 		1 & 0xff},
-	.field_src2 = BNXT_ULP_FIELD_SRC_RF,
+	.field_src2 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
 	.field_opr2 = {
-	(BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC >> 8) & 0xff,
-	BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC & 0xff},
+		(BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
+		BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
+		(BNXT_ULP_PORT_TABLE_DRV_FUNC_PARENT_MAC >> 8) & 0xff,
+		BNXT_ULP_PORT_TABLE_DRV_FUNC_PARENT_MAC & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_ZERO
 		},
 	/* class_tid: 1, , table: control.terminating_flow */
@@ -40837,8 +40912,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2011 >> 8) & 0xff,
-		2011 & 0xff,
+		(2017 >> 8) & 0xff,
+		2017 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40855,8 +40930,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2013 >> 8) & 0xff,
-		2013 & 0xff,
+		(2019 >> 8) & 0xff,
+		2019 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40873,8 +40948,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2015 >> 8) & 0xff,
-		2015 & 0xff,
+		(2021 >> 8) & 0xff,
+		2021 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40891,8 +40966,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2017 >> 8) & 0xff,
-		2017 & 0xff,
+		(2023 >> 8) & 0xff,
+		2023 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40906,8 +40981,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2040 >> 8) & 0xff,
-		2040 & 0xff,
+		(2046 >> 8) & 0xff,
+		2046 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -40921,8 +40996,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2053 >> 8) & 0xff,
-		2053 & 0xff,
+		(2059 >> 8) & 0xff,
+		2059 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40936,8 +41011,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2067 >> 8) & 0xff,
-		2067 & 0xff,
+		(2073 >> 8) & 0xff,
+		2073 & 0xff,
 		(1 >> 8) & 0xff,
 		1 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40951,8 +41026,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2068 >> 8) & 0xff,
-		2068 & 0xff,
+		(2074 >> 8) & 0xff,
+		2074 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40966,8 +41041,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2076 >> 8) & 0xff,
-		2076 & 0xff,
+		(2082 >> 8) & 0xff,
+		2082 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40981,8 +41056,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2084 >> 8) & 0xff,
-		2084 & 0xff,
+		(2090 >> 8) & 0xff,
+		2090 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -40996,8 +41071,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2092 >> 8) & 0xff,
-		2092 & 0xff,
+		(2098 >> 8) & 0xff,
+		2098 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41011,8 +41086,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2100 >> 8) & 0xff,
-		2100 & 0xff,
+		(2106 >> 8) & 0xff,
+		2106 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41026,8 +41101,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2108 >> 8) & 0xff,
-		2108 & 0xff,
+		(2114 >> 8) & 0xff,
+		2114 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41041,8 +41116,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2116 >> 8) & 0xff,
-		2116 & 0xff,
+		(2122 >> 8) & 0xff,
+		2122 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41056,8 +41131,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2123 >> 8) & 0xff,
-		2123 & 0xff,
+		(2129 >> 8) & 0xff,
+		2129 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41071,8 +41146,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2130 >> 8) & 0xff,
-		2130 & 0xff,
+		(2136 >> 8) & 0xff,
+		2136 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41086,8 +41161,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2137 >> 8) & 0xff,
-		2137 & 0xff,
+		(2143 >> 8) & 0xff,
+		2143 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41101,8 +41176,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2145 >> 8) & 0xff,
-		2145 & 0xff,
+		(2151 >> 8) & 0xff,
+		2151 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41116,8 +41191,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2154 >> 8) & 0xff,
-		2154 & 0xff,
+		(2160 >> 8) & 0xff,
+		2160 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41134,8 +41209,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2159 >> 8) & 0xff,
-		2159 & 0xff,
+		(2165 >> 8) & 0xff,
+		2165 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41152,8 +41227,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2163 >> 8) & 0xff,
-		2163 & 0xff,
+		(2169 >> 8) & 0xff,
+		2169 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41167,8 +41242,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2172 >> 8) & 0xff,
-		2172 & 0xff,
+		(2178 >> 8) & 0xff,
+		2178 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41182,8 +41257,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2181 >> 8) & 0xff,
-		2181 & 0xff,
+		(2187 >> 8) & 0xff,
+		2187 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41200,8 +41275,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2186 >> 8) & 0xff,
-		2186 & 0xff,
+		(2192 >> 8) & 0xff,
+		2192 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41218,8 +41293,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2190 >> 8) & 0xff,
-		2190 & 0xff,
+		(2196 >> 8) & 0xff,
+		2196 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41233,8 +41308,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2199 >> 8) & 0xff,
-		2199 & 0xff,
+		(2205 >> 8) & 0xff,
+		2205 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41251,8 +41326,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2204 >> 8) & 0xff,
-		2204 & 0xff,
+		(2210 >> 8) & 0xff,
+		2210 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41269,8 +41344,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2208 >> 8) & 0xff,
-		2208 & 0xff,
+		(2214 >> 8) & 0xff,
+		2214 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41284,8 +41359,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2217 >> 8) & 0xff,
-		2217 & 0xff,
+		(2223 >> 8) & 0xff,
+		2223 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41302,8 +41377,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2222 >> 8) & 0xff,
-		2222 & 0xff,
+		(2228 >> 8) & 0xff,
+		2228 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41320,8 +41395,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2226 >> 8) & 0xff,
-		2226 & 0xff,
+		(2232 >> 8) & 0xff,
+		2232 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41335,8 +41410,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2235 >> 8) & 0xff,
-		2235 & 0xff,
+		(2241 >> 8) & 0xff,
+		2241 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41353,8 +41428,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2240 >> 8) & 0xff,
-		2240 & 0xff,
+		(2246 >> 8) & 0xff,
+		2246 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41371,8 +41446,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2244 >> 8) & 0xff,
-		2244 & 0xff,
+		(2250 >> 8) & 0xff,
+		2250 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41386,8 +41461,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2253 >> 8) & 0xff,
-		2253 & 0xff,
+		(2259 >> 8) & 0xff,
+		2259 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41404,8 +41479,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2258 >> 8) & 0xff,
-		2258 & 0xff,
+		(2264 >> 8) & 0xff,
+		2264 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41422,8 +41497,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2262 >> 8) & 0xff,
-		2262 & 0xff,
+		(2268 >> 8) & 0xff,
+		2268 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41437,8 +41512,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(2268 >> 8) & 0xff,
-		2268 & 0xff,
+		(2274 >> 8) & 0xff,
+		2274 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41452,8 +41527,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2271 >> 8) & 0xff,
-		2271 & 0xff,
+		(2277 >> 8) & 0xff,
+		2277 & 0xff,
 		(1 >> 8) & 0xff,
 		1 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -41468,8 +41543,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(2272 >> 8) & 0xff,
-		2272 & 0xff,
+		(2278 >> 8) & 0xff,
+		2278 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41483,8 +41558,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(2277 >> 8) & 0xff,
-		2277 & 0xff,
+		(2283 >> 8) & 0xff,
+		2283 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41498,8 +41573,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2280 >> 8) & 0xff,
-		2280 & 0xff,
+		(2286 >> 8) & 0xff,
+		2286 & 0xff,
 		(1 >> 8) & 0xff,
 		1 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -41514,8 +41589,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(2281 >> 8) & 0xff,
-		2281 & 0xff,
+		(2287 >> 8) & 0xff,
+		2287 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41530,8 +41605,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2287 >> 8) & 0xff,
-		2287 & 0xff,
+		(2293 >> 8) & 0xff,
+		2293 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41546,8 +41621,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2289 >> 8) & 0xff,
-		2289 & 0xff,
+		(2295 >> 8) & 0xff,
+		2295 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41562,8 +41637,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2291 >> 8) & 0xff,
-		2291 & 0xff,
+		(2297 >> 8) & 0xff,
+		2297 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41578,8 +41653,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2293 >> 8) & 0xff,
-		2293 & 0xff,
+		(2299 >> 8) & 0xff,
+		2299 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41594,8 +41669,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2295 >> 8) & 0xff,
-		2295 & 0xff,
+		(2301 >> 8) & 0xff,
+		2301 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41612,8 +41687,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2297 >> 8) & 0xff,
-		2297 & 0xff,
+		(2303 >> 8) & 0xff,
+		2303 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41630,8 +41705,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2299 >> 8) & 0xff,
-		2299 & 0xff,
+		(2305 >> 8) & 0xff,
+		2305 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41648,8 +41723,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2301 >> 8) & 0xff,
-		2301 & 0xff,
+		(2307 >> 8) & 0xff,
+		2307 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41665,8 +41740,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2305 >> 8) & 0xff,
-			2305 & 0xff,
+			(2311 >> 8) & 0xff,
+			2311 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41681,8 +41756,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2307 >> 8) & 0xff,
-			2307 & 0xff,
+			(2313 >> 8) & 0xff,
+			2313 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41697,8 +41772,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2309 >> 8) & 0xff,
-			2309 & 0xff,
+			(2315 >> 8) & 0xff,
+			2315 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41710,8 +41785,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2313 >> 8) & 0xff,
-			2313 & 0xff,
+			(2319 >> 8) & 0xff,
+			2319 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41728,8 +41803,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2315 >> 8) & 0xff,
-			2315 & 0xff,
+			(2321 >> 8) & 0xff,
+			2321 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41746,8 +41821,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2317 >> 8) & 0xff,
-			2317 & 0xff,
+			(2323 >> 8) & 0xff,
+			2323 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41761,8 +41836,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2321 >> 8) & 0xff,
-			2321 & 0xff,
+			(2327 >> 8) & 0xff,
+			2327 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41777,8 +41852,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2323 >> 8) & 0xff,
-			2323 & 0xff,
+			(2329 >> 8) & 0xff,
+			2329 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41793,8 +41868,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2325 >> 8) & 0xff,
-			2325 & 0xff,
+			(2331 >> 8) & 0xff,
+			2331 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41806,8 +41881,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2329 >> 8) & 0xff,
-			2329 & 0xff,
+			(2335 >> 8) & 0xff,
+			2335 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41822,8 +41897,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2331 >> 8) & 0xff,
-			2331 & 0xff,
+			(2337 >> 8) & 0xff,
+			2337 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41840,8 +41915,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2333 >> 8) & 0xff,
-			2333 & 0xff,
+			(2339 >> 8) & 0xff,
+			2339 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -41855,8 +41930,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2337 >> 8) & 0xff,
-			2337 & 0xff,
+			(2343 >> 8) & 0xff,
+			2343 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41871,8 +41946,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2339 >> 8) & 0xff,
-			2339 & 0xff,
+			(2345 >> 8) & 0xff,
+			2345 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41887,8 +41962,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2341 >> 8) & 0xff,
-			2341 & 0xff,
+			(2347 >> 8) & 0xff,
+			2347 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41900,8 +41975,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2345 >> 8) & 0xff,
-			2345 & 0xff,
+			(2351 >> 8) & 0xff,
+			2351 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41916,8 +41991,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2347 >> 8) & 0xff,
-			2347 & 0xff,
+			(2353 >> 8) & 0xff,
+			2353 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41932,8 +42007,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2349 >> 8) & 0xff,
-			2349 & 0xff,
+			(2355 >> 8) & 0xff,
+			2355 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -41945,8 +42020,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2353 >> 8) & 0xff,
-			2353 & 0xff,
+			(2359 >> 8) & 0xff,
+			2359 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41961,8 +42036,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2355 >> 8) & 0xff,
-			2355 & 0xff,
+			(2361 >> 8) & 0xff,
+			2361 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41977,8 +42052,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2357 >> 8) & 0xff,
-			2357 & 0xff,
+			(2363 >> 8) & 0xff,
+			2363 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -41990,8 +42065,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2361 >> 8) & 0xff,
-			2361 & 0xff,
+			(2367 >> 8) & 0xff,
+			2367 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42008,8 +42083,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2363 >> 8) & 0xff,
-			2363 & 0xff,
+			(2369 >> 8) & 0xff,
+			2369 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42026,8 +42101,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2365 >> 8) & 0xff,
-			2365 & 0xff,
+			(2371 >> 8) & 0xff,
+			2371 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42041,8 +42116,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2369 >> 8) & 0xff,
-			2369 & 0xff,
+			(2375 >> 8) & 0xff,
+			2375 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42059,8 +42134,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2371 >> 8) & 0xff,
-			2371 & 0xff,
+			(2377 >> 8) & 0xff,
+			2377 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42077,8 +42152,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2373 >> 8) & 0xff,
-			2373 & 0xff,
+			(2379 >> 8) & 0xff,
+			2379 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42092,8 +42167,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2377 >> 8) & 0xff,
-			2377 & 0xff,
+			(2383 >> 8) & 0xff,
+			2383 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42108,8 +42183,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2379 >> 8) & 0xff,
-			2379 & 0xff,
+			(2385 >> 8) & 0xff,
+			2385 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42124,8 +42199,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2381 >> 8) & 0xff,
-			2381 & 0xff,
+			(2387 >> 8) & 0xff,
+			2387 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42137,8 +42212,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2385 >> 8) & 0xff,
-			2385 & 0xff,
+			(2391 >> 8) & 0xff,
+			2391 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42155,8 +42230,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2387 >> 8) & 0xff,
-			2387 & 0xff,
+			(2393 >> 8) & 0xff,
+			2393 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42171,8 +42246,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2389 >> 8) & 0xff,
-			2389 & 0xff,
+			(2395 >> 8) & 0xff,
+			2395 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42184,8 +42259,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2393 >> 8) & 0xff,
-			2393 & 0xff,
+			(2399 >> 8) & 0xff,
+			2399 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42200,8 +42275,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2395 >> 8) & 0xff,
-			2395 & 0xff,
+			(2401 >> 8) & 0xff,
+			2401 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42216,8 +42291,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2397 >> 8) & 0xff,
-			2397 & 0xff,
+			(2403 >> 8) & 0xff,
+			2403 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42229,8 +42304,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2401 >> 8) & 0xff,
-			2401 & 0xff,
+			(2407 >> 8) & 0xff,
+			2407 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42245,8 +42320,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2403 >> 8) & 0xff,
-			2403 & 0xff,
+			(2409 >> 8) & 0xff,
+			2409 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42261,8 +42336,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2405 >> 8) & 0xff,
-			2405 & 0xff,
+			(2411 >> 8) & 0xff,
+			2411 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42274,8 +42349,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2409 >> 8) & 0xff,
-			2409 & 0xff,
+			(2415 >> 8) & 0xff,
+			2415 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42290,8 +42365,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2411 >> 8) & 0xff,
-			2411 & 0xff,
+			(2417 >> 8) & 0xff,
+			2417 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42306,8 +42381,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2413 >> 8) & 0xff,
-			2413 & 0xff,
+			(2419 >> 8) & 0xff,
+			2419 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42319,8 +42394,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2417 >> 8) & 0xff,
-			2417 & 0xff,
+			(2423 >> 8) & 0xff,
+			2423 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42337,8 +42412,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2419 >> 8) & 0xff,
-			2419 & 0xff,
+			(2425 >> 8) & 0xff,
+			2425 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42355,8 +42430,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2421 >> 8) & 0xff,
-			2421 & 0xff,
+			(2427 >> 8) & 0xff,
+			2427 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42370,8 +42445,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2426 >> 8) & 0xff,
-			2426 & 0xff,
+			(2432 >> 8) & 0xff,
+			2432 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42385,8 +42460,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2432 >> 8) & 0xff,
-			2432 & 0xff,
+			(2438 >> 8) & 0xff,
+			2438 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42400,8 +42475,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2439 >> 8) & 0xff,
-			2439 & 0xff,
+			(2445 >> 8) & 0xff,
+			2445 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42413,8 +42488,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2443 >> 8) & 0xff,
-			2443 & 0xff,
+			(2449 >> 8) & 0xff,
+			2449 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42426,8 +42501,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2447 >> 8) & 0xff,
-			2447 & 0xff,
+			(2453 >> 8) & 0xff,
+			2453 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42441,8 +42516,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2451 >> 8) & 0xff,
-			2451 & 0xff,
+			(2457 >> 8) & 0xff,
+			2457 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42457,8 +42532,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2453 >> 8) & 0xff,
-			2453 & 0xff,
+			(2459 >> 8) & 0xff,
+			2459 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42473,8 +42548,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2455 >> 8) & 0xff,
-			2455 & 0xff,
+			(2461 >> 8) & 0xff,
+			2461 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42489,8 +42564,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2457 >> 8) & 0xff,
-			2457 & 0xff,
+			(2463 >> 8) & 0xff,
+			2463 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42505,8 +42580,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2459 >> 8) & 0xff,
-			2459 & 0xff,
+			(2465 >> 8) & 0xff,
+			2465 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42518,8 +42593,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2463 >> 8) & 0xff,
-			2463 & 0xff,
+			(2469 >> 8) & 0xff,
+			2469 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42534,8 +42609,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2465 >> 8) & 0xff,
-			2465 & 0xff,
+			(2471 >> 8) & 0xff,
+			2471 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42552,8 +42627,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2467 >> 8) & 0xff,
-			2467 & 0xff,
+			(2473 >> 8) & 0xff,
+			2473 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42570,8 +42645,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2469 >> 8) & 0xff,
-			2469 & 0xff,
+			(2475 >> 8) & 0xff,
+			2475 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42588,8 +42663,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2471 >> 8) & 0xff,
-			2471 & 0xff,
+			(2477 >> 8) & 0xff,
+			2477 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42603,8 +42678,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2478 >> 8) & 0xff,
-			2478 & 0xff,
+			(2484 >> 8) & 0xff,
+			2484 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42616,8 +42691,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2482 >> 8) & 0xff,
-			2482 & 0xff,
+			(2488 >> 8) & 0xff,
+			2488 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42631,8 +42706,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2486 >> 8) & 0xff,
-			2486 & 0xff,
+			(2492 >> 8) & 0xff,
+			2492 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42644,8 +42719,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2490 >> 8) & 0xff,
-			2490 & 0xff,
+			(2496 >> 8) & 0xff,
+			2496 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42659,8 +42734,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2494 >> 8) & 0xff,
-			2494 & 0xff,
+			(2500 >> 8) & 0xff,
+			2500 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42672,8 +42747,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2498 >> 8) & 0xff,
-			2498 & 0xff,
+			(2504 >> 8) & 0xff,
+			2504 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42685,8 +42760,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2502 >> 8) & 0xff,
-			2502 & 0xff,
+			(2508 >> 8) & 0xff,
+			2508 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42701,8 +42776,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2504 >> 8) & 0xff,
-			2504 & 0xff,
+			(2510 >> 8) & 0xff,
+			2510 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42714,8 +42789,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2507 >> 8) & 0xff,
-			2507 & 0xff,
+			(2513 >> 8) & 0xff,
+			2513 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42732,8 +42807,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2509 >> 8) & 0xff,
-			2509 & 0xff,
+			(2515 >> 8) & 0xff,
+			2515 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42745,8 +42820,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2512 >> 8) & 0xff,
-			2512 & 0xff,
+			(2518 >> 8) & 0xff,
+			2518 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42760,8 +42835,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2516 >> 8) & 0xff,
-			2516 & 0xff,
+			(2522 >> 8) & 0xff,
+			2522 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42773,8 +42848,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2520 >> 8) & 0xff,
-			2520 & 0xff,
+			(2526 >> 8) & 0xff,
+			2526 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42786,8 +42861,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2524 >> 8) & 0xff,
-			2524 & 0xff,
+			(2530 >> 8) & 0xff,
+			2530 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -42799,8 +42874,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2528 >> 8) & 0xff,
-			2528 & 0xff,
+			(2534 >> 8) & 0xff,
+			2534 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
@@ -42812,8 +42887,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2532 >> 8) & 0xff,
-			2532 & 0xff,
+			(2538 >> 8) & 0xff,
+			2538 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -42827,8 +42902,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2568 >> 8) & 0xff,
-			2568 & 0xff,
+			(2574 >> 8) & 0xff,
+			2574 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_SKIP,
@@ -42843,8 +42918,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2575 >> 8) & 0xff,
-			2575 & 0xff,
+			(2581 >> 8) & 0xff,
+			2581 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_SKIP,
@@ -42859,8 +42934,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2593 >> 8) & 0xff,
-			2593 & 0xff,
+			(2599 >> 8) & 0xff,
+			2599 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42875,8 +42950,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2603 >> 8) & 0xff,
-			2603 & 0xff,
+			(2609 >> 8) & 0xff,
+			2609 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42891,8 +42966,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2630 >> 8) & 0xff,
-			2630 & 0xff,
+			(2636 >> 8) & 0xff,
+			2636 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42907,8 +42982,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2635 >> 8) & 0xff,
-			2635 & 0xff,
+			(2641 >> 8) & 0xff,
+			2641 & 0xff,
 			(1 >> 8) & 0xff,
 			1 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42923,8 +42998,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2656 >> 8) & 0xff,
-			2656 & 0xff,
+			(2662 >> 8) & 0xff,
+			2662 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42939,8 +43014,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2664 >> 8) & 0xff,
-			2664 & 0xff,
+			(2670 >> 8) & 0xff,
+			2670 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42955,8 +43030,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2672 >> 8) & 0xff,
-			2672 & 0xff,
+			(2678 >> 8) & 0xff,
+			2678 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42971,8 +43046,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2680 >> 8) & 0xff,
-			2680 & 0xff,
+			(2686 >> 8) & 0xff,
+			2686 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -42987,8 +43062,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2688 >> 8) & 0xff,
-			2688 & 0xff,
+			(2694 >> 8) & 0xff,
+			2694 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43003,8 +43078,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2696 >> 8) & 0xff,
-			2696 & 0xff,
+			(2702 >> 8) & 0xff,
+			2702 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43019,8 +43094,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2704 >> 8) & 0xff,
-			2704 & 0xff,
+			(2710 >> 8) & 0xff,
+			2710 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43035,8 +43110,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2712 >> 8) & 0xff,
-			2712 & 0xff,
+			(2718 >> 8) & 0xff,
+			2718 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43051,8 +43126,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2720 >> 8) & 0xff,
-			2720 & 0xff,
+			(2726 >> 8) & 0xff,
+			2726 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43067,8 +43142,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2728 >> 8) & 0xff,
-			2728 & 0xff,
+			(2734 >> 8) & 0xff,
+			2734 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43083,8 +43158,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2735 >> 8) & 0xff,
-			2735 & 0xff,
+			(2741 >> 8) & 0xff,
+			2741 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43099,8 +43174,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2741 >> 8) & 0xff,
-			2741 & 0xff,
+			(2747 >> 8) & 0xff,
+			2747 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43115,8 +43190,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2748 >> 8) & 0xff,
-			2748 & 0xff,
+			(2754 >> 8) & 0xff,
+			2754 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43131,8 +43206,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2755 >> 8) & 0xff,
-			2755 & 0xff,
+			(2761 >> 8) & 0xff,
+			2761 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43147,8 +43222,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2762 >> 8) & 0xff,
-			2762 & 0xff,
+			(2768 >> 8) & 0xff,
+			2768 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43163,8 +43238,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2769 >> 8) & 0xff,
-			2769 & 0xff,
+			(2775 >> 8) & 0xff,
+			2775 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43179,8 +43254,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2777 >> 8) & 0xff,
-			2777 & 0xff,
+			(2783 >> 8) & 0xff,
+			2783 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43195,8 +43270,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2786 >> 8) & 0xff,
-			2786 & 0xff,
+			(2792 >> 8) & 0xff,
+			2792 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43211,8 +43286,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2795 >> 8) & 0xff,
-			2795 & 0xff,
+			(2801 >> 8) & 0xff,
+			2801 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43230,8 +43305,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2800 >> 8) & 0xff,
-			2800 & 0xff,
+			(2806 >> 8) & 0xff,
+			2806 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43249,8 +43324,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2804 >> 8) & 0xff,
-			2804 & 0xff,
+			(2810 >> 8) & 0xff,
+			2810 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43265,8 +43340,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2813 >> 8) & 0xff,
-			2813 & 0xff,
+			(2819 >> 8) & 0xff,
+			2819 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43284,8 +43359,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2818 >> 8) & 0xff,
-			2818 & 0xff,
+			(2824 >> 8) & 0xff,
+			2824 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43303,8 +43378,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2822 >> 8) & 0xff,
-			2822 & 0xff,
+			(2828 >> 8) & 0xff,
+			2828 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43319,8 +43394,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2831 >> 8) & 0xff,
-			2831 & 0xff,
+			(2837 >> 8) & 0xff,
+			2837 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43335,8 +43410,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2840 >> 8) & 0xff,
-			2840 & 0xff,
+			(2846 >> 8) & 0xff,
+			2846 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43351,8 +43426,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2848 >> 8) & 0xff,
-			2848 & 0xff,
+			(2854 >> 8) & 0xff,
+			2854 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43367,8 +43442,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2855 >> 8) & 0xff,
-			2855 & 0xff,
+			(2861 >> 8) & 0xff,
+			2861 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43383,8 +43458,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2862 >> 8) & 0xff,
-			2862 & 0xff,
+			(2868 >> 8) & 0xff,
+			2868 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43399,8 +43474,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2869 >> 8) & 0xff,
-			2869 & 0xff,
+			(2875 >> 8) & 0xff,
+			2875 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43415,8 +43490,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2876 >> 8) & 0xff,
-			2876 & 0xff,
+			(2882 >> 8) & 0xff,
+			2882 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43431,8 +43506,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2883 >> 8) & 0xff,
-			2883 & 0xff,
+			(2889 >> 8) & 0xff,
+			2889 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43447,8 +43522,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2890 >> 8) & 0xff,
-			2890 & 0xff,
+			(2896 >> 8) & 0xff,
+			2896 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43463,8 +43538,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2897 >> 8) & 0xff,
-			2897 & 0xff,
+			(2903 >> 8) & 0xff,
+			2903 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43479,8 +43554,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2904 >> 8) & 0xff,
-			2904 & 0xff,
+			(2910 >> 8) & 0xff,
+			2910 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43498,8 +43573,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2908 >> 8) & 0xff,
-			2908 & 0xff,
+			(2914 >> 8) & 0xff,
+			2914 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43517,8 +43592,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2911 >> 8) & 0xff,
-			2911 & 0xff,
+			(2917 >> 8) & 0xff,
+			2917 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43533,8 +43608,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2918 >> 8) & 0xff,
-			2918 & 0xff,
+			(2924 >> 8) & 0xff,
+			2924 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43552,8 +43627,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2922 >> 8) & 0xff,
-			2922 & 0xff,
+			(2928 >> 8) & 0xff,
+			2928 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43571,8 +43646,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2925 >> 8) & 0xff,
-			2925 & 0xff,
+			(2931 >> 8) & 0xff,
+			2931 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43587,8 +43662,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2931 >> 8) & 0xff,
-			2931 & 0xff,
+			(2937 >> 8) & 0xff,
+			2937 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -43603,8 +43678,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2934 >> 8) & 0xff,
-			2934 & 0xff,
+			(2940 >> 8) & 0xff,
+			2940 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -43619,8 +43694,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2936 >> 8) & 0xff,
-			2936 & 0xff,
+			(2942 >> 8) & 0xff,
+			2942 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -43635,8 +43710,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2938 >> 8) & 0xff,
-			2938 & 0xff,
+			(2944 >> 8) & 0xff,
+			2944 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43654,8 +43729,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2942 >> 8) & 0xff,
-			2942 & 0xff,
+			(2948 >> 8) & 0xff,
+			2948 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43673,8 +43748,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2946 >> 8) & 0xff,
-			2946 & 0xff,
+			(2952 >> 8) & 0xff,
+			2952 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43692,8 +43767,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2949 >> 8) & 0xff,
-			2949 & 0xff,
+			(2955 >> 8) & 0xff,
+			2955 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43708,8 +43783,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2955 >> 8) & 0xff,
-			2955 & 0xff,
+			(2961 >> 8) & 0xff,
+			2961 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -43726,8 +43801,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2958 >> 8) & 0xff,
-			2958 & 0xff,
+			(2964 >> 8) & 0xff,
+			2964 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -43744,8 +43819,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2960 >> 8) & 0xff,
-			2960 & 0xff,
+			(2966 >> 8) & 0xff,
+			2966 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -43762,8 +43837,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2962 >> 8) & 0xff,
-			2962 & 0xff,
+			(2968 >> 8) & 0xff,
+			2968 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43781,8 +43856,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2966 >> 8) & 0xff,
-			2966 & 0xff,
+			(2972 >> 8) & 0xff,
+			2972 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43800,8 +43875,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2970 >> 8) & 0xff,
-			2970 & 0xff,
+			(2976 >> 8) & 0xff,
+			2976 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43819,8 +43894,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2973 >> 8) & 0xff,
-			2973 & 0xff,
+			(2979 >> 8) & 0xff,
+			2979 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43835,8 +43910,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2980 >> 8) & 0xff,
-			2980 & 0xff,
+			(2986 >> 8) & 0xff,
+			2986 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43854,8 +43929,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2984 >> 8) & 0xff,
-			2984 & 0xff,
+			(2990 >> 8) & 0xff,
+			2990 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43873,8 +43948,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2987 >> 8) & 0xff,
-			2987 & 0xff,
+			(2993 >> 8) & 0xff,
+			2993 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43889,8 +43964,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2994 >> 8) & 0xff,
-			2994 & 0xff,
+			(3000 >> 8) & 0xff,
+			3000 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43908,8 +43983,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(2998 >> 8) & 0xff,
-			2998 & 0xff,
+			(3004 >> 8) & 0xff,
+			3004 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43927,8 +44002,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3001 >> 8) & 0xff,
-			3001 & 0xff,
+			(3007 >> 8) & 0xff,
+			3007 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43943,8 +44018,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3008 >> 8) & 0xff,
-			3008 & 0xff,
+			(3014 >> 8) & 0xff,
+			3014 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43962,8 +44037,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3012 >> 8) & 0xff,
-			3012 & 0xff,
+			(3018 >> 8) & 0xff,
+			3018 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -43981,8 +44056,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3015 >> 8) & 0xff,
-			3015 & 0xff,
+			(3021 >> 8) & 0xff,
+			3021 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44000,8 +44075,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3018 >> 8) & 0xff,
-			3018 & 0xff,
+			(3024 >> 8) & 0xff,
+			3024 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_SKIP,
@@ -44013,8 +44088,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3024 >> 8) & 0xff,
-			3024 & 0xff,
+			(3030 >> 8) & 0xff,
+			3030 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44032,8 +44107,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3028 >> 8) & 0xff,
-			3028 & 0xff,
+			(3034 >> 8) & 0xff,
+			3034 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44051,8 +44126,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3031 >> 8) & 0xff,
-			3031 & 0xff,
+			(3037 >> 8) & 0xff,
+			3037 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44070,8 +44145,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3034 >> 8) & 0xff,
-			3034 & 0xff,
+			(3040 >> 8) & 0xff,
+			3040 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_SKIP,
@@ -44083,8 +44158,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3040 >> 8) & 0xff,
-			3040 & 0xff,
+			(3046 >> 8) & 0xff,
+			3046 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44102,8 +44177,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3044 >> 8) & 0xff,
-			3044 & 0xff,
+			(3050 >> 8) & 0xff,
+			3050 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44121,8 +44196,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3047 >> 8) & 0xff,
-			3047 & 0xff,
+			(3053 >> 8) & 0xff,
+			3053 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44140,8 +44215,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3050 >> 8) & 0xff,
-			3050 & 0xff,
+			(3056 >> 8) & 0xff,
+			3056 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_SKIP,
@@ -44153,8 +44228,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3056 >> 8) & 0xff,
-			3056 & 0xff,
+			(3062 >> 8) & 0xff,
+			3062 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44172,8 +44247,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3060 >> 8) & 0xff,
-			3060 & 0xff,
+			(3066 >> 8) & 0xff,
+			3066 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44191,8 +44266,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3063 >> 8) & 0xff,
-			3063 & 0xff,
+			(3069 >> 8) & 0xff,
+			3069 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44210,8 +44285,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 		.field_opr1 = {
-			(3066 >> 8) & 0xff,
-			3066 & 0xff,
+			(3072 >> 8) & 0xff,
+			3072 & 0xff,
 			(2 >> 8) & 0xff,
 			2 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_SKIP,
@@ -44223,8 +44298,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3099 >> 8) & 0xff,
-		3099 & 0xff,
+		(3105 >> 8) & 0xff,
+		3105 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44238,8 +44313,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3113 >> 8) & 0xff,
-		3113 & 0xff,
+		(3119 >> 8) & 0xff,
+		3119 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44253,8 +44328,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3121 >> 8) & 0xff,
-		3121 & 0xff,
+		(3127 >> 8) & 0xff,
+		3127 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44268,8 +44343,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3129 >> 8) & 0xff,
-		3129 & 0xff,
+		(3135 >> 8) & 0xff,
+		3135 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44283,8 +44358,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3137 >> 8) & 0xff,
-		3137 & 0xff,
+		(3143 >> 8) & 0xff,
+		3143 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44298,8 +44373,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3145 >> 8) & 0xff,
-		3145 & 0xff,
+		(3151 >> 8) & 0xff,
+		3151 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44313,8 +44388,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3153 >> 8) & 0xff,
-		3153 & 0xff,
+		(3159 >> 8) & 0xff,
+		3159 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44328,8 +44403,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3161 >> 8) & 0xff,
-		3161 & 0xff,
+		(3167 >> 8) & 0xff,
+		3167 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44343,8 +44418,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3168 >> 8) & 0xff,
-		3168 & 0xff,
+		(3174 >> 8) & 0xff,
+		3174 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44358,8 +44433,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3175 >> 8) & 0xff,
-		3175 & 0xff,
+		(3181 >> 8) & 0xff,
+		3181 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44373,8 +44448,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3182 >> 8) & 0xff,
-		3182 & 0xff,
+		(3188 >> 8) & 0xff,
+		3188 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44388,8 +44463,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3190 >> 8) & 0xff,
-		3190 & 0xff,
+		(3196 >> 8) & 0xff,
+		3196 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44403,8 +44478,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3199 >> 8) & 0xff,
-		3199 & 0xff,
+		(3205 >> 8) & 0xff,
+		3205 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44421,8 +44496,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3204 >> 8) & 0xff,
-		3204 & 0xff,
+		(3210 >> 8) & 0xff,
+		3210 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44439,8 +44514,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3208 >> 8) & 0xff,
-		3208 & 0xff,
+		(3214 >> 8) & 0xff,
+		3214 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44454,8 +44529,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3217 >> 8) & 0xff,
-		3217 & 0xff,
+		(3223 >> 8) & 0xff,
+		3223 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44469,8 +44544,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3225 >> 8) & 0xff,
-		3225 & 0xff,
+		(3231 >> 8) & 0xff,
+		3231 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44487,8 +44562,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3229 >> 8) & 0xff,
-		3229 & 0xff,
+		(3235 >> 8) & 0xff,
+		3235 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44505,8 +44580,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3232 >> 8) & 0xff,
-		3232 & 0xff,
+		(3238 >> 8) & 0xff,
+		3238 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44520,8 +44595,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3239 >> 8) & 0xff,
-		3239 & 0xff,
+		(3245 >> 8) & 0xff,
+		3245 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44538,8 +44613,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3243 >> 8) & 0xff,
-		3243 & 0xff,
+		(3249 >> 8) & 0xff,
+		3249 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44556,8 +44631,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3246 >> 8) & 0xff,
-		3246 & 0xff,
+		(3252 >> 8) & 0xff,
+		3252 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44571,8 +44646,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3253 >> 8) & 0xff,
-		3253 & 0xff,
+		(3259 >> 8) & 0xff,
+		3259 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44589,8 +44664,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3257 >> 8) & 0xff,
-		3257 & 0xff,
+		(3263 >> 8) & 0xff,
+		3263 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44607,8 +44682,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3260 >> 8) & 0xff,
-		3260 & 0xff,
+		(3266 >> 8) & 0xff,
+		3266 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44622,8 +44697,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3267 >> 8) & 0xff,
-		3267 & 0xff,
+		(3273 >> 8) & 0xff,
+		3273 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44640,8 +44715,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3271 >> 8) & 0xff,
-		3271 & 0xff,
+		(3277 >> 8) & 0xff,
+		3277 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44658,8 +44733,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3274 >> 8) & 0xff,
-		3274 & 0xff,
+		(3280 >> 8) & 0xff,
+		3280 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44673,8 +44748,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3281 >> 8) & 0xff,
-		3281 & 0xff,
+		(3287 >> 8) & 0xff,
+		3287 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44691,8 +44766,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3285 >> 8) & 0xff,
-		3285 & 0xff,
+		(3291 >> 8) & 0xff,
+		3291 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44709,8 +44784,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3288 >> 8) & 0xff,
-		3288 & 0xff,
+		(3294 >> 8) & 0xff,
+		3294 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44724,8 +44799,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3295 >> 8) & 0xff,
-		3295 & 0xff,
+		(3301 >> 8) & 0xff,
+		3301 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44742,8 +44817,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3299 >> 8) & 0xff,
-		3299 & 0xff,
+		(3305 >> 8) & 0xff,
+		3305 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44760,8 +44835,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3302 >> 8) & 0xff,
-		3302 & 0xff,
+		(3308 >> 8) & 0xff,
+		3308 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44775,8 +44850,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3309 >> 8) & 0xff,
-		3309 & 0xff,
+		(3315 >> 8) & 0xff,
+		3315 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44793,8 +44868,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3313 >> 8) & 0xff,
-		3313 & 0xff,
+		(3319 >> 8) & 0xff,
+		3319 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44811,8 +44886,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3316 >> 8) & 0xff,
-		3316 & 0xff,
+		(3322 >> 8) & 0xff,
+		3322 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -44826,8 +44901,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3360 >> 8) & 0xff,
-			3360 & 0xff,
+			(3366 >> 8) & 0xff,
+			3366 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -44839,8 +44914,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3370 >> 8) & 0xff,
-			3370 & 0xff,
+			(3376 >> 8) & 0xff,
+			3376 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44855,8 +44930,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3421 >> 8) & 0xff,
-			3421 & 0xff,
+			(3427 >> 8) & 0xff,
+			3427 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -44868,8 +44943,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3429 >> 8) & 0xff,
-			3429 & 0xff,
+			(3435 >> 8) & 0xff,
+			3435 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44884,8 +44959,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3437 >> 8) & 0xff,
-			3437 & 0xff,
+			(3443 >> 8) & 0xff,
+			3443 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -44897,8 +44972,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3445 >> 8) & 0xff,
-			3445 & 0xff,
+			(3451 >> 8) & 0xff,
+			3451 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44913,8 +44988,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3453 >> 8) & 0xff,
-			3453 & 0xff,
+			(3459 >> 8) & 0xff,
+			3459 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -44926,8 +45001,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3461 >> 8) & 0xff,
-			3461 & 0xff,
+			(3467 >> 8) & 0xff,
+			3467 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44942,8 +45017,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3469 >> 8) & 0xff,
-			3469 & 0xff,
+			(3475 >> 8) & 0xff,
+			3475 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -44955,8 +45030,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3477 >> 8) & 0xff,
-			3477 & 0xff,
+			(3483 >> 8) & 0xff,
+			3483 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -44971,8 +45046,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3485 >> 8) & 0xff,
-			3485 & 0xff,
+			(3491 >> 8) & 0xff,
+			3491 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -44984,8 +45059,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3493 >> 8) & 0xff,
-			3493 & 0xff,
+			(3499 >> 8) & 0xff,
+			3499 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45000,8 +45075,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3500 >> 8) & 0xff,
-			3500 & 0xff,
+			(3506 >> 8) & 0xff,
+			3506 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45013,8 +45088,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3506 >> 8) & 0xff,
-			3506 & 0xff,
+			(3512 >> 8) & 0xff,
+			3512 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45029,8 +45104,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3513 >> 8) & 0xff,
-			3513 & 0xff,
+			(3519 >> 8) & 0xff,
+			3519 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45042,8 +45117,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3520 >> 8) & 0xff,
-			3520 & 0xff,
+			(3526 >> 8) & 0xff,
+			3526 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45058,8 +45133,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3527 >> 8) & 0xff,
-			3527 & 0xff,
+			(3533 >> 8) & 0xff,
+			3533 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45071,8 +45146,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3534 >> 8) & 0xff,
-			3534 & 0xff,
+			(3540 >> 8) & 0xff,
+			3540 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45087,8 +45162,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3542 >> 8) & 0xff,
-			3542 & 0xff,
+			(3548 >> 8) & 0xff,
+			3548 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45100,8 +45175,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3551 >> 8) & 0xff,
-			3551 & 0xff,
+			(3557 >> 8) & 0xff,
+			3557 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45116,8 +45191,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3560 >> 8) & 0xff,
-			3560 & 0xff,
+			(3566 >> 8) & 0xff,
+			3566 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45132,8 +45207,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3565 >> 8) & 0xff,
-			3565 & 0xff,
+			(3571 >> 8) & 0xff,
+			3571 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45148,8 +45223,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3569 >> 8) & 0xff,
-			3569 & 0xff,
+			(3575 >> 8) & 0xff,
+			3575 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45161,8 +45236,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3578 >> 8) & 0xff,
-			3578 & 0xff,
+			(3584 >> 8) & 0xff,
+			3584 & 0xff,
 			(5 >> 8) & 0xff,
 			5 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45180,8 +45255,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3583 >> 8) & 0xff,
-			3583 & 0xff,
+			(3589 >> 8) & 0xff,
+			3589 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45199,8 +45274,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3587 >> 8) & 0xff,
-			3587 & 0xff,
+			(3593 >> 8) & 0xff,
+			3593 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45215,8 +45290,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3596 >> 8) & 0xff,
-			3596 & 0xff,
+			(3602 >> 8) & 0xff,
+			3602 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45228,8 +45303,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3605 >> 8) & 0xff,
-			3605 & 0xff,
+			(3611 >> 8) & 0xff,
+			3611 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45244,8 +45319,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3613 >> 8) & 0xff,
-			3613 & 0xff,
+			(3619 >> 8) & 0xff,
+			3619 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45257,8 +45332,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3620 >> 8) & 0xff,
-			3620 & 0xff,
+			(3626 >> 8) & 0xff,
+			3626 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45273,8 +45348,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3627 >> 8) & 0xff,
-			3627 & 0xff,
+			(3633 >> 8) & 0xff,
+			3633 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45286,8 +45361,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3634 >> 8) & 0xff,
-			3634 & 0xff,
+			(3640 >> 8) & 0xff,
+			3640 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45302,8 +45377,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3641 >> 8) & 0xff,
-			3641 & 0xff,
+			(3647 >> 8) & 0xff,
+			3647 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45315,8 +45390,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3648 >> 8) & 0xff,
-			3648 & 0xff,
+			(3654 >> 8) & 0xff,
+			3654 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45331,8 +45406,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3655 >> 8) & 0xff,
-			3655 & 0xff,
+			(3661 >> 8) & 0xff,
+			3661 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45344,8 +45419,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3662 >> 8) & 0xff,
-			3662 & 0xff,
+			(3668 >> 8) & 0xff,
+			3668 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45360,8 +45435,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3669 >> 8) & 0xff,
-			3669 & 0xff,
+			(3675 >> 8) & 0xff,
+			3675 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45376,8 +45451,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3673 >> 8) & 0xff,
-			3673 & 0xff,
+			(3679 >> 8) & 0xff,
+			3679 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45392,8 +45467,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3676 >> 8) & 0xff,
-			3676 & 0xff,
+			(3682 >> 8) & 0xff,
+			3682 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45405,8 +45480,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3683 >> 8) & 0xff,
-			3683 & 0xff,
+			(3689 >> 8) & 0xff,
+			3689 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45424,8 +45499,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3687 >> 8) & 0xff,
-			3687 & 0xff,
+			(3693 >> 8) & 0xff,
+			3693 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45443,8 +45518,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3690 >> 8) & 0xff,
-			3690 & 0xff,
+			(3696 >> 8) & 0xff,
+			3696 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45459,8 +45534,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3697 >> 8) & 0xff,
-			3697 & 0xff,
+			(3703 >> 8) & 0xff,
+			3703 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45475,8 +45550,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3701 >> 8) & 0xff,
-			3701 & 0xff,
+			(3707 >> 8) & 0xff,
+			3707 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45491,8 +45566,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3704 >> 8) & 0xff,
-			3704 & 0xff,
+			(3710 >> 8) & 0xff,
+			3710 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45504,8 +45579,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3711 >> 8) & 0xff,
-			3711 & 0xff,
+			(3717 >> 8) & 0xff,
+			3717 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45523,8 +45598,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3715 >> 8) & 0xff,
-			3715 & 0xff,
+			(3721 >> 8) & 0xff,
+			3721 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45542,8 +45617,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3718 >> 8) & 0xff,
-			3718 & 0xff,
+			(3724 >> 8) & 0xff,
+			3724 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45558,8 +45633,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3725 >> 8) & 0xff,
-			3725 & 0xff,
+			(3731 >> 8) & 0xff,
+			3731 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45574,8 +45649,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3729 >> 8) & 0xff,
-			3729 & 0xff,
+			(3735 >> 8) & 0xff,
+			3735 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45590,8 +45665,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3732 >> 8) & 0xff,
-			3732 & 0xff,
+			(3738 >> 8) & 0xff,
+			3738 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45603,8 +45678,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3739 >> 8) & 0xff,
-			3739 & 0xff,
+			(3745 >> 8) & 0xff,
+			3745 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45622,8 +45697,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3743 >> 8) & 0xff,
-			3743 & 0xff,
+			(3749 >> 8) & 0xff,
+			3749 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45641,8 +45716,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3746 >> 8) & 0xff,
-			3746 & 0xff,
+			(3752 >> 8) & 0xff,
+			3752 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45657,8 +45732,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3753 >> 8) & 0xff,
-			3753 & 0xff,
+			(3759 >> 8) & 0xff,
+			3759 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45673,8 +45748,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3757 >> 8) & 0xff,
-			3757 & 0xff,
+			(3763 >> 8) & 0xff,
+			3763 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45689,8 +45764,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3760 >> 8) & 0xff,
-			3760 & 0xff,
+			(3766 >> 8) & 0xff,
+			3766 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45702,8 +45777,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3767 >> 8) & 0xff,
-			3767 & 0xff,
+			(3773 >> 8) & 0xff,
+			3773 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45721,8 +45796,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3771 >> 8) & 0xff,
-			3771 & 0xff,
+			(3777 >> 8) & 0xff,
+			3777 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45740,8 +45815,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3774 >> 8) & 0xff,
-			3774 & 0xff,
+			(3780 >> 8) & 0xff,
+			3780 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45756,8 +45831,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3781 >> 8) & 0xff,
-			3781 & 0xff,
+			(3787 >> 8) & 0xff,
+			3787 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45772,8 +45847,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3785 >> 8) & 0xff,
-			3785 & 0xff,
+			(3791 >> 8) & 0xff,
+			3791 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45788,8 +45863,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3788 >> 8) & 0xff,
-			3788 & 0xff,
+			(3794 >> 8) & 0xff,
+			3794 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_ONES,
@@ -45801,8 +45876,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3795 >> 8) & 0xff,
-			3795 & 0xff,
+			(3801 >> 8) & 0xff,
+			3801 & 0xff,
 			(4 >> 8) & 0xff,
 			4 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45820,8 +45895,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3799 >> 8) & 0xff,
-			3799 & 0xff,
+			(3805 >> 8) & 0xff,
+			3805 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -45839,8 +45914,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_key_ext_list[] = {
 		.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 		.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 		.field_opr1 = {
-			(3802 >> 8) & 0xff,
-			3802 & 0xff,
+			(3808 >> 8) & 0xff,
+			3808 & 0xff,
 			(3 >> 8) & 0xff,
 			3 & 0xff},
 		.field_src2 = BNXT_ULP_FIELD_SRC_HF,
@@ -49021,8 +49096,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2027 >> 8) & 0xff,
-		2027 & 0xff,
+		(2033 >> 8) & 0xff,
+		2033 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49060,8 +49135,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(2029 >> 8) & 0xff,
-		2029 & 0xff,
+		(2035 >> 8) & 0xff,
+		2035 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49075,8 +49150,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2031 >> 8) & 0xff,
-		2031 & 0xff,
+		(2037 >> 8) & 0xff,
+		2037 & 0xff,
 		(1 >> 8) & 0xff,
 		1 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49102,8 +49177,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2032 >> 8) & 0xff,
-		2032 & 0xff,
+		(2038 >> 8) & 0xff,
+		2038 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49117,8 +49192,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2036 >> 8) & 0xff,
-		2036 & 0xff,
+		(2042 >> 8) & 0xff,
+		2042 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -49163,8 +49238,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2043 >> 8) & 0xff,
-		2043 & 0xff,
+		(2049 >> 8) & 0xff,
+		2049 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49196,8 +49271,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2048 >> 8) & 0xff,
-		2048 & 0xff,
+		(2054 >> 8) & 0xff,
+		2054 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49220,8 +49295,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2058 >> 8) & 0xff,
-		2058 & 0xff,
+		(2064 >> 8) & 0xff,
+		2064 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49241,8 +49316,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2063 >> 8) & 0xff,
-		2063 & 0xff,
+		(2069 >> 8) & 0xff,
+		2069 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -49266,8 +49341,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2072 >> 8) & 0xff,
-		2072 & 0xff,
+		(2078 >> 8) & 0xff,
+		2078 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49290,8 +49365,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2080 >> 8) & 0xff,
-		2080 & 0xff,
+		(2086 >> 8) & 0xff,
+		2086 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49308,8 +49383,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2088 >> 8) & 0xff,
-		2088 & 0xff,
+		(2094 >> 8) & 0xff,
+		2094 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49332,8 +49407,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2096 >> 8) & 0xff,
-		2096 & 0xff,
+		(2102 >> 8) & 0xff,
+		2102 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49416,8 +49491,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2104 >> 8) & 0xff,
-		2104 & 0xff,
+		(2110 >> 8) & 0xff,
+		2110 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49434,8 +49509,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2112 >> 8) & 0xff,
-		2112 & 0xff,
+		(2118 >> 8) & 0xff,
+		2118 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49500,8 +49575,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2120 >> 8) & 0xff,
-		2120 & 0xff,
+		(2126 >> 8) & 0xff,
+		2126 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49554,8 +49629,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2126 >> 8) & 0xff,
-		2126 & 0xff,
+		(2132 >> 8) & 0xff,
+		2132 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49572,8 +49647,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2133 >> 8) & 0xff,
-		2133 & 0xff,
+		(2139 >> 8) & 0xff,
+		2139 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49620,8 +49695,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2140 >> 8) & 0xff,
-		2140 & 0xff,
+		(2146 >> 8) & 0xff,
+		2146 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49656,8 +49731,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2149 >> 8) & 0xff,
-		2149 & 0xff,
+		(2155 >> 8) & 0xff,
+		2155 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49680,8 +49755,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2167 >> 8) & 0xff,
-		2167 & 0xff,
+		(2173 >> 8) & 0xff,
+		2173 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49704,8 +49779,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2176 >> 8) & 0xff,
-		2176 & 0xff,
+		(2182 >> 8) & 0xff,
+		2182 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49728,8 +49803,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2194 >> 8) & 0xff,
-		2194 & 0xff,
+		(2200 >> 8) & 0xff,
+		2200 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49752,8 +49827,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2212 >> 8) & 0xff,
-		2212 & 0xff,
+		(2218 >> 8) & 0xff,
+		2218 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49770,8 +49845,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2230 >> 8) & 0xff,
-		2230 & 0xff,
+		(2236 >> 8) & 0xff,
+		2236 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49794,8 +49869,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2248 >> 8) & 0xff,
-		2248 & 0xff,
+		(2254 >> 8) & 0xff,
+		2254 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -49878,8 +49953,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2266 >> 8) & 0xff,
-		2266 & 0xff,
+		(2272 >> 8) & 0xff,
+		2272 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -49897,8 +49972,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(2275 >> 8) & 0xff,
-		2275 & 0xff,
+		(2281 >> 8) & 0xff,
+		2281 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_NEXT,
@@ -50781,8 +50856,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3076 >> 8) & 0xff,
-		3076 & 0xff,
+		(3082 >> 8) & 0xff,
+		3082 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50820,8 +50895,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_OR,
 	.field_opr1 = {
-		(3078 >> 8) & 0xff,
-		3078 & 0xff,
+		(3084 >> 8) & 0xff,
+		3084 & 0xff,
 		(2 >> 8) & 0xff,
 		2 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50835,8 +50910,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3080 >> 8) & 0xff,
-		3080 & 0xff,
+		(3086 >> 8) & 0xff,
+		3086 & 0xff,
 		(1 >> 8) & 0xff,
 		1 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50862,8 +50937,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3081 >> 8) & 0xff,
-		3081 & 0xff,
+		(3087 >> 8) & 0xff,
+		3087 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50877,8 +50952,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3085 >> 8) & 0xff,
-		3085 & 0xff,
+		(3091 >> 8) & 0xff,
+		3091 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50922,8 +50997,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3089 >> 8) & 0xff,
-		3089 & 0xff,
+		(3095 >> 8) & 0xff,
+		3095 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50955,8 +51030,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3094 >> 8) & 0xff,
-		3094 & 0xff,
+		(3100 >> 8) & 0xff,
+		3100 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -50979,8 +51054,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3104 >> 8) & 0xff,
-		3104 & 0xff,
+		(3110 >> 8) & 0xff,
+		3110 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51000,8 +51075,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3109 >> 8) & 0xff,
-		3109 & 0xff,
+		(3115 >> 8) & 0xff,
+		3115 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51024,8 +51099,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3117 >> 8) & 0xff,
-		3117 & 0xff,
+		(3123 >> 8) & 0xff,
+		3123 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51048,8 +51123,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3125 >> 8) & 0xff,
-		3125 & 0xff,
+		(3131 >> 8) & 0xff,
+		3131 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51066,8 +51141,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3133 >> 8) & 0xff,
-		3133 & 0xff,
+		(3139 >> 8) & 0xff,
+		3139 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51090,8 +51165,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3141 >> 8) & 0xff,
-		3141 & 0xff,
+		(3147 >> 8) & 0xff,
+		3147 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51174,8 +51249,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3149 >> 8) & 0xff,
-		3149 & 0xff,
+		(3155 >> 8) & 0xff,
+		3155 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51192,8 +51267,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3157 >> 8) & 0xff,
-		3157 & 0xff,
+		(3163 >> 8) & 0xff,
+		3163 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51258,8 +51333,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3165 >> 8) & 0xff,
-		3165 & 0xff,
+		(3171 >> 8) & 0xff,
+		3171 & 0xff,
 		(3 >> 8) & 0xff,
 		3 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51312,8 +51387,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3171 >> 8) & 0xff,
-		3171 & 0xff,
+		(3177 >> 8) & 0xff,
+		3177 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51330,8 +51405,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3178 >> 8) & 0xff,
-		3178 & 0xff,
+		(3184 >> 8) & 0xff,
+		3184 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51378,8 +51453,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3185 >> 8) & 0xff,
-		3185 & 0xff,
+		(3191 >> 8) & 0xff,
+		3191 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51414,8 +51489,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3194 >> 8) & 0xff,
-		3194 & 0xff,
+		(3200 >> 8) & 0xff,
+		3200 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51438,8 +51513,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3212 >> 8) & 0xff,
-		3212 & 0xff,
+		(3218 >> 8) & 0xff,
+		3218 & 0xff,
 		(5 >> 8) & 0xff,
 		5 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51462,8 +51537,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3221 >> 8) & 0xff,
-		3221 & 0xff,
+		(3227 >> 8) & 0xff,
+		3227 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51486,8 +51561,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3235 >> 8) & 0xff,
-		3235 & 0xff,
+		(3241 >> 8) & 0xff,
+		3241 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51510,8 +51585,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3249 >> 8) & 0xff,
-		3249 & 0xff,
+		(3255 >> 8) & 0xff,
+		3255 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51528,8 +51603,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3263 >> 8) & 0xff,
-		3263 & 0xff,
+		(3269 >> 8) & 0xff,
+		3269 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51552,8 +51627,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3277 >> 8) & 0xff,
-		3277 & 0xff,
+		(3283 >> 8) & 0xff,
+		3283 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51636,8 +51711,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3291 >> 8) & 0xff,
-		3291 & 0xff,
+		(3297 >> 8) & 0xff,
+		3297 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51654,8 +51729,8 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_TERNARY_LIST,
 	.field_src1 = BNXT_ULP_FIELD_SRC_LIST_AND,
 	.field_opr1 = {
-		(3305 >> 8) & 0xff,
-		3305 & 0xff,
+		(3311 >> 8) & 0xff,
+		3311 & 0xff,
 		(4 >> 8) & 0xff,
 		4 & 0xff},
 	.field_src2 = BNXT_ULP_FIELD_SRC_CONST,
@@ -51980,13 +52055,23 @@ struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
 	.description = "drv_func.mac",
 	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
+	.field_opr1 = {
+		(BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
+		BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
+		(BNXT_ULP_PORT_TABLE_DRV_FUNC_MAC >> 8) & 0xff,
+		BNXT_ULP_PORT_TABLE_DRV_FUNC_MAC & 0xff}
 	},
 	{
 	.description = "drv_func.parent.mac",
 	.field_bit_size = 48,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
+	.field_src1 = BNXT_ULP_FIELD_SRC_PORT_TABLE,
+	.field_opr1 = {
+		(BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
+		BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
+		(BNXT_ULP_PORT_TABLE_DRV_FUNC_PARENT_MAC >> 8) & 0xff,
+		BNXT_ULP_PORT_TABLE_DRV_FUNC_PARENT_MAC & 0xff}
 	},
 	{
 	.description = "phy_port",
@@ -55451,12 +55536,6 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_class_ident_list[] = {
 	.ident_bit_pos = 137
 	},
 	{
-	.description = "drv_func.parent.mac",
-	.regfile_idx = BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC,
-	.ident_bit_size = 48,
-	.ident_bit_pos = 80
-	},
-	{
 	.description = "phy_port",
 	.regfile_idx = BNXT_ULP_RF_IDX_PHY_PORT,
 	.ident_bit_size = 8,
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c
index 5f51423001..98cb4f30df 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_act.c
@@ -13,6 +13,16 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 	/* act_tid: 1, ingress */
 	[1] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
+	.num_tbls = 0,
+	.start_tbl_idx = 0,
+	.reject_info = {
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 0,
+		.cond_nums = 0 }
+	},
+	/* act_tid: 2, ingress */
+	[2] = {
+	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 21,
 	.start_tbl_idx = 0,
 	.reject_info = {
@@ -20,8 +30,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 		.cond_start_idx = 0,
 		.cond_nums = 12 }
 	},
-	/* act_tid: 2, ingress */
-	[2] = {
+	/* act_tid: 3, ingress */
+	[3] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 7,
 	.start_tbl_idx = 21,
@@ -30,8 +40,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 		.cond_start_idx = 24,
 		.cond_nums = 0 }
 	},
-	/* act_tid: 3, ingress */
-	[3] = {
+	/* act_tid: 4, ingress */
+	[4] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 22,
 	.start_tbl_idx = 28,
@@ -40,8 +50,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 		.cond_start_idx = 0,
 		.cond_nums = 2 }
 	},
-	/* act_tid: 4, ingress */
-	[4] = {
+	/* act_tid: 5, ingress */
+	[5] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 5,
 	.start_tbl_idx = 50,
@@ -50,8 +60,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 		.cond_start_idx = 2,
 		.cond_nums = 2 }
 	},
-	/* act_tid: 5, ingress */
-	[5] = {
+	/* act_tid: 6, ingress */
+	[6] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 1,
 	.start_tbl_idx = 55,
@@ -60,48 +70,58 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 		.cond_start_idx = 57,
 		.cond_nums = 0 }
 	},
-	/* act_tid: 6, egress */
-	[6] = {
+	/* act_tid: 7, egress */
+	[7] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
-	.num_tbls = 23,
+	.num_tbls = 1,
 	.start_tbl_idx = 56,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
 		.cond_start_idx = 57,
 		.cond_nums = 0 }
 	},
-	/* act_tid: 7, egress */
-	[7] = {
+	/* act_tid: 8, egress */
+	[8] = {
+	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
+	.num_tbls = 23,
+	.start_tbl_idx = 57,
+	.reject_info = {
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
+		.cond_start_idx = 57,
+		.cond_nums = 0 }
+	},
+	/* act_tid: 9, egress */
+	[9] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 25,
-	.start_tbl_idx = 79,
+	.start_tbl_idx = 80,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_LIST_OR,
 		.cond_start_idx = 4,
 		.cond_nums = 2 }
 	},
-	/* act_tid: 8, egress */
-	[8] = {
+	/* act_tid: 10, egress */
+	[10] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 30,
-	.start_tbl_idx = 104,
+	.start_tbl_idx = 105,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
 		.cond_start_idx = 97,
 		.cond_nums = 2 }
 	},
-	/* act_tid: 9, egress */
-	[9] = {
+	/* act_tid: 11, egress */
+	[11] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 20,
-	.start_tbl_idx = 134,
+	.start_tbl_idx = 135,
 	.reject_info = {
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
 		.cond_start_idx = 124,
 		.cond_nums = 0 }
 	},
-	/* act_tid: 10, egress */
-	[10] = {
+	/* act_tid: 12, egress */
+	[12] = {
 	.device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
 	.num_tbls = 0,
 	.start_tbl_idx = 0,
@@ -113,7 +133,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
 };
 
 struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
-	{ /* act_tid: 1, , table: control.set_dest_vnic_default */
+	{ /* act_tid: 2, , table: control.set_dest_vnic_default */
 	.description = "control.set_dest_vnic_default",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -131,7 +151,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VNIC_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VNIC }
 	},
-	{ /* act_tid: 1, , table: shared_mirror_record.rd */
+	{ /* act_tid: 2, , table: shared_mirror_record.rd */
 	.description = "shared_mirror_record.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -155,7 +175,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 0,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 1, , table: control.mirror_ing_0 */
+	{ /* act_tid: 2, , table: control.mirror_ing_0 */
 	.description = "control.mirror_ing_0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -168,7 +188,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 1, , table: multi_shared_mirror_record.rd_a */
+	{ /* act_tid: 2, , table: multi_shared_mirror_record.rd_a */
 	.description = "multi_shared_mirror_record.rd_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -192,7 +212,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 1,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 1, , table: control.mirror_port_a */
+	{ /* act_tid: 2, , table: control.mirror_port_a */
 	.description = "control.mirror_port_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -205,7 +225,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 1, , table: control.set_dest_vnic_b */
+	{ /* act_tid: 2, , table: control.set_dest_vnic_b */
 	.description = "control.set_dest_vnic_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -223,7 +243,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VNIC_B,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VNIC }
 	},
-	{ /* act_tid: 1, , table: multi_shared_mirror_record.rd_b */
+	{ /* act_tid: 2, , table: multi_shared_mirror_record.rd_b */
 	.description = "multi_shared_mirror_record.rd_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -247,7 +267,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 2,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 1, , table: control.mirror_port_b */
+	{ /* act_tid: 2, , table: control.mirror_port_b */
 	.description = "control.mirror_port_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -260,7 +280,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 1, , table: control.set_dest_vnic_a */
+	{ /* act_tid: 2, , table: control.set_dest_vnic_a */
 	.description = "control.set_dest_vnic_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -278,7 +298,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VNIC_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VNIC }
 	},
-	{ /* act_tid: 1, , table: control.mirror */
+	{ /* act_tid: 2, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -292,7 +312,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 1, , table: mirror_tbl.alloc */
+	{ /* act_tid: 2, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -311,11 +331,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 0,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 1, , table: int_flow_counter_tbl.mirror */
+	{ /* act_tid: 2, , table: int_flow_counter_tbl.mirror */
 	.description = "int_flow_counter_tbl.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -334,11 +355,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 6,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 1, , table: int_full_act_record.mirror */
+	{ /* act_tid: 2, , table: int_full_act_record.mirror */
 	.description = "int_full_act_record.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -357,12 +379,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 7,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 1, , table: ext_full_act_record.mirror */
+	{ /* act_tid: 2, , table: ext_full_act_record.mirror */
 	.description = "ext_full_act_record.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -381,12 +404,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 33,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 1, , table: mirror_tbl.wr */
+	{ /* act_tid: 2, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -404,11 +428,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 70,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 1, , table: control.inc_mirror_id */
+	{ /* act_tid: 2, , table: control.inc_mirror_id */
 	.description = "control.inc_mirror_id",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -428,7 +453,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MIRROR_ID_0 }
 	},
-	{ /* act_tid: 1, , table: multi_shared_mirror_record.wr_b */
+	{ /* act_tid: 2, , table: multi_shared_mirror_record.wr_b */
 	.description = "multi_shared_mirror_record.wr_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -453,7 +478,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 1, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 2, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -471,11 +496,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 78,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 1, , table: int_vtag_encap_record.0 */
+	{ /* act_tid: 2, , table: int_vtag_encap_record.0 */
 	.description = "int_vtag_encap_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
@@ -493,13 +519,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 8,
 	.result_start_idx = 79,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 1, , table: int_full_act_record.0 */
+	{ /* act_tid: 2, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -517,12 +544,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 90,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 1, , table: ext_full_act_record.0 */
+	{ /* act_tid: 2, , table: ext_full_act_record.0 */
 	.description = "ext_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -540,12 +568,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 116,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 2, , table: control.0 */
+	{ /* act_tid: 3, , table: control.0 */
 	.description = "control.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -559,7 +588,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 2, , table: mirror_tbl.alloc */
+	{ /* act_tid: 3, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -578,11 +607,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 153,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 2, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 3, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -601,11 +631,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 159,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 2, , table: int_full_act_record.0 */
+	{ /* act_tid: 3, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -624,12 +655,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 160,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 2, , table: ext_full_act_record.0 */
+	{ /* act_tid: 3, , table: ext_full_act_record.0 */
 	.description = "ext_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -648,12 +680,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 186,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 2, , table: mirror_tbl.wr */
+	{ /* act_tid: 3, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -671,11 +704,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 223,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 2, , table: shared_mirror_record.wr */
+	{ /* act_tid: 3, , table: shared_mirror_record.wr */
 	.description = "shared_mirror_record.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -701,7 +735,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 3, , table: control.0 */
+	{ /* act_tid: 4, , table: control.0 */
 	.description = "control.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -714,7 +748,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: control.set_dest_vnic_default */
+	{ /* act_tid: 4, , table: control.set_dest_vnic_default */
 	.description = "control.set_dest_vnic_default",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -732,7 +766,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VNIC_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VNIC }
 	},
-	{ /* act_tid: 3, , table: multi_shared_mirror_record.rd_a */
+	{ /* act_tid: 4, , table: multi_shared_mirror_record.rd_a */
 	.description = "multi_shared_mirror_record.rd_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -756,7 +790,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 3,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 3, , table: control.mirror_port_a */
+	{ /* act_tid: 4, , table: control.mirror_port_a */
 	.description = "control.mirror_port_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -769,7 +803,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: control.set_dest_vnic_b */
+	{ /* act_tid: 4, , table: control.set_dest_vnic_b */
 	.description = "control.set_dest_vnic_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -787,7 +821,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VNIC_B,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VNIC }
 	},
-	{ /* act_tid: 3, , table: multi_shared_mirror_record.rd_b */
+	{ /* act_tid: 4, , table: multi_shared_mirror_record.rd_b */
 	.description = "multi_shared_mirror_record.rd_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -811,7 +845,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 4,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 3, , table: control.mirror_port_b */
+	{ /* act_tid: 4, , table: control.mirror_port_b */
 	.description = "control.mirror_port_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -824,7 +858,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 3, , table: control.set_dest_vnic_a */
+	{ /* act_tid: 4, , table: control.set_dest_vnic_a */
 	.description = "control.set_dest_vnic_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -842,7 +876,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VNIC_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VNIC }
 	},
-	{ /* act_tid: 3, , table: control.mirror */
+	{ /* act_tid: 4, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -856,7 +890,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 3, , table: mirror_tbl.alloc */
+	{ /* act_tid: 4, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -875,11 +909,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 231,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 3, , table: int_flow_counter_tbl.mirror */
+	{ /* act_tid: 4, , table: int_flow_counter_tbl.mirror */
 	.description = "int_flow_counter_tbl.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -898,11 +933,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 237,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 3, , table: int_full_act_record.mirror */
+	{ /* act_tid: 4, , table: int_full_act_record.mirror */
 	.description = "int_full_act_record.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -921,12 +957,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 238,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 3, , table: ext_full_act_record.mirror */
+	{ /* act_tid: 4, , table: ext_full_act_record.mirror */
 	.description = "ext_full_act_record.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -945,12 +982,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 264,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 3, , table: mirror_tbl.wr */
+	{ /* act_tid: 4, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -968,11 +1006,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 301,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 3, , table: control.inc_mirror_id */
+	{ /* act_tid: 4, , table: control.inc_mirror_id */
 	.description = "control.inc_mirror_id",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
@@ -992,7 +1031,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MIRROR_ID_0 }
 	},
-	{ /* act_tid: 3, , table: multi_shared_mirror_record.wr_b */
+	{ /* act_tid: 4, , table: multi_shared_mirror_record.wr_b */
 	.description = "multi_shared_mirror_record.wr_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1017,7 +1056,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 3, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 4, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -1034,11 +1073,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 309,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 3, , table: act_modify_ipv4_src.0 */
+	{ /* act_tid: 4, , table: act_modify_ipv4_src.0 */
 	.description = "act_modify_ipv4_src.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
@@ -1055,11 +1095,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 310,
 	.result_bit_size = 32,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 3, , table: act_modify_ipv4_dst.0 */
+	{ /* act_tid: 4, , table: act_modify_ipv4_dst.0 */
 	.description = "act_modify_ipv4_dst.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
@@ -1076,11 +1117,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 311,
 	.result_bit_size = 32,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 3, , table: int_encap_mac_record.0 */
+	{ /* act_tid: 4, , table: int_encap_mac_record.0 */
 	.description = "int_encap_mac_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
@@ -1097,13 +1139,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 16,
 	.result_start_idx = 312,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 3, , table: int_full_act_record.0 */
+	{ /* act_tid: 4, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -1120,11 +1163,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 323,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 3, , table: ext_full_act_record.0 */
+	{ /* act_tid: 4, , table: ext_full_act_record.0 */
 	.description = "ext_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -1141,12 +1185,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 349,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 4, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 5, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -1164,11 +1209,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 386,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 4, , table: vnic_interface_rss_config.0 */
+	{ /* act_tid: 5, , table: vnic_interface_rss_config.0 */
 	.description = "vnic_interface_rss_config.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
 	.resource_sub_type =
@@ -1188,7 +1234,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 0,
 	.result_num_fields = 0
 	},
-	{ /* act_tid: 4, , table: vnic_interface_queue_config.0 */
+	{ /* act_tid: 5, , table: vnic_interface_queue_config.0 */
 	.description = "vnic_interface_queue_config.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_VNIC_TABLE,
 	.resource_sub_type =
@@ -1208,7 +1254,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 0,
 	.result_num_fields = 0
 	},
-	{ /* act_tid: 4, , table: int_full_act_record.0 */
+	{ /* act_tid: 5, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -1226,12 +1272,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 387,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 4, , table: int_full_act_record.1 */
+	{ /* act_tid: 5, , table: int_full_act_record.1 */
 	.description = "int_full_act_record.1",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -1249,15 +1296,17 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 413,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 0
 	},
-	{ /* act_tid: 5, , table: control.0 */
+	{ /* act_tid: 6, , table: control.0 */
 	.description = "control.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_RX,
+	.true_message = "Wh not supporting meter",
 	.execute_info = {
 		.cond_true_goto  = 1023,
 		.cond_false_goto = 0,
@@ -1267,7 +1316,21 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 6, , table: control.set_dest_vport_default */
+	{ /* act_tid: 7, , table: control.reject */
+	.description = "control.reject",
+	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+	.direction = TF_DIR_TX,
+	.true_message = "Reject: wh+ not supporting gen template",
+	.execute_info = {
+		.cond_true_goto  = 1023,
+		.cond_false_goto = 0,
+		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+		.cond_start_idx = 57,
+		.cond_nums = 0 },
+	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
+	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
+	},
+	{ /* act_tid: 8, , table: control.set_dest_vport_default */
 	.description = "control.set_dest_vport_default",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1285,7 +1348,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 6, , table: shared_mirror_record.rd */
+	{ /* act_tid: 8, , table: shared_mirror_record.rd */
 	.description = "shared_mirror_record.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1309,7 +1372,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 5,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 6, , table: control.mirror.0 */
+	{ /* act_tid: 8, , table: control.mirror.0 */
 	.description = "control.mirror.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1322,7 +1385,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 6, , table: multi_shared_mirror_record.rd_a */
+	{ /* act_tid: 8, , table: multi_shared_mirror_record.rd_a */
 	.description = "multi_shared_mirror_record.rd_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1346,7 +1409,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 6,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 6, , table: control.mirror_port_a */
+	{ /* act_tid: 8, , table: control.mirror_port_a */
 	.description = "control.mirror_port_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1359,7 +1422,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 6, , table: control.set_dest_vport_b */
+	{ /* act_tid: 8, , table: control.set_dest_vport_b */
 	.description = "control.set_dest_vport_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1377,7 +1440,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_B,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 6, , table: multi_shared_mirror_record.rd_b */
+	{ /* act_tid: 8, , table: multi_shared_mirror_record.rd_b */
 	.description = "multi_shared_mirror_record.rd_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1401,7 +1464,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 7,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 6, , table: control.mirror_port_b */
+	{ /* act_tid: 8, , table: control.mirror_port_b */
 	.description = "control.mirror_port_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1414,7 +1477,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 6, , table: control.set_dest_vport_a */
+	{ /* act_tid: 8, , table: control.set_dest_vport_a */
 	.description = "control.set_dest_vport_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1432,7 +1495,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 6, , table: control.mirror */
+	{ /* act_tid: 8, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1446,7 +1509,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 6, , table: control.set_dest_is_b_vfrep */
+	{ /* act_tid: 8, , table: control.set_dest_is_b_vfrep */
 	.description = "control.set_dest_is_b_vfrep",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1459,7 +1522,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 6, , table: mirror_tbl.alloc */
+	{ /* act_tid: 8, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1478,11 +1541,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 439,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 6, , table: int_flow_counter_tbl.mirror */
+	{ /* act_tid: 8, , table: int_flow_counter_tbl.mirror */
 	.description = "int_flow_counter_tbl.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -1501,11 +1565,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 445,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 6, , table: int_encap_custom_record.mirr_2_vf */
+	{ /* act_tid: 8, , table: int_encap_custom_record.mirr_2_vf */
 	.description = "int_encap_custom_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -1524,13 +1589,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 446,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 6, , table: int_full_act_record.mirr_2_vf */
+	{ /* act_tid: 8, , table: int_full_act_record.mirr_2_vf */
 	.description = "int_full_act_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -1548,11 +1614,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 457,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 6, , table: mirror_tbl.wr */
+	{ /* act_tid: 8, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1570,11 +1637,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 483,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 6, , table: control.inc_mirror_id */
+	{ /* act_tid: 8, , table: control.inc_mirror_id */
 	.description = "control.inc_mirror_id",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1594,7 +1662,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MIRROR_ID_0 }
 	},
-	{ /* act_tid: 6, , table: multi_shared_mirror_record.wr_b */
+	{ /* act_tid: 8, , table: multi_shared_mirror_record.wr_b */
 	.description = "multi_shared_mirror_record.wr_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1619,7 +1687,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 6, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 8, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -1636,11 +1704,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 491,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 6, , table: int_vtag_encap_record.0 */
+	{ /* act_tid: 8, , table: int_vtag_encap_record.0 */
 	.description = "int_vtag_encap_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
@@ -1657,13 +1726,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 8,
 	.result_start_idx = 492,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 6, , table: int_full_act_record.0 */
+	{ /* act_tid: 8, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -1680,11 +1750,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 503,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 6, , table: ext_full_act_record.no_tag */
+	{ /* act_tid: 8, , table: ext_full_act_record.no_tag */
 	.description = "ext_full_act_record.no_tag",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -1701,12 +1772,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 529,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 6, , table: ext_full_act_record.one_tag */
+	{ /* act_tid: 8, , table: ext_full_act_record.one_tag */
 	.description = "ext_full_act_record.one_tag",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -1723,12 +1795,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 566,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 7, , table: control.0 */
+	{ /* act_tid: 9, , table: control.0 */
 	.description = "control.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1741,7 +1814,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: control.set_dest_vport_default */
+	{ /* act_tid: 9, , table: control.set_dest_vport_default */
 	.description = "control.set_dest_vport_default",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1759,7 +1832,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 7, , table: shared_mirror_record.rd */
+	{ /* act_tid: 9, , table: shared_mirror_record.rd */
 	.description = "shared_mirror_record.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1783,7 +1856,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 8,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 7, , table: control.mirror.0 */
+	{ /* act_tid: 9, , table: control.mirror.0 */
 	.description = "control.mirror.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1796,7 +1869,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: multi_shared_mirror_record.rd_a */
+	{ /* act_tid: 9, , table: multi_shared_mirror_record.rd_a */
 	.description = "multi_shared_mirror_record.rd_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1820,7 +1893,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 9,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 7, , table: control.mirror_port_a */
+	{ /* act_tid: 9, , table: control.mirror_port_a */
 	.description = "control.mirror_port_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1833,7 +1906,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: control.set_dest_vport_b */
+	{ /* act_tid: 9, , table: control.set_dest_vport_b */
 	.description = "control.set_dest_vport_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1851,7 +1924,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_B,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 7, , table: multi_shared_mirror_record.rd_b */
+	{ /* act_tid: 9, , table: multi_shared_mirror_record.rd_b */
 	.description = "multi_shared_mirror_record.rd_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1875,7 +1948,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 10,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 7, , table: control.mirror_port_b */
+	{ /* act_tid: 9, , table: control.mirror_port_b */
 	.description = "control.mirror_port_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1888,7 +1961,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: control.set_dest_vport_a */
+	{ /* act_tid: 9, , table: control.set_dest_vport_a */
 	.description = "control.set_dest_vport_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1906,7 +1979,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 7, , table: control.mirror */
+	{ /* act_tid: 9, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1920,7 +1993,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 7, , table: control.set_dest_is_b_vfrep */
+	{ /* act_tid: 9, , table: control.set_dest_is_b_vfrep */
 	.description = "control.set_dest_is_b_vfrep",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -1933,7 +2006,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 7, , table: mirror_tbl.alloc */
+	{ /* act_tid: 9, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -1952,11 +2025,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 603,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 7, , table: int_flow_counter_tbl.mirror */
+	{ /* act_tid: 9, , table: int_flow_counter_tbl.mirror */
 	.description = "int_flow_counter_tbl.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -1975,11 +2049,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 609,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 7, , table: int_encap_custom_record.mirr_2_vf */
+	{ /* act_tid: 9, , table: int_encap_custom_record.mirr_2_vf */
 	.description = "int_encap_custom_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -1998,13 +2073,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 610,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 7, , table: int_full_act_record.mirr_2_vf */
+	{ /* act_tid: 9, , table: int_full_act_record.mirr_2_vf */
 	.description = "int_full_act_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -2022,11 +2098,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 621,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 7, , table: mirror_tbl.wr */
+	{ /* act_tid: 9, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2044,11 +2121,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 647,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 7, , table: control.inc_mirror_id */
+	{ /* act_tid: 9, , table: control.inc_mirror_id */
 	.description = "control.inc_mirror_id",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2068,7 +2146,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MIRROR_ID_0 }
 	},
-	{ /* act_tid: 7, , table: multi_shared_mirror_record.wr_b */
+	{ /* act_tid: 9, , table: multi_shared_mirror_record.wr_b */
 	.description = "multi_shared_mirror_record.wr_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2093,7 +2171,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 7, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 9, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -2110,11 +2188,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 655,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 7, , table: act_modify_ipv4_src.0 */
+	{ /* act_tid: 9, , table: act_modify_ipv4_src.0 */
 	.description = "act_modify_ipv4_src.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
@@ -2131,11 +2210,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 656,
 	.result_bit_size = 32,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 7, , table: act_modify_ipv4_dst.0 */
+	{ /* act_tid: 9, , table: act_modify_ipv4_dst.0 */
 	.description = "act_modify_ipv4_dst.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
@@ -2152,11 +2232,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 657,
 	.result_bit_size = 32,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 7, , table: int_encap_mac_record.dummy */
+	{ /* act_tid: 9, , table: int_encap_mac_record.dummy */
 	.description = "int_encap_mac_record.dummy",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
@@ -2173,13 +2254,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 16,
 	.result_start_idx = 658,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 7, , table: int_full_act_record.0 */
+	{ /* act_tid: 9, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -2196,11 +2278,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 669,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 7, , table: ext_full_act_record.0 */
+	{ /* act_tid: 9, , table: ext_full_act_record.0 */
 	.description = "ext_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -2217,12 +2300,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 695,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 8, , table: control.set_dest_vnic_default */
+	{ /* act_tid: 10, , table: control.set_dest_vnic_default */
 	.description = "control.set_dest_vnic_default",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2240,7 +2324,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 8, , table: shared_mirror_record.rd */
+	{ /* act_tid: 10, , table: shared_mirror_record.rd */
 	.description = "shared_mirror_record.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2264,7 +2348,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 11,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.mirror.0 */
+	{ /* act_tid: 10, , table: control.mirror.0 */
 	.description = "control.mirror.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2277,7 +2361,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: multi_shared_mirror_record.rd_a */
+	{ /* act_tid: 10, , table: multi_shared_mirror_record.rd_a */
 	.description = "multi_shared_mirror_record.rd_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2301,7 +2385,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 12,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.mirror_port_a */
+	{ /* act_tid: 10, , table: control.mirror_port_a */
 	.description = "control.mirror_port_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2314,7 +2398,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: control.set_dest_vport_b */
+	{ /* act_tid: 10, , table: control.set_dest_vport_b */
 	.description = "control.set_dest_vport_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2332,7 +2416,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_B,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 8, , table: multi_shared_mirror_record.rd_b */
+	{ /* act_tid: 10, , table: multi_shared_mirror_record.rd_b */
 	.description = "multi_shared_mirror_record.rd_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2356,7 +2440,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 13,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.mirror_port_b */
+	{ /* act_tid: 10, , table: control.mirror_port_b */
 	.description = "control.mirror_port_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2369,7 +2453,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: control.set_dest_vport_a */
+	{ /* act_tid: 10, , table: control.set_dest_vport_a */
 	.description = "control.set_dest_vport_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2387,7 +2471,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_VPORT_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_VPORT }
 	},
-	{ /* act_tid: 8, , table: control.mirror */
+	{ /* act_tid: 10, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2401,7 +2485,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 8, , table: control.set_dest_is_b_vfrep */
+	{ /* act_tid: 10, , table: control.set_dest_is_b_vfrep */
 	.description = "control.set_dest_is_b_vfrep",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2414,7 +2498,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 8, , table: mirror_tbl.alloc */
+	{ /* act_tid: 10, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2433,11 +2517,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 732,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 8, , table: int_flow_counter_tbl.mirror */
+	{ /* act_tid: 10, , table: int_flow_counter_tbl.mirror */
 	.description = "int_flow_counter_tbl.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -2456,11 +2541,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 738,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 8, , table: int_encap_custom_record.mirr_2_vf */
+	{ /* act_tid: 10, , table: int_encap_custom_record.mirr_2_vf */
 	.description = "int_encap_custom_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -2479,13 +2565,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 739,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 8, , table: int_full_act_record.mirr_2_vf */
+	{ /* act_tid: 10, , table: int_full_act_record.mirr_2_vf */
 	.description = "int_full_act_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -2503,11 +2590,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 750,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 8, , table: mirror_tbl.wr */
+	{ /* act_tid: 10, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2525,11 +2613,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 776,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 8, , table: control.inc_mirror_id */
+	{ /* act_tid: 10, , table: control.inc_mirror_id */
 	.description = "control.inc_mirror_id",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2549,7 +2638,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MIRROR_ID_0 }
 	},
-	{ /* act_tid: 8, , table: multi_shared_mirror_record.wr_b */
+	{ /* act_tid: 10, , table: multi_shared_mirror_record.wr_b */
 	.description = "multi_shared_mirror_record.wr_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2574,7 +2663,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 10, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -2591,11 +2680,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 784,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 8, , table: port_table.sp_rec_rd */
+	{ /* act_tid: 10, , table: port_table.sp_rec_rd */
 	.description = "port_table.sp_rec_rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -2618,7 +2708,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 14,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: sp_smac_ipv4.0 */
+	{ /* act_tid: 10, , table: sp_smac_ipv4.0 */
 	.description = "sp_smac_ipv4.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4,
@@ -2635,13 +2725,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 16,
 	.result_start_idx = 785,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: sp_smac_ipv6.0 */
+	{ /* act_tid: 10, , table: sp_smac_ipv6.0 */
 	.description = "sp_smac_ipv6.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6,
@@ -2658,13 +2749,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 24,
 	.result_start_idx = 787,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
+	{ /* act_tid: 10, , table: vxlan_encap_rec_cache.rd */
 	.description = "vxlan_encap_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -2687,7 +2779,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 15,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.rd */
+	{ /* act_tid: 10, , table: vxlan_encap_ipv6_rec_cache.rd */
 	.description = "vxlan_encap_ipv6_rec_cache.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -2710,7 +2802,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 16,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 8, , table: control.vxlan_v6_encap */
+	{ /* act_tid: 10, , table: control.vxlan_v6_encap */
 	.description = "control.vxlan_v6_encap",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2724,7 +2816,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 8, , table: int_tun_encap_record.0 */
+	{ /* act_tid: 10, , table: int_tun_encap_record.0 */
 	.description = "int_tun_encap_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -2741,13 +2833,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 789,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 30
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	{ /* act_tid: 10, , table: vxlan_encap_rec_cache.wr */
 	.description = "vxlan_encap_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -2771,7 +2864,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.wr */
+	{ /* act_tid: 10, , table: vxlan_encap_ipv6_rec_cache.wr */
 	.description = "vxlan_encap_ipv6_rec_cache.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_sub_type =
@@ -2795,7 +2888,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 64,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 8, , table: int_full_act_record.0 */
+	{ /* act_tid: 10, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -2812,11 +2905,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 823,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 8, , table: ext_full_act_record_vxlan.0 */
+	{ /* act_tid: 10, , table: ext_full_act_record_vxlan.0 */
 	.description = "ext_full_act_record_vxlan.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_EXT,
@@ -2833,12 +2927,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 849,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
 	.encap_num_fields = 30
 	},
-	{ /* act_tid: 9, , table: control.set_dest_mdata_default */
+	{ /* act_tid: 11, , table: control.set_dest_mdata_default */
 	.description = "control.set_dest_mdata_default",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2856,7 +2951,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_MDATA_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_METADATA }
 	},
-	{ /* act_tid: 9, , table: shared_mirror_record.rd */
+	{ /* act_tid: 11, , table: shared_mirror_record.rd */
 	.description = "shared_mirror_record.rd",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2880,7 +2975,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 17,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 9, , table: control.mirror.0 */
+	{ /* act_tid: 11, , table: control.mirror.0 */
 	.description = "control.mirror.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2893,7 +2988,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 9, , table: multi_shared_mirror_record.rd_a */
+	{ /* act_tid: 11, , table: multi_shared_mirror_record.rd_a */
 	.description = "multi_shared_mirror_record.rd_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2917,7 +3012,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 18,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 9, , table: control.mirror_port_a */
+	{ /* act_tid: 11, , table: control.mirror_port_a */
 	.description = "control.mirror_port_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2930,7 +3025,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 9, , table: control.set_dest_mdata_b */
+	{ /* act_tid: 11, , table: control.set_dest_mdata_b */
 	.description = "control.set_dest_mdata_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2948,7 +3043,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_MDATA_B,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_METADATA }
 	},
-	{ /* act_tid: 9, , table: multi_shared_mirror_record.rd_b */
+	{ /* act_tid: 11, , table: multi_shared_mirror_record.rd_b */
 	.description = "multi_shared_mirror_record.rd_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -2972,7 +3067,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.ident_start_idx = 19,
 	.ident_nums = 1
 	},
-	{ /* act_tid: 9, , table: control.mirror_port_b */
+	{ /* act_tid: 11, , table: control.mirror_port_b */
 	.description = "control.mirror_port_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -2985,7 +3080,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP
 	},
-	{ /* act_tid: 9, , table: control.set_dest_mdata_a */
+	{ /* act_tid: 11, , table: control.set_dest_mdata_a */
 	.description = "control.set_dest_mdata_a",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -3003,7 +3098,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr1 = BNXT_ULP_CF_IDX_MP_MDATA_A,
 		.func_dst_opr = BNXT_ULP_RF_IDX_DEST_METADATA }
 	},
-	{ /* act_tid: 9, , table: control.mirror */
+	{ /* act_tid: 11, , table: control.mirror */
 	.description = "control.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -3017,7 +3112,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID
 	},
-	{ /* act_tid: 9, , table: mirror_tbl.alloc */
+	{ /* act_tid: 11, , table: mirror_tbl.alloc */
 	.description = "mirror_tbl.alloc",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -3036,11 +3131,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 905,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 9, , table: int_flow_counter_tbl.mirror */
+	{ /* act_tid: 11, , table: int_flow_counter_tbl.mirror */
 	.description = "int_flow_counter_tbl.mirror",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -3059,11 +3155,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 911,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 9, , table: int_encap_custom_record.mirr_2_vf */
+	{ /* act_tid: 11, , table: int_encap_custom_record.mirr_2_vf */
 	.description = "int_encap_custom_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -3082,13 +3179,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 912,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 9, , table: int_full_act_record.mirr_2_vf */
+	{ /* act_tid: 11, , table: int_full_act_record.mirr_2_vf */
 	.description = "int_full_act_record.mirr_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -3106,11 +3204,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 923,
 	.result_bit_size = 128,
 	.result_num_fields = 26
 	},
-	{ /* act_tid: 9, , table: mirror_tbl.wr */
+	{ /* act_tid: 11, , table: mirror_tbl.wr */
 	.description = "mirror_tbl.wr",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -3128,11 +3227,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 949,
 	.result_bit_size = 32,
 	.result_num_fields = 6
 	},
-	{ /* act_tid: 9, , table: control.inc_mirror_id */
+	{ /* act_tid: 11, , table: control.inc_mirror_id */
 	.description = "control.inc_mirror_id",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
 	.direction = TF_DIR_TX,
@@ -3152,7 +3252,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 		.func_opr2 = 1,
 		.func_dst_opr = BNXT_ULP_RF_IDX_MIRROR_ID_0 }
 	},
-	{ /* act_tid: 9, , table: multi_shared_mirror_record.wr_b */
+	{ /* act_tid: 11, , table: multi_shared_mirror_record.wr_b */
 	.description = "multi_shared_mirror_record.wr_b",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
 	.resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
@@ -3177,7 +3277,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.result_bit_size = 36,
 	.result_num_fields = 2
 	},
-	{ /* act_tid: 9, , table: int_flow_counter_tbl.0 */
+	{ /* act_tid: 11, , table: int_flow_counter_tbl.0 */
 	.description = "int_flow_counter_tbl.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -3194,11 +3294,12 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 957,
 	.result_bit_size = 64,
 	.result_num_fields = 1
 	},
-	{ /* act_tid: 9, , table: int_encap_custom_record.vf_2_vf */
+	{ /* act_tid: 11, , table: int_encap_custom_record.vf_2_vf */
 	.description = "int_encap_custom_record.vf_2_vf",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -3216,13 +3317,14 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 958,
 	.result_bit_size = 0,
 	.result_num_fields = 0,
 	.encap_num_fields = 11
 	},
-	{ /* act_tid: 9, , table: int_full_act_record.0 */
+	{ /* act_tid: 11, , table: int_full_act_record.0 */
 	.description = "int_full_act_record.0",
 	.resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
 	.resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
@@ -3239,6 +3341,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 	.tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 969,
 	.result_bit_size = 128,
 	.result_num_fields = 26
@@ -3246,37 +3349,37 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
 };
 
 struct bnxt_ulp_mapper_cond_list_info ulp_wh_plus_act_cond_oper_list[] = {
-	/* cond_reject: wh_plus, act_tid: 3 */
+	/* cond_reject: wh_plus, act_tid: 4 */
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 27,
 		.cond_nums = 3
 	},
-	/* cond_reject: wh_plus, act_tid: 3 */
+	/* cond_reject: wh_plus, act_tid: 4 */
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
 		.cond_start_idx = 30,
 		.cond_nums = 5
 	},
-	/* cond_reject: wh_plus, act_tid: 4 */
+	/* cond_reject: wh_plus, act_tid: 5 */
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 49,
 		.cond_nums = 1
 	},
-	/* cond_reject: wh_plus, act_tid: 4 */
+	/* cond_reject: wh_plus, act_tid: 5 */
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 50,
 		.cond_nums = 2
 	},
-	/* cond_reject: wh_plus, act_tid: 7 */
+	/* cond_reject: wh_plus, act_tid: 9 */
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
 		.cond_start_idx = 73,
 		.cond_nums = 3
 	},
-	/* cond_reject: wh_plus, act_tid: 7 */
+	/* cond_reject: wh_plus, act_tid: 9 */
 	{
 		.cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
 		.cond_start_idx = 76,
@@ -3285,7 +3388,7 @@ struct bnxt_ulp_mapper_cond_list_info ulp_wh_plus_act_cond_oper_list[] = {
 };
 
 struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
-	/* cond_reject: wh_plus, act_tid: 1 */
+	/* cond_reject: wh_plus, act_tid: 2 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_SRC
@@ -3334,76 +3437,76 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_METER
 	},
-	/* cond_execute: act_tid: 1, shared_mirror_record.rd:12*/
+	/* cond_execute: act_tid: 2, shared_mirror_record.rd:12*/
 	{
 	.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_ing_0:13*/
+	/* cond_execute: act_tid: 2, control.mirror_ing_0:13*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 1, multi_shared_mirror_record.rd_a:14*/
+	/* cond_execute: act_tid: 2, multi_shared_mirror_record.rd_a:14*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
 	},
-	/* cond_execute: act_tid: 1, control.mirror_port_a:15*/
+	/* cond_execute: act_tid: 2, control.mirror_port_a:15*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 1, control.mirror_port_b:16*/
+	/* cond_execute: act_tid: 2, control.mirror_port_b:16*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 1, int_flow_counter_tbl.mirror:17*/
+	/* cond_execute: act_tid: 2, int_flow_counter_tbl.mirror:17*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 1, int_full_act_record.mirror:18*/
+	/* cond_execute: act_tid: 2, int_full_act_record.mirror:18*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 1, ext_full_act_record.mirror:19*/
+	/* cond_execute: act_tid: 2, ext_full_act_record.mirror:19*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_execute: act_tid: 1, int_flow_counter_tbl.0:20*/
+	/* cond_execute: act_tid: 2, int_flow_counter_tbl.0:20*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 1, int_vtag_encap_record.0:21*/
+	/* cond_execute: act_tid: 2, int_vtag_encap_record.0:21*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
 	},
-	/* cond_execute: act_tid: 1, int_full_act_record.0:22*/
+	/* cond_execute: act_tid: 2, int_full_act_record.0:22*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 1, ext_full_act_record.0:23*/
+	/* cond_execute: act_tid: 2, ext_full_act_record.0:23*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_execute: act_tid: 2, int_flow_counter_tbl.0:24*/
+	/* cond_execute: act_tid: 3, int_flow_counter_tbl.0:24*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 2, int_full_act_record.0:25*/
+	/* cond_execute: act_tid: 3, int_full_act_record.0:25*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 2, ext_full_act_record.0:26*/
+	/* cond_execute: act_tid: 3, ext_full_act_record.0:26*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_reject: wh_plus, act_tid: 3 */
+	/* cond_reject: wh_plus, act_tid: 4 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
@@ -3416,7 +3519,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_TP_DST
 	},
-	/* cond_reject: wh_plus, act_tid: 3 */
+	/* cond_reject: wh_plus, act_tid: 4 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
@@ -3437,7 +3540,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV6_DST
 	},
-	/* cond_execute: act_tid: 3, control.0:35*/
+	/* cond_execute: act_tid: 4, control.0:35*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
@@ -3450,63 +3553,63 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_TP_SRC
 	},
-	/* cond_execute: act_tid: 3, multi_shared_mirror_record.rd_a:38*/
+	/* cond_execute: act_tid: 4, multi_shared_mirror_record.rd_a:38*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
 	},
-	/* cond_execute: act_tid: 3, control.mirror_port_a:39*/
+	/* cond_execute: act_tid: 4, control.mirror_port_a:39*/
 	{
 	.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_port_b:40*/
+	/* cond_execute: act_tid: 4, control.mirror_port_b:40*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 3, int_flow_counter_tbl.mirror:41*/
+	/* cond_execute: act_tid: 4, int_flow_counter_tbl.mirror:41*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 3, int_full_act_record.mirror:42*/
+	/* cond_execute: act_tid: 4, int_full_act_record.mirror:42*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 3, ext_full_act_record.mirror:43*/
+	/* cond_execute: act_tid: 4, ext_full_act_record.mirror:43*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_execute: act_tid: 3, int_flow_counter_tbl.0:44*/
+	/* cond_execute: act_tid: 4, int_flow_counter_tbl.0:44*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 3, act_modify_ipv4_src.0:45*/
+	/* cond_execute: act_tid: 4, act_modify_ipv4_src.0:45*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_SRC
 	},
-	/* cond_execute: act_tid: 3, act_modify_ipv4_dst.0:46*/
+	/* cond_execute: act_tid: 4, act_modify_ipv4_dst.0:46*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
 	},
-	/* cond_execute: act_tid: 3, int_full_act_record.0:47*/
+	/* cond_execute: act_tid: 4, int_full_act_record.0:47*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 3, ext_full_act_record.0:48*/
+	/* cond_execute: act_tid: 4, ext_full_act_record.0:48*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_reject: wh_plus, act_tid: 4 */
+	/* cond_reject: wh_plus, act_tid: 5 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
-	/* cond_reject: wh_plus, act_tid: 4 */
+	/* cond_reject: wh_plus, act_tid: 5 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_RSS
@@ -3515,22 +3618,22 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
-	/* cond_execute: act_tid: 4, int_flow_counter_tbl.0:52*/
+	/* cond_execute: act_tid: 5, int_flow_counter_tbl.0:52*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 4, vnic_interface_rss_config.0:53*/
+	/* cond_execute: act_tid: 5, vnic_interface_rss_config.0:53*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* cond_execute: act_tid: 4, vnic_interface_queue_config.0:54*/
+	/* cond_execute: act_tid: 5, vnic_interface_queue_config.0:54*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
 	},
-	/* cond_execute: act_tid: 4, int_full_act_record.0:55*/
+	/* cond_execute: act_tid: 5, int_full_act_record.0:55*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_QUEUE
@@ -3539,51 +3642,51 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_RSS
 	},
-	/* cond_execute: act_tid: 6, shared_mirror_record.rd:57*/
+	/* cond_execute: act_tid: 8, shared_mirror_record.rd:57*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
-	/* cond_execute: act_tid: 6, control.mirror.0:58*/
+	/* cond_execute: act_tid: 8, control.mirror.0:58*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 6, multi_shared_mirror_record.rd_a:59*/
+	/* cond_execute: act_tid: 8, multi_shared_mirror_record.rd_a:59*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
 	},
-	/* cond_execute: act_tid: 6, control.mirror_port_a:60*/
+	/* cond_execute: act_tid: 8, control.mirror_port_a:60*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 6, control.mirror_port_b:61*/
+	/* cond_execute: act_tid: 8, control.mirror_port_b:61*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 6, control.set_dest_is_b_vfrep:62*/
+	/* cond_execute: act_tid: 8, control.set_dest_is_b_vfrep:62*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_IDX_MP_B_IS_VFREP
 	},
-	/* cond_execute: act_tid: 6, int_flow_counter_tbl.mirror:63*/
+	/* cond_execute: act_tid: 8, int_flow_counter_tbl.mirror:63*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 6, int_full_act_record.mirr_2_vf:64*/
+	/* cond_execute: act_tid: 8, int_full_act_record.mirr_2_vf:64*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 6, int_flow_counter_tbl.0:65*/
+	/* cond_execute: act_tid: 8, int_flow_counter_tbl.0:65*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 6, int_vtag_encap_record.0:66*/
+	/* cond_execute: act_tid: 8, int_vtag_encap_record.0:66*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
@@ -3591,11 +3694,11 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
 	},
-	/* cond_execute: act_tid: 6, int_full_act_record.0:68*/
+	/* cond_execute: act_tid: 8, int_full_act_record.0:68*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 6, ext_full_act_record.no_tag:69*/
+	/* cond_execute: act_tid: 8, ext_full_act_record.no_tag:69*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
@@ -3603,7 +3706,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
 	},
-	/* cond_execute: act_tid: 6, ext_full_act_record.one_tag:71*/
+	/* cond_execute: act_tid: 8, ext_full_act_record.one_tag:71*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
@@ -3611,7 +3714,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
 	},
-	/* cond_reject: wh_plus, act_tid: 7 */
+	/* cond_reject: wh_plus, act_tid: 9 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
@@ -3624,7 +3727,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_TP_DST
 	},
-	/* cond_reject: wh_plus, act_tid: 7 */
+	/* cond_reject: wh_plus, act_tid: 9 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
@@ -3645,7 +3748,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV6_DST
 	},
-	/* cond_execute: act_tid: 7, control.0:81*/
+	/* cond_execute: act_tid: 9, control.0:81*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
@@ -3658,69 +3761,69 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_TP_SRC
 	},
-	/* cond_execute: act_tid: 7, shared_mirror_record.rd:84*/
+	/* cond_execute: act_tid: 9, shared_mirror_record.rd:84*/
 	{
 	.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.0:85*/
+	/* cond_execute: act_tid: 9, control.mirror.0:85*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 7, multi_shared_mirror_record.rd_a:86*/
+	/* cond_execute: act_tid: 9, multi_shared_mirror_record.rd_a:86*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
 	},
-	/* cond_execute: act_tid: 7, control.mirror_port_a:87*/
+	/* cond_execute: act_tid: 9, control.mirror_port_a:87*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 7, control.mirror_port_b:88*/
+	/* cond_execute: act_tid: 9, control.mirror_port_b:88*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 7, control.set_dest_is_b_vfrep:89*/
+	/* cond_execute: act_tid: 9, control.set_dest_is_b_vfrep:89*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_IDX_MP_B_IS_VFREP
 	},
-	/* cond_execute: act_tid: 7, int_flow_counter_tbl.mirror:90*/
+	/* cond_execute: act_tid: 9, int_flow_counter_tbl.mirror:90*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 7, int_full_act_record.mirr_2_vf:91*/
+	/* cond_execute: act_tid: 9, int_full_act_record.mirr_2_vf:91*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 7, int_flow_counter_tbl.0:92*/
+	/* cond_execute: act_tid: 9, int_flow_counter_tbl.0:92*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 7, act_modify_ipv4_src.0:93*/
+	/* cond_execute: act_tid: 9, act_modify_ipv4_src.0:93*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_SRC
 	},
-	/* cond_execute: act_tid: 7, act_modify_ipv4_dst.0:94*/
+	/* cond_execute: act_tid: 9, act_modify_ipv4_dst.0:94*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
 	},
-	/* cond_execute: act_tid: 7, int_full_act_record.0:95*/
+	/* cond_execute: act_tid: 9, int_full_act_record.0:95*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 7, ext_full_act_record.0:96*/
+	/* cond_execute: act_tid: 9, ext_full_act_record.0:96*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_reject: wh_plus, act_tid: 8 */
+	/* cond_reject: wh_plus, act_tid: 10 */
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_DST
@@ -3729,51 +3832,51 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SET_MAC_SRC
 	},
-	/* cond_execute: act_tid: 8, shared_mirror_record.rd:99*/
+	/* cond_execute: act_tid: 10, shared_mirror_record.rd:99*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
-	/* cond_execute: act_tid: 8, control.mirror.0:100*/
+	/* cond_execute: act_tid: 10, control.mirror.0:100*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, multi_shared_mirror_record.rd_a:101*/
+	/* cond_execute: act_tid: 10, multi_shared_mirror_record.rd_a:101*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
 	},
-	/* cond_execute: act_tid: 8, control.mirror_port_a:102*/
+	/* cond_execute: act_tid: 10, control.mirror_port_a:102*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, control.mirror_port_b:103*/
+	/* cond_execute: act_tid: 10, control.mirror_port_b:103*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, control.set_dest_is_b_vfrep:104*/
+	/* cond_execute: act_tid: 10, control.set_dest_is_b_vfrep:104*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
 	.cond_operand = BNXT_ULP_CF_IDX_MP_B_IS_VFREP
 	},
-	/* cond_execute: act_tid: 8, int_flow_counter_tbl.mirror:105*/
+	/* cond_execute: act_tid: 10, int_flow_counter_tbl.mirror:105*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 8, int_full_act_record.mirr_2_vf:106*/
+	/* cond_execute: act_tid: 10, int_full_act_record.mirr_2_vf:106*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 8, int_flow_counter_tbl.0:107*/
+	/* cond_execute: act_tid: 10, int_flow_counter_tbl.0:107*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 8, sp_smac_ipv4.0:108*/
+	/* cond_execute: act_tid: 10, sp_smac_ipv4.0:108*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -3782,7 +3885,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
 	},
-	/* cond_execute: act_tid: 8, sp_smac_ipv6.0:110*/
+	/* cond_execute: act_tid: 10, sp_smac_ipv6.0:110*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -3791,7 +3894,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_rec_cache.rd:112*/
+	/* cond_execute: act_tid: 10, vxlan_encap_rec_cache.rd:112*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -3800,7 +3903,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_ipv6_rec_cache.rd:114*/
+	/* cond_execute: act_tid: 10, vxlan_encap_ipv6_rec_cache.rd:114*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -3809,16 +3912,16 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
 	},
-	/* cond_execute: act_tid: 8, control.vxlan_v6_encap:116*/
+	/* cond_execute: act_tid: 10, control.vxlan_v6_encap:116*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 8, int_tun_encap_record.0:117*/
+	/* cond_execute: act_tid: 10, int_tun_encap_record.0:117*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_rec_cache.wr:118*/
+	/* cond_execute: act_tid: 10, vxlan_encap_rec_cache.wr:118*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
@@ -3827,7 +3930,7 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
 	},
-	/* cond_execute: act_tid: 8, vxlan_encap_ipv6_rec_cache.wr:120*/
+	/* cond_execute: act_tid: 10, vxlan_encap_ipv6_rec_cache.wr:120*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
@@ -3836,20 +3939,20 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
 	},
-	/* cond_execute: act_tid: 8, int_full_act_record.0:122*/
+	/* cond_execute: act_tid: 10, int_full_act_record.0:122*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 8, ext_full_act_record_vxlan.0:123*/
+	/* cond_execute: act_tid: 10, ext_full_act_record_vxlan.0:123*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
 	},
-	/* cond_execute: act_tid: 9, shared_mirror_record.rd:124*/
+	/* cond_execute: act_tid: 11, shared_mirror_record.rd:124*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
 	},
-	/* cond_execute: act_tid: 9, control.mirror.0:125*/
+	/* cond_execute: act_tid: 11, control.mirror.0:125*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
@@ -3858,43 +3961,43 @@ struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 9, multi_shared_mirror_record.rd_a:127*/
+	/* cond_execute: act_tid: 11, multi_shared_mirror_record.rd_a:127*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_MULTIPLE_PORT
 	},
-	/* cond_execute: act_tid: 9, control.mirror_port_a:128*/
+	/* cond_execute: act_tid: 11, control.mirror_port_a:128*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 9, control.mirror_port_b:129*/
+	/* cond_execute: act_tid: 11, control.mirror_port_b:129*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
 	.cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
 	},
-	/* cond_execute: act_tid: 9, int_flow_counter_tbl.mirror:130*/
+	/* cond_execute: act_tid: 11, int_flow_counter_tbl.mirror:130*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 9, int_full_act_record.mirr_2_vf:131*/
+	/* cond_execute: act_tid: 11, int_full_act_record.mirr_2_vf:131*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	},
-	/* cond_execute: act_tid: 9, int_flow_counter_tbl.0:132*/
+	/* cond_execute: act_tid: 11, int_flow_counter_tbl.0:132*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
 	.cond_operand = BNXT_ULP_ACT_BIT_COUNT
 	},
-	/* cond_execute: act_tid: 9, int_full_act_record.0:133*/
+	/* cond_execute: act_tid: 11, int_full_act_record.0:133*/
 	{
 	.cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
 	}
 };
 
 struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
-	/* act_tid: 1, , table: shared_mirror_record.rd */
+	/* act_tid: 2, , table: shared_mirror_record.rd */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -3914,7 +4017,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 1, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 2, , table: multi_shared_mirror_record.rd_a */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -3934,7 +4037,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_A & 0xff}
 		}
 	},
-	/* act_tid: 1, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 2, , table: multi_shared_mirror_record.rd_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -3954,7 +4057,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 1, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 2, , table: multi_shared_mirror_record.wr_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -3974,7 +4077,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 2, , table: shared_mirror_record.wr */
+	/* act_tid: 3, , table: shared_mirror_record.wr */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -3994,7 +4097,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
 		}
 	},
-	/* act_tid: 3, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 4, , table: multi_shared_mirror_record.rd_a */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4014,7 +4117,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_A & 0xff}
 		}
 	},
-	/* act_tid: 3, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 4, , table: multi_shared_mirror_record.rd_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4034,7 +4137,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 3, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 4, , table: multi_shared_mirror_record.wr_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4054,7 +4157,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: shared_mirror_record.rd */
+	/* act_tid: 8, , table: shared_mirror_record.rd */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -4074,7 +4177,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 8, , table: multi_shared_mirror_record.rd_a */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4094,7 +4197,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_A & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 8, , table: multi_shared_mirror_record.rd_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4114,7 +4217,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 6, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 8, , table: multi_shared_mirror_record.wr_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4134,7 +4237,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 7, , table: shared_mirror_record.rd */
+	/* act_tid: 9, , table: shared_mirror_record.rd */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -4154,7 +4257,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 7, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 9, , table: multi_shared_mirror_record.rd_a */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4174,7 +4277,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_A & 0xff}
 		}
 	},
-	/* act_tid: 7, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 9, , table: multi_shared_mirror_record.rd_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4194,7 +4297,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 7, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 9, , table: multi_shared_mirror_record.wr_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4214,7 +4317,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: shared_mirror_record.rd */
+	/* act_tid: 10, , table: shared_mirror_record.rd */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -4234,7 +4337,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 10, , table: multi_shared_mirror_record.rd_a */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4254,7 +4357,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_A & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 10, , table: multi_shared_mirror_record.rd_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4274,7 +4377,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 10, , table: multi_shared_mirror_record.wr_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4294,7 +4397,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: port_table.sp_rec_rd */
+	/* act_tid: 10, , table: port_table.sp_rec_rd */
 	{
 	.field_info_mask = {
 		.description = "dev.port_id",
@@ -4314,7 +4417,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
+	/* act_tid: 10, , table: vxlan_encap_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4436,7 +4539,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.rd */
+	/* act_tid: 10, , table: vxlan_encap_ipv6_rec_cache.rd */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4570,7 +4673,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	/* act_tid: 10, , table: vxlan_encap_rec_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4692,7 +4795,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.wr */
+	/* act_tid: 10, , table: vxlan_encap_ipv6_rec_cache.wr */
 	{
 	.field_info_mask = {
 		.description = "dmac",
@@ -4826,7 +4929,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 		}
 	},
-	/* act_tid: 9, , table: shared_mirror_record.rd */
+	/* act_tid: 11, , table: shared_mirror_record.rd */
 	{
 	.field_info_mask = {
 		.description = "shared_index",
@@ -4846,7 +4949,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
 		}
 	},
-	/* act_tid: 9, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 11, , table: multi_shared_mirror_record.rd_a */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4866,7 +4969,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_A & 0xff}
 		}
 	},
-	/* act_tid: 9, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 11, , table: multi_shared_mirror_record.rd_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4886,7 +4989,7 @@ struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
 		BNXT_ULP_CF_IDX_MP_PORT_B & 0xff}
 		}
 	},
-	/* act_tid: 9, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 11, , table: multi_shared_mirror_record.wr_b */
 	{
 	.field_info_mask = {
 		.description = "port_index",
@@ -4912,7 +5015,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_key_ext_list[] = {
 };
 
 struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
-	/* act_tid: 1, , table: mirror_tbl.alloc */
+	/* act_tid: 2, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -4951,14 +5054,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: int_flow_counter_tbl.mirror */
+	/* act_tid: 2, , table: int_flow_counter_tbl.mirror */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: int_full_act_record.mirror */
+	/* act_tid: 2, , table: int_full_act_record.mirror */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -5130,7 +5233,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: ext_full_act_record.mirror */
+	/* act_tid: 2, , table: ext_full_act_record.mirror */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -5379,7 +5482,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: mirror_tbl.wr */
+	/* act_tid: 2, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -5421,7 +5524,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 2, , table: multi_shared_mirror_record.wr_b */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -5440,14 +5543,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
-	/* act_tid: 1, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 2, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: int_vtag_encap_record.0 */
+	/* act_tid: 2, , table: int_vtag_encap_record.0 */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -5527,7 +5630,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
 	},
-	/* act_tid: 1, , table: int_full_act_record.0 */
+	/* act_tid: 2, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -5778,7 +5881,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 1, , table: ext_full_act_record.0 */
+	/* act_tid: 2, , table: ext_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -6094,7 +6197,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: mirror_tbl.alloc */
+	/* act_tid: 3, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -6133,14 +6236,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 3, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: int_full_act_record.0 */
+	/* act_tid: 3, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -6312,7 +6415,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: ext_full_act_record.0 */
+	/* act_tid: 3, , table: ext_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -6561,7 +6664,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: mirror_tbl.wr */
+	/* act_tid: 3, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -6603,7 +6706,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 2, , table: shared_mirror_record.wr */
+	/* act_tid: 3, , table: shared_mirror_record.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -6621,7 +6724,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opr2 = {
 	1}
 	},
-	/* act_tid: 3, , table: mirror_tbl.alloc */
+	/* act_tid: 4, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -6660,14 +6763,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: int_flow_counter_tbl.mirror */
+	/* act_tid: 4, , table: int_flow_counter_tbl.mirror */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: int_full_act_record.mirror */
+	/* act_tid: 4, , table: int_full_act_record.mirror */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -6839,7 +6942,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: ext_full_act_record.mirror */
+	/* act_tid: 4, , table: ext_full_act_record.mirror */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -7088,7 +7191,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: mirror_tbl.wr */
+	/* act_tid: 4, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -7130,7 +7233,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 4, , table: multi_shared_mirror_record.wr_b */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -7149,14 +7252,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
-	/* act_tid: 3, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 4, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: act_modify_ipv4_src.0 */
+	/* act_tid: 4, , table: act_modify_ipv4_src.0 */
 	{
 	.description = "ipv4_addr",
 	.field_bit_size = 32,
@@ -7166,7 +7269,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}
 	},
-	/* act_tid: 3, , table: act_modify_ipv4_dst.0 */
+	/* act_tid: 4, , table: act_modify_ipv4_dst.0 */
 	{
 	.description = "ipv4_addr",
 	.field_bit_size = 32,
@@ -7176,7 +7279,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}
 	},
-	/* act_tid: 3, , table: int_encap_mac_record.0 */
+	/* act_tid: 4, , table: int_encap_mac_record.0 */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -7247,7 +7350,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: int_full_act_record.0 */
+	/* act_tid: 4, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -7480,7 +7583,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 3, , table: ext_full_act_record.0 */
+	/* act_tid: 4, , table: ext_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -7783,16 +7886,16 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 4, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 5, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 4, , table: vnic_interface_rss_config.0 */
-	/* act_tid: 4, , table: vnic_interface_queue_config.0 */
-	/* act_tid: 4, , table: int_full_act_record.0 */
+	/* act_tid: 5, , table: vnic_interface_rss_config.0 */
+	/* act_tid: 5, , table: vnic_interface_queue_config.0 */
+	/* act_tid: 5, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -7964,7 +8067,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 4, , table: int_full_act_record.1 */
+	/* act_tid: 5, , table: int_full_act_record.1 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -8136,7 +8239,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: mirror_tbl.alloc */
+	/* act_tid: 8, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -8175,14 +8278,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: int_flow_counter_tbl.mirror */
+	/* act_tid: 8, , table: int_flow_counter_tbl.mirror */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: int_encap_custom_record.mirr_2_vf */
+	/* act_tid: 8, , table: int_encap_custom_record.mirr_2_vf */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -8275,7 +8378,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
 		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff}
 	},
-	/* act_tid: 6, , table: int_full_act_record.mirr_2_vf */
+	/* act_tid: 8, , table: int_full_act_record.mirr_2_vf */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -8450,7 +8553,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: mirror_tbl.wr */
+	/* act_tid: 8, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -8492,7 +8595,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 8, , table: multi_shared_mirror_record.wr_b */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -8511,14 +8614,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
-	/* act_tid: 6, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 8, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: int_vtag_encap_record.0 */
+	/* act_tid: 8, , table: int_vtag_encap_record.0 */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -8598,7 +8701,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
 	},
-	/* act_tid: 6, , table: int_full_act_record.0 */
+	/* act_tid: 8, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -8791,7 +8894,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: ext_full_act_record.no_tag */
+	/* act_tid: 8, , table: ext_full_act_record.no_tag */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -9049,7 +9152,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 6, , table: ext_full_act_record.one_tag */
+	/* act_tid: 8, , table: ext_full_act_record.one_tag */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -9327,7 +9430,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
 	},
-	/* act_tid: 7, , table: mirror_tbl.alloc */
+	/* act_tid: 9, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -9366,14 +9469,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: int_flow_counter_tbl.mirror */
+	/* act_tid: 9, , table: int_flow_counter_tbl.mirror */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: int_encap_custom_record.mirr_2_vf */
+	/* act_tid: 9, , table: int_encap_custom_record.mirr_2_vf */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -9466,7 +9569,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
 		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff}
 	},
-	/* act_tid: 7, , table: int_full_act_record.mirr_2_vf */
+	/* act_tid: 9, , table: int_full_act_record.mirr_2_vf */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -9641,7 +9744,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: mirror_tbl.wr */
+	/* act_tid: 9, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -9683,7 +9786,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 9, , table: multi_shared_mirror_record.wr_b */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -9702,14 +9805,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
-	/* act_tid: 7, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 9, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: act_modify_ipv4_src.0 */
+	/* act_tid: 9, , table: act_modify_ipv4_src.0 */
 	{
 	.description = "ipv4_addr",
 	.field_bit_size = 32,
@@ -9719,7 +9822,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}
 	},
-	/* act_tid: 7, , table: act_modify_ipv4_dst.0 */
+	/* act_tid: 9, , table: act_modify_ipv4_dst.0 */
 	{
 	.description = "ipv4_addr",
 	.field_bit_size = 32,
@@ -9729,7 +9832,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
 	BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}
 	},
-	/* act_tid: 7, , table: int_encap_mac_record.dummy */
+	/* act_tid: 9, , table: int_encap_mac_record.dummy */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -9800,7 +9903,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: int_full_act_record.0 */
+	/* act_tid: 9, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -10033,7 +10136,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 7, , table: ext_full_act_record.0 */
+	/* act_tid: 9, , table: ext_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -10336,7 +10439,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: mirror_tbl.alloc */
+	/* act_tid: 10, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -10375,14 +10478,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: int_flow_counter_tbl.mirror */
+	/* act_tid: 10, , table: int_flow_counter_tbl.mirror */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: int_encap_custom_record.mirr_2_vf */
+	/* act_tid: 10, , table: int_encap_custom_record.mirr_2_vf */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -10475,7 +10578,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
 		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff}
 	},
-	/* act_tid: 8, , table: int_full_act_record.mirr_2_vf */
+	/* act_tid: 10, , table: int_full_act_record.mirr_2_vf */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -10650,7 +10753,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: mirror_tbl.wr */
+	/* act_tid: 10, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -10692,7 +10795,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 10, , table: multi_shared_mirror_record.wr_b */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -10711,14 +10814,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
-	/* act_tid: 8, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 10, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: sp_smac_ipv4.0 */
+	/* act_tid: 10, , table: sp_smac_ipv4.0 */
 	{
 	.description = "smac",
 	.field_bit_size = 48,
@@ -10737,7 +10840,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff}
 	},
-	/* act_tid: 8, , table: sp_smac_ipv6.0 */
+	/* act_tid: 10, , table: sp_smac_ipv6.0 */
 	{
 	.description = "smac",
 	.field_bit_size = 48,
@@ -10756,7 +10859,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_ENC_FIELD_IPV6_SADDR >> 8) & 0xff,
 	BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff}
 	},
-	/* act_tid: 8, , table: int_tun_encap_record.0 */
+	/* act_tid: 10, , table: int_tun_encap_record.0 */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -11259,7 +11362,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.wr */
+	/* act_tid: 10, , table: vxlan_encap_rec_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -11278,7 +11381,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.wr */
+	/* act_tid: 10, , table: vxlan_encap_ipv6_rec_cache.wr */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -11297,7 +11400,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
 	},
-	/* act_tid: 8, , table: int_full_act_record.0 */
+	/* act_tid: 10, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -11475,7 +11578,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 8, , table: ext_full_act_record_vxlan.0 */
+	/* act_tid: 10, , table: ext_full_act_record_vxlan.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -12152,7 +12255,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff},
 	.field_src3 = BNXT_ULP_FIELD_SRC_SKIP
 	},
-	/* act_tid: 9, , table: mirror_tbl.alloc */
+	/* act_tid: 11, , table: mirror_tbl.alloc */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -12191,14 +12294,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 9, , table: int_flow_counter_tbl.mirror */
+	/* act_tid: 11, , table: int_flow_counter_tbl.mirror */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 9, , table: int_encap_custom_record.mirr_2_vf */
+	/* act_tid: 11, , table: int_encap_custom_record.mirr_2_vf */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -12291,7 +12394,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 		(BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA >> 8) & 0xff,
 		BNXT_ULP_PORT_TABLE_VF_FUNC_METADATA & 0xff}
 	},
-	/* act_tid: 9, , table: int_full_act_record.mirr_2_vf */
+	/* act_tid: 11, , table: int_full_act_record.mirr_2_vf */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -12466,7 +12569,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 9, , table: mirror_tbl.wr */
+	/* act_tid: 11, , table: mirror_tbl.wr */
 	{
 	.description = "act_rec_ptr",
 	.field_bit_size = 16,
@@ -12508,7 +12611,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 9, , table: multi_shared_mirror_record.wr_b */
+	/* act_tid: 11, , table: multi_shared_mirror_record.wr_b */
 	{
 	.description = "rid",
 	.field_bit_size = 32,
@@ -12527,14 +12630,14 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
 	},
-	/* act_tid: 9, , table: int_flow_counter_tbl.0 */
+	/* act_tid: 11, , table: int_flow_counter_tbl.0 */
 	{
 	.description = "count",
 	.field_bit_size = 64,
 	.field_opc = BNXT_ULP_FIELD_OPC_SRC1,
 	.field_src1 = BNXT_ULP_FIELD_SRC_ZERO
 	},
-	/* act_tid: 9, , table: int_encap_custom_record.vf_2_vf */
+	/* act_tid: 11, , table: int_encap_custom_record.vf_2_vf */
 	{
 	.description = "ecv_valid",
 	.field_bit_size = 1,
@@ -12625,7 +12728,7 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 	(BNXT_ULP_RF_IDX_DEST_METADATA >> 8) & 0xff,
 	BNXT_ULP_RF_IDX_DEST_METADATA & 0xff}
 	},
-	/* act_tid: 9, , table: int_full_act_record.0 */
+	/* act_tid: 11, , table: int_full_act_record.0 */
 	{
 	.description = "flow_cntr_ptr",
 	.field_bit_size = 14,
@@ -12806,140 +12909,140 @@ struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
 };
 
 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_act_ident_list[] = {
-	/* act_tid: 1, , table: shared_mirror_record.rd */
+	/* act_tid: 2, , table: shared_mirror_record.rd */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 1, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 2, , table: multi_shared_mirror_record.rd_a */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 1, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 2, , table: multi_shared_mirror_record.rd_b */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 3, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 4, , table: multi_shared_mirror_record.rd_a */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 3, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 4, , table: multi_shared_mirror_record.rd_b */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 6, , table: shared_mirror_record.rd */
+	/* act_tid: 8, , table: shared_mirror_record.rd */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 6, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 8, , table: multi_shared_mirror_record.rd_a */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 6, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 8, , table: multi_shared_mirror_record.rd_b */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 7, , table: shared_mirror_record.rd */
+	/* act_tid: 9, , table: shared_mirror_record.rd */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 7, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 9, , table: multi_shared_mirror_record.rd_a */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 7, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 9, , table: multi_shared_mirror_record.rd_b */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: shared_mirror_record.rd */
+	/* act_tid: 10, , table: shared_mirror_record.rd */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 10, , table: multi_shared_mirror_record.rd_a */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 10, , table: multi_shared_mirror_record.rd_b */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: port_table.sp_rec_rd */
+	/* act_tid: 10, , table: port_table.sp_rec_rd */
 	{
 	.description = "sp_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
 	.ident_bit_size = 16,
 	.ident_bit_pos = 163
 	},
-	/* act_tid: 8, , table: vxlan_encap_rec_cache.rd */
+	/* act_tid: 10, , table: vxlan_encap_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 8, , table: vxlan_encap_ipv6_rec_cache.rd */
+	/* act_tid: 10, , table: vxlan_encap_ipv6_rec_cache.rd */
 	{
 	.description = "enc_rec_ptr",
 	.regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
 	.ident_bit_size = 32,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 9, , table: shared_mirror_record.rd */
+	/* act_tid: 11, , table: shared_mirror_record.rd */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 9, , table: multi_shared_mirror_record.rd_a */
+	/* act_tid: 11, , table: multi_shared_mirror_record.rd_a */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
 	.ident_bit_size = 4,
 	.ident_bit_pos = 32
 	},
-	/* act_tid: 9, , table: multi_shared_mirror_record.rd_b */
+	/* act_tid: 11, , table: multi_shared_mirror_record.rd_b */
 	{
 	.description = "mirror_id",
 	.regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
diff --git a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c
index e1bbae3313..fff19939f8 100644
--- a/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c
+++ b/drivers/net/bnxt/tf_ulp/generic_templates/ulp_template_db_wh_plus_class.c
@@ -121,6 +121,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.ident_start_idx = 1,
 	.ident_nums = 1
 	},
@@ -216,6 +217,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 11,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -308,6 +310,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.pri_operand = 1,
 	.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 = 34,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -466,6 +469,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 104,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -576,6 +580,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 127,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -604,6 +609,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 170,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -632,6 +638,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 213,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -883,6 +890,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 331,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -992,6 +1000,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 354,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -1020,6 +1029,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 397,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -1164,6 +1174,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 282,
 	.result_bit_size = 128,
 	.result_num_fields = 26
@@ -1225,6 +1236,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 486,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -1347,6 +1359,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 329,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
@@ -1407,6 +1420,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 501,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -1496,6 +1510,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.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 = 516,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -1548,6 +1563,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 391,
 	.result_bit_size = 128,
 	.result_num_fields = 26,
@@ -1667,6 +1683,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 420,
 	.result_bit_size = 0,
@@ -1691,6 +1708,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 431,
 	.result_bit_size = 128,
 	.result_num_fields = 26
@@ -1774,6 +1792,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 533,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -1804,6 +1823,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.pri_operand = 1,
 	.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 = 546,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -1834,6 +1854,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.pri_operand = 1,
 	.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 = 589,
 	.blob_key_bit_size = 81,
 	.key_bit_size = 81,
@@ -1864,6 +1885,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.pri_operand = 0,
 	.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 = 632,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -1954,6 +1976,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 16,
 	.result_start_idx = 525,
 	.result_bit_size = 0,
@@ -1978,6 +2001,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 24,
 	.result_start_idx = 527,
 	.result_bit_size = 0,
@@ -2002,6 +2026,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.fdb_operand = BNXT_ULP_RF_IDX_RID,
 	.pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
 	.pri_operand = 0,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.key_start_idx = 649,
 	.blob_key_bit_size = 167,
 	.key_bit_size = 167,
@@ -2031,6 +2056,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_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_PUSH_AND_SET_VFR_FLAG,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 542,
 	.result_bit_size = 128,
 	.result_num_fields = 26
@@ -2078,6 +2104,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.record_size = 64,
 	.result_start_idx = 577,
 	.result_bit_size = 0,
@@ -2102,6 +2129,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
 	.key_recipe_opcode = BNXT_ULP_KEY_RECIPE_OPC_NOP,
 	.fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
 	.mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 588,
 	.result_bit_size = 128,
 	.result_num_fields = 26
@@ -2125,6 +2153,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_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,
+	.track_type = CFA_TRACK_TYPE_SID,
 	.result_start_idx = 614,
 	.result_bit_size = 128,
 	.result_num_fields = 26
diff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper.c b/drivers/net/bnxt/tf_ulp/ulp_mapper.c
index 3bf0307980..dc43d1c810 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_mapper.c
+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper.c
@@ -171,10 +171,13 @@ ulp_mapper_resource_ident_allocate(struct bnxt_ulp_context *ulp_ctx,
 	session_type = shared ?  BNXT_ULP_SESSION_TYPE_SHARED :
 				 BNXT_ULP_SESSION_TYPE_DEFAULT;
 
+	/* Global identifiers are tracked by session */
 	rc = op->ulp_mapper_core_ident_alloc_process(ulp_ctx,
 						     session_type,
 						     glb_res->resource_type,
-						     glb_res->direction, &id);
+						     glb_res->direction,
+						     CFA_TRACK_TYPE_SID,
+						     &id);
 	if (rc)
 		return rc;
 
@@ -751,7 +754,9 @@ ulp_mapper_ident_process(struct bnxt_ulp_mapper_parms *parms,
 	rc = op->ulp_mapper_core_ident_alloc_process(parms->ulp_ctx,
 						     tbl->session_type,
 						     ident->ident_type,
-						     tbl->direction, &id);
+						     tbl->direction,
+						     tbl->track_type,
+						     &id);
 	if (rc) {
 		BNXT_DRV_DBG(ERR, "identifier process failed\n");
 		return rc;
diff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper.h b/drivers/net/bnxt/tf_ulp/ulp_mapper.h
index 8af863d70b..0f43e2a8b5 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_mapper.h
+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper.h
@@ -135,6 +135,7 @@ struct ulp_mapper_core_ops {
 					       uint32_t session_type,
 					       uint16_t ident_type,
 					       uint8_t direction,
+					       enum cfa_track_type tt,
 					       uint64_t *identifier_id);
 
 	int32_t
diff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper_tf.c b/drivers/net/bnxt/tf_ulp/ulp_mapper_tf.c
index c16261047d..de04deed92 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_mapper_tf.c
+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper_tf.c
@@ -1048,6 +1048,7 @@ ulp_mapper_tf_ident_alloc(struct bnxt_ulp_context *ulp_ctx,
 			  uint32_t session_type,
 			  uint16_t ident_type,
 			  uint8_t direction,
+			  enum cfa_track_type tt __rte_unused,
 			  uint64_t *identifier_id)
 {
 	struct tf_alloc_identifier_parms iparms = {0};
diff --git a/drivers/net/bnxt/tf_ulp/ulp_mapper_tfc.c b/drivers/net/bnxt/tf_ulp/ulp_mapper_tfc.c
index 834516dc56..b05cf6a16c 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_mapper_tfc.c
+++ b/drivers/net/bnxt/tf_ulp/ulp_mapper_tfc.c
@@ -161,7 +161,7 @@ ulp_mapper_tfc_tcam_tbl_process(struct bnxt_ulp_mapper_parms *parms,
 	struct ulp_blob tkey, tmask; /* transform key and mask */
 	uint32_t alloc_tcam = 0, alloc_ident = 0, write_tcam = 0;
 	struct ulp_flow_db_res_params fid_parms = { 0 };
-	enum cfa_track_type tt = CFA_TRACK_TYPE_SID;
+	enum cfa_track_type tt = tbl->track_type;
 	enum bnxt_ulp_byte_order key_byte_order;
 	enum bnxt_ulp_byte_order res_byte_order;
 	struct bnxt_ulp_mapper_key_info	*kflds;
@@ -753,7 +753,7 @@ ulp_mapper_tfc_index_tbl_process(struct bnxt_ulp_mapper_parms *parms,
 	bool alloc = false, write = false, global = false, regfile = false;
 	struct bnxt_ulp_glb_resource_info glb_res = { 0 };
 	uint16_t bit_size, wordlen = 0, tmplen = 0;
-	enum cfa_track_type tt = CFA_TRACK_TYPE_SID;
+	enum cfa_track_type tt = tbl->track_type;
 	struct ulp_flow_db_res_params fid_parms;
 	struct tfc_idx_tbl_info tbl_info = { 0 };
 	struct tfc *tfcp = NULL;
@@ -1527,11 +1527,11 @@ ulp_mapper_tfc_ident_alloc(struct bnxt_ulp_context *ulp_ctx,
 			   uint32_t session_type __rte_unused,
 			   uint16_t ident_type,
 			   uint8_t direction,
+			   enum cfa_track_type tt,
 			   uint64_t *identifier_id)
 {
 	struct tfc *tfcp = NULL;
 	struct tfc_identifier_info ident_info = { 0 };
-	enum cfa_track_type tt = CFA_TRACK_TYPE_SID;
 	int32_t rc = 0;
 	uint16_t fw_fid = 0;
 
diff --git a/drivers/net/bnxt/tf_ulp/ulp_matcher.c b/drivers/net/bnxt/tf_ulp/ulp_matcher.c
index 06fdaccbd4..4b4a4e21ea 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_matcher.c
+++ b/drivers/net/bnxt/tf_ulp/ulp_matcher.c
@@ -175,6 +175,7 @@ ulp_matcher_pattern_match(struct ulp_rte_parser_params *params,
 	struct bnxt_ulp_matcher_data *matcher_data;
 	uint32_t class_match_idx = 0;
 	uint32_t hash_idx;
+	uint64_t bits = 0;
 
 	/* Get the matcher data for hash lookup  */
 	matcher_data = (struct bnxt_ulp_matcher_data *)
@@ -184,6 +185,9 @@ ulp_matcher_pattern_match(struct ulp_rte_parser_params *params,
 		return -EINVAL;
 	}
 
+	bits = bnxt_ulp_cntxt_ptr2_default_class_bits_get(params->ulp_ctx);
+	params->hdr_bitmap.bits |= bits;
+
 	/* search the matcher hash db for the entry  */
 	if (ulp_matcher_class_hash_lookup(matcher_data, params,
 					  &hash_idx) == -ENOENT) {
@@ -290,6 +294,7 @@ ulp_matcher_action_match(struct ulp_rte_parser_params *params,
 {
 	struct bnxt_ulp_matcher_data *matcher_data;
 	uint32_t act_tmpl_idx = 0;
+	uint64_t bits = 0;
 
 	/* Get the matcher data for hash lookup  */
 	matcher_data = (struct bnxt_ulp_matcher_data *)
@@ -299,6 +304,9 @@ ulp_matcher_action_match(struct ulp_rte_parser_params *params,
 		return -EINVAL;
 	}
 
+	bits = bnxt_ulp_cntxt_ptr2_default_act_bits_get(params->ulp_ctx);
+	params->act_bitmap.bits |= bits;
+
 	/* search the matcher hash db for the entry  */
 	if (ulp_matcher_action_hash_lookup(matcher_data, params,
 					   &act_tmpl_idx) == -ENOENT) {
diff --git a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c
index d313b7da07..69570c5ef4 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c
+++ b/drivers/net/bnxt/tf_ulp/ulp_rte_parser.c
@@ -349,6 +349,11 @@ ulp_post_process_normal_flow(struct ulp_rte_parser_params *params)
 			       BNXT_ULP_FLOW_DIR_BITMASK_EGR);
 		ULP_BITMAP_SET(params->act_bitmap.bits,
 			       BNXT_ULP_FLOW_DIR_BITMASK_EGR);
+	} else {
+		ULP_BITMAP_SET(params->hdr_bitmap.bits,
+			       BNXT_ULP_FLOW_DIR_BITMASK_ING);
+		ULP_BITMAP_SET(params->act_bitmap.bits,
+			       BNXT_ULP_FLOW_DIR_BITMASK_ING);
 	}
 
 	/* Evaluate the VF to VF flag */
diff --git a/drivers/net/bnxt/tf_ulp/ulp_template_struct.h b/drivers/net/bnxt/tf_ulp/ulp_template_struct.h
index 43b5cbe6a0..fbce97269b 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_template_struct.h
+++ b/drivers/net/bnxt/tf_ulp/ulp_template_struct.h
@@ -17,6 +17,7 @@
 #include "rte_flow.h"
 #include "tf_core.h"
 #include "cfa_resources.h"
+#include "cfa_types.h"
 
 /* Number of fields for each protocol */
 #define BNXT_ULP_PROTO_HDR_SVIF_NUM	2
@@ -336,6 +337,7 @@ struct bnxt_ulp_mapper_tbl_info {
 
 	/* Shared session */
 	enum bnxt_ulp_session_type	session_type;
+	enum cfa_track_type		track_type;
 
 	/* Key recipes for generic templates */
 	enum bnxt_ulp_key_recipe_opc key_recipe_opcode;
@@ -421,6 +423,8 @@ struct bnxt_ulp_app_capabilities_info {
 	uint32_t			pbl_page_sz_in_bytes;
 	uint16_t			num_key_recipes_per_dir;
 	uint64_t			feature_bits;
+	uint64_t			default_class_bits;
+	uint64_t			default_act_bits;
 };
 
 struct bnxt_ulp_cache_tbl_params {
-- 
2.39.3


  parent reply	other threads:[~2024-08-30 14:07 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-30 14:00 [PATCH 00/47] TruFlow update for Thor2 Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 01/47] net/bnxt: tf_core: fix wc tcam multi slice delete issue Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 02/47] net/bnxt: tf_core: tcam manager data corruption Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 03/47] net/bnxt: tf_core: External EM support cleanup Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 04/47] net/bnxt: tf_core: Thor TF EM key size check Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 05/47] net/bnxt: tf_core: flow scale improvement Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 06/47] net/bnxt: tf_core: TF support flow scale query Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 07/47] net/bnxt: tf_core: fix slice count in case of HA entry move Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 08/47] net/bnxt: tf_core: convert priority based TCAM manager to dynamic allocation Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 09/47] net/bnxt: tf_core: remove dead AFM code from session-based priority TCAM mgr Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 10/47] net/bnxt: tf_core: remove dead " Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 11/47] net/bnxt: tfc: support tf-core for Thor2 Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 12/47] net/bnxt: tf_ulp: add vxlan-gpe base support Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 13/47] net/bnxt: tf_ulp: add custom l2 etype tunnel support Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 14/47] net/bnxt: tf_ulp: add support for vf to vf flow offload Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 15/47] net/bnxt: tf_ulp: Wh+ mirroring support Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 16/47] net/bnxt: tf_ulp: miscellaneous fixes Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 17/47] net/bnxt: tf_ulp: support for Thor2 ulp layer Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 18/47] net/bnxt: tf_ulp: add support for overlapping flows Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 19/47] net/bnxt: tf_ulp: convert recipe table to dynamic memory Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 20/47] net/bnxt: tf_ulp: add feature bit support Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 21/47] net/bnxt: tf_ulp: add action read and clear support Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 22/47] net/bnxt: tf_ulp: update template files Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 23/47] net/bnxt: tf_ulp: VFR updates for Thor 2 Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 24/47] net/bnxt: tf_ulp: add support for tunnel flow stats Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 25/47] net/bnxt: tf_ulp: update template files Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 26/47] net/bnxt: tf_ulp: enable recipe id generation Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 27/47] net/bnxt: tf_ulp: fixed parent child db counters Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 28/47] net/bnxt: tf_ulp: modify return values to adhere to C coding standard Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 29/47] net/bnxt: tf_ulp: update template files Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 30/47] net/bnxt: tf_ulp: add mask defaults when mask is not specified Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 31/47] net/bnxt: tf_ulp: add jump action support Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 32/47] net/bnxt: tf_ulp: add support for flow priority Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 33/47] net/bnxt: tf_ulp: support for dynamic tunnel ports Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 34/47] net/bnxt: tf_ulp: add rte_mtr support for Thor2 Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 35/47] net/bnxt: tf_ulp: TF support flow scale query Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 36/47] net/bnxt: tf_ulp: add support for rss flow query to ULP Sriharsha Basavapatna
2024-08-30 14:00 ` Sriharsha Basavapatna [this message]
2024-08-30 14:00 ` [PATCH 38/47] net/bnxt: tf_ulp: inline utility functions and use likely/unlikely Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 39/47] net/bnxt: tf_ulp: switch ulp to use rte crc32 hash Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 40/47] net/bnxt: tf_ulp: update template files Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 41/47] net/bnxt: tf_ulp: support a few generic template items Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 42/47] net/bnxt: tf_ulp: TFC support flow scale query for Thor2 Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 43/47] net/bnxt: tf_ulp: update template files Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 44/47] net/bnxt: tf_ulp: enable support for truflow feature configuration Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 45/47] net/bnxt: tf_ulp: support a few feature extensions Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 46/47] net/bnxt: update template files Sriharsha Basavapatna
2024-08-30 14:00 ` [PATCH 47/47] net/bnxt: tf_ulp: add stats cache for thor2 Sriharsha Basavapatna
2024-09-25 12:02 ` [PATCH 00/47] TruFlow update for Thor2 Ajit Khaparde

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240830140049.1715230-38-sriharsha.basavapatna@broadcom.com \
    --to=sriharsha.basavapatna@broadcom.com \
    --cc=dev@dpdk.org \
    --cc=farah.smith@broadcom.com \
    --cc=kishore.padmanabha@broadcom.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).