1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2014-2021 Broadcom
6 /* date: Wed Jun 30 14:36:16 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 class list */
14 struct bnxt_ulp_mapper_tmpl_info ulp_wh_plus_class_tmpl_list[] = {
15 /* class_tid: 1, ingress */
17 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
21 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
25 /* class_tid: 2, ingress */
27 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
31 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
35 /* class_tid: 3, egress */
37 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
41 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
45 /* class_tid: 4, ingress */
47 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
51 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
55 /* class_tid: 5, egress */
57 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
61 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
67 struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
68 { /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
69 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
70 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
72 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
73 .direction = TF_DIR_RX,
77 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
80 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
81 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
82 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
84 .blob_key_bit_size = 8,
90 { /* class_tid: 1, , table: mac_addr_cache.rd */
91 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
93 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
94 .direction = TF_DIR_RX,
98 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
101 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
102 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
103 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
105 .blob_key_bit_size = 73,
108 .ident_start_idx = 1,
111 { /* class_tid: 1, , table: control.0 */
112 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
113 .direction = TF_DIR_RX,
116 .cond_false_goto = 3,
117 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
120 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
121 .fdb_operand = BNXT_ULP_RF_IDX_RID
123 { /* class_tid: 1, , table: l2_cntxt_tcam.0 */
124 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
125 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
126 .direction = TF_DIR_RX,
129 .cond_false_goto = 1,
130 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
133 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
134 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
135 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
136 .fdb_operand = BNXT_ULP_RF_IDX_RID,
137 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
140 .blob_key_bit_size = 167,
142 .key_num_fields = 13,
143 .result_start_idx = 0,
144 .result_bit_size = 64,
145 .result_num_fields = 13,
146 .ident_start_idx = 2,
149 { /* class_tid: 1, , table: mac_addr_cache.wr */
150 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
152 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
153 .direction = TF_DIR_RX,
156 .cond_false_goto = 1,
157 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
160 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
161 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
162 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
164 .blob_key_bit_size = 73,
167 .result_start_idx = 13,
168 .result_bit_size = 62,
169 .result_num_fields = 4
171 { /* class_tid: 1, , table: profile_tcam_cache.rd */
172 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
173 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
175 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
176 .direction = TF_DIR_RX,
179 .cond_false_goto = 1,
180 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
183 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
184 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
185 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
187 .blob_key_bit_size = 14,
190 .ident_start_idx = 3,
193 { /* class_tid: 1, , table: control.1 */
194 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
195 .direction = TF_DIR_RX,
198 .cond_false_goto = 1,
199 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
202 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
203 .fdb_operand = BNXT_ULP_RF_IDX_RID
205 { /* class_tid: 1, , table: control.2 */
206 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
207 .direction = TF_DIR_RX,
210 .cond_false_goto = 1023,
211 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
214 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
216 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
217 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
218 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
219 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
220 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
221 .func_dst_opr = BNXT_ULP_RF_IDX_CC }
223 { /* class_tid: 1, , table: profile_tcam.ipv4 */
224 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
225 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
226 .direction = TF_DIR_RX,
229 .cond_false_goto = 1,
230 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
233 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
234 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
235 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
236 .fdb_operand = BNXT_ULP_RF_IDX_RID,
237 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
238 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
240 .blob_key_bit_size = 81,
242 .key_num_fields = 43,
243 .result_start_idx = 17,
244 .result_bit_size = 38,
245 .result_num_fields = 17,
246 .ident_start_idx = 6,
249 { /* class_tid: 1, , table: profile_tcam.ipv6 */
250 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
251 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
252 .direction = TF_DIR_RX,
255 .cond_false_goto = 1,
256 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
259 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
260 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
261 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
262 .fdb_operand = BNXT_ULP_RF_IDX_RID,
263 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
264 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
266 .blob_key_bit_size = 81,
268 .key_num_fields = 43,
269 .result_start_idx = 34,
270 .result_bit_size = 38,
271 .result_num_fields = 17,
272 .ident_start_idx = 7,
275 { /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
276 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
277 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
278 .direction = TF_DIR_RX,
281 .cond_false_goto = 1,
282 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
285 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
286 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
287 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
288 .fdb_operand = BNXT_ULP_RF_IDX_RID,
289 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
290 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
291 .key_start_idx = 113,
292 .blob_key_bit_size = 81,
294 .key_num_fields = 43,
295 .result_start_idx = 51,
296 .result_bit_size = 38,
297 .result_num_fields = 17,
298 .ident_start_idx = 8,
301 { /* class_tid: 1, , table: profile_tcam_cache.wr */
302 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
303 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
305 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
306 .direction = TF_DIR_RX,
309 .cond_false_goto = 1,
310 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
311 .cond_start_idx = 11,
313 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
314 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
315 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
316 .key_start_idx = 156,
317 .blob_key_bit_size = 14,
320 .result_start_idx = 68,
321 .result_bit_size = 122,
322 .result_num_fields = 5
324 { /* class_tid: 1, , table: em.ipv4 */
325 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
326 .resource_type = TF_MEM_INTERNAL,
327 .direction = TF_DIR_RX,
330 .cond_false_goto = 1,
331 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
332 .cond_start_idx = 11,
334 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
335 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
336 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
337 .key_start_idx = 159,
338 .blob_key_bit_size = 176,
340 .key_num_fields = 10,
341 .result_start_idx = 73,
342 .result_bit_size = 64,
343 .result_num_fields = 9
345 { /* class_tid: 1, , table: eem.ipv4 */
346 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
347 .resource_type = TF_MEM_EXTERNAL,
348 .direction = TF_DIR_RX,
351 .cond_false_goto = 1,
352 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
353 .cond_start_idx = 14,
355 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
356 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
357 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
358 .key_start_idx = 169,
359 .blob_key_bit_size = 448,
361 .key_num_fields = 10,
362 .result_start_idx = 82,
363 .result_bit_size = 64,
364 .result_num_fields = 9
366 { /* class_tid: 1, , table: em.ipv6 */
367 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
368 .resource_type = TF_MEM_INTERNAL,
369 .direction = TF_DIR_RX,
372 .cond_false_goto = 1,
373 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
374 .cond_start_idx = 17,
376 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
377 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
378 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
379 .key_start_idx = 179,
380 .blob_key_bit_size = 416,
382 .key_num_fields = 11,
383 .result_start_idx = 91,
384 .result_bit_size = 64,
385 .result_num_fields = 9
387 { /* class_tid: 1, , table: eem.ipv6 */
388 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
389 .resource_type = TF_MEM_EXTERNAL,
390 .direction = TF_DIR_RX,
393 .cond_false_goto = 1,
394 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
395 .cond_start_idx = 20,
397 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
398 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
399 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
400 .key_start_idx = 190,
401 .blob_key_bit_size = 448,
403 .key_num_fields = 11,
404 .result_start_idx = 100,
405 .result_bit_size = 64,
406 .result_num_fields = 9
408 { /* class_tid: 1, , table: em.vxlan */
409 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
410 .resource_type = TF_MEM_INTERNAL,
411 .direction = TF_DIR_RX,
414 .cond_false_goto = 1,
415 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
416 .cond_start_idx = 23,
418 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
419 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
420 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
421 .key_start_idx = 201,
422 .blob_key_bit_size = 200,
424 .key_num_fields = 11,
425 .result_start_idx = 109,
426 .result_bit_size = 64,
427 .result_num_fields = 9
429 { /* class_tid: 1, , table: eem.vxlan */
430 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
431 .resource_type = TF_MEM_EXTERNAL,
432 .direction = TF_DIR_RX,
435 .cond_false_goto = 0,
436 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
437 .cond_start_idx = 24,
439 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
440 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
441 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
442 .key_start_idx = 212,
443 .blob_key_bit_size = 448,
445 .key_num_fields = 11,
446 .result_start_idx = 118,
447 .result_bit_size = 64,
448 .result_num_fields = 9
450 { /* class_tid: 2, , table: tunnel_cache.rd */
451 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
453 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_CACHE,
454 .direction = TF_DIR_RX,
457 .cond_false_goto = 1,
458 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
459 .cond_start_idx = 25,
461 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
462 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
463 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
464 .key_start_idx = 223,
465 .blob_key_bit_size = 16,
468 .ident_start_idx = 9,
471 { /* class_tid: 2, , table: control.tunnel_cache_check */
472 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
473 .direction = TF_DIR_RX,
476 .cond_false_goto = 3,
477 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
478 .cond_start_idx = 25,
480 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
481 .fdb_operand = BNXT_ULP_RF_IDX_RID
483 { /* class_tid: 2, , table: l2_cntxt_tcam.1 */
484 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
485 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
486 .direction = TF_DIR_RX,
489 .cond_false_goto = 1,
490 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
491 .cond_start_idx = 26,
493 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT,
494 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
495 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
496 .fdb_operand = BNXT_ULP_RF_IDX_RID,
497 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
499 .key_start_idx = 225,
500 .blob_key_bit_size = 167,
502 .key_num_fields = 13,
503 .result_start_idx = 127,
504 .result_bit_size = 64,
505 .result_num_fields = 13,
506 .ident_start_idx = 10,
509 { /* class_tid: 2, , table: tunnel_cache.wr */
510 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
512 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_CACHE,
513 .direction = TF_DIR_RX,
516 .cond_false_goto = 1,
517 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
518 .cond_start_idx = 26,
520 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
521 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
522 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
523 .key_start_idx = 238,
524 .blob_key_bit_size = 16,
527 .result_start_idx = 140,
528 .result_bit_size = 52,
529 .result_num_fields = 3
531 { /* class_tid: 2, , table: control.flow_type_check */
532 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
533 .direction = TF_DIR_RX,
536 .cond_false_goto = 5,
537 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
538 .cond_start_idx = 26,
540 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
542 { /* class_tid: 2, , table: mac_addr_cache.rd */
543 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
545 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
546 .direction = TF_DIR_RX,
549 .cond_false_goto = 1,
550 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
551 .cond_start_idx = 27,
553 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
554 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
555 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
556 .key_start_idx = 240,
557 .blob_key_bit_size = 73,
560 .ident_start_idx = 11,
563 { /* class_tid: 2, , table: control.mac_addr_cache_check */
564 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
565 .direction = TF_DIR_RX,
568 .cond_false_goto = 0,
569 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
570 .cond_start_idx = 27,
572 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
573 .fdb_operand = BNXT_ULP_RF_IDX_RID
575 { /* class_tid: 2, , table: l2_cntxt_tcam.0 */
576 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
577 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
578 .direction = TF_DIR_RX,
581 .cond_false_goto = 1,
582 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
583 .cond_start_idx = 28,
585 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
586 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
587 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
588 .fdb_operand = BNXT_ULP_RF_IDX_RID,
589 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
591 .key_start_idx = 245,
592 .blob_key_bit_size = 167,
594 .key_num_fields = 13,
595 .result_start_idx = 143,
596 .result_bit_size = 64,
597 .result_num_fields = 13,
598 .ident_start_idx = 12,
601 { /* class_tid: 2, , table: mac_addr_cache.wr */
602 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
604 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
605 .direction = TF_DIR_RX,
608 .cond_false_goto = 1,
609 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
610 .cond_start_idx = 28,
612 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
613 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
614 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
615 .key_start_idx = 258,
616 .blob_key_bit_size = 73,
619 .result_start_idx = 156,
620 .result_bit_size = 62,
621 .result_num_fields = 4
623 { /* class_tid: 2, , table: profile_tcam_cache.f2_rd */
624 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
625 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
627 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
628 .direction = TF_DIR_RX,
631 .cond_false_goto = 1,
632 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
633 .cond_start_idx = 28,
635 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
636 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
637 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
638 .key_start_idx = 263,
639 .blob_key_bit_size = 14,
642 .ident_start_idx = 12,
645 { /* class_tid: 2, , table: control.profile_tcam_cache.f2_check */
646 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
647 .direction = TF_DIR_RX,
650 .cond_false_goto = 3,
651 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
652 .cond_start_idx = 28,
654 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
655 .fdb_operand = BNXT_ULP_RF_IDX_RID
657 { /* class_tid: 2, , table: profile_tcam.f2 */
658 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
659 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
660 .direction = TF_DIR_RX,
663 .cond_false_goto = 1,
664 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
665 .cond_start_idx = 29,
667 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
668 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
669 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
670 .fdb_operand = BNXT_ULP_RF_IDX_RID,
671 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
673 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
674 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
675 .key_start_idx = 266,
676 .blob_key_bit_size = 81,
678 .key_num_fields = 43,
679 .result_start_idx = 160,
680 .result_bit_size = 38,
681 .result_num_fields = 17
683 { /* class_tid: 2, , table: profile_tcam_cache.f2_wr */
684 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
685 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
687 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
688 .direction = TF_DIR_RX,
691 .cond_false_goto = 1,
692 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
693 .cond_start_idx = 29,
695 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
696 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
697 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
698 .key_start_idx = 309,
699 .blob_key_bit_size = 14,
702 .result_start_idx = 177,
703 .result_bit_size = 122,
704 .result_num_fields = 5
706 { /* class_tid: 2, , table: em.tun */
707 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
708 .resource_type = TF_MEM_INTERNAL,
709 .direction = TF_DIR_RX,
712 .cond_false_goto = 1,
713 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
714 .cond_start_idx = 29,
716 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
717 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
718 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
719 .key_start_idx = 312,
720 .blob_key_bit_size = 112,
723 .result_start_idx = 182,
724 .result_bit_size = 64,
725 .result_num_fields = 9
727 { /* class_tid: 2, , table: eem.tun */
728 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
729 .resource_type = TF_MEM_EXTERNAL,
730 .direction = TF_DIR_RX,
733 .cond_false_goto = 0,
734 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
735 .cond_start_idx = 30,
737 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
738 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
739 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
740 .key_start_idx = 320,
741 .blob_key_bit_size = 448,
744 .result_start_idx = 191,
745 .result_bit_size = 64,
746 .result_num_fields = 9
748 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
749 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
751 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
752 .direction = TF_DIR_TX,
755 .cond_false_goto = 1,
756 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
757 .cond_start_idx = 31,
759 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
760 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
761 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
762 .key_start_idx = 328,
763 .blob_key_bit_size = 8,
766 .ident_start_idx = 15,
769 { /* class_tid: 3, , table: mac_addr_cache.rd */
770 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
772 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
773 .direction = TF_DIR_TX,
776 .cond_false_goto = 1,
777 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
778 .cond_start_idx = 32,
780 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
781 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
782 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
783 .key_start_idx = 329,
784 .blob_key_bit_size = 73,
787 .ident_start_idx = 16,
790 { /* class_tid: 3, , table: control.0 */
791 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
792 .direction = TF_DIR_TX,
795 .cond_false_goto = 3,
796 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
797 .cond_start_idx = 32,
799 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
800 .fdb_operand = BNXT_ULP_RF_IDX_RID
802 { /* class_tid: 3, , table: l2_cntxt_tcam.0 */
803 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
804 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
805 .direction = TF_DIR_TX,
808 .cond_false_goto = 1,
809 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
810 .cond_start_idx = 33,
812 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
813 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
814 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
815 .fdb_operand = BNXT_ULP_RF_IDX_RID,
816 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
818 .key_start_idx = 334,
819 .blob_key_bit_size = 167,
821 .key_num_fields = 13,
822 .result_start_idx = 200,
823 .result_bit_size = 64,
824 .result_num_fields = 13,
825 .ident_start_idx = 17,
828 { /* class_tid: 3, , table: mac_addr_cache.wr */
829 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
831 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
832 .direction = TF_DIR_TX,
835 .cond_false_goto = 1,
836 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
837 .cond_start_idx = 33,
839 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
840 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
841 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
842 .key_start_idx = 347,
843 .blob_key_bit_size = 73,
846 .result_start_idx = 213,
847 .result_bit_size = 62,
848 .result_num_fields = 4
850 { /* class_tid: 3, , table: profile_tcam_cache.rd */
851 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
853 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
854 .direction = TF_DIR_TX,
857 .cond_false_goto = 1,
858 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
859 .cond_start_idx = 33,
861 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
862 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
863 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
864 .key_start_idx = 352,
865 .blob_key_bit_size = 14,
868 .ident_start_idx = 18,
871 { /* class_tid: 3, , table: control.gen_tbl_miss */
872 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
873 .direction = TF_DIR_TX,
876 .cond_false_goto = 1,
877 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
878 .cond_start_idx = 33,
880 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
881 .fdb_operand = BNXT_ULP_RF_IDX_RID
883 { /* class_tid: 3, , table: control.conflict_check */
884 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
885 .direction = TF_DIR_TX,
888 .cond_false_goto = 1023,
889 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
890 .cond_start_idx = 34,
892 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
894 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
895 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
896 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
897 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
898 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
899 .func_dst_opr = BNXT_ULP_RF_IDX_CC }
901 { /* class_tid: 3, , table: profile_tcam.ipv4 */
902 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
903 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
904 .direction = TF_DIR_TX,
907 .cond_false_goto = 1,
908 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
909 .cond_start_idx = 35,
911 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
912 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
913 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
914 .fdb_operand = BNXT_ULP_RF_IDX_RID,
915 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
916 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
917 .key_start_idx = 355,
918 .blob_key_bit_size = 81,
920 .key_num_fields = 43,
921 .result_start_idx = 217,
922 .result_bit_size = 38,
923 .result_num_fields = 17,
924 .ident_start_idx = 21,
927 { /* class_tid: 3, , table: profile_tcam.ipv6 */
928 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
929 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
930 .direction = TF_DIR_TX,
933 .cond_false_goto = 1,
934 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
935 .cond_start_idx = 36,
937 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
938 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
939 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
940 .fdb_operand = BNXT_ULP_RF_IDX_RID,
941 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
942 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
943 .key_start_idx = 398,
944 .blob_key_bit_size = 81,
946 .key_num_fields = 43,
947 .result_start_idx = 234,
948 .result_bit_size = 38,
949 .result_num_fields = 17,
950 .ident_start_idx = 22,
953 { /* class_tid: 3, , table: profile_tcam_cache.wr */
954 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
956 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
957 .direction = TF_DIR_TX,
960 .cond_false_goto = 1,
961 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
962 .cond_start_idx = 36,
964 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
965 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
966 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
967 .key_start_idx = 441,
968 .blob_key_bit_size = 14,
971 .result_start_idx = 251,
972 .result_bit_size = 122,
973 .result_num_fields = 5
975 { /* class_tid: 3, , table: em.ipv4 */
976 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
977 .resource_type = TF_MEM_INTERNAL,
978 .direction = TF_DIR_TX,
981 .cond_false_goto = 1,
982 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
983 .cond_start_idx = 36,
985 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
986 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
987 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
988 .key_start_idx = 444,
989 .blob_key_bit_size = 176,
991 .key_num_fields = 10,
992 .result_start_idx = 256,
993 .result_bit_size = 64,
994 .result_num_fields = 9
996 { /* class_tid: 3, , table: eem.ipv4 */
997 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
998 .resource_type = TF_MEM_EXTERNAL,
999 .direction = TF_DIR_TX,
1001 .cond_true_goto = 0,
1002 .cond_false_goto = 1,
1003 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1004 .cond_start_idx = 38,
1006 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1007 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1008 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1009 .key_start_idx = 454,
1010 .blob_key_bit_size = 448,
1011 .key_bit_size = 448,
1012 .key_num_fields = 10,
1013 .result_start_idx = 265,
1014 .result_bit_size = 64,
1015 .result_num_fields = 9
1017 { /* class_tid: 3, , table: em.ipv6 */
1018 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
1019 .resource_type = TF_MEM_INTERNAL,
1020 .direction = TF_DIR_TX,
1022 .cond_true_goto = 0,
1023 .cond_false_goto = 1,
1024 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1025 .cond_start_idx = 40,
1027 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1028 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1029 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1030 .key_start_idx = 464,
1031 .blob_key_bit_size = 416,
1032 .key_bit_size = 416,
1033 .key_num_fields = 11,
1034 .result_start_idx = 274,
1035 .result_bit_size = 64,
1036 .result_num_fields = 9
1038 { /* class_tid: 3, , table: eem.ipv6 */
1039 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
1040 .resource_type = TF_MEM_EXTERNAL,
1041 .direction = TF_DIR_TX,
1043 .cond_true_goto = 0,
1044 .cond_false_goto = 0,
1045 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1046 .cond_start_idx = 41,
1048 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1049 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1050 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1051 .key_start_idx = 475,
1052 .blob_key_bit_size = 448,
1053 .key_bit_size = 448,
1054 .key_num_fields = 11,
1055 .result_start_idx = 283,
1056 .result_bit_size = 64,
1057 .result_num_fields = 9
1059 { /* class_tid: 4, , table: int_full_act_record.ing_0 */
1060 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1061 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1062 .resource_sub_type =
1063 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1064 .direction = TF_DIR_RX,
1066 .cond_true_goto = 1,
1067 .cond_false_goto = 1,
1068 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1069 .cond_start_idx = 41,
1071 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1072 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1073 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1074 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1075 .result_start_idx = 292,
1076 .result_bit_size = 128,
1077 .result_num_fields = 26
1079 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_rd */
1080 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1081 .resource_sub_type =
1082 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1083 .direction = TF_DIR_RX,
1085 .cond_true_goto = 1,
1086 .cond_false_goto = 1,
1087 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1088 .cond_start_idx = 41,
1090 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1091 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1092 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1093 .key_start_idx = 486,
1094 .blob_key_bit_size = 8,
1096 .key_num_fields = 1,
1097 .ident_start_idx = 23,
1100 { /* class_tid: 4, , table: control.ing_0 */
1101 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1102 .direction = TF_DIR_RX,
1104 .cond_true_goto = 1,
1105 .cond_false_goto = 3,
1106 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1107 .cond_start_idx = 41,
1109 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1110 .fdb_operand = BNXT_ULP_RF_IDX_RID
1112 { /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
1113 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1114 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1115 .direction = TF_DIR_RX,
1117 .cond_true_goto = 1,
1118 .cond_false_goto = 1,
1119 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1120 .cond_start_idx = 42,
1122 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1123 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1124 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1125 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1126 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1128 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1129 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1130 .key_start_idx = 487,
1131 .blob_key_bit_size = 167,
1132 .key_bit_size = 167,
1133 .key_num_fields = 13,
1134 .result_start_idx = 318,
1135 .result_bit_size = 64,
1136 .result_num_fields = 13,
1137 .ident_start_idx = 23,
1140 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_wr */
1141 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1142 .resource_sub_type =
1143 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1144 .direction = TF_DIR_RX,
1146 .cond_true_goto = 1,
1147 .cond_false_goto = 1,
1148 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1149 .cond_start_idx = 42,
1151 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1152 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1153 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1154 .key_start_idx = 500,
1155 .blob_key_bit_size = 8,
1157 .key_num_fields = 1,
1158 .result_start_idx = 331,
1159 .result_bit_size = 62,
1160 .result_num_fields = 4
1162 { /* class_tid: 4, , table: parif_def_lkup_arec_ptr.ing_0 */
1163 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1164 .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
1165 .direction = TF_DIR_RX,
1167 .cond_true_goto = 1,
1168 .cond_false_goto = 1,
1169 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1170 .cond_start_idx = 42,
1172 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1173 .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
1174 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1175 .result_start_idx = 335,
1176 .result_bit_size = 32,
1177 .result_num_fields = 1
1179 { /* class_tid: 4, , table: parif_def_arec_ptr.ing_0 */
1180 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1181 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1182 .direction = TF_DIR_RX,
1184 .cond_true_goto = 1,
1185 .cond_false_goto = 1,
1186 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1187 .cond_start_idx = 42,
1189 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1190 .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
1191 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1192 .result_start_idx = 336,
1193 .result_bit_size = 32,
1194 .result_num_fields = 1
1196 { /* class_tid: 4, , table: parif_def_err_arec_ptr.ing_0 */
1197 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1198 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1199 .direction = TF_DIR_RX,
1201 .cond_true_goto = 1,
1202 .cond_false_goto = 1,
1203 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1204 .cond_start_idx = 42,
1206 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1207 .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
1208 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1209 .result_start_idx = 337,
1210 .result_bit_size = 32,
1211 .result_num_fields = 1
1213 { /* class_tid: 4, , table: control.egr_0 */
1214 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1215 .direction = TF_DIR_RX,
1217 .cond_true_goto = 1,
1218 .cond_false_goto = 6,
1219 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1220 .cond_start_idx = 42,
1222 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
1224 { /* class_tid: 4, , table: int_full_act_record.egr_vfr */
1225 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1226 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1227 .resource_sub_type =
1228 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1229 .direction = TF_DIR_TX,
1231 .cond_true_goto = 1,
1232 .cond_false_goto = 1,
1233 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1234 .cond_start_idx = 43,
1236 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1237 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1238 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1239 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1240 .result_start_idx = 338,
1241 .result_bit_size = 128,
1242 .result_num_fields = 26,
1243 .encap_num_fields = 0
1245 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_rd_vfr */
1246 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1247 .resource_sub_type =
1248 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1249 .direction = TF_DIR_TX,
1251 .cond_true_goto = 1,
1252 .cond_false_goto = 1,
1253 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1254 .cond_start_idx = 43,
1256 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1257 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1258 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1259 .key_start_idx = 501,
1260 .blob_key_bit_size = 8,
1262 .key_num_fields = 1,
1263 .ident_start_idx = 24,
1266 { /* class_tid: 4, , table: control.egr_1 */
1267 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1268 .direction = TF_DIR_RX,
1270 .cond_true_goto = 1,
1271 .cond_false_goto = 0,
1272 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1273 .cond_start_idx = 43,
1275 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1276 .fdb_operand = BNXT_ULP_RF_IDX_RID
1278 { /* class_tid: 4, , table: l2_cntxt_tcam_bypass.egr_vfr */
1279 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1280 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1281 .direction = TF_DIR_TX,
1283 .cond_true_goto = 1,
1284 .cond_false_goto = 1,
1285 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1286 .cond_start_idx = 44,
1288 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1289 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1290 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1291 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1292 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1294 .key_start_idx = 502,
1295 .blob_key_bit_size = 167,
1296 .key_bit_size = 167,
1297 .key_num_fields = 13,
1298 .result_start_idx = 364,
1299 .result_bit_size = 64,
1300 .result_num_fields = 13,
1301 .ident_start_idx = 24,
1304 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
1305 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1306 .resource_sub_type =
1307 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1308 .direction = TF_DIR_TX,
1310 .cond_true_goto = 0,
1311 .cond_false_goto = 1,
1312 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1313 .cond_start_idx = 44,
1315 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1316 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1317 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1318 .key_start_idx = 515,
1319 .blob_key_bit_size = 8,
1321 .key_num_fields = 1,
1322 .result_start_idx = 377,
1323 .result_bit_size = 62,
1324 .result_num_fields = 4
1326 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.rd */
1327 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1328 .resource_sub_type =
1329 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1330 .direction = TF_DIR_TX,
1332 .cond_true_goto = 1,
1333 .cond_false_goto = 1,
1334 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1335 .cond_start_idx = 44,
1337 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1338 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1339 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1340 .key_start_idx = 516,
1341 .blob_key_bit_size = 8,
1343 .key_num_fields = 1,
1344 .ident_start_idx = 24,
1347 { /* class_tid: 4, , table: control.egr_2 */
1348 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1349 .direction = TF_DIR_RX,
1351 .cond_true_goto = 1,
1352 .cond_false_goto = 3,
1353 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1354 .cond_start_idx = 44,
1356 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1357 .fdb_operand = BNXT_ULP_RF_IDX_RID
1359 { /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
1360 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1361 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1362 .direction = TF_DIR_TX,
1364 .cond_true_goto = 1,
1365 .cond_false_goto = 1,
1366 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1367 .cond_start_idx = 45,
1369 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1370 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1371 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1372 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1373 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1374 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1375 .key_start_idx = 517,
1376 .blob_key_bit_size = 167,
1377 .key_bit_size = 167,
1378 .key_num_fields = 13,
1379 .result_start_idx = 381,
1380 .result_bit_size = 64,
1381 .result_num_fields = 13,
1382 .ident_start_idx = 24,
1385 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr */
1386 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1387 .resource_sub_type =
1388 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1389 .direction = TF_DIR_TX,
1391 .cond_true_goto = 1,
1392 .cond_false_goto = 1,
1393 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1394 .cond_start_idx = 45,
1396 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1397 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1398 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1399 .key_start_idx = 530,
1400 .blob_key_bit_size = 8,
1402 .key_num_fields = 1,
1403 .result_start_idx = 394,
1404 .result_bit_size = 62,
1405 .result_num_fields = 4
1407 { /* class_tid: 4, , table: int_full_act_record.egr_0 */
1408 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1409 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1410 .resource_sub_type =
1411 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1412 .direction = TF_DIR_TX,
1414 .cond_true_goto = 1,
1415 .cond_false_goto = 1,
1416 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1417 .cond_start_idx = 47,
1419 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1420 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1421 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1422 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1423 .result_start_idx = 398,
1424 .result_bit_size = 128,
1425 .result_num_fields = 26,
1426 .encap_num_fields = 0
1428 { /* class_tid: 4, , table: parif_def_lkup_arec_ptr.egr_0 */
1429 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1430 .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
1431 .direction = TF_DIR_TX,
1433 .cond_true_goto = 1,
1434 .cond_false_goto = 1,
1435 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1436 .cond_start_idx = 47,
1438 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1439 .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1440 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1441 .result_start_idx = 424,
1442 .result_bit_size = 32,
1443 .result_num_fields = 1
1445 { /* class_tid: 4, , table: parif_def_arec_ptr.egr_0 */
1446 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1447 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1448 .direction = TF_DIR_TX,
1450 .cond_true_goto = 1,
1451 .cond_false_goto = 1,
1452 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1453 .cond_start_idx = 47,
1455 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1456 .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1457 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1458 .result_start_idx = 425,
1459 .result_bit_size = 32,
1460 .result_num_fields = 1
1462 { /* class_tid: 4, , table: parif_def_err_arec_ptr.egr_0 */
1463 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1464 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1465 .direction = TF_DIR_TX,
1467 .cond_true_goto = 0,
1468 .cond_false_goto = 0,
1469 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1470 .cond_start_idx = 47,
1472 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1473 .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1474 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1475 .result_start_idx = 426,
1476 .result_bit_size = 32,
1477 .result_num_fields = 1
1479 { /* class_tid: 5, , table: int_full_act_record.loopback */
1480 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1481 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1482 .resource_sub_type =
1483 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1484 .direction = TF_DIR_TX,
1486 .cond_true_goto = 1,
1487 .cond_false_goto = 1,
1488 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1489 .cond_start_idx = 47,
1491 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
1492 .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR,
1493 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1494 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1495 .result_start_idx = 427,
1496 .result_bit_size = 128,
1497 .result_num_fields = 26,
1498 .encap_num_fields = 0
1500 { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_rd_egr */
1501 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1502 .resource_sub_type =
1503 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1504 .direction = TF_DIR_TX,
1506 .cond_true_goto = 1,
1507 .cond_false_goto = 1,
1508 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1509 .cond_start_idx = 47,
1511 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1512 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1513 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1514 .key_start_idx = 531,
1515 .blob_key_bit_size = 8,
1517 .key_num_fields = 1,
1518 .ident_start_idx = 25,
1521 { /* class_tid: 5, , table: control.vf_0 */
1522 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1523 .direction = TF_DIR_TX,
1525 .cond_true_goto = 1,
1526 .cond_false_goto = 3,
1527 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1528 .cond_start_idx = 47,
1530 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1531 .fdb_operand = BNXT_ULP_RF_IDX_RID
1533 { /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
1534 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1535 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1536 .direction = TF_DIR_TX,
1538 .cond_true_goto = 1,
1539 .cond_false_goto = 1,
1540 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1541 .cond_start_idx = 48,
1543 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1544 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1545 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1546 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1547 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1549 .key_start_idx = 532,
1550 .blob_key_bit_size = 167,
1551 .key_bit_size = 167,
1552 .key_num_fields = 13,
1553 .result_start_idx = 453,
1554 .result_bit_size = 64,
1555 .result_num_fields = 13,
1556 .ident_start_idx = 25,
1559 { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_egr_wr */
1560 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1561 .resource_sub_type =
1562 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1563 .direction = TF_DIR_TX,
1565 .cond_true_goto = 1,
1566 .cond_false_goto = 1,
1567 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1568 .cond_start_idx = 48,
1570 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1571 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1572 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1573 .key_start_idx = 545,
1574 .blob_key_bit_size = 8,
1576 .key_num_fields = 1,
1577 .result_start_idx = 466,
1578 .result_bit_size = 62,
1579 .result_num_fields = 4
1581 { /* class_tid: 5, , table: parif_def_lkup_arec_ptr.vf_egr */
1582 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1583 .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
1584 .direction = TF_DIR_TX,
1586 .cond_true_goto = 1,
1587 .cond_false_goto = 1,
1588 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1589 .cond_start_idx = 48,
1591 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
1592 .tbl_operand = ULP_WP_SYM_LOOPBACK_PARIF,
1593 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1594 .result_start_idx = 470,
1595 .result_bit_size = 32,
1596 .result_num_fields = 1
1598 { /* class_tid: 5, , table: parif_def_arec_ptr.vf_egr */
1599 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1600 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1601 .direction = TF_DIR_TX,
1603 .cond_true_goto = 1,
1604 .cond_false_goto = 1,
1605 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1606 .cond_start_idx = 48,
1608 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
1609 .tbl_operand = ULP_WP_SYM_LOOPBACK_PARIF,
1610 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1611 .result_start_idx = 471,
1612 .result_bit_size = 32,
1613 .result_num_fields = 1
1615 { /* class_tid: 5, , table: parif_def_err_arec_ptr.vf_egr */
1616 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1617 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1618 .direction = TF_DIR_TX,
1620 .cond_true_goto = 1,
1621 .cond_false_goto = 1,
1622 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1623 .cond_start_idx = 48,
1625 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
1626 .tbl_operand = ULP_WP_SYM_LOOPBACK_PARIF,
1627 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1628 .result_start_idx = 472,
1629 .result_bit_size = 32,
1630 .result_num_fields = 1
1632 { /* class_tid: 5, , table: int_full_act_record.vf_ing */
1633 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1634 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1635 .resource_sub_type =
1636 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1637 .direction = TF_DIR_RX,
1639 .cond_true_goto = 1,
1640 .cond_false_goto = 1,
1641 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1642 .cond_start_idx = 48,
1644 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1645 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1646 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1647 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG,
1648 .result_start_idx = 473,
1649 .result_bit_size = 128,
1650 .result_num_fields = 26,
1651 .encap_num_fields = 0
1653 { /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vf_ing */
1654 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1655 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1656 .direction = TF_DIR_RX,
1658 .cond_true_goto = 1,
1659 .cond_false_goto = 1,
1660 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1661 .cond_start_idx = 48,
1663 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1664 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1665 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1666 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1668 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1669 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1670 .key_start_idx = 546,
1671 .blob_key_bit_size = 167,
1672 .key_bit_size = 167,
1673 .key_num_fields = 13,
1674 .result_start_idx = 499,
1675 .result_bit_size = 64,
1676 .result_num_fields = 13,
1677 .ident_start_idx = 26,
1680 { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_rd_egr0 */
1681 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1682 .resource_sub_type =
1683 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1684 .direction = TF_DIR_TX,
1686 .cond_true_goto = 1,
1687 .cond_false_goto = 1,
1688 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1689 .cond_start_idx = 48,
1691 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1692 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1693 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1694 .key_start_idx = 559,
1695 .blob_key_bit_size = 8,
1697 .key_num_fields = 1,
1698 .ident_start_idx = 26,
1701 { /* class_tid: 5, , table: control.vfr_0 */
1702 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1703 .direction = TF_DIR_TX,
1705 .cond_true_goto = 1,
1706 .cond_false_goto = 3,
1707 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1708 .cond_start_idx = 48,
1710 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1711 .fdb_operand = BNXT_ULP_RF_IDX_RID
1713 { /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_egr0 */
1714 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1715 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1716 .direction = TF_DIR_TX,
1718 .cond_true_goto = 1,
1719 .cond_false_goto = 1,
1720 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1721 .cond_start_idx = 49,
1723 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1724 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1725 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1726 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1727 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1729 .key_start_idx = 560,
1730 .blob_key_bit_size = 167,
1731 .key_bit_size = 167,
1732 .key_num_fields = 13,
1733 .result_start_idx = 512,
1734 .result_bit_size = 64,
1735 .result_num_fields = 13,
1736 .ident_start_idx = 26,
1739 { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
1740 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1741 .resource_sub_type =
1742 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1743 .direction = TF_DIR_TX,
1745 .cond_true_goto = 1,
1746 .cond_false_goto = 1,
1747 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1748 .cond_start_idx = 49,
1750 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1751 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1752 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1753 .key_start_idx = 573,
1754 .blob_key_bit_size = 8,
1756 .key_num_fields = 1,
1757 .result_start_idx = 525,
1758 .result_bit_size = 62,
1759 .result_num_fields = 4
1761 { /* class_tid: 5, , table: int_vtag_encap_record.vfr_egr0 */
1762 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1763 .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
1764 .resource_sub_type =
1765 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1766 .direction = TF_DIR_TX,
1768 .cond_true_goto = 1,
1769 .cond_false_goto = 1,
1770 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1771 .cond_start_idx = 49,
1773 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1774 .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
1775 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1776 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1778 .result_start_idx = 529,
1779 .result_bit_size = 0,
1780 .result_num_fields = 0,
1781 .encap_num_fields = 11
1783 { /* class_tid: 5, , table: int_full_act_record.vfr_egr0 */
1784 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1785 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1786 .resource_sub_type =
1787 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1788 .direction = TF_DIR_TX,
1790 .cond_true_goto = 1,
1791 .cond_false_goto = 1,
1792 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1793 .cond_start_idx = 49,
1795 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1796 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1797 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1798 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1799 .result_start_idx = 540,
1800 .result_bit_size = 128,
1801 .result_num_fields = 26
1803 { /* class_tid: 5, , table: int_full_act_record.vfr_ing0 */
1804 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1805 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1806 .resource_sub_type =
1807 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1808 .direction = TF_DIR_RX,
1810 .cond_true_goto = 1,
1811 .cond_false_goto = 1,
1812 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1813 .cond_start_idx = 49,
1815 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1816 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1817 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1818 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1819 .result_start_idx = 566,
1820 .result_bit_size = 128,
1821 .result_num_fields = 26
1823 { /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_dtagged_ing0 */
1824 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1825 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1826 .direction = TF_DIR_RX,
1828 .cond_true_goto = 1,
1829 .cond_false_goto = 1,
1830 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1831 .cond_start_idx = 49,
1833 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1834 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1835 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1836 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1838 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1839 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1840 .key_start_idx = 574,
1841 .blob_key_bit_size = 167,
1842 .key_bit_size = 167,
1843 .key_num_fields = 13,
1844 .result_start_idx = 592,
1845 .result_bit_size = 64,
1846 .result_num_fields = 13,
1847 .ident_start_idx = 26,
1850 { /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_stagged_ing0 */
1851 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1852 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1853 .direction = TF_DIR_RX,
1855 .cond_true_goto = 0,
1856 .cond_false_goto = 0,
1857 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1858 .cond_start_idx = 49,
1860 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1861 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1862 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1863 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1865 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1866 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1867 .key_start_idx = 587,
1868 .blob_key_bit_size = 167,
1869 .key_bit_size = 167,
1870 .key_num_fields = 13,
1871 .result_start_idx = 605,
1872 .result_bit_size = 64,
1873 .result_num_fields = 13,
1874 .ident_start_idx = 26,
1879 struct bnxt_ulp_mapper_cond_info ulp_wh_plus_class_cond_list[] = {
1880 /* cond_reject: wh_plus, class_tid: 1 */
1882 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
1883 .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
1885 /* cond_execute: class_tid: 1, l2_cntxt_tcam_cache.rd */
1887 .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET,
1888 .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC
1890 /* cond_execute: class_tid: 1, control.0 */
1892 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1893 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1895 /* cond_execute: class_tid: 1, control.1 */
1897 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1898 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1900 /* cond_execute: class_tid: 1, control.2 */
1902 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1903 .cond_operand = BNXT_ULP_RF_IDX_CC
1905 /* cond_execute: class_tid: 1, profile_tcam.ipv4 */
1907 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1908 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1911 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1912 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1914 /* cond_execute: class_tid: 1, profile_tcam.ipv6 */
1916 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1917 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
1920 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1921 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1923 /* cond_execute: class_tid: 1, profile_tcam.ipv4_vxlan */
1925 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1926 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1929 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1930 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1932 /* cond_execute: class_tid: 1, em.ipv4 */
1934 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1937 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1938 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1941 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1942 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1944 /* cond_execute: class_tid: 1, eem.ipv4 */
1946 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
1949 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1950 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1953 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1954 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1956 /* cond_execute: class_tid: 1, em.ipv6 */
1958 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1961 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1962 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
1965 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1966 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1968 /* cond_execute: class_tid: 1, eem.ipv6 */
1970 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
1973 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1974 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
1977 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1978 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1980 /* cond_execute: class_tid: 1, em.vxlan */
1982 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1984 /* cond_reject: wh_plus, class_tid: 2 */
1986 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
1987 .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
1989 /* cond_execute: class_tid: 2, control.tunnel_cache_check */
1991 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1992 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1994 /* cond_execute: class_tid: 2, control.flow_type_check */
1996 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1997 .cond_operand = BNXT_ULP_HDR_BIT_F1
1999 /* cond_execute: class_tid: 2, control.mac_addr_cache_check */
2001 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2002 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2004 /* cond_execute: class_tid: 2, control.profile_tcam_cache.f2_check */
2006 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2007 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2009 /* cond_execute: class_tid: 2, em.tun */
2011 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
2013 /* cond_reject: wh_plus, class_tid: 3 */
2015 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2016 .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
2018 /* cond_execute: class_tid: 3, l2_cntxt_tcam_cache.rd */
2020 .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET,
2021 .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC
2023 /* cond_execute: class_tid: 3, control.0 */
2025 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2026 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2028 /* cond_execute: class_tid: 3, control.gen_tbl_miss */
2030 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2031 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2033 /* cond_execute: class_tid: 3, control.conflict_check */
2035 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2036 .cond_operand = BNXT_ULP_RF_IDX_CC
2038 /* cond_execute: class_tid: 3, profile_tcam.ipv4 */
2040 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2041 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2043 /* cond_execute: class_tid: 3, em.ipv4 */
2045 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
2048 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2049 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2051 /* cond_execute: class_tid: 3, eem.ipv4 */
2053 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
2056 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2057 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2059 /* cond_execute: class_tid: 3, em.ipv6 */
2061 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
2063 /* cond_execute: class_tid: 4, control.ing_0 */
2065 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2066 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2068 /* cond_execute: class_tid: 4, control.egr_0 */
2070 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2071 .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE
2073 /* cond_execute: class_tid: 4, control.egr_1 */
2075 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2076 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2078 /* cond_execute: class_tid: 4, control.egr_2 */
2080 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2081 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2083 /* cond_execute: class_tid: 4, l2_cntxt_tcam_cache.egr_wr */
2085 .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
2086 .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE
2089 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2090 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2092 /* cond_execute: class_tid: 5, control.vf_0 */
2094 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2095 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2097 /* cond_execute: class_tid: 5, control.vfr_0 */
2099 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2100 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2104 struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = {
2105 /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
2107 .field_info_mask = {
2108 .description = "svif",
2109 .field_bit_size = 8,
2110 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2111 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2113 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2114 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2116 .field_info_spec = {
2117 .description = "svif",
2118 .field_bit_size = 8,
2119 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2120 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2122 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2123 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2126 /* class_tid: 1, , table: mac_addr_cache.rd */
2128 .field_info_mask = {
2129 .description = "svif",
2130 .field_bit_size = 8,
2131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2132 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2134 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2135 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2137 .field_info_spec = {
2138 .description = "svif",
2139 .field_bit_size = 8,
2140 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2141 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2143 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2144 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2148 .field_info_mask = {
2149 .description = "tun_hdr",
2150 .field_bit_size = 4,
2151 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2152 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2154 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2156 .field_info_spec = {
2157 .description = "tun_hdr",
2158 .field_bit_size = 4,
2159 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2160 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2162 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2166 .field_info_mask = {
2167 .description = "one_tag",
2168 .field_bit_size = 1,
2169 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2170 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2174 .field_info_spec = {
2175 .description = "one_tag",
2176 .field_bit_size = 1,
2177 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2178 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2180 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
2181 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
2185 .field_info_mask = {
2186 .description = "vid",
2187 .field_bit_size = 12,
2188 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2189 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2191 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2192 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2193 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2194 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2195 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2196 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2197 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2198 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2199 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2201 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2202 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2203 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2205 .field_info_spec = {
2206 .description = "vid",
2207 .field_bit_size = 12,
2208 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2209 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2211 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2212 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2213 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2214 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2215 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2216 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2217 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2218 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2219 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2221 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2222 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2223 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2227 .field_info_mask = {
2228 .description = "mac_addr",
2229 .field_bit_size = 48,
2230 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2231 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2233 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2234 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2236 .field_info_spec = {
2237 .description = "mac_addr",
2238 .field_bit_size = 48,
2239 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2240 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2242 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2243 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2246 /* class_tid: 1, , table: l2_cntxt_tcam.0 */
2248 .field_info_mask = {
2249 .description = "l2_ivlan_vid",
2250 .field_bit_size = 12,
2251 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2252 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2254 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2255 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2256 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2257 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2258 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2259 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2260 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2261 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2262 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2264 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2265 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2266 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2268 .field_info_spec = {
2269 .description = "l2_ivlan_vid",
2270 .field_bit_size = 12,
2271 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2272 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2274 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2275 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2276 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2277 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2278 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2279 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2280 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2281 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2282 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2284 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2285 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2286 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2290 .field_info_mask = {
2291 .description = "l2_ovlan_vid",
2292 .field_bit_size = 12,
2293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2294 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2296 .field_info_spec = {
2297 .description = "l2_ovlan_vid",
2298 .field_bit_size = 12,
2299 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2300 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2304 .field_info_mask = {
2305 .description = "mac0_addr",
2306 .field_bit_size = 48,
2307 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2308 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2310 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2311 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2313 .field_info_spec = {
2314 .description = "mac0_addr",
2315 .field_bit_size = 48,
2316 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2317 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2319 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2320 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2324 .field_info_mask = {
2325 .description = "svif",
2326 .field_bit_size = 8,
2327 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2328 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2330 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2331 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2333 .field_info_spec = {
2334 .description = "svif",
2335 .field_bit_size = 8,
2336 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2337 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2339 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2340 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2344 .field_info_mask = {
2345 .description = "sparif",
2346 .field_bit_size = 4,
2347 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2348 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2350 .field_info_spec = {
2351 .description = "sparif",
2352 .field_bit_size = 4,
2353 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2354 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2358 .field_info_mask = {
2359 .description = "tl2_ivlan_vid",
2360 .field_bit_size = 12,
2361 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2362 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2364 .field_info_spec = {
2365 .description = "tl2_ivlan_vid",
2366 .field_bit_size = 12,
2367 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2368 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2372 .field_info_mask = {
2373 .description = "tl2_ovlan_vid",
2374 .field_bit_size = 12,
2375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2376 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2378 .field_info_spec = {
2379 .description = "tl2_ovlan_vid",
2380 .field_bit_size = 12,
2381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2382 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2386 .field_info_mask = {
2387 .description = "mac1_addr",
2388 .field_bit_size = 48,
2389 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2390 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2392 .field_info_spec = {
2393 .description = "mac1_addr",
2394 .field_bit_size = 48,
2395 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2396 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2400 .field_info_mask = {
2401 .description = "l2_num_vtags",
2402 .field_bit_size = 2,
2403 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2404 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2408 .field_info_spec = {
2409 .description = "l2_num_vtags",
2410 .field_bit_size = 2,
2411 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2412 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2414 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
2415 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff}
2419 .field_info_mask = {
2420 .description = "tl2_num_vtags",
2421 .field_bit_size = 2,
2422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2423 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2425 .field_info_spec = {
2426 .description = "tl2_num_vtags",
2427 .field_bit_size = 2,
2428 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2429 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2433 .field_info_mask = {
2434 .description = "tun_hdr_type",
2435 .field_bit_size = 4,
2436 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2437 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2439 .field_info_spec = {
2440 .description = "tun_hdr_type",
2441 .field_bit_size = 4,
2442 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2443 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2447 .field_info_mask = {
2448 .description = "key_type",
2449 .field_bit_size = 2,
2450 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2451 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2453 .field_info_spec = {
2454 .description = "key_type",
2455 .field_bit_size = 2,
2456 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2457 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2461 .field_info_mask = {
2462 .description = "valid",
2463 .field_bit_size = 1,
2464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2465 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2469 .field_info_spec = {
2470 .description = "valid",
2471 .field_bit_size = 1,
2472 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2473 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2478 /* class_tid: 1, , table: mac_addr_cache.wr */
2480 .field_info_mask = {
2481 .description = "svif",
2482 .field_bit_size = 8,
2483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2484 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2486 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2487 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2489 .field_info_spec = {
2490 .description = "svif",
2491 .field_bit_size = 8,
2492 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2493 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2495 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2496 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2500 .field_info_mask = {
2501 .description = "tun_hdr",
2502 .field_bit_size = 4,
2503 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2504 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2506 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2508 .field_info_spec = {
2509 .description = "tun_hdr",
2510 .field_bit_size = 4,
2511 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2512 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2514 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2518 .field_info_mask = {
2519 .description = "one_tag",
2520 .field_bit_size = 1,
2521 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2522 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2526 .field_info_spec = {
2527 .description = "one_tag",
2528 .field_bit_size = 1,
2529 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2530 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2532 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
2533 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
2537 .field_info_mask = {
2538 .description = "vid",
2539 .field_bit_size = 12,
2540 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2541 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2543 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2544 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2545 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2546 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2547 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2548 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2549 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2550 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2551 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2553 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2554 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2555 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2557 .field_info_spec = {
2558 .description = "vid",
2559 .field_bit_size = 12,
2560 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2561 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2563 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2564 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2565 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2566 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2567 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2568 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2569 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2570 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2571 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2573 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2574 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2575 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2579 .field_info_mask = {
2580 .description = "mac_addr",
2581 .field_bit_size = 48,
2582 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2583 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2585 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2586 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2588 .field_info_spec = {
2589 .description = "mac_addr",
2590 .field_bit_size = 48,
2591 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2592 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2594 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2595 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2598 /* class_tid: 1, , table: profile_tcam_cache.rd */
2600 .field_info_mask = {
2601 .description = "recycle_cnt",
2602 .field_bit_size = 2,
2603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2604 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2608 .field_info_spec = {
2609 .description = "recycle_cnt",
2610 .field_bit_size = 2,
2611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2612 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2616 .field_info_mask = {
2617 .description = "prof_func_id",
2618 .field_bit_size = 7,
2619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2620 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2624 .field_info_spec = {
2625 .description = "prof_func_id",
2626 .field_bit_size = 7,
2627 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2628 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
2630 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2631 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
2632 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
2634 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
2635 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
2636 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
2638 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
2639 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
2643 .field_info_mask = {
2644 .description = "hdr_sig_id",
2645 .field_bit_size = 5,
2646 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2647 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2651 .field_info_spec = {
2652 .description = "hdr_sig_id",
2653 .field_bit_size = 5,
2654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2655 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2657 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
2658 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
2661 /* class_tid: 1, , table: profile_tcam.ipv4 */
2663 .field_info_mask = {
2664 .description = "l4_hdr_is_udp_tcp",
2665 .field_bit_size = 1,
2666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2667 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2669 .field_info_spec = {
2670 .description = "l4_hdr_is_udp_tcp",
2671 .field_bit_size = 1,
2672 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2673 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2677 .field_info_mask = {
2678 .description = "l4_hdr_type",
2679 .field_bit_size = 4,
2680 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2681 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2683 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2684 BNXT_ULP_CF_IDX_O_L4 & 0xff},
2685 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
2686 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2688 .field_info_spec = {
2689 .description = "l4_hdr_type",
2690 .field_bit_size = 4,
2691 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2692 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2694 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
2695 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
2696 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
2697 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
2698 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
2699 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
2700 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
2701 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
2702 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
2704 ULP_WP_SYM_L4_HDR_TYPE_TCP},
2705 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
2707 ULP_WP_SYM_L4_HDR_TYPE_UDP}
2711 .field_info_mask = {
2712 .description = "l4_hdr_error",
2713 .field_bit_size = 1,
2714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2715 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2717 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2718 BNXT_ULP_CF_IDX_O_L4 & 0xff}
2720 .field_info_spec = {
2721 .description = "l4_hdr_error",
2722 .field_bit_size = 1,
2723 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2724 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2728 .field_info_mask = {
2729 .description = "l4_hdr_valid",
2730 .field_bit_size = 1,
2731 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2732 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2734 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2735 BNXT_ULP_CF_IDX_O_L4 & 0xff}
2737 .field_info_spec = {
2738 .description = "l4_hdr_valid",
2739 .field_bit_size = 1,
2740 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2741 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2743 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2744 BNXT_ULP_CF_IDX_O_L4 & 0xff}
2748 .field_info_mask = {
2749 .description = "l3_ipv6_cmp_dst",
2750 .field_bit_size = 1,
2751 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2752 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2754 .field_info_spec = {
2755 .description = "l3_ipv6_cmp_dst",
2756 .field_bit_size = 1,
2757 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2758 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2762 .field_info_mask = {
2763 .description = "l3_ipv6_cmp_src",
2764 .field_bit_size = 1,
2765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2766 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2768 .field_info_spec = {
2769 .description = "l3_ipv6_cmp_src",
2770 .field_bit_size = 1,
2771 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2772 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2776 .field_info_mask = {
2777 .description = "l3_hdr_isIP",
2778 .field_bit_size = 1,
2779 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2780 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2782 .field_info_spec = {
2783 .description = "l3_hdr_isIP",
2784 .field_bit_size = 1,
2785 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2786 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2790 .field_info_mask = {
2791 .description = "l3_hdr_type",
2792 .field_bit_size = 4,
2793 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2794 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2798 .field_info_spec = {
2799 .description = "l3_hdr_type",
2800 .field_bit_size = 4,
2801 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2802 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2806 .field_info_mask = {
2807 .description = "l3_hdr_error",
2808 .field_bit_size = 1,
2809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2810 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2814 .field_info_spec = {
2815 .description = "l3_hdr_error",
2816 .field_bit_size = 1,
2817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2818 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2822 .field_info_mask = {
2823 .description = "l3_hdr_valid",
2824 .field_bit_size = 1,
2825 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2826 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2830 .field_info_spec = {
2831 .description = "l3_hdr_valid",
2832 .field_bit_size = 1,
2833 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2834 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2836 ULP_WP_SYM_L3_HDR_VALID_YES}
2840 .field_info_mask = {
2841 .description = "l2_two_vtags",
2842 .field_bit_size = 1,
2843 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2844 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2848 .field_info_spec = {
2849 .description = "l2_two_vtags",
2850 .field_bit_size = 1,
2851 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2852 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2856 .field_info_mask = {
2857 .description = "l2_vtag_present",
2858 .field_bit_size = 1,
2859 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2860 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2864 .field_info_spec = {
2865 .description = "l2_vtag_present",
2866 .field_bit_size = 1,
2867 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2868 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2870 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
2871 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
2875 .field_info_mask = {
2876 .description = "l2_uc_mc_bc",
2877 .field_bit_size = 2,
2878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2879 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2883 .field_info_spec = {
2884 .description = "l2_uc_mc_bc",
2885 .field_bit_size = 2,
2886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2887 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2891 .field_info_mask = {
2892 .description = "l2_hdr_type",
2893 .field_bit_size = 2,
2894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2895 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2899 .field_info_spec = {
2900 .description = "l2_hdr_type",
2901 .field_bit_size = 2,
2902 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2903 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2907 .field_info_mask = {
2908 .description = "l2_hdr_error",
2909 .field_bit_size = 1,
2910 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2911 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2915 .field_info_spec = {
2916 .description = "l2_hdr_error",
2917 .field_bit_size = 1,
2918 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2919 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2923 .field_info_mask = {
2924 .description = "l2_hdr_valid",
2925 .field_bit_size = 1,
2926 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2927 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2931 .field_info_spec = {
2932 .description = "l2_hdr_valid",
2933 .field_bit_size = 1,
2934 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2935 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2937 ULP_WP_SYM_L2_HDR_VALID_YES}
2941 .field_info_mask = {
2942 .description = "tun_hdr_flags",
2943 .field_bit_size = 3,
2944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2945 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2947 .field_info_spec = {
2948 .description = "tun_hdr_flags",
2949 .field_bit_size = 3,
2950 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2951 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2955 .field_info_mask = {
2956 .description = "tun_hdr_type",
2957 .field_bit_size = 4,
2958 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2959 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2961 .field_info_spec = {
2962 .description = "tun_hdr_type",
2963 .field_bit_size = 4,
2964 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2965 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2969 .field_info_mask = {
2970 .description = "tun_hdr_err",
2971 .field_bit_size = 1,
2972 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2973 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2975 .field_info_spec = {
2976 .description = "tun_hdr_err",
2977 .field_bit_size = 1,
2978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2979 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2983 .field_info_mask = {
2984 .description = "tun_hdr_valid",
2985 .field_bit_size = 1,
2986 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2987 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2991 .field_info_spec = {
2992 .description = "tun_hdr_valid",
2993 .field_bit_size = 1,
2994 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2995 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2999 .field_info_mask = {
3000 .description = "tl4_hdr_is_udp_tcp",
3001 .field_bit_size = 1,
3002 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3003 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3005 .field_info_spec = {
3006 .description = "tl4_hdr_is_udp_tcp",
3007 .field_bit_size = 1,
3008 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3009 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3013 .field_info_mask = {
3014 .description = "tl4_hdr_type",
3015 .field_bit_size = 4,
3016 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3017 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3019 .field_info_spec = {
3020 .description = "tl4_hdr_type",
3021 .field_bit_size = 4,
3022 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3023 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3027 .field_info_mask = {
3028 .description = "tl4_hdr_error",
3029 .field_bit_size = 1,
3030 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3031 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3033 .field_info_spec = {
3034 .description = "tl4_hdr_error",
3035 .field_bit_size = 1,
3036 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3037 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3041 .field_info_mask = {
3042 .description = "tl4_hdr_valid",
3043 .field_bit_size = 1,
3044 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3045 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3049 .field_info_spec = {
3050 .description = "tl4_hdr_valid",
3051 .field_bit_size = 1,
3052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3053 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3057 .field_info_mask = {
3058 .description = "tl3_ipv6_cmp_dst",
3059 .field_bit_size = 1,
3060 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3061 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3063 .field_info_spec = {
3064 .description = "tl3_ipv6_cmp_dst",
3065 .field_bit_size = 1,
3066 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3067 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3071 .field_info_mask = {
3072 .description = "tl3_ipv6_cmp_src",
3073 .field_bit_size = 1,
3074 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3075 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3077 .field_info_spec = {
3078 .description = "tl3_ipv6_cmp_src",
3079 .field_bit_size = 1,
3080 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3081 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3085 .field_info_mask = {
3086 .description = "tl3_hdr_isIP",
3087 .field_bit_size = 1,
3088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3089 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3091 .field_info_spec = {
3092 .description = "tl3_hdr_isIP",
3093 .field_bit_size = 1,
3094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3095 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3099 .field_info_mask = {
3100 .description = "tl3_hdr_type",
3101 .field_bit_size = 4,
3102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3103 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3105 .field_info_spec = {
3106 .description = "tl3_hdr_type",
3107 .field_bit_size = 4,
3108 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3109 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3113 .field_info_mask = {
3114 .description = "tl3_hdr_error",
3115 .field_bit_size = 1,
3116 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3117 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3119 .field_info_spec = {
3120 .description = "tl3_hdr_error",
3121 .field_bit_size = 1,
3122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3123 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3127 .field_info_mask = {
3128 .description = "tl3_hdr_valid",
3129 .field_bit_size = 1,
3130 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3131 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3135 .field_info_spec = {
3136 .description = "tl3_hdr_valid",
3137 .field_bit_size = 1,
3138 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3139 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3143 .field_info_mask = {
3144 .description = "tl2_two_vtags",
3145 .field_bit_size = 1,
3146 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3147 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3149 .field_info_spec = {
3150 .description = "tl2_two_vtags",
3151 .field_bit_size = 1,
3152 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3153 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3157 .field_info_mask = {
3158 .description = "tl2_vtag_present",
3159 .field_bit_size = 1,
3160 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3161 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3163 .field_info_spec = {
3164 .description = "tl2_vtag_present",
3165 .field_bit_size = 1,
3166 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3167 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3171 .field_info_mask = {
3172 .description = "tl2_uc_mc_bc",
3173 .field_bit_size = 2,
3174 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3175 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3177 .field_info_spec = {
3178 .description = "tl2_uc_mc_bc",
3179 .field_bit_size = 2,
3180 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3181 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3185 .field_info_mask = {
3186 .description = "tl2_hdr_type",
3187 .field_bit_size = 2,
3188 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3189 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3191 .field_info_spec = {
3192 .description = "tl2_hdr_type",
3193 .field_bit_size = 2,
3194 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3195 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3199 .field_info_mask = {
3200 .description = "tl2_hdr_valid",
3201 .field_bit_size = 1,
3202 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3203 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3207 .field_info_spec = {
3208 .description = "tl2_hdr_valid",
3209 .field_bit_size = 1,
3210 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3211 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3215 .field_info_mask = {
3216 .description = "hrec_next",
3217 .field_bit_size = 1,
3218 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3219 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3221 .field_info_spec = {
3222 .description = "hrec_next",
3223 .field_bit_size = 1,
3224 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3225 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3229 .field_info_mask = {
3230 .description = "reserved",
3231 .field_bit_size = 9,
3232 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3233 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3235 .field_info_spec = {
3236 .description = "reserved",
3237 .field_bit_size = 9,
3238 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3239 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3243 .field_info_mask = {
3244 .description = "prof_func_id",
3245 .field_bit_size = 7,
3246 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3247 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3251 .field_info_spec = {
3252 .description = "prof_func_id",
3253 .field_bit_size = 7,
3254 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3255 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
3257 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3258 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
3259 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3261 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3262 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3263 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3265 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3266 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3270 .field_info_mask = {
3271 .description = "agg_error",
3272 .field_bit_size = 1,
3273 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3274 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3276 .field_info_spec = {
3277 .description = "agg_error",
3278 .field_bit_size = 1,
3279 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3280 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3284 .field_info_mask = {
3285 .description = "recycle_cnt",
3286 .field_bit_size = 2,
3287 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3288 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3290 .field_info_spec = {
3291 .description = "recycle_cnt",
3292 .field_bit_size = 2,
3293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3294 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3298 .field_info_mask = {
3299 .description = "pkt_type_0",
3300 .field_bit_size = 2,
3301 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3302 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3304 .field_info_spec = {
3305 .description = "pkt_type_0",
3306 .field_bit_size = 2,
3307 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3308 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3312 .field_info_mask = {
3313 .description = "pkt_type_1",
3314 .field_bit_size = 2,
3315 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3316 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3318 .field_info_spec = {
3319 .description = "pkt_type_1",
3320 .field_bit_size = 2,
3321 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3322 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3326 .field_info_mask = {
3327 .description = "valid",
3328 .field_bit_size = 1,
3329 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3330 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3334 .field_info_spec = {
3335 .description = "valid",
3336 .field_bit_size = 1,
3337 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3338 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3343 /* class_tid: 1, , table: profile_tcam.ipv6 */
3345 .field_info_mask = {
3346 .description = "l4_hdr_is_udp_tcp",
3347 .field_bit_size = 1,
3348 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3349 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3351 .field_info_spec = {
3352 .description = "l4_hdr_is_udp_tcp",
3353 .field_bit_size = 1,
3354 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3355 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3359 .field_info_mask = {
3360 .description = "l4_hdr_type",
3361 .field_bit_size = 4,
3362 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3363 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3365 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3366 BNXT_ULP_CF_IDX_O_L4 & 0xff},
3367 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
3368 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
3370 .field_info_spec = {
3371 .description = "l4_hdr_type",
3372 .field_bit_size = 4,
3373 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3374 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
3376 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
3377 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
3378 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
3379 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
3380 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
3381 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
3382 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
3383 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
3384 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
3386 ULP_WP_SYM_L4_HDR_TYPE_TCP},
3387 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
3389 ULP_WP_SYM_L4_HDR_TYPE_UDP}
3393 .field_info_mask = {
3394 .description = "l4_hdr_error",
3395 .field_bit_size = 1,
3396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3397 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3399 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3400 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3402 .field_info_spec = {
3403 .description = "l4_hdr_error",
3404 .field_bit_size = 1,
3405 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3406 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3410 .field_info_mask = {
3411 .description = "l4_hdr_valid",
3412 .field_bit_size = 1,
3413 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3414 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3416 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3417 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3419 .field_info_spec = {
3420 .description = "l4_hdr_valid",
3421 .field_bit_size = 1,
3422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3423 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3425 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3426 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3430 .field_info_mask = {
3431 .description = "l3_ipv6_cmp_dst",
3432 .field_bit_size = 1,
3433 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3434 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3436 .field_info_spec = {
3437 .description = "l3_ipv6_cmp_dst",
3438 .field_bit_size = 1,
3439 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3440 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3444 .field_info_mask = {
3445 .description = "l3_ipv6_cmp_src",
3446 .field_bit_size = 1,
3447 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3448 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3450 .field_info_spec = {
3451 .description = "l3_ipv6_cmp_src",
3452 .field_bit_size = 1,
3453 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3454 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3458 .field_info_mask = {
3459 .description = "l3_hdr_isIP",
3460 .field_bit_size = 1,
3461 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3462 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3464 .field_info_spec = {
3465 .description = "l3_hdr_isIP",
3466 .field_bit_size = 1,
3467 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3468 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3472 .field_info_mask = {
3473 .description = "l3_hdr_type",
3474 .field_bit_size = 4,
3475 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3476 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3480 .field_info_spec = {
3481 .description = "l3_hdr_type",
3482 .field_bit_size = 4,
3483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3484 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3486 ULP_WP_SYM_L3_HDR_TYPE_IPV6}
3490 .field_info_mask = {
3491 .description = "l3_hdr_error",
3492 .field_bit_size = 1,
3493 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3494 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3498 .field_info_spec = {
3499 .description = "l3_hdr_error",
3500 .field_bit_size = 1,
3501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3502 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3506 .field_info_mask = {
3507 .description = "l3_hdr_valid",
3508 .field_bit_size = 1,
3509 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3510 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3514 .field_info_spec = {
3515 .description = "l3_hdr_valid",
3516 .field_bit_size = 1,
3517 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3518 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3520 ULP_WP_SYM_L3_HDR_VALID_YES}
3524 .field_info_mask = {
3525 .description = "l2_two_vtags",
3526 .field_bit_size = 1,
3527 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3528 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3532 .field_info_spec = {
3533 .description = "l2_two_vtags",
3534 .field_bit_size = 1,
3535 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3536 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3540 .field_info_mask = {
3541 .description = "l2_vtag_present",
3542 .field_bit_size = 1,
3543 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3544 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3548 .field_info_spec = {
3549 .description = "l2_vtag_present",
3550 .field_bit_size = 1,
3551 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3552 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3554 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
3555 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
3559 .field_info_mask = {
3560 .description = "l2_uc_mc_bc",
3561 .field_bit_size = 2,
3562 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3563 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3567 .field_info_spec = {
3568 .description = "l2_uc_mc_bc",
3569 .field_bit_size = 2,
3570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3571 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3575 .field_info_mask = {
3576 .description = "l2_hdr_type",
3577 .field_bit_size = 2,
3578 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3579 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3583 .field_info_spec = {
3584 .description = "l2_hdr_type",
3585 .field_bit_size = 2,
3586 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3587 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3591 .field_info_mask = {
3592 .description = "l2_hdr_error",
3593 .field_bit_size = 1,
3594 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3595 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3599 .field_info_spec = {
3600 .description = "l2_hdr_error",
3601 .field_bit_size = 1,
3602 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3603 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3607 .field_info_mask = {
3608 .description = "l2_hdr_valid",
3609 .field_bit_size = 1,
3610 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3611 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3615 .field_info_spec = {
3616 .description = "l2_hdr_valid",
3617 .field_bit_size = 1,
3618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3619 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3621 ULP_WP_SYM_L2_HDR_VALID_YES}
3625 .field_info_mask = {
3626 .description = "tun_hdr_flags",
3627 .field_bit_size = 3,
3628 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3629 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3631 .field_info_spec = {
3632 .description = "tun_hdr_flags",
3633 .field_bit_size = 3,
3634 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3635 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3639 .field_info_mask = {
3640 .description = "tun_hdr_type",
3641 .field_bit_size = 4,
3642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3643 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3645 .field_info_spec = {
3646 .description = "tun_hdr_type",
3647 .field_bit_size = 4,
3648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3649 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3653 .field_info_mask = {
3654 .description = "tun_hdr_err",
3655 .field_bit_size = 1,
3656 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3657 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3659 .field_info_spec = {
3660 .description = "tun_hdr_err",
3661 .field_bit_size = 1,
3662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3663 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3667 .field_info_mask = {
3668 .description = "tun_hdr_valid",
3669 .field_bit_size = 1,
3670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3671 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3675 .field_info_spec = {
3676 .description = "tun_hdr_valid",
3677 .field_bit_size = 1,
3678 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3679 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3683 .field_info_mask = {
3684 .description = "tl4_hdr_is_udp_tcp",
3685 .field_bit_size = 1,
3686 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3687 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3689 .field_info_spec = {
3690 .description = "tl4_hdr_is_udp_tcp",
3691 .field_bit_size = 1,
3692 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3693 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3697 .field_info_mask = {
3698 .description = "tl4_hdr_type",
3699 .field_bit_size = 4,
3700 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3701 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3703 .field_info_spec = {
3704 .description = "tl4_hdr_type",
3705 .field_bit_size = 4,
3706 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3707 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3711 .field_info_mask = {
3712 .description = "tl4_hdr_error",
3713 .field_bit_size = 1,
3714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3715 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3717 .field_info_spec = {
3718 .description = "tl4_hdr_error",
3719 .field_bit_size = 1,
3720 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3721 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3725 .field_info_mask = {
3726 .description = "tl4_hdr_valid",
3727 .field_bit_size = 1,
3728 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3729 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3733 .field_info_spec = {
3734 .description = "tl4_hdr_valid",
3735 .field_bit_size = 1,
3736 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3737 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3741 .field_info_mask = {
3742 .description = "tl3_ipv6_cmp_dst",
3743 .field_bit_size = 1,
3744 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3745 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3747 .field_info_spec = {
3748 .description = "tl3_ipv6_cmp_dst",
3749 .field_bit_size = 1,
3750 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3751 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3755 .field_info_mask = {
3756 .description = "tl3_ipv6_cmp_src",
3757 .field_bit_size = 1,
3758 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3759 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3761 .field_info_spec = {
3762 .description = "tl3_ipv6_cmp_src",
3763 .field_bit_size = 1,
3764 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3765 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3769 .field_info_mask = {
3770 .description = "tl3_hdr_isIP",
3771 .field_bit_size = 1,
3772 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3773 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3775 .field_info_spec = {
3776 .description = "tl3_hdr_isIP",
3777 .field_bit_size = 1,
3778 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3779 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3783 .field_info_mask = {
3784 .description = "tl3_hdr_type",
3785 .field_bit_size = 4,
3786 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3787 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3789 .field_info_spec = {
3790 .description = "tl3_hdr_type",
3791 .field_bit_size = 4,
3792 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3793 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3797 .field_info_mask = {
3798 .description = "tl3_hdr_error",
3799 .field_bit_size = 1,
3800 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3801 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3803 .field_info_spec = {
3804 .description = "tl3_hdr_error",
3805 .field_bit_size = 1,
3806 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3807 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3811 .field_info_mask = {
3812 .description = "tl3_hdr_valid",
3813 .field_bit_size = 1,
3814 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3815 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3819 .field_info_spec = {
3820 .description = "tl3_hdr_valid",
3821 .field_bit_size = 1,
3822 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3823 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3827 .field_info_mask = {
3828 .description = "tl2_two_vtags",
3829 .field_bit_size = 1,
3830 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3831 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3833 .field_info_spec = {
3834 .description = "tl2_two_vtags",
3835 .field_bit_size = 1,
3836 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3837 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3841 .field_info_mask = {
3842 .description = "tl2_vtag_present",
3843 .field_bit_size = 1,
3844 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3845 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3847 .field_info_spec = {
3848 .description = "tl2_vtag_present",
3849 .field_bit_size = 1,
3850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3851 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3855 .field_info_mask = {
3856 .description = "tl2_uc_mc_bc",
3857 .field_bit_size = 2,
3858 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3859 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3861 .field_info_spec = {
3862 .description = "tl2_uc_mc_bc",
3863 .field_bit_size = 2,
3864 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3865 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3869 .field_info_mask = {
3870 .description = "tl2_hdr_type",
3871 .field_bit_size = 2,
3872 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3873 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3875 .field_info_spec = {
3876 .description = "tl2_hdr_type",
3877 .field_bit_size = 2,
3878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3879 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3883 .field_info_mask = {
3884 .description = "tl2_hdr_valid",
3885 .field_bit_size = 1,
3886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3887 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3891 .field_info_spec = {
3892 .description = "tl2_hdr_valid",
3893 .field_bit_size = 1,
3894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3895 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3899 .field_info_mask = {
3900 .description = "hrec_next",
3901 .field_bit_size = 1,
3902 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3903 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3905 .field_info_spec = {
3906 .description = "hrec_next",
3907 .field_bit_size = 1,
3908 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3909 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3913 .field_info_mask = {
3914 .description = "reserved",
3915 .field_bit_size = 9,
3916 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3917 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3919 .field_info_spec = {
3920 .description = "reserved",
3921 .field_bit_size = 9,
3922 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3923 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3927 .field_info_mask = {
3928 .description = "prof_func_id",
3929 .field_bit_size = 7,
3930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3931 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3935 .field_info_spec = {
3936 .description = "prof_func_id",
3937 .field_bit_size = 7,
3938 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3939 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
3941 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3942 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
3943 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3945 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3946 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3947 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3949 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3950 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3954 .field_info_mask = {
3955 .description = "agg_error",
3956 .field_bit_size = 1,
3957 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3958 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3960 .field_info_spec = {
3961 .description = "agg_error",
3962 .field_bit_size = 1,
3963 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3964 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3968 .field_info_mask = {
3969 .description = "recycle_cnt",
3970 .field_bit_size = 2,
3971 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3972 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3974 .field_info_spec = {
3975 .description = "recycle_cnt",
3976 .field_bit_size = 2,
3977 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3978 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3982 .field_info_mask = {
3983 .description = "pkt_type_0",
3984 .field_bit_size = 2,
3985 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3986 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3988 .field_info_spec = {
3989 .description = "pkt_type_0",
3990 .field_bit_size = 2,
3991 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3992 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3996 .field_info_mask = {
3997 .description = "pkt_type_1",
3998 .field_bit_size = 2,
3999 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4000 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4002 .field_info_spec = {
4003 .description = "pkt_type_1",
4004 .field_bit_size = 2,
4005 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4006 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4010 .field_info_mask = {
4011 .description = "valid",
4012 .field_bit_size = 1,
4013 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4014 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4018 .field_info_spec = {
4019 .description = "valid",
4020 .field_bit_size = 1,
4021 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4022 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4027 /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
4029 .field_info_mask = {
4030 .description = "l4_hdr_is_udp_tcp",
4031 .field_bit_size = 1,
4032 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4033 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4035 .field_info_spec = {
4036 .description = "l4_hdr_is_udp_tcp",
4037 .field_bit_size = 1,
4038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4039 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4043 .field_info_mask = {
4044 .description = "l4_hdr_type",
4045 .field_bit_size = 4,
4046 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4047 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4051 .field_info_spec = {
4052 .description = "l4_hdr_type",
4053 .field_bit_size = 4,
4054 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4055 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4057 ULP_WP_SYM_L4_HDR_TYPE_UDP}
4061 .field_info_mask = {
4062 .description = "l4_hdr_error",
4063 .field_bit_size = 1,
4064 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4065 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4069 .field_info_spec = {
4070 .description = "l4_hdr_error",
4071 .field_bit_size = 1,
4072 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4073 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4077 .field_info_mask = {
4078 .description = "l4_hdr_valid",
4079 .field_bit_size = 1,
4080 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4081 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4083 .field_info_spec = {
4084 .description = "l4_hdr_valid",
4085 .field_bit_size = 1,
4086 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4087 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4091 .field_info_mask = {
4092 .description = "l3_ipv6_cmp_dst",
4093 .field_bit_size = 1,
4094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4095 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4097 .field_info_spec = {
4098 .description = "l3_ipv6_cmp_dst",
4099 .field_bit_size = 1,
4100 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4101 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4105 .field_info_mask = {
4106 .description = "l3_ipv6_cmp_src",
4107 .field_bit_size = 1,
4108 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4109 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4111 .field_info_spec = {
4112 .description = "l3_ipv6_cmp_src",
4113 .field_bit_size = 1,
4114 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4115 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4119 .field_info_mask = {
4120 .description = "l3_hdr_isIP",
4121 .field_bit_size = 1,
4122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4123 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4125 .field_info_spec = {
4126 .description = "l3_hdr_isIP",
4127 .field_bit_size = 1,
4128 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4129 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4133 .field_info_mask = {
4134 .description = "l3_hdr_type",
4135 .field_bit_size = 4,
4136 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4137 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4139 .field_info_spec = {
4140 .description = "l3_hdr_type",
4141 .field_bit_size = 4,
4142 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4143 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4147 .field_info_mask = {
4148 .description = "l3_hdr_error",
4149 .field_bit_size = 1,
4150 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4151 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4155 .field_info_spec = {
4156 .description = "l3_hdr_error",
4157 .field_bit_size = 1,
4158 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4159 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4163 .field_info_mask = {
4164 .description = "l3_hdr_valid",
4165 .field_bit_size = 1,
4166 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4167 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4169 .field_info_spec = {
4170 .description = "l3_hdr_valid",
4171 .field_bit_size = 1,
4172 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4173 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4177 .field_info_mask = {
4178 .description = "l2_two_vtags",
4179 .field_bit_size = 1,
4180 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4181 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4183 .field_info_spec = {
4184 .description = "l2_two_vtags",
4185 .field_bit_size = 1,
4186 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4187 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4191 .field_info_mask = {
4192 .description = "l2_vtag_present",
4193 .field_bit_size = 1,
4194 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4195 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4197 .field_info_spec = {
4198 .description = "l2_vtag_present",
4199 .field_bit_size = 1,
4200 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4201 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4205 .field_info_mask = {
4206 .description = "l2_uc_mc_bc",
4207 .field_bit_size = 2,
4208 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4209 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4211 .field_info_spec = {
4212 .description = "l2_uc_mc_bc",
4213 .field_bit_size = 2,
4214 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4215 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4219 .field_info_mask = {
4220 .description = "l2_hdr_type",
4221 .field_bit_size = 2,
4222 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4223 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4225 .field_info_spec = {
4226 .description = "l2_hdr_type",
4227 .field_bit_size = 2,
4228 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4229 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4233 .field_info_mask = {
4234 .description = "l2_hdr_error",
4235 .field_bit_size = 1,
4236 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4237 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4239 .field_info_spec = {
4240 .description = "l2_hdr_error",
4241 .field_bit_size = 1,
4242 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4243 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4247 .field_info_mask = {
4248 .description = "l2_hdr_valid",
4249 .field_bit_size = 1,
4250 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4251 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4253 .field_info_spec = {
4254 .description = "l2_hdr_valid",
4255 .field_bit_size = 1,
4256 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4257 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4261 .field_info_mask = {
4262 .description = "tun_hdr_flags",
4263 .field_bit_size = 3,
4264 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4265 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4267 .field_info_spec = {
4268 .description = "tun_hdr_flags",
4269 .field_bit_size = 3,
4270 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4271 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4275 .field_info_mask = {
4276 .description = "tun_hdr_type",
4277 .field_bit_size = 4,
4278 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4279 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4283 .field_info_spec = {
4284 .description = "tun_hdr_type",
4285 .field_bit_size = 4,
4286 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4287 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4291 .field_info_mask = {
4292 .description = "tun_hdr_err",
4293 .field_bit_size = 1,
4294 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4295 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4297 .field_info_spec = {
4298 .description = "tun_hdr_err",
4299 .field_bit_size = 1,
4300 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4301 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4305 .field_info_mask = {
4306 .description = "tun_hdr_valid",
4307 .field_bit_size = 1,
4308 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4309 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4313 .field_info_spec = {
4314 .description = "tun_hdr_valid",
4315 .field_bit_size = 1,
4316 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4317 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4319 ULP_WP_SYM_TUN_HDR_VALID_YES}
4323 .field_info_mask = {
4324 .description = "tl4_hdr_is_udp_tcp",
4325 .field_bit_size = 1,
4326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4327 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4329 .field_info_spec = {
4330 .description = "tl4_hdr_is_udp_tcp",
4331 .field_bit_size = 1,
4332 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4333 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4337 .field_info_mask = {
4338 .description = "tl4_hdr_type",
4339 .field_bit_size = 4,
4340 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4341 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4343 .field_info_spec = {
4344 .description = "tl4_hdr_type",
4345 .field_bit_size = 4,
4346 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4347 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4351 .field_info_mask = {
4352 .description = "tl4_hdr_error",
4353 .field_bit_size = 1,
4354 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4355 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4357 .field_info_spec = {
4358 .description = "tl4_hdr_error",
4359 .field_bit_size = 1,
4360 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4361 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4365 .field_info_mask = {
4366 .description = "tl4_hdr_valid",
4367 .field_bit_size = 1,
4368 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4369 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4373 .field_info_spec = {
4374 .description = "tl4_hdr_valid",
4375 .field_bit_size = 1,
4376 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4377 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4379 ULP_WP_SYM_TL4_HDR_VALID_YES}
4383 .field_info_mask = {
4384 .description = "tl3_ipv6_cmp_dst",
4385 .field_bit_size = 1,
4386 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4387 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4389 .field_info_spec = {
4390 .description = "tl3_ipv6_cmp_dst",
4391 .field_bit_size = 1,
4392 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4393 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4397 .field_info_mask = {
4398 .description = "tl3_ipv6_cmp_src",
4399 .field_bit_size = 1,
4400 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4401 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4403 .field_info_spec = {
4404 .description = "tl3_ipv6_cmp_src",
4405 .field_bit_size = 1,
4406 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4407 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4411 .field_info_mask = {
4412 .description = "tl3_hdr_isIP",
4413 .field_bit_size = 1,
4414 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4415 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4417 .field_info_spec = {
4418 .description = "tl3_hdr_isIP",
4419 .field_bit_size = 1,
4420 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4421 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4425 .field_info_mask = {
4426 .description = "tl3_hdr_type",
4427 .field_bit_size = 4,
4428 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4429 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4433 .field_info_spec = {
4434 .description = "tl3_hdr_type",
4435 .field_bit_size = 4,
4436 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4437 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4441 .field_info_mask = {
4442 .description = "tl3_hdr_error",
4443 .field_bit_size = 1,
4444 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4445 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4447 .field_info_spec = {
4448 .description = "tl3_hdr_error",
4449 .field_bit_size = 1,
4450 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4451 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4455 .field_info_mask = {
4456 .description = "tl3_hdr_valid",
4457 .field_bit_size = 1,
4458 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4459 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4463 .field_info_spec = {
4464 .description = "tl3_hdr_valid",
4465 .field_bit_size = 1,
4466 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4467 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4469 ULP_WP_SYM_TL3_HDR_VALID_YES}
4473 .field_info_mask = {
4474 .description = "tl2_two_vtags",
4475 .field_bit_size = 1,
4476 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4477 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4479 .field_info_spec = {
4480 .description = "tl2_two_vtags",
4481 .field_bit_size = 1,
4482 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4483 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4487 .field_info_mask = {
4488 .description = "tl2_vtag_present",
4489 .field_bit_size = 1,
4490 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4491 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4493 .field_info_spec = {
4494 .description = "tl2_vtag_present",
4495 .field_bit_size = 1,
4496 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4497 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4501 .field_info_mask = {
4502 .description = "tl2_uc_mc_bc",
4503 .field_bit_size = 2,
4504 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4505 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4509 .field_info_spec = {
4510 .description = "tl2_uc_mc_bc",
4511 .field_bit_size = 2,
4512 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4513 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4517 .field_info_mask = {
4518 .description = "tl2_hdr_type",
4519 .field_bit_size = 2,
4520 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4521 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4523 .field_info_spec = {
4524 .description = "tl2_hdr_type",
4525 .field_bit_size = 2,
4526 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4527 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4531 .field_info_mask = {
4532 .description = "tl2_hdr_valid",
4533 .field_bit_size = 1,
4534 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4535 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4539 .field_info_spec = {
4540 .description = "tl2_hdr_valid",
4541 .field_bit_size = 1,
4542 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4543 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4545 ULP_WP_SYM_TL2_HDR_VALID_YES}
4549 .field_info_mask = {
4550 .description = "hrec_next",
4551 .field_bit_size = 1,
4552 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4553 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4555 .field_info_spec = {
4556 .description = "hrec_next",
4557 .field_bit_size = 1,
4558 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4559 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4563 .field_info_mask = {
4564 .description = "reserved",
4565 .field_bit_size = 9,
4566 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4567 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4569 .field_info_spec = {
4570 .description = "reserved",
4571 .field_bit_size = 9,
4572 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4573 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4577 .field_info_mask = {
4578 .description = "prof_func_id",
4579 .field_bit_size = 7,
4580 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4581 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4585 .field_info_spec = {
4586 .description = "prof_func_id",
4587 .field_bit_size = 7,
4588 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4589 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
4591 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
4592 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}
4596 .field_info_mask = {
4597 .description = "agg_error",
4598 .field_bit_size = 1,
4599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4600 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4602 .field_info_spec = {
4603 .description = "agg_error",
4604 .field_bit_size = 1,
4605 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4606 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4610 .field_info_mask = {
4611 .description = "recycle_cnt",
4612 .field_bit_size = 2,
4613 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4614 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4616 .field_info_spec = {
4617 .description = "recycle_cnt",
4618 .field_bit_size = 2,
4619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4620 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4624 .field_info_mask = {
4625 .description = "pkt_type_0",
4626 .field_bit_size = 2,
4627 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4628 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4630 .field_info_spec = {
4631 .description = "pkt_type_0",
4632 .field_bit_size = 2,
4633 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4634 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4638 .field_info_mask = {
4639 .description = "pkt_type_1",
4640 .field_bit_size = 2,
4641 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4642 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4644 .field_info_spec = {
4645 .description = "pkt_type_1",
4646 .field_bit_size = 2,
4647 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4648 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4652 .field_info_mask = {
4653 .description = "valid",
4654 .field_bit_size = 1,
4655 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4656 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4660 .field_info_spec = {
4661 .description = "valid",
4662 .field_bit_size = 1,
4663 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4664 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4669 /* class_tid: 1, , table: profile_tcam_cache.wr */
4671 .field_info_mask = {
4672 .description = "recycle_cnt",
4673 .field_bit_size = 2,
4674 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4675 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4679 .field_info_spec = {
4680 .description = "recycle_cnt",
4681 .field_bit_size = 2,
4682 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4683 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4687 .field_info_mask = {
4688 .description = "prof_func_id",
4689 .field_bit_size = 7,
4690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4691 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4695 .field_info_spec = {
4696 .description = "prof_func_id",
4697 .field_bit_size = 7,
4698 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4699 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4701 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
4702 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
4703 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
4705 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
4706 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
4707 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
4709 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4710 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
4714 .field_info_mask = {
4715 .description = "hdr_sig_id",
4716 .field_bit_size = 5,
4717 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4718 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4722 .field_info_spec = {
4723 .description = "hdr_sig_id",
4724 .field_bit_size = 5,
4725 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4726 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4728 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
4729 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
4732 /* class_tid: 1, , table: em.ipv4 */
4734 .field_info_mask = {
4735 .description = "spare",
4736 .field_bit_size = 3,
4737 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4738 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4740 .field_info_spec = {
4741 .description = "spare",
4742 .field_bit_size = 3,
4743 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4744 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4748 .field_info_mask = {
4749 .description = "local_cos",
4750 .field_bit_size = 3,
4751 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4752 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4754 .field_info_spec = {
4755 .description = "local_cos",
4756 .field_bit_size = 3,
4757 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4758 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4762 .field_info_mask = {
4763 .description = "l4.dst",
4764 .field_bit_size = 16,
4765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4766 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4771 .field_info_spec = {
4772 .description = "l4.dst",
4773 .field_bit_size = 16,
4774 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4775 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4777 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4778 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4779 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4781 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
4782 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
4783 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4787 .field_info_mask = {
4788 .description = "l4.src",
4789 .field_bit_size = 16,
4790 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4791 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4796 .field_info_spec = {
4797 .description = "l4.src",
4798 .field_bit_size = 16,
4799 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4800 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4802 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4803 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4804 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4806 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
4807 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
4808 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4812 .field_info_mask = {
4813 .description = "l3.prot",
4814 .field_bit_size = 8,
4815 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4816 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4820 .field_info_spec = {
4821 .description = "l3.prot",
4822 .field_bit_size = 8,
4823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4824 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4826 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
4827 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
4828 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4830 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
4831 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
4832 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4836 .field_info_mask = {
4837 .description = "l3.dst",
4838 .field_bit_size = 32,
4839 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4840 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4842 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
4843 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
4845 .field_info_spec = {
4846 .description = "l3.dst",
4847 .field_bit_size = 32,
4848 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4849 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4851 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
4852 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
4856 .field_info_mask = {
4857 .description = "l3.src",
4858 .field_bit_size = 32,
4859 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4860 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4862 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
4863 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
4865 .field_info_spec = {
4866 .description = "l3.src",
4867 .field_bit_size = 32,
4868 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4869 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4871 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
4872 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
4876 .field_info_mask = {
4877 .description = "l2.smac",
4878 .field_bit_size = 48,
4879 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4880 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4882 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4883 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
4885 .field_info_spec = {
4886 .description = "l2.smac",
4887 .field_bit_size = 48,
4888 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4889 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4891 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4892 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
4896 .field_info_mask = {
4897 .description = "l2_cntxt_id",
4898 .field_bit_size = 10,
4899 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4900 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4905 .field_info_spec = {
4906 .description = "l2_cntxt_id",
4907 .field_bit_size = 10,
4908 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4909 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4911 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
4912 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
4916 .field_info_mask = {
4917 .description = "em_profile_id",
4918 .field_bit_size = 8,
4919 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4920 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4924 .field_info_spec = {
4925 .description = "em_profile_id",
4926 .field_bit_size = 8,
4927 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4928 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4930 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
4931 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
4934 /* class_tid: 1, , table: eem.ipv4 */
4936 .field_info_mask = {
4937 .description = "spare",
4938 .field_bit_size = 275,
4939 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4940 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4942 .field_info_spec = {
4943 .description = "spare",
4944 .field_bit_size = 275,
4945 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4946 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4950 .field_info_mask = {
4951 .description = "local_cos",
4952 .field_bit_size = 3,
4953 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4954 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4956 .field_info_spec = {
4957 .description = "local_cos",
4958 .field_bit_size = 3,
4959 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4960 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4964 .field_info_mask = {
4965 .description = "l4.dst",
4966 .field_bit_size = 16,
4967 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4968 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4973 .field_info_spec = {
4974 .description = "l4.dst",
4975 .field_bit_size = 16,
4976 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4977 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4979 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4980 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4981 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4983 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
4984 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
4985 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4989 .field_info_mask = {
4990 .description = "l4.src",
4991 .field_bit_size = 16,
4992 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4993 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4998 .field_info_spec = {
4999 .description = "l4.src",
5000 .field_bit_size = 16,
5001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5002 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5004 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5005 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5006 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5008 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
5009 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
5010 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5014 .field_info_mask = {
5015 .description = "l3.prot",
5016 .field_bit_size = 8,
5017 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5018 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5022 .field_info_spec = {
5023 .description = "l3.prot",
5024 .field_bit_size = 8,
5025 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5026 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5028 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
5029 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
5030 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5032 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
5033 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
5034 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5038 .field_info_mask = {
5039 .description = "l3.dst",
5040 .field_bit_size = 32,
5041 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5042 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5044 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5045 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5047 .field_info_spec = {
5048 .description = "l3.dst",
5049 .field_bit_size = 32,
5050 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5051 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5053 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5054 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5058 .field_info_mask = {
5059 .description = "l3.src",
5060 .field_bit_size = 32,
5061 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5062 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5064 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
5065 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
5067 .field_info_spec = {
5068 .description = "l3.src",
5069 .field_bit_size = 32,
5070 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5071 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5073 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
5074 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
5078 .field_info_mask = {
5079 .description = "l2.smac",
5080 .field_bit_size = 48,
5081 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5082 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5084 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5085 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5087 .field_info_spec = {
5088 .description = "l2.smac",
5089 .field_bit_size = 48,
5090 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5091 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5093 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5094 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5098 .field_info_mask = {
5099 .description = "l2_cntxt_id",
5100 .field_bit_size = 10,
5101 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5102 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5107 .field_info_spec = {
5108 .description = "l2_cntxt_id",
5109 .field_bit_size = 10,
5110 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5111 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5113 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5114 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5118 .field_info_mask = {
5119 .description = "em_profile_id",
5120 .field_bit_size = 8,
5121 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5122 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5126 .field_info_spec = {
5127 .description = "em_profile_id",
5128 .field_bit_size = 8,
5129 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5130 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5132 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5133 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5136 /* class_tid: 1, , table: em.ipv6 */
5138 .field_info_mask = {
5139 .description = "spare",
5140 .field_bit_size = 3,
5141 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5142 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5144 .field_info_spec = {
5145 .description = "spare",
5146 .field_bit_size = 3,
5147 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5148 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5152 .field_info_mask = {
5153 .description = "local_cos",
5154 .field_bit_size = 3,
5155 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5156 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5158 .field_info_spec = {
5159 .description = "local_cos",
5160 .field_bit_size = 3,
5161 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5162 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5166 .field_info_mask = {
5167 .description = "l4.dst",
5168 .field_bit_size = 16,
5169 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5170 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5175 .field_info_spec = {
5176 .description = "l4.dst",
5177 .field_bit_size = 16,
5178 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5179 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5181 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5182 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5183 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5185 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
5186 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
5187 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5191 .field_info_mask = {
5192 .description = "l4.src",
5193 .field_bit_size = 16,
5194 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5195 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5200 .field_info_spec = {
5201 .description = "l4.src",
5202 .field_bit_size = 16,
5203 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5204 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5206 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5207 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5208 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5210 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
5211 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
5212 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5216 .field_info_mask = {
5217 .description = "l3.prot",
5218 .field_bit_size = 8,
5219 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5220 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5224 .field_info_spec = {
5225 .description = "l3.prot",
5226 .field_bit_size = 8,
5227 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5228 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5230 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
5231 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
5232 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5234 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
5235 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
5236 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5240 .field_info_mask = {
5241 .description = "l3.dst",
5242 .field_bit_size = 128,
5243 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5244 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5246 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5247 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5249 .field_info_spec = {
5250 .description = "l3.dst",
5251 .field_bit_size = 128,
5252 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5253 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5255 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5256 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5260 .field_info_mask = {
5261 .description = "l3.src",
5262 .field_bit_size = 128,
5263 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5264 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5266 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5267 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5269 .field_info_spec = {
5270 .description = "l3.src",
5271 .field_bit_size = 128,
5272 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5273 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5275 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5276 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5280 .field_info_mask = {
5281 .description = "l2.smac",
5282 .field_bit_size = 48,
5283 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5284 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5286 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5287 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5289 .field_info_spec = {
5290 .description = "l2.smac",
5291 .field_bit_size = 48,
5292 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5293 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5295 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5296 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5300 .field_info_mask = {
5301 .description = "l2.dmac",
5302 .field_bit_size = 48,
5303 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5304 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5306 .field_info_spec = {
5307 .description = "l2.dmac",
5308 .field_bit_size = 48,
5309 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5310 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5314 .field_info_mask = {
5315 .description = "l2_cntxt_id",
5316 .field_bit_size = 10,
5317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5318 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5323 .field_info_spec = {
5324 .description = "l2_cntxt_id",
5325 .field_bit_size = 10,
5326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5327 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5329 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5330 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5334 .field_info_mask = {
5335 .description = "em_profile_id",
5336 .field_bit_size = 8,
5337 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5338 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5342 .field_info_spec = {
5343 .description = "em_profile_id",
5344 .field_bit_size = 8,
5345 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5346 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5348 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5349 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5352 /* class_tid: 1, , table: eem.ipv6 */
5354 .field_info_mask = {
5355 .description = "spare",
5356 .field_bit_size = 35,
5357 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5358 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5360 .field_info_spec = {
5361 .description = "spare",
5362 .field_bit_size = 35,
5363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5364 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5368 .field_info_mask = {
5369 .description = "local_cos",
5370 .field_bit_size = 3,
5371 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5372 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5374 .field_info_spec = {
5375 .description = "local_cos",
5376 .field_bit_size = 3,
5377 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5378 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5382 .field_info_mask = {
5383 .description = "l4.dst",
5384 .field_bit_size = 16,
5385 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5386 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5391 .field_info_spec = {
5392 .description = "l4.dst",
5393 .field_bit_size = 16,
5394 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5395 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5397 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5398 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5399 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5401 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
5402 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
5403 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5407 .field_info_mask = {
5408 .description = "l4.src",
5409 .field_bit_size = 16,
5410 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5411 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5416 .field_info_spec = {
5417 .description = "l4.src",
5418 .field_bit_size = 16,
5419 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5420 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5422 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5423 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5424 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5426 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
5427 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
5428 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5432 .field_info_mask = {
5433 .description = "l3.prot",
5434 .field_bit_size = 8,
5435 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5436 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5440 .field_info_spec = {
5441 .description = "l3.prot",
5442 .field_bit_size = 8,
5443 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5444 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5446 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
5447 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
5448 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5450 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
5451 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
5452 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5456 .field_info_mask = {
5457 .description = "l3.dst",
5458 .field_bit_size = 128,
5459 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5460 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5462 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5463 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5465 .field_info_spec = {
5466 .description = "l3.dst",
5467 .field_bit_size = 128,
5468 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5469 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5471 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5472 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5476 .field_info_mask = {
5477 .description = "l3.src",
5478 .field_bit_size = 128,
5479 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5480 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5482 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5483 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5485 .field_info_spec = {
5486 .description = "l3.src",
5487 .field_bit_size = 128,
5488 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5489 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5491 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5492 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5496 .field_info_mask = {
5497 .description = "l2.smac",
5498 .field_bit_size = 48,
5499 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5500 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5502 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5503 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5505 .field_info_spec = {
5506 .description = "l2.smac",
5507 .field_bit_size = 48,
5508 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5509 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5511 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5512 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5516 .field_info_mask = {
5517 .description = "l2.dmac",
5518 .field_bit_size = 48,
5519 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5520 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5522 .field_info_spec = {
5523 .description = "l2.dmac",
5524 .field_bit_size = 48,
5525 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5526 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5530 .field_info_mask = {
5531 .description = "l2_cntxt_id",
5532 .field_bit_size = 10,
5533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5534 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5539 .field_info_spec = {
5540 .description = "l2_cntxt_id",
5541 .field_bit_size = 10,
5542 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5543 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5545 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5546 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5550 .field_info_mask = {
5551 .description = "em_profile_id",
5552 .field_bit_size = 8,
5553 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5554 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5558 .field_info_spec = {
5559 .description = "em_profile_id",
5560 .field_bit_size = 8,
5561 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5562 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5564 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5565 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5568 /* class_tid: 1, , table: em.vxlan */
5570 .field_info_mask = {
5571 .description = "spare",
5572 .field_bit_size = 3,
5573 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5574 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5576 .field_info_spec = {
5577 .description = "spare",
5578 .field_bit_size = 3,
5579 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5580 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5584 .field_info_mask = {
5585 .description = "local_cos",
5586 .field_bit_size = 3,
5587 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5588 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5590 .field_info_spec = {
5591 .description = "local_cos",
5592 .field_bit_size = 3,
5593 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5594 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5598 .field_info_mask = {
5599 .description = "tl4.src",
5600 .field_bit_size = 16,
5601 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5602 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5604 .field_info_spec = {
5605 .description = "tl4.src",
5606 .field_bit_size = 16,
5607 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5608 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5612 .field_info_mask = {
5613 .description = "tl4.dst",
5614 .field_bit_size = 16,
5615 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5616 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5621 .field_info_spec = {
5622 .description = "tl4.dst",
5623 .field_bit_size = 16,
5624 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5625 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5632 .field_info_mask = {
5633 .description = "tl3.prot",
5634 .field_bit_size = 8,
5635 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5636 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5640 .field_info_spec = {
5641 .description = "tl3.prot",
5642 .field_bit_size = 8,
5643 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5644 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5650 .field_info_mask = {
5651 .description = "tl3.dst",
5652 .field_bit_size = 32,
5653 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5654 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5656 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5657 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5659 .field_info_spec = {
5660 .description = "tl3.dst",
5661 .field_bit_size = 32,
5662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5663 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5665 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5666 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5670 .field_info_mask = {
5671 .description = "tl3.src",
5672 .field_bit_size = 32,
5673 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5674 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5676 .field_info_spec = {
5677 .description = "tl3.src",
5678 .field_bit_size = 32,
5679 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5680 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5684 .field_info_mask = {
5685 .description = "tl2.src",
5686 .field_bit_size = 48,
5687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5688 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5690 .field_info_spec = {
5691 .description = "tl2.src",
5692 .field_bit_size = 48,
5693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5694 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5698 .field_info_mask = {
5699 .description = "tun_id",
5700 .field_bit_size = 24,
5701 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5702 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5704 .field_info_spec = {
5705 .description = "tun_id",
5706 .field_bit_size = 24,
5707 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5708 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5712 .field_info_mask = {
5713 .description = "l2_cntxt_id",
5714 .field_bit_size = 10,
5715 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5716 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5721 .field_info_spec = {
5722 .description = "l2_cntxt_id",
5723 .field_bit_size = 10,
5724 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5725 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5727 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5728 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5732 .field_info_mask = {
5733 .description = "em_profile_id",
5734 .field_bit_size = 8,
5735 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5736 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5740 .field_info_spec = {
5741 .description = "em_profile_id",
5742 .field_bit_size = 8,
5743 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5744 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5746 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5747 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5750 /* class_tid: 1, , table: eem.vxlan */
5752 .field_info_mask = {
5753 .description = "spare",
5754 .field_bit_size = 251,
5755 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5756 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5758 .field_info_spec = {
5759 .description = "spare",
5760 .field_bit_size = 251,
5761 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5762 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5766 .field_info_mask = {
5767 .description = "local_cos",
5768 .field_bit_size = 3,
5769 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5770 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5772 .field_info_spec = {
5773 .description = "local_cos",
5774 .field_bit_size = 3,
5775 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5776 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5780 .field_info_mask = {
5781 .description = "tl4.dst",
5782 .field_bit_size = 16,
5783 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5784 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5789 .field_info_spec = {
5790 .description = "tl4.dst",
5791 .field_bit_size = 16,
5792 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5793 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5800 .field_info_mask = {
5801 .description = "tl4.src",
5802 .field_bit_size = 16,
5803 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5804 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5806 .field_info_spec = {
5807 .description = "tl4.src",
5808 .field_bit_size = 16,
5809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5810 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5814 .field_info_mask = {
5815 .description = "tl3.prot",
5816 .field_bit_size = 8,
5817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5818 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5822 .field_info_spec = {
5823 .description = "tl3.prot",
5824 .field_bit_size = 8,
5825 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5826 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5832 .field_info_mask = {
5833 .description = "tl3.dst",
5834 .field_bit_size = 32,
5835 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5836 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5838 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5839 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5841 .field_info_spec = {
5842 .description = "tl3.dst",
5843 .field_bit_size = 32,
5844 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5845 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5847 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5848 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5852 .field_info_mask = {
5853 .description = "tl3.src",
5854 .field_bit_size = 32,
5855 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5856 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5858 .field_info_spec = {
5859 .description = "tl3.src",
5860 .field_bit_size = 32,
5861 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5862 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5866 .field_info_mask = {
5867 .description = "tl2.src",
5868 .field_bit_size = 48,
5869 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5870 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5872 .field_info_spec = {
5873 .description = "tl2.src",
5874 .field_bit_size = 48,
5875 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5876 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5880 .field_info_mask = {
5881 .description = "tun_id",
5882 .field_bit_size = 24,
5883 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5884 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5886 .field_info_spec = {
5887 .description = "tun_id",
5888 .field_bit_size = 24,
5889 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5890 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5894 .field_info_mask = {
5895 .description = "l2_cntxt_id",
5896 .field_bit_size = 10,
5897 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5898 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5903 .field_info_spec = {
5904 .description = "l2_cntxt_id",
5905 .field_bit_size = 10,
5906 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5907 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5909 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5910 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5914 .field_info_mask = {
5915 .description = "em_profile_id",
5916 .field_bit_size = 8,
5917 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5918 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5922 .field_info_spec = {
5923 .description = "em_profile_id",
5924 .field_bit_size = 8,
5925 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5926 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5928 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5929 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5932 /* class_tid: 2, , table: tunnel_cache.rd */
5934 .field_info_mask = {
5935 .description = "svif",
5936 .field_bit_size = 8,
5937 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5938 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5940 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5941 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5943 .field_info_spec = {
5944 .description = "svif",
5945 .field_bit_size = 8,
5946 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5947 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5949 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5950 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5954 .field_info_mask = {
5955 .description = "tunnel_id",
5956 .field_bit_size = 8,
5957 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5958 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5962 .field_info_spec = {
5963 .description = "tunnel_id",
5964 .field_bit_size = 8,
5965 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5966 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5968 (BNXT_ULP_CF_IDX_TUNNEL_ID >> 8) & 0xff,
5969 BNXT_ULP_CF_IDX_TUNNEL_ID & 0xff}
5972 /* class_tid: 2, , table: l2_cntxt_tcam.1 */
5974 .field_info_mask = {
5975 .description = "l2_ivlan_vid",
5976 .field_bit_size = 12,
5977 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5978 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5980 .field_info_spec = {
5981 .description = "l2_ivlan_vid",
5982 .field_bit_size = 12,
5983 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5984 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5988 .field_info_mask = {
5989 .description = "l2_ovlan_vid",
5990 .field_bit_size = 12,
5991 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5992 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5994 .field_info_spec = {
5995 .description = "l2_ovlan_vid",
5996 .field_bit_size = 12,
5997 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5998 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6002 .field_info_mask = {
6003 .description = "mac0_addr",
6004 .field_bit_size = 48,
6005 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6006 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6008 .field_info_spec = {
6009 .description = "mac0_addr",
6010 .field_bit_size = 48,
6011 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6012 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6016 .field_info_mask = {
6017 .description = "svif",
6018 .field_bit_size = 8,
6019 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6020 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6022 .field_info_spec = {
6023 .description = "svif",
6024 .field_bit_size = 8,
6025 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6026 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6030 .field_info_mask = {
6031 .description = "sparif",
6032 .field_bit_size = 4,
6033 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6034 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6036 .field_info_spec = {
6037 .description = "sparif",
6038 .field_bit_size = 4,
6039 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6040 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6044 .field_info_mask = {
6045 .description = "tl2_ivlan_vid",
6046 .field_bit_size = 12,
6047 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6048 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6050 .field_info_spec = {
6051 .description = "tl2_ivlan_vid",
6052 .field_bit_size = 12,
6053 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6054 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6058 .field_info_mask = {
6059 .description = "tl2_ovlan_vid",
6060 .field_bit_size = 12,
6061 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6062 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6064 .field_info_spec = {
6065 .description = "tl2_ovlan_vid",
6066 .field_bit_size = 12,
6067 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6068 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6072 .field_info_mask = {
6073 .description = "mac1_addr",
6074 .field_bit_size = 48,
6075 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6076 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6078 .field_info_spec = {
6079 .description = "mac1_addr",
6080 .field_bit_size = 48,
6081 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6082 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6086 .field_info_mask = {
6087 .description = "l2_num_vtags",
6088 .field_bit_size = 2,
6089 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6090 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6092 .field_info_spec = {
6093 .description = "l2_num_vtags",
6094 .field_bit_size = 2,
6095 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6096 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6100 .field_info_mask = {
6101 .description = "tl2_num_vtags",
6102 .field_bit_size = 2,
6103 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6104 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6106 .field_info_spec = {
6107 .description = "tl2_num_vtags",
6108 .field_bit_size = 2,
6109 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6110 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6114 .field_info_mask = {
6115 .description = "tun_hdr_type",
6116 .field_bit_size = 4,
6117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6118 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6120 .field_info_spec = {
6121 .description = "tun_hdr_type",
6122 .field_bit_size = 4,
6123 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6124 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6128 .field_info_mask = {
6129 .description = "key_type",
6130 .field_bit_size = 2,
6131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6132 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6134 .field_info_spec = {
6135 .description = "key_type",
6136 .field_bit_size = 2,
6137 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6138 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6142 .field_info_mask = {
6143 .description = "valid",
6144 .field_bit_size = 1,
6145 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6146 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6150 .field_info_spec = {
6151 .description = "valid",
6152 .field_bit_size = 1,
6153 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6154 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6159 /* class_tid: 2, , table: tunnel_cache.wr */
6161 .field_info_mask = {
6162 .description = "svif",
6163 .field_bit_size = 8,
6164 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6165 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6167 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6168 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6170 .field_info_spec = {
6171 .description = "svif",
6172 .field_bit_size = 8,
6173 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6174 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6176 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6177 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6181 .field_info_mask = {
6182 .description = "tunnel_id",
6183 .field_bit_size = 8,
6184 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6185 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6189 .field_info_spec = {
6190 .description = "tunnel_id",
6191 .field_bit_size = 8,
6192 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6193 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6195 (BNXT_ULP_CF_IDX_TUNNEL_ID >> 8) & 0xff,
6196 BNXT_ULP_CF_IDX_TUNNEL_ID & 0xff}
6199 /* class_tid: 2, , table: mac_addr_cache.rd */
6201 .field_info_mask = {
6202 .description = "svif",
6203 .field_bit_size = 8,
6204 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6205 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6207 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6208 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6210 .field_info_spec = {
6211 .description = "svif",
6212 .field_bit_size = 8,
6213 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6214 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6216 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6217 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6221 .field_info_mask = {
6222 .description = "tun_hdr",
6223 .field_bit_size = 4,
6224 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6225 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6229 .field_info_spec = {
6230 .description = "tun_hdr",
6231 .field_bit_size = 4,
6232 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6233 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6237 .field_info_mask = {
6238 .description = "one_tag",
6239 .field_bit_size = 1,
6240 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6241 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6243 .field_info_spec = {
6244 .description = "one_tag",
6245 .field_bit_size = 1,
6246 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6247 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6251 .field_info_mask = {
6252 .description = "vid",
6253 .field_bit_size = 12,
6254 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6255 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6257 .field_info_spec = {
6258 .description = "vid",
6259 .field_bit_size = 12,
6260 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6261 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6265 .field_info_mask = {
6266 .description = "mac_addr",
6267 .field_bit_size = 48,
6268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6269 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6271 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6272 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
6274 .field_info_spec = {
6275 .description = "mac_addr",
6276 .field_bit_size = 48,
6277 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6278 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6280 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6281 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
6284 /* class_tid: 2, , table: l2_cntxt_tcam.0 */
6286 .field_info_mask = {
6287 .description = "l2_ivlan_vid",
6288 .field_bit_size = 12,
6289 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6290 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6292 .field_info_spec = {
6293 .description = "l2_ivlan_vid",
6294 .field_bit_size = 12,
6295 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6296 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6300 .field_info_mask = {
6301 .description = "l2_ovlan_vid",
6302 .field_bit_size = 12,
6303 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6304 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6306 .field_info_spec = {
6307 .description = "l2_ovlan_vid",
6308 .field_bit_size = 12,
6309 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6310 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6314 .field_info_mask = {
6315 .description = "mac0_addr",
6316 .field_bit_size = 48,
6317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6318 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6320 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6321 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
6323 .field_info_spec = {
6324 .description = "mac0_addr",
6325 .field_bit_size = 48,
6326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6327 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6329 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6330 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
6334 .field_info_mask = {
6335 .description = "svif",
6336 .field_bit_size = 8,
6337 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6338 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6340 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6341 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6343 .field_info_spec = {
6344 .description = "svif",
6345 .field_bit_size = 8,
6346 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6347 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6349 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6350 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6354 .field_info_mask = {
6355 .description = "sparif",
6356 .field_bit_size = 4,
6357 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6358 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6360 .field_info_spec = {
6361 .description = "sparif",
6362 .field_bit_size = 4,
6363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6364 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6368 .field_info_mask = {
6369 .description = "tl2_ivlan_vid",
6370 .field_bit_size = 12,
6371 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6372 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6374 .field_info_spec = {
6375 .description = "tl2_ivlan_vid",
6376 .field_bit_size = 12,
6377 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6378 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6382 .field_info_mask = {
6383 .description = "tl2_ovlan_vid",
6384 .field_bit_size = 12,
6385 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6386 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6388 .field_info_spec = {
6389 .description = "tl2_ovlan_vid",
6390 .field_bit_size = 12,
6391 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6392 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6396 .field_info_mask = {
6397 .description = "mac1_addr",
6398 .field_bit_size = 48,
6399 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6400 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6402 .field_info_spec = {
6403 .description = "mac1_addr",
6404 .field_bit_size = 48,
6405 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6406 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6410 .field_info_mask = {
6411 .description = "l2_num_vtags",
6412 .field_bit_size = 2,
6413 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6414 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6416 .field_info_spec = {
6417 .description = "l2_num_vtags",
6418 .field_bit_size = 2,
6419 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6420 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6424 .field_info_mask = {
6425 .description = "tl2_num_vtags",
6426 .field_bit_size = 2,
6427 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6428 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6430 .field_info_spec = {
6431 .description = "tl2_num_vtags",
6432 .field_bit_size = 2,
6433 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6434 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6438 .field_info_mask = {
6439 .description = "tun_hdr_type",
6440 .field_bit_size = 4,
6441 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6442 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6446 .field_info_spec = {
6447 .description = "tun_hdr_type",
6448 .field_bit_size = 4,
6449 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6450 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6454 .field_info_mask = {
6455 .description = "key_type",
6456 .field_bit_size = 2,
6457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6458 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6460 .field_info_spec = {
6461 .description = "key_type",
6462 .field_bit_size = 2,
6463 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6464 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6468 .field_info_mask = {
6469 .description = "valid",
6470 .field_bit_size = 1,
6471 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6472 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6476 .field_info_spec = {
6477 .description = "valid",
6478 .field_bit_size = 1,
6479 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6480 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6485 /* class_tid: 2, , table: mac_addr_cache.wr */
6487 .field_info_mask = {
6488 .description = "svif",
6489 .field_bit_size = 8,
6490 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6491 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6493 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6494 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6496 .field_info_spec = {
6497 .description = "svif",
6498 .field_bit_size = 8,
6499 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6500 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6502 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6503 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6507 .field_info_mask = {
6508 .description = "tun_hdr",
6509 .field_bit_size = 4,
6510 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6511 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6515 .field_info_spec = {
6516 .description = "tun_hdr",
6517 .field_bit_size = 4,
6518 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6519 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6523 .field_info_mask = {
6524 .description = "one_tag",
6525 .field_bit_size = 1,
6526 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6527 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6529 .field_info_spec = {
6530 .description = "one_tag",
6531 .field_bit_size = 1,
6532 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6533 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6537 .field_info_mask = {
6538 .description = "vid",
6539 .field_bit_size = 12,
6540 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6541 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6543 .field_info_spec = {
6544 .description = "vid",
6545 .field_bit_size = 12,
6546 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6547 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6551 .field_info_mask = {
6552 .description = "mac_addr",
6553 .field_bit_size = 48,
6554 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6555 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6557 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6558 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
6560 .field_info_spec = {
6561 .description = "mac_addr",
6562 .field_bit_size = 48,
6563 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6564 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6566 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6567 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
6570 /* class_tid: 2, , table: profile_tcam_cache.f2_rd */
6572 .field_info_mask = {
6573 .description = "recycle_cnt",
6574 .field_bit_size = 2,
6575 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6576 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6580 .field_info_spec = {
6581 .description = "recycle_cnt",
6582 .field_bit_size = 2,
6583 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6584 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6588 .field_info_mask = {
6589 .description = "prof_func_id",
6590 .field_bit_size = 7,
6591 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6592 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6596 .field_info_spec = {
6597 .description = "prof_func_id",
6598 .field_bit_size = 7,
6599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6600 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
6602 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
6603 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
6607 .field_info_mask = {
6608 .description = "hdr_sig_id",
6609 .field_bit_size = 5,
6610 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6611 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6615 .field_info_spec = {
6616 .description = "hdr_sig_id",
6617 .field_bit_size = 5,
6618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6619 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6621 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
6622 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
6625 /* class_tid: 2, , table: profile_tcam.f2 */
6627 .field_info_mask = {
6628 .description = "l4_hdr_is_udp_tcp",
6629 .field_bit_size = 1,
6630 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6631 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6633 .field_info_spec = {
6634 .description = "l4_hdr_is_udp_tcp",
6635 .field_bit_size = 1,
6636 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6637 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6641 .field_info_mask = {
6642 .description = "l4_hdr_type",
6643 .field_bit_size = 4,
6644 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6645 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6647 .field_info_spec = {
6648 .description = "l4_hdr_type",
6649 .field_bit_size = 4,
6650 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6651 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6655 .field_info_mask = {
6656 .description = "l4_hdr_error",
6657 .field_bit_size = 1,
6658 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6659 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6661 .field_info_spec = {
6662 .description = "l4_hdr_error",
6663 .field_bit_size = 1,
6664 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6665 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6669 .field_info_mask = {
6670 .description = "l4_hdr_valid",
6671 .field_bit_size = 1,
6672 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6673 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6675 .field_info_spec = {
6676 .description = "l4_hdr_valid",
6677 .field_bit_size = 1,
6678 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6679 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6683 .field_info_mask = {
6684 .description = "l3_ipv6_cmp_dst",
6685 .field_bit_size = 1,
6686 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6687 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6689 .field_info_spec = {
6690 .description = "l3_ipv6_cmp_dst",
6691 .field_bit_size = 1,
6692 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6693 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6697 .field_info_mask = {
6698 .description = "l3_ipv6_cmp_src",
6699 .field_bit_size = 1,
6700 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6701 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6703 .field_info_spec = {
6704 .description = "l3_ipv6_cmp_src",
6705 .field_bit_size = 1,
6706 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6707 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6711 .field_info_mask = {
6712 .description = "l3_hdr_isIP",
6713 .field_bit_size = 1,
6714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6715 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6717 .field_info_spec = {
6718 .description = "l3_hdr_isIP",
6719 .field_bit_size = 1,
6720 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6721 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6725 .field_info_mask = {
6726 .description = "l3_hdr_type",
6727 .field_bit_size = 4,
6728 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6729 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6733 .field_info_spec = {
6734 .description = "l3_hdr_type",
6735 .field_bit_size = 4,
6736 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6737 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6739 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
6740 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
6741 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
6742 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
6743 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
6744 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
6745 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
6746 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
6747 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
6749 ULP_WP_SYM_L3_HDR_TYPE_IPV4},
6750 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
6752 ULP_WP_SYM_L3_HDR_TYPE_IPV6}
6756 .field_info_mask = {
6757 .description = "l3_hdr_error",
6758 .field_bit_size = 1,
6759 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6760 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6762 .field_info_spec = {
6763 .description = "l3_hdr_error",
6764 .field_bit_size = 1,
6765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6766 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6770 .field_info_mask = {
6771 .description = "l3_hdr_valid",
6772 .field_bit_size = 1,
6773 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6774 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6778 .field_info_spec = {
6779 .description = "l3_hdr_valid",
6780 .field_bit_size = 1,
6781 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6782 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6784 ULP_WP_SYM_L3_HDR_VALID_YES}
6788 .field_info_mask = {
6789 .description = "l2_two_vtags",
6790 .field_bit_size = 1,
6791 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6792 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6794 .field_info_spec = {
6795 .description = "l2_two_vtags",
6796 .field_bit_size = 1,
6797 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6798 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6802 .field_info_mask = {
6803 .description = "l2_vtag_present",
6804 .field_bit_size = 1,
6805 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6806 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6808 .field_info_spec = {
6809 .description = "l2_vtag_present",
6810 .field_bit_size = 1,
6811 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6812 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6816 .field_info_mask = {
6817 .description = "l2_uc_mc_bc",
6818 .field_bit_size = 2,
6819 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6820 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6822 .field_info_spec = {
6823 .description = "l2_uc_mc_bc",
6824 .field_bit_size = 2,
6825 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6826 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6830 .field_info_mask = {
6831 .description = "l2_hdr_type",
6832 .field_bit_size = 2,
6833 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6834 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6836 .field_info_spec = {
6837 .description = "l2_hdr_type",
6838 .field_bit_size = 2,
6839 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6840 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6844 .field_info_mask = {
6845 .description = "l2_hdr_error",
6846 .field_bit_size = 1,
6847 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6848 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6850 .field_info_spec = {
6851 .description = "l2_hdr_error",
6852 .field_bit_size = 1,
6853 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6854 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6858 .field_info_mask = {
6859 .description = "l2_hdr_valid",
6860 .field_bit_size = 1,
6861 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6862 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6864 .field_info_spec = {
6865 .description = "l2_hdr_valid",
6866 .field_bit_size = 1,
6867 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6868 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6872 .field_info_mask = {
6873 .description = "tun_hdr_flags",
6874 .field_bit_size = 3,
6875 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6876 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6878 .field_info_spec = {
6879 .description = "tun_hdr_flags",
6880 .field_bit_size = 3,
6881 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6882 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6886 .field_info_mask = {
6887 .description = "tun_hdr_type",
6888 .field_bit_size = 4,
6889 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6890 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6894 .field_info_spec = {
6895 .description = "tun_hdr_type",
6896 .field_bit_size = 4,
6897 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6898 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6902 .field_info_mask = {
6903 .description = "tun_hdr_err",
6904 .field_bit_size = 1,
6905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6906 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6910 .field_info_spec = {
6911 .description = "tun_hdr_err",
6912 .field_bit_size = 1,
6913 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6914 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6918 .field_info_mask = {
6919 .description = "tun_hdr_valid",
6920 .field_bit_size = 1,
6921 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6922 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6926 .field_info_spec = {
6927 .description = "tun_hdr_valid",
6928 .field_bit_size = 1,
6929 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6930 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6932 ULP_WP_SYM_TUN_HDR_VALID_YES}
6936 .field_info_mask = {
6937 .description = "tl4_hdr_is_udp_tcp",
6938 .field_bit_size = 1,
6939 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6940 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6942 .field_info_spec = {
6943 .description = "tl4_hdr_is_udp_tcp",
6944 .field_bit_size = 1,
6945 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6946 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6950 .field_info_mask = {
6951 .description = "tl4_hdr_type",
6952 .field_bit_size = 4,
6953 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6954 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6958 .field_info_spec = {
6959 .description = "tl4_hdr_type",
6960 .field_bit_size = 4,
6961 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6962 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6964 ULP_WP_SYM_TL4_HDR_TYPE_UDP}
6968 .field_info_mask = {
6969 .description = "tl4_hdr_error",
6970 .field_bit_size = 1,
6971 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6972 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6976 .field_info_spec = {
6977 .description = "tl4_hdr_error",
6978 .field_bit_size = 1,
6979 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6980 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6984 .field_info_mask = {
6985 .description = "tl4_hdr_valid",
6986 .field_bit_size = 1,
6987 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6988 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6992 .field_info_spec = {
6993 .description = "tl4_hdr_valid",
6994 .field_bit_size = 1,
6995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6996 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6998 ULP_WP_SYM_TL4_HDR_VALID_YES}
7002 .field_info_mask = {
7003 .description = "tl3_ipv6_cmp_dst",
7004 .field_bit_size = 1,
7005 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7006 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7008 .field_info_spec = {
7009 .description = "tl3_ipv6_cmp_dst",
7010 .field_bit_size = 1,
7011 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7012 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7016 .field_info_mask = {
7017 .description = "tl3_ipv6_cmp_src",
7018 .field_bit_size = 1,
7019 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7020 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7022 .field_info_spec = {
7023 .description = "tl3_ipv6_cmp_src",
7024 .field_bit_size = 1,
7025 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7026 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7030 .field_info_mask = {
7031 .description = "tl3_hdr_isIP",
7032 .field_bit_size = 1,
7033 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7034 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7036 .field_info_spec = {
7037 .description = "tl3_hdr_isIP",
7038 .field_bit_size = 1,
7039 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7040 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7044 .field_info_mask = {
7045 .description = "tl3_hdr_type",
7046 .field_bit_size = 4,
7047 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7048 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7052 .field_info_spec = {
7053 .description = "tl3_hdr_type",
7054 .field_bit_size = 4,
7055 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7056 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7060 .field_info_mask = {
7061 .description = "tl3_hdr_error",
7062 .field_bit_size = 1,
7063 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7064 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7068 .field_info_spec = {
7069 .description = "tl3_hdr_error",
7070 .field_bit_size = 1,
7071 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7072 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7076 .field_info_mask = {
7077 .description = "tl3_hdr_valid",
7078 .field_bit_size = 1,
7079 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7080 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7084 .field_info_spec = {
7085 .description = "tl3_hdr_valid",
7086 .field_bit_size = 1,
7087 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7088 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7090 ULP_WP_SYM_TL3_HDR_VALID_YES}
7094 .field_info_mask = {
7095 .description = "tl2_two_vtags",
7096 .field_bit_size = 1,
7097 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7098 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7100 .field_info_spec = {
7101 .description = "tl2_two_vtags",
7102 .field_bit_size = 1,
7103 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7104 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7108 .field_info_mask = {
7109 .description = "tl2_vtag_present",
7110 .field_bit_size = 1,
7111 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7112 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7114 .field_info_spec = {
7115 .description = "tl2_vtag_present",
7116 .field_bit_size = 1,
7117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7118 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7122 .field_info_mask = {
7123 .description = "tl2_uc_mc_bc",
7124 .field_bit_size = 2,
7125 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7126 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7130 .field_info_spec = {
7131 .description = "tl2_uc_mc_bc",
7132 .field_bit_size = 2,
7133 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7134 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7138 .field_info_mask = {
7139 .description = "tl2_hdr_type",
7140 .field_bit_size = 2,
7141 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7142 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7144 .field_info_spec = {
7145 .description = "tl2_hdr_type",
7146 .field_bit_size = 2,
7147 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7148 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7152 .field_info_mask = {
7153 .description = "tl2_hdr_valid",
7154 .field_bit_size = 1,
7155 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7156 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7160 .field_info_spec = {
7161 .description = "tl2_hdr_valid",
7162 .field_bit_size = 1,
7163 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7164 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7166 ULP_WP_SYM_TL2_HDR_VALID_YES}
7170 .field_info_mask = {
7171 .description = "hrec_next",
7172 .field_bit_size = 1,
7173 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7174 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7176 .field_info_spec = {
7177 .description = "hrec_next",
7178 .field_bit_size = 1,
7179 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7180 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7184 .field_info_mask = {
7185 .description = "reserved",
7186 .field_bit_size = 9,
7187 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7188 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7190 .field_info_spec = {
7191 .description = "reserved",
7192 .field_bit_size = 9,
7193 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7194 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7198 .field_info_mask = {
7199 .description = "prof_func_id",
7200 .field_bit_size = 7,
7201 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7202 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7206 .field_info_spec = {
7207 .description = "prof_func_id",
7208 .field_bit_size = 7,
7209 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7210 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
7212 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
7213 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
7217 .field_info_mask = {
7218 .description = "agg_error",
7219 .field_bit_size = 1,
7220 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7221 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7223 .field_info_spec = {
7224 .description = "agg_error",
7225 .field_bit_size = 1,
7226 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7227 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7231 .field_info_mask = {
7232 .description = "recycle_cnt",
7233 .field_bit_size = 2,
7234 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7235 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7237 .field_info_spec = {
7238 .description = "recycle_cnt",
7239 .field_bit_size = 2,
7240 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7241 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7245 .field_info_mask = {
7246 .description = "pkt_type_0",
7247 .field_bit_size = 2,
7248 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7249 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7251 .field_info_spec = {
7252 .description = "pkt_type_0",
7253 .field_bit_size = 2,
7254 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7255 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7259 .field_info_mask = {
7260 .description = "pkt_type_1",
7261 .field_bit_size = 2,
7262 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7263 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7265 .field_info_spec = {
7266 .description = "pkt_type_1",
7267 .field_bit_size = 2,
7268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7269 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7273 .field_info_mask = {
7274 .description = "valid",
7275 .field_bit_size = 1,
7276 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7277 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7281 .field_info_spec = {
7282 .description = "valid",
7283 .field_bit_size = 1,
7284 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7285 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7290 /* class_tid: 2, , table: profile_tcam_cache.f2_wr */
7292 .field_info_mask = {
7293 .description = "recycle_cnt",
7294 .field_bit_size = 2,
7295 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7296 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7300 .field_info_spec = {
7301 .description = "recycle_cnt",
7302 .field_bit_size = 2,
7303 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7304 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7308 .field_info_mask = {
7309 .description = "prof_func_id",
7310 .field_bit_size = 7,
7311 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7312 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7316 .field_info_spec = {
7317 .description = "prof_func_id",
7318 .field_bit_size = 7,
7319 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7320 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
7322 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
7323 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
7327 .field_info_mask = {
7328 .description = "hdr_sig_id",
7329 .field_bit_size = 5,
7330 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7331 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7335 .field_info_spec = {
7336 .description = "hdr_sig_id",
7337 .field_bit_size = 5,
7338 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7339 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7341 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
7342 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
7345 /* class_tid: 2, , table: em.tun */
7347 .field_info_mask = {
7348 .description = "spare",
7349 .field_bit_size = 3,
7350 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7351 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7353 .field_info_spec = {
7354 .description = "spare",
7355 .field_bit_size = 3,
7356 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7357 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7361 .field_info_mask = {
7362 .description = "l2.ivlan_vid",
7363 .field_bit_size = 12,
7364 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7365 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7367 .field_info_spec = {
7368 .description = "l2.ivlan_vid",
7369 .field_bit_size = 12,
7370 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7371 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7375 .field_info_mask = {
7376 .description = "l2.dmac",
7377 .field_bit_size = 48,
7378 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7379 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7381 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
7382 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
7384 .field_info_spec = {
7385 .description = "l2.dmac",
7386 .field_bit_size = 48,
7387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7388 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7390 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
7391 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
7395 .field_info_mask = {
7396 .description = "tun_id",
7397 .field_bit_size = 24,
7398 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7399 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7401 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
7402 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}
7404 .field_info_spec = {
7405 .description = "tun_id",
7406 .field_bit_size = 24,
7407 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7408 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7410 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
7411 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}
7415 .field_info_mask = {
7416 .description = "tun_flags",
7417 .field_bit_size = 3,
7418 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7419 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7421 .field_info_spec = {
7422 .description = "tun_flags",
7423 .field_bit_size = 3,
7424 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7425 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7429 .field_info_mask = {
7430 .description = "tun_type",
7431 .field_bit_size = 4,
7432 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7433 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7437 .field_info_spec = {
7438 .description = "tun_type",
7439 .field_bit_size = 4,
7440 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7441 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7445 .field_info_mask = {
7446 .description = "l2_cntxt_id",
7447 .field_bit_size = 10,
7448 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7449 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7454 .field_info_spec = {
7455 .description = "l2_cntxt_id",
7456 .field_bit_size = 10,
7457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7458 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7460 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
7461 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
7465 .field_info_mask = {
7466 .description = "em_profile_id",
7467 .field_bit_size = 8,
7468 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7469 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7473 .field_info_spec = {
7474 .description = "em_profile_id",
7475 .field_bit_size = 8,
7476 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7477 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7479 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
7480 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
7483 /* class_tid: 2, , table: eem.tun */
7485 .field_info_mask = {
7486 .description = "spare",
7487 .field_bit_size = 339,
7488 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7489 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7491 .field_info_spec = {
7492 .description = "spare",
7493 .field_bit_size = 339,
7494 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7495 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7499 .field_info_mask = {
7500 .description = "l2.ivlan_vid",
7501 .field_bit_size = 12,
7502 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7503 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7505 .field_info_spec = {
7506 .description = "l2.ivlan_vid",
7507 .field_bit_size = 12,
7508 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7509 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7513 .field_info_mask = {
7514 .description = "l2.dmac",
7515 .field_bit_size = 48,
7516 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7517 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7519 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
7520 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
7522 .field_info_spec = {
7523 .description = "l2.dmac",
7524 .field_bit_size = 48,
7525 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7526 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7528 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
7529 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
7533 .field_info_mask = {
7534 .description = "tun_id",
7535 .field_bit_size = 24,
7536 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7537 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7539 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
7540 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}
7542 .field_info_spec = {
7543 .description = "tun_id",
7544 .field_bit_size = 24,
7545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7546 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7548 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
7549 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}
7553 .field_info_mask = {
7554 .description = "tun_flags",
7555 .field_bit_size = 3,
7556 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7557 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7559 .field_info_spec = {
7560 .description = "tun_flags",
7561 .field_bit_size = 3,
7562 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7563 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7567 .field_info_mask = {
7568 .description = "tun_type",
7569 .field_bit_size = 4,
7570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7571 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7575 .field_info_spec = {
7576 .description = "tun_type",
7577 .field_bit_size = 4,
7578 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7579 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7583 .field_info_mask = {
7584 .description = "l2_cntxt_id",
7585 .field_bit_size = 10,
7586 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7587 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7592 .field_info_spec = {
7593 .description = "l2_cntxt_id",
7594 .field_bit_size = 10,
7595 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7596 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7598 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
7599 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
7603 .field_info_mask = {
7604 .description = "em_profile_id",
7605 .field_bit_size = 8,
7606 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7607 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7611 .field_info_spec = {
7612 .description = "em_profile_id",
7613 .field_bit_size = 8,
7614 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7615 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7617 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
7618 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
7621 /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
7623 .field_info_mask = {
7624 .description = "svif",
7625 .field_bit_size = 8,
7626 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7627 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7629 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
7630 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
7632 .field_info_spec = {
7633 .description = "svif",
7634 .field_bit_size = 8,
7635 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7636 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7638 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
7639 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
7642 /* class_tid: 3, , table: mac_addr_cache.rd */
7644 .field_info_mask = {
7645 .description = "svif",
7646 .field_bit_size = 8,
7647 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7648 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7650 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
7651 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
7653 .field_info_spec = {
7654 .description = "svif",
7655 .field_bit_size = 8,
7656 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7657 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7659 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
7660 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
7664 .field_info_mask = {
7665 .description = "tun_hdr",
7666 .field_bit_size = 4,
7667 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7668 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7670 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
7672 .field_info_spec = {
7673 .description = "tun_hdr",
7674 .field_bit_size = 4,
7675 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7676 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7678 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
7682 .field_info_mask = {
7683 .description = "one_tag",
7684 .field_bit_size = 1,
7685 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7686 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7690 .field_info_spec = {
7691 .description = "one_tag",
7692 .field_bit_size = 1,
7693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7694 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7696 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
7697 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
7701 .field_info_mask = {
7702 .description = "vid",
7703 .field_bit_size = 12,
7704 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7705 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
7707 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
7708 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
7709 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
7710 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
7711 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
7712 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
7713 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
7714 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
7715 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7717 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
7718 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
7719 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7721 .field_info_spec = {
7722 .description = "vid",
7723 .field_bit_size = 12,
7724 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7725 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
7727 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
7728 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
7729 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
7730 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
7731 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
7732 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
7733 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
7734 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
7735 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7737 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
7738 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
7739 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7743 .field_info_mask = {
7744 .description = "mac_addr",
7745 .field_bit_size = 48,
7746 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7747 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7749 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7750 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
7752 .field_info_spec = {
7753 .description = "mac_addr",
7754 .field_bit_size = 48,
7755 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7756 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7758 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7759 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
7762 /* class_tid: 3, , table: l2_cntxt_tcam.0 */
7764 .field_info_mask = {
7765 .description = "l2_ivlan_vid",
7766 .field_bit_size = 12,
7767 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7768 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
7770 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
7771 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
7772 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
7773 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
7774 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
7775 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
7776 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
7777 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
7778 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7780 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
7781 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
7782 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7784 .field_info_spec = {
7785 .description = "l2_ivlan_vid",
7786 .field_bit_size = 12,
7787 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7788 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
7790 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
7791 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
7792 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
7793 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
7794 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
7795 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
7796 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
7797 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
7798 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7800 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
7801 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
7802 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7806 .field_info_mask = {
7807 .description = "l2_ovlan_vid",
7808 .field_bit_size = 12,
7809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7810 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7812 .field_info_spec = {
7813 .description = "l2_ovlan_vid",
7814 .field_bit_size = 12,
7815 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7816 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7820 .field_info_mask = {
7821 .description = "mac0_addr",
7822 .field_bit_size = 48,
7823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7824 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7826 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7827 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
7829 .field_info_spec = {
7830 .description = "mac0_addr",
7831 .field_bit_size = 48,
7832 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7833 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7835 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7836 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
7840 .field_info_mask = {
7841 .description = "svif",
7842 .field_bit_size = 8,
7843 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7844 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7846 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
7847 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
7849 .field_info_spec = {
7850 .description = "svif",
7851 .field_bit_size = 8,
7852 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7853 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7855 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
7856 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
7860 .field_info_mask = {
7861 .description = "sparif",
7862 .field_bit_size = 4,
7863 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7864 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7866 .field_info_spec = {
7867 .description = "sparif",
7868 .field_bit_size = 4,
7869 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7870 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7874 .field_info_mask = {
7875 .description = "tl2_ivlan_vid",
7876 .field_bit_size = 12,
7877 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7878 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7880 .field_info_spec = {
7881 .description = "tl2_ivlan_vid",
7882 .field_bit_size = 12,
7883 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7884 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7888 .field_info_mask = {
7889 .description = "tl2_ovlan_vid",
7890 .field_bit_size = 12,
7891 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7892 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7894 .field_info_spec = {
7895 .description = "tl2_ovlan_vid",
7896 .field_bit_size = 12,
7897 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7898 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7902 .field_info_mask = {
7903 .description = "mac1_addr",
7904 .field_bit_size = 48,
7905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7906 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7908 .field_info_spec = {
7909 .description = "mac1_addr",
7910 .field_bit_size = 48,
7911 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7912 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7916 .field_info_mask = {
7917 .description = "l2_num_vtags",
7918 .field_bit_size = 2,
7919 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7920 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7924 .field_info_spec = {
7925 .description = "l2_num_vtags",
7926 .field_bit_size = 2,
7927 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7928 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7930 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
7931 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff}
7935 .field_info_mask = {
7936 .description = "tl2_num_vtags",
7937 .field_bit_size = 2,
7938 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7939 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7941 .field_info_spec = {
7942 .description = "tl2_num_vtags",
7943 .field_bit_size = 2,
7944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7945 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7949 .field_info_mask = {
7950 .description = "tun_hdr_type",
7951 .field_bit_size = 4,
7952 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7953 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7955 .field_info_spec = {
7956 .description = "tun_hdr_type",
7957 .field_bit_size = 4,
7958 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7959 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7963 .field_info_mask = {
7964 .description = "key_type",
7965 .field_bit_size = 2,
7966 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7967 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7969 .field_info_spec = {
7970 .description = "key_type",
7971 .field_bit_size = 2,
7972 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7973 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7977 .field_info_mask = {
7978 .description = "valid",
7979 .field_bit_size = 1,
7980 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7981 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7985 .field_info_spec = {
7986 .description = "valid",
7987 .field_bit_size = 1,
7988 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7989 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7994 /* class_tid: 3, , table: mac_addr_cache.wr */
7996 .field_info_mask = {
7997 .description = "svif",
7998 .field_bit_size = 8,
7999 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8000 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8002 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
8003 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
8005 .field_info_spec = {
8006 .description = "svif",
8007 .field_bit_size = 8,
8008 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8009 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8011 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
8012 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
8016 .field_info_mask = {
8017 .description = "tun_hdr",
8018 .field_bit_size = 4,
8019 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8020 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8022 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
8024 .field_info_spec = {
8025 .description = "tun_hdr",
8026 .field_bit_size = 4,
8027 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8028 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8030 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
8034 .field_info_mask = {
8035 .description = "one_tag",
8036 .field_bit_size = 1,
8037 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8038 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8042 .field_info_spec = {
8043 .description = "one_tag",
8044 .field_bit_size = 1,
8045 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8046 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8048 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
8049 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
8053 .field_info_mask = {
8054 .description = "vid",
8055 .field_bit_size = 12,
8056 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8057 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
8059 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
8060 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
8061 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
8062 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
8063 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
8064 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
8065 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
8066 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
8067 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8069 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
8070 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
8071 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8073 .field_info_spec = {
8074 .description = "vid",
8075 .field_bit_size = 12,
8076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8077 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
8079 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
8080 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
8081 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
8082 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
8083 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
8084 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
8085 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
8086 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
8087 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8089 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
8090 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
8091 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8095 .field_info_mask = {
8096 .description = "mac_addr",
8097 .field_bit_size = 48,
8098 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8099 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8101 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
8102 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
8104 .field_info_spec = {
8105 .description = "mac_addr",
8106 .field_bit_size = 48,
8107 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8108 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8110 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
8111 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
8114 /* class_tid: 3, , table: profile_tcam_cache.rd */
8116 .field_info_mask = {
8117 .description = "recycle_cnt",
8118 .field_bit_size = 2,
8119 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8120 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8124 .field_info_spec = {
8125 .description = "recycle_cnt",
8126 .field_bit_size = 2,
8127 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8128 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8132 .field_info_mask = {
8133 .description = "prof_func_id",
8134 .field_bit_size = 7,
8135 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8136 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8140 .field_info_spec = {
8141 .description = "prof_func_id",
8142 .field_bit_size = 7,
8143 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8144 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8146 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
8147 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
8148 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
8150 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
8151 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
8152 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
8154 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
8155 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
8159 .field_info_mask = {
8160 .description = "hdr_sig_id",
8161 .field_bit_size = 5,
8162 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8163 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8167 .field_info_spec = {
8168 .description = "hdr_sig_id",
8169 .field_bit_size = 5,
8170 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8171 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8173 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
8174 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
8177 /* class_tid: 3, , table: profile_tcam.ipv4 */
8179 .field_info_mask = {
8180 .description = "l4_hdr_is_udp_tcp",
8181 .field_bit_size = 1,
8182 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8183 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8185 .field_info_spec = {
8186 .description = "l4_hdr_is_udp_tcp",
8187 .field_bit_size = 1,
8188 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8189 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8193 .field_info_mask = {
8194 .description = "l4_hdr_type",
8195 .field_bit_size = 4,
8196 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8197 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8199 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8200 BNXT_ULP_CF_IDX_O_L4 & 0xff},
8201 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
8202 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8204 .field_info_spec = {
8205 .description = "l4_hdr_type",
8206 .field_bit_size = 4,
8207 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8208 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
8210 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
8211 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
8212 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
8213 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
8214 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
8215 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
8216 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
8217 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
8218 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
8220 ULP_WP_SYM_L4_HDR_TYPE_TCP},
8221 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
8223 ULP_WP_SYM_L4_HDR_TYPE_UDP}
8227 .field_info_mask = {
8228 .description = "l4_hdr_error",
8229 .field_bit_size = 1,
8230 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8231 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8233 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8234 BNXT_ULP_CF_IDX_O_L4 & 0xff}
8236 .field_info_spec = {
8237 .description = "l4_hdr_error",
8238 .field_bit_size = 1,
8239 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8240 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8244 .field_info_mask = {
8245 .description = "l4_hdr_valid",
8246 .field_bit_size = 1,
8247 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8248 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8250 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8251 BNXT_ULP_CF_IDX_O_L4 & 0xff}
8253 .field_info_spec = {
8254 .description = "l4_hdr_valid",
8255 .field_bit_size = 1,
8256 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8257 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8259 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8260 BNXT_ULP_CF_IDX_O_L4 & 0xff}
8264 .field_info_mask = {
8265 .description = "l3_ipv6_cmp_dst",
8266 .field_bit_size = 1,
8267 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8268 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8270 .field_info_spec = {
8271 .description = "l3_ipv6_cmp_dst",
8272 .field_bit_size = 1,
8273 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8274 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8278 .field_info_mask = {
8279 .description = "l3_ipv6_cmp_src",
8280 .field_bit_size = 1,
8281 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8282 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8284 .field_info_spec = {
8285 .description = "l3_ipv6_cmp_src",
8286 .field_bit_size = 1,
8287 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8288 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8292 .field_info_mask = {
8293 .description = "l3_hdr_isIP",
8294 .field_bit_size = 1,
8295 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8296 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8298 .field_info_spec = {
8299 .description = "l3_hdr_isIP",
8300 .field_bit_size = 1,
8301 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8302 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8306 .field_info_mask = {
8307 .description = "l3_hdr_type",
8308 .field_bit_size = 4,
8309 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8310 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8314 .field_info_spec = {
8315 .description = "l3_hdr_type",
8316 .field_bit_size = 4,
8317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8318 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8322 .field_info_mask = {
8323 .description = "l3_hdr_error",
8324 .field_bit_size = 1,
8325 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8326 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8330 .field_info_spec = {
8331 .description = "l3_hdr_error",
8332 .field_bit_size = 1,
8333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8334 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8338 .field_info_mask = {
8339 .description = "l3_hdr_valid",
8340 .field_bit_size = 1,
8341 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8342 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8346 .field_info_spec = {
8347 .description = "l3_hdr_valid",
8348 .field_bit_size = 1,
8349 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8350 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8352 ULP_WP_SYM_L3_HDR_VALID_YES}
8356 .field_info_mask = {
8357 .description = "l2_two_vtags",
8358 .field_bit_size = 1,
8359 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8360 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8364 .field_info_spec = {
8365 .description = "l2_two_vtags",
8366 .field_bit_size = 1,
8367 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8368 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8372 .field_info_mask = {
8373 .description = "l2_vtag_present",
8374 .field_bit_size = 1,
8375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8376 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8380 .field_info_spec = {
8381 .description = "l2_vtag_present",
8382 .field_bit_size = 1,
8383 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8384 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8386 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
8387 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
8391 .field_info_mask = {
8392 .description = "l2_uc_mc_bc",
8393 .field_bit_size = 2,
8394 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8395 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8399 .field_info_spec = {
8400 .description = "l2_uc_mc_bc",
8401 .field_bit_size = 2,
8402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8403 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8407 .field_info_mask = {
8408 .description = "l2_hdr_type",
8409 .field_bit_size = 2,
8410 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8411 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8415 .field_info_spec = {
8416 .description = "l2_hdr_type",
8417 .field_bit_size = 2,
8418 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8419 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8423 .field_info_mask = {
8424 .description = "l2_hdr_error",
8425 .field_bit_size = 1,
8426 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8427 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8431 .field_info_spec = {
8432 .description = "l2_hdr_error",
8433 .field_bit_size = 1,
8434 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8435 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8439 .field_info_mask = {
8440 .description = "l2_hdr_valid",
8441 .field_bit_size = 1,
8442 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8443 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8447 .field_info_spec = {
8448 .description = "l2_hdr_valid",
8449 .field_bit_size = 1,
8450 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8451 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8453 ULP_WP_SYM_L2_HDR_VALID_YES}
8457 .field_info_mask = {
8458 .description = "tun_hdr_flags",
8459 .field_bit_size = 3,
8460 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8461 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8463 .field_info_spec = {
8464 .description = "tun_hdr_flags",
8465 .field_bit_size = 3,
8466 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8467 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8471 .field_info_mask = {
8472 .description = "tun_hdr_type",
8473 .field_bit_size = 4,
8474 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8475 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8477 .field_info_spec = {
8478 .description = "tun_hdr_type",
8479 .field_bit_size = 4,
8480 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8481 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8485 .field_info_mask = {
8486 .description = "tun_hdr_err",
8487 .field_bit_size = 1,
8488 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8489 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8491 .field_info_spec = {
8492 .description = "tun_hdr_err",
8493 .field_bit_size = 1,
8494 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8495 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8499 .field_info_mask = {
8500 .description = "tun_hdr_valid",
8501 .field_bit_size = 1,
8502 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8503 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8507 .field_info_spec = {
8508 .description = "tun_hdr_valid",
8509 .field_bit_size = 1,
8510 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8511 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8515 .field_info_mask = {
8516 .description = "tl4_hdr_is_udp_tcp",
8517 .field_bit_size = 1,
8518 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8519 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8521 .field_info_spec = {
8522 .description = "tl4_hdr_is_udp_tcp",
8523 .field_bit_size = 1,
8524 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8525 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8529 .field_info_mask = {
8530 .description = "tl4_hdr_type",
8531 .field_bit_size = 4,
8532 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8533 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8535 .field_info_spec = {
8536 .description = "tl4_hdr_type",
8537 .field_bit_size = 4,
8538 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8539 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8543 .field_info_mask = {
8544 .description = "tl4_hdr_error",
8545 .field_bit_size = 1,
8546 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8547 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8549 .field_info_spec = {
8550 .description = "tl4_hdr_error",
8551 .field_bit_size = 1,
8552 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8553 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8557 .field_info_mask = {
8558 .description = "tl4_hdr_valid",
8559 .field_bit_size = 1,
8560 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8561 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8565 .field_info_spec = {
8566 .description = "tl4_hdr_valid",
8567 .field_bit_size = 1,
8568 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8569 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8573 .field_info_mask = {
8574 .description = "tl3_ipv6_cmp_dst",
8575 .field_bit_size = 1,
8576 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8577 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8579 .field_info_spec = {
8580 .description = "tl3_ipv6_cmp_dst",
8581 .field_bit_size = 1,
8582 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8583 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8587 .field_info_mask = {
8588 .description = "tl3_ipv6_cmp_src",
8589 .field_bit_size = 1,
8590 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8591 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8593 .field_info_spec = {
8594 .description = "tl3_ipv6_cmp_src",
8595 .field_bit_size = 1,
8596 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8597 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8601 .field_info_mask = {
8602 .description = "tl3_hdr_isIP",
8603 .field_bit_size = 1,
8604 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8605 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8607 .field_info_spec = {
8608 .description = "tl3_hdr_isIP",
8609 .field_bit_size = 1,
8610 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8611 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8615 .field_info_mask = {
8616 .description = "tl3_hdr_type",
8617 .field_bit_size = 4,
8618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8619 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8621 .field_info_spec = {
8622 .description = "tl3_hdr_type",
8623 .field_bit_size = 4,
8624 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8625 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8629 .field_info_mask = {
8630 .description = "tl3_hdr_error",
8631 .field_bit_size = 1,
8632 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8633 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8635 .field_info_spec = {
8636 .description = "tl3_hdr_error",
8637 .field_bit_size = 1,
8638 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8639 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8643 .field_info_mask = {
8644 .description = "tl3_hdr_valid",
8645 .field_bit_size = 1,
8646 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8647 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8651 .field_info_spec = {
8652 .description = "tl3_hdr_valid",
8653 .field_bit_size = 1,
8654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8655 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8659 .field_info_mask = {
8660 .description = "tl2_two_vtags",
8661 .field_bit_size = 1,
8662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8663 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8665 .field_info_spec = {
8666 .description = "tl2_two_vtags",
8667 .field_bit_size = 1,
8668 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8669 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8673 .field_info_mask = {
8674 .description = "tl2_vtag_present",
8675 .field_bit_size = 1,
8676 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8677 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8679 .field_info_spec = {
8680 .description = "tl2_vtag_present",
8681 .field_bit_size = 1,
8682 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8683 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8687 .field_info_mask = {
8688 .description = "tl2_uc_mc_bc",
8689 .field_bit_size = 2,
8690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8691 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8693 .field_info_spec = {
8694 .description = "tl2_uc_mc_bc",
8695 .field_bit_size = 2,
8696 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8697 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8701 .field_info_mask = {
8702 .description = "tl2_hdr_type",
8703 .field_bit_size = 2,
8704 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8705 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8707 .field_info_spec = {
8708 .description = "tl2_hdr_type",
8709 .field_bit_size = 2,
8710 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8711 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8715 .field_info_mask = {
8716 .description = "tl2_hdr_valid",
8717 .field_bit_size = 1,
8718 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8719 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8723 .field_info_spec = {
8724 .description = "tl2_hdr_valid",
8725 .field_bit_size = 1,
8726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8727 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8731 .field_info_mask = {
8732 .description = "hrec_next",
8733 .field_bit_size = 1,
8734 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8735 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8737 .field_info_spec = {
8738 .description = "hrec_next",
8739 .field_bit_size = 1,
8740 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8741 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8745 .field_info_mask = {
8746 .description = "reserved",
8747 .field_bit_size = 9,
8748 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8749 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8751 .field_info_spec = {
8752 .description = "reserved",
8753 .field_bit_size = 9,
8754 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8755 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8759 .field_info_mask = {
8760 .description = "prof_func_id",
8761 .field_bit_size = 7,
8762 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8763 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8767 .field_info_spec = {
8768 .description = "prof_func_id",
8769 .field_bit_size = 7,
8770 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8771 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8773 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
8774 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
8775 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
8777 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
8778 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
8779 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
8781 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
8782 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
8786 .field_info_mask = {
8787 .description = "agg_error",
8788 .field_bit_size = 1,
8789 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8790 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8792 .field_info_spec = {
8793 .description = "agg_error",
8794 .field_bit_size = 1,
8795 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8796 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8800 .field_info_mask = {
8801 .description = "recycle_cnt",
8802 .field_bit_size = 2,
8803 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8804 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8806 .field_info_spec = {
8807 .description = "recycle_cnt",
8808 .field_bit_size = 2,
8809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8810 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8814 .field_info_mask = {
8815 .description = "pkt_type_0",
8816 .field_bit_size = 2,
8817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8818 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8820 .field_info_spec = {
8821 .description = "pkt_type_0",
8822 .field_bit_size = 2,
8823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8824 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8828 .field_info_mask = {
8829 .description = "pkt_type_1",
8830 .field_bit_size = 2,
8831 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8832 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8834 .field_info_spec = {
8835 .description = "pkt_type_1",
8836 .field_bit_size = 2,
8837 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8838 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8842 .field_info_mask = {
8843 .description = "valid",
8844 .field_bit_size = 1,
8845 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8846 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8850 .field_info_spec = {
8851 .description = "valid",
8852 .field_bit_size = 1,
8853 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8854 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8859 /* class_tid: 3, , table: profile_tcam.ipv6 */
8861 .field_info_mask = {
8862 .description = "l4_hdr_is_udp_tcp",
8863 .field_bit_size = 1,
8864 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8865 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8867 .field_info_spec = {
8868 .description = "l4_hdr_is_udp_tcp",
8869 .field_bit_size = 1,
8870 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8871 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8875 .field_info_mask = {
8876 .description = "l4_hdr_type",
8877 .field_bit_size = 4,
8878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8879 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8881 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8882 BNXT_ULP_CF_IDX_O_L4 & 0xff},
8883 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
8884 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8886 .field_info_spec = {
8887 .description = "l4_hdr_type",
8888 .field_bit_size = 4,
8889 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8890 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
8892 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
8893 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
8894 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
8895 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
8896 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
8897 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
8898 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
8899 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
8900 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
8902 ULP_WP_SYM_L4_HDR_TYPE_TCP},
8903 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
8905 ULP_WP_SYM_L4_HDR_TYPE_UDP}
8909 .field_info_mask = {
8910 .description = "l4_hdr_error",
8911 .field_bit_size = 1,
8912 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8913 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8915 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8916 BNXT_ULP_CF_IDX_O_L4 & 0xff}
8918 .field_info_spec = {
8919 .description = "l4_hdr_error",
8920 .field_bit_size = 1,
8921 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8922 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8926 .field_info_mask = {
8927 .description = "l4_hdr_valid",
8928 .field_bit_size = 1,
8929 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8930 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8932 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8933 BNXT_ULP_CF_IDX_O_L4 & 0xff}
8935 .field_info_spec = {
8936 .description = "l4_hdr_valid",
8937 .field_bit_size = 1,
8938 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8939 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8941 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8942 BNXT_ULP_CF_IDX_O_L4 & 0xff}
8946 .field_info_mask = {
8947 .description = "l3_ipv6_cmp_dst",
8948 .field_bit_size = 1,
8949 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8950 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8952 .field_info_spec = {
8953 .description = "l3_ipv6_cmp_dst",
8954 .field_bit_size = 1,
8955 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8956 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8960 .field_info_mask = {
8961 .description = "l3_ipv6_cmp_src",
8962 .field_bit_size = 1,
8963 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8964 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8966 .field_info_spec = {
8967 .description = "l3_ipv6_cmp_src",
8968 .field_bit_size = 1,
8969 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8970 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8974 .field_info_mask = {
8975 .description = "l3_hdr_isIP",
8976 .field_bit_size = 1,
8977 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8978 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8980 .field_info_spec = {
8981 .description = "l3_hdr_isIP",
8982 .field_bit_size = 1,
8983 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8984 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8988 .field_info_mask = {
8989 .description = "l3_hdr_type",
8990 .field_bit_size = 4,
8991 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8992 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8996 .field_info_spec = {
8997 .description = "l3_hdr_type",
8998 .field_bit_size = 4,
8999 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9000 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9002 ULP_WP_SYM_L3_HDR_TYPE_IPV6}
9006 .field_info_mask = {
9007 .description = "l3_hdr_error",
9008 .field_bit_size = 1,
9009 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9010 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9014 .field_info_spec = {
9015 .description = "l3_hdr_error",
9016 .field_bit_size = 1,
9017 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9018 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9022 .field_info_mask = {
9023 .description = "l3_hdr_valid",
9024 .field_bit_size = 1,
9025 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9026 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9030 .field_info_spec = {
9031 .description = "l3_hdr_valid",
9032 .field_bit_size = 1,
9033 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9034 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9036 ULP_WP_SYM_L3_HDR_VALID_YES}
9040 .field_info_mask = {
9041 .description = "l2_two_vtags",
9042 .field_bit_size = 1,
9043 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9044 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9048 .field_info_spec = {
9049 .description = "l2_two_vtags",
9050 .field_bit_size = 1,
9051 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9052 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9056 .field_info_mask = {
9057 .description = "l2_vtag_present",
9058 .field_bit_size = 1,
9059 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9060 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9064 .field_info_spec = {
9065 .description = "l2_vtag_present",
9066 .field_bit_size = 1,
9067 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9068 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9070 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
9071 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
9075 .field_info_mask = {
9076 .description = "l2_uc_mc_bc",
9077 .field_bit_size = 2,
9078 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9079 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9083 .field_info_spec = {
9084 .description = "l2_uc_mc_bc",
9085 .field_bit_size = 2,
9086 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9087 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9091 .field_info_mask = {
9092 .description = "l2_hdr_type",
9093 .field_bit_size = 2,
9094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9095 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9099 .field_info_spec = {
9100 .description = "l2_hdr_type",
9101 .field_bit_size = 2,
9102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9103 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9107 .field_info_mask = {
9108 .description = "l2_hdr_error",
9109 .field_bit_size = 1,
9110 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9111 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9115 .field_info_spec = {
9116 .description = "l2_hdr_error",
9117 .field_bit_size = 1,
9118 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9119 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9123 .field_info_mask = {
9124 .description = "l2_hdr_valid",
9125 .field_bit_size = 1,
9126 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9127 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9131 .field_info_spec = {
9132 .description = "l2_hdr_valid",
9133 .field_bit_size = 1,
9134 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9135 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9137 ULP_WP_SYM_L2_HDR_VALID_YES}
9141 .field_info_mask = {
9142 .description = "tun_hdr_flags",
9143 .field_bit_size = 3,
9144 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9145 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9147 .field_info_spec = {
9148 .description = "tun_hdr_flags",
9149 .field_bit_size = 3,
9150 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9151 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9155 .field_info_mask = {
9156 .description = "tun_hdr_type",
9157 .field_bit_size = 4,
9158 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9159 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9161 .field_info_spec = {
9162 .description = "tun_hdr_type",
9163 .field_bit_size = 4,
9164 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9165 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9169 .field_info_mask = {
9170 .description = "tun_hdr_err",
9171 .field_bit_size = 1,
9172 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9173 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9175 .field_info_spec = {
9176 .description = "tun_hdr_err",
9177 .field_bit_size = 1,
9178 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9179 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9183 .field_info_mask = {
9184 .description = "tun_hdr_valid",
9185 .field_bit_size = 1,
9186 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9187 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9191 .field_info_spec = {
9192 .description = "tun_hdr_valid",
9193 .field_bit_size = 1,
9194 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9195 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9199 .field_info_mask = {
9200 .description = "tl4_hdr_is_udp_tcp",
9201 .field_bit_size = 1,
9202 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9203 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9205 .field_info_spec = {
9206 .description = "tl4_hdr_is_udp_tcp",
9207 .field_bit_size = 1,
9208 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9209 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9213 .field_info_mask = {
9214 .description = "tl4_hdr_type",
9215 .field_bit_size = 4,
9216 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9217 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9219 .field_info_spec = {
9220 .description = "tl4_hdr_type",
9221 .field_bit_size = 4,
9222 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9223 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9227 .field_info_mask = {
9228 .description = "tl4_hdr_error",
9229 .field_bit_size = 1,
9230 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9231 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9233 .field_info_spec = {
9234 .description = "tl4_hdr_error",
9235 .field_bit_size = 1,
9236 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9237 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9241 .field_info_mask = {
9242 .description = "tl4_hdr_valid",
9243 .field_bit_size = 1,
9244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9245 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9249 .field_info_spec = {
9250 .description = "tl4_hdr_valid",
9251 .field_bit_size = 1,
9252 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9253 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9257 .field_info_mask = {
9258 .description = "tl3_ipv6_cmp_dst",
9259 .field_bit_size = 1,
9260 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9261 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9263 .field_info_spec = {
9264 .description = "tl3_ipv6_cmp_dst",
9265 .field_bit_size = 1,
9266 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9267 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9271 .field_info_mask = {
9272 .description = "tl3_ipv6_cmp_src",
9273 .field_bit_size = 1,
9274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9275 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9277 .field_info_spec = {
9278 .description = "tl3_ipv6_cmp_src",
9279 .field_bit_size = 1,
9280 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9281 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9285 .field_info_mask = {
9286 .description = "tl3_hdr_isIP",
9287 .field_bit_size = 1,
9288 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9289 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9291 .field_info_spec = {
9292 .description = "tl3_hdr_isIP",
9293 .field_bit_size = 1,
9294 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9295 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9299 .field_info_mask = {
9300 .description = "tl3_hdr_type",
9301 .field_bit_size = 4,
9302 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9303 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9305 .field_info_spec = {
9306 .description = "tl3_hdr_type",
9307 .field_bit_size = 4,
9308 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9309 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9313 .field_info_mask = {
9314 .description = "tl3_hdr_error",
9315 .field_bit_size = 1,
9316 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9317 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9319 .field_info_spec = {
9320 .description = "tl3_hdr_error",
9321 .field_bit_size = 1,
9322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9323 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9327 .field_info_mask = {
9328 .description = "tl3_hdr_valid",
9329 .field_bit_size = 1,
9330 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9331 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9335 .field_info_spec = {
9336 .description = "tl3_hdr_valid",
9337 .field_bit_size = 1,
9338 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9339 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9343 .field_info_mask = {
9344 .description = "tl2_two_vtags",
9345 .field_bit_size = 1,
9346 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9347 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9349 .field_info_spec = {
9350 .description = "tl2_two_vtags",
9351 .field_bit_size = 1,
9352 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9353 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9357 .field_info_mask = {
9358 .description = "tl2_vtag_present",
9359 .field_bit_size = 1,
9360 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9361 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9363 .field_info_spec = {
9364 .description = "tl2_vtag_present",
9365 .field_bit_size = 1,
9366 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9367 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9371 .field_info_mask = {
9372 .description = "tl2_uc_mc_bc",
9373 .field_bit_size = 2,
9374 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9375 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9377 .field_info_spec = {
9378 .description = "tl2_uc_mc_bc",
9379 .field_bit_size = 2,
9380 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9381 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9385 .field_info_mask = {
9386 .description = "tl2_hdr_type",
9387 .field_bit_size = 2,
9388 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9389 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9391 .field_info_spec = {
9392 .description = "tl2_hdr_type",
9393 .field_bit_size = 2,
9394 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9395 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9399 .field_info_mask = {
9400 .description = "tl2_hdr_valid",
9401 .field_bit_size = 1,
9402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9403 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9407 .field_info_spec = {
9408 .description = "tl2_hdr_valid",
9409 .field_bit_size = 1,
9410 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9411 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9415 .field_info_mask = {
9416 .description = "hrec_next",
9417 .field_bit_size = 1,
9418 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9419 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9421 .field_info_spec = {
9422 .description = "hrec_next",
9423 .field_bit_size = 1,
9424 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9425 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9429 .field_info_mask = {
9430 .description = "reserved",
9431 .field_bit_size = 9,
9432 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9433 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9435 .field_info_spec = {
9436 .description = "reserved",
9437 .field_bit_size = 9,
9438 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9439 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9443 .field_info_mask = {
9444 .description = "prof_func_id",
9445 .field_bit_size = 7,
9446 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9447 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9451 .field_info_spec = {
9452 .description = "prof_func_id",
9453 .field_bit_size = 7,
9454 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9455 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9457 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
9458 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
9459 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
9461 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
9462 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
9463 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
9465 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
9466 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
9470 .field_info_mask = {
9471 .description = "agg_error",
9472 .field_bit_size = 1,
9473 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9474 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9476 .field_info_spec = {
9477 .description = "agg_error",
9478 .field_bit_size = 1,
9479 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9480 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9484 .field_info_mask = {
9485 .description = "recycle_cnt",
9486 .field_bit_size = 2,
9487 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9488 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9490 .field_info_spec = {
9491 .description = "recycle_cnt",
9492 .field_bit_size = 2,
9493 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9494 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9498 .field_info_mask = {
9499 .description = "pkt_type_0",
9500 .field_bit_size = 2,
9501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9502 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9504 .field_info_spec = {
9505 .description = "pkt_type_0",
9506 .field_bit_size = 2,
9507 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9508 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9512 .field_info_mask = {
9513 .description = "pkt_type_1",
9514 .field_bit_size = 2,
9515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9516 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9518 .field_info_spec = {
9519 .description = "pkt_type_1",
9520 .field_bit_size = 2,
9521 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9522 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9526 .field_info_mask = {
9527 .description = "valid",
9528 .field_bit_size = 1,
9529 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9530 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9534 .field_info_spec = {
9535 .description = "valid",
9536 .field_bit_size = 1,
9537 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9538 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9543 /* class_tid: 3, , table: profile_tcam_cache.wr */
9545 .field_info_mask = {
9546 .description = "recycle_cnt",
9547 .field_bit_size = 2,
9548 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9549 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9553 .field_info_spec = {
9554 .description = "recycle_cnt",
9555 .field_bit_size = 2,
9556 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9557 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9561 .field_info_mask = {
9562 .description = "prof_func_id",
9563 .field_bit_size = 7,
9564 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9565 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9569 .field_info_spec = {
9570 .description = "prof_func_id",
9571 .field_bit_size = 7,
9572 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9573 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9575 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
9576 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
9577 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
9579 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
9580 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
9581 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
9583 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
9584 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
9588 .field_info_mask = {
9589 .description = "hdr_sig_id",
9590 .field_bit_size = 5,
9591 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9592 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9596 .field_info_spec = {
9597 .description = "hdr_sig_id",
9598 .field_bit_size = 5,
9599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9600 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9602 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
9603 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
9606 /* class_tid: 3, , table: em.ipv4 */
9608 .field_info_mask = {
9609 .description = "spare",
9610 .field_bit_size = 3,
9611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9612 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9614 .field_info_spec = {
9615 .description = "spare",
9616 .field_bit_size = 3,
9617 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9618 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9622 .field_info_mask = {
9623 .description = "local_cos",
9624 .field_bit_size = 3,
9625 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9626 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9628 .field_info_spec = {
9629 .description = "local_cos",
9630 .field_bit_size = 3,
9631 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9632 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9636 .field_info_mask = {
9637 .description = "l4.dst",
9638 .field_bit_size = 16,
9639 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9640 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9645 .field_info_spec = {
9646 .description = "l4.dst",
9647 .field_bit_size = 16,
9648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9649 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9651 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
9652 BNXT_ULP_CF_IDX_O_L4 & 0xff},
9653 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9655 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
9656 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
9657 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9661 .field_info_mask = {
9662 .description = "l4.src",
9663 .field_bit_size = 16,
9664 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9665 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9670 .field_info_spec = {
9671 .description = "l4.src",
9672 .field_bit_size = 16,
9673 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9674 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9676 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
9677 BNXT_ULP_CF_IDX_O_L4 & 0xff},
9678 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9680 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
9681 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
9682 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9686 .field_info_mask = {
9687 .description = "l3.prot",
9688 .field_bit_size = 8,
9689 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9690 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9694 .field_info_spec = {
9695 .description = "l3.prot",
9696 .field_bit_size = 8,
9697 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9698 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9700 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
9701 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
9702 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9704 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
9705 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
9706 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9710 .field_info_mask = {
9711 .description = "l3.dst",
9712 .field_bit_size = 32,
9713 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9714 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9716 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
9717 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
9719 .field_info_spec = {
9720 .description = "l3.dst",
9721 .field_bit_size = 32,
9722 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9723 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9725 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
9726 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
9730 .field_info_mask = {
9731 .description = "l3.src",
9732 .field_bit_size = 32,
9733 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9734 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9736 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
9737 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
9739 .field_info_spec = {
9740 .description = "l3.src",
9741 .field_bit_size = 32,
9742 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9743 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9745 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
9746 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
9750 .field_info_mask = {
9751 .description = "l2.dmac",
9752 .field_bit_size = 48,
9753 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9754 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9756 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
9757 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
9759 .field_info_spec = {
9760 .description = "l2.dmac",
9761 .field_bit_size = 48,
9762 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9763 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9765 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
9766 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
9770 .field_info_mask = {
9771 .description = "l2_cntxt_id",
9772 .field_bit_size = 10,
9773 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9774 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9779 .field_info_spec = {
9780 .description = "l2_cntxt_id",
9781 .field_bit_size = 10,
9782 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9783 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
9785 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
9786 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
9790 .field_info_mask = {
9791 .description = "em_profile_id",
9792 .field_bit_size = 8,
9793 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9794 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9798 .field_info_spec = {
9799 .description = "em_profile_id",
9800 .field_bit_size = 8,
9801 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9802 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
9804 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
9805 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
9808 /* class_tid: 3, , table: eem.ipv4 */
9810 .field_info_mask = {
9811 .description = "spare",
9812 .field_bit_size = 275,
9813 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9814 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9816 .field_info_spec = {
9817 .description = "spare",
9818 .field_bit_size = 275,
9819 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9820 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9824 .field_info_mask = {
9825 .description = "local_cos",
9826 .field_bit_size = 3,
9827 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9828 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9830 .field_info_spec = {
9831 .description = "local_cos",
9832 .field_bit_size = 3,
9833 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9834 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9838 .field_info_mask = {
9839 .description = "l4.dst",
9840 .field_bit_size = 16,
9841 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9842 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9847 .field_info_spec = {
9848 .description = "l4.dst",
9849 .field_bit_size = 16,
9850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9851 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9853 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
9854 BNXT_ULP_CF_IDX_O_L4 & 0xff},
9855 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9857 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
9858 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
9859 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9863 .field_info_mask = {
9864 .description = "l4.src",
9865 .field_bit_size = 16,
9866 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9867 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9872 .field_info_spec = {
9873 .description = "l4.src",
9874 .field_bit_size = 16,
9875 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9876 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9878 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
9879 BNXT_ULP_CF_IDX_O_L4 & 0xff},
9880 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9882 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
9883 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
9884 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9888 .field_info_mask = {
9889 .description = "l3.prot",
9890 .field_bit_size = 8,
9891 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9892 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9896 .field_info_spec = {
9897 .description = "l3.prot",
9898 .field_bit_size = 8,
9899 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9900 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9902 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
9903 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
9904 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9906 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
9907 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
9908 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9912 .field_info_mask = {
9913 .description = "l3.dst",
9914 .field_bit_size = 32,
9915 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9916 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9918 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
9919 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
9921 .field_info_spec = {
9922 .description = "l3.dst",
9923 .field_bit_size = 32,
9924 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9925 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9927 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
9928 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
9932 .field_info_mask = {
9933 .description = "l3.src",
9934 .field_bit_size = 32,
9935 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9936 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9938 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
9939 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
9941 .field_info_spec = {
9942 .description = "l3.src",
9943 .field_bit_size = 32,
9944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9945 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9947 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
9948 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
9952 .field_info_mask = {
9953 .description = "l2.dmac",
9954 .field_bit_size = 48,
9955 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9956 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9958 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
9959 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
9961 .field_info_spec = {
9962 .description = "l2.dmac",
9963 .field_bit_size = 48,
9964 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9965 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
9967 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
9968 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
9972 .field_info_mask = {
9973 .description = "l2_cntxt_id",
9974 .field_bit_size = 10,
9975 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9976 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9981 .field_info_spec = {
9982 .description = "l2_cntxt_id",
9983 .field_bit_size = 10,
9984 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9985 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
9987 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
9988 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
9992 .field_info_mask = {
9993 .description = "em_profile_id",
9994 .field_bit_size = 8,
9995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9996 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10000 .field_info_spec = {
10001 .description = "em_profile_id",
10002 .field_bit_size = 8,
10003 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10004 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10006 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10007 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10010 /* class_tid: 3, , table: em.ipv6 */
10012 .field_info_mask = {
10013 .description = "spare",
10014 .field_bit_size = 3,
10015 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10016 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10018 .field_info_spec = {
10019 .description = "spare",
10020 .field_bit_size = 3,
10021 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10022 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10026 .field_info_mask = {
10027 .description = "local_cos",
10028 .field_bit_size = 3,
10029 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10030 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10032 .field_info_spec = {
10033 .description = "local_cos",
10034 .field_bit_size = 3,
10035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10036 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10040 .field_info_mask = {
10041 .description = "l4.dst",
10042 .field_bit_size = 16,
10043 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10044 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10049 .field_info_spec = {
10050 .description = "l4.dst",
10051 .field_bit_size = 16,
10052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10053 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10055 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10056 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10057 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
10059 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
10060 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
10061 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10065 .field_info_mask = {
10066 .description = "l4.src",
10067 .field_bit_size = 16,
10068 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10069 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10074 .field_info_spec = {
10075 .description = "l4.src",
10076 .field_bit_size = 16,
10077 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10078 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10080 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10081 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10082 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
10084 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
10085 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
10086 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10090 .field_info_mask = {
10091 .description = "l3.prot",
10092 .field_bit_size = 8,
10093 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10094 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10098 .field_info_spec = {
10099 .description = "l3.prot",
10100 .field_bit_size = 8,
10101 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10102 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10104 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
10105 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
10106 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
10108 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
10109 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
10110 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10114 .field_info_mask = {
10115 .description = "l3.dst",
10116 .field_bit_size = 128,
10117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10118 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10120 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
10121 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
10123 .field_info_spec = {
10124 .description = "l3.dst",
10125 .field_bit_size = 128,
10126 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10127 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10129 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
10130 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
10134 .field_info_mask = {
10135 .description = "l3.src",
10136 .field_bit_size = 128,
10137 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10138 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10140 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
10141 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
10143 .field_info_spec = {
10144 .description = "l3.src",
10145 .field_bit_size = 128,
10146 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10147 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10149 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
10150 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
10154 .field_info_mask = {
10155 .description = "l2.smac",
10156 .field_bit_size = 48,
10157 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10158 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10160 .field_info_spec = {
10161 .description = "l2.smac",
10162 .field_bit_size = 48,
10163 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10164 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10168 .field_info_mask = {
10169 .description = "l2.dmac",
10170 .field_bit_size = 48,
10171 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10172 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10174 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
10175 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
10177 .field_info_spec = {
10178 .description = "l2.dmac",
10179 .field_bit_size = 48,
10180 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10181 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10183 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
10184 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
10188 .field_info_mask = {
10189 .description = "l2_cntxt_id",
10190 .field_bit_size = 10,
10191 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10192 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10197 .field_info_spec = {
10198 .description = "l2_cntxt_id",
10199 .field_bit_size = 10,
10200 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10201 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10203 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
10204 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
10208 .field_info_mask = {
10209 .description = "em_profile_id",
10210 .field_bit_size = 8,
10211 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10212 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10216 .field_info_spec = {
10217 .description = "em_profile_id",
10218 .field_bit_size = 8,
10219 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10220 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10222 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10223 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10226 /* class_tid: 3, , table: eem.ipv6 */
10228 .field_info_mask = {
10229 .description = "spare",
10230 .field_bit_size = 35,
10231 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10232 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10234 .field_info_spec = {
10235 .description = "spare",
10236 .field_bit_size = 35,
10237 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10238 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10242 .field_info_mask = {
10243 .description = "local_cos",
10244 .field_bit_size = 3,
10245 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10246 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10248 .field_info_spec = {
10249 .description = "local_cos",
10250 .field_bit_size = 3,
10251 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10252 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10256 .field_info_mask = {
10257 .description = "l4.dst",
10258 .field_bit_size = 16,
10259 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10260 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10265 .field_info_spec = {
10266 .description = "l4.dst",
10267 .field_bit_size = 16,
10268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10269 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10271 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10272 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10273 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
10275 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
10276 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
10277 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10281 .field_info_mask = {
10282 .description = "l4.src",
10283 .field_bit_size = 16,
10284 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10285 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10290 .field_info_spec = {
10291 .description = "l4.src",
10292 .field_bit_size = 16,
10293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10294 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10296 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10297 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10298 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
10300 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
10301 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
10302 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10306 .field_info_mask = {
10307 .description = "l3.prot",
10308 .field_bit_size = 8,
10309 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10310 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10314 .field_info_spec = {
10315 .description = "l3.prot",
10316 .field_bit_size = 8,
10317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10318 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10320 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
10321 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
10322 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
10324 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
10325 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
10326 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10330 .field_info_mask = {
10331 .description = "l3.dst",
10332 .field_bit_size = 128,
10333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10334 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10336 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
10337 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
10339 .field_info_spec = {
10340 .description = "l3.dst",
10341 .field_bit_size = 128,
10342 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10343 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10345 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
10346 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
10350 .field_info_mask = {
10351 .description = "l3.src",
10352 .field_bit_size = 128,
10353 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10354 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10356 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
10357 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
10359 .field_info_spec = {
10360 .description = "l3.src",
10361 .field_bit_size = 128,
10362 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10363 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10365 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
10366 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
10370 .field_info_mask = {
10371 .description = "l2.smac",
10372 .field_bit_size = 48,
10373 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10374 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10376 .field_info_spec = {
10377 .description = "l2.smac",
10378 .field_bit_size = 48,
10379 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10380 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10384 .field_info_mask = {
10385 .description = "l2.dmac",
10386 .field_bit_size = 48,
10387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10388 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10390 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
10391 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
10393 .field_info_spec = {
10394 .description = "l2.dmac",
10395 .field_bit_size = 48,
10396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10397 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
10399 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
10400 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
10404 .field_info_mask = {
10405 .description = "l2_cntxt_id",
10406 .field_bit_size = 10,
10407 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10408 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10413 .field_info_spec = {
10414 .description = "l2_cntxt_id",
10415 .field_bit_size = 10,
10416 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10417 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10419 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
10420 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
10424 .field_info_mask = {
10425 .description = "em_profile_id",
10426 .field_bit_size = 8,
10427 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10428 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10432 .field_info_spec = {
10433 .description = "em_profile_id",
10434 .field_bit_size = 8,
10435 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10436 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10438 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10439 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10442 /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_rd */
10444 .field_info_mask = {
10445 .description = "svif",
10446 .field_bit_size = 8,
10447 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10448 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10452 .field_info_spec = {
10453 .description = "svif",
10454 .field_bit_size = 8,
10455 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10456 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10458 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
10459 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
10462 /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
10464 .field_info_mask = {
10465 .description = "l2_ivlan_vid",
10466 .field_bit_size = 12,
10467 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10468 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10470 .field_info_spec = {
10471 .description = "l2_ivlan_vid",
10472 .field_bit_size = 12,
10473 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10474 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10478 .field_info_mask = {
10479 .description = "l2_ovlan_vid",
10480 .field_bit_size = 12,
10481 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10482 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10484 .field_info_spec = {
10485 .description = "l2_ovlan_vid",
10486 .field_bit_size = 12,
10487 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10488 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10492 .field_info_mask = {
10493 .description = "mac0_addr",
10494 .field_bit_size = 48,
10495 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10496 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10498 .field_info_spec = {
10499 .description = "mac0_addr",
10500 .field_bit_size = 48,
10501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10502 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10506 .field_info_mask = {
10507 .description = "svif",
10508 .field_bit_size = 8,
10509 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10510 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10514 .field_info_spec = {
10515 .description = "svif",
10516 .field_bit_size = 8,
10517 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10518 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10520 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
10521 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
10525 .field_info_mask = {
10526 .description = "sparif",
10527 .field_bit_size = 4,
10528 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10529 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10531 .field_info_spec = {
10532 .description = "sparif",
10533 .field_bit_size = 4,
10534 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10535 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10539 .field_info_mask = {
10540 .description = "tl2_ivlan_vid",
10541 .field_bit_size = 12,
10542 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10543 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10545 .field_info_spec = {
10546 .description = "tl2_ivlan_vid",
10547 .field_bit_size = 12,
10548 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10549 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10553 .field_info_mask = {
10554 .description = "tl2_ovlan_vid",
10555 .field_bit_size = 12,
10556 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10557 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10559 .field_info_spec = {
10560 .description = "tl2_ovlan_vid",
10561 .field_bit_size = 12,
10562 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10563 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10567 .field_info_mask = {
10568 .description = "mac1_addr",
10569 .field_bit_size = 48,
10570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10571 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10573 .field_info_spec = {
10574 .description = "mac1_addr",
10575 .field_bit_size = 48,
10576 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10577 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10581 .field_info_mask = {
10582 .description = "l2_num_vtags",
10583 .field_bit_size = 2,
10584 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10585 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10587 .field_info_spec = {
10588 .description = "l2_num_vtags",
10589 .field_bit_size = 2,
10590 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10591 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10595 .field_info_mask = {
10596 .description = "tl2_num_vtags",
10597 .field_bit_size = 2,
10598 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10599 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10601 .field_info_spec = {
10602 .description = "tl2_num_vtags",
10603 .field_bit_size = 2,
10604 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10605 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10609 .field_info_mask = {
10610 .description = "tun_hdr_type",
10611 .field_bit_size = 4,
10612 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10613 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10615 .field_info_spec = {
10616 .description = "tun_hdr_type",
10617 .field_bit_size = 4,
10618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10619 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10623 .field_info_mask = {
10624 .description = "key_type",
10625 .field_bit_size = 2,
10626 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10627 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10629 .field_info_spec = {
10630 .description = "key_type",
10631 .field_bit_size = 2,
10632 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10633 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10637 .field_info_mask = {
10638 .description = "valid",
10639 .field_bit_size = 1,
10640 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10641 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10645 .field_info_spec = {
10646 .description = "valid",
10647 .field_bit_size = 1,
10648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10649 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10654 /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_wr */
10656 .field_info_mask = {
10657 .description = "svif",
10658 .field_bit_size = 8,
10659 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10660 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10664 .field_info_spec = {
10665 .description = "svif",
10666 .field_bit_size = 8,
10667 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10668 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10670 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
10671 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
10674 /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_rd_vfr */
10676 .field_info_mask = {
10677 .description = "svif",
10678 .field_bit_size = 8,
10679 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10680 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10684 .field_info_spec = {
10685 .description = "svif",
10686 .field_bit_size = 8,
10687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10688 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10690 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
10691 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
10694 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.egr_vfr */
10696 .field_info_mask = {
10697 .description = "l2_ivlan_vid",
10698 .field_bit_size = 12,
10699 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10700 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10702 .field_info_spec = {
10703 .description = "l2_ivlan_vid",
10704 .field_bit_size = 12,
10705 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10706 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10710 .field_info_mask = {
10711 .description = "l2_ovlan_vid",
10712 .field_bit_size = 12,
10713 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10714 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10716 .field_info_spec = {
10717 .description = "l2_ovlan_vid",
10718 .field_bit_size = 12,
10719 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10720 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10724 .field_info_mask = {
10725 .description = "mac0_addr",
10726 .field_bit_size = 48,
10727 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10728 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10730 .field_info_spec = {
10731 .description = "mac0_addr",
10732 .field_bit_size = 48,
10733 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10734 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10738 .field_info_mask = {
10739 .description = "svif",
10740 .field_bit_size = 8,
10741 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10742 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10746 .field_info_spec = {
10747 .description = "svif",
10748 .field_bit_size = 8,
10749 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10750 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10752 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
10753 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
10757 .field_info_mask = {
10758 .description = "sparif",
10759 .field_bit_size = 4,
10760 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10761 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10763 .field_info_spec = {
10764 .description = "sparif",
10765 .field_bit_size = 4,
10766 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10767 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10771 .field_info_mask = {
10772 .description = "tl2_ivlan_vid",
10773 .field_bit_size = 12,
10774 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10775 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10777 .field_info_spec = {
10778 .description = "tl2_ivlan_vid",
10779 .field_bit_size = 12,
10780 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10781 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10785 .field_info_mask = {
10786 .description = "tl2_ovlan_vid",
10787 .field_bit_size = 12,
10788 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10789 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10791 .field_info_spec = {
10792 .description = "tl2_ovlan_vid",
10793 .field_bit_size = 12,
10794 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10795 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10799 .field_info_mask = {
10800 .description = "mac1_addr",
10801 .field_bit_size = 48,
10802 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10803 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10805 .field_info_spec = {
10806 .description = "mac1_addr",
10807 .field_bit_size = 48,
10808 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10809 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10813 .field_info_mask = {
10814 .description = "l2_num_vtags",
10815 .field_bit_size = 2,
10816 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10817 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10819 .field_info_spec = {
10820 .description = "l2_num_vtags",
10821 .field_bit_size = 2,
10822 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10823 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10827 .field_info_mask = {
10828 .description = "tl2_num_vtags",
10829 .field_bit_size = 2,
10830 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10831 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10833 .field_info_spec = {
10834 .description = "tl2_num_vtags",
10835 .field_bit_size = 2,
10836 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10837 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10841 .field_info_mask = {
10842 .description = "tun_hdr_type",
10843 .field_bit_size = 4,
10844 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10845 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10847 .field_info_spec = {
10848 .description = "tun_hdr_type",
10849 .field_bit_size = 4,
10850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10851 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10855 .field_info_mask = {
10856 .description = "key_type",
10857 .field_bit_size = 2,
10858 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10859 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10861 .field_info_spec = {
10862 .description = "key_type",
10863 .field_bit_size = 2,
10864 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10865 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10869 .field_info_mask = {
10870 .description = "valid",
10871 .field_bit_size = 1,
10872 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10873 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10877 .field_info_spec = {
10878 .description = "valid",
10879 .field_bit_size = 1,
10880 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10881 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10886 /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
10888 .field_info_mask = {
10889 .description = "svif",
10890 .field_bit_size = 8,
10891 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10892 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10896 .field_info_spec = {
10897 .description = "svif",
10898 .field_bit_size = 8,
10899 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10900 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10902 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
10903 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
10906 /* class_tid: 4, , table: l2_cntxt_tcam_cache.rd */
10908 .field_info_mask = {
10909 .description = "svif",
10910 .field_bit_size = 8,
10911 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10912 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10916 .field_info_spec = {
10917 .description = "svif",
10918 .field_bit_size = 8,
10919 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10920 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10922 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
10923 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
10926 /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
10928 .field_info_mask = {
10929 .description = "l2_ivlan_vid",
10930 .field_bit_size = 12,
10931 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10932 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10934 .field_info_spec = {
10935 .description = "l2_ivlan_vid",
10936 .field_bit_size = 12,
10937 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10938 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10942 .field_info_mask = {
10943 .description = "l2_ovlan_vid",
10944 .field_bit_size = 12,
10945 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10946 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10948 .field_info_spec = {
10949 .description = "l2_ovlan_vid",
10950 .field_bit_size = 12,
10951 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10952 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10956 .field_info_mask = {
10957 .description = "mac0_addr",
10958 .field_bit_size = 48,
10959 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10960 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10962 .field_info_spec = {
10963 .description = "mac0_addr",
10964 .field_bit_size = 48,
10965 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10966 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10970 .field_info_mask = {
10971 .description = "svif",
10972 .field_bit_size = 8,
10973 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10974 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10978 .field_info_spec = {
10979 .description = "svif",
10980 .field_bit_size = 8,
10981 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10982 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10984 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
10985 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
10989 .field_info_mask = {
10990 .description = "sparif",
10991 .field_bit_size = 4,
10992 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10993 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10995 .field_info_spec = {
10996 .description = "sparif",
10997 .field_bit_size = 4,
10998 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10999 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11003 .field_info_mask = {
11004 .description = "tl2_ivlan_vid",
11005 .field_bit_size = 12,
11006 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11007 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11009 .field_info_spec = {
11010 .description = "tl2_ivlan_vid",
11011 .field_bit_size = 12,
11012 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11013 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11017 .field_info_mask = {
11018 .description = "tl2_ovlan_vid",
11019 .field_bit_size = 12,
11020 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11021 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11023 .field_info_spec = {
11024 .description = "tl2_ovlan_vid",
11025 .field_bit_size = 12,
11026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11027 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11031 .field_info_mask = {
11032 .description = "mac1_addr",
11033 .field_bit_size = 48,
11034 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11035 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11037 .field_info_spec = {
11038 .description = "mac1_addr",
11039 .field_bit_size = 48,
11040 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11041 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11045 .field_info_mask = {
11046 .description = "l2_num_vtags",
11047 .field_bit_size = 2,
11048 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11049 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11051 .field_info_spec = {
11052 .description = "l2_num_vtags",
11053 .field_bit_size = 2,
11054 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11055 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11059 .field_info_mask = {
11060 .description = "tl2_num_vtags",
11061 .field_bit_size = 2,
11062 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11063 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11065 .field_info_spec = {
11066 .description = "tl2_num_vtags",
11067 .field_bit_size = 2,
11068 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11069 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11073 .field_info_mask = {
11074 .description = "tun_hdr_type",
11075 .field_bit_size = 4,
11076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11079 .field_info_spec = {
11080 .description = "tun_hdr_type",
11081 .field_bit_size = 4,
11082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11087 .field_info_mask = {
11088 .description = "key_type",
11089 .field_bit_size = 2,
11090 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11091 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11093 .field_info_spec = {
11094 .description = "key_type",
11095 .field_bit_size = 2,
11096 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11097 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11101 .field_info_mask = {
11102 .description = "valid",
11103 .field_bit_size = 1,
11104 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11105 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11109 .field_info_spec = {
11110 .description = "valid",
11111 .field_bit_size = 1,
11112 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11113 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11118 /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr */
11120 .field_info_mask = {
11121 .description = "svif",
11122 .field_bit_size = 8,
11123 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11124 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11128 .field_info_spec = {
11129 .description = "svif",
11130 .field_bit_size = 8,
11131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11132 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11134 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
11135 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
11138 /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_rd_egr */
11140 .field_info_mask = {
11141 .description = "svif",
11142 .field_bit_size = 8,
11143 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11144 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11148 .field_info_spec = {
11149 .description = "svif",
11150 .field_bit_size = 8,
11151 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11152 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11154 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
11155 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
11158 /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
11160 .field_info_mask = {
11161 .description = "l2_ivlan_vid",
11162 .field_bit_size = 12,
11163 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11164 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11166 .field_info_spec = {
11167 .description = "l2_ivlan_vid",
11168 .field_bit_size = 12,
11169 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11170 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11174 .field_info_mask = {
11175 .description = "l2_ovlan_vid",
11176 .field_bit_size = 12,
11177 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11178 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11180 .field_info_spec = {
11181 .description = "l2_ovlan_vid",
11182 .field_bit_size = 12,
11183 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11184 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11188 .field_info_mask = {
11189 .description = "mac0_addr",
11190 .field_bit_size = 48,
11191 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11192 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11194 .field_info_spec = {
11195 .description = "mac0_addr",
11196 .field_bit_size = 48,
11197 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11198 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11202 .field_info_mask = {
11203 .description = "svif",
11204 .field_bit_size = 8,
11205 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11206 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11210 .field_info_spec = {
11211 .description = "svif",
11212 .field_bit_size = 8,
11213 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11214 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11216 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
11217 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
11221 .field_info_mask = {
11222 .description = "sparif",
11223 .field_bit_size = 4,
11224 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11225 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11227 .field_info_spec = {
11228 .description = "sparif",
11229 .field_bit_size = 4,
11230 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11231 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11235 .field_info_mask = {
11236 .description = "tl2_ivlan_vid",
11237 .field_bit_size = 12,
11238 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11239 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11241 .field_info_spec = {
11242 .description = "tl2_ivlan_vid",
11243 .field_bit_size = 12,
11244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11245 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11249 .field_info_mask = {
11250 .description = "tl2_ovlan_vid",
11251 .field_bit_size = 12,
11252 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11253 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11255 .field_info_spec = {
11256 .description = "tl2_ovlan_vid",
11257 .field_bit_size = 12,
11258 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11259 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11263 .field_info_mask = {
11264 .description = "mac1_addr",
11265 .field_bit_size = 48,
11266 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11267 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11269 .field_info_spec = {
11270 .description = "mac1_addr",
11271 .field_bit_size = 48,
11272 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11273 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11277 .field_info_mask = {
11278 .description = "l2_num_vtags",
11279 .field_bit_size = 2,
11280 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11281 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11283 .field_info_spec = {
11284 .description = "l2_num_vtags",
11285 .field_bit_size = 2,
11286 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11287 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11291 .field_info_mask = {
11292 .description = "tl2_num_vtags",
11293 .field_bit_size = 2,
11294 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11295 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11297 .field_info_spec = {
11298 .description = "tl2_num_vtags",
11299 .field_bit_size = 2,
11300 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11301 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11305 .field_info_mask = {
11306 .description = "tun_hdr_type",
11307 .field_bit_size = 4,
11308 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11309 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11311 .field_info_spec = {
11312 .description = "tun_hdr_type",
11313 .field_bit_size = 4,
11314 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11315 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11319 .field_info_mask = {
11320 .description = "key_type",
11321 .field_bit_size = 2,
11322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11323 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11325 .field_info_spec = {
11326 .description = "key_type",
11327 .field_bit_size = 2,
11328 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11329 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11333 .field_info_mask = {
11334 .description = "valid",
11335 .field_bit_size = 1,
11336 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11337 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11341 .field_info_spec = {
11342 .description = "valid",
11343 .field_bit_size = 1,
11344 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11345 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11350 /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_egr_wr */
11352 .field_info_mask = {
11353 .description = "svif",
11354 .field_bit_size = 8,
11355 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11356 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11360 .field_info_spec = {
11361 .description = "svif",
11362 .field_bit_size = 8,
11363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11364 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11366 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
11367 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
11370 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vf_ing */
11372 .field_info_mask = {
11373 .description = "l2_ivlan_vid",
11374 .field_bit_size = 12,
11375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11376 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11378 .field_info_spec = {
11379 .description = "l2_ivlan_vid",
11380 .field_bit_size = 12,
11381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11382 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11386 .field_info_mask = {
11387 .description = "l2_ovlan_vid",
11388 .field_bit_size = 12,
11389 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11390 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11392 .field_info_spec = {
11393 .description = "l2_ovlan_vid",
11394 .field_bit_size = 12,
11395 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11396 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11400 .field_info_mask = {
11401 .description = "mac0_addr",
11402 .field_bit_size = 48,
11403 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11404 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11406 .field_info_spec = {
11407 .description = "mac0_addr",
11408 .field_bit_size = 48,
11409 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11410 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11414 .field_info_mask = {
11415 .description = "svif",
11416 .field_bit_size = 8,
11417 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11418 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11422 .field_info_spec = {
11423 .description = "svif",
11424 .field_bit_size = 8,
11425 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11426 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11428 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
11429 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
11433 .field_info_mask = {
11434 .description = "sparif",
11435 .field_bit_size = 4,
11436 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11437 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11439 .field_info_spec = {
11440 .description = "sparif",
11441 .field_bit_size = 4,
11442 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11443 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11447 .field_info_mask = {
11448 .description = "tl2_ivlan_vid",
11449 .field_bit_size = 12,
11450 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11451 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11453 .field_info_spec = {
11454 .description = "tl2_ivlan_vid",
11455 .field_bit_size = 12,
11456 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11457 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11461 .field_info_mask = {
11462 .description = "tl2_ovlan_vid",
11463 .field_bit_size = 12,
11464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11465 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11467 .field_info_spec = {
11468 .description = "tl2_ovlan_vid",
11469 .field_bit_size = 12,
11470 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11471 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11475 .field_info_mask = {
11476 .description = "mac1_addr",
11477 .field_bit_size = 48,
11478 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11479 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11481 .field_info_spec = {
11482 .description = "mac1_addr",
11483 .field_bit_size = 48,
11484 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11485 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11489 .field_info_mask = {
11490 .description = "l2_num_vtags",
11491 .field_bit_size = 2,
11492 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11493 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11495 .field_info_spec = {
11496 .description = "l2_num_vtags",
11497 .field_bit_size = 2,
11498 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11499 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11503 .field_info_mask = {
11504 .description = "tl2_num_vtags",
11505 .field_bit_size = 2,
11506 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11507 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11509 .field_info_spec = {
11510 .description = "tl2_num_vtags",
11511 .field_bit_size = 2,
11512 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11513 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11517 .field_info_mask = {
11518 .description = "tun_hdr_type",
11519 .field_bit_size = 4,
11520 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11521 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11523 .field_info_spec = {
11524 .description = "tun_hdr_type",
11525 .field_bit_size = 4,
11526 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11527 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11531 .field_info_mask = {
11532 .description = "key_type",
11533 .field_bit_size = 2,
11534 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11535 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11537 .field_info_spec = {
11538 .description = "key_type",
11539 .field_bit_size = 2,
11540 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11541 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11545 .field_info_mask = {
11546 .description = "valid",
11547 .field_bit_size = 1,
11548 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11549 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11553 .field_info_spec = {
11554 .description = "valid",
11555 .field_bit_size = 1,
11556 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11557 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11562 /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_rd_egr0 */
11564 .field_info_mask = {
11565 .description = "svif",
11566 .field_bit_size = 8,
11567 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11568 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11572 .field_info_spec = {
11573 .description = "svif",
11574 .field_bit_size = 8,
11575 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11576 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11578 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
11579 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
11582 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_egr0 */
11584 .field_info_mask = {
11585 .description = "l2_ivlan_vid",
11586 .field_bit_size = 12,
11587 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11588 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11590 .field_info_spec = {
11591 .description = "l2_ivlan_vid",
11592 .field_bit_size = 12,
11593 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11594 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11598 .field_info_mask = {
11599 .description = "l2_ovlan_vid",
11600 .field_bit_size = 12,
11601 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11602 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11604 .field_info_spec = {
11605 .description = "l2_ovlan_vid",
11606 .field_bit_size = 12,
11607 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11608 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11612 .field_info_mask = {
11613 .description = "mac0_addr",
11614 .field_bit_size = 48,
11615 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11616 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11618 .field_info_spec = {
11619 .description = "mac0_addr",
11620 .field_bit_size = 48,
11621 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11622 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11626 .field_info_mask = {
11627 .description = "svif",
11628 .field_bit_size = 8,
11629 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11630 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11634 .field_info_spec = {
11635 .description = "svif",
11636 .field_bit_size = 8,
11637 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11638 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11640 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
11641 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
11645 .field_info_mask = {
11646 .description = "sparif",
11647 .field_bit_size = 4,
11648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11649 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11651 .field_info_spec = {
11652 .description = "sparif",
11653 .field_bit_size = 4,
11654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11655 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11659 .field_info_mask = {
11660 .description = "tl2_ivlan_vid",
11661 .field_bit_size = 12,
11662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11663 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11665 .field_info_spec = {
11666 .description = "tl2_ivlan_vid",
11667 .field_bit_size = 12,
11668 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11669 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11673 .field_info_mask = {
11674 .description = "tl2_ovlan_vid",
11675 .field_bit_size = 12,
11676 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11677 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11679 .field_info_spec = {
11680 .description = "tl2_ovlan_vid",
11681 .field_bit_size = 12,
11682 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11683 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11687 .field_info_mask = {
11688 .description = "mac1_addr",
11689 .field_bit_size = 48,
11690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11691 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11693 .field_info_spec = {
11694 .description = "mac1_addr",
11695 .field_bit_size = 48,
11696 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11697 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11701 .field_info_mask = {
11702 .description = "l2_num_vtags",
11703 .field_bit_size = 2,
11704 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11705 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11707 .field_info_spec = {
11708 .description = "l2_num_vtags",
11709 .field_bit_size = 2,
11710 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11711 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11715 .field_info_mask = {
11716 .description = "tl2_num_vtags",
11717 .field_bit_size = 2,
11718 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11719 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11721 .field_info_spec = {
11722 .description = "tl2_num_vtags",
11723 .field_bit_size = 2,
11724 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11725 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11729 .field_info_mask = {
11730 .description = "tun_hdr_type",
11731 .field_bit_size = 4,
11732 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11733 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11735 .field_info_spec = {
11736 .description = "tun_hdr_type",
11737 .field_bit_size = 4,
11738 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11739 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11743 .field_info_mask = {
11744 .description = "key_type",
11745 .field_bit_size = 2,
11746 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11747 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11749 .field_info_spec = {
11750 .description = "key_type",
11751 .field_bit_size = 2,
11752 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11753 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11757 .field_info_mask = {
11758 .description = "valid",
11759 .field_bit_size = 1,
11760 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11761 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11765 .field_info_spec = {
11766 .description = "valid",
11767 .field_bit_size = 1,
11768 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11769 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11774 /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
11776 .field_info_mask = {
11777 .description = "svif",
11778 .field_bit_size = 8,
11779 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11780 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11784 .field_info_spec = {
11785 .description = "svif",
11786 .field_bit_size = 8,
11787 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11788 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11790 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
11791 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
11794 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_dtagged_ing0 */
11796 .field_info_mask = {
11797 .description = "l2_ivlan_vid",
11798 .field_bit_size = 12,
11799 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11800 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11802 .field_info_spec = {
11803 .description = "l2_ivlan_vid",
11804 .field_bit_size = 12,
11805 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11806 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11810 .field_info_mask = {
11811 .description = "l2_ovlan_vid",
11812 .field_bit_size = 12,
11813 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11814 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11819 .field_info_spec = {
11820 .description = "l2_ovlan_vid",
11821 .field_bit_size = 12,
11822 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11823 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11825 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
11826 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
11830 .field_info_mask = {
11831 .description = "mac0_addr",
11832 .field_bit_size = 48,
11833 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11834 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11836 .field_info_spec = {
11837 .description = "mac0_addr",
11838 .field_bit_size = 48,
11839 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11840 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11844 .field_info_mask = {
11845 .description = "svif",
11846 .field_bit_size = 8,
11847 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11848 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11852 .field_info_spec = {
11853 .description = "svif",
11854 .field_bit_size = 8,
11855 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11856 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11858 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
11859 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
11863 .field_info_mask = {
11864 .description = "sparif",
11865 .field_bit_size = 4,
11866 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11867 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11869 .field_info_spec = {
11870 .description = "sparif",
11871 .field_bit_size = 4,
11872 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11873 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11877 .field_info_mask = {
11878 .description = "tl2_ivlan_vid",
11879 .field_bit_size = 12,
11880 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11881 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11883 .field_info_spec = {
11884 .description = "tl2_ivlan_vid",
11885 .field_bit_size = 12,
11886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11887 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11891 .field_info_mask = {
11892 .description = "tl2_ovlan_vid",
11893 .field_bit_size = 12,
11894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11895 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11897 .field_info_spec = {
11898 .description = "tl2_ovlan_vid",
11899 .field_bit_size = 12,
11900 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11901 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11905 .field_info_mask = {
11906 .description = "mac1_addr",
11907 .field_bit_size = 48,
11908 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11909 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11911 .field_info_spec = {
11912 .description = "mac1_addr",
11913 .field_bit_size = 48,
11914 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11915 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11919 .field_info_mask = {
11920 .description = "l2_num_vtags",
11921 .field_bit_size = 2,
11922 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11923 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11927 .field_info_spec = {
11928 .description = "l2_num_vtags",
11929 .field_bit_size = 2,
11930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11931 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11937 .field_info_mask = {
11938 .description = "tl2_num_vtags",
11939 .field_bit_size = 2,
11940 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11941 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11943 .field_info_spec = {
11944 .description = "tl2_num_vtags",
11945 .field_bit_size = 2,
11946 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11947 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11951 .field_info_mask = {
11952 .description = "tun_hdr_type",
11953 .field_bit_size = 4,
11954 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11955 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11957 .field_info_spec = {
11958 .description = "tun_hdr_type",
11959 .field_bit_size = 4,
11960 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11961 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11965 .field_info_mask = {
11966 .description = "key_type",
11967 .field_bit_size = 2,
11968 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11969 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11971 .field_info_spec = {
11972 .description = "key_type",
11973 .field_bit_size = 2,
11974 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11975 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11979 .field_info_mask = {
11980 .description = "valid",
11981 .field_bit_size = 1,
11982 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11983 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11987 .field_info_spec = {
11988 .description = "valid",
11989 .field_bit_size = 1,
11990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11991 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11996 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_stagged_ing0 */
11998 .field_info_mask = {
11999 .description = "l2_ivlan_vid",
12000 .field_bit_size = 12,
12001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12002 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
12007 .field_info_spec = {
12008 .description = "l2_ivlan_vid",
12009 .field_bit_size = 12,
12010 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12011 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12013 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
12014 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
12018 .field_info_mask = {
12019 .description = "l2_ovlan_vid",
12020 .field_bit_size = 12,
12021 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12022 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12024 .field_info_spec = {
12025 .description = "l2_ovlan_vid",
12026 .field_bit_size = 12,
12027 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12028 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12032 .field_info_mask = {
12033 .description = "mac0_addr",
12034 .field_bit_size = 48,
12035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12036 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12038 .field_info_spec = {
12039 .description = "mac0_addr",
12040 .field_bit_size = 48,
12041 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12042 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12046 .field_info_mask = {
12047 .description = "svif",
12048 .field_bit_size = 8,
12049 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12050 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
12054 .field_info_spec = {
12055 .description = "svif",
12056 .field_bit_size = 8,
12057 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12058 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12060 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
12061 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
12065 .field_info_mask = {
12066 .description = "sparif",
12067 .field_bit_size = 4,
12068 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12069 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12071 .field_info_spec = {
12072 .description = "sparif",
12073 .field_bit_size = 4,
12074 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12075 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12079 .field_info_mask = {
12080 .description = "tl2_ivlan_vid",
12081 .field_bit_size = 12,
12082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12085 .field_info_spec = {
12086 .description = "tl2_ivlan_vid",
12087 .field_bit_size = 12,
12088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12089 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12093 .field_info_mask = {
12094 .description = "tl2_ovlan_vid",
12095 .field_bit_size = 12,
12096 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12097 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12099 .field_info_spec = {
12100 .description = "tl2_ovlan_vid",
12101 .field_bit_size = 12,
12102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12103 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12107 .field_info_mask = {
12108 .description = "mac1_addr",
12109 .field_bit_size = 48,
12110 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12111 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12113 .field_info_spec = {
12114 .description = "mac1_addr",
12115 .field_bit_size = 48,
12116 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12117 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12121 .field_info_mask = {
12122 .description = "l2_num_vtags",
12123 .field_bit_size = 2,
12124 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12125 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
12129 .field_info_spec = {
12130 .description = "l2_num_vtags",
12131 .field_bit_size = 2,
12132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12133 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12139 .field_info_mask = {
12140 .description = "tl2_num_vtags",
12141 .field_bit_size = 2,
12142 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12143 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12145 .field_info_spec = {
12146 .description = "tl2_num_vtags",
12147 .field_bit_size = 2,
12148 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12149 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12153 .field_info_mask = {
12154 .description = "tun_hdr_type",
12155 .field_bit_size = 4,
12156 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12157 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12159 .field_info_spec = {
12160 .description = "tun_hdr_type",
12161 .field_bit_size = 4,
12162 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12163 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12167 .field_info_mask = {
12168 .description = "key_type",
12169 .field_bit_size = 2,
12170 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12171 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12173 .field_info_spec = {
12174 .description = "key_type",
12175 .field_bit_size = 2,
12176 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12177 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12181 .field_info_mask = {
12182 .description = "valid",
12183 .field_bit_size = 1,
12184 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12185 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12189 .field_info_spec = {
12190 .description = "valid",
12191 .field_bit_size = 1,
12192 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12193 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12200 struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = {
12201 /* class_tid: 1, , table: l2_cntxt_tcam.0 */
12203 .description = "l2_cntxt_id",
12204 .field_bit_size = 10,
12205 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12206 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12208 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
12209 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
12212 .description = "prof_func_id",
12213 .field_bit_size = 7,
12214 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12215 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
12217 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
12218 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}
12221 .description = "l2_byp_lkup_en",
12222 .field_bit_size = 1,
12223 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12224 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12227 .description = "parif",
12228 .field_bit_size = 4,
12229 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12230 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12232 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
12233 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
12236 .description = "allowed_pri",
12237 .field_bit_size = 8,
12238 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12239 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12242 .description = "default_pri",
12243 .field_bit_size = 3,
12244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12245 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12248 .description = "allowed_tpid",
12249 .field_bit_size = 6,
12250 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12251 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12254 .description = "default_tpid",
12255 .field_bit_size = 3,
12256 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12257 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12260 .description = "bd_act_en",
12261 .field_bit_size = 1,
12262 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12263 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12266 .description = "sp_rec_ptr",
12267 .field_bit_size = 16,
12268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12269 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12272 .description = "byp_sp_lkup",
12273 .field_bit_size = 1,
12274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12275 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12280 .description = "pri_anti_spoof_ctl",
12281 .field_bit_size = 2,
12282 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12283 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12286 .description = "tpid_anti_spoof_ctl",
12287 .field_bit_size = 2,
12288 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12289 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12291 /* class_tid: 1, , table: mac_addr_cache.wr */
12293 .description = "rid",
12294 .field_bit_size = 32,
12295 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12296 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12298 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
12299 BNXT_ULP_RF_IDX_RID & 0xff}
12302 .description = "l2_cntxt_tcam_index",
12303 .field_bit_size = 10,
12304 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12305 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12308 .description = "l2_cntxt_id",
12309 .field_bit_size = 10,
12310 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12311 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12313 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
12314 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
12317 .description = "src_property_ptr",
12318 .field_bit_size = 10,
12319 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12320 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12322 /* class_tid: 1, , table: profile_tcam.ipv4 */
12324 .description = "wc_key_id",
12325 .field_bit_size = 4,
12326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12327 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12330 .description = "wc_profile_id",
12331 .field_bit_size = 8,
12332 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12333 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12336 .description = "wc_search_en",
12337 .field_bit_size = 1,
12338 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12339 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12342 .description = "em_key_mask.0",
12343 .field_bit_size = 1,
12344 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12345 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12350 .description = "em_key_mask.1",
12351 .field_bit_size = 1,
12352 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12353 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12355 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
12356 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
12359 .description = "em_key_mask.2",
12360 .field_bit_size = 1,
12361 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12362 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12364 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
12365 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
12368 .description = "em_key_mask.3",
12369 .field_bit_size = 1,
12370 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12371 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12373 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
12374 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
12377 .description = "em_key_mask.4",
12378 .field_bit_size = 1,
12379 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12380 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12382 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
12383 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}
12386 .description = "em_key_mask.5",
12387 .field_bit_size = 1,
12388 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
12389 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12391 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
12392 BNXT_ULP_CF_IDX_O_L4 & 0xff},
12393 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12395 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
12396 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
12397 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12399 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
12400 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
12403 .description = "em_key_mask.6",
12404 .field_bit_size = 1,
12405 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
12406 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12408 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
12409 BNXT_ULP_CF_IDX_O_L4 & 0xff},
12410 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12412 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
12413 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
12414 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12416 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
12417 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
12420 .description = "em_key_mask.7",
12421 .field_bit_size = 1,
12422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12423 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12426 .description = "em_key_mask.8",
12427 .field_bit_size = 1,
12428 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12429 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12432 .description = "em_key_mask.9",
12433 .field_bit_size = 1,
12434 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12435 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12438 .description = "em_key_id",
12439 .field_bit_size = 5,
12440 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12441 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12446 .description = "em_profile_id",
12447 .field_bit_size = 8,
12448 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12449 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12451 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
12452 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
12455 .description = "em_search_en",
12456 .field_bit_size = 1,
12457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12458 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12463 .description = "pl_byp_lkup_en",
12464 .field_bit_size = 1,
12465 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12466 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12468 /* class_tid: 1, , table: profile_tcam.ipv6 */
12470 .description = "wc_key_id",
12471 .field_bit_size = 4,
12472 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12473 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12476 .description = "wc_profile_id",
12477 .field_bit_size = 8,
12478 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12479 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12482 .description = "wc_search_en",
12483 .field_bit_size = 1,
12484 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12485 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12488 .description = "em_key_mask.0",
12489 .field_bit_size = 1,
12490 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12491 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12496 .description = "em_key_mask.1",
12497 .field_bit_size = 1,
12498 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12499 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12502 .description = "em_key_mask.2",
12503 .field_bit_size = 1,
12504 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12505 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12507 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
12508 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
12511 .description = "em_key_mask.3",
12512 .field_bit_size = 1,
12513 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12514 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12516 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
12517 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
12520 .description = "em_key_mask.4",
12521 .field_bit_size = 1,
12522 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12523 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12525 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
12526 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
12529 .description = "em_key_mask.5",
12530 .field_bit_size = 1,
12531 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12532 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12534 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
12535 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}
12538 .description = "em_key_mask.6",
12539 .field_bit_size = 1,
12540 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
12541 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12543 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
12544 BNXT_ULP_CF_IDX_O_L4 & 0xff},
12545 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12547 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
12548 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
12549 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12551 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
12552 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
12555 .description = "em_key_mask.7",
12556 .field_bit_size = 1,
12557 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
12558 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12560 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
12561 BNXT_ULP_CF_IDX_O_L4 & 0xff},
12562 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12564 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
12565 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
12566 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12568 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
12569 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
12572 .description = "em_key_mask.8",
12573 .field_bit_size = 1,
12574 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12575 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12578 .description = "em_key_mask.9",
12579 .field_bit_size = 1,
12580 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12581 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12584 .description = "em_key_id",
12585 .field_bit_size = 5,
12586 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12587 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12592 .description = "em_profile_id",
12593 .field_bit_size = 8,
12594 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12595 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12597 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
12598 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
12601 .description = "em_search_en",
12602 .field_bit_size = 1,
12603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12604 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12609 .description = "pl_byp_lkup_en",
12610 .field_bit_size = 1,
12611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12612 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12614 /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
12616 .description = "wc_key_id",
12617 .field_bit_size = 4,
12618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12619 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12622 .description = "wc_profile_id",
12623 .field_bit_size = 8,
12624 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12625 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12628 .description = "wc_search_en",
12629 .field_bit_size = 1,
12630 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12631 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12634 .description = "em_key_mask.0",
12635 .field_bit_size = 1,
12636 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12637 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12642 .description = "em_key_mask.1",
12643 .field_bit_size = 1,
12644 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12645 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12648 .description = "em_key_mask.2",
12649 .field_bit_size = 1,
12650 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12651 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12654 .description = "em_key_mask.3",
12655 .field_bit_size = 1,
12656 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12657 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12660 .description = "em_key_mask.4",
12661 .field_bit_size = 1,
12662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12663 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12668 .description = "em_key_mask.5",
12669 .field_bit_size = 1,
12670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12671 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12676 .description = "em_key_mask.6",
12677 .field_bit_size = 1,
12678 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12679 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12684 .description = "em_key_mask.7",
12685 .field_bit_size = 1,
12686 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12687 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12690 .description = "em_key_mask.8",
12691 .field_bit_size = 1,
12692 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12693 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12696 .description = "em_key_mask.9",
12697 .field_bit_size = 1,
12698 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12699 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12702 .description = "em_key_id",
12703 .field_bit_size = 5,
12704 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12705 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12710 .description = "em_profile_id",
12711 .field_bit_size = 8,
12712 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12713 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12715 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
12716 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
12719 .description = "em_search_en",
12720 .field_bit_size = 1,
12721 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12722 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12727 .description = "pl_byp_lkup_en",
12728 .field_bit_size = 1,
12729 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12730 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12732 /* class_tid: 1, , table: profile_tcam_cache.wr */
12734 .description = "rid",
12735 .field_bit_size = 32,
12736 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12737 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12739 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
12740 BNXT_ULP_RF_IDX_RID & 0xff}
12743 .description = "profile_tcam_index",
12744 .field_bit_size = 10,
12745 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12746 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12748 (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
12749 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
12752 .description = "em_profile_id",
12753 .field_bit_size = 8,
12754 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12755 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12757 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
12758 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
12761 .description = "wc_profile_id",
12762 .field_bit_size = 8,
12763 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12764 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12767 .description = "flow_sig_id",
12768 .field_bit_size = 64,
12769 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12770 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12772 (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
12773 BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
12775 /* class_tid: 1, , table: em.ipv4 */
12777 .description = "act_rec_ptr",
12778 .field_bit_size = 33,
12779 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12780 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12782 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12783 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12786 .description = "ext_flow_cntr",
12787 .field_bit_size = 1,
12788 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12789 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12792 .description = "act_rec_int",
12793 .field_bit_size = 1,
12794 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12795 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12798 .description = "act_rec_size",
12799 .field_bit_size = 5,
12800 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12801 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12804 .description = "key_size",
12805 .field_bit_size = 9,
12806 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12807 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12810 .description = "reserved",
12811 .field_bit_size = 11,
12812 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12813 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12816 .description = "strength",
12817 .field_bit_size = 2,
12818 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12819 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12824 .description = "l1_cacheable",
12825 .field_bit_size = 1,
12826 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12827 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12830 .description = "valid",
12831 .field_bit_size = 1,
12832 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12833 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12837 /* class_tid: 1, , table: eem.ipv4 */
12839 .description = "act_rec_ptr",
12840 .field_bit_size = 33,
12841 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12842 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12844 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12845 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12848 .description = "ext_flow_cntr",
12849 .field_bit_size = 1,
12850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12851 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12854 .description = "act_rec_int",
12855 .field_bit_size = 1,
12856 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12857 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12860 .description = "act_rec_size",
12861 .field_bit_size = 5,
12862 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12863 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12865 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
12866 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
12869 .description = "key_size",
12870 .field_bit_size = 9,
12871 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12872 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12878 .description = "reserved",
12879 .field_bit_size = 11,
12880 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12881 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12884 .description = "strength",
12885 .field_bit_size = 2,
12886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12887 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12892 .description = "l1_cacheable",
12893 .field_bit_size = 1,
12894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12895 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12898 .description = "valid",
12899 .field_bit_size = 1,
12900 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12901 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12905 /* class_tid: 1, , table: em.ipv6 */
12907 .description = "act_rec_ptr",
12908 .field_bit_size = 33,
12909 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12910 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12912 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12913 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12916 .description = "ext_flow_cntr",
12917 .field_bit_size = 1,
12918 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12919 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12922 .description = "act_rec_int",
12923 .field_bit_size = 1,
12924 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12925 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12928 .description = "act_rec_size",
12929 .field_bit_size = 5,
12930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12931 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12934 .description = "key_size",
12935 .field_bit_size = 9,
12936 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12937 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12940 .description = "reserved",
12941 .field_bit_size = 11,
12942 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12943 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12946 .description = "strength",
12947 .field_bit_size = 2,
12948 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12949 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12954 .description = "l1_cacheable",
12955 .field_bit_size = 1,
12956 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12957 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12960 .description = "valid",
12961 .field_bit_size = 1,
12962 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12963 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12967 /* class_tid: 1, , table: eem.ipv6 */
12969 .description = "act_rec_ptr",
12970 .field_bit_size = 33,
12971 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12972 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12974 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12975 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12978 .description = "ext_flow_cntr",
12979 .field_bit_size = 1,
12980 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12981 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12984 .description = "act_rec_int",
12985 .field_bit_size = 1,
12986 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12987 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12990 .description = "act_rec_size",
12991 .field_bit_size = 5,
12992 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12993 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12995 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
12996 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
12999 .description = "key_size",
13000 .field_bit_size = 9,
13001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13002 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13008 .description = "reserved",
13009 .field_bit_size = 11,
13010 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13011 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13014 .description = "strength",
13015 .field_bit_size = 2,
13016 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13017 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13022 .description = "l1_cacheable",
13023 .field_bit_size = 1,
13024 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13025 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13028 .description = "valid",
13029 .field_bit_size = 1,
13030 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13031 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13035 /* class_tid: 1, , table: em.vxlan */
13037 .description = "act_rec_ptr",
13038 .field_bit_size = 33,
13039 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13040 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13042 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
13043 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
13046 .description = "ext_flow_cntr",
13047 .field_bit_size = 1,
13048 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13049 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13052 .description = "act_rec_int",
13053 .field_bit_size = 1,
13054 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13055 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13058 .description = "act_rec_size",
13059 .field_bit_size = 5,
13060 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13061 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13064 .description = "key_size",
13065 .field_bit_size = 9,
13066 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13067 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13070 .description = "reserved",
13071 .field_bit_size = 11,
13072 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13073 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13076 .description = "strength",
13077 .field_bit_size = 2,
13078 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13079 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13084 .description = "l1_cacheable",
13085 .field_bit_size = 1,
13086 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13087 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13090 .description = "valid",
13091 .field_bit_size = 1,
13092 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13093 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13097 /* class_tid: 1, , table: eem.vxlan */
13099 .description = "act_rec_ptr",
13100 .field_bit_size = 33,
13101 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13102 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13104 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
13105 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
13108 .description = "ext_flow_cntr",
13109 .field_bit_size = 1,
13110 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13111 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13114 .description = "act_rec_int",
13115 .field_bit_size = 1,
13116 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13117 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13120 .description = "act_rec_size",
13121 .field_bit_size = 5,
13122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13123 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13125 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
13126 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
13129 .description = "key_size",
13130 .field_bit_size = 9,
13131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13132 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13138 .description = "reserved",
13139 .field_bit_size = 11,
13140 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13141 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13144 .description = "strength",
13145 .field_bit_size = 2,
13146 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13147 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13152 .description = "l1_cacheable",
13153 .field_bit_size = 1,
13154 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13155 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13158 .description = "valid",
13159 .field_bit_size = 1,
13160 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13161 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13165 /* class_tid: 2, , table: l2_cntxt_tcam.1 */
13167 .description = "l2_cntxt_id",
13168 .field_bit_size = 10,
13169 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13170 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13173 .description = "prof_func_id",
13174 .field_bit_size = 7,
13175 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13176 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13179 .description = "l2_byp_lkup_en",
13180 .field_bit_size = 1,
13181 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13182 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13185 .description = "parif",
13186 .field_bit_size = 4,
13187 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13188 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13191 .description = "allowed_pri",
13192 .field_bit_size = 8,
13193 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13194 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13197 .description = "default_pri",
13198 .field_bit_size = 3,
13199 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13200 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13203 .description = "allowed_tpid",
13204 .field_bit_size = 6,
13205 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13206 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13209 .description = "default_tpid",
13210 .field_bit_size = 3,
13211 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13212 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13215 .description = "bd_act_en",
13216 .field_bit_size = 1,
13217 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13218 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13221 .description = "sp_rec_ptr",
13222 .field_bit_size = 16,
13223 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13224 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13227 .description = "byp_sp_lkup",
13228 .field_bit_size = 1,
13229 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13230 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13235 .description = "pri_anti_spoof_ctl",
13236 .field_bit_size = 2,
13237 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13238 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13241 .description = "tpid_anti_spoof_ctl",
13242 .field_bit_size = 2,
13243 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13244 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13246 /* class_tid: 2, , table: tunnel_cache.wr */
13248 .description = "rid",
13249 .field_bit_size = 32,
13250 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13251 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13253 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
13254 BNXT_ULP_RF_IDX_RID & 0xff}
13257 .description = "l2_cntxt_tcam_index",
13258 .field_bit_size = 10,
13259 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13260 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13263 .description = "l2_cntxt_id",
13264 .field_bit_size = 10,
13265 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13266 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13268 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13269 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13271 /* class_tid: 2, , table: l2_cntxt_tcam.0 */
13273 .description = "l2_cntxt_id",
13274 .field_bit_size = 10,
13275 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13276 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13278 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13279 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13282 .description = "prof_func_id",
13283 .field_bit_size = 7,
13284 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13285 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13287 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
13288 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
13291 .description = "l2_byp_lkup_en",
13292 .field_bit_size = 1,
13293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13294 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13297 .description = "parif",
13298 .field_bit_size = 4,
13299 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13300 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13302 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
13303 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
13306 .description = "allowed_pri",
13307 .field_bit_size = 8,
13308 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13309 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13312 .description = "default_pri",
13313 .field_bit_size = 3,
13314 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13315 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13318 .description = "allowed_tpid",
13319 .field_bit_size = 6,
13320 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13321 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13324 .description = "default_tpid",
13325 .field_bit_size = 3,
13326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13327 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13330 .description = "bd_act_en",
13331 .field_bit_size = 1,
13332 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13333 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13336 .description = "sp_rec_ptr",
13337 .field_bit_size = 16,
13338 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13339 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13342 .description = "byp_sp_lkup",
13343 .field_bit_size = 1,
13344 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13345 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13350 .description = "pri_anti_spoof_ctl",
13351 .field_bit_size = 2,
13352 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13353 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13356 .description = "tpid_anti_spoof_ctl",
13357 .field_bit_size = 2,
13358 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13359 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13361 /* class_tid: 2, , table: mac_addr_cache.wr */
13363 .description = "rid",
13364 .field_bit_size = 32,
13365 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13366 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13368 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
13369 BNXT_ULP_RF_IDX_RID & 0xff}
13372 .description = "l2_cntxt_tcam_index",
13373 .field_bit_size = 10,
13374 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13375 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13378 .description = "l2_cntxt_id",
13379 .field_bit_size = 10,
13380 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13381 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13383 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13384 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13387 .description = "src_property_ptr",
13388 .field_bit_size = 10,
13389 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13390 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13392 /* class_tid: 2, , table: profile_tcam.f2 */
13394 .description = "wc_key_id",
13395 .field_bit_size = 4,
13396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13397 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13400 .description = "wc_profile_id",
13401 .field_bit_size = 8,
13402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13403 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13406 .description = "wc_search_en",
13407 .field_bit_size = 1,
13408 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13409 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13412 .description = "em_key_mask.0",
13413 .field_bit_size = 1,
13414 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13415 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13420 .description = "em_key_mask.1",
13421 .field_bit_size = 1,
13422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13423 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13428 .description = "em_key_mask.2",
13429 .field_bit_size = 1,
13430 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13431 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13434 .description = "em_key_mask.3",
13435 .field_bit_size = 1,
13436 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13437 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13442 .description = "em_key_mask.4",
13443 .field_bit_size = 1,
13444 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13445 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13450 .description = "em_key_mask.5",
13451 .field_bit_size = 1,
13452 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13453 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13456 .description = "em_key_mask.6",
13457 .field_bit_size = 1,
13458 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13459 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13462 .description = "em_key_mask.7",
13463 .field_bit_size = 1,
13464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13465 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13468 .description = "em_key_mask.8",
13469 .field_bit_size = 1,
13470 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13471 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13474 .description = "em_key_mask.9",
13475 .field_bit_size = 1,
13476 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13477 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13480 .description = "em_key_id",
13481 .field_bit_size = 5,
13482 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13483 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13488 .description = "em_profile_id",
13489 .field_bit_size = 8,
13490 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13491 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13493 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
13494 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
13497 .description = "em_search_en",
13498 .field_bit_size = 1,
13499 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13500 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13505 .description = "pl_byp_lkup_en",
13506 .field_bit_size = 1,
13507 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13508 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13510 /* class_tid: 2, , table: profile_tcam_cache.f2_wr */
13512 .description = "rid",
13513 .field_bit_size = 32,
13514 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13515 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13517 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
13518 BNXT_ULP_RF_IDX_RID & 0xff}
13521 .description = "profile_tcam_index",
13522 .field_bit_size = 10,
13523 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13524 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13526 (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
13527 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
13530 .description = "em_profile_id",
13531 .field_bit_size = 8,
13532 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13533 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13535 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
13536 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
13539 .description = "wc_profile_id",
13540 .field_bit_size = 8,
13541 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13542 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13545 .description = "flow_sig_id",
13546 .field_bit_size = 64,
13547 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13548 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13550 (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
13551 BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
13553 /* class_tid: 2, , table: em.tun */
13555 .description = "act_rec_ptr",
13556 .field_bit_size = 33,
13557 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13558 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13560 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
13561 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
13564 .description = "ext_flow_cntr",
13565 .field_bit_size = 1,
13566 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13567 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13570 .description = "act_rec_int",
13571 .field_bit_size = 1,
13572 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13573 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13576 .description = "act_rec_size",
13577 .field_bit_size = 5,
13578 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13579 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13582 .description = "key_size",
13583 .field_bit_size = 9,
13584 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13585 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13588 .description = "reserved",
13589 .field_bit_size = 11,
13590 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13591 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13594 .description = "strength",
13595 .field_bit_size = 2,
13596 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13597 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13602 .description = "l1_cacheable",
13603 .field_bit_size = 1,
13604 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13605 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13608 .description = "valid",
13609 .field_bit_size = 1,
13610 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13611 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13615 /* class_tid: 2, , table: eem.tun */
13617 .description = "act_rec_ptr",
13618 .field_bit_size = 33,
13619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13620 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13622 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
13623 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
13626 .description = "ext_flow_cntr",
13627 .field_bit_size = 1,
13628 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13629 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13632 .description = "act_rec_int",
13633 .field_bit_size = 1,
13634 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13635 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13638 .description = "act_rec_size",
13639 .field_bit_size = 5,
13640 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13641 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13643 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
13644 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
13647 .description = "key_size",
13648 .field_bit_size = 9,
13649 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13650 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13656 .description = "reserved",
13657 .field_bit_size = 11,
13658 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13659 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13662 .description = "strength",
13663 .field_bit_size = 2,
13664 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13665 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13670 .description = "l1_cacheable",
13671 .field_bit_size = 1,
13672 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13673 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13676 .description = "valid",
13677 .field_bit_size = 1,
13678 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13679 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13683 /* class_tid: 3, , table: l2_cntxt_tcam.0 */
13685 .description = "l2_cntxt_id",
13686 .field_bit_size = 10,
13687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13688 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13690 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13691 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13694 .description = "prof_func_id",
13695 .field_bit_size = 7,
13696 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13697 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13699 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
13700 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}
13703 .description = "l2_byp_lkup_en",
13704 .field_bit_size = 1,
13705 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13706 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13709 .description = "parif",
13710 .field_bit_size = 4,
13711 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
13712 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13714 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
13715 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff},
13716 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
13718 ULP_WP_SYM_LOOPBACK_PARIF},
13719 .field_src3 = BNXT_ULP_FIELD_SRC_CF,
13721 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
13722 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
13725 .description = "allowed_pri",
13726 .field_bit_size = 8,
13727 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13728 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13731 .description = "default_pri",
13732 .field_bit_size = 3,
13733 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13734 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13737 .description = "allowed_tpid",
13738 .field_bit_size = 6,
13739 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13740 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13743 .description = "default_tpid",
13744 .field_bit_size = 3,
13745 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13746 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13749 .description = "bd_act_en",
13750 .field_bit_size = 1,
13751 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13752 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13755 .description = "sp_rec_ptr",
13756 .field_bit_size = 16,
13757 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13758 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13760 (BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff,
13761 BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff}
13764 .description = "byp_sp_lkup",
13765 .field_bit_size = 1,
13766 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13767 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13772 .description = "pri_anti_spoof_ctl",
13773 .field_bit_size = 2,
13774 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13775 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13778 .description = "tpid_anti_spoof_ctl",
13779 .field_bit_size = 2,
13780 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13781 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13783 /* class_tid: 3, , table: mac_addr_cache.wr */
13785 .description = "rid",
13786 .field_bit_size = 32,
13787 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13788 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13790 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
13791 BNXT_ULP_RF_IDX_RID & 0xff}
13794 .description = "l2_cntxt_tcam_index",
13795 .field_bit_size = 10,
13796 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13797 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13799 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
13800 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
13803 .description = "l2_cntxt_id",
13804 .field_bit_size = 10,
13805 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13806 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13808 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13809 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13812 .description = "src_property_ptr",
13813 .field_bit_size = 10,
13814 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13815 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13817 /* class_tid: 3, , table: profile_tcam.ipv4 */
13819 .description = "wc_key_id",
13820 .field_bit_size = 4,
13821 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13822 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13825 .description = "wc_profile_id",
13826 .field_bit_size = 8,
13827 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13828 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13831 .description = "wc_search_en",
13832 .field_bit_size = 1,
13833 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13834 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13837 .description = "em_key_mask.0",
13838 .field_bit_size = 1,
13839 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13840 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13845 .description = "em_key_mask.1",
13846 .field_bit_size = 1,
13847 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13848 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13850 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
13851 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
13854 .description = "em_key_mask.2",
13855 .field_bit_size = 1,
13856 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13857 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13859 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
13860 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
13863 .description = "em_key_mask.3",
13864 .field_bit_size = 1,
13865 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13866 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13868 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
13869 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
13872 .description = "em_key_mask.4",
13873 .field_bit_size = 1,
13874 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13875 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13877 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
13878 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}
13881 .description = "em_key_mask.5",
13882 .field_bit_size = 1,
13883 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
13884 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13886 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
13887 BNXT_ULP_CF_IDX_O_L4 & 0xff},
13888 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13890 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
13891 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
13892 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13894 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
13895 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
13898 .description = "em_key_mask.6",
13899 .field_bit_size = 1,
13900 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
13901 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13903 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
13904 BNXT_ULP_CF_IDX_O_L4 & 0xff},
13905 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13907 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
13908 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
13909 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13911 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
13912 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
13915 .description = "em_key_mask.7",
13916 .field_bit_size = 1,
13917 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13918 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13921 .description = "em_key_mask.8",
13922 .field_bit_size = 1,
13923 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13924 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13927 .description = "em_key_mask.9",
13928 .field_bit_size = 1,
13929 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13930 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13933 .description = "em_key_id",
13934 .field_bit_size = 5,
13935 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13936 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13941 .description = "em_profile_id",
13942 .field_bit_size = 8,
13943 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13944 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13946 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
13947 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
13950 .description = "em_search_en",
13951 .field_bit_size = 1,
13952 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13953 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13958 .description = "pl_byp_lkup_en",
13959 .field_bit_size = 1,
13960 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13961 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13963 /* class_tid: 3, , table: profile_tcam.ipv6 */
13965 .description = "wc_key_id",
13966 .field_bit_size = 4,
13967 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13968 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13971 .description = "wc_profile_id",
13972 .field_bit_size = 8,
13973 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13974 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13977 .description = "wc_search_en",
13978 .field_bit_size = 1,
13979 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13980 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13983 .description = "em_key_mask.0",
13984 .field_bit_size = 1,
13985 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13986 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13991 .description = "em_key_mask.1",
13992 .field_bit_size = 1,
13993 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13994 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13996 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
13997 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
14000 .description = "em_key_mask.2",
14001 .field_bit_size = 1,
14002 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14003 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14006 .description = "em_key_mask.3",
14007 .field_bit_size = 1,
14008 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14009 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14011 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
14012 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
14015 .description = "em_key_mask.4",
14016 .field_bit_size = 1,
14017 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14018 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14020 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
14021 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
14024 .description = "em_key_mask.5",
14025 .field_bit_size = 1,
14026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14027 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14029 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
14030 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}
14033 .description = "em_key_mask.6",
14034 .field_bit_size = 1,
14035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
14036 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14038 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
14039 BNXT_ULP_CF_IDX_O_L4 & 0xff},
14040 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14042 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
14043 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
14044 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14046 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
14047 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
14050 .description = "em_key_mask.7",
14051 .field_bit_size = 1,
14052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
14053 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14055 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
14056 BNXT_ULP_CF_IDX_O_L4 & 0xff},
14057 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14059 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
14060 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
14061 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14063 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
14064 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
14067 .description = "em_key_mask.8",
14068 .field_bit_size = 1,
14069 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14070 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14073 .description = "em_key_mask.9",
14074 .field_bit_size = 1,
14075 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14076 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14079 .description = "em_key_id",
14080 .field_bit_size = 5,
14081 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14082 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14087 .description = "em_profile_id",
14088 .field_bit_size = 8,
14089 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14090 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14092 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
14093 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
14096 .description = "em_search_en",
14097 .field_bit_size = 1,
14098 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14099 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14104 .description = "pl_byp_lkup_en",
14105 .field_bit_size = 1,
14106 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14107 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14109 /* class_tid: 3, , table: profile_tcam_cache.wr */
14111 .description = "rid",
14112 .field_bit_size = 32,
14113 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14114 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14116 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
14117 BNXT_ULP_RF_IDX_RID & 0xff}
14120 .description = "profile_tcam_index",
14121 .field_bit_size = 10,
14122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14123 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14125 (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
14126 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
14129 .description = "em_profile_id",
14130 .field_bit_size = 8,
14131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14132 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14134 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
14135 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
14138 .description = "wc_profile_id",
14139 .field_bit_size = 8,
14140 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14141 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14144 .description = "flow_sig_id",
14145 .field_bit_size = 64,
14146 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14147 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14149 (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
14150 BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
14152 /* class_tid: 3, , table: em.ipv4 */
14154 .description = "act_rec_ptr",
14155 .field_bit_size = 33,
14156 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14157 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14159 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14160 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14163 .description = "ext_flow_cntr",
14164 .field_bit_size = 1,
14165 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14166 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14169 .description = "act_rec_int",
14170 .field_bit_size = 1,
14171 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14172 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14175 .description = "act_rec_size",
14176 .field_bit_size = 5,
14177 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14178 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14181 .description = "key_size",
14182 .field_bit_size = 9,
14183 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14184 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14187 .description = "reserved",
14188 .field_bit_size = 11,
14189 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14190 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14193 .description = "strength",
14194 .field_bit_size = 2,
14195 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14196 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14201 .description = "l1_cacheable",
14202 .field_bit_size = 1,
14203 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14204 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14207 .description = "valid",
14208 .field_bit_size = 1,
14209 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14210 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14214 /* class_tid: 3, , table: eem.ipv4 */
14216 .description = "act_rec_ptr",
14217 .field_bit_size = 33,
14218 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14219 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14221 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14222 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14225 .description = "ext_flow_cntr",
14226 .field_bit_size = 1,
14227 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14228 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14231 .description = "act_rec_int",
14232 .field_bit_size = 1,
14233 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14234 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14237 .description = "act_rec_size",
14238 .field_bit_size = 5,
14239 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14240 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14242 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
14243 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
14246 .description = "key_size",
14247 .field_bit_size = 9,
14248 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14249 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14255 .description = "reserved",
14256 .field_bit_size = 11,
14257 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14258 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14261 .description = "strength",
14262 .field_bit_size = 2,
14263 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14264 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14269 .description = "l1_cacheable",
14270 .field_bit_size = 1,
14271 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14272 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14275 .description = "valid",
14276 .field_bit_size = 1,
14277 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14278 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14282 /* class_tid: 3, , table: em.ipv6 */
14284 .description = "act_rec_ptr",
14285 .field_bit_size = 33,
14286 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14287 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14289 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14290 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14293 .description = "ext_flow_cntr",
14294 .field_bit_size = 1,
14295 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14296 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14299 .description = "act_rec_int",
14300 .field_bit_size = 1,
14301 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14302 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14305 .description = "act_rec_size",
14306 .field_bit_size = 5,
14307 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14308 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14311 .description = "key_size",
14312 .field_bit_size = 9,
14313 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14314 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14317 .description = "reserved",
14318 .field_bit_size = 11,
14319 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14320 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14323 .description = "strength",
14324 .field_bit_size = 2,
14325 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14326 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14331 .description = "l1_cacheable",
14332 .field_bit_size = 1,
14333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14334 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14337 .description = "valid",
14338 .field_bit_size = 1,
14339 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14340 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14344 /* class_tid: 3, , table: eem.ipv6 */
14346 .description = "act_rec_ptr",
14347 .field_bit_size = 33,
14348 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14349 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14351 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14352 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14355 .description = "ext_flow_cntr",
14356 .field_bit_size = 1,
14357 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14358 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14361 .description = "act_rec_int",
14362 .field_bit_size = 1,
14363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14364 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14367 .description = "act_rec_size",
14368 .field_bit_size = 5,
14369 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14370 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14372 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
14373 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
14376 .description = "key_size",
14377 .field_bit_size = 9,
14378 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14379 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14385 .description = "reserved",
14386 .field_bit_size = 11,
14387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14388 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14391 .description = "strength",
14392 .field_bit_size = 2,
14393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14394 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14399 .description = "l1_cacheable",
14400 .field_bit_size = 1,
14401 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14402 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14405 .description = "valid",
14406 .field_bit_size = 1,
14407 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14408 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14412 /* class_tid: 4, , table: int_full_act_record.ing_0 */
14414 .description = "flow_cntr_ptr",
14415 .field_bit_size = 14,
14416 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14417 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14420 .description = "age_enable",
14421 .field_bit_size = 1,
14422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14423 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14426 .description = "agg_cntr_en",
14427 .field_bit_size = 1,
14428 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14429 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14432 .description = "rate_cntr_en",
14433 .field_bit_size = 1,
14434 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14435 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14438 .description = "flow_cntr_en",
14439 .field_bit_size = 1,
14440 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14441 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14444 .description = "tcpflags_key",
14445 .field_bit_size = 8,
14446 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14447 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14450 .description = "tcpflags_mir",
14451 .field_bit_size = 1,
14452 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14453 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14456 .description = "tcpflags_match",
14457 .field_bit_size = 1,
14458 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14459 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14462 .description = "encap_ptr",
14463 .field_bit_size = 11,
14464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14465 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14468 .description = "dst_ip_ptr",
14469 .field_bit_size = 10,
14470 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14471 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14474 .description = "tcp_dst_port",
14475 .field_bit_size = 16,
14476 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14477 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14480 .description = "src_ip_ptr",
14481 .field_bit_size = 10,
14482 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14483 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14486 .description = "tcp_src_port",
14487 .field_bit_size = 16,
14488 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14489 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14492 .description = "meter_id",
14493 .field_bit_size = 10,
14494 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14495 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14498 .description = "l3_rdir",
14499 .field_bit_size = 1,
14500 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14501 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14504 .description = "tl3_rdir",
14505 .field_bit_size = 1,
14506 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14507 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14510 .description = "l3_ttl_dec",
14511 .field_bit_size = 1,
14512 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14513 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14516 .description = "tl3_ttl_dec",
14517 .field_bit_size = 1,
14518 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14519 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14522 .description = "decap_func",
14523 .field_bit_size = 4,
14524 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14525 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14528 .description = "vnic_or_vport",
14529 .field_bit_size = 12,
14530 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14531 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14533 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
14534 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff}
14537 .description = "pop_vlan",
14538 .field_bit_size = 1,
14539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14543 .description = "meter",
14544 .field_bit_size = 1,
14545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14546 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14549 .description = "mirror",
14550 .field_bit_size = 2,
14551 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14552 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14555 .description = "drop",
14556 .field_bit_size = 1,
14557 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14558 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14561 .description = "hit",
14562 .field_bit_size = 1,
14563 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14564 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14567 .description = "type",
14568 .field_bit_size = 1,
14569 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14570 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14572 /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
14574 .description = "l2_cntxt_id",
14575 .field_bit_size = 10,
14576 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14577 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14579 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
14580 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
14583 .description = "prof_func_id",
14584 .field_bit_size = 7,
14585 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14586 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
14588 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14589 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
14592 .description = "l2_byp_lkup_en",
14593 .field_bit_size = 1,
14594 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14595 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14598 .description = "parif",
14599 .field_bit_size = 4,
14600 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14601 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14603 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
14604 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
14607 .description = "allowed_pri",
14608 .field_bit_size = 8,
14609 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14610 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14613 .description = "default_pri",
14614 .field_bit_size = 3,
14615 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14616 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14619 .description = "allowed_tpid",
14620 .field_bit_size = 6,
14621 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14622 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14625 .description = "default_tpid",
14626 .field_bit_size = 3,
14627 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14628 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14631 .description = "bd_act_en",
14632 .field_bit_size = 1,
14633 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14634 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14637 .description = "sp_rec_ptr",
14638 .field_bit_size = 16,
14639 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14640 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14643 .description = "byp_sp_lkup",
14644 .field_bit_size = 1,
14645 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14646 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14651 .description = "pri_anti_spoof_ctl",
14652 .field_bit_size = 2,
14653 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14654 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14657 .description = "tpid_anti_spoof_ctl",
14658 .field_bit_size = 2,
14659 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14660 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14662 /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_wr */
14664 .description = "rid",
14665 .field_bit_size = 32,
14666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14667 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14669 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
14670 BNXT_ULP_RF_IDX_RID & 0xff}
14673 .description = "l2_cntxt_tcam_index",
14674 .field_bit_size = 10,
14675 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14676 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14678 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
14679 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
14682 .description = "l2_cntxt_id",
14683 .field_bit_size = 10,
14684 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14685 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14687 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
14688 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
14691 .description = "src_property_ptr",
14692 .field_bit_size = 10,
14693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14694 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14696 /* class_tid: 4, , table: parif_def_lkup_arec_ptr.ing_0 */
14698 .description = "act_rec_ptr",
14699 .field_bit_size = 32,
14700 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14701 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14703 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14704 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14706 /* class_tid: 4, , table: parif_def_arec_ptr.ing_0 */
14708 .description = "act_rec_ptr",
14709 .field_bit_size = 32,
14710 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14711 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14713 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14714 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14716 /* class_tid: 4, , table: parif_def_err_arec_ptr.ing_0 */
14718 .description = "act_rec_ptr",
14719 .field_bit_size = 32,
14720 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14721 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14723 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14724 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14726 /* class_tid: 4, , table: int_full_act_record.egr_vfr */
14728 .description = "flow_cntr_ptr",
14729 .field_bit_size = 14,
14730 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14731 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14734 .description = "age_enable",
14735 .field_bit_size = 1,
14736 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14737 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14740 .description = "agg_cntr_en",
14741 .field_bit_size = 1,
14742 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14743 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14746 .description = "rate_cntr_en",
14747 .field_bit_size = 1,
14748 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14749 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14752 .description = "flow_cntr_en",
14753 .field_bit_size = 1,
14754 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14755 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14758 .description = "tcpflags_key",
14759 .field_bit_size = 8,
14760 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14761 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14764 .description = "tcpflags_mir",
14765 .field_bit_size = 1,
14766 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14767 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14770 .description = "tcpflags_match",
14771 .field_bit_size = 1,
14772 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14773 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14776 .description = "encap_ptr",
14777 .field_bit_size = 11,
14778 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14779 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14782 .description = "dst_ip_ptr",
14783 .field_bit_size = 10,
14784 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14785 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14788 .description = "tcp_dst_port",
14789 .field_bit_size = 16,
14790 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14791 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14794 .description = "src_ip_ptr",
14795 .field_bit_size = 10,
14796 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14797 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14800 .description = "tcp_src_port",
14801 .field_bit_size = 16,
14802 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14803 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14806 .description = "meter_id",
14807 .field_bit_size = 10,
14808 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14809 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14812 .description = "l3_rdir",
14813 .field_bit_size = 1,
14814 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14815 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14818 .description = "tl3_rdir",
14819 .field_bit_size = 1,
14820 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14821 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14824 .description = "l3_ttl_dec",
14825 .field_bit_size = 1,
14826 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14827 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14830 .description = "tl3_ttl_dec",
14831 .field_bit_size = 1,
14832 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14833 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14836 .description = "decap_func",
14837 .field_bit_size = 4,
14838 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14839 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14842 .description = "vnic_or_vport",
14843 .field_bit_size = 12,
14844 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14845 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14847 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
14848 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff}
14851 .description = "pop_vlan",
14852 .field_bit_size = 1,
14853 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14854 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14857 .description = "meter",
14858 .field_bit_size = 1,
14859 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14860 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14863 .description = "mirror",
14864 .field_bit_size = 2,
14865 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14866 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14869 .description = "drop",
14870 .field_bit_size = 1,
14871 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14872 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14875 .description = "hit",
14876 .field_bit_size = 1,
14877 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14878 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14881 .description = "type",
14882 .field_bit_size = 1,
14883 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14884 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14886 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.egr_vfr */
14888 .description = "act_record_ptr",
14889 .field_bit_size = 16,
14890 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14891 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14894 .description = "reserved",
14895 .field_bit_size = 1,
14896 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14897 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14900 .description = "l2_byp_lkup_en",
14901 .field_bit_size = 1,
14902 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14903 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14908 .description = "parif",
14909 .field_bit_size = 4,
14910 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14911 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14913 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
14914 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
14917 .description = "allowed_pri",
14918 .field_bit_size = 8,
14919 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14920 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14923 .description = "default_pri",
14924 .field_bit_size = 3,
14925 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14926 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14929 .description = "allowed_tpid",
14930 .field_bit_size = 6,
14931 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14932 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14935 .description = "default_tpid",
14936 .field_bit_size = 3,
14937 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14938 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14941 .description = "bd_act_en",
14942 .field_bit_size = 1,
14943 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14944 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14949 .description = "sp_rec_ptr",
14950 .field_bit_size = 16,
14951 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14952 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14955 .description = "byp_sp_lkup",
14956 .field_bit_size = 1,
14957 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14958 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14963 .description = "pri_anti_spoof_ctl",
14964 .field_bit_size = 2,
14965 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14966 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14969 .description = "tpid_anti_spoof_ctl",
14970 .field_bit_size = 2,
14971 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14972 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14974 /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
14976 .description = "rid",
14977 .field_bit_size = 32,
14978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14979 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14981 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
14982 BNXT_ULP_RF_IDX_RID & 0xff}
14985 .description = "l2_cntxt_tcam_index",
14986 .field_bit_size = 10,
14987 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14988 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14990 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
14991 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
14994 .description = "l2_cntxt_id",
14995 .field_bit_size = 10,
14996 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14997 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15000 .description = "src_property_ptr",
15001 .field_bit_size = 10,
15002 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15003 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15005 /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
15007 .description = "l2_cntxt_id",
15008 .field_bit_size = 10,
15009 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15010 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15012 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
15013 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
15016 .description = "prof_func_id",
15017 .field_bit_size = 7,
15018 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15019 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
15021 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
15022 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
15025 .description = "l2_byp_lkup_en",
15026 .field_bit_size = 1,
15027 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15028 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15031 .description = "parif",
15032 .field_bit_size = 4,
15033 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15034 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15036 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
15037 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
15040 .description = "allowed_pri",
15041 .field_bit_size = 8,
15042 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15043 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15046 .description = "default_pri",
15047 .field_bit_size = 3,
15048 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15049 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15052 .description = "allowed_tpid",
15053 .field_bit_size = 6,
15054 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15055 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15058 .description = "default_tpid",
15059 .field_bit_size = 3,
15060 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15061 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15064 .description = "bd_act_en",
15065 .field_bit_size = 1,
15066 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15067 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15070 .description = "sp_rec_ptr",
15071 .field_bit_size = 16,
15072 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15073 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15076 .description = "byp_sp_lkup",
15077 .field_bit_size = 1,
15078 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15079 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15084 .description = "pri_anti_spoof_ctl",
15085 .field_bit_size = 2,
15086 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15087 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15090 .description = "tpid_anti_spoof_ctl",
15091 .field_bit_size = 2,
15092 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15093 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15095 /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr */
15097 .description = "rid",
15098 .field_bit_size = 32,
15099 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15100 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15102 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
15103 BNXT_ULP_RF_IDX_RID & 0xff}
15106 .description = "l2_cntxt_tcam_index",
15107 .field_bit_size = 10,
15108 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15109 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15111 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
15112 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
15115 .description = "l2_cntxt_id",
15116 .field_bit_size = 10,
15117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15118 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15120 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
15121 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
15124 .description = "src_property_ptr",
15125 .field_bit_size = 10,
15126 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15127 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15129 /* class_tid: 4, , table: int_full_act_record.egr_0 */
15131 .description = "flow_cntr_ptr",
15132 .field_bit_size = 14,
15133 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15134 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15137 .description = "age_enable",
15138 .field_bit_size = 1,
15139 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15140 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15143 .description = "agg_cntr_en",
15144 .field_bit_size = 1,
15145 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15146 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15149 .description = "rate_cntr_en",
15150 .field_bit_size = 1,
15151 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15152 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15155 .description = "flow_cntr_en",
15156 .field_bit_size = 1,
15157 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15158 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15161 .description = "tcpflags_key",
15162 .field_bit_size = 8,
15163 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15164 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15167 .description = "tcpflags_mir",
15168 .field_bit_size = 1,
15169 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15170 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15173 .description = "tcpflags_match",
15174 .field_bit_size = 1,
15175 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15176 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15179 .description = "encap_ptr",
15180 .field_bit_size = 11,
15181 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15182 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15185 .description = "dst_ip_ptr",
15186 .field_bit_size = 10,
15187 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15188 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15191 .description = "tcp_dst_port",
15192 .field_bit_size = 16,
15193 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15194 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15197 .description = "src_ip_ptr",
15198 .field_bit_size = 10,
15199 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15200 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15203 .description = "tcp_src_port",
15204 .field_bit_size = 16,
15205 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15206 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15209 .description = "meter_id",
15210 .field_bit_size = 10,
15211 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15212 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15215 .description = "l3_rdir",
15216 .field_bit_size = 1,
15217 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15218 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15221 .description = "tl3_rdir",
15222 .field_bit_size = 1,
15223 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15224 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15227 .description = "l3_ttl_dec",
15228 .field_bit_size = 1,
15229 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15230 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15233 .description = "tl3_ttl_dec",
15234 .field_bit_size = 1,
15235 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15236 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15239 .description = "decap_func",
15240 .field_bit_size = 4,
15241 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15242 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15245 .description = "vnic_or_vport",
15246 .field_bit_size = 12,
15247 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15248 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15250 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
15251 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff}
15254 .description = "pop_vlan",
15255 .field_bit_size = 1,
15256 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15257 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15260 .description = "meter",
15261 .field_bit_size = 1,
15262 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15263 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15266 .description = "mirror",
15267 .field_bit_size = 2,
15268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15269 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15272 .description = "drop",
15273 .field_bit_size = 1,
15274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15275 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15278 .description = "hit",
15279 .field_bit_size = 1,
15280 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15281 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15284 .description = "type",
15285 .field_bit_size = 1,
15286 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15287 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15289 /* class_tid: 4, , table: parif_def_lkup_arec_ptr.egr_0 */
15291 .description = "act_rec_ptr",
15292 .field_bit_size = 32,
15293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15294 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15296 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
15297 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
15299 /* class_tid: 4, , table: parif_def_arec_ptr.egr_0 */
15301 .description = "act_rec_ptr",
15302 .field_bit_size = 32,
15303 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15304 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15306 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
15307 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
15309 /* class_tid: 4, , table: parif_def_err_arec_ptr.egr_0 */
15311 .description = "act_rec_ptr",
15312 .field_bit_size = 32,
15313 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15314 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15316 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
15317 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
15319 /* class_tid: 5, , table: int_full_act_record.loopback */
15321 .description = "flow_cntr_ptr",
15322 .field_bit_size = 14,
15323 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15324 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15327 .description = "age_enable",
15328 .field_bit_size = 1,
15329 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15330 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15333 .description = "agg_cntr_en",
15334 .field_bit_size = 1,
15335 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15336 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15339 .description = "rate_cntr_en",
15340 .field_bit_size = 1,
15341 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15342 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15345 .description = "flow_cntr_en",
15346 .field_bit_size = 1,
15347 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15348 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15351 .description = "tcpflags_key",
15352 .field_bit_size = 8,
15353 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15354 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15357 .description = "tcpflags_mir",
15358 .field_bit_size = 1,
15359 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15360 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15363 .description = "tcpflags_match",
15364 .field_bit_size = 1,
15365 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15366 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15369 .description = "encap_ptr",
15370 .field_bit_size = 11,
15371 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15372 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15375 .description = "dst_ip_ptr",
15376 .field_bit_size = 10,
15377 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15378 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15381 .description = "tcp_dst_port",
15382 .field_bit_size = 16,
15383 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15384 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15387 .description = "src_ip_ptr",
15388 .field_bit_size = 10,
15389 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15390 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15393 .description = "tcp_src_port",
15394 .field_bit_size = 16,
15395 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15396 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15399 .description = "meter_id",
15400 .field_bit_size = 10,
15401 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15402 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15405 .description = "l3_rdir",
15406 .field_bit_size = 1,
15407 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15408 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15411 .description = "tl3_rdir",
15412 .field_bit_size = 1,
15413 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15414 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15417 .description = "l3_ttl_dec",
15418 .field_bit_size = 1,
15419 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15420 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15423 .description = "tl3_ttl_dec",
15424 .field_bit_size = 1,
15425 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15426 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15429 .description = "decap_func",
15430 .field_bit_size = 4,
15431 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15432 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15435 .description = "vnic_or_vport",
15436 .field_bit_size = 12,
15437 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15438 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15440 (ULP_WP_SYM_LOOPBACK_PORT >> 8) & 0xff,
15441 ULP_WP_SYM_LOOPBACK_PORT & 0xff}
15444 .description = "pop_vlan",
15445 .field_bit_size = 1,
15446 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15447 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15450 .description = "meter",
15451 .field_bit_size = 1,
15452 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15453 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15456 .description = "mirror",
15457 .field_bit_size = 2,
15458 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15459 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15462 .description = "drop",
15463 .field_bit_size = 1,
15464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15465 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15468 .description = "hit",
15469 .field_bit_size = 1,
15470 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15471 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15474 .description = "type",
15475 .field_bit_size = 1,
15476 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15477 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15479 /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
15481 .description = "l2_cntxt_id",
15482 .field_bit_size = 10,
15483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15484 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15486 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
15487 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
15490 .description = "prof_func_id",
15491 .field_bit_size = 7,
15492 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15493 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
15495 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
15496 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
15499 .description = "l2_byp_lkup_en",
15500 .field_bit_size = 1,
15501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15502 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15505 .description = "parif",
15506 .field_bit_size = 4,
15507 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15508 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15510 ULP_WP_SYM_LOOPBACK_PARIF}
15513 .description = "allowed_pri",
15514 .field_bit_size = 8,
15515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15516 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15519 .description = "default_pri",
15520 .field_bit_size = 3,
15521 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15522 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15525 .description = "allowed_tpid",
15526 .field_bit_size = 6,
15527 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15528 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15531 .description = "default_tpid",
15532 .field_bit_size = 3,
15533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15534 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15537 .description = "bd_act_en",
15538 .field_bit_size = 1,
15539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15543 .description = "sp_rec_ptr",
15544 .field_bit_size = 16,
15545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15546 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15549 .description = "byp_sp_lkup",
15550 .field_bit_size = 1,
15551 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15552 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15557 .description = "pri_anti_spoof_ctl",
15558 .field_bit_size = 2,
15559 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15560 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15563 .description = "tpid_anti_spoof_ctl",
15564 .field_bit_size = 2,
15565 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15566 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15568 /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_egr_wr */
15570 .description = "rid",
15571 .field_bit_size = 32,
15572 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15573 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15575 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
15576 BNXT_ULP_RF_IDX_RID & 0xff}
15579 .description = "l2_cntxt_tcam_index",
15580 .field_bit_size = 10,
15581 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15582 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15584 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
15585 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
15588 .description = "l2_cntxt_id",
15589 .field_bit_size = 10,
15590 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15591 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15593 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
15594 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
15597 .description = "src_property_ptr",
15598 .field_bit_size = 10,
15599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15600 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15602 /* class_tid: 5, , table: parif_def_lkup_arec_ptr.vf_egr */
15604 .description = "act_rec_ptr",
15605 .field_bit_size = 32,
15606 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15607 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
15609 (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
15610 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
15612 /* class_tid: 5, , table: parif_def_arec_ptr.vf_egr */
15614 .description = "act_rec_ptr",
15615 .field_bit_size = 32,
15616 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15617 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
15619 (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
15620 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
15622 /* class_tid: 5, , table: parif_def_err_arec_ptr.vf_egr */
15624 .description = "act_rec_ptr",
15625 .field_bit_size = 32,
15626 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15627 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
15629 (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
15630 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
15632 /* class_tid: 5, , table: int_full_act_record.vf_ing */
15634 .description = "flow_cntr_ptr",
15635 .field_bit_size = 14,
15636 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15637 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15640 .description = "age_enable",
15641 .field_bit_size = 1,
15642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15643 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15646 .description = "agg_cntr_en",
15647 .field_bit_size = 1,
15648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15649 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15652 .description = "rate_cntr_en",
15653 .field_bit_size = 1,
15654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15655 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15658 .description = "flow_cntr_en",
15659 .field_bit_size = 1,
15660 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15661 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15664 .description = "tcpflags_key",
15665 .field_bit_size = 8,
15666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15667 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15670 .description = "tcpflags_mir",
15671 .field_bit_size = 1,
15672 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15673 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15676 .description = "tcpflags_match",
15677 .field_bit_size = 1,
15678 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15679 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15682 .description = "encap_ptr",
15683 .field_bit_size = 11,
15684 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15685 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15688 .description = "dst_ip_ptr",
15689 .field_bit_size = 10,
15690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15691 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15694 .description = "tcp_dst_port",
15695 .field_bit_size = 16,
15696 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15697 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15700 .description = "src_ip_ptr",
15701 .field_bit_size = 10,
15702 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15703 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15706 .description = "tcp_src_port",
15707 .field_bit_size = 16,
15708 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15709 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15712 .description = "meter_id",
15713 .field_bit_size = 10,
15714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15715 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15718 .description = "l3_rdir",
15719 .field_bit_size = 1,
15720 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15721 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15724 .description = "tl3_rdir",
15725 .field_bit_size = 1,
15726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15727 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15730 .description = "l3_ttl_dec",
15731 .field_bit_size = 1,
15732 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15733 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15736 .description = "tl3_ttl_dec",
15737 .field_bit_size = 1,
15738 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15739 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15742 .description = "decap_func",
15743 .field_bit_size = 4,
15744 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15745 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15748 .description = "vnic_or_vport",
15749 .field_bit_size = 12,
15750 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15751 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15753 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
15754 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff}
15757 .description = "pop_vlan",
15758 .field_bit_size = 1,
15759 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15760 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15763 .description = "meter",
15764 .field_bit_size = 1,
15765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15766 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15769 .description = "mirror",
15770 .field_bit_size = 2,
15771 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15772 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15775 .description = "drop",
15776 .field_bit_size = 1,
15777 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15778 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15781 .description = "hit",
15782 .field_bit_size = 1,
15783 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15784 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15787 .description = "type",
15788 .field_bit_size = 1,
15789 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15790 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15792 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vf_ing */
15794 .description = "act_record_ptr",
15795 .field_bit_size = 16,
15796 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15797 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15799 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
15800 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
15803 .description = "reserved",
15804 .field_bit_size = 1,
15805 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15806 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15809 .description = "l2_byp_lkup_en",
15810 .field_bit_size = 1,
15811 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15812 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15817 .description = "parif",
15818 .field_bit_size = 4,
15819 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15820 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15823 .description = "allowed_pri",
15824 .field_bit_size = 8,
15825 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15826 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15829 .description = "default_pri",
15830 .field_bit_size = 3,
15831 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15832 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15835 .description = "allowed_tpid",
15836 .field_bit_size = 6,
15837 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15838 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15841 .description = "default_tpid",
15842 .field_bit_size = 3,
15843 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15844 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15847 .description = "bd_act_en",
15848 .field_bit_size = 1,
15849 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15850 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15853 .description = "sp_rec_ptr",
15854 .field_bit_size = 16,
15855 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15856 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15859 .description = "byp_sp_lkup",
15860 .field_bit_size = 1,
15861 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15862 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15867 .description = "pri_anti_spoof_ctl",
15868 .field_bit_size = 2,
15869 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15870 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15873 .description = "tpid_anti_spoof_ctl",
15874 .field_bit_size = 2,
15875 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15876 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15878 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_egr0 */
15880 .description = "act_record_ptr",
15881 .field_bit_size = 16,
15882 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15883 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15886 .description = "reserved",
15887 .field_bit_size = 1,
15888 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15889 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15892 .description = "l2_byp_lkup_en",
15893 .field_bit_size = 1,
15894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15895 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15900 .description = "parif",
15901 .field_bit_size = 4,
15902 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15903 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15906 .description = "allowed_pri",
15907 .field_bit_size = 8,
15908 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15909 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15912 .description = "default_pri",
15913 .field_bit_size = 3,
15914 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15915 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15918 .description = "allowed_tpid",
15919 .field_bit_size = 6,
15920 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15921 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15924 .description = "default_tpid",
15925 .field_bit_size = 3,
15926 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15927 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15930 .description = "bd_act_en",
15931 .field_bit_size = 1,
15932 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15933 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15938 .description = "sp_rec_ptr",
15939 .field_bit_size = 16,
15940 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15941 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15944 .description = "byp_sp_lkup",
15945 .field_bit_size = 1,
15946 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15947 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
15952 .description = "pri_anti_spoof_ctl",
15953 .field_bit_size = 2,
15954 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15955 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15958 .description = "tpid_anti_spoof_ctl",
15959 .field_bit_size = 2,
15960 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15961 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15963 /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
15965 .description = "rid",
15966 .field_bit_size = 32,
15967 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15968 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15970 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
15971 BNXT_ULP_RF_IDX_RID & 0xff}
15974 .description = "l2_cntxt_tcam_index",
15975 .field_bit_size = 10,
15976 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15977 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15979 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
15980 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
15983 .description = "l2_cntxt_id",
15984 .field_bit_size = 10,
15985 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15986 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15989 .description = "src_property_ptr",
15990 .field_bit_size = 10,
15991 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15992 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
15994 /* class_tid: 5, , table: int_vtag_encap_record.vfr_egr0 */
15996 .description = "ecv_valid",
15997 .field_bit_size = 1,
15998 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15999 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16004 .description = "ecv_custom_en",
16005 .field_bit_size = 1,
16006 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16007 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16010 .description = "ecv_vtag_type",
16011 .field_bit_size = 4,
16012 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16013 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16015 ULP_WP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
16018 .description = "ecv_l2_en",
16019 .field_bit_size = 1,
16020 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16021 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16024 .description = "ecv_l3_type",
16025 .field_bit_size = 3,
16026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16027 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16030 .description = "ecv_l4_type",
16031 .field_bit_size = 3,
16032 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16033 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16036 .description = "ecv_tun_type",
16037 .field_bit_size = 3,
16038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16039 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16042 .description = "vtag_tpid",
16043 .field_bit_size = 16,
16044 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16045 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16051 .description = "vtag_pcp",
16052 .field_bit_size = 3,
16053 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16054 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16057 .description = "vtag_de",
16058 .field_bit_size = 1,
16059 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16060 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16063 .description = "vtag_vid",
16064 .field_bit_size = 12,
16065 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16066 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16068 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
16069 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
16071 /* class_tid: 5, , table: int_full_act_record.vfr_egr0 */
16073 .description = "flow_cntr_ptr",
16074 .field_bit_size = 14,
16075 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16076 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16079 .description = "age_enable",
16080 .field_bit_size = 1,
16081 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16082 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16085 .description = "agg_cntr_en",
16086 .field_bit_size = 1,
16087 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16088 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16091 .description = "rate_cntr_en",
16092 .field_bit_size = 1,
16093 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16094 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16097 .description = "flow_cntr_en",
16098 .field_bit_size = 1,
16099 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16100 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16103 .description = "tcpflags_key",
16104 .field_bit_size = 8,
16105 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16106 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16109 .description = "tcpflags_mir",
16110 .field_bit_size = 1,
16111 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16112 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16115 .description = "tcpflags_match",
16116 .field_bit_size = 1,
16117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16118 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16121 .description = "encap_ptr",
16122 .field_bit_size = 11,
16123 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16124 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
16126 (BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
16127 BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
16130 .description = "dst_ip_ptr",
16131 .field_bit_size = 10,
16132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16133 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16136 .description = "tcp_dst_port",
16137 .field_bit_size = 16,
16138 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16139 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16142 .description = "src_ip_ptr",
16143 .field_bit_size = 10,
16144 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16145 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16148 .description = "tcp_src_port",
16149 .field_bit_size = 16,
16150 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16151 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16154 .description = "meter_id",
16155 .field_bit_size = 10,
16156 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16157 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16160 .description = "l3_rdir",
16161 .field_bit_size = 1,
16162 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16163 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16166 .description = "tl3_rdir",
16167 .field_bit_size = 1,
16168 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16169 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16172 .description = "l3_ttl_dec",
16173 .field_bit_size = 1,
16174 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16175 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16178 .description = "tl3_ttl_dec",
16179 .field_bit_size = 1,
16180 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16181 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16184 .description = "decap_func",
16185 .field_bit_size = 4,
16186 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16187 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16190 .description = "vnic_or_vport",
16191 .field_bit_size = 12,
16192 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16193 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16195 (ULP_WP_SYM_LOOPBACK_PORT >> 8) & 0xff,
16196 ULP_WP_SYM_LOOPBACK_PORT & 0xff}
16199 .description = "pop_vlan",
16200 .field_bit_size = 1,
16201 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16202 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16205 .description = "meter",
16206 .field_bit_size = 1,
16207 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16208 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16211 .description = "mirror",
16212 .field_bit_size = 2,
16213 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16214 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16217 .description = "drop",
16218 .field_bit_size = 1,
16219 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16220 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16223 .description = "hit",
16224 .field_bit_size = 1,
16225 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16226 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16229 .description = "type",
16230 .field_bit_size = 1,
16231 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16232 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16234 /* class_tid: 5, , table: int_full_act_record.vfr_ing0 */
16236 .description = "flow_cntr_ptr",
16237 .field_bit_size = 14,
16238 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16239 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16242 .description = "age_enable",
16243 .field_bit_size = 1,
16244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16245 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16248 .description = "agg_cntr_en",
16249 .field_bit_size = 1,
16250 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16251 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16254 .description = "rate_cntr_en",
16255 .field_bit_size = 1,
16256 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16257 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16260 .description = "flow_cntr_en",
16261 .field_bit_size = 1,
16262 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16263 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16266 .description = "tcpflags_key",
16267 .field_bit_size = 8,
16268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16269 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16272 .description = "tcpflags_mir",
16273 .field_bit_size = 1,
16274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16275 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16278 .description = "tcpflags_match",
16279 .field_bit_size = 1,
16280 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16281 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16284 .description = "encap_ptr",
16285 .field_bit_size = 11,
16286 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16287 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16290 .description = "dst_ip_ptr",
16291 .field_bit_size = 10,
16292 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16293 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16296 .description = "tcp_dst_port",
16297 .field_bit_size = 16,
16298 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16299 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16302 .description = "src_ip_ptr",
16303 .field_bit_size = 10,
16304 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16305 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16308 .description = "tcp_src_port",
16309 .field_bit_size = 16,
16310 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16311 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16314 .description = "meter_id",
16315 .field_bit_size = 10,
16316 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16317 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16320 .description = "l3_rdir",
16321 .field_bit_size = 1,
16322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16323 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16326 .description = "tl3_rdir",
16327 .field_bit_size = 1,
16328 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16329 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16332 .description = "l3_ttl_dec",
16333 .field_bit_size = 1,
16334 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16335 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16338 .description = "tl3_ttl_dec",
16339 .field_bit_size = 1,
16340 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16341 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16344 .description = "decap_func",
16345 .field_bit_size = 4,
16346 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16347 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16350 .description = "vnic_or_vport",
16351 .field_bit_size = 12,
16352 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16353 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16355 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
16356 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff}
16359 .description = "pop_vlan",
16360 .field_bit_size = 1,
16361 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16362 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16367 .description = "meter",
16368 .field_bit_size = 1,
16369 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16370 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16373 .description = "mirror",
16374 .field_bit_size = 2,
16375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16376 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16379 .description = "drop",
16380 .field_bit_size = 1,
16381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16382 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16385 .description = "hit",
16386 .field_bit_size = 1,
16387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16388 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16391 .description = "type",
16392 .field_bit_size = 1,
16393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16394 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16396 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_dtagged_ing0 */
16398 .description = "act_record_ptr",
16399 .field_bit_size = 16,
16400 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16401 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
16403 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
16404 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
16407 .description = "reserved",
16408 .field_bit_size = 1,
16409 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16410 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16413 .description = "l2_byp_lkup_en",
16414 .field_bit_size = 1,
16415 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16416 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16421 .description = "parif",
16422 .field_bit_size = 4,
16423 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16424 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16427 .description = "allowed_pri",
16428 .field_bit_size = 8,
16429 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16430 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16433 .description = "default_pri",
16434 .field_bit_size = 3,
16435 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16436 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16439 .description = "allowed_tpid",
16440 .field_bit_size = 6,
16441 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16442 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16445 .description = "default_tpid",
16446 .field_bit_size = 3,
16447 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16448 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16451 .description = "bd_act_en",
16452 .field_bit_size = 1,
16453 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16454 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16457 .description = "sp_rec_ptr",
16458 .field_bit_size = 16,
16459 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16460 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16463 .description = "byp_sp_lkup",
16464 .field_bit_size = 1,
16465 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16466 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16471 .description = "pri_anti_spoof_ctl",
16472 .field_bit_size = 2,
16473 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16474 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16477 .description = "tpid_anti_spoof_ctl",
16478 .field_bit_size = 2,
16479 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16480 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16482 /* class_tid: 5, , table: l2_cntxt_tcam_bypass.vfr_stagged_ing0 */
16484 .description = "act_record_ptr",
16485 .field_bit_size = 16,
16486 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16487 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
16489 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
16490 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
16493 .description = "reserved",
16494 .field_bit_size = 1,
16495 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16496 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16499 .description = "l2_byp_lkup_en",
16500 .field_bit_size = 1,
16501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16502 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16507 .description = "parif",
16508 .field_bit_size = 4,
16509 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16510 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16513 .description = "allowed_pri",
16514 .field_bit_size = 8,
16515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16516 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16519 .description = "default_pri",
16520 .field_bit_size = 3,
16521 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16522 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16525 .description = "allowed_tpid",
16526 .field_bit_size = 6,
16527 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16528 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16531 .description = "default_tpid",
16532 .field_bit_size = 3,
16533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16534 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16537 .description = "bd_act_en",
16538 .field_bit_size = 1,
16539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16543 .description = "sp_rec_ptr",
16544 .field_bit_size = 16,
16545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16546 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16549 .description = "byp_sp_lkup",
16550 .field_bit_size = 1,
16551 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16552 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
16557 .description = "pri_anti_spoof_ctl",
16558 .field_bit_size = 2,
16559 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16560 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16563 .description = "tpid_anti_spoof_ctl",
16564 .field_bit_size = 2,
16565 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
16566 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
16570 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {
16571 /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
16573 .description = "l2_cntxt_id",
16574 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16575 .ident_bit_size = 10,
16576 .ident_bit_pos = 42
16578 /* class_tid: 1, , table: mac_addr_cache.rd */
16580 .description = "l2_cntxt_id",
16581 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16582 .ident_bit_size = 10,
16583 .ident_bit_pos = 42
16585 /* class_tid: 1, , table: l2_cntxt_tcam.0 */
16587 .description = "l2_cntxt_id",
16588 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16589 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
16590 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16591 .ident_bit_size = 10,
16594 /* class_tid: 1, , table: profile_tcam_cache.rd */
16596 .description = "em_profile_id",
16597 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16598 .ident_bit_size = 8,
16599 .ident_bit_pos = 42
16602 .description = "flow_sig_id",
16603 .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
16604 .ident_bit_size = 64,
16605 .ident_bit_pos = 58
16608 .description = "profile_tcam_index",
16609 .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
16610 .ident_bit_size = 10,
16611 .ident_bit_pos = 32
16613 /* class_tid: 1, , table: profile_tcam.ipv4 */
16615 .description = "em_profile_id",
16616 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16617 .ident_type = TF_IDENT_TYPE_EM_PROF,
16618 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16619 .ident_bit_size = 8,
16620 .ident_bit_pos = 28
16622 /* class_tid: 1, , table: profile_tcam.ipv6 */
16624 .description = "em_profile_id",
16625 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16626 .ident_type = TF_IDENT_TYPE_EM_PROF,
16627 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16628 .ident_bit_size = 8,
16629 .ident_bit_pos = 28
16631 /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
16633 .description = "em_profile_id",
16634 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16635 .ident_type = TF_IDENT_TYPE_EM_PROF,
16636 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16637 .ident_bit_size = 8,
16638 .ident_bit_pos = 28
16640 /* class_tid: 2, , table: tunnel_cache.rd */
16642 .description = "l2_cntxt_id",
16643 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16644 .ident_bit_size = 10,
16645 .ident_bit_pos = 42
16647 /* class_tid: 2, , table: l2_cntxt_tcam.1 */
16649 .description = "l2_cntxt_id",
16650 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16651 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
16652 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16653 .ident_bit_size = 10,
16656 /* class_tid: 2, , table: mac_addr_cache.rd */
16658 .description = "l2_cntxt_id",
16659 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16660 .ident_bit_size = 10,
16661 .ident_bit_pos = 42
16663 /* class_tid: 2, , table: profile_tcam_cache.f2_rd */
16665 .description = "em_profile_id",
16666 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16667 .ident_bit_size = 8,
16668 .ident_bit_pos = 42
16671 .description = "flow_sig_id",
16672 .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
16673 .ident_bit_size = 64,
16674 .ident_bit_pos = 58
16677 .description = "profile_tcam_index",
16678 .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
16679 .ident_bit_size = 10,
16680 .ident_bit_pos = 32
16682 /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
16684 .description = "l2_cntxt_id",
16685 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16686 .ident_bit_size = 10,
16687 .ident_bit_pos = 42
16689 /* class_tid: 3, , table: mac_addr_cache.rd */
16691 .description = "l2_cntxt_id",
16692 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16693 .ident_bit_size = 10,
16694 .ident_bit_pos = 42
16696 /* class_tid: 3, , table: l2_cntxt_tcam.0 */
16698 .description = "l2_cntxt_id",
16699 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16700 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
16701 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16702 .ident_bit_size = 10,
16705 /* class_tid: 3, , table: profile_tcam_cache.rd */
16707 .description = "em_profile_id",
16708 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16709 .ident_bit_size = 8,
16710 .ident_bit_pos = 42
16713 .description = "flow_sig_id",
16714 .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
16715 .ident_bit_size = 64,
16716 .ident_bit_pos = 58
16719 .description = "profile_tcam_index",
16720 .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
16721 .ident_bit_size = 10,
16722 .ident_bit_pos = 32
16724 /* class_tid: 3, , table: profile_tcam.ipv4 */
16726 .description = "em_profile_id",
16727 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16728 .ident_type = TF_IDENT_TYPE_EM_PROF,
16729 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16730 .ident_bit_size = 8,
16731 .ident_bit_pos = 28
16733 /* class_tid: 3, , table: profile_tcam.ipv6 */
16735 .description = "em_profile_id",
16736 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16737 .ident_type = TF_IDENT_TYPE_EM_PROF,
16738 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
16739 .ident_bit_size = 8,
16740 .ident_bit_pos = 28
16742 /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
16744 .description = "l2_cntxt_id",
16745 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16746 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
16747 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16748 .ident_bit_size = 10,
16751 /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
16753 .description = "l2_cntxt_id",
16754 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16755 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
16756 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16757 .ident_bit_size = 10,
16760 /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
16762 .description = "l2_cntxt_id",
16763 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
16764 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
16765 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
16766 .ident_bit_size = 10,