net/bnxt: add enhancements to TruFlow ULP
[dpdk.git] / drivers / net / bnxt / tf_ulp / generic_templates / ulp_template_db_thor_act.c
index 223ecbf..e49c115 100644 (file)
@@ -3,7 +3,7 @@
  * All rights reserved.
  */
 
-/* date: Thu Jul  8 08:44:00 2021 */
+/* date: Tue Aug 17 12:16:42 2021 */
 
 #include "ulp_template_db_enum.h"
 #include "ulp_template_db_field.h"
@@ -15,7 +15,7 @@ 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 = 4,
+       .num_tbls = 5,
        .start_tbl_idx = 0,
        .reject_info = {
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
@@ -26,7 +26,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_act_tmpl_list[] = {
        [2] = {
        .device_name = BNXT_ULP_DEVICE_ID_THOR,
        .num_tbls = 6,
-       .start_tbl_idx = 4,
+       .start_tbl_idx = 5,
        .reject_info = {
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
                .cond_start_idx = 3,
@@ -36,7 +36,7 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_act_tmpl_list[] = {
        [3] = {
        .device_name = BNXT_ULP_DEVICE_ID_THOR,
        .num_tbls = 4,
-       .start_tbl_idx = 10,
+       .start_tbl_idx = 11,
        .reject_info = {
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
                .cond_start_idx = 4,
@@ -45,8 +45,8 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_act_tmpl_list[] = {
        /* act_tid: 4, egress */
        [4] = {
        .device_name = BNXT_ULP_DEVICE_ID_THOR,
-       .num_tbls = 4,
-       .start_tbl_idx = 14,
+       .num_tbls = 5,
+       .start_tbl_idx = 15,
        .reject_info = {
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
                .cond_start_idx = 7,
@@ -56,20 +56,20 @@ struct bnxt_ulp_mapper_tmpl_info ulp_thor_act_tmpl_list[] = {
        [5] = {
        .device_name = BNXT_ULP_DEVICE_ID_THOR,
        .num_tbls = 4,
-       .start_tbl_idx = 18,
+       .start_tbl_idx = 20,
        .reject_info = {
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-               .cond_start_idx = 10,
+               .cond_start_idx = 12,
                .cond_nums = 0 }
        },
        /* act_tid: 6, egress */
        [6] = {
        .device_name = BNXT_ULP_DEVICE_ID_THOR,
-       .num_tbls = 6,
-       .start_tbl_idx = 22,
+       .num_tbls = 12,
+       .start_tbl_idx = 24,
        .reject_info = {
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
-               .cond_start_idx = 13,
+               .cond_start_idx = 15,
                .cond_nums = 0 }
        }
 };
@@ -125,14 +125,13 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_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 = 2,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
        .result_start_idx = 1,
        .result_bit_size = 0,
        .result_num_fields = 0,
@@ -146,7 +145,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .direction = TF_DIR_RX,
        .execute_info = {
                .cond_true_goto  = 0,
-               .cond_false_goto = 0,
+               .cond_false_goto = 1,
                .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
                .cond_start_idx = 3,
                .cond_nums = 0 },
@@ -158,6 +157,26 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .result_bit_size = 128,
        .result_num_fields = 17
        },
+       { /* act_tid: 1, , table: 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 = 0,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+               .cond_start_idx = 3,
+               .cond_nums = 0 },
+       .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
+       .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
+       .result_start_idx = 65,
+       .result_bit_size = 64,
+       .result_num_fields = 13
+       },
        { /* act_tid: 2, , table: control.0 */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
        .direction = TF_DIR_RX,
@@ -187,7 +206,7 @@ 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 = 65,
+       .result_start_idx = 78,
        .result_bit_size = 32,
        .result_num_fields = 5
        },
@@ -208,13 +227,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 = 70,
+       .result_start_idx = 83,
        .result_bit_size = 64,
        .result_num_fields = 1
        },
-       { /* act_tid: 2, , table: int_full_act_record.0 */
+       { /* act_tid: 2, , table: int_compact_act_record.0 */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
-       .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
+       .resource_type = TF_TBL_TYPE_COMPACT_ACT_RECORD,
        .resource_sub_type =
                BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
        .direction = TF_DIR_RX,
@@ -229,9 +248,9 @@ 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 = 71,
-       .result_bit_size = 128,
-       .result_num_fields = 17,
+       .result_start_idx = 84,
+       .result_bit_size = 64,
+       .result_num_fields = 13,
        .encap_num_fields = 0
        },
        { /* act_tid: 2, , table: mirror_tbl.wr */
@@ -250,7 +269,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
        .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-       .result_start_idx = 88,
+       .result_start_idx = 97,
        .result_bit_size = 32,
        .result_num_fields = 5
        },
@@ -273,7 +292,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .blob_key_bit_size = 1,
        .key_bit_size = 1,
        .key_num_fields = 1,
-       .result_start_idx = 93,
+       .result_start_idx = 102,
        .result_bit_size = 36,
        .result_num_fields = 2
        },
@@ -292,7 +311,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 95,
+       .result_start_idx = 104,
        .result_bit_size = 64,
        .result_num_fields = 1
        },
@@ -311,8 +330,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 96,
+       .result_start_idx = 105,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 47
@@ -332,8 +350,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 143,
+       .result_start_idx = 152,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 47
@@ -353,7 +370,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 190,
+       .result_start_idx = 199,
        .result_bit_size = 128,
        .result_num_fields = 17
        },
@@ -372,7 +389,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 207,
+       .result_start_idx = 216,
        .result_bit_size = 64,
        .result_num_fields = 1
        },
@@ -391,8 +408,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 8,
-       .result_start_idx = 208,
+       .result_start_idx = 217,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 11
@@ -412,8 +428,7 @@ struct bnxt_ulp_mapper_tbl_info ulp_thor_act_tbl_list[] = {
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 219,
+       .result_start_idx = 228,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 47
@@ -426,17 +441,36 @@ 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_false_goto = 1,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
                .cond_start_idx = 10,
-               .cond_nums = 0 },
+               .cond_nums = 2 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 266,
+       .result_start_idx = 275,
        .result_bit_size = 128,
        .result_num_fields = 17
        },
+       { /* act_tid: 4, , table: 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 = 12,
+               .cond_nums = 0 },
+       .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
+       .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .result_start_idx = 292,
+       .result_bit_size = 64,
+       .result_num_fields = 13
+       },
        { /* act_tid: 5, , table: int_flow_counter_tbl.0 */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
        .resource_type = TF_TBL_TYPE_ACT_STATS_64,
@@ -447,12 +481,12 @@ 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 = 10,
+               .cond_start_idx = 12,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 283,
+       .result_start_idx = 305,
        .result_bit_size = 64,
        .result_num_fields = 1
        },
@@ -466,13 +500,12 @@ 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 = 11,
+               .cond_start_idx = 13,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 284,
+       .result_start_idx = 306,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 47
@@ -487,13 +520,12 @@ 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 = 12,
+               .cond_start_idx = 14,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 331,
+       .result_start_idx = 353,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 47
@@ -508,12 +540,12 @@ 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 = 13,
+               .cond_start_idx = 15,
                .cond_nums = 0 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 378,
+       .result_start_idx = 400,
        .result_bit_size = 128,
        .result_num_fields = 17
        },
@@ -527,15 +559,48 @@ 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 = 13,
+               .cond_start_idx = 15,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .result_start_idx = 395,
+       .result_start_idx = 417,
        .result_bit_size = 64,
        .result_num_fields = 1
        },
+       { /* act_tid: 6, , table: source_property_cache.rd */
+       .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_false_goto = 1,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+               .cond_start_idx = 16,
+               .cond_nums = 1 },
+       .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
+       .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .key_start_idx = 2,
+       .blob_key_bit_size = 80,
+       .key_bit_size = 80,
+       .key_num_fields = 2,
+       .ident_start_idx = 1,
+       .ident_nums = 1
+       },
+       { /* act_tid: 6, , table: control.0 */
+       .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+       .direction = TF_DIR_TX,
+       .execute_info = {
+               .cond_true_goto  = 1,
+               .cond_false_goto = 3,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+               .cond_start_idx = 17,
+               .cond_nums = 1 },
+       .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
+       .fdb_operand = BNXT_ULP_RF_IDX_RID
+       },
        { /* act_tid: 6, , table: sp_smac_ipv4.0 */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
        .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4,
@@ -546,17 +611,40 @@ 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 = 14,
+               .cond_start_idx = 18,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
-       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
+       .fdb_operand = BNXT_ULP_RF_IDX_RID,
        .record_size = 16,
-       .result_start_idx = 396,
+       .result_start_idx = 418,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 3
        },
+       { /* act_tid: 6, , table: 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_false_goto = 1,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
+               .cond_start_idx = 19,
+               .cond_nums = 0 },
+       .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
+       .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .key_start_idx = 4,
+       .blob_key_bit_size = 80,
+       .key_bit_size = 80,
+       .key_num_fields = 2,
+       .result_start_idx = 421,
+       .result_bit_size = 48,
+       .result_num_fields = 2
+       },
        { /* act_tid: 6, , table: sp_smac_ipv6.0 */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
        .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6,
@@ -567,17 +655,50 @@ 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 = 15,
+               .cond_start_idx = 19,
                .cond_nums = 1 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
        .record_size = 32,
-       .result_start_idx = 399,
+       .result_start_idx = 423,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 3
        },
+       { /* act_tid: 6, , table: 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 = 1,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+               .cond_start_idx = 20,
+               .cond_nums = 2 },
+       .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
+       .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .key_start_idx = 6,
+       .blob_key_bit_size = 136,
+       .key_bit_size = 136,
+       .key_num_fields = 5,
+       .ident_start_idx = 2,
+       .ident_nums = 1
+       },
+       { /* act_tid: 6, , table: control.0 */
+       .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
+       .direction = TF_DIR_TX,
+       .execute_info = {
+               .cond_true_goto  = 1,
+               .cond_false_goto = 3,
+               .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
+               .cond_start_idx = 22,
+               .cond_nums = 1 },
+       .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
+       .fdb_operand = BNXT_ULP_RF_IDX_RID
+       },
        { /* act_tid: 6, , table: int_tun_encap_record.ipv4_vxlan */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
        .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -588,17 +709,39 @@ 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 = 16,
+               .cond_start_idx = 23,
                .cond_nums = 2 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
-       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 402,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
+       .fdb_operand = BNXT_ULP_RF_IDX_RID,
+       .result_start_idx = 426,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 30
        },
+       { /* act_tid: 6, , table: 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_TRUE,
+               .cond_start_idx = 25,
+               .cond_nums = 0 },
+       .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
+       .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
+       .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
+       .key_start_idx = 11,
+       .blob_key_bit_size = 136,
+       .key_bit_size = 136,
+       .key_num_fields = 5,
+       .result_start_idx = 456,
+       .result_bit_size = 48,
+       .result_num_fields = 2
+       },
        { /* act_tid: 6, , table: int_tun_encap_record.ipv6_vxlan */
        .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
        .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
@@ -609,13 +752,12 @@ 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 = 18,
+               .cond_start_idx = 25,
                .cond_nums = 2 },
        .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
        .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
-       .record_size = 64,
-       .result_start_idx = 432,
+       .result_start_idx = 458,
        .result_bit_size = 0,
        .result_num_fields = 0,
        .encap_num_fields = 30
@@ -630,13 +772,13 @@ 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 = 20,
+               .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,
        .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
        .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
-       .result_start_idx = 462,
+       .result_start_idx = 488,
        .result_bit_size = 128,
        .result_num_fields = 17
        }
@@ -693,6 +835,15 @@ 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_DEC_TTL
        },
+       /* cond_execute: act_tid: 4, int_full_act_record.0 */
+       {
+       .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_execute: act_tid: 5, int_flow_counter_tbl.0 */
        {
        .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
@@ -713,6 +864,16 @@ 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_COUNT
        },
+       /* cond_execute: act_tid: 6, source_property_cache.rd */
+       {
+       .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
+       .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
+       },
+       /* cond_execute: act_tid: 6, control.0 */
+       {
+       .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+       .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+       },
        /* cond_execute: act_tid: 6, sp_smac_ipv4.0 */
        {
        .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
@@ -723,6 +884,20 @@ struct bnxt_ulp_mapper_cond_info ulp_thor_act_cond_list[] = {
        .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
        .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG
        },
+       /* cond_execute: act_tid: 6, vxlan_encap_rec_cache.rd */
+       {
+       .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_VXLAN
+       },
+       /* cond_execute: act_tid: 6, control.0 */
+       {
+       .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
+       .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
+       },
        /* cond_execute: act_tid: 6, int_tun_encap_record.ipv4_vxlan */
        {
        .cond_opcode = BNXT_ULP_COND_OPC_ENC_HDR_BIT_IS_SET,
@@ -783,6 +958,316 @@ struct bnxt_ulp_mapper_key_info ulp_thor_act_key_info_list[] = {
                (BNXT_ULP_RF_IDX_MIRROR_PTR_0 >> 8) & 0xff,
                BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
                }
+       },
+       /* act_tid: 6, , table: source_property_cache.rd */
+       {
+       .field_info_mask = {
+               .description = "smac",
+               .field_bit_size = 48,
+               .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+               .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+               .field_opr1 = {
+                       0xff,
+                       0xff,
+                       0xff,
+                       0xff,
+                       0xff,
+                       0xff}
+               },
+       .field_info_spec = {
+               .description = "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}
+               }
+       },
+       {
+       .field_info_mask = {
+               .description = "ipv4_src_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_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}
+               }
+       },
+       /* act_tid: 6, , table: source_property_cache.wr */
+       {
+       .field_info_mask = {
+               .description = "smac",
+               .field_bit_size = 48,
+               .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
+               .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
+               .field_opr1 = {
+                       0xff,
+                       0xff,
+                       0xff,
+                       0xff,
+                       0xff,
+                       0xff}
+               },
+       .field_info_spec = {
+               .description = "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}
+               }
+       },
+       {
+       .field_info_mask = {
+               .description = "ipv4_src_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_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}
+               }
+       },
+       /* act_tid: 6, , table: vxlan_encap_rec_cache.rd */
+       {
+       .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}
+               }
+       },
+       {
+       .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,
+               .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}
+               }
+       },
+       {
+       .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}
+               }
+       },
+       {
+       .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}
+               }
+       },
+       {
+       .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_VXLAN_VNI >> 8) & 0xff,
+               BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}
+               }
+       },
+       /* act_tid: 6, , table: vxlan_encap_rec_cache.wr */
+       {
+       .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}
+               }
+       },
+       {
+       .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,
+               .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}
+               }
+       },
+       {
+       .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}
+               }
+       },
+       {
+       .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}
+               }
+       },
+       {
+       .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_VXLAN_VNI >> 8) & 0xff,
+               BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff}
+               }
        }
 };
 
@@ -1069,38 +1554,178 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
        .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
        },
        {
-       .description = "encap_ptr",
-       .field_bit_size = 16,
+       .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_THEN_SRC2_ELSE_SRC3,
+       .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
+       .field_opr1 = {
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 56) & 0xff,
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 48) & 0xff,
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 40) & 0xff,
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 32) & 0xff,
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 24) & 0xff,
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 16) & 0xff,
+       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 8) & 0xff,
+       (uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL & 0xff},
+       .field_src2 = BNXT_ULP_FIELD_SRC_RF,
+       .field_opr2 = {
+               (BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
+               BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff},
+       .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
+       },
+       {
+       .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_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_THOR_SYM_DECAP_FUNC_THRU_TUN},
+       .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
+       .field_opr3 = {
+       ULP_THOR_SYM_DECAP_FUNC_NONE}
+       },
+       {
+       .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_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 = "mod_rec_ptr",
-       .field_bit_size = 16,
+       .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_DEC_TTL >> 56) & 0xff,
-       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 48) & 0xff,
-       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 40) & 0xff,
-       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 32) & 0xff,
-       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 24) & 0xff,
-       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 16) & 0xff,
-       ((uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL >> 8) & 0xff,
-       (uint64_t)BNXT_ULP_ACT_BIT_DEC_TTL & 0xff},
-       .field_src2 = BNXT_ULP_FIELD_SRC_RF,
+       ((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 = {
-               (BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
-               BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff},
+               ULP_THOR_SYM_VLAN_DEL_RPT_STRIP_OUTER},
        .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
        },
        {
-       .description = "rsvd1",
-       .field_bit_size = 16,
+       .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: 1, , table: int_compact_act_record.0 */
+       {
        .description = "rsvd0",
        .field_bit_size = 8,
        .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
@@ -1137,7 +1762,9 @@ 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_ZERO
+       .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+       .field_opr1 = {
+       1}
        },
        {
        .description = "stats_ptr",
@@ -1233,9 +1860,7 @@ 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: 2, , table: mirror_tbl.alloc */
        {
@@ -1277,31 +1902,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: 2, , 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_ZERO
-       },
-       {
-       .description = "rsvd1",
-       .field_bit_size = 16,
-       .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
-       .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
-       },
+       /* act_tid: 2, , table: int_compact_act_record.0 */
        {
        .description = "rsvd0",
        .field_bit_size = 8,
@@ -1324,7 +1925,9 @@ 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_ZERO
+       .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+       .field_opr1 = {
+       1}
        },
        {
        .description = "stats_ptr",
@@ -1387,9 +1990,7 @@ 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: 2, , table: mirror_tbl.wr */
        {
@@ -2250,7 +2851,9 @@ 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_ZERO
+       .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+       .field_opr1 = {
+       1}
        },
        {
        .description = "stats_ptr",
@@ -2721,16 +3324,9 @@ 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_ACT_BIT,
+       .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
        .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}
+       1}
        },
        {
        .description = "stats_ptr",
@@ -2803,6 +3399,102 @@ struct bnxt_ulp_mapper_field_info ulp_thor_act_result_field_list[] = {
        .field_opr1 = {
        1}
        },
+       /* 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_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,
+       .field_src1 = 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: 5, , table: int_flow_counter_tbl.0 */
        {
        .description = "count",
@@ -3708,6 +4400,25 @@ 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: 6, , 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 = 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: 6, , table: sp_smac_ipv6.0 */
        {
        .description = "smac",
@@ -4021,6 +4732,25 @@ 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: 6, , 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 = 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}
+       },
        /* act_tid: 6, , table: int_tun_encap_record.ipv6_vxlan */
        {
        .description = "ecv_valid",
@@ -4351,7 +5081,9 @@ 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_ZERO
+       .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
+       .field_opr1 = {
+       1}
        },
        {
        .description = "stats_ptr",
@@ -4424,5 +5156,19 @@ struct bnxt_ulp_mapper_ident_info ulp_thor_act_ident_list[] = {
        .regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
        .ident_bit_size = 4,
        .ident_bit_pos = 32
+       },
+       /* act_tid: 6, , table: source_property_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: 6, , table: vxlan_encap_rec_cache.rd */
+       {
+       .description = "enc_rec_ptr",
+       .regfile_idx = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
+       .ident_bit_size = 16,
+       .ident_bit_pos = 32
        }
 };