1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2014-2021 Broadcom
6 /* date: Tue Jun 1 16:05:30 2021 */
8 #include "ulp_template_db_enum.h"
9 #include "ulp_template_db_field.h"
10 #include "ulp_template_struct.h"
11 #include "ulp_template_db_tbl.h"
13 /* Mapper templates for header act list */
14 struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_act_tmpl_list[] = {
15 /* act_tid: 1, ingress */
17 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
21 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_OR,
25 /* act_tid: 2, ingress */
27 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
31 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
35 /* act_tid: 3, ingress */
37 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
41 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
45 /* act_tid: 4, egress */
47 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
51 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
55 /* act_tid: 5, egress */
57 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
61 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
65 /* act_tid: 6, egress */
67 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
71 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
77 struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_act_tbl_list[] = {
78 { /* act_tid: 1, , table: shared_mirror_record.rd */
79 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
80 .resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
82 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
83 .direction = TF_DIR_RX,
87 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
90 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
91 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
92 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
94 .blob_key_bit_size = 1,
100 { /* act_tid: 1, , table: int_flow_counter_tbl.0 */
101 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
102 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
104 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
105 .direction = TF_DIR_RX,
108 .cond_false_goto = 1,
109 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
110 .cond_start_idx = 10,
112 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
113 .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
114 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
115 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
116 .result_start_idx = 0,
117 .result_bit_size = 64,
118 .result_num_fields = 1
120 { /* act_tid: 1, , table: int_vtag_encap_record.0 */
121 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
122 .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
124 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
125 .direction = TF_DIR_RX,
128 .cond_false_goto = 1,
129 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
130 .cond_start_idx = 11,
132 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
133 .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
134 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
135 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
137 .result_start_idx = 1,
138 .result_bit_size = 0,
139 .result_num_fields = 0,
140 .encap_num_fields = 11
142 { /* act_tid: 1, , table: int_full_act_record.0 */
143 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
144 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
146 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
147 .direction = TF_DIR_RX,
150 .cond_false_goto = 1,
151 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
152 .cond_start_idx = 12,
154 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
155 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
156 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
157 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
158 .result_start_idx = 12,
159 .result_bit_size = 128,
160 .result_num_fields = 26,
161 .encap_num_fields = 0
163 { /* act_tid: 1, , table: ext_full_act_record.0 */
164 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
165 .resource_type = TF_TBL_TYPE_EXT,
167 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
168 .direction = TF_DIR_RX,
171 .cond_false_goto = 0,
172 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
173 .cond_start_idx = 13,
175 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
176 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
177 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
178 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
179 .result_start_idx = 38,
180 .result_bit_size = 128,
181 .result_num_fields = 26,
182 .encap_num_fields = 11
184 { /* act_tid: 2, , table: control.0 */
185 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
186 .direction = TF_DIR_RX,
189 .cond_false_goto = 1,
190 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
191 .cond_start_idx = 14,
193 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
194 .fdb_operand = BNXT_ULP_RF_IDX_RID
196 { /* act_tid: 2, , table: mirror_tbl.alloc */
197 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
198 .resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
200 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
201 .direction = TF_DIR_RX,
204 .cond_false_goto = 1,
205 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
206 .cond_start_idx = 14,
208 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
209 .tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
210 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
211 .fdb_operand = BNXT_ULP_RF_IDX_RID,
212 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
213 .result_start_idx = 75,
214 .result_bit_size = 32,
215 .result_num_fields = 6
217 { /* act_tid: 2, , table: int_flow_counter_tbl.0 */
218 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
219 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
221 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
222 .direction = TF_DIR_RX,
225 .cond_false_goto = 1,
226 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
227 .cond_start_idx = 14,
229 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
230 .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
231 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
232 .fdb_operand = BNXT_ULP_RF_IDX_RID,
233 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
234 .result_start_idx = 81,
235 .result_bit_size = 64,
236 .result_num_fields = 1
238 { /* act_tid: 2, , table: int_full_act_record.0 */
239 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
240 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
242 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
243 .direction = TF_DIR_RX,
246 .cond_false_goto = 1,
247 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
248 .cond_start_idx = 15,
250 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
251 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
252 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
253 .fdb_operand = BNXT_ULP_RF_IDX_RID,
254 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
255 .result_start_idx = 82,
256 .result_bit_size = 128,
257 .result_num_fields = 26,
258 .encap_num_fields = 0
260 { /* act_tid: 2, , table: ext_full_act_record.0 */
261 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
262 .resource_type = TF_TBL_TYPE_EXT,
264 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
265 .direction = TF_DIR_RX,
268 .cond_false_goto = 1,
269 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
270 .cond_start_idx = 15,
272 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
273 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
274 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
275 .fdb_operand = BNXT_ULP_RF_IDX_RID,
276 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
277 .result_start_idx = 108,
278 .result_bit_size = 128,
279 .result_num_fields = 26,
280 .encap_num_fields = 11
282 { /* act_tid: 2, , table: mirror_tbl.wr */
283 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
284 .resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
286 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
287 .direction = TF_DIR_RX,
290 .cond_false_goto = 1,
291 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
292 .cond_start_idx = 15,
294 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_REGFILE,
295 .tbl_operand = BNXT_ULP_RF_IDX_MIRROR_PTR_0,
296 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
297 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
298 .result_start_idx = 145,
299 .result_bit_size = 32,
300 .result_num_fields = 6
302 { /* act_tid: 2, , table: shared_mirror_record.wr */
303 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
304 .resource_type = TF_TBL_TYPE_MIRROR_CONFIG,
306 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_SHARED_MIRROR,
307 .direction = TF_DIR_RX,
310 .cond_false_goto = 0,
311 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
312 .cond_start_idx = 15,
314 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
315 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
316 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
318 .blob_key_bit_size = 1,
321 .result_start_idx = 151,
322 .result_bit_size = 34,
323 .result_num_fields = 2
325 { /* act_tid: 3, , table: int_flow_counter_tbl.0 */
326 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
327 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
329 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
330 .direction = TF_DIR_RX,
333 .cond_false_goto = 1,
334 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
335 .cond_start_idx = 15,
337 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
338 .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
339 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
340 .result_start_idx = 153,
341 .result_bit_size = 64,
342 .result_num_fields = 1
344 { /* act_tid: 3, , table: act_modify_ipv4_src.0 */
345 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
346 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
348 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
349 .direction = TF_DIR_RX,
352 .cond_false_goto = 1,
353 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
354 .cond_start_idx = 16,
356 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
357 .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0,
358 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
359 .result_start_idx = 154,
360 .result_bit_size = 32,
361 .result_num_fields = 1
363 { /* act_tid: 3, , table: act_modify_ipv4_dst.0 */
364 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
365 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
367 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
368 .direction = TF_DIR_RX,
371 .cond_false_goto = 1,
372 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
373 .cond_start_idx = 17,
375 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
376 .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0,
377 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
378 .result_start_idx = 155,
379 .result_bit_size = 32,
380 .result_num_fields = 1
382 { /* act_tid: 3, , table: int_encap_mac_record.0 */
383 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
384 .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
386 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
387 .direction = TF_DIR_RX,
390 .cond_false_goto = 1,
391 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
392 .cond_start_idx = 18,
394 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
395 .tbl_operand = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR,
396 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
398 .result_start_idx = 156,
399 .result_bit_size = 0,
400 .result_num_fields = 0,
401 .encap_num_fields = 11
403 { /* act_tid: 3, , table: int_full_act_record.0 */
404 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
405 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
407 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
408 .direction = TF_DIR_RX,
411 .cond_false_goto = 1,
412 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
413 .cond_start_idx = 18,
415 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
416 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
417 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
418 .result_start_idx = 167,
419 .result_bit_size = 128,
420 .result_num_fields = 26
422 { /* act_tid: 3, , table: ext_full_act_record.0 */
423 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
424 .resource_type = TF_TBL_TYPE_EXT,
426 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
427 .direction = TF_DIR_RX,
430 .cond_false_goto = 0,
431 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
432 .cond_start_idx = 19,
434 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
435 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
436 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
437 .result_start_idx = 193,
438 .result_bit_size = 128,
439 .result_num_fields = 26,
440 .encap_num_fields = 11
442 { /* act_tid: 4, , table: int_flow_counter_tbl.0 */
443 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
444 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
446 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
447 .direction = TF_DIR_TX,
450 .cond_false_goto = 1,
451 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
452 .cond_start_idx = 20,
454 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
455 .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
456 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
457 .result_start_idx = 230,
458 .result_bit_size = 64,
459 .result_num_fields = 1
461 { /* act_tid: 4, , table: int_vtag_encap_record.0 */
462 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
463 .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
465 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
466 .direction = TF_DIR_TX,
469 .cond_false_goto = 1,
470 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
471 .cond_start_idx = 21,
473 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
474 .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
475 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
477 .result_start_idx = 231,
478 .result_bit_size = 0,
479 .result_num_fields = 0,
480 .encap_num_fields = 11
482 { /* act_tid: 4, , table: int_full_act_record.0 */
483 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
484 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
486 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
487 .direction = TF_DIR_TX,
490 .cond_false_goto = 1,
491 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
492 .cond_start_idx = 23,
494 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
495 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
496 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
497 .result_start_idx = 242,
498 .result_bit_size = 128,
499 .result_num_fields = 26
501 { /* act_tid: 4, , table: ext_full_act_record.no_tag */
502 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
503 .resource_type = TF_TBL_TYPE_EXT,
505 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
506 .direction = TF_DIR_TX,
509 .cond_false_goto = 1,
510 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
511 .cond_start_idx = 24,
513 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
514 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
515 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
516 .result_start_idx = 268,
517 .result_bit_size = 128,
518 .result_num_fields = 26,
519 .encap_num_fields = 11
521 { /* act_tid: 4, , table: ext_full_act_record.one_tag */
522 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
523 .resource_type = TF_TBL_TYPE_EXT,
525 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
526 .direction = TF_DIR_TX,
529 .cond_false_goto = 0,
530 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
531 .cond_start_idx = 26,
533 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
534 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
535 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
536 .result_start_idx = 305,
537 .result_bit_size = 128,
538 .result_num_fields = 26,
539 .encap_num_fields = 11
541 { /* act_tid: 5, , table: int_flow_counter_tbl.0 */
542 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
543 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
545 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
546 .direction = TF_DIR_TX,
549 .cond_false_goto = 1,
550 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
551 .cond_start_idx = 28,
553 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
554 .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
555 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
556 .result_start_idx = 342,
557 .result_bit_size = 64,
558 .result_num_fields = 1
560 { /* act_tid: 5, , table: act_modify_ipv4_src.0 */
561 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
562 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
564 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
565 .direction = TF_DIR_TX,
568 .cond_false_goto = 1,
569 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
570 .cond_start_idx = 29,
572 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
573 .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0,
574 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
575 .result_start_idx = 343,
576 .result_bit_size = 32,
577 .result_num_fields = 1
579 { /* act_tid: 5, , table: act_modify_ipv4_dst.0 */
580 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
581 .resource_type = TF_TBL_TYPE_ACT_MODIFY_IPV4,
583 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
584 .direction = TF_DIR_TX,
587 .cond_false_goto = 1,
588 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
589 .cond_start_idx = 30,
591 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
592 .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0,
593 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
594 .result_start_idx = 344,
595 .result_bit_size = 32,
596 .result_num_fields = 1
598 { /* act_tid: 5, , table: int_encap_mac_record.dummy */
599 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
600 .resource_type = TF_TBL_TYPE_ACT_ENCAP_16B,
602 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
603 .direction = TF_DIR_TX,
606 .cond_false_goto = 1,
607 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
608 .cond_start_idx = 31,
610 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
611 .tbl_operand = BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR,
612 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
614 .result_start_idx = 345,
615 .result_bit_size = 0,
616 .result_num_fields = 0,
617 .encap_num_fields = 11
619 { /* act_tid: 5, , table: int_full_act_record.0 */
620 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
621 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
623 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
624 .direction = TF_DIR_TX,
627 .cond_false_goto = 1,
628 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
629 .cond_start_idx = 31,
631 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
632 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
633 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
634 .result_start_idx = 356,
635 .result_bit_size = 128,
636 .result_num_fields = 26
638 { /* act_tid: 5, , table: ext_full_act_record.0 */
639 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
640 .resource_type = TF_TBL_TYPE_EXT,
642 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
643 .direction = TF_DIR_TX,
646 .cond_false_goto = 0,
647 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
648 .cond_start_idx = 32,
650 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
651 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
652 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
653 .result_start_idx = 382,
654 .result_bit_size = 128,
655 .result_num_fields = 26,
656 .encap_num_fields = 11
658 { /* act_tid: 6, , table: int_flow_counter_tbl.0 */
659 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
660 .resource_type = TF_TBL_TYPE_ACT_STATS_64,
662 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT,
663 .direction = TF_DIR_TX,
666 .cond_false_goto = 1,
667 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
668 .cond_start_idx = 33,
670 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_REGFILE,
671 .tbl_operand = BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0,
672 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
673 .result_start_idx = 419,
674 .result_bit_size = 64,
675 .result_num_fields = 1
677 { /* act_tid: 6, , table: sp_smac_ipv4.0 */
678 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
679 .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV4,
681 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
682 .direction = TF_DIR_TX,
685 .cond_false_goto = 1,
686 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
687 .cond_start_idx = 34,
689 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
690 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
691 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
693 .result_start_idx = 420,
694 .result_bit_size = 0,
695 .result_num_fields = 0,
696 .encap_num_fields = 2
698 { /* act_tid: 6, , table: sp_smac_ipv6.0 */
699 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
700 .resource_type = TF_TBL_TYPE_ACT_SP_SMAC_IPV6,
702 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
703 .direction = TF_DIR_TX,
706 .cond_false_goto = 1,
707 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
708 .cond_start_idx = 35,
710 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
711 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_SP_PTR,
712 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
714 .result_start_idx = 422,
715 .result_bit_size = 0,
716 .result_num_fields = 0,
717 .encap_num_fields = 2
719 { /* act_tid: 6, , table: int_tun_encap_record.0 */
720 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
721 .resource_type = TF_TBL_TYPE_ACT_ENCAP_64B,
723 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
724 .direction = TF_DIR_TX,
727 .cond_false_goto = 1,
728 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
729 .cond_start_idx = 36,
731 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
732 .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
733 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
735 .result_start_idx = 424,
736 .result_bit_size = 0,
737 .result_num_fields = 0,
738 .encap_num_fields = 30
740 { /* act_tid: 6, , table: int_full_act_record.0 */
741 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
742 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
744 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
745 .direction = TF_DIR_TX,
748 .cond_false_goto = 1,
749 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
750 .cond_start_idx = 37,
752 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
753 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
754 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
755 .result_start_idx = 454,
756 .result_bit_size = 128,
757 .result_num_fields = 26
759 { /* act_tid: 6, , table: ext_full_act_record_vxlan.0 */
760 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
761 .resource_type = TF_TBL_TYPE_EXT,
763 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
764 .direction = TF_DIR_TX,
767 .cond_false_goto = 0,
768 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
769 .cond_start_idx = 38,
771 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
772 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
773 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
774 .result_start_idx = 480,
775 .result_bit_size = 128,
776 .result_num_fields = 26,
777 .encap_num_fields = 30
781 struct bnxt_ulp_mapper_cond_info ulp_wh_plus_act_cond_list[] = {
782 /* cond_reject: wh_plus, act_tid: 1 */
784 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
785 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_SRC
788 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
789 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV6_SRC
792 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
793 .cond_operand = BNXT_ULP_ACT_BIT_SET_TP_SRC
796 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
797 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
800 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
801 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV6_DST
804 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
805 .cond_operand = BNXT_ULP_ACT_BIT_SET_TP_DST
808 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
809 .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
812 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
813 .cond_operand = BNXT_ULP_ACT_BIT_SET_VLAN_VID
816 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
817 .cond_operand = BNXT_ULP_ACT_BIT_SET_VLAN_PCP
819 /* cond_execute: act_tid: 1, shared_mirror_record.rd */
821 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
822 .cond_operand = BNXT_ULP_ACT_BIT_SHARED_SAMPLE
824 /* cond_execute: act_tid: 1, int_flow_counter_tbl.0 */
826 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
827 .cond_operand = BNXT_ULP_ACT_BIT_COUNT
829 /* cond_execute: act_tid: 1, int_vtag_encap_record.0 */
831 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
832 .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
834 /* cond_execute: act_tid: 1, int_full_act_record.0 */
836 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
838 /* cond_execute: act_tid: 1, ext_full_act_record.0 */
840 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
842 /* cond_execute: act_tid: 2, int_flow_counter_tbl.0 */
844 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
845 .cond_operand = BNXT_ULP_ACT_BIT_COUNT
847 /* cond_execute: act_tid: 3, int_flow_counter_tbl.0 */
849 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
850 .cond_operand = BNXT_ULP_ACT_BIT_COUNT
852 /* cond_execute: act_tid: 3, act_modify_ipv4_src.0 */
854 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
855 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_SRC
857 /* cond_execute: act_tid: 3, act_modify_ipv4_dst.0 */
859 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
860 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
862 /* cond_execute: act_tid: 3, int_full_act_record.0 */
864 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
866 /* cond_execute: act_tid: 3, ext_full_act_record.0 */
868 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
870 /* cond_execute: act_tid: 4, int_flow_counter_tbl.0 */
872 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
873 .cond_operand = BNXT_ULP_ACT_BIT_COUNT
875 /* cond_execute: act_tid: 4, int_vtag_encap_record.0 */
877 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
880 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
881 .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
883 /* cond_execute: act_tid: 4, int_full_act_record.0 */
885 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
887 /* cond_execute: act_tid: 4, ext_full_act_record.no_tag */
889 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
892 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_NOT_SET,
893 .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
895 /* cond_execute: act_tid: 4, ext_full_act_record.one_tag */
897 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
900 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
901 .cond_operand = BNXT_ULP_ACT_BIT_PUSH_VLAN
903 /* cond_execute: act_tid: 5, int_flow_counter_tbl.0 */
905 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
906 .cond_operand = BNXT_ULP_ACT_BIT_COUNT
908 /* cond_execute: act_tid: 5, act_modify_ipv4_src.0 */
910 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
911 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_SRC
913 /* cond_execute: act_tid: 5, act_modify_ipv4_dst.0 */
915 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
916 .cond_operand = BNXT_ULP_ACT_BIT_SET_IPV4_DST
918 /* cond_execute: act_tid: 5, int_full_act_record.0 */
920 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
922 /* cond_execute: act_tid: 5, ext_full_act_record.0 */
924 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
926 /* cond_execute: act_tid: 6, int_flow_counter_tbl.0 */
928 .cond_opcode = BNXT_ULP_COND_OPC_ACT_BIT_IS_SET,
929 .cond_operand = BNXT_ULP_ACT_BIT_COUNT
931 /* cond_execute: act_tid: 6, sp_smac_ipv4.0 */
933 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
934 .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV4_FLAG
936 /* cond_execute: act_tid: 6, sp_smac_ipv6.0 */
938 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
939 .cond_operand = BNXT_ULP_CF_IDX_ACT_ENCAP_IPV6_FLAG
941 /* cond_execute: act_tid: 6, int_tun_encap_record.0 */
943 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
945 /* cond_execute: act_tid: 6, int_full_act_record.0 */
947 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
949 /* cond_execute: act_tid: 6, ext_full_act_record_vxlan.0 */
951 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
955 struct bnxt_ulp_mapper_key_info ulp_wh_plus_act_key_info_list[] = {
956 /* act_tid: 1, , table: shared_mirror_record.rd */
959 .description = "shared_index",
961 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
962 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
967 .description = "shared_index",
969 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
970 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
972 (BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE >> 8) & 0xff,
973 BNXT_ULP_ACT_PROP_IDX_SHARED_HANDLE & 0xff}
976 /* act_tid: 2, , table: shared_mirror_record.wr */
979 .description = "shared_index",
981 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
982 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
987 .description = "shared_index",
989 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
990 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
992 (BNXT_ULP_RF_IDX_MIRROR_PTR_0 >> 8) & 0xff,
993 BNXT_ULP_RF_IDX_MIRROR_PTR_0 & 0xff}
998 struct bnxt_ulp_mapper_field_info ulp_wh_plus_act_result_field_list[] = {
999 /* act_tid: 1, , table: int_flow_counter_tbl.0 */
1001 .description = "count",
1002 .field_bit_size = 64,
1003 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1004 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1006 /* act_tid: 1, , table: int_vtag_encap_record.0 */
1008 .description = "ecv_valid",
1009 .field_bit_size = 1,
1010 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1011 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
1013 ULP_WP_SYM_ECV_VALID_YES}
1016 .description = "ecv_custom_en",
1017 .field_bit_size = 1,
1018 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1019 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1022 .description = "ecv_vtag_type",
1023 .field_bit_size = 4,
1024 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1025 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
1027 ULP_WP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
1030 .description = "ecv_l2_en",
1031 .field_bit_size = 1,
1032 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1033 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1036 .description = "ecv_l3_type",
1037 .field_bit_size = 3,
1038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1039 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1042 .description = "ecv_l4_type",
1043 .field_bit_size = 3,
1044 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1045 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1048 .description = "ecv_tun_type",
1049 .field_bit_size = 3,
1050 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1051 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1054 .description = "vtag_tpid",
1055 .field_bit_size = 16,
1056 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1057 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1059 (BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
1060 BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff}
1063 .description = "vtag_pcp",
1064 .field_bit_size = 3,
1065 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1066 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1068 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
1069 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff}
1072 .description = "vtag_de",
1073 .field_bit_size = 1,
1074 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1075 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1078 .description = "vtag_vid",
1079 .field_bit_size = 12,
1080 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1081 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1083 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
1084 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
1086 /* act_tid: 1, , table: int_full_act_record.0 */
1088 .description = "flow_cntr_ptr",
1089 .field_bit_size = 14,
1090 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1091 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1093 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1094 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
1097 .description = "age_enable",
1098 .field_bit_size = 1,
1099 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1100 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1103 .description = "agg_cntr_en",
1104 .field_bit_size = 1,
1105 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1106 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1109 .description = "rate_cntr_en",
1110 .field_bit_size = 1,
1111 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1112 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1115 .description = "flow_cntr_en",
1116 .field_bit_size = 1,
1117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1118 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1120 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
1121 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
1122 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
1123 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
1124 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
1125 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
1126 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
1127 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
1130 .description = "tcpflags_key",
1131 .field_bit_size = 8,
1132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1133 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1136 .description = "tcpflags_mir",
1137 .field_bit_size = 1,
1138 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1139 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1142 .description = "tcpflags_match",
1143 .field_bit_size = 1,
1144 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1145 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1148 .description = "encap_ptr",
1149 .field_bit_size = 11,
1150 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1151 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1153 (BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
1154 BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
1157 .description = "dst_ip_ptr",
1158 .field_bit_size = 10,
1159 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1160 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1162 (BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
1163 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 & 0xff}
1166 .description = "tcp_dst_port",
1167 .field_bit_size = 16,
1168 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1169 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1171 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
1172 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
1173 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
1174 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
1175 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
1176 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
1177 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
1178 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
1179 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1181 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
1182 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
1183 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1186 .description = "src_ip_ptr",
1187 .field_bit_size = 10,
1188 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1189 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1191 (BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
1192 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 & 0xff}
1195 .description = "tcp_src_port",
1196 .field_bit_size = 16,
1197 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1198 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1200 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
1201 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
1202 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
1203 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
1204 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
1205 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
1206 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
1207 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
1208 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1210 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
1211 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
1212 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1215 .description = "meter_id",
1216 .field_bit_size = 10,
1217 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1218 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1221 .description = "l3_rdir",
1222 .field_bit_size = 1,
1223 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1224 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1227 .description = "tl3_rdir",
1228 .field_bit_size = 1,
1229 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1230 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1233 .description = "l3_ttl_dec",
1234 .field_bit_size = 1,
1235 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1236 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
1238 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
1239 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
1242 .description = "tl3_ttl_dec",
1243 .field_bit_size = 1,
1244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1245 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
1247 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
1248 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
1251 .description = "decap_func",
1252 .field_bit_size = 4,
1253 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1254 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1256 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 56) & 0xff,
1257 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 48) & 0xff,
1258 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 40) & 0xff,
1259 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 32) & 0xff,
1260 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 24) & 0xff,
1261 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 16) & 0xff,
1262 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 8) & 0xff,
1263 (uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff},
1264 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
1266 ULP_WP_SYM_DECAP_FUNC_THRU_TUN},
1267 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
1269 ULP_WP_SYM_DECAP_FUNC_NONE}
1272 .description = "vnic_or_vport",
1273 .field_bit_size = 12,
1274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1275 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1277 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1278 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
1281 .description = "pop_vlan",
1282 .field_bit_size = 1,
1283 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1284 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1286 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 56) & 0xff,
1287 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 48) & 0xff,
1288 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 40) & 0xff,
1289 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 32) & 0xff,
1290 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 24) & 0xff,
1291 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 16) & 0xff,
1292 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 8) & 0xff,
1293 (uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff}
1296 .description = "meter",
1297 .field_bit_size = 1,
1298 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1299 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1302 .description = "mirror",
1303 .field_bit_size = 2,
1304 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1305 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1307 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 56) & 0xff,
1308 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 48) & 0xff,
1309 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 40) & 0xff,
1310 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 32) & 0xff,
1311 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 24) & 0xff,
1312 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 16) & 0xff,
1313 ((uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE >> 8) & 0xff,
1314 (uint64_t)BNXT_ULP_ACT_BIT_SHARED_SAMPLE & 0xff},
1315 .field_src2 = BNXT_ULP_FIELD_SRC_RF,
1317 (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
1318 BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff},
1319 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1322 .description = "drop",
1323 .field_bit_size = 1,
1324 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1325 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1327 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
1328 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
1329 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
1330 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
1331 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
1332 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
1333 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
1334 (uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
1337 .description = "hit",
1338 .field_bit_size = 1,
1339 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1340 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1343 .description = "type",
1344 .field_bit_size = 1,
1345 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1346 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1348 /* act_tid: 1, , table: ext_full_act_record.0 */
1350 .description = "flow_cntr_ptr",
1351 .field_bit_size = 14,
1352 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1353 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1355 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1356 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
1359 .description = "age_enable",
1360 .field_bit_size = 1,
1361 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1362 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1365 .description = "agg_cntr_en",
1366 .field_bit_size = 1,
1367 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1368 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1371 .description = "rate_cntr_en",
1372 .field_bit_size = 1,
1373 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1374 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1377 .description = "flow_cntr_en",
1378 .field_bit_size = 1,
1379 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1380 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1382 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
1383 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
1384 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
1385 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
1386 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
1387 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
1388 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
1389 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
1392 .description = "flow_cntr_ext",
1393 .field_bit_size = 1,
1394 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1395 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1398 .description = "tcpflags_key",
1399 .field_bit_size = 8,
1400 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1401 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1404 .description = "tcpflags_mir",
1405 .field_bit_size = 1,
1406 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1407 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1410 .description = "tcpflags_match",
1411 .field_bit_size = 1,
1412 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1413 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1416 .description = "encap_ptr",
1417 .field_bit_size = 11,
1418 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1419 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1422 .description = "encap_rec_int",
1423 .field_bit_size = 1,
1424 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1425 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1428 .description = "dst_ip_ptr",
1429 .field_bit_size = 10,
1430 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1431 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1433 (BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
1434 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 & 0xff}
1437 .description = "tcp_dst_port",
1438 .field_bit_size = 16,
1439 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1440 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1442 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
1443 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
1444 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
1445 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
1446 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
1447 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
1448 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
1449 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
1450 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1452 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
1453 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
1454 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1457 .description = "src_ip_ptr",
1458 .field_bit_size = 10,
1459 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1460 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1462 (BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
1463 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 & 0xff}
1466 .description = "tcp_src_port",
1467 .field_bit_size = 16,
1468 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1469 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1471 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
1472 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
1473 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
1474 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
1475 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
1476 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
1477 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
1478 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
1479 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1481 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
1482 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
1483 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1486 .description = "meter_id",
1487 .field_bit_size = 10,
1488 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1489 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1492 .description = "l3_rdir",
1493 .field_bit_size = 1,
1494 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1495 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1498 .description = "tl3_rdir",
1499 .field_bit_size = 1,
1500 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1501 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1504 .description = "l3_ttl_dec",
1505 .field_bit_size = 1,
1506 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1507 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
1509 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
1510 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
1513 .description = "tl3_ttl_dec",
1514 .field_bit_size = 1,
1515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1516 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
1518 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
1519 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
1522 .description = "decap_func",
1523 .field_bit_size = 4,
1524 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1525 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1527 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 56) & 0xff,
1528 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 48) & 0xff,
1529 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 40) & 0xff,
1530 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 32) & 0xff,
1531 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 24) & 0xff,
1532 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 16) & 0xff,
1533 ((uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP >> 8) & 0xff,
1534 (uint64_t)BNXT_ULP_ACT_BIT_VXLAN_DECAP & 0xff},
1535 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
1537 ULP_WP_SYM_DECAP_FUNC_THRU_TUN},
1538 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
1540 ULP_WP_SYM_DECAP_FUNC_NONE}
1543 .description = "vnic_or_vport",
1544 .field_bit_size = 12,
1545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1546 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1548 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1549 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
1552 .description = "pop_vlan",
1553 .field_bit_size = 1,
1554 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1555 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1557 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 56) & 0xff,
1558 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 48) & 0xff,
1559 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 40) & 0xff,
1560 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 32) & 0xff,
1561 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 24) & 0xff,
1562 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 16) & 0xff,
1563 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 8) & 0xff,
1564 (uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff}
1567 .description = "meter",
1568 .field_bit_size = 1,
1569 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1570 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1573 .description = "mirror",
1574 .field_bit_size = 2,
1575 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1576 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1578 (BNXT_ULP_RF_IDX_MIRROR_ID_0 >> 8) & 0xff,
1579 BNXT_ULP_RF_IDX_MIRROR_ID_0 & 0xff}
1582 .description = "drop",
1583 .field_bit_size = 1,
1584 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1585 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1587 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
1588 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
1589 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
1590 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
1591 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
1592 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
1593 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
1594 (uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
1597 .description = "ecv_valid",
1598 .field_bit_size = 1,
1599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1600 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
1602 ULP_WP_SYM_ECV_VALID_YES}
1605 .description = "ecv_custom_en",
1606 .field_bit_size = 1,
1607 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1608 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1611 .description = "ecv_vtag_type",
1612 .field_bit_size = 4,
1613 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1614 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1617 .description = "ecv_l2_en",
1618 .field_bit_size = 1,
1619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1620 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1623 .description = "ecv_l3_type",
1624 .field_bit_size = 3,
1625 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1626 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1629 .description = "ecv_l4_type",
1630 .field_bit_size = 3,
1631 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1632 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1635 .description = "ecv_tun_type",
1636 .field_bit_size = 3,
1637 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1638 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1641 .description = "vtag_tpid",
1642 .field_bit_size = 16,
1643 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1644 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1647 .description = "vtag_pcp",
1648 .field_bit_size = 3,
1649 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1650 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1653 .description = "vtag_de",
1654 .field_bit_size = 1,
1655 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1656 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1659 .description = "vtag_vid",
1660 .field_bit_size = 12,
1661 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1662 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1664 /* act_tid: 2, , table: mirror_tbl.alloc */
1666 .description = "act_rec_ptr",
1667 .field_bit_size = 16,
1668 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1669 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1672 .description = "enable",
1673 .field_bit_size = 1,
1674 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1675 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
1680 .description = "copy",
1681 .field_bit_size = 1,
1682 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1683 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1686 .description = "ign_drop",
1687 .field_bit_size = 1,
1688 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1689 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1692 .description = "reserved",
1693 .field_bit_size = 2,
1694 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1695 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1698 .description = "sp_ptr",
1699 .field_bit_size = 11,
1700 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1701 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1703 /* act_tid: 2, , table: int_flow_counter_tbl.0 */
1705 .description = "count",
1706 .field_bit_size = 64,
1707 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1708 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1710 /* act_tid: 2, , table: int_full_act_record.0 */
1712 .description = "flow_cntr_ptr",
1713 .field_bit_size = 14,
1714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1715 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1717 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1718 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
1721 .description = "age_enable",
1722 .field_bit_size = 1,
1723 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1724 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1727 .description = "agg_cntr_en",
1728 .field_bit_size = 1,
1729 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1730 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1733 .description = "rate_cntr_en",
1734 .field_bit_size = 1,
1735 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1736 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1739 .description = "flow_cntr_en",
1740 .field_bit_size = 1,
1741 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1742 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1744 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
1745 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
1746 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
1747 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
1748 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
1749 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
1750 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
1751 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
1754 .description = "tcpflags_key",
1755 .field_bit_size = 8,
1756 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1757 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1760 .description = "tcpflags_mir",
1761 .field_bit_size = 1,
1762 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1763 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1766 .description = "tcpflags_match",
1767 .field_bit_size = 1,
1768 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1769 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1772 .description = "encap_ptr",
1773 .field_bit_size = 11,
1774 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1775 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1778 .description = "dst_ip_ptr",
1779 .field_bit_size = 10,
1780 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1781 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1784 .description = "tcp_dst_port",
1785 .field_bit_size = 16,
1786 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1787 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1790 .description = "src_ip_ptr",
1791 .field_bit_size = 10,
1792 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1793 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1796 .description = "tcp_src_port",
1797 .field_bit_size = 16,
1798 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1799 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1802 .description = "meter_id",
1803 .field_bit_size = 10,
1804 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1805 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1808 .description = "l3_rdir",
1809 .field_bit_size = 1,
1810 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1811 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1814 .description = "tl3_rdir",
1815 .field_bit_size = 1,
1816 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1817 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1820 .description = "l3_ttl_dec",
1821 .field_bit_size = 1,
1822 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1823 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1826 .description = "tl3_ttl_dec",
1827 .field_bit_size = 1,
1828 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1829 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1832 .description = "decap_func",
1833 .field_bit_size = 4,
1834 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1835 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1838 .description = "vnic_or_vport",
1839 .field_bit_size = 12,
1840 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1841 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
1843 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
1844 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
1847 .description = "pop_vlan",
1848 .field_bit_size = 1,
1849 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1850 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1853 .description = "meter",
1854 .field_bit_size = 1,
1855 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1856 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1859 .description = "mirror",
1860 .field_bit_size = 2,
1861 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_PLUS_SRC2,
1862 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
1867 .description = "drop",
1868 .field_bit_size = 1,
1869 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1870 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1873 .description = "hit",
1874 .field_bit_size = 1,
1875 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1876 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1879 .description = "type",
1880 .field_bit_size = 1,
1881 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1882 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1884 /* act_tid: 2, , table: ext_full_act_record.0 */
1886 .description = "flow_cntr_ptr",
1887 .field_bit_size = 14,
1888 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1889 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
1891 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
1892 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
1895 .description = "age_enable",
1896 .field_bit_size = 1,
1897 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1898 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1901 .description = "agg_cntr_en",
1902 .field_bit_size = 1,
1903 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1904 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1907 .description = "rate_cntr_en",
1908 .field_bit_size = 1,
1909 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1910 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1913 .description = "flow_cntr_en",
1914 .field_bit_size = 1,
1915 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1916 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
1918 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
1919 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
1920 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
1921 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
1922 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
1923 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
1924 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
1925 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
1928 .description = "flow_cntr_ext",
1929 .field_bit_size = 1,
1930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1931 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1934 .description = "tcpflags_key",
1935 .field_bit_size = 8,
1936 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1937 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1940 .description = "tcpflags_mir",
1941 .field_bit_size = 1,
1942 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1943 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1946 .description = "tcpflags_match",
1947 .field_bit_size = 1,
1948 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1949 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1952 .description = "encap_ptr",
1953 .field_bit_size = 11,
1954 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1955 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1958 .description = "encap_rec_int",
1959 .field_bit_size = 1,
1960 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1961 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1964 .description = "dst_ip_ptr",
1965 .field_bit_size = 10,
1966 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1967 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1970 .description = "tcp_dst_port",
1971 .field_bit_size = 16,
1972 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1973 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1976 .description = "src_ip_ptr",
1977 .field_bit_size = 10,
1978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1979 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1982 .description = "tcp_src_port",
1983 .field_bit_size = 16,
1984 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1985 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1988 .description = "meter_id",
1989 .field_bit_size = 10,
1990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1991 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
1994 .description = "l3_rdir",
1995 .field_bit_size = 1,
1996 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1997 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2000 .description = "tl3_rdir",
2001 .field_bit_size = 1,
2002 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2003 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2006 .description = "l3_ttl_dec",
2007 .field_bit_size = 1,
2008 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2009 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2012 .description = "tl3_ttl_dec",
2013 .field_bit_size = 1,
2014 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2015 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2018 .description = "decap_func",
2019 .field_bit_size = 4,
2020 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2021 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2024 .description = "vnic_or_vport",
2025 .field_bit_size = 12,
2026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2027 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2029 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
2030 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
2033 .description = "pop_vlan",
2034 .field_bit_size = 1,
2035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2036 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2038 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 56) & 0xff,
2039 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 48) & 0xff,
2040 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 40) & 0xff,
2041 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 32) & 0xff,
2042 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 24) & 0xff,
2043 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 16) & 0xff,
2044 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 8) & 0xff,
2045 (uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff}
2048 .description = "meter",
2049 .field_bit_size = 1,
2050 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2051 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2054 .description = "mirror",
2055 .field_bit_size = 2,
2056 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_PLUS_SRC2,
2057 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
2062 .description = "drop",
2063 .field_bit_size = 1,
2064 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2065 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2068 .description = "ecv_valid",
2069 .field_bit_size = 1,
2070 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2071 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2073 ULP_WP_SYM_ECV_VALID_YES}
2076 .description = "ecv_custom_en",
2077 .field_bit_size = 1,
2078 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2079 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2082 .description = "ecv_vtag_type",
2083 .field_bit_size = 4,
2084 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2085 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2088 .description = "ecv_l2_en",
2089 .field_bit_size = 1,
2090 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2091 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2094 .description = "ecv_l3_type",
2095 .field_bit_size = 3,
2096 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2097 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2100 .description = "ecv_l4_type",
2101 .field_bit_size = 3,
2102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2103 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2106 .description = "ecv_tun_type",
2107 .field_bit_size = 3,
2108 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2109 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2112 .description = "vtag_tpid",
2113 .field_bit_size = 16,
2114 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2115 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2118 .description = "vtag_pcp",
2119 .field_bit_size = 3,
2120 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2121 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2124 .description = "vtag_de",
2125 .field_bit_size = 1,
2126 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2127 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2130 .description = "vtag_vid",
2131 .field_bit_size = 12,
2132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2133 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2135 /* act_tid: 2, , table: mirror_tbl.wr */
2137 .description = "act_rec_ptr",
2138 .field_bit_size = 16,
2139 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2140 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2142 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
2143 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
2146 .description = "enable",
2147 .field_bit_size = 1,
2148 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2149 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2154 .description = "copy",
2155 .field_bit_size = 1,
2156 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2157 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2160 .description = "ign_drop",
2161 .field_bit_size = 1,
2162 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2163 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2166 .description = "reserved",
2167 .field_bit_size = 2,
2168 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2169 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2172 .description = "sp_ptr",
2173 .field_bit_size = 11,
2174 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2175 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2177 /* act_tid: 2, , table: shared_mirror_record.wr */
2179 .description = "rid",
2180 .field_bit_size = 32,
2181 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2182 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2184 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
2185 BNXT_ULP_RF_IDX_RID & 0xff}
2188 .description = "mirror_id",
2189 .field_bit_size = 2,
2190 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_PLUS_SRC2_POST,
2191 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
2196 /* act_tid: 3, , table: int_flow_counter_tbl.0 */
2198 .description = "count",
2199 .field_bit_size = 64,
2200 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2201 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2203 /* act_tid: 3, , table: act_modify_ipv4_src.0 */
2205 .description = "ipv4_addr",
2206 .field_bit_size = 32,
2207 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2208 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2210 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
2211 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}
2213 /* act_tid: 3, , table: act_modify_ipv4_dst.0 */
2215 .description = "ipv4_addr",
2216 .field_bit_size = 32,
2217 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2218 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2220 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
2221 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}
2223 /* act_tid: 3, , table: int_encap_mac_record.0 */
2225 .description = "ecv_valid",
2226 .field_bit_size = 1,
2227 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2228 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2233 .description = "ecv_custom_en",
2234 .field_bit_size = 1,
2235 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2236 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2239 .description = "ecv_vtag_type",
2240 .field_bit_size = 4,
2241 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2242 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2245 .description = "ecv_l2_en",
2246 .field_bit_size = 1,
2247 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2248 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2250 ULP_WP_SYM_ECV_L2_EN_YES}
2253 .description = "ecv_l3_type",
2254 .field_bit_size = 3,
2255 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2256 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2259 .description = "ecv_l4_type",
2260 .field_bit_size = 3,
2261 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2262 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2265 .description = "ecv_tun_type",
2266 .field_bit_size = 3,
2267 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2268 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2271 .description = "vtag_tpid",
2272 .field_bit_size = 16,
2273 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2274 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2277 .description = "vtag_pcp",
2278 .field_bit_size = 3,
2279 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2280 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2283 .description = "vtag_de",
2284 .field_bit_size = 1,
2285 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2286 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2289 .description = "vtag_vid",
2290 .field_bit_size = 12,
2291 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2292 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2294 /* act_tid: 3, , table: int_full_act_record.0 */
2296 .description = "flow_cntr_ptr",
2297 .field_bit_size = 14,
2298 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2299 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2301 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
2302 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
2305 .description = "age_enable",
2306 .field_bit_size = 1,
2307 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2308 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2311 .description = "agg_cntr_en",
2312 .field_bit_size = 1,
2313 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2314 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2317 .description = "rate_cntr_en",
2318 .field_bit_size = 1,
2319 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2320 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2323 .description = "flow_cntr_en",
2324 .field_bit_size = 1,
2325 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2326 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2328 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
2329 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
2330 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
2331 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
2332 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
2333 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
2334 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
2335 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
2338 .description = "tcpflags_key",
2339 .field_bit_size = 8,
2340 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2341 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2344 .description = "tcpflags_mir",
2345 .field_bit_size = 1,
2346 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2347 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2350 .description = "tcpflags_match",
2351 .field_bit_size = 1,
2352 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2353 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2356 .description = "encap_ptr",
2357 .field_bit_size = 11,
2358 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2359 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
2361 (BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR >> 8) & 0xff,
2362 BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR & 0xff}
2365 .description = "dst_ip_ptr",
2366 .field_bit_size = 10,
2367 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2368 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2370 (BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
2371 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 & 0xff}
2374 .description = "tcp_dst_port",
2375 .field_bit_size = 16,
2376 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2377 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2379 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
2380 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
2381 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
2382 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
2383 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
2384 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
2385 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
2386 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
2387 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2389 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
2390 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
2391 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2394 .description = "src_ip_ptr",
2395 .field_bit_size = 10,
2396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2397 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2399 (BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
2400 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 & 0xff}
2403 .description = "tcp_src_port",
2404 .field_bit_size = 16,
2405 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2406 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2408 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
2409 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
2410 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
2411 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
2412 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
2413 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
2414 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
2415 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
2416 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2418 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
2419 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
2420 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2423 .description = "meter_id",
2424 .field_bit_size = 10,
2425 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2426 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2429 .description = "l3_rdir",
2430 .field_bit_size = 1,
2431 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2432 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2435 .description = "tl3_rdir",
2436 .field_bit_size = 1,
2437 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2438 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2441 .description = "l3_ttl_dec",
2442 .field_bit_size = 1,
2443 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2444 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2446 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
2447 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
2450 .description = "tl3_ttl_dec",
2451 .field_bit_size = 1,
2452 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2453 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2455 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
2456 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
2459 .description = "decap_func",
2460 .field_bit_size = 4,
2461 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2462 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2464 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
2465 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
2466 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
2467 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
2468 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
2469 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
2470 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
2471 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
2472 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
2474 ULP_WP_SYM_DECAP_FUNC_THRU_TL2},
2475 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
2477 ULP_WP_SYM_DECAP_FUNC_THRU_L2}
2480 .description = "vnic_or_vport",
2481 .field_bit_size = 12,
2482 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2483 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2485 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
2486 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
2489 .description = "pop_vlan",
2490 .field_bit_size = 1,
2491 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2492 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2495 .description = "meter",
2496 .field_bit_size = 1,
2497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2498 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2501 .description = "mirror",
2502 .field_bit_size = 2,
2503 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2504 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2507 .description = "drop",
2508 .field_bit_size = 1,
2509 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2510 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2513 .description = "hit",
2514 .field_bit_size = 1,
2515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2516 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2519 .description = "type",
2520 .field_bit_size = 1,
2521 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2522 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2524 /* act_tid: 3, , table: ext_full_act_record.0 */
2526 .description = "flow_cntr_ptr",
2527 .field_bit_size = 14,
2528 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2529 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2531 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
2532 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
2535 .description = "age_enable",
2536 .field_bit_size = 1,
2537 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2538 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2541 .description = "agg_cntr_en",
2542 .field_bit_size = 1,
2543 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2544 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2547 .description = "rate_cntr_en",
2548 .field_bit_size = 1,
2549 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2550 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2553 .description = "flow_cntr_en",
2554 .field_bit_size = 1,
2555 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2556 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2558 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
2559 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
2560 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
2561 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
2562 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
2563 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
2564 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
2565 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
2568 .description = "flow_cntr_ext",
2569 .field_bit_size = 1,
2570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2571 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2574 .description = "tcpflags_key",
2575 .field_bit_size = 8,
2576 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2577 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2580 .description = "tcpflags_mir",
2581 .field_bit_size = 1,
2582 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2583 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2586 .description = "tcpflags_match",
2587 .field_bit_size = 1,
2588 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2589 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2592 .description = "encap_ptr",
2593 .field_bit_size = 11,
2594 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2595 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
2597 (BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR >> 8) & 0xff,
2598 BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR & 0xff}
2601 .description = "encap_rec_int",
2602 .field_bit_size = 1,
2603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2604 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2609 .description = "dst_ip_ptr",
2610 .field_bit_size = 10,
2611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2612 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2614 (BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
2615 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 & 0xff}
2618 .description = "tcp_dst_port",
2619 .field_bit_size = 16,
2620 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2621 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2623 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
2624 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
2625 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
2626 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
2627 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
2628 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
2629 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
2630 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
2631 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2633 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
2634 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
2635 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2638 .description = "src_ip_ptr",
2639 .field_bit_size = 10,
2640 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2641 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2643 (BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
2644 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 & 0xff}
2647 .description = "tcp_src_port",
2648 .field_bit_size = 16,
2649 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2650 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2652 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
2653 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
2654 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
2655 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
2656 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
2657 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
2658 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
2659 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
2660 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2662 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
2663 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
2664 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2667 .description = "meter_id",
2668 .field_bit_size = 10,
2669 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2670 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2673 .description = "l3_rdir",
2674 .field_bit_size = 1,
2675 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2676 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2679 .description = "tl3_rdir",
2680 .field_bit_size = 1,
2681 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2682 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2685 .description = "l3_ttl_dec",
2686 .field_bit_size = 1,
2687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2688 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2690 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
2691 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
2694 .description = "tl3_ttl_dec",
2695 .field_bit_size = 1,
2696 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2697 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2699 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
2700 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
2703 .description = "decap_func",
2704 .field_bit_size = 4,
2705 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2706 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2708 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
2709 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
2710 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
2711 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
2712 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
2713 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
2714 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
2715 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
2716 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
2718 ULP_WP_SYM_DECAP_FUNC_THRU_TL2},
2719 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
2721 ULP_WP_SYM_DECAP_FUNC_THRU_L2}
2724 .description = "vnic_or_vport",
2725 .field_bit_size = 12,
2726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2727 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2729 (BNXT_ULP_ACT_PROP_IDX_VNIC >> 8) & 0xff,
2730 BNXT_ULP_ACT_PROP_IDX_VNIC & 0xff}
2733 .description = "pop_vlan",
2734 .field_bit_size = 1,
2735 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2736 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2739 .description = "meter",
2740 .field_bit_size = 1,
2741 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2742 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2745 .description = "mirror",
2746 .field_bit_size = 2,
2747 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2748 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2751 .description = "drop",
2752 .field_bit_size = 1,
2753 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2754 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2757 .description = "ecv_valid",
2758 .field_bit_size = 1,
2759 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2760 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2762 ULP_WP_SYM_ECV_VALID_YES}
2765 .description = "ecv_custom_en",
2766 .field_bit_size = 1,
2767 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2768 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2771 .description = "ecv_vtag_type",
2772 .field_bit_size = 4,
2773 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2774 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2777 .description = "ecv_l2_en",
2778 .field_bit_size = 1,
2779 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2780 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2783 .description = "ecv_l3_type",
2784 .field_bit_size = 3,
2785 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2786 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2789 .description = "ecv_l4_type",
2790 .field_bit_size = 3,
2791 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2792 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2795 .description = "ecv_tun_type",
2796 .field_bit_size = 3,
2797 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2798 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2801 .description = "vtag_tpid",
2802 .field_bit_size = 16,
2803 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2804 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2807 .description = "vtag_pcp",
2808 .field_bit_size = 3,
2809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2810 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2813 .description = "vtag_de",
2814 .field_bit_size = 1,
2815 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2816 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2819 .description = "vtag_vid",
2820 .field_bit_size = 12,
2821 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2822 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2824 /* act_tid: 4, , table: int_flow_counter_tbl.0 */
2826 .description = "count",
2827 .field_bit_size = 64,
2828 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2829 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2831 /* act_tid: 4, , table: int_vtag_encap_record.0 */
2833 .description = "ecv_valid",
2834 .field_bit_size = 1,
2835 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2836 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2841 .description = "ecv_custom_en",
2842 .field_bit_size = 1,
2843 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2844 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2847 .description = "ecv_vtag_type",
2848 .field_bit_size = 4,
2849 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2850 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2852 ULP_WP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
2855 .description = "ecv_l2_en",
2856 .field_bit_size = 1,
2857 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2858 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2861 .description = "ecv_l3_type",
2862 .field_bit_size = 3,
2863 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2864 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2867 .description = "ecv_l4_type",
2868 .field_bit_size = 3,
2869 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2870 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2873 .description = "ecv_tun_type",
2874 .field_bit_size = 3,
2875 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2876 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2879 .description = "vtag_tpid",
2880 .field_bit_size = 16,
2881 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2882 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2884 (BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
2885 BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff}
2888 .description = "vtag_pcp",
2889 .field_bit_size = 3,
2890 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2891 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2893 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
2894 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff}
2897 .description = "vtag_de",
2898 .field_bit_size = 1,
2899 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2900 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2903 .description = "vtag_vid",
2904 .field_bit_size = 12,
2905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2906 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
2908 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
2909 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
2911 /* act_tid: 4, , table: int_full_act_record.0 */
2913 .description = "flow_cntr_ptr",
2914 .field_bit_size = 14,
2915 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2916 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2918 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
2919 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
2922 .description = "age_enable",
2923 .field_bit_size = 1,
2924 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2925 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2928 .description = "agg_cntr_en",
2929 .field_bit_size = 1,
2930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2931 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2934 .description = "rate_cntr_en",
2935 .field_bit_size = 1,
2936 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2937 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2940 .description = "flow_cntr_en",
2941 .field_bit_size = 1,
2942 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2943 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
2945 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
2946 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
2947 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
2948 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
2949 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
2950 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
2951 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
2952 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
2955 .description = "tcpflags_key",
2956 .field_bit_size = 8,
2957 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2958 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2961 .description = "tcpflags_mir",
2962 .field_bit_size = 1,
2963 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2964 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2967 .description = "tcpflags_match",
2968 .field_bit_size = 1,
2969 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2970 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2973 .description = "encap_ptr",
2974 .field_bit_size = 11,
2975 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2976 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
2978 (BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
2979 BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
2982 .description = "dst_ip_ptr",
2983 .field_bit_size = 10,
2984 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2985 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2988 .description = "tcp_dst_port",
2989 .field_bit_size = 16,
2990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2991 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2994 .description = "src_ip_ptr",
2995 .field_bit_size = 10,
2996 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2997 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3000 .description = "tcp_src_port",
3001 .field_bit_size = 16,
3002 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3003 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3006 .description = "meter_id",
3007 .field_bit_size = 10,
3008 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3009 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3012 .description = "l3_rdir",
3013 .field_bit_size = 1,
3014 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3015 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3018 .description = "tl3_rdir",
3019 .field_bit_size = 1,
3020 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3021 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3024 .description = "l3_ttl_dec",
3025 .field_bit_size = 1,
3026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3027 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3029 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
3030 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
3033 .description = "tl3_ttl_dec",
3034 .field_bit_size = 1,
3035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3036 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3038 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
3039 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
3042 .description = "decap_func",
3043 .field_bit_size = 4,
3044 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3045 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3048 .description = "vnic_or_vport",
3049 .field_bit_size = 12,
3050 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3051 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3053 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
3054 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
3057 .description = "pop_vlan",
3058 .field_bit_size = 1,
3059 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3060 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3063 .description = "meter",
3064 .field_bit_size = 1,
3065 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3066 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3069 .description = "mirror",
3070 .field_bit_size = 2,
3071 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3072 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3075 .description = "drop",
3076 .field_bit_size = 1,
3077 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3078 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3080 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
3081 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
3082 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
3083 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
3084 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
3085 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
3086 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
3087 (uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
3090 .description = "hit",
3091 .field_bit_size = 1,
3092 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3093 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3096 .description = "type",
3097 .field_bit_size = 1,
3098 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3099 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3101 /* act_tid: 4, , table: ext_full_act_record.no_tag */
3103 .description = "flow_cntr_ptr",
3104 .field_bit_size = 14,
3105 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3106 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
3108 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
3109 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
3112 .description = "age_enable",
3113 .field_bit_size = 1,
3114 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3115 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3118 .description = "agg_cntr_en",
3119 .field_bit_size = 1,
3120 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3121 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3124 .description = "rate_cntr_en",
3125 .field_bit_size = 1,
3126 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3127 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3130 .description = "flow_cntr_en",
3131 .field_bit_size = 1,
3132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3133 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3135 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
3136 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
3137 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
3138 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
3139 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
3140 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
3141 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
3142 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
3145 .description = "flow_cntr_ext",
3146 .field_bit_size = 1,
3147 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3148 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3151 .description = "tcpflags_key",
3152 .field_bit_size = 8,
3153 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3154 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3157 .description = "tcpflags_mir",
3158 .field_bit_size = 1,
3159 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3160 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3163 .description = "tcpflags_match",
3164 .field_bit_size = 1,
3165 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3166 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3169 .description = "encap_ptr",
3170 .field_bit_size = 11,
3171 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3172 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3175 .description = "encap_rec_int",
3176 .field_bit_size = 1,
3177 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3178 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3181 .description = "dst_ip_ptr",
3182 .field_bit_size = 10,
3183 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3184 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3187 .description = "tcp_dst_port",
3188 .field_bit_size = 16,
3189 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3190 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3193 .description = "src_ip_ptr",
3194 .field_bit_size = 10,
3195 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3196 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3199 .description = "tcp_src_port",
3200 .field_bit_size = 16,
3201 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3202 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3205 .description = "meter_id",
3206 .field_bit_size = 10,
3207 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3208 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3211 .description = "l3_rdir",
3212 .field_bit_size = 1,
3213 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3214 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3217 .description = "tl3_rdir",
3218 .field_bit_size = 1,
3219 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3220 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3223 .description = "l3_ttl_dec",
3224 .field_bit_size = 1,
3225 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3226 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3228 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
3229 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
3232 .description = "tl3_ttl_dec",
3233 .field_bit_size = 1,
3234 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3235 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3237 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
3238 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
3241 .description = "decap_func",
3242 .field_bit_size = 4,
3243 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3244 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3247 .description = "vnic_or_vport",
3248 .field_bit_size = 12,
3249 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3250 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3252 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
3253 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
3256 .description = "pop_vlan",
3257 .field_bit_size = 1,
3258 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3259 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3262 .description = "meter",
3263 .field_bit_size = 1,
3264 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3265 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3268 .description = "mirror",
3269 .field_bit_size = 2,
3270 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3271 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3274 .description = "drop",
3275 .field_bit_size = 1,
3276 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3277 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3279 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
3280 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
3281 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
3282 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
3283 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
3284 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
3285 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
3286 (uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
3289 .description = "ecv_valid",
3290 .field_bit_size = 1,
3291 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3292 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3294 ULP_WP_SYM_ECV_VALID_YES}
3297 .description = "ecv_custom_en",
3298 .field_bit_size = 1,
3299 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3300 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3303 .description = "ecv_vtag_type",
3304 .field_bit_size = 4,
3305 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3306 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3309 .description = "ecv_l2_en",
3310 .field_bit_size = 1,
3311 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3312 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3315 .description = "ecv_l3_type",
3316 .field_bit_size = 3,
3317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3318 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3321 .description = "ecv_l4_type",
3322 .field_bit_size = 3,
3323 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3324 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3327 .description = "ecv_tun_type",
3328 .field_bit_size = 3,
3329 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3330 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3333 .description = "vtag_tpid",
3334 .field_bit_size = 16,
3335 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3336 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3339 .description = "vtag_pcp",
3340 .field_bit_size = 3,
3341 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3342 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3345 .description = "vtag_de",
3346 .field_bit_size = 1,
3347 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3348 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3351 .description = "vtag_vid",
3352 .field_bit_size = 12,
3353 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3354 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3356 /* act_tid: 4, , table: ext_full_act_record.one_tag */
3358 .description = "flow_cntr_ptr",
3359 .field_bit_size = 14,
3360 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3361 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
3363 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
3364 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
3367 .description = "age_enable",
3368 .field_bit_size = 1,
3369 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3370 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3373 .description = "agg_cntr_en",
3374 .field_bit_size = 1,
3375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3376 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3379 .description = "rate_cntr_en",
3380 .field_bit_size = 1,
3381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3382 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3385 .description = "flow_cntr_en",
3386 .field_bit_size = 1,
3387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3388 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3390 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
3391 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
3392 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
3393 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
3394 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
3395 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
3396 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
3397 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
3400 .description = "flow_cntr_ext",
3401 .field_bit_size = 1,
3402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3403 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3406 .description = "tcpflags_key",
3407 .field_bit_size = 8,
3408 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3409 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3412 .description = "tcpflags_mir",
3413 .field_bit_size = 1,
3414 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3415 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3418 .description = "tcpflags_match",
3419 .field_bit_size = 1,
3420 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3421 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3424 .description = "encap_ptr",
3425 .field_bit_size = 11,
3426 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3427 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3430 .description = "encap_rec_int",
3431 .field_bit_size = 1,
3432 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3433 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3436 .description = "dst_ip_ptr",
3437 .field_bit_size = 10,
3438 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3439 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3442 .description = "tcp_dst_port",
3443 .field_bit_size = 16,
3444 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3445 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3448 .description = "src_ip_ptr",
3449 .field_bit_size = 10,
3450 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3451 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3454 .description = "tcp_src_port",
3455 .field_bit_size = 16,
3456 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3457 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3460 .description = "meter_id",
3461 .field_bit_size = 10,
3462 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3463 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3466 .description = "l3_rdir",
3467 .field_bit_size = 1,
3468 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3469 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3472 .description = "tl3_rdir",
3473 .field_bit_size = 1,
3474 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3475 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3478 .description = "l3_ttl_dec",
3479 .field_bit_size = 1,
3480 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3481 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3483 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
3484 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
3487 .description = "tl3_ttl_dec",
3488 .field_bit_size = 1,
3489 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3490 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3492 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
3493 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
3496 .description = "decap_func",
3497 .field_bit_size = 4,
3498 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3499 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3502 .description = "vnic_or_vport",
3503 .field_bit_size = 12,
3504 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3505 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3507 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
3508 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
3511 .description = "pop_vlan",
3512 .field_bit_size = 1,
3513 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3514 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3516 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 56) & 0xff,
3517 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 48) & 0xff,
3518 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 40) & 0xff,
3519 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 32) & 0xff,
3520 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 24) & 0xff,
3521 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 16) & 0xff,
3522 ((uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN >> 8) & 0xff,
3523 (uint64_t)BNXT_ULP_ACT_BIT_POP_VLAN & 0xff}
3526 .description = "meter",
3527 .field_bit_size = 1,
3528 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3529 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3532 .description = "mirror",
3533 .field_bit_size = 2,
3534 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3535 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3538 .description = "drop",
3539 .field_bit_size = 1,
3540 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3541 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3543 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 56) & 0xff,
3544 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 48) & 0xff,
3545 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 40) & 0xff,
3546 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 32) & 0xff,
3547 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 24) & 0xff,
3548 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 16) & 0xff,
3549 ((uint64_t)BNXT_ULP_ACT_BIT_DROP >> 8) & 0xff,
3550 (uint64_t)BNXT_ULP_ACT_BIT_DROP & 0xff}
3553 .description = "ecv_valid",
3554 .field_bit_size = 1,
3555 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3556 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3561 .description = "ecv_custom_en",
3562 .field_bit_size = 1,
3563 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3564 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3567 .description = "ecv_vtag_type",
3568 .field_bit_size = 4,
3569 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3570 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3572 ULP_WP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
3575 .description = "ecv_l2_en",
3576 .field_bit_size = 1,
3577 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3578 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3581 .description = "ecv_l3_type",
3582 .field_bit_size = 3,
3583 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3584 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3587 .description = "ecv_l4_type",
3588 .field_bit_size = 3,
3589 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3590 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3593 .description = "ecv_tun_type",
3594 .field_bit_size = 3,
3595 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3596 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3599 .description = "vtag_tpid",
3600 .field_bit_size = 16,
3601 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3602 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3604 (BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN >> 8) & 0xff,
3605 BNXT_ULP_ACT_PROP_IDX_PUSH_VLAN & 0xff}
3608 .description = "vtag_pcp",
3609 .field_bit_size = 3,
3610 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3611 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3613 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP >> 8) & 0xff,
3614 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_PCP & 0xff}
3617 .description = "vtag_de",
3618 .field_bit_size = 1,
3619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3620 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3623 .description = "vtag_vid",
3624 .field_bit_size = 12,
3625 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3626 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3628 (BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID >> 8) & 0xff,
3629 BNXT_ULP_ACT_PROP_IDX_SET_VLAN_VID & 0xff}
3631 /* act_tid: 5, , table: int_flow_counter_tbl.0 */
3633 .description = "count",
3634 .field_bit_size = 64,
3635 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3636 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3638 /* act_tid: 5, , table: act_modify_ipv4_src.0 */
3640 .description = "ipv4_addr",
3641 .field_bit_size = 32,
3642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3643 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3645 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC >> 8) & 0xff,
3646 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_SRC & 0xff}
3648 /* act_tid: 5, , table: act_modify_ipv4_dst.0 */
3650 .description = "ipv4_addr",
3651 .field_bit_size = 32,
3652 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3653 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3655 (BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST >> 8) & 0xff,
3656 BNXT_ULP_ACT_PROP_IDX_SET_IPV4_DST & 0xff}
3658 /* act_tid: 5, , table: int_encap_mac_record.dummy */
3660 .description = "ecv_valid",
3661 .field_bit_size = 1,
3662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3663 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3668 .description = "ecv_custom_en",
3669 .field_bit_size = 1,
3670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3671 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3674 .description = "ecv_vtag_type",
3675 .field_bit_size = 4,
3676 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3677 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3680 .description = "ecv_l2_en",
3681 .field_bit_size = 1,
3682 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3683 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3685 ULP_WP_SYM_ECV_L2_EN_YES}
3688 .description = "ecv_l3_type",
3689 .field_bit_size = 3,
3690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3691 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3694 .description = "ecv_l4_type",
3695 .field_bit_size = 3,
3696 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3697 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3700 .description = "ecv_tun_type",
3701 .field_bit_size = 3,
3702 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3703 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3706 .description = "vtag_tpid",
3707 .field_bit_size = 16,
3708 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3709 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3712 .description = "vtag_pcp",
3713 .field_bit_size = 3,
3714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3715 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3718 .description = "vtag_de",
3719 .field_bit_size = 1,
3720 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3721 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3724 .description = "vtag_vid",
3725 .field_bit_size = 12,
3726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3727 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3729 /* act_tid: 5, , table: int_full_act_record.0 */
3731 .description = "flow_cntr_ptr",
3732 .field_bit_size = 14,
3733 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3734 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
3736 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
3737 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
3740 .description = "age_enable",
3741 .field_bit_size = 1,
3742 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3743 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3746 .description = "agg_cntr_en",
3747 .field_bit_size = 1,
3748 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3749 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3752 .description = "rate_cntr_en",
3753 .field_bit_size = 1,
3754 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3755 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3758 .description = "flow_cntr_en",
3759 .field_bit_size = 1,
3760 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3761 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3763 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
3764 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
3765 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
3766 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
3767 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
3768 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
3769 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
3770 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
3773 .description = "tcpflags_key",
3774 .field_bit_size = 8,
3775 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3776 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3779 .description = "tcpflags_mir",
3780 .field_bit_size = 1,
3781 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3782 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3785 .description = "tcpflags_match",
3786 .field_bit_size = 1,
3787 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3788 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3791 .description = "encap_ptr",
3792 .field_bit_size = 11,
3793 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3794 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
3796 (BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR >> 8) & 0xff,
3797 BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR & 0xff}
3800 .description = "dst_ip_ptr",
3801 .field_bit_size = 10,
3802 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3803 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
3805 (BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
3806 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 & 0xff}
3809 .description = "tcp_dst_port",
3810 .field_bit_size = 16,
3811 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3812 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3814 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
3815 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
3816 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
3817 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
3818 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
3819 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
3820 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
3821 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
3822 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3824 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
3825 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
3826 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
3829 .description = "src_ip_ptr",
3830 .field_bit_size = 10,
3831 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3832 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
3834 (BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
3835 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 & 0xff}
3838 .description = "tcp_src_port",
3839 .field_bit_size = 16,
3840 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3841 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3843 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
3844 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
3845 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
3846 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
3847 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
3848 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
3849 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
3850 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
3851 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3853 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
3854 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
3855 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
3858 .description = "meter_id",
3859 .field_bit_size = 10,
3860 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3861 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3864 .description = "l3_rdir",
3865 .field_bit_size = 1,
3866 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3867 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3870 .description = "tl3_rdir",
3871 .field_bit_size = 1,
3872 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3873 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3876 .description = "l3_ttl_dec",
3877 .field_bit_size = 1,
3878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3879 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3881 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
3882 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
3885 .description = "tl3_ttl_dec",
3886 .field_bit_size = 1,
3887 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3888 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3890 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
3891 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
3894 .description = "decap_func",
3895 .field_bit_size = 4,
3896 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3897 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
3899 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
3900 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
3901 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
3902 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
3903 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
3904 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
3905 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
3906 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
3907 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
3909 ULP_WP_SYM_DECAP_FUNC_THRU_TL2},
3910 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
3912 ULP_WP_SYM_DECAP_FUNC_THRU_L2}
3915 .description = "vnic_or_vport",
3916 .field_bit_size = 12,
3917 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3918 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
3920 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
3921 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
3924 .description = "pop_vlan",
3925 .field_bit_size = 1,
3926 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3927 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3930 .description = "meter",
3931 .field_bit_size = 1,
3932 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3933 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3936 .description = "mirror",
3937 .field_bit_size = 2,
3938 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3939 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3942 .description = "drop",
3943 .field_bit_size = 1,
3944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3945 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3948 .description = "hit",
3949 .field_bit_size = 1,
3950 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3951 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3954 .description = "type",
3955 .field_bit_size = 1,
3956 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3957 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3959 /* act_tid: 5, , table: ext_full_act_record.0 */
3961 .description = "flow_cntr_ptr",
3962 .field_bit_size = 14,
3963 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3964 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
3966 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
3967 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
3970 .description = "age_enable",
3971 .field_bit_size = 1,
3972 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3973 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3976 .description = "agg_cntr_en",
3977 .field_bit_size = 1,
3978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3979 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3982 .description = "rate_cntr_en",
3983 .field_bit_size = 1,
3984 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3985 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3988 .description = "flow_cntr_en",
3989 .field_bit_size = 1,
3990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3991 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
3993 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
3994 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
3995 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
3996 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
3997 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
3998 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
3999 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
4000 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
4003 .description = "flow_cntr_ext",
4004 .field_bit_size = 1,
4005 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4006 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4009 .description = "tcpflags_key",
4010 .field_bit_size = 8,
4011 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4012 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4015 .description = "tcpflags_mir",
4016 .field_bit_size = 1,
4017 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4018 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4021 .description = "tcpflags_match",
4022 .field_bit_size = 1,
4023 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4024 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4027 .description = "encap_ptr",
4028 .field_bit_size = 11,
4029 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4030 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
4032 (BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR >> 8) & 0xff,
4033 BNXT_ULP_GLB_RF_IDX_ENCAP_MAC_PTR & 0xff}
4036 .description = "encap_rec_int",
4037 .field_bit_size = 1,
4038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4039 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4044 .description = "dst_ip_ptr",
4045 .field_bit_size = 10,
4046 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4047 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4049 (BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 >> 8) & 0xff,
4050 BNXT_ULP_RF_IDX_MODIFY_IPV4_DST_PTR_0 & 0xff}
4053 .description = "tcp_dst_port",
4054 .field_bit_size = 16,
4055 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4056 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
4058 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 56) & 0xff,
4059 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 48) & 0xff,
4060 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 40) & 0xff,
4061 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 32) & 0xff,
4062 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 24) & 0xff,
4063 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 16) & 0xff,
4064 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST >> 8) & 0xff,
4065 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_DST & 0xff},
4066 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
4068 (BNXT_ULP_ACT_PROP_IDX_SET_TP_DST >> 8) & 0xff,
4069 BNXT_ULP_ACT_PROP_IDX_SET_TP_DST & 0xff},
4070 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4073 .description = "src_ip_ptr",
4074 .field_bit_size = 10,
4075 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4076 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4078 (BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 >> 8) & 0xff,
4079 BNXT_ULP_RF_IDX_MODIFY_IPV4_SRC_PTR_0 & 0xff}
4082 .description = "tcp_src_port",
4083 .field_bit_size = 16,
4084 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4085 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
4087 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 56) & 0xff,
4088 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 48) & 0xff,
4089 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 40) & 0xff,
4090 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 32) & 0xff,
4091 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 24) & 0xff,
4092 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 16) & 0xff,
4093 ((uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC >> 8) & 0xff,
4094 (uint64_t)BNXT_ULP_ACT_BIT_SET_TP_SRC & 0xff},
4095 .field_src2 = BNXT_ULP_FIELD_SRC_ACT_PROP,
4097 (BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC >> 8) & 0xff,
4098 BNXT_ULP_ACT_PROP_IDX_SET_TP_SRC & 0xff},
4099 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4102 .description = "meter_id",
4103 .field_bit_size = 10,
4104 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4105 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4108 .description = "l3_rdir",
4109 .field_bit_size = 1,
4110 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4111 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4114 .description = "tl3_rdir",
4115 .field_bit_size = 1,
4116 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4117 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4120 .description = "l3_ttl_dec",
4121 .field_bit_size = 1,
4122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4123 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4125 (BNXT_ULP_CF_IDX_ACT_DEC_TTL >> 8) & 0xff,
4126 BNXT_ULP_CF_IDX_ACT_DEC_TTL & 0xff}
4129 .description = "tl3_ttl_dec",
4130 .field_bit_size = 1,
4131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4132 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4134 (BNXT_ULP_CF_IDX_ACT_T_DEC_TTL >> 8) & 0xff,
4135 BNXT_ULP_CF_IDX_ACT_T_DEC_TTL & 0xff}
4138 .description = "decap_func",
4139 .field_bit_size = 4,
4140 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4141 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
4143 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
4144 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
4145 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
4146 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
4147 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
4148 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
4149 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
4150 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
4151 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
4153 ULP_WP_SYM_DECAP_FUNC_THRU_TL2},
4154 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
4156 ULP_WP_SYM_DECAP_FUNC_THRU_L2}
4159 .description = "vnic_or_vport",
4160 .field_bit_size = 12,
4161 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4162 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
4164 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
4165 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
4168 .description = "pop_vlan",
4169 .field_bit_size = 1,
4170 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4171 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4174 .description = "meter",
4175 .field_bit_size = 1,
4176 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4177 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4180 .description = "mirror",
4181 .field_bit_size = 2,
4182 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4183 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4186 .description = "drop",
4187 .field_bit_size = 1,
4188 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4189 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4192 .description = "ecv_valid",
4193 .field_bit_size = 1,
4194 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4195 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4197 ULP_WP_SYM_ECV_VALID_YES}
4200 .description = "ecv_custom_en",
4201 .field_bit_size = 1,
4202 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4203 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4206 .description = "ecv_vtag_type",
4207 .field_bit_size = 4,
4208 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4209 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4212 .description = "ecv_l2_en",
4213 .field_bit_size = 1,
4214 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4215 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4218 .description = "ecv_l3_type",
4219 .field_bit_size = 3,
4220 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4221 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4224 .description = "ecv_l4_type",
4225 .field_bit_size = 3,
4226 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4227 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4230 .description = "ecv_tun_type",
4231 .field_bit_size = 3,
4232 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4233 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4236 .description = "vtag_tpid",
4237 .field_bit_size = 16,
4238 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4239 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4242 .description = "vtag_pcp",
4243 .field_bit_size = 3,
4244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4245 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4248 .description = "vtag_de",
4249 .field_bit_size = 1,
4250 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4251 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4254 .description = "vtag_vid",
4255 .field_bit_size = 12,
4256 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4257 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4259 /* act_tid: 6, , table: int_flow_counter_tbl.0 */
4261 .description = "count",
4262 .field_bit_size = 64,
4263 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4264 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4266 /* act_tid: 6, , table: sp_smac_ipv4.0 */
4268 .description = "smac",
4269 .field_bit_size = 48,
4270 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4271 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4273 (BNXT_ULP_ENC_FIELD_ETH_SMAC >> 8) & 0xff,
4274 BNXT_ULP_ENC_FIELD_ETH_SMAC & 0xff}
4277 .description = "ipv4_src_addr",
4278 .field_bit_size = 32,
4279 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4280 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4282 (BNXT_ULP_ENC_FIELD_IPV4_SADDR >> 8) & 0xff,
4283 BNXT_ULP_ENC_FIELD_IPV4_SADDR & 0xff}
4285 /* act_tid: 6, , table: sp_smac_ipv6.0 */
4287 .description = "smac",
4288 .field_bit_size = 48,
4289 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4290 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4292 (BNXT_ULP_ENC_FIELD_ETH_SMAC >> 8) & 0xff,
4293 BNXT_ULP_ENC_FIELD_ETH_SMAC & 0xff}
4296 .description = "ipv6_src_addr",
4297 .field_bit_size = 128,
4298 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4299 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4301 (BNXT_ULP_ENC_FIELD_IPV6_SADDR >> 8) & 0xff,
4302 BNXT_ULP_ENC_FIELD_IPV6_SADDR & 0xff}
4304 /* act_tid: 6, , table: int_tun_encap_record.0 */
4306 .description = "ecv_valid",
4307 .field_bit_size = 1,
4308 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4309 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4311 ULP_WP_SYM_ECV_VALID_YES}
4314 .description = "ecv_custom_en",
4315 .field_bit_size = 1,
4316 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4317 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4320 .description = "ecv_vtag_type",
4321 .field_bit_size = 4,
4322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4323 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
4325 (BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE >> 8) & 0xff,
4326 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE & 0xff}
4329 .description = "ecv_l2_en",
4330 .field_bit_size = 1,
4331 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4332 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4334 ULP_WP_SYM_ECV_L2_EN_YES}
4337 .description = "ecv_l3_type",
4338 .field_bit_size = 3,
4339 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4340 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
4342 (BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE >> 8) & 0xff,
4343 BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE & 0xff}
4346 .description = "ecv_l4_type",
4347 .field_bit_size = 3,
4348 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4349 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4351 ULP_WP_SYM_ECV_L4_TYPE_UDP_CSUM}
4354 .description = "ecv_tun_type",
4355 .field_bit_size = 3,
4356 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4357 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4359 ULP_WP_SYM_ECV_TUN_TYPE_VXLAN}
4362 .description = "enc_eth_dmac",
4363 .field_bit_size = 48,
4364 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4365 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4367 (BNXT_ULP_ENC_FIELD_ETH_DMAC >> 8) & 0xff,
4368 BNXT_ULP_ENC_FIELD_ETH_DMAC & 0xff}
4371 .description = "enc_o_vlan_tag",
4372 .field_bit_size = 16,
4373 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4374 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4376 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
4377 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
4378 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
4379 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
4380 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
4381 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
4382 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
4383 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
4384 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4386 (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff,
4387 BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff},
4388 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4391 .description = "enc_o_vlan_type",
4392 .field_bit_size = 16,
4393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4394 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4396 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
4397 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
4398 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
4399 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
4400 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
4401 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
4402 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
4403 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
4404 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4406 (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff,
4407 BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff},
4408 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4411 .description = "enc_i_vlan_tag",
4412 .field_bit_size = 16,
4413 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4414 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4416 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 56) & 0xff,
4417 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 48) & 0xff,
4418 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 40) & 0xff,
4419 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 32) & 0xff,
4420 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 24) & 0xff,
4421 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 16) & 0xff,
4422 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 8) & 0xff,
4423 (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff},
4424 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4426 (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff,
4427 BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff},
4428 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4431 .description = "enc_i_vlan_type",
4432 .field_bit_size = 16,
4433 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4434 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4436 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 56) & 0xff,
4437 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 48) & 0xff,
4438 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 40) & 0xff,
4439 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 32) & 0xff,
4440 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 24) & 0xff,
4441 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 16) & 0xff,
4442 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 8) & 0xff,
4443 (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff},
4444 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4446 (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff,
4447 BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff},
4448 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4451 .description = "enc_ipv4_ihl",
4452 .field_bit_size = 8,
4453 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4454 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4456 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4457 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4458 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4459 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4460 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4461 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4462 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4463 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4464 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4466 (BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff,
4467 BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff},
4468 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4471 .description = "enc_ipv4_tos",
4472 .field_bit_size = 8,
4473 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4474 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4476 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4477 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4478 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4479 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4480 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4481 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4482 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4483 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4484 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4486 (BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff,
4487 BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff},
4488 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4491 .description = "enc_ipv4_pkt_id",
4492 .field_bit_size = 16,
4493 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4494 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4496 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4497 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4498 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4499 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4500 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4501 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4502 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4503 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4504 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4506 (BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff,
4507 BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff},
4508 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4511 .description = "enc_ipv4_frag",
4512 .field_bit_size = 16,
4513 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4514 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4516 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4517 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4518 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4519 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4520 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4521 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4522 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4523 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4524 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4526 (BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff,
4527 BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff},
4528 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4531 .description = "enc_ipv4_ttl",
4532 .field_bit_size = 8,
4533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4534 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4536 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4537 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4538 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4539 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4540 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4541 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4542 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4543 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4544 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4546 (BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff,
4547 BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff},
4548 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4551 .description = "enc_ipv4_proto",
4552 .field_bit_size = 8,
4553 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4554 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4556 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4557 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4558 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4559 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4560 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4561 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4562 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4563 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4564 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4566 (BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff,
4567 BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff},
4568 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4571 .description = "enc_ipv4_daddr",
4572 .field_bit_size = 32,
4573 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4574 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4576 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
4577 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
4578 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
4579 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
4580 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
4581 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
4582 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
4583 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
4584 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4586 (BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff,
4587 BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff},
4588 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4591 .description = "enc_ipv6_vtc",
4592 .field_bit_size = 32,
4593 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4594 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4596 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
4597 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
4598 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
4599 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
4600 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
4601 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
4602 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
4603 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
4604 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4606 (BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff,
4607 BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff},
4608 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4611 .description = "enc_ipv6_zero",
4612 .field_bit_size = 16,
4613 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4614 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4616 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
4617 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
4618 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
4619 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
4620 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
4621 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
4622 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
4623 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
4624 .field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
4625 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4628 .description = "enc_ipv6_proto",
4629 .field_bit_size = 8,
4630 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4631 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4633 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
4634 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
4635 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
4636 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
4637 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
4638 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
4639 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
4640 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
4641 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4643 (BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff,
4644 BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff},
4645 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4648 .description = "enc_ipv6_ttl",
4649 .field_bit_size = 8,
4650 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4651 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4653 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
4654 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
4655 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
4656 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
4657 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
4658 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
4659 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
4660 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
4661 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4663 (BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff,
4664 BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff},
4665 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4668 .description = "enc_ipv6_daddr",
4669 .field_bit_size = 128,
4670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4671 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4673 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
4674 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
4675 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
4676 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
4677 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
4678 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
4679 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
4680 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
4681 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4683 (BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
4684 BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff},
4685 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4688 .description = "enc_udp_sport",
4689 .field_bit_size = 16,
4690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4691 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4693 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 56) & 0xff,
4694 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 48) & 0xff,
4695 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 40) & 0xff,
4696 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 32) & 0xff,
4697 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 24) & 0xff,
4698 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 16) & 0xff,
4699 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 8) & 0xff,
4700 (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff},
4701 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4703 (BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
4704 BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff},
4705 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4708 .description = "enc_udp_dport",
4709 .field_bit_size = 16,
4710 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4711 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4713 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 56) & 0xff,
4714 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 48) & 0xff,
4715 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 40) & 0xff,
4716 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 32) & 0xff,
4717 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 24) & 0xff,
4718 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 16) & 0xff,
4719 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 8) & 0xff,
4720 (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff},
4721 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4723 (BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
4724 BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff},
4725 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4728 .description = "enc_vxlan_flags",
4729 .field_bit_size = 8,
4730 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4731 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4733 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
4734 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
4735 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
4736 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
4737 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
4738 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
4739 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
4740 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
4741 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4743 (BNXT_ULP_ENC_FIELD_VXLAN_FLAGS >> 8) & 0xff,
4744 BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff},
4745 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4748 .description = "enc_vxlan_rsvd0",
4749 .field_bit_size = 24,
4750 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4751 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4753 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
4754 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
4755 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
4756 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
4757 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
4758 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
4759 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
4760 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
4761 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4763 (BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff,
4764 BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff},
4765 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4768 .description = "enc_vxlan_vni",
4769 .field_bit_size = 24,
4770 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4771 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4773 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
4774 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
4775 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
4776 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
4777 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
4778 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
4779 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
4780 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
4781 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4783 (BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff,
4784 BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff},
4785 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4788 .description = "enc_vxlan_rsvd1",
4789 .field_bit_size = 8,
4790 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4791 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
4793 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
4794 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
4795 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
4796 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
4797 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
4798 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
4799 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
4800 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
4801 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
4803 (BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff,
4804 BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff},
4805 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4807 /* act_tid: 6, , table: int_full_act_record.0 */
4809 .description = "flow_cntr_ptr",
4810 .field_bit_size = 14,
4811 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4812 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4814 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
4815 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
4818 .description = "age_enable",
4819 .field_bit_size = 1,
4820 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4821 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4824 .description = "agg_cntr_en",
4825 .field_bit_size = 1,
4826 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4827 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4830 .description = "rate_cntr_en",
4831 .field_bit_size = 1,
4832 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4833 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4836 .description = "flow_cntr_en",
4837 .field_bit_size = 1,
4838 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4839 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
4841 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
4842 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
4843 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
4844 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
4845 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
4846 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
4847 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
4848 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
4851 .description = "tcpflags_key",
4852 .field_bit_size = 8,
4853 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4854 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4857 .description = "tcpflags_mir",
4858 .field_bit_size = 1,
4859 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4860 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4863 .description = "tcpflags_match",
4864 .field_bit_size = 1,
4865 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4866 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4869 .description = "encap_ptr",
4870 .field_bit_size = 11,
4871 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4872 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4874 (BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
4875 BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
4878 .description = "dst_ip_ptr",
4879 .field_bit_size = 10,
4880 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4881 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4884 .description = "tcp_dst_port",
4885 .field_bit_size = 16,
4886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4887 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4890 .description = "src_ip_ptr",
4891 .field_bit_size = 10,
4892 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4893 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4896 .description = "tcp_src_port",
4897 .field_bit_size = 16,
4898 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4899 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4902 .description = "meter_id",
4903 .field_bit_size = 10,
4904 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4905 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4908 .description = "l3_rdir",
4909 .field_bit_size = 1,
4910 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4911 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4914 .description = "tl3_rdir",
4915 .field_bit_size = 1,
4916 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4917 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4920 .description = "l3_ttl_dec",
4921 .field_bit_size = 1,
4922 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4923 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4926 .description = "tl3_ttl_dec",
4927 .field_bit_size = 1,
4928 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4929 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4932 .description = "decap_func",
4933 .field_bit_size = 4,
4934 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4935 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4938 .description = "vnic_or_vport",
4939 .field_bit_size = 12,
4940 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4941 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
4943 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
4944 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
4947 .description = "pop_vlan",
4948 .field_bit_size = 1,
4949 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4950 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4953 .description = "meter",
4954 .field_bit_size = 1,
4955 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4956 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4959 .description = "mirror",
4960 .field_bit_size = 2,
4961 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4962 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4965 .description = "drop",
4966 .field_bit_size = 1,
4967 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4968 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4971 .description = "hit",
4972 .field_bit_size = 1,
4973 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4974 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4977 .description = "type",
4978 .field_bit_size = 1,
4979 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4980 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4982 /* act_tid: 6, , table: ext_full_act_record_vxlan.0 */
4984 .description = "flow_cntr_ptr",
4985 .field_bit_size = 14,
4986 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4987 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4989 (BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 >> 8) & 0xff,
4990 BNXT_ULP_RF_IDX_FLOW_CNTR_PTR_0 & 0xff}
4993 .description = "age_enable",
4994 .field_bit_size = 1,
4995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4996 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4999 .description = "agg_cntr_en",
5000 .field_bit_size = 1,
5001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5002 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5005 .description = "rate_cntr_en",
5006 .field_bit_size = 1,
5007 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5008 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5011 .description = "flow_cntr_en",
5012 .field_bit_size = 1,
5013 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5014 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_BIT,
5016 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 56) & 0xff,
5017 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 48) & 0xff,
5018 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 40) & 0xff,
5019 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 32) & 0xff,
5020 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 24) & 0xff,
5021 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 16) & 0xff,
5022 ((uint64_t)BNXT_ULP_ACT_BIT_COUNT >> 8) & 0xff,
5023 (uint64_t)BNXT_ULP_ACT_BIT_COUNT & 0xff}
5026 .description = "flow_cntr_ext",
5027 .field_bit_size = 1,
5028 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5029 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5032 .description = "tcpflags_key",
5033 .field_bit_size = 8,
5034 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5035 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5038 .description = "tcpflags_mir",
5039 .field_bit_size = 1,
5040 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5041 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5044 .description = "tcpflags_match",
5045 .field_bit_size = 1,
5046 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5047 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5050 .description = "encap_ptr",
5051 .field_bit_size = 11,
5052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5053 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5056 .description = "encap_rec_int",
5057 .field_bit_size = 1,
5058 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5059 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5062 .description = "dst_ip_ptr",
5063 .field_bit_size = 10,
5064 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5065 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5068 .description = "tcp_dst_port",
5069 .field_bit_size = 16,
5070 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5071 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5074 .description = "src_ip_ptr",
5075 .field_bit_size = 10,
5076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5080 .description = "tcp_src_port",
5081 .field_bit_size = 16,
5082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5086 .description = "meter_id",
5087 .field_bit_size = 10,
5088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5089 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5092 .description = "l3_rdir",
5093 .field_bit_size = 1,
5094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5095 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5098 .description = "tl3_rdir",
5099 .field_bit_size = 1,
5100 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5101 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5104 .description = "l3_ttl_dec",
5105 .field_bit_size = 1,
5106 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5107 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5110 .description = "tl3_ttl_dec",
5111 .field_bit_size = 1,
5112 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5113 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5116 .description = "decap_func",
5117 .field_bit_size = 4,
5118 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5119 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5122 .description = "vnic_or_vport",
5123 .field_bit_size = 12,
5124 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5125 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
5127 (BNXT_ULP_ACT_PROP_IDX_VPORT >> 8) & 0xff,
5128 BNXT_ULP_ACT_PROP_IDX_VPORT & 0xff}
5131 .description = "pop_vlan",
5132 .field_bit_size = 1,
5133 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5134 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5137 .description = "meter",
5138 .field_bit_size = 1,
5139 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5140 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5143 .description = "mirror",
5144 .field_bit_size = 2,
5145 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5146 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5149 .description = "drop",
5150 .field_bit_size = 1,
5151 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5152 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5155 .description = "ecv_valid",
5156 .field_bit_size = 1,
5157 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5158 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5160 ULP_WP_SYM_ECV_VALID_YES}
5163 .description = "ecv_custom_en",
5164 .field_bit_size = 1,
5165 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5166 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5169 .description = "ecv_vtag_type",
5170 .field_bit_size = 4,
5171 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5172 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
5174 (BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE >> 8) & 0xff,
5175 BNXT_ULP_ACT_PROP_IDX_ENCAP_VTAG_TYPE & 0xff}
5178 .description = "ecv_l2_en",
5179 .field_bit_size = 1,
5180 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5181 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5183 ULP_WP_SYM_ECV_L2_EN_YES}
5186 .description = "ecv_l3_type",
5187 .field_bit_size = 3,
5188 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5189 .field_src1 = BNXT_ULP_FIELD_SRC_ACT_PROP,
5191 (BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE >> 8) & 0xff,
5192 BNXT_ULP_ACT_PROP_IDX_ENCAP_L3_TYPE & 0xff}
5195 .description = "ecv_l4_type",
5196 .field_bit_size = 3,
5197 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5198 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5200 ULP_WP_SYM_ECV_L4_TYPE_UDP_CSUM}
5203 .description = "ecv_tun_type",
5204 .field_bit_size = 3,
5205 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5206 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5208 ULP_WP_SYM_ECV_TUN_TYPE_VXLAN}
5211 .description = "enc_eth_dmac",
5212 .field_bit_size = 48,
5213 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5214 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5216 (BNXT_ULP_ENC_FIELD_ETH_DMAC >> 8) & 0xff,
5217 BNXT_ULP_ENC_FIELD_ETH_DMAC & 0xff}
5220 .description = "enc_o_vlan_tag",
5221 .field_bit_size = 16,
5222 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5223 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5225 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5226 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5227 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5228 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5229 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5230 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5231 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5232 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5233 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5235 (BNXT_ULP_ENC_FIELD_O_VLAN_TCI >> 8) & 0xff,
5236 BNXT_ULP_ENC_FIELD_O_VLAN_TCI & 0xff},
5237 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5240 .description = "enc_o_vlan_type",
5241 .field_bit_size = 16,
5242 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5243 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5245 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5246 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5247 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5248 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5249 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5250 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5251 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5252 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5253 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5255 (BNXT_ULP_ENC_FIELD_O_VLAN_TYPE >> 8) & 0xff,
5256 BNXT_ULP_ENC_FIELD_O_VLAN_TYPE & 0xff},
5257 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5260 .description = "enc_i_vlan_tag",
5261 .field_bit_size = 16,
5262 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5263 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5265 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 56) & 0xff,
5266 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 48) & 0xff,
5267 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 40) & 0xff,
5268 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 32) & 0xff,
5269 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 24) & 0xff,
5270 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 16) & 0xff,
5271 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 8) & 0xff,
5272 (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff},
5273 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5275 (BNXT_ULP_ENC_FIELD_I_VLAN_TCI >> 8) & 0xff,
5276 BNXT_ULP_ENC_FIELD_I_VLAN_TCI & 0xff},
5277 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5280 .description = "enc_i_vlan_type",
5281 .field_bit_size = 16,
5282 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5283 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5285 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 56) & 0xff,
5286 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 48) & 0xff,
5287 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 40) & 0xff,
5288 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 32) & 0xff,
5289 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 24) & 0xff,
5290 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 16) & 0xff,
5291 ((uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN >> 8) & 0xff,
5292 (uint64_t)BNXT_ULP_HDR_BIT_OI_VLAN & 0xff},
5293 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5295 (BNXT_ULP_ENC_FIELD_I_VLAN_TYPE >> 8) & 0xff,
5296 BNXT_ULP_ENC_FIELD_I_VLAN_TYPE & 0xff},
5297 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5300 .description = "enc_ipv4_ihl",
5301 .field_bit_size = 8,
5302 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5303 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5305 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5306 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5307 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5308 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5309 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5310 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5311 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5312 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5313 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5315 (BNXT_ULP_ENC_FIELD_IPV4_IHL >> 8) & 0xff,
5316 BNXT_ULP_ENC_FIELD_IPV4_IHL & 0xff},
5317 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5320 .description = "enc_ipv4_tos",
5321 .field_bit_size = 8,
5322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5323 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5325 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5326 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5327 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5328 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5329 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5330 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5331 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5332 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5333 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5335 (BNXT_ULP_ENC_FIELD_IPV4_TOS >> 8) & 0xff,
5336 BNXT_ULP_ENC_FIELD_IPV4_TOS & 0xff},
5337 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5340 .description = "enc_ipv4_pkt_id",
5341 .field_bit_size = 16,
5342 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5343 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5345 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5346 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5347 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5348 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5349 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5350 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5351 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5352 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5353 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5355 (BNXT_ULP_ENC_FIELD_IPV4_PKT_ID >> 8) & 0xff,
5356 BNXT_ULP_ENC_FIELD_IPV4_PKT_ID & 0xff},
5357 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5360 .description = "enc_ipv4_frag",
5361 .field_bit_size = 16,
5362 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5363 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5365 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5366 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5367 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5368 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5369 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5370 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5371 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5372 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5373 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5375 (BNXT_ULP_ENC_FIELD_IPV4_FRAG >> 8) & 0xff,
5376 BNXT_ULP_ENC_FIELD_IPV4_FRAG & 0xff},
5377 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5380 .description = "enc_ipv4_ttl",
5381 .field_bit_size = 8,
5382 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5383 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5385 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5386 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5387 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5388 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5389 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5390 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5391 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5392 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5393 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5395 (BNXT_ULP_ENC_FIELD_IPV4_TTL >> 8) & 0xff,
5396 BNXT_ULP_ENC_FIELD_IPV4_TTL & 0xff},
5397 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5400 .description = "enc_ipv4_proto",
5401 .field_bit_size = 8,
5402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5403 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5405 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5406 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5407 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5408 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5409 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5410 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5411 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5412 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5413 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5415 (BNXT_ULP_ENC_FIELD_IPV4_PROTO >> 8) & 0xff,
5416 BNXT_ULP_ENC_FIELD_IPV4_PROTO & 0xff},
5417 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5420 .description = "enc_ipv4_daddr",
5421 .field_bit_size = 32,
5422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5423 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5425 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5426 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5427 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5428 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5429 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5430 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5431 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5432 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5433 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5435 (BNXT_ULP_ENC_FIELD_IPV4_DADDR >> 8) & 0xff,
5436 BNXT_ULP_ENC_FIELD_IPV4_DADDR & 0xff},
5437 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5440 .description = "enc_ipv6_vtc",
5441 .field_bit_size = 32,
5442 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5443 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5445 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
5446 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
5447 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
5448 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
5449 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
5450 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
5451 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
5452 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
5453 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5455 (BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW >> 8) & 0xff,
5456 BNXT_ULP_ENC_FIELD_IPV6_VTC_FLOW & 0xff},
5457 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5460 .description = "enc_ipv6_zero",
5461 .field_bit_size = 16,
5462 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5463 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5465 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
5466 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
5467 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
5468 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
5469 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
5470 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
5471 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
5472 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
5473 .field_src2 = BNXT_ULP_FIELD_SRC_ZERO,
5474 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5477 .description = "enc_ipv6_proto",
5478 .field_bit_size = 8,
5479 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5480 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5482 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
5483 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
5484 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
5485 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
5486 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
5487 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
5488 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
5489 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
5490 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5492 (BNXT_ULP_ENC_FIELD_IPV6_PROTO >> 8) & 0xff,
5493 BNXT_ULP_ENC_FIELD_IPV6_PROTO & 0xff},
5494 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5497 .description = "enc_ipv6_ttl",
5498 .field_bit_size = 8,
5499 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5500 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5502 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
5503 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
5504 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
5505 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
5506 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
5507 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
5508 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
5509 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
5510 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5512 (BNXT_ULP_ENC_FIELD_IPV6_TTL >> 8) & 0xff,
5513 BNXT_ULP_ENC_FIELD_IPV6_TTL & 0xff},
5514 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5517 .description = "enc_ipv6_daddr",
5518 .field_bit_size = 128,
5519 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5520 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5522 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
5523 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
5524 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
5525 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
5526 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
5527 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
5528 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
5529 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
5530 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5532 (BNXT_ULP_ENC_FIELD_IPV6_DADDR >> 8) & 0xff,
5533 BNXT_ULP_ENC_FIELD_IPV6_DADDR & 0xff},
5534 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5537 .description = "enc_udp_sport",
5538 .field_bit_size = 16,
5539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5540 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5542 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 56) & 0xff,
5543 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 48) & 0xff,
5544 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 40) & 0xff,
5545 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 32) & 0xff,
5546 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 24) & 0xff,
5547 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 16) & 0xff,
5548 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 8) & 0xff,
5549 (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff},
5550 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5552 (BNXT_ULP_ENC_FIELD_UDP_SPORT >> 8) & 0xff,
5553 BNXT_ULP_ENC_FIELD_UDP_SPORT & 0xff},
5554 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5557 .description = "enc_udp_dport",
5558 .field_bit_size = 16,
5559 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5560 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5562 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 56) & 0xff,
5563 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 48) & 0xff,
5564 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 40) & 0xff,
5565 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 32) & 0xff,
5566 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 24) & 0xff,
5567 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 16) & 0xff,
5568 ((uint64_t)BNXT_ULP_HDR_BIT_O_UDP >> 8) & 0xff,
5569 (uint64_t)BNXT_ULP_HDR_BIT_O_UDP & 0xff},
5570 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5572 (BNXT_ULP_ENC_FIELD_UDP_DPORT >> 8) & 0xff,
5573 BNXT_ULP_ENC_FIELD_UDP_DPORT & 0xff},
5574 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5577 .description = "enc_vxlan_flags",
5578 .field_bit_size = 8,
5579 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5580 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5582 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
5583 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
5584 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
5585 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
5586 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
5587 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
5588 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
5589 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
5590 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5592 (BNXT_ULP_ENC_FIELD_VXLAN_FLAGS >> 8) & 0xff,
5593 BNXT_ULP_ENC_FIELD_VXLAN_FLAGS & 0xff},
5594 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5597 .description = "enc_vxlan_rsvd0",
5598 .field_bit_size = 24,
5599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5600 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5602 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
5603 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
5604 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
5605 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
5606 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
5607 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
5608 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
5609 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
5610 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5612 (BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 >> 8) & 0xff,
5613 BNXT_ULP_ENC_FIELD_VXLAN_RSVD0 & 0xff},
5614 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5617 .description = "enc_vxlan_vni",
5618 .field_bit_size = 24,
5619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5620 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5622 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
5623 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
5624 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
5625 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
5626 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
5627 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
5628 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
5629 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
5630 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5632 (BNXT_ULP_ENC_FIELD_VXLAN_VNI >> 8) & 0xff,
5633 BNXT_ULP_ENC_FIELD_VXLAN_VNI & 0xff},
5634 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5637 .description = "enc_vxlan_rsvd1",
5638 .field_bit_size = 8,
5639 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5640 .field_src1 = BNXT_ULP_FIELD_SRC_ENC_HDR_BIT,
5642 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 56) & 0xff,
5643 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 48) & 0xff,
5644 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 40) & 0xff,
5645 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 32) & 0xff,
5646 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 24) & 0xff,
5647 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 16) & 0xff,
5648 ((uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN >> 8) & 0xff,
5649 (uint64_t)BNXT_ULP_HDR_BIT_T_VXLAN & 0xff},
5650 .field_src2 = BNXT_ULP_FIELD_SRC_ENC_FIELD,
5652 (BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 >> 8) & 0xff,
5653 BNXT_ULP_ENC_FIELD_VXLAN_RSVD1 & 0xff},
5654 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5658 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_act_ident_list[] = {
5659 /* act_tid: 1, , table: shared_mirror_record.rd */
5661 .description = "mirror_id",
5662 .regfile_idx = BNXT_ULP_RF_IDX_MIRROR_ID_0,
5663 .ident_bit_size = 2,