1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2014-2021 Broadcom
6 /* date: Fri May 14 10:26:31 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, egress */
27 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
31 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
35 /* class_tid: 3, ingress */
37 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
41 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
45 /* class_tid: 4, egress */
47 .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
51 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
57 struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
58 { /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
59 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
60 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
62 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
63 .direction = TF_DIR_RX,
67 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
70 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
71 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
72 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
73 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
75 .blob_key_bit_size = 8,
81 { /* class_tid: 1, , table: mac_addr_cache.rd */
82 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
84 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
85 .direction = TF_DIR_RX,
89 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
92 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
93 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
94 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
95 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
97 .blob_key_bit_size = 73,
100 .ident_start_idx = 1,
103 { /* class_tid: 1, , table: control.0 */
104 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
105 .direction = TF_DIR_RX,
108 .cond_false_goto = 3,
109 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
112 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
113 .fdb_operand = BNXT_ULP_RF_IDX_RID,
114 .byte_order = BNXT_ULP_BYTE_ORDER_LE
116 { /* class_tid: 1, , table: l2_cntxt_tcam.0 */
117 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
118 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
119 .direction = TF_DIR_RX,
122 .cond_false_goto = 1,
123 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
126 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
127 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
128 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
129 .fdb_operand = BNXT_ULP_RF_IDX_RID,
130 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
132 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
134 .blob_key_bit_size = 167,
136 .key_num_fields = 13,
137 .result_start_idx = 0,
138 .result_bit_size = 64,
139 .result_num_fields = 13,
140 .ident_start_idx = 2,
143 { /* class_tid: 1, , table: mac_addr_cache.wr */
144 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
146 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
147 .direction = TF_DIR_RX,
150 .cond_false_goto = 1,
151 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
154 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
155 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
156 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
157 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
159 .blob_key_bit_size = 73,
162 .result_start_idx = 13,
163 .result_bit_size = 62,
164 .result_num_fields = 4
166 { /* class_tid: 1, , table: profile_tcam_cache.rd */
167 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
168 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
170 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
171 .direction = TF_DIR_RX,
174 .cond_false_goto = 1,
175 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
178 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
179 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
180 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
181 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
183 .blob_key_bit_size = 14,
186 .ident_start_idx = 3,
189 { /* class_tid: 1, , table: control.1 */
190 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
191 .direction = TF_DIR_RX,
194 .cond_false_goto = 1,
195 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
198 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
199 .fdb_operand = BNXT_ULP_RF_IDX_RID,
200 .byte_order = BNXT_ULP_BYTE_ORDER_LE
202 { /* class_tid: 1, , table: control.2 */
203 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
204 .direction = TF_DIR_RX,
207 .cond_false_goto = 1023,
208 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
211 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
213 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
214 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
215 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
216 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
217 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
218 .func_dst_opr = BNXT_ULP_RF_IDX_CC },
219 .byte_order = BNXT_ULP_BYTE_ORDER_LE
221 { /* class_tid: 1, , table: profile_tcam.ipv4 */
222 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
223 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
224 .direction = TF_DIR_RX,
227 .cond_false_goto = 1,
228 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
231 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
232 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
233 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
234 .fdb_operand = BNXT_ULP_RF_IDX_RID,
235 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
236 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
237 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
239 .blob_key_bit_size = 81,
241 .key_num_fields = 43,
242 .result_start_idx = 17,
243 .result_bit_size = 38,
244 .result_num_fields = 17,
245 .ident_start_idx = 6,
248 { /* class_tid: 1, , table: profile_tcam.ipv6 */
249 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
250 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
251 .direction = TF_DIR_RX,
254 .cond_false_goto = 1,
255 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
258 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
259 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
260 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
261 .fdb_operand = BNXT_ULP_RF_IDX_RID,
262 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
263 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
264 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
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 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
292 .key_start_idx = 113,
293 .blob_key_bit_size = 81,
295 .key_num_fields = 43,
296 .result_start_idx = 51,
297 .result_bit_size = 38,
298 .result_num_fields = 17,
299 .ident_start_idx = 8,
302 { /* class_tid: 1, , table: profile_tcam_cache.wr */
303 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
304 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
306 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
307 .direction = TF_DIR_RX,
310 .cond_false_goto = 1,
311 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
312 .cond_start_idx = 11,
314 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
315 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
316 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
317 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
318 .key_start_idx = 156,
319 .blob_key_bit_size = 14,
322 .result_start_idx = 68,
323 .result_bit_size = 122,
324 .result_num_fields = 5
326 { /* class_tid: 1, , table: em.ipv4 */
327 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
328 .resource_type = TF_MEM_INTERNAL,
329 .direction = TF_DIR_RX,
332 .cond_false_goto = 1,
333 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
334 .cond_start_idx = 11,
336 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
337 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
338 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
339 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
340 .key_start_idx = 159,
341 .blob_key_bit_size = 176,
343 .key_num_fields = 10,
344 .result_start_idx = 73,
345 .result_bit_size = 64,
346 .result_num_fields = 9
348 { /* class_tid: 1, , table: eem.ipv4 */
349 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
350 .resource_type = TF_MEM_EXTERNAL,
351 .direction = TF_DIR_RX,
354 .cond_false_goto = 1,
355 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
356 .cond_start_idx = 14,
358 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
359 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
360 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
361 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
362 .key_start_idx = 169,
363 .blob_key_bit_size = 448,
365 .key_num_fields = 10,
366 .result_start_idx = 82,
367 .result_bit_size = 64,
368 .result_num_fields = 9
370 { /* class_tid: 1, , table: em.ipv6 */
371 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
372 .resource_type = TF_MEM_INTERNAL,
373 .direction = TF_DIR_RX,
376 .cond_false_goto = 1,
377 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
378 .cond_start_idx = 17,
380 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
381 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
382 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
383 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
384 .key_start_idx = 179,
385 .blob_key_bit_size = 416,
387 .key_num_fields = 11,
388 .result_start_idx = 91,
389 .result_bit_size = 64,
390 .result_num_fields = 9
392 { /* class_tid: 1, , table: eem.ipv6 */
393 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
394 .resource_type = TF_MEM_EXTERNAL,
395 .direction = TF_DIR_RX,
398 .cond_false_goto = 1,
399 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
400 .cond_start_idx = 20,
402 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
403 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
404 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
405 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
406 .key_start_idx = 190,
407 .blob_key_bit_size = 448,
409 .key_num_fields = 11,
410 .result_start_idx = 100,
411 .result_bit_size = 64,
412 .result_num_fields = 9
414 { /* class_tid: 1, , table: em.vxlan */
415 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
416 .resource_type = TF_MEM_INTERNAL,
417 .direction = TF_DIR_RX,
420 .cond_false_goto = 1,
421 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
422 .cond_start_idx = 23,
424 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
425 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
426 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
427 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
428 .key_start_idx = 201,
429 .blob_key_bit_size = 200,
431 .key_num_fields = 11,
432 .result_start_idx = 109,
433 .result_bit_size = 64,
434 .result_num_fields = 9
436 { /* class_tid: 1, , table: eem.vxlan */
437 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
438 .resource_type = TF_MEM_EXTERNAL,
439 .direction = TF_DIR_RX,
442 .cond_false_goto = 0,
443 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
444 .cond_start_idx = 24,
446 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
447 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
448 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
449 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
450 .key_start_idx = 212,
451 .blob_key_bit_size = 448,
453 .key_num_fields = 11,
454 .result_start_idx = 118,
455 .result_bit_size = 64,
456 .result_num_fields = 9
458 { /* class_tid: 2, , table: l2_cntxt_tcam_cache.rd */
459 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
461 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
462 .direction = TF_DIR_TX,
465 .cond_false_goto = 1,
466 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
467 .cond_start_idx = 25,
469 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
470 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
471 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
472 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
473 .key_start_idx = 223,
474 .blob_key_bit_size = 8,
477 .ident_start_idx = 9,
480 { /* class_tid: 2, , table: mac_addr_cache.rd */
481 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
483 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
484 .direction = TF_DIR_TX,
487 .cond_false_goto = 1,
488 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
489 .cond_start_idx = 26,
491 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
492 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
493 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
494 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
495 .key_start_idx = 224,
496 .blob_key_bit_size = 73,
499 .ident_start_idx = 10,
502 { /* class_tid: 2, , table: control.0 */
503 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
504 .direction = TF_DIR_TX,
507 .cond_false_goto = 3,
508 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
509 .cond_start_idx = 26,
511 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
512 .fdb_operand = BNXT_ULP_RF_IDX_RID,
513 .byte_order = BNXT_ULP_BYTE_ORDER_LE
515 { /* class_tid: 2, , table: l2_cntxt_tcam.0 */
516 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
517 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
518 .direction = TF_DIR_TX,
521 .cond_false_goto = 1,
522 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
523 .cond_start_idx = 27,
525 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
526 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
527 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
528 .fdb_operand = BNXT_ULP_RF_IDX_RID,
529 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
531 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
532 .key_start_idx = 229,
533 .blob_key_bit_size = 167,
535 .key_num_fields = 13,
536 .result_start_idx = 127,
537 .result_bit_size = 64,
538 .result_num_fields = 13,
539 .ident_start_idx = 11,
542 { /* class_tid: 2, , table: mac_addr_cache.wr */
543 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
545 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
546 .direction = TF_DIR_TX,
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_WRITE,
554 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
555 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
556 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
557 .key_start_idx = 242,
558 .blob_key_bit_size = 73,
561 .result_start_idx = 140,
562 .result_bit_size = 62,
563 .result_num_fields = 4
565 { /* class_tid: 2, , table: profile_tcam_cache.rd */
566 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
568 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
569 .direction = TF_DIR_TX,
572 .cond_false_goto = 1,
573 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
574 .cond_start_idx = 27,
576 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
577 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
578 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
579 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
580 .key_start_idx = 247,
581 .blob_key_bit_size = 14,
584 .ident_start_idx = 12,
587 { /* class_tid: 2, , table: control.gen_tbl_miss */
588 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
589 .direction = TF_DIR_TX,
592 .cond_false_goto = 1,
593 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
594 .cond_start_idx = 27,
596 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
597 .fdb_operand = BNXT_ULP_RF_IDX_RID,
598 .byte_order = BNXT_ULP_BYTE_ORDER_LE
600 { /* class_tid: 2, , table: control.conflict_check */
601 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
602 .direction = TF_DIR_TX,
605 .cond_false_goto = 1023,
606 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
607 .cond_start_idx = 28,
609 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
611 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
612 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
613 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
614 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
615 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
616 .func_dst_opr = BNXT_ULP_RF_IDX_CC },
617 .byte_order = BNXT_ULP_BYTE_ORDER_LE
619 { /* class_tid: 2, , table: profile_tcam.ipv4 */
620 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
621 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
622 .direction = TF_DIR_TX,
625 .cond_false_goto = 1,
626 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
627 .cond_start_idx = 29,
629 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
630 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
631 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
632 .fdb_operand = BNXT_ULP_RF_IDX_RID,
633 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
634 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
635 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
636 .key_start_idx = 250,
637 .blob_key_bit_size = 81,
639 .key_num_fields = 43,
640 .result_start_idx = 144,
641 .result_bit_size = 38,
642 .result_num_fields = 17,
643 .ident_start_idx = 15,
646 { /* class_tid: 2, , table: profile_tcam.ipv6 */
647 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
648 .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
649 .direction = TF_DIR_TX,
652 .cond_false_goto = 1,
653 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
654 .cond_start_idx = 30,
656 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
657 .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
658 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
659 .fdb_operand = BNXT_ULP_RF_IDX_RID,
660 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
661 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
662 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
663 .key_start_idx = 293,
664 .blob_key_bit_size = 81,
666 .key_num_fields = 43,
667 .result_start_idx = 161,
668 .result_bit_size = 38,
669 .result_num_fields = 17,
670 .ident_start_idx = 16,
673 { /* class_tid: 2, , table: profile_tcam_cache.wr */
674 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
676 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
677 .direction = TF_DIR_TX,
680 .cond_false_goto = 1,
681 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
682 .cond_start_idx = 30,
684 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
685 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
686 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
687 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
688 .key_start_idx = 336,
689 .blob_key_bit_size = 14,
692 .result_start_idx = 178,
693 .result_bit_size = 122,
694 .result_num_fields = 5
696 { /* class_tid: 2, , table: em.ipv4 */
697 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
698 .resource_type = TF_MEM_INTERNAL,
699 .direction = TF_DIR_TX,
702 .cond_false_goto = 1,
703 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
704 .cond_start_idx = 30,
706 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
707 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
708 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
709 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
710 .key_start_idx = 339,
711 .blob_key_bit_size = 176,
713 .key_num_fields = 10,
714 .result_start_idx = 183,
715 .result_bit_size = 64,
716 .result_num_fields = 9
718 { /* class_tid: 2, , table: eem.ipv4 */
719 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
720 .resource_type = TF_MEM_EXTERNAL,
721 .direction = TF_DIR_TX,
724 .cond_false_goto = 1,
725 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
726 .cond_start_idx = 32,
728 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
729 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
730 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
731 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
732 .key_start_idx = 349,
733 .blob_key_bit_size = 448,
735 .key_num_fields = 10,
736 .result_start_idx = 192,
737 .result_bit_size = 64,
738 .result_num_fields = 9
740 { /* class_tid: 2, , table: em.ipv6 */
741 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
742 .resource_type = TF_MEM_INTERNAL,
743 .direction = TF_DIR_TX,
746 .cond_false_goto = 1,
747 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
748 .cond_start_idx = 34,
750 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
751 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
752 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
753 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
754 .key_start_idx = 359,
755 .blob_key_bit_size = 416,
757 .key_num_fields = 11,
758 .result_start_idx = 201,
759 .result_bit_size = 64,
760 .result_num_fields = 9
762 { /* class_tid: 2, , table: eem.ipv6 */
763 .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
764 .resource_type = TF_MEM_EXTERNAL,
765 .direction = TF_DIR_TX,
768 .cond_false_goto = 0,
769 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
770 .cond_start_idx = 35,
772 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
773 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
774 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
775 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
776 .key_start_idx = 370,
777 .blob_key_bit_size = 448,
779 .key_num_fields = 11,
780 .result_start_idx = 210,
781 .result_bit_size = 64,
782 .result_num_fields = 9
784 { /* class_tid: 3, , table: int_full_act_record.ing_0 */
785 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
786 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
788 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
789 .direction = TF_DIR_RX,
792 .cond_false_goto = 1,
793 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
794 .cond_start_idx = 35,
796 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
797 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
798 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
799 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
800 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
801 .result_start_idx = 219,
802 .result_bit_size = 128,
803 .result_num_fields = 26
805 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_rd */
806 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
808 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
809 .direction = TF_DIR_RX,
812 .cond_false_goto = 1,
813 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
814 .cond_start_idx = 35,
816 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
817 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
818 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
819 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
820 .key_start_idx = 381,
821 .blob_key_bit_size = 8,
824 .ident_start_idx = 17,
827 { /* class_tid: 3, , table: control.ing_0 */
828 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
829 .direction = TF_DIR_RX,
832 .cond_false_goto = 3,
833 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
834 .cond_start_idx = 35,
836 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
837 .fdb_operand = BNXT_ULP_RF_IDX_RID,
838 .byte_order = BNXT_ULP_BYTE_ORDER_LE
840 { /* class_tid: 3, , table: l2_cntxt_tcam.ing_0 */
841 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
842 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
843 .direction = TF_DIR_RX,
846 .cond_false_goto = 1,
847 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
848 .cond_start_idx = 36,
850 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
851 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
852 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
853 .fdb_operand = BNXT_ULP_RF_IDX_RID,
854 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
856 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
857 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
858 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
859 .key_start_idx = 382,
860 .blob_key_bit_size = 167,
862 .key_num_fields = 13,
863 .result_start_idx = 245,
864 .result_bit_size = 64,
865 .result_num_fields = 13,
866 .ident_start_idx = 17,
869 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */
870 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
872 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
873 .direction = TF_DIR_RX,
876 .cond_false_goto = 1,
877 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
878 .cond_start_idx = 36,
880 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
881 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
882 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
883 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
884 .key_start_idx = 395,
885 .blob_key_bit_size = 8,
888 .result_start_idx = 258,
889 .result_bit_size = 62,
890 .result_num_fields = 4
892 { /* class_tid: 3, , table: parif_def_lkup_arec_ptr.ing_0 */
893 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
894 .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
895 .direction = TF_DIR_RX,
898 .cond_false_goto = 1,
899 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
900 .cond_start_idx = 36,
902 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
903 .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
904 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
905 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
906 .result_start_idx = 262,
907 .result_bit_size = 32,
908 .result_num_fields = 1
910 { /* class_tid: 3, , table: parif_def_arec_ptr.ing_0 */
911 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
912 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
913 .direction = TF_DIR_RX,
916 .cond_false_goto = 1,
917 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
918 .cond_start_idx = 36,
920 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
921 .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
922 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
923 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
924 .result_start_idx = 263,
925 .result_bit_size = 32,
926 .result_num_fields = 1
928 { /* class_tid: 3, , table: parif_def_err_arec_ptr.ing_0 */
929 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
930 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
931 .direction = TF_DIR_RX,
934 .cond_false_goto = 1,
935 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
936 .cond_start_idx = 36,
938 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
939 .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
940 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
941 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
942 .result_start_idx = 264,
943 .result_bit_size = 32,
944 .result_num_fields = 1
946 { /* class_tid: 3, , table: control.egr_0 */
947 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
948 .direction = TF_DIR_RX,
951 .cond_false_goto = 6,
952 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
953 .cond_start_idx = 36,
955 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
956 .byte_order = BNXT_ULP_BYTE_ORDER_LE
958 { /* class_tid: 3, , table: int_full_act_record.egr_vfr */
959 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
960 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
962 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
963 .direction = TF_DIR_TX,
966 .cond_false_goto = 1,
967 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
968 .cond_start_idx = 37,
970 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
971 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
972 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
973 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
974 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
975 .result_start_idx = 265,
976 .result_bit_size = 128,
977 .result_num_fields = 26,
978 .encap_num_fields = 0
980 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_rd_vfr */
981 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
983 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
984 .direction = TF_DIR_TX,
987 .cond_false_goto = 1,
988 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
989 .cond_start_idx = 37,
991 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
992 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
993 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
994 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
995 .key_start_idx = 396,
996 .blob_key_bit_size = 8,
999 .ident_start_idx = 18,
1002 { /* class_tid: 3, , table: control.egr_1 */
1003 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1004 .direction = TF_DIR_RX,
1006 .cond_true_goto = 1,
1007 .cond_false_goto = 0,
1008 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1009 .cond_start_idx = 37,
1011 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1012 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1013 .byte_order = BNXT_ULP_BYTE_ORDER_LE
1015 { /* class_tid: 3, , table: l2_cntxt_tcam_bypass.egr_vfr */
1016 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1017 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1018 .direction = TF_DIR_TX,
1020 .cond_true_goto = 1,
1021 .cond_false_goto = 1,
1022 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1023 .cond_start_idx = 38,
1025 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1026 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1027 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1028 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1029 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1031 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1032 .key_start_idx = 397,
1033 .blob_key_bit_size = 167,
1034 .key_bit_size = 167,
1035 .key_num_fields = 13,
1036 .result_start_idx = 291,
1037 .result_bit_size = 64,
1038 .result_num_fields = 13,
1039 .ident_start_idx = 18,
1042 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
1043 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1044 .resource_sub_type =
1045 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1046 .direction = TF_DIR_TX,
1048 .cond_true_goto = 0,
1049 .cond_false_goto = 1,
1050 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1051 .cond_start_idx = 38,
1053 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1054 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1055 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1056 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1057 .key_start_idx = 410,
1058 .blob_key_bit_size = 8,
1060 .key_num_fields = 1,
1061 .result_start_idx = 304,
1062 .result_bit_size = 62,
1063 .result_num_fields = 4
1065 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
1066 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1067 .resource_sub_type =
1068 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1069 .direction = TF_DIR_TX,
1071 .cond_true_goto = 1,
1072 .cond_false_goto = 1,
1073 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1074 .cond_start_idx = 38,
1076 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1077 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1078 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1079 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1080 .key_start_idx = 411,
1081 .blob_key_bit_size = 8,
1083 .key_num_fields = 1,
1084 .ident_start_idx = 18,
1087 { /* class_tid: 3, , table: control.egr_2 */
1088 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1089 .direction = TF_DIR_RX,
1091 .cond_true_goto = 1,
1092 .cond_false_goto = 3,
1093 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1094 .cond_start_idx = 38,
1096 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1097 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1098 .byte_order = BNXT_ULP_BYTE_ORDER_LE
1100 { /* class_tid: 3, , table: l2_cntxt_tcam.egr_0 */
1101 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1102 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1103 .direction = TF_DIR_TX,
1105 .cond_true_goto = 1,
1106 .cond_false_goto = 1,
1107 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1108 .cond_start_idx = 39,
1110 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1111 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1112 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1113 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1114 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1115 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1116 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1117 .key_start_idx = 412,
1118 .blob_key_bit_size = 167,
1119 .key_bit_size = 167,
1120 .key_num_fields = 13,
1121 .result_start_idx = 308,
1122 .result_bit_size = 64,
1123 .result_num_fields = 13,
1124 .ident_start_idx = 18,
1127 { /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr */
1128 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1129 .resource_sub_type =
1130 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1131 .direction = TF_DIR_TX,
1133 .cond_true_goto = 1,
1134 .cond_false_goto = 1,
1135 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1136 .cond_start_idx = 39,
1138 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1139 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1140 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1141 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1142 .key_start_idx = 425,
1143 .blob_key_bit_size = 8,
1145 .key_num_fields = 1,
1146 .result_start_idx = 321,
1147 .result_bit_size = 62,
1148 .result_num_fields = 4
1150 { /* class_tid: 3, , table: int_full_act_record.egr_0 */
1151 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1152 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1153 .resource_sub_type =
1154 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1155 .direction = TF_DIR_TX,
1157 .cond_true_goto = 1,
1158 .cond_false_goto = 1,
1159 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1160 .cond_start_idx = 41,
1162 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1163 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1164 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1165 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1166 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1167 .result_start_idx = 325,
1168 .result_bit_size = 128,
1169 .result_num_fields = 26,
1170 .encap_num_fields = 0
1172 { /* class_tid: 3, , table: parif_def_lkup_arec_ptr.egr_0 */
1173 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1174 .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
1175 .direction = TF_DIR_TX,
1177 .cond_true_goto = 1,
1178 .cond_false_goto = 1,
1179 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1180 .cond_start_idx = 41,
1182 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1183 .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1184 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1185 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1186 .result_start_idx = 351,
1187 .result_bit_size = 32,
1188 .result_num_fields = 1
1190 { /* class_tid: 3, , table: parif_def_arec_ptr.egr_0 */
1191 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1192 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1193 .direction = TF_DIR_TX,
1195 .cond_true_goto = 1,
1196 .cond_false_goto = 1,
1197 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1198 .cond_start_idx = 41,
1200 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1201 .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1202 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1203 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1204 .result_start_idx = 352,
1205 .result_bit_size = 32,
1206 .result_num_fields = 1
1208 { /* class_tid: 3, , table: parif_def_err_arec_ptr.egr_0 */
1209 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1210 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1211 .direction = TF_DIR_TX,
1213 .cond_true_goto = 0,
1214 .cond_false_goto = 0,
1215 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1216 .cond_start_idx = 41,
1218 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1219 .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1220 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1221 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1222 .result_start_idx = 353,
1223 .result_bit_size = 32,
1224 .result_num_fields = 1
1226 { /* class_tid: 4, , table: int_full_act_record.loopback */
1227 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1228 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1229 .resource_sub_type =
1230 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1231 .direction = TF_DIR_TX,
1233 .cond_true_goto = 1,
1234 .cond_false_goto = 1,
1235 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1236 .cond_start_idx = 41,
1238 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_GLB_REGFILE,
1239 .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR,
1240 .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1241 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1242 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1243 .result_start_idx = 354,
1244 .result_bit_size = 128,
1245 .result_num_fields = 26,
1246 .encap_num_fields = 0
1248 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_rd_egr */
1249 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1250 .resource_sub_type =
1251 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1252 .direction = TF_DIR_TX,
1254 .cond_true_goto = 1,
1255 .cond_false_goto = 1,
1256 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1257 .cond_start_idx = 41,
1259 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1260 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1261 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1262 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1263 .key_start_idx = 426,
1264 .blob_key_bit_size = 8,
1266 .key_num_fields = 1,
1267 .ident_start_idx = 19,
1270 { /* class_tid: 4, , table: control.vf_0 */
1271 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1272 .direction = TF_DIR_TX,
1274 .cond_true_goto = 1,
1275 .cond_false_goto = 3,
1276 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1277 .cond_start_idx = 41,
1279 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1280 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1281 .byte_order = BNXT_ULP_BYTE_ORDER_LE
1283 { /* class_tid: 4, , table: l2_cntxt_tcam.vf_egr */
1284 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1285 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1286 .direction = TF_DIR_TX,
1288 .cond_true_goto = 1,
1289 .cond_false_goto = 1,
1290 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1291 .cond_start_idx = 42,
1293 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1294 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1295 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1296 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1297 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1299 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1300 .key_start_idx = 427,
1301 .blob_key_bit_size = 167,
1302 .key_bit_size = 167,
1303 .key_num_fields = 13,
1304 .result_start_idx = 380,
1305 .result_bit_size = 64,
1306 .result_num_fields = 13,
1307 .ident_start_idx = 19,
1310 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_egr_wr */
1311 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1312 .resource_sub_type =
1313 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1314 .direction = TF_DIR_TX,
1316 .cond_true_goto = 1,
1317 .cond_false_goto = 1,
1318 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1319 .cond_start_idx = 42,
1321 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1322 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1323 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1324 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1325 .key_start_idx = 440,
1326 .blob_key_bit_size = 8,
1328 .key_num_fields = 1,
1329 .result_start_idx = 393,
1330 .result_bit_size = 62,
1331 .result_num_fields = 4
1333 { /* class_tid: 4, , table: parif_def_lkup_arec_ptr.vf_egr */
1334 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1335 .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
1336 .direction = TF_DIR_TX,
1338 .cond_true_goto = 1,
1339 .cond_false_goto = 1,
1340 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1341 .cond_start_idx = 42,
1343 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
1344 .tbl_operand = ULP_WP_SYM_LOOPBACK_PARIF,
1345 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1346 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1347 .result_start_idx = 397,
1348 .result_bit_size = 32,
1349 .result_num_fields = 1
1351 { /* class_tid: 4, , table: parif_def_arec_ptr.vf_egr */
1352 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1353 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1354 .direction = TF_DIR_TX,
1356 .cond_true_goto = 1,
1357 .cond_false_goto = 1,
1358 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1359 .cond_start_idx = 42,
1361 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
1362 .tbl_operand = ULP_WP_SYM_LOOPBACK_PARIF,
1363 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1364 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1365 .result_start_idx = 398,
1366 .result_bit_size = 32,
1367 .result_num_fields = 1
1369 { /* class_tid: 4, , table: parif_def_err_arec_ptr.vf_egr */
1370 .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1371 .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1372 .direction = TF_DIR_TX,
1374 .cond_true_goto = 1,
1375 .cond_false_goto = 1,
1376 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1377 .cond_start_idx = 42,
1379 .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
1380 .tbl_operand = ULP_WP_SYM_LOOPBACK_PARIF,
1381 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1382 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1383 .result_start_idx = 399,
1384 .result_bit_size = 32,
1385 .result_num_fields = 1
1387 { /* class_tid: 4, , table: int_full_act_record.vf_ing */
1388 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1389 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1390 .resource_sub_type =
1391 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1392 .direction = TF_DIR_RX,
1394 .cond_true_goto = 1,
1395 .cond_false_goto = 1,
1396 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1397 .cond_start_idx = 42,
1399 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1400 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1401 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1402 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG,
1403 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1404 .result_start_idx = 400,
1405 .result_bit_size = 128,
1406 .result_num_fields = 26,
1407 .encap_num_fields = 0
1409 { /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vf_ing */
1410 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1411 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1412 .direction = TF_DIR_RX,
1414 .cond_true_goto = 1,
1415 .cond_false_goto = 1,
1416 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1417 .cond_start_idx = 42,
1419 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1420 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1421 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1422 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1424 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1425 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1426 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1427 .key_start_idx = 441,
1428 .blob_key_bit_size = 167,
1429 .key_bit_size = 167,
1430 .key_num_fields = 13,
1431 .result_start_idx = 426,
1432 .result_bit_size = 64,
1433 .result_num_fields = 13,
1434 .ident_start_idx = 20,
1437 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.vfr_rd_egr0 */
1438 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1439 .resource_sub_type =
1440 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1441 .direction = TF_DIR_TX,
1443 .cond_true_goto = 1,
1444 .cond_false_goto = 1,
1445 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1446 .cond_start_idx = 42,
1448 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1449 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1450 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1451 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1452 .key_start_idx = 454,
1453 .blob_key_bit_size = 8,
1455 .key_num_fields = 1,
1456 .ident_start_idx = 20,
1459 { /* class_tid: 4, , table: control.vfr_0 */
1460 .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1461 .direction = TF_DIR_TX,
1463 .cond_true_goto = 1,
1464 .cond_false_goto = 3,
1465 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1466 .cond_start_idx = 42,
1468 .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1469 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1470 .byte_order = BNXT_ULP_BYTE_ORDER_LE
1472 { /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_egr0 */
1473 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1474 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1475 .direction = TF_DIR_TX,
1477 .cond_true_goto = 1,
1478 .cond_false_goto = 1,
1479 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1480 .cond_start_idx = 43,
1482 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1483 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1484 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1485 .fdb_operand = BNXT_ULP_RF_IDX_RID,
1486 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1488 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1489 .key_start_idx = 455,
1490 .blob_key_bit_size = 167,
1491 .key_bit_size = 167,
1492 .key_num_fields = 13,
1493 .result_start_idx = 439,
1494 .result_bit_size = 64,
1495 .result_num_fields = 13,
1496 .ident_start_idx = 20,
1499 { /* class_tid: 4, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
1500 .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1501 .resource_sub_type =
1502 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1503 .direction = TF_DIR_TX,
1505 .cond_true_goto = 1,
1506 .cond_false_goto = 1,
1507 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1508 .cond_start_idx = 43,
1510 .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1511 .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1512 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1513 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1514 .key_start_idx = 468,
1515 .blob_key_bit_size = 8,
1517 .key_num_fields = 1,
1518 .result_start_idx = 452,
1519 .result_bit_size = 62,
1520 .result_num_fields = 4
1522 { /* class_tid: 4, , table: int_vtag_encap_record.vfr_egr0 */
1523 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1524 .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
1525 .resource_sub_type =
1526 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1527 .direction = TF_DIR_TX,
1529 .cond_true_goto = 1,
1530 .cond_false_goto = 1,
1531 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1532 .cond_start_idx = 43,
1534 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1535 .tbl_operand = BNXT_ULP_RF_IDX_ENCAP_PTR_0,
1536 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1537 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1538 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1539 .result_start_idx = 456,
1540 .result_bit_size = 0,
1541 .result_num_fields = 0,
1542 .encap_num_fields = 12
1544 { /* class_tid: 4, , table: int_full_act_record.vfr_egr0 */
1545 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1546 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1547 .resource_sub_type =
1548 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1549 .direction = TF_DIR_TX,
1551 .cond_true_goto = 1,
1552 .cond_false_goto = 1,
1553 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1554 .cond_start_idx = 43,
1556 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1557 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1558 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1559 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1560 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1561 .result_start_idx = 468,
1562 .result_bit_size = 128,
1563 .result_num_fields = 26
1565 { /* class_tid: 4, , table: int_full_act_record.vfr_ing0 */
1566 .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1567 .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1568 .resource_sub_type =
1569 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1570 .direction = TF_DIR_RX,
1572 .cond_true_goto = 1,
1573 .cond_false_goto = 1,
1574 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1575 .cond_start_idx = 43,
1577 .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1578 .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1579 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1580 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1581 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1582 .result_start_idx = 494,
1583 .result_bit_size = 128,
1584 .result_num_fields = 26
1586 { /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_dtagged_ing0 */
1587 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1588 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1589 .direction = TF_DIR_RX,
1591 .cond_true_goto = 1,
1592 .cond_false_goto = 1,
1593 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1594 .cond_start_idx = 43,
1596 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1597 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1598 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1599 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1601 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1602 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1603 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1604 .key_start_idx = 469,
1605 .blob_key_bit_size = 167,
1606 .key_bit_size = 167,
1607 .key_num_fields = 13,
1608 .result_start_idx = 520,
1609 .result_bit_size = 64,
1610 .result_num_fields = 13,
1611 .ident_start_idx = 20,
1614 { /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_stagged_ing0 */
1615 .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1616 .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1617 .direction = TF_DIR_RX,
1619 .cond_true_goto = 0,
1620 .cond_false_goto = 0,
1621 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1622 .cond_start_idx = 43,
1624 .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1625 .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1626 .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1627 .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1629 .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1630 .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1631 .byte_order = BNXT_ULP_BYTE_ORDER_LE,
1632 .key_start_idx = 482,
1633 .blob_key_bit_size = 167,
1634 .key_bit_size = 167,
1635 .key_num_fields = 13,
1636 .result_start_idx = 533,
1637 .result_bit_size = 64,
1638 .result_num_fields = 13,
1639 .ident_start_idx = 20,
1644 struct bnxt_ulp_mapper_cond_info ulp_wh_plus_class_cond_list[] = {
1645 /* cond_reject: wh_plus, class_tid: 1 */
1647 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
1648 .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
1650 /* cond_execute: class_tid: 1, l2_cntxt_tcam_cache.rd */
1652 .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET,
1653 .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC
1655 /* cond_execute: class_tid: 1, control.0 */
1657 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1658 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1660 /* cond_execute: class_tid: 1, control.1 */
1662 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1663 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1665 /* cond_execute: class_tid: 1, control.2 */
1667 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1668 .cond_operand = BNXT_ULP_RF_IDX_CC
1670 /* cond_execute: class_tid: 1, profile_tcam.ipv4 */
1672 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1673 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1676 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1677 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1679 /* cond_execute: class_tid: 1, profile_tcam.ipv6 */
1681 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1682 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
1685 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1686 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1688 /* cond_execute: class_tid: 1, profile_tcam.ipv4_vxlan */
1690 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1691 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1694 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1695 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1697 /* cond_execute: class_tid: 1, em.ipv4 */
1699 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1702 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1703 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1706 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1707 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1709 /* cond_execute: class_tid: 1, eem.ipv4 */
1711 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
1714 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1715 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1718 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1719 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1721 /* cond_execute: class_tid: 1, em.ipv6 */
1723 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1726 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1727 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
1730 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1731 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1733 /* cond_execute: class_tid: 1, eem.ipv6 */
1735 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
1738 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1739 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
1742 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
1743 .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
1745 /* cond_execute: class_tid: 1, em.vxlan */
1747 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1749 /* cond_reject: wh_plus, class_tid: 2 */
1751 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
1752 .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
1754 /* cond_execute: class_tid: 2, l2_cntxt_tcam_cache.rd */
1756 .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET,
1757 .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_SMAC
1759 /* cond_execute: class_tid: 2, control.0 */
1761 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1762 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1764 /* cond_execute: class_tid: 2, control.gen_tbl_miss */
1766 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1767 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1769 /* cond_execute: class_tid: 2, control.conflict_check */
1771 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1772 .cond_operand = BNXT_ULP_RF_IDX_CC
1774 /* cond_execute: class_tid: 2, profile_tcam.ipv4 */
1776 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1777 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1779 /* cond_execute: class_tid: 2, em.ipv4 */
1781 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1784 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1785 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1787 /* cond_execute: class_tid: 2, eem.ipv4 */
1789 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_IS_SET,
1792 .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
1793 .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
1795 /* cond_execute: class_tid: 2, em.ipv6 */
1797 .cond_opcode = BNXT_ULP_COND_OPC_EXT_MEM_NOT_SET,
1799 /* cond_execute: class_tid: 3, control.ing_0 */
1801 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1802 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1804 /* cond_execute: class_tid: 3, control.egr_0 */
1806 .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
1807 .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE
1809 /* cond_execute: class_tid: 3, control.egr_1 */
1811 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1812 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1814 /* cond_execute: class_tid: 3, control.egr_2 */
1816 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1817 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1819 /* cond_execute: class_tid: 3, l2_cntxt_tcam_cache.egr_wr */
1821 .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
1822 .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE
1825 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1826 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1828 /* cond_execute: class_tid: 4, control.vf_0 */
1830 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1831 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1833 /* cond_execute: class_tid: 4, control.vfr_0 */
1835 .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
1836 .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
1840 struct bnxt_ulp_mapper_key_info ulp_wh_plus_class_key_info_list[] = {
1841 /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
1843 .field_info_mask = {
1844 .description = "svif",
1845 .field_bit_size = 8,
1846 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1847 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
1849 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
1850 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
1852 .field_info_spec = {
1853 .description = "svif",
1854 .field_bit_size = 8,
1855 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1856 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
1858 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
1859 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
1862 /* class_tid: 1, , table: mac_addr_cache.rd */
1864 .field_info_mask = {
1865 .description = "svif",
1866 .field_bit_size = 8,
1867 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1868 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
1870 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
1871 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
1873 .field_info_spec = {
1874 .description = "svif",
1875 .field_bit_size = 8,
1876 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1877 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
1879 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
1880 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
1884 .field_info_mask = {
1885 .description = "tun_hdr",
1886 .field_bit_size = 4,
1887 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1888 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
1890 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
1892 .field_info_spec = {
1893 .description = "tun_hdr",
1894 .field_bit_size = 4,
1895 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1896 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
1898 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
1902 .field_info_mask = {
1903 .description = "one_tag",
1904 .field_bit_size = 1,
1905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1906 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
1910 .field_info_spec = {
1911 .description = "one_tag",
1912 .field_bit_size = 1,
1913 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1914 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
1916 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
1917 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
1921 .field_info_mask = {
1922 .description = "vid",
1923 .field_bit_size = 12,
1924 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1925 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
1927 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
1928 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
1929 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
1930 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
1931 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
1932 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
1933 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
1934 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
1935 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
1937 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
1938 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
1939 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1941 .field_info_spec = {
1942 .description = "vid",
1943 .field_bit_size = 12,
1944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1945 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
1947 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
1948 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
1949 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
1950 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
1951 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
1952 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
1953 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
1954 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
1955 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
1957 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
1958 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
1959 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
1963 .field_info_mask = {
1964 .description = "mac_addr",
1965 .field_bit_size = 48,
1966 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1967 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
1969 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
1970 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
1972 .field_info_spec = {
1973 .description = "mac_addr",
1974 .field_bit_size = 48,
1975 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
1976 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
1978 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
1979 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
1982 /* class_tid: 1, , table: l2_cntxt_tcam.0 */
1984 .field_info_mask = {
1985 .description = "l2_ivlan_vid",
1986 .field_bit_size = 12,
1987 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
1988 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
1990 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
1991 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
1992 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
1993 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
1994 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
1995 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
1996 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
1997 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
1998 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2000 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2001 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2002 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2004 .field_info_spec = {
2005 .description = "l2_ivlan_vid",
2006 .field_bit_size = 12,
2007 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2008 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2010 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2011 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2012 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2013 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2014 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2015 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2016 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2017 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2018 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2020 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2021 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2022 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2026 .field_info_mask = {
2027 .description = "l2_ovlan_vid",
2028 .field_bit_size = 12,
2029 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2030 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2032 .field_info_spec = {
2033 .description = "l2_ovlan_vid",
2034 .field_bit_size = 12,
2035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2036 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2040 .field_info_mask = {
2041 .description = "mac0_addr",
2042 .field_bit_size = 48,
2043 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2044 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2046 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2047 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2049 .field_info_spec = {
2050 .description = "mac0_addr",
2051 .field_bit_size = 48,
2052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2053 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2055 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2056 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2060 .field_info_mask = {
2061 .description = "svif",
2062 .field_bit_size = 8,
2063 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2064 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2066 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2067 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2069 .field_info_spec = {
2070 .description = "svif",
2071 .field_bit_size = 8,
2072 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2073 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2075 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2076 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2080 .field_info_mask = {
2081 .description = "sparif",
2082 .field_bit_size = 4,
2083 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2084 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2086 .field_info_spec = {
2087 .description = "sparif",
2088 .field_bit_size = 4,
2089 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2090 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2094 .field_info_mask = {
2095 .description = "tl2_ivlan_vid",
2096 .field_bit_size = 12,
2097 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2098 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2100 .field_info_spec = {
2101 .description = "tl2_ivlan_vid",
2102 .field_bit_size = 12,
2103 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2104 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2108 .field_info_mask = {
2109 .description = "tl2_ovlan_vid",
2110 .field_bit_size = 12,
2111 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2112 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2114 .field_info_spec = {
2115 .description = "tl2_ovlan_vid",
2116 .field_bit_size = 12,
2117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2118 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2122 .field_info_mask = {
2123 .description = "mac1_addr",
2124 .field_bit_size = 48,
2125 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2126 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2128 .field_info_spec = {
2129 .description = "mac1_addr",
2130 .field_bit_size = 48,
2131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2132 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2136 .field_info_mask = {
2137 .description = "l2_num_vtags",
2138 .field_bit_size = 2,
2139 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2140 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2144 .field_info_spec = {
2145 .description = "l2_num_vtags",
2146 .field_bit_size = 2,
2147 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2148 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2150 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
2151 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff}
2155 .field_info_mask = {
2156 .description = "tl2_num_vtags",
2157 .field_bit_size = 2,
2158 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2159 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2161 .field_info_spec = {
2162 .description = "tl2_num_vtags",
2163 .field_bit_size = 2,
2164 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2165 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2169 .field_info_mask = {
2170 .description = "tun_hdr_type",
2171 .field_bit_size = 4,
2172 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2173 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2175 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2177 .field_info_spec = {
2178 .description = "tun_hdr_type",
2179 .field_bit_size = 4,
2180 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2181 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2183 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2187 .field_info_mask = {
2188 .description = "key_type",
2189 .field_bit_size = 2,
2190 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2191 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2193 .field_info_spec = {
2194 .description = "key_type",
2195 .field_bit_size = 2,
2196 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2197 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2201 .field_info_mask = {
2202 .description = "valid",
2203 .field_bit_size = 1,
2204 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2205 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2209 .field_info_spec = {
2210 .description = "valid",
2211 .field_bit_size = 1,
2212 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2213 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2218 /* class_tid: 1, , table: mac_addr_cache.wr */
2220 .field_info_mask = {
2221 .description = "svif",
2222 .field_bit_size = 8,
2223 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2224 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2226 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2227 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2229 .field_info_spec = {
2230 .description = "svif",
2231 .field_bit_size = 8,
2232 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2233 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2235 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2236 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2240 .field_info_mask = {
2241 .description = "tun_hdr",
2242 .field_bit_size = 4,
2243 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2244 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2246 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2248 .field_info_spec = {
2249 .description = "tun_hdr",
2250 .field_bit_size = 4,
2251 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2252 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2254 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
2258 .field_info_mask = {
2259 .description = "one_tag",
2260 .field_bit_size = 1,
2261 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2262 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2266 .field_info_spec = {
2267 .description = "one_tag",
2268 .field_bit_size = 1,
2269 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2270 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2272 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
2273 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
2277 .field_info_mask = {
2278 .description = "vid",
2279 .field_bit_size = 12,
2280 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2281 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2283 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2284 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2285 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2286 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2287 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2288 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2289 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2290 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2291 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2293 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2294 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2295 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2297 .field_info_spec = {
2298 .description = "vid",
2299 .field_bit_size = 12,
2300 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2301 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2303 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
2304 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
2305 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
2306 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
2307 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
2308 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
2309 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
2310 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
2311 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
2313 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
2314 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
2315 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2319 .field_info_mask = {
2320 .description = "mac_addr",
2321 .field_bit_size = 48,
2322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2323 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2325 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2326 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2328 .field_info_spec = {
2329 .description = "mac_addr",
2330 .field_bit_size = 48,
2331 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2332 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2334 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2335 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2338 /* class_tid: 1, , table: profile_tcam_cache.rd */
2340 .field_info_mask = {
2341 .description = "recycle_cnt",
2342 .field_bit_size = 2,
2343 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2344 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2348 .field_info_spec = {
2349 .description = "recycle_cnt",
2350 .field_bit_size = 2,
2351 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2352 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2356 .field_info_mask = {
2357 .description = "prof_func_id",
2358 .field_bit_size = 7,
2359 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2360 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2364 .field_info_spec = {
2365 .description = "prof_func_id",
2366 .field_bit_size = 7,
2367 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2368 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
2370 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2371 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
2372 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
2374 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
2375 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
2376 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
2378 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
2379 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
2383 .field_info_mask = {
2384 .description = "hdr_sig_id",
2385 .field_bit_size = 5,
2386 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2387 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2391 .field_info_spec = {
2392 .description = "hdr_sig_id",
2393 .field_bit_size = 5,
2394 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2395 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2397 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
2398 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
2401 /* class_tid: 1, , table: profile_tcam.ipv4 */
2403 .field_info_mask = {
2404 .description = "l4_hdr_is_udp_tcp",
2405 .field_bit_size = 1,
2406 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2407 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2409 .field_info_spec = {
2410 .description = "l4_hdr_is_udp_tcp",
2411 .field_bit_size = 1,
2412 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2413 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2417 .field_info_mask = {
2418 .description = "l4_hdr_type",
2419 .field_bit_size = 4,
2420 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2421 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2423 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2424 BNXT_ULP_CF_IDX_O_L4 & 0xff},
2425 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
2426 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
2428 .field_info_spec = {
2429 .description = "l4_hdr_type",
2430 .field_bit_size = 4,
2431 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2432 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
2434 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
2435 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
2436 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
2437 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
2438 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
2439 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
2440 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
2441 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
2442 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
2444 ULP_WP_SYM_L4_HDR_TYPE_TCP},
2445 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
2447 ULP_WP_SYM_L4_HDR_TYPE_UDP}
2451 .field_info_mask = {
2452 .description = "l4_hdr_error",
2453 .field_bit_size = 1,
2454 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2455 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2457 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2458 BNXT_ULP_CF_IDX_O_L4 & 0xff}
2460 .field_info_spec = {
2461 .description = "l4_hdr_error",
2462 .field_bit_size = 1,
2463 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2464 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2468 .field_info_mask = {
2469 .description = "l4_hdr_valid",
2470 .field_bit_size = 1,
2471 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2472 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2474 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2475 BNXT_ULP_CF_IDX_O_L4 & 0xff}
2477 .field_info_spec = {
2478 .description = "l4_hdr_valid",
2479 .field_bit_size = 1,
2480 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2481 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2483 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
2484 BNXT_ULP_CF_IDX_O_L4 & 0xff}
2488 .field_info_mask = {
2489 .description = "l3_ipv6_cmp_dst",
2490 .field_bit_size = 1,
2491 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2492 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2494 .field_info_spec = {
2495 .description = "l3_ipv6_cmp_dst",
2496 .field_bit_size = 1,
2497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2498 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2502 .field_info_mask = {
2503 .description = "l3_ipv6_cmp_src",
2504 .field_bit_size = 1,
2505 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2506 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2508 .field_info_spec = {
2509 .description = "l3_ipv6_cmp_src",
2510 .field_bit_size = 1,
2511 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2512 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2516 .field_info_mask = {
2517 .description = "l3_hdr_isIP",
2518 .field_bit_size = 1,
2519 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2520 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2522 .field_info_spec = {
2523 .description = "l3_hdr_isIP",
2524 .field_bit_size = 1,
2525 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2526 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2530 .field_info_mask = {
2531 .description = "l3_hdr_type",
2532 .field_bit_size = 4,
2533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2534 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2538 .field_info_spec = {
2539 .description = "l3_hdr_type",
2540 .field_bit_size = 4,
2541 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2542 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2546 .field_info_mask = {
2547 .description = "l3_hdr_error",
2548 .field_bit_size = 1,
2549 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2550 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2554 .field_info_spec = {
2555 .description = "l3_hdr_error",
2556 .field_bit_size = 1,
2557 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2558 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2562 .field_info_mask = {
2563 .description = "l3_hdr_valid",
2564 .field_bit_size = 1,
2565 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2566 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2570 .field_info_spec = {
2571 .description = "l3_hdr_valid",
2572 .field_bit_size = 1,
2573 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2574 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2576 ULP_WP_SYM_L3_HDR_VALID_YES}
2580 .field_info_mask = {
2581 .description = "l2_two_vtags",
2582 .field_bit_size = 1,
2583 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2584 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2588 .field_info_spec = {
2589 .description = "l2_two_vtags",
2590 .field_bit_size = 1,
2591 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2592 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2596 .field_info_mask = {
2597 .description = "l2_vtag_present",
2598 .field_bit_size = 1,
2599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2600 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2604 .field_info_spec = {
2605 .description = "l2_vtag_present",
2606 .field_bit_size = 1,
2607 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2608 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2610 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
2611 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
2615 .field_info_mask = {
2616 .description = "l2_uc_mc_bc",
2617 .field_bit_size = 2,
2618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2619 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2623 .field_info_spec = {
2624 .description = "l2_uc_mc_bc",
2625 .field_bit_size = 2,
2626 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2627 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2631 .field_info_mask = {
2632 .description = "l2_hdr_type",
2633 .field_bit_size = 2,
2634 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2635 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2639 .field_info_spec = {
2640 .description = "l2_hdr_type",
2641 .field_bit_size = 2,
2642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2643 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2647 .field_info_mask = {
2648 .description = "l2_hdr_error",
2649 .field_bit_size = 1,
2650 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2651 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2655 .field_info_spec = {
2656 .description = "l2_hdr_error",
2657 .field_bit_size = 1,
2658 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2659 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2663 .field_info_mask = {
2664 .description = "l2_hdr_valid",
2665 .field_bit_size = 1,
2666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2667 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2671 .field_info_spec = {
2672 .description = "l2_hdr_valid",
2673 .field_bit_size = 1,
2674 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2675 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2677 ULP_WP_SYM_L2_HDR_VALID_YES}
2681 .field_info_mask = {
2682 .description = "tun_hdr_flags",
2683 .field_bit_size = 3,
2684 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2685 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2687 .field_info_spec = {
2688 .description = "tun_hdr_flags",
2689 .field_bit_size = 3,
2690 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2691 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2695 .field_info_mask = {
2696 .description = "tun_hdr_type",
2697 .field_bit_size = 4,
2698 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2699 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2701 .field_info_spec = {
2702 .description = "tun_hdr_type",
2703 .field_bit_size = 4,
2704 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2705 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2709 .field_info_mask = {
2710 .description = "tun_hdr_err",
2711 .field_bit_size = 1,
2712 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2713 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2715 .field_info_spec = {
2716 .description = "tun_hdr_err",
2717 .field_bit_size = 1,
2718 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2719 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2723 .field_info_mask = {
2724 .description = "tun_hdr_valid",
2725 .field_bit_size = 1,
2726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2727 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2731 .field_info_spec = {
2732 .description = "tun_hdr_valid",
2733 .field_bit_size = 1,
2734 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2735 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2739 .field_info_mask = {
2740 .description = "tl4_hdr_is_udp_tcp",
2741 .field_bit_size = 1,
2742 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2743 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2745 .field_info_spec = {
2746 .description = "tl4_hdr_is_udp_tcp",
2747 .field_bit_size = 1,
2748 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2749 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2753 .field_info_mask = {
2754 .description = "tl4_hdr_type",
2755 .field_bit_size = 4,
2756 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2757 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2759 .field_info_spec = {
2760 .description = "tl4_hdr_type",
2761 .field_bit_size = 4,
2762 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2763 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2767 .field_info_mask = {
2768 .description = "tl4_hdr_error",
2769 .field_bit_size = 1,
2770 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2771 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2773 .field_info_spec = {
2774 .description = "tl4_hdr_error",
2775 .field_bit_size = 1,
2776 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2777 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2781 .field_info_mask = {
2782 .description = "tl4_hdr_valid",
2783 .field_bit_size = 1,
2784 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2785 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2789 .field_info_spec = {
2790 .description = "tl4_hdr_valid",
2791 .field_bit_size = 1,
2792 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2793 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2797 .field_info_mask = {
2798 .description = "tl3_ipv6_cmp_dst",
2799 .field_bit_size = 1,
2800 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2801 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2803 .field_info_spec = {
2804 .description = "tl3_ipv6_cmp_dst",
2805 .field_bit_size = 1,
2806 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2807 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2811 .field_info_mask = {
2812 .description = "tl3_ipv6_cmp_src",
2813 .field_bit_size = 1,
2814 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2815 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2817 .field_info_spec = {
2818 .description = "tl3_ipv6_cmp_src",
2819 .field_bit_size = 1,
2820 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2821 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2825 .field_info_mask = {
2826 .description = "tl3_hdr_isIP",
2827 .field_bit_size = 1,
2828 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2829 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2831 .field_info_spec = {
2832 .description = "tl3_hdr_isIP",
2833 .field_bit_size = 1,
2834 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2835 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2839 .field_info_mask = {
2840 .description = "tl3_hdr_type",
2841 .field_bit_size = 4,
2842 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2843 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2845 .field_info_spec = {
2846 .description = "tl3_hdr_type",
2847 .field_bit_size = 4,
2848 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2849 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2853 .field_info_mask = {
2854 .description = "tl3_hdr_error",
2855 .field_bit_size = 1,
2856 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2857 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2859 .field_info_spec = {
2860 .description = "tl3_hdr_error",
2861 .field_bit_size = 1,
2862 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2863 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2867 .field_info_mask = {
2868 .description = "tl3_hdr_valid",
2869 .field_bit_size = 1,
2870 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2871 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2875 .field_info_spec = {
2876 .description = "tl3_hdr_valid",
2877 .field_bit_size = 1,
2878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2879 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2883 .field_info_mask = {
2884 .description = "tl2_two_vtags",
2885 .field_bit_size = 1,
2886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2887 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2889 .field_info_spec = {
2890 .description = "tl2_two_vtags",
2891 .field_bit_size = 1,
2892 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2893 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2897 .field_info_mask = {
2898 .description = "tl2_vtag_present",
2899 .field_bit_size = 1,
2900 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2901 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2903 .field_info_spec = {
2904 .description = "tl2_vtag_present",
2905 .field_bit_size = 1,
2906 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2907 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2911 .field_info_mask = {
2912 .description = "tl2_uc_mc_bc",
2913 .field_bit_size = 2,
2914 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2915 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2917 .field_info_spec = {
2918 .description = "tl2_uc_mc_bc",
2919 .field_bit_size = 2,
2920 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2921 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2925 .field_info_mask = {
2926 .description = "tl2_hdr_type",
2927 .field_bit_size = 2,
2928 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2929 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2931 .field_info_spec = {
2932 .description = "tl2_hdr_type",
2933 .field_bit_size = 2,
2934 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2935 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2939 .field_info_mask = {
2940 .description = "tl2_hdr_valid",
2941 .field_bit_size = 1,
2942 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2943 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2947 .field_info_spec = {
2948 .description = "tl2_hdr_valid",
2949 .field_bit_size = 1,
2950 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2951 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2955 .field_info_mask = {
2956 .description = "hrec_next",
2957 .field_bit_size = 1,
2958 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2959 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2961 .field_info_spec = {
2962 .description = "hrec_next",
2963 .field_bit_size = 1,
2964 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2965 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2969 .field_info_mask = {
2970 .description = "reserved",
2971 .field_bit_size = 9,
2972 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2973 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2975 .field_info_spec = {
2976 .description = "reserved",
2977 .field_bit_size = 9,
2978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2979 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2983 .field_info_mask = {
2984 .description = "prof_func_id",
2985 .field_bit_size = 7,
2986 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2987 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2991 .field_info_spec = {
2992 .description = "prof_func_id",
2993 .field_bit_size = 7,
2994 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
2995 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
2997 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2998 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
2999 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3001 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3002 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3003 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3005 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3006 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3010 .field_info_mask = {
3011 .description = "agg_error",
3012 .field_bit_size = 1,
3013 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3014 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3016 .field_info_spec = {
3017 .description = "agg_error",
3018 .field_bit_size = 1,
3019 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3020 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3024 .field_info_mask = {
3025 .description = "recycle_cnt",
3026 .field_bit_size = 2,
3027 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3028 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3030 .field_info_spec = {
3031 .description = "recycle_cnt",
3032 .field_bit_size = 2,
3033 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3034 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3038 .field_info_mask = {
3039 .description = "pkt_type_0",
3040 .field_bit_size = 2,
3041 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3042 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3044 .field_info_spec = {
3045 .description = "pkt_type_0",
3046 .field_bit_size = 2,
3047 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3048 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3052 .field_info_mask = {
3053 .description = "pkt_type_1",
3054 .field_bit_size = 2,
3055 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3056 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3058 .field_info_spec = {
3059 .description = "pkt_type_1",
3060 .field_bit_size = 2,
3061 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3062 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3066 .field_info_mask = {
3067 .description = "valid",
3068 .field_bit_size = 1,
3069 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3070 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3074 .field_info_spec = {
3075 .description = "valid",
3076 .field_bit_size = 1,
3077 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3078 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3083 /* class_tid: 1, , table: profile_tcam.ipv6 */
3085 .field_info_mask = {
3086 .description = "l4_hdr_is_udp_tcp",
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 = "l4_hdr_is_udp_tcp",
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 = "l4_hdr_type",
3101 .field_bit_size = 4,
3102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3103 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3105 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3106 BNXT_ULP_CF_IDX_O_L4 & 0xff},
3107 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
3108 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
3110 .field_info_spec = {
3111 .description = "l4_hdr_type",
3112 .field_bit_size = 4,
3113 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3114 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
3116 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
3117 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
3118 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
3119 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
3120 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
3121 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
3122 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
3123 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
3124 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
3126 ULP_WP_SYM_L4_HDR_TYPE_TCP},
3127 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
3129 ULP_WP_SYM_L4_HDR_TYPE_UDP}
3133 .field_info_mask = {
3134 .description = "l4_hdr_error",
3135 .field_bit_size = 1,
3136 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3137 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3139 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3140 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3142 .field_info_spec = {
3143 .description = "l4_hdr_error",
3144 .field_bit_size = 1,
3145 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3146 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3150 .field_info_mask = {
3151 .description = "l4_hdr_valid",
3152 .field_bit_size = 1,
3153 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3154 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3156 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3157 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3159 .field_info_spec = {
3160 .description = "l4_hdr_valid",
3161 .field_bit_size = 1,
3162 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3163 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3165 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3166 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3170 .field_info_mask = {
3171 .description = "l3_ipv6_cmp_dst",
3172 .field_bit_size = 1,
3173 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3174 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3176 .field_info_spec = {
3177 .description = "l3_ipv6_cmp_dst",
3178 .field_bit_size = 1,
3179 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3180 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3184 .field_info_mask = {
3185 .description = "l3_ipv6_cmp_src",
3186 .field_bit_size = 1,
3187 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3188 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3190 .field_info_spec = {
3191 .description = "l3_ipv6_cmp_src",
3192 .field_bit_size = 1,
3193 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3194 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3198 .field_info_mask = {
3199 .description = "l3_hdr_isIP",
3200 .field_bit_size = 1,
3201 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3202 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3204 .field_info_spec = {
3205 .description = "l3_hdr_isIP",
3206 .field_bit_size = 1,
3207 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3208 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3212 .field_info_mask = {
3213 .description = "l3_hdr_type",
3214 .field_bit_size = 4,
3215 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3216 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3220 .field_info_spec = {
3221 .description = "l3_hdr_type",
3222 .field_bit_size = 4,
3223 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3224 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3226 ULP_WP_SYM_L3_HDR_TYPE_IPV6}
3230 .field_info_mask = {
3231 .description = "l3_hdr_error",
3232 .field_bit_size = 1,
3233 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3234 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3238 .field_info_spec = {
3239 .description = "l3_hdr_error",
3240 .field_bit_size = 1,
3241 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3242 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3246 .field_info_mask = {
3247 .description = "l3_hdr_valid",
3248 .field_bit_size = 1,
3249 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3250 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3254 .field_info_spec = {
3255 .description = "l3_hdr_valid",
3256 .field_bit_size = 1,
3257 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3258 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3260 ULP_WP_SYM_L3_HDR_VALID_YES}
3264 .field_info_mask = {
3265 .description = "l2_two_vtags",
3266 .field_bit_size = 1,
3267 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3268 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3272 .field_info_spec = {
3273 .description = "l2_two_vtags",
3274 .field_bit_size = 1,
3275 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3276 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3280 .field_info_mask = {
3281 .description = "l2_vtag_present",
3282 .field_bit_size = 1,
3283 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3284 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3288 .field_info_spec = {
3289 .description = "l2_vtag_present",
3290 .field_bit_size = 1,
3291 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3292 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3294 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
3295 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
3299 .field_info_mask = {
3300 .description = "l2_uc_mc_bc",
3301 .field_bit_size = 2,
3302 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3303 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3307 .field_info_spec = {
3308 .description = "l2_uc_mc_bc",
3309 .field_bit_size = 2,
3310 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3311 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3315 .field_info_mask = {
3316 .description = "l2_hdr_type",
3317 .field_bit_size = 2,
3318 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3319 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3323 .field_info_spec = {
3324 .description = "l2_hdr_type",
3325 .field_bit_size = 2,
3326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3327 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3331 .field_info_mask = {
3332 .description = "l2_hdr_error",
3333 .field_bit_size = 1,
3334 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3335 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3339 .field_info_spec = {
3340 .description = "l2_hdr_error",
3341 .field_bit_size = 1,
3342 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3343 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3347 .field_info_mask = {
3348 .description = "l2_hdr_valid",
3349 .field_bit_size = 1,
3350 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3351 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3355 .field_info_spec = {
3356 .description = "l2_hdr_valid",
3357 .field_bit_size = 1,
3358 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3359 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3361 ULP_WP_SYM_L2_HDR_VALID_YES}
3365 .field_info_mask = {
3366 .description = "tun_hdr_flags",
3367 .field_bit_size = 3,
3368 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3369 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3371 .field_info_spec = {
3372 .description = "tun_hdr_flags",
3373 .field_bit_size = 3,
3374 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3375 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3379 .field_info_mask = {
3380 .description = "tun_hdr_type",
3381 .field_bit_size = 4,
3382 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3383 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3385 .field_info_spec = {
3386 .description = "tun_hdr_type",
3387 .field_bit_size = 4,
3388 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3389 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3393 .field_info_mask = {
3394 .description = "tun_hdr_err",
3395 .field_bit_size = 1,
3396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3397 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3399 .field_info_spec = {
3400 .description = "tun_hdr_err",
3401 .field_bit_size = 1,
3402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3403 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3407 .field_info_mask = {
3408 .description = "tun_hdr_valid",
3409 .field_bit_size = 1,
3410 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3411 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3415 .field_info_spec = {
3416 .description = "tun_hdr_valid",
3417 .field_bit_size = 1,
3418 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3419 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3423 .field_info_mask = {
3424 .description = "tl4_hdr_is_udp_tcp",
3425 .field_bit_size = 1,
3426 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3427 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3429 .field_info_spec = {
3430 .description = "tl4_hdr_is_udp_tcp",
3431 .field_bit_size = 1,
3432 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3433 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3437 .field_info_mask = {
3438 .description = "tl4_hdr_type",
3439 .field_bit_size = 4,
3440 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3441 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3443 .field_info_spec = {
3444 .description = "tl4_hdr_type",
3445 .field_bit_size = 4,
3446 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3447 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3451 .field_info_mask = {
3452 .description = "tl4_hdr_error",
3453 .field_bit_size = 1,
3454 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3455 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3457 .field_info_spec = {
3458 .description = "tl4_hdr_error",
3459 .field_bit_size = 1,
3460 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3461 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3465 .field_info_mask = {
3466 .description = "tl4_hdr_valid",
3467 .field_bit_size = 1,
3468 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3469 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3473 .field_info_spec = {
3474 .description = "tl4_hdr_valid",
3475 .field_bit_size = 1,
3476 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3477 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3481 .field_info_mask = {
3482 .description = "tl3_ipv6_cmp_dst",
3483 .field_bit_size = 1,
3484 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3485 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3487 .field_info_spec = {
3488 .description = "tl3_ipv6_cmp_dst",
3489 .field_bit_size = 1,
3490 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3491 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3495 .field_info_mask = {
3496 .description = "tl3_ipv6_cmp_src",
3497 .field_bit_size = 1,
3498 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3499 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3501 .field_info_spec = {
3502 .description = "tl3_ipv6_cmp_src",
3503 .field_bit_size = 1,
3504 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3505 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3509 .field_info_mask = {
3510 .description = "tl3_hdr_isIP",
3511 .field_bit_size = 1,
3512 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3513 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3515 .field_info_spec = {
3516 .description = "tl3_hdr_isIP",
3517 .field_bit_size = 1,
3518 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3519 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3523 .field_info_mask = {
3524 .description = "tl3_hdr_type",
3525 .field_bit_size = 4,
3526 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3527 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3529 .field_info_spec = {
3530 .description = "tl3_hdr_type",
3531 .field_bit_size = 4,
3532 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3533 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3537 .field_info_mask = {
3538 .description = "tl3_hdr_error",
3539 .field_bit_size = 1,
3540 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3541 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3543 .field_info_spec = {
3544 .description = "tl3_hdr_error",
3545 .field_bit_size = 1,
3546 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3547 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3551 .field_info_mask = {
3552 .description = "tl3_hdr_valid",
3553 .field_bit_size = 1,
3554 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3555 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3559 .field_info_spec = {
3560 .description = "tl3_hdr_valid",
3561 .field_bit_size = 1,
3562 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3563 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3567 .field_info_mask = {
3568 .description = "tl2_two_vtags",
3569 .field_bit_size = 1,
3570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3571 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3573 .field_info_spec = {
3574 .description = "tl2_two_vtags",
3575 .field_bit_size = 1,
3576 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3577 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3581 .field_info_mask = {
3582 .description = "tl2_vtag_present",
3583 .field_bit_size = 1,
3584 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3585 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3587 .field_info_spec = {
3588 .description = "tl2_vtag_present",
3589 .field_bit_size = 1,
3590 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3591 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3595 .field_info_mask = {
3596 .description = "tl2_uc_mc_bc",
3597 .field_bit_size = 2,
3598 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3599 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3601 .field_info_spec = {
3602 .description = "tl2_uc_mc_bc",
3603 .field_bit_size = 2,
3604 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3605 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3609 .field_info_mask = {
3610 .description = "tl2_hdr_type",
3611 .field_bit_size = 2,
3612 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3613 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3615 .field_info_spec = {
3616 .description = "tl2_hdr_type",
3617 .field_bit_size = 2,
3618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3619 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3623 .field_info_mask = {
3624 .description = "tl2_hdr_valid",
3625 .field_bit_size = 1,
3626 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3627 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3631 .field_info_spec = {
3632 .description = "tl2_hdr_valid",
3633 .field_bit_size = 1,
3634 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3635 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3639 .field_info_mask = {
3640 .description = "hrec_next",
3641 .field_bit_size = 1,
3642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3643 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3645 .field_info_spec = {
3646 .description = "hrec_next",
3647 .field_bit_size = 1,
3648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3649 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3653 .field_info_mask = {
3654 .description = "reserved",
3655 .field_bit_size = 9,
3656 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3657 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3659 .field_info_spec = {
3660 .description = "reserved",
3661 .field_bit_size = 9,
3662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3663 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3667 .field_info_mask = {
3668 .description = "prof_func_id",
3669 .field_bit_size = 7,
3670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3671 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3675 .field_info_spec = {
3676 .description = "prof_func_id",
3677 .field_bit_size = 7,
3678 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3679 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
3681 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3682 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
3683 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3685 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3686 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3687 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3689 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3690 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3694 .field_info_mask = {
3695 .description = "agg_error",
3696 .field_bit_size = 1,
3697 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3698 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3700 .field_info_spec = {
3701 .description = "agg_error",
3702 .field_bit_size = 1,
3703 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3704 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3708 .field_info_mask = {
3709 .description = "recycle_cnt",
3710 .field_bit_size = 2,
3711 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3712 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3714 .field_info_spec = {
3715 .description = "recycle_cnt",
3716 .field_bit_size = 2,
3717 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3718 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3722 .field_info_mask = {
3723 .description = "pkt_type_0",
3724 .field_bit_size = 2,
3725 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3726 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3728 .field_info_spec = {
3729 .description = "pkt_type_0",
3730 .field_bit_size = 2,
3731 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3732 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3736 .field_info_mask = {
3737 .description = "pkt_type_1",
3738 .field_bit_size = 2,
3739 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3740 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3742 .field_info_spec = {
3743 .description = "pkt_type_1",
3744 .field_bit_size = 2,
3745 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3746 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3750 .field_info_mask = {
3751 .description = "valid",
3752 .field_bit_size = 1,
3753 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3754 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3758 .field_info_spec = {
3759 .description = "valid",
3760 .field_bit_size = 1,
3761 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3762 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3767 /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
3769 .field_info_mask = {
3770 .description = "l4_hdr_is_udp_tcp",
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 = "l4_hdr_is_udp_tcp",
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 = "l4_hdr_type",
3785 .field_bit_size = 4,
3786 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3787 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3791 .field_info_spec = {
3792 .description = "l4_hdr_type",
3793 .field_bit_size = 4,
3794 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3795 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3797 ULP_WP_SYM_L4_HDR_TYPE_UDP}
3801 .field_info_mask = {
3802 .description = "l4_hdr_error",
3803 .field_bit_size = 1,
3804 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3805 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3809 .field_info_spec = {
3810 .description = "l4_hdr_error",
3811 .field_bit_size = 1,
3812 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3813 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3817 .field_info_mask = {
3818 .description = "l4_hdr_valid",
3819 .field_bit_size = 1,
3820 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3821 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3823 .field_info_spec = {
3824 .description = "l4_hdr_valid",
3825 .field_bit_size = 1,
3826 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3827 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3831 .field_info_mask = {
3832 .description = "l3_ipv6_cmp_dst",
3833 .field_bit_size = 1,
3834 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3835 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3837 .field_info_spec = {
3838 .description = "l3_ipv6_cmp_dst",
3839 .field_bit_size = 1,
3840 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3841 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3845 .field_info_mask = {
3846 .description = "l3_ipv6_cmp_src",
3847 .field_bit_size = 1,
3848 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3849 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3851 .field_info_spec = {
3852 .description = "l3_ipv6_cmp_src",
3853 .field_bit_size = 1,
3854 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3855 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3859 .field_info_mask = {
3860 .description = "l3_hdr_isIP",
3861 .field_bit_size = 1,
3862 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3863 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3865 .field_info_spec = {
3866 .description = "l3_hdr_isIP",
3867 .field_bit_size = 1,
3868 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3869 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3873 .field_info_mask = {
3874 .description = "l3_hdr_type",
3875 .field_bit_size = 4,
3876 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3877 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3879 .field_info_spec = {
3880 .description = "l3_hdr_type",
3881 .field_bit_size = 4,
3882 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3883 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3887 .field_info_mask = {
3888 .description = "l3_hdr_error",
3889 .field_bit_size = 1,
3890 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3891 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3895 .field_info_spec = {
3896 .description = "l3_hdr_error",
3897 .field_bit_size = 1,
3898 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3899 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3903 .field_info_mask = {
3904 .description = "l3_hdr_valid",
3905 .field_bit_size = 1,
3906 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3907 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3909 .field_info_spec = {
3910 .description = "l3_hdr_valid",
3911 .field_bit_size = 1,
3912 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3913 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3917 .field_info_mask = {
3918 .description = "l2_two_vtags",
3919 .field_bit_size = 1,
3920 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3921 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3923 .field_info_spec = {
3924 .description = "l2_two_vtags",
3925 .field_bit_size = 1,
3926 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3927 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3931 .field_info_mask = {
3932 .description = "l2_vtag_present",
3933 .field_bit_size = 1,
3934 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3935 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3937 .field_info_spec = {
3938 .description = "l2_vtag_present",
3939 .field_bit_size = 1,
3940 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3941 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3945 .field_info_mask = {
3946 .description = "l2_uc_mc_bc",
3947 .field_bit_size = 2,
3948 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3949 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3951 .field_info_spec = {
3952 .description = "l2_uc_mc_bc",
3953 .field_bit_size = 2,
3954 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3955 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3959 .field_info_mask = {
3960 .description = "l2_hdr_type",
3961 .field_bit_size = 2,
3962 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3963 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3965 .field_info_spec = {
3966 .description = "l2_hdr_type",
3967 .field_bit_size = 2,
3968 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3969 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3973 .field_info_mask = {
3974 .description = "l2_hdr_error",
3975 .field_bit_size = 1,
3976 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3977 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3979 .field_info_spec = {
3980 .description = "l2_hdr_error",
3981 .field_bit_size = 1,
3982 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3983 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3987 .field_info_mask = {
3988 .description = "l2_hdr_valid",
3989 .field_bit_size = 1,
3990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3991 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3993 .field_info_spec = {
3994 .description = "l2_hdr_valid",
3995 .field_bit_size = 1,
3996 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3997 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4001 .field_info_mask = {
4002 .description = "tun_hdr_flags",
4003 .field_bit_size = 3,
4004 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4005 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4007 .field_info_spec = {
4008 .description = "tun_hdr_flags",
4009 .field_bit_size = 3,
4010 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4011 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4015 .field_info_mask = {
4016 .description = "tun_hdr_type",
4017 .field_bit_size = 4,
4018 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4019 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4023 .field_info_spec = {
4024 .description = "tun_hdr_type",
4025 .field_bit_size = 4,
4026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4027 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4031 .field_info_mask = {
4032 .description = "tun_hdr_err",
4033 .field_bit_size = 1,
4034 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4035 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4037 .field_info_spec = {
4038 .description = "tun_hdr_err",
4039 .field_bit_size = 1,
4040 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4041 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4045 .field_info_mask = {
4046 .description = "tun_hdr_valid",
4047 .field_bit_size = 1,
4048 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4049 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4053 .field_info_spec = {
4054 .description = "tun_hdr_valid",
4055 .field_bit_size = 1,
4056 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4057 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4059 ULP_WP_SYM_TUN_HDR_VALID_YES}
4063 .field_info_mask = {
4064 .description = "tl4_hdr_is_udp_tcp",
4065 .field_bit_size = 1,
4066 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4067 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4069 .field_info_spec = {
4070 .description = "tl4_hdr_is_udp_tcp",
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 = "tl4_hdr_type",
4079 .field_bit_size = 4,
4080 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4081 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4083 .field_info_spec = {
4084 .description = "tl4_hdr_type",
4085 .field_bit_size = 4,
4086 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4087 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4091 .field_info_mask = {
4092 .description = "tl4_hdr_error",
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 = "tl4_hdr_error",
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 = "tl4_hdr_valid",
4107 .field_bit_size = 1,
4108 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4109 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4113 .field_info_spec = {
4114 .description = "tl4_hdr_valid",
4115 .field_bit_size = 1,
4116 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4117 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4119 ULP_WP_SYM_TL4_HDR_VALID_YES}
4123 .field_info_mask = {
4124 .description = "tl3_ipv6_cmp_dst",
4125 .field_bit_size = 1,
4126 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4127 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4129 .field_info_spec = {
4130 .description = "tl3_ipv6_cmp_dst",
4131 .field_bit_size = 1,
4132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4133 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4137 .field_info_mask = {
4138 .description = "tl3_ipv6_cmp_src",
4139 .field_bit_size = 1,
4140 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4141 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4143 .field_info_spec = {
4144 .description = "tl3_ipv6_cmp_src",
4145 .field_bit_size = 1,
4146 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4147 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4151 .field_info_mask = {
4152 .description = "tl3_hdr_isIP",
4153 .field_bit_size = 1,
4154 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4155 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4157 .field_info_spec = {
4158 .description = "tl3_hdr_isIP",
4159 .field_bit_size = 1,
4160 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4161 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4165 .field_info_mask = {
4166 .description = "tl3_hdr_type",
4167 .field_bit_size = 4,
4168 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4169 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4173 .field_info_spec = {
4174 .description = "tl3_hdr_type",
4175 .field_bit_size = 4,
4176 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4177 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4181 .field_info_mask = {
4182 .description = "tl3_hdr_error",
4183 .field_bit_size = 1,
4184 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4185 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4187 .field_info_spec = {
4188 .description = "tl3_hdr_error",
4189 .field_bit_size = 1,
4190 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4191 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4195 .field_info_mask = {
4196 .description = "tl3_hdr_valid",
4197 .field_bit_size = 1,
4198 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4199 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4203 .field_info_spec = {
4204 .description = "tl3_hdr_valid",
4205 .field_bit_size = 1,
4206 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4207 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4209 ULP_WP_SYM_TL3_HDR_VALID_YES}
4213 .field_info_mask = {
4214 .description = "tl2_two_vtags",
4215 .field_bit_size = 1,
4216 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4217 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4219 .field_info_spec = {
4220 .description = "tl2_two_vtags",
4221 .field_bit_size = 1,
4222 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4223 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4227 .field_info_mask = {
4228 .description = "tl2_vtag_present",
4229 .field_bit_size = 1,
4230 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4231 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4233 .field_info_spec = {
4234 .description = "tl2_vtag_present",
4235 .field_bit_size = 1,
4236 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4237 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4241 .field_info_mask = {
4242 .description = "tl2_uc_mc_bc",
4243 .field_bit_size = 2,
4244 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4245 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4249 .field_info_spec = {
4250 .description = "tl2_uc_mc_bc",
4251 .field_bit_size = 2,
4252 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4253 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4257 .field_info_mask = {
4258 .description = "tl2_hdr_type",
4259 .field_bit_size = 2,
4260 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4261 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4263 .field_info_spec = {
4264 .description = "tl2_hdr_type",
4265 .field_bit_size = 2,
4266 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4267 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4271 .field_info_mask = {
4272 .description = "tl2_hdr_valid",
4273 .field_bit_size = 1,
4274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4275 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4279 .field_info_spec = {
4280 .description = "tl2_hdr_valid",
4281 .field_bit_size = 1,
4282 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4283 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4285 ULP_WP_SYM_TL2_HDR_VALID_YES}
4289 .field_info_mask = {
4290 .description = "hrec_next",
4291 .field_bit_size = 1,
4292 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4293 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4295 .field_info_spec = {
4296 .description = "hrec_next",
4297 .field_bit_size = 1,
4298 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4299 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4303 .field_info_mask = {
4304 .description = "reserved",
4305 .field_bit_size = 9,
4306 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4307 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4309 .field_info_spec = {
4310 .description = "reserved",
4311 .field_bit_size = 9,
4312 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4313 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4317 .field_info_mask = {
4318 .description = "prof_func_id",
4319 .field_bit_size = 7,
4320 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4321 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4325 .field_info_spec = {
4326 .description = "prof_func_id",
4327 .field_bit_size = 7,
4328 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4329 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
4331 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
4332 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}
4336 .field_info_mask = {
4337 .description = "agg_error",
4338 .field_bit_size = 1,
4339 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4340 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4342 .field_info_spec = {
4343 .description = "agg_error",
4344 .field_bit_size = 1,
4345 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4346 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4350 .field_info_mask = {
4351 .description = "recycle_cnt",
4352 .field_bit_size = 2,
4353 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4354 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4356 .field_info_spec = {
4357 .description = "recycle_cnt",
4358 .field_bit_size = 2,
4359 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4360 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4364 .field_info_mask = {
4365 .description = "pkt_type_0",
4366 .field_bit_size = 2,
4367 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4368 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4370 .field_info_spec = {
4371 .description = "pkt_type_0",
4372 .field_bit_size = 2,
4373 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4374 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4378 .field_info_mask = {
4379 .description = "pkt_type_1",
4380 .field_bit_size = 2,
4381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4382 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4384 .field_info_spec = {
4385 .description = "pkt_type_1",
4386 .field_bit_size = 2,
4387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4388 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4392 .field_info_mask = {
4393 .description = "valid",
4394 .field_bit_size = 1,
4395 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4396 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4400 .field_info_spec = {
4401 .description = "valid",
4402 .field_bit_size = 1,
4403 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4404 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
4409 /* class_tid: 1, , table: profile_tcam_cache.wr */
4411 .field_info_mask = {
4412 .description = "recycle_cnt",
4413 .field_bit_size = 2,
4414 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4415 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4419 .field_info_spec = {
4420 .description = "recycle_cnt",
4421 .field_bit_size = 2,
4422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4423 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4427 .field_info_mask = {
4428 .description = "prof_func_id",
4429 .field_bit_size = 7,
4430 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4431 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4435 .field_info_spec = {
4436 .description = "prof_func_id",
4437 .field_bit_size = 7,
4438 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4439 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4441 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
4442 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
4443 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
4445 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
4446 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
4447 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
4449 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4450 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
4454 .field_info_mask = {
4455 .description = "hdr_sig_id",
4456 .field_bit_size = 5,
4457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4458 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4462 .field_info_spec = {
4463 .description = "hdr_sig_id",
4464 .field_bit_size = 5,
4465 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4466 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4468 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
4469 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
4472 /* class_tid: 1, , table: em.ipv4 */
4474 .field_info_mask = {
4475 .description = "spare",
4476 .field_bit_size = 3,
4477 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4478 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4480 .field_info_spec = {
4481 .description = "spare",
4482 .field_bit_size = 3,
4483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4484 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4488 .field_info_mask = {
4489 .description = "local_cos",
4490 .field_bit_size = 3,
4491 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4492 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4494 .field_info_spec = {
4495 .description = "local_cos",
4496 .field_bit_size = 3,
4497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4498 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4502 .field_info_mask = {
4503 .description = "l4.dst",
4504 .field_bit_size = 16,
4505 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4506 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4511 .field_info_spec = {
4512 .description = "l4.dst",
4513 .field_bit_size = 16,
4514 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4515 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4517 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4518 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4519 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4521 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
4522 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
4523 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4527 .field_info_mask = {
4528 .description = "l4.src",
4529 .field_bit_size = 16,
4530 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4531 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4536 .field_info_spec = {
4537 .description = "l4.src",
4538 .field_bit_size = 16,
4539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4540 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4542 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4543 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4544 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4546 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
4547 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
4548 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4552 .field_info_mask = {
4553 .description = "l3.prot",
4554 .field_bit_size = 8,
4555 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4556 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4560 .field_info_spec = {
4561 .description = "l3.prot",
4562 .field_bit_size = 8,
4563 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4564 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4566 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
4567 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
4568 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4570 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
4571 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
4572 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4576 .field_info_mask = {
4577 .description = "l3.dst",
4578 .field_bit_size = 32,
4579 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4580 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4582 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
4583 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
4585 .field_info_spec = {
4586 .description = "l3.dst",
4587 .field_bit_size = 32,
4588 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4589 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4591 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
4592 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
4596 .field_info_mask = {
4597 .description = "l3.src",
4598 .field_bit_size = 32,
4599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4600 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4602 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
4603 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
4605 .field_info_spec = {
4606 .description = "l3.src",
4607 .field_bit_size = 32,
4608 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4609 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4611 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
4612 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
4616 .field_info_mask = {
4617 .description = "l2.smac",
4618 .field_bit_size = 48,
4619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4620 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4622 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4623 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
4625 .field_info_spec = {
4626 .description = "l2.smac",
4627 .field_bit_size = 48,
4628 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4629 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4631 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4632 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
4636 .field_info_mask = {
4637 .description = "l2_cntxt_id",
4638 .field_bit_size = 10,
4639 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4640 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4645 .field_info_spec = {
4646 .description = "l2_cntxt_id",
4647 .field_bit_size = 10,
4648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4649 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4651 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
4652 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
4656 .field_info_mask = {
4657 .description = "em_profile_id",
4658 .field_bit_size = 8,
4659 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4660 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4664 .field_info_spec = {
4665 .description = "em_profile_id",
4666 .field_bit_size = 8,
4667 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4668 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4670 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
4671 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
4674 /* class_tid: 1, , table: eem.ipv4 */
4676 .field_info_mask = {
4677 .description = "spare",
4678 .field_bit_size = 275,
4679 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4680 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4682 .field_info_spec = {
4683 .description = "spare",
4684 .field_bit_size = 275,
4685 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4686 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4690 .field_info_mask = {
4691 .description = "local_cos",
4692 .field_bit_size = 3,
4693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4694 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4696 .field_info_spec = {
4697 .description = "local_cos",
4698 .field_bit_size = 3,
4699 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4700 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4704 .field_info_mask = {
4705 .description = "l4.dst",
4706 .field_bit_size = 16,
4707 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4708 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4713 .field_info_spec = {
4714 .description = "l4.dst",
4715 .field_bit_size = 16,
4716 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4717 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4719 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4720 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4721 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4723 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
4724 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
4725 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4729 .field_info_mask = {
4730 .description = "l4.src",
4731 .field_bit_size = 16,
4732 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4733 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4738 .field_info_spec = {
4739 .description = "l4.src",
4740 .field_bit_size = 16,
4741 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4742 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4744 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4745 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4746 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4748 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
4749 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
4750 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4754 .field_info_mask = {
4755 .description = "l3.prot",
4756 .field_bit_size = 8,
4757 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4758 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4762 .field_info_spec = {
4763 .description = "l3.prot",
4764 .field_bit_size = 8,
4765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4766 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4768 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
4769 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
4770 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4772 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
4773 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
4774 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4778 .field_info_mask = {
4779 .description = "l3.dst",
4780 .field_bit_size = 32,
4781 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4782 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4784 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
4785 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
4787 .field_info_spec = {
4788 .description = "l3.dst",
4789 .field_bit_size = 32,
4790 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4791 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4793 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
4794 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
4798 .field_info_mask = {
4799 .description = "l3.src",
4800 .field_bit_size = 32,
4801 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4802 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4804 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
4805 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
4807 .field_info_spec = {
4808 .description = "l3.src",
4809 .field_bit_size = 32,
4810 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4811 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4813 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
4814 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
4818 .field_info_mask = {
4819 .description = "l2.smac",
4820 .field_bit_size = 48,
4821 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4822 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4824 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4825 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
4827 .field_info_spec = {
4828 .description = "l2.smac",
4829 .field_bit_size = 48,
4830 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4831 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4833 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4834 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
4838 .field_info_mask = {
4839 .description = "l2_cntxt_id",
4840 .field_bit_size = 10,
4841 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4842 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4847 .field_info_spec = {
4848 .description = "l2_cntxt_id",
4849 .field_bit_size = 10,
4850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4851 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4853 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
4854 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
4858 .field_info_mask = {
4859 .description = "em_profile_id",
4860 .field_bit_size = 8,
4861 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4862 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4866 .field_info_spec = {
4867 .description = "em_profile_id",
4868 .field_bit_size = 8,
4869 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4870 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4872 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
4873 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
4876 /* class_tid: 1, , table: em.ipv6 */
4878 .field_info_mask = {
4879 .description = "spare",
4880 .field_bit_size = 3,
4881 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4882 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4884 .field_info_spec = {
4885 .description = "spare",
4886 .field_bit_size = 3,
4887 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4888 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4892 .field_info_mask = {
4893 .description = "local_cos",
4894 .field_bit_size = 3,
4895 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4896 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4898 .field_info_spec = {
4899 .description = "local_cos",
4900 .field_bit_size = 3,
4901 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4902 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
4906 .field_info_mask = {
4907 .description = "l4.dst",
4908 .field_bit_size = 16,
4909 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4910 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4915 .field_info_spec = {
4916 .description = "l4.dst",
4917 .field_bit_size = 16,
4918 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4919 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4921 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4922 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4923 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4925 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
4926 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
4927 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4931 .field_info_mask = {
4932 .description = "l4.src",
4933 .field_bit_size = 16,
4934 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4935 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4940 .field_info_spec = {
4941 .description = "l4.src",
4942 .field_bit_size = 16,
4943 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4944 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4946 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
4947 BNXT_ULP_CF_IDX_O_L4 & 0xff},
4948 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4950 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
4951 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
4952 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4956 .field_info_mask = {
4957 .description = "l3.prot",
4958 .field_bit_size = 8,
4959 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4960 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4964 .field_info_spec = {
4965 .description = "l3.prot",
4966 .field_bit_size = 8,
4967 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4968 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4970 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
4971 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
4972 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
4974 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
4975 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
4976 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
4980 .field_info_mask = {
4981 .description = "l3.dst",
4982 .field_bit_size = 128,
4983 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4984 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4986 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
4987 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
4989 .field_info_spec = {
4990 .description = "l3.dst",
4991 .field_bit_size = 128,
4992 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4993 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
4995 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
4996 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5000 .field_info_mask = {
5001 .description = "l3.src",
5002 .field_bit_size = 128,
5003 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5004 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5006 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5007 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5009 .field_info_spec = {
5010 .description = "l3.src",
5011 .field_bit_size = 128,
5012 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5013 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5015 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5016 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5020 .field_info_mask = {
5021 .description = "l2.smac",
5022 .field_bit_size = 48,
5023 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5024 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5026 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5027 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5029 .field_info_spec = {
5030 .description = "l2.smac",
5031 .field_bit_size = 48,
5032 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5033 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5035 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5036 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5040 .field_info_mask = {
5041 .description = "l2.dmac",
5042 .field_bit_size = 48,
5043 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5044 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5046 .field_info_spec = {
5047 .description = "l2.dmac",
5048 .field_bit_size = 48,
5049 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5050 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5054 .field_info_mask = {
5055 .description = "l2_cntxt_id",
5056 .field_bit_size = 10,
5057 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5058 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5063 .field_info_spec = {
5064 .description = "l2_cntxt_id",
5065 .field_bit_size = 10,
5066 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5067 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5069 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5070 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5074 .field_info_mask = {
5075 .description = "em_profile_id",
5076 .field_bit_size = 8,
5077 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5078 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5082 .field_info_spec = {
5083 .description = "em_profile_id",
5084 .field_bit_size = 8,
5085 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5086 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5088 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5089 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5092 /* class_tid: 1, , table: eem.ipv6 */
5094 .field_info_mask = {
5095 .description = "spare",
5096 .field_bit_size = 35,
5097 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5098 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5100 .field_info_spec = {
5101 .description = "spare",
5102 .field_bit_size = 35,
5103 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5104 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5108 .field_info_mask = {
5109 .description = "local_cos",
5110 .field_bit_size = 3,
5111 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5112 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5114 .field_info_spec = {
5115 .description = "local_cos",
5116 .field_bit_size = 3,
5117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5118 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5122 .field_info_mask = {
5123 .description = "l4.dst",
5124 .field_bit_size = 16,
5125 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5126 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5131 .field_info_spec = {
5132 .description = "l4.dst",
5133 .field_bit_size = 16,
5134 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5135 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5137 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5138 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5139 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5141 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
5142 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
5143 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5147 .field_info_mask = {
5148 .description = "l4.src",
5149 .field_bit_size = 16,
5150 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5151 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5156 .field_info_spec = {
5157 .description = "l4.src",
5158 .field_bit_size = 16,
5159 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5160 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5162 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5163 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5164 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5166 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
5167 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
5168 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5172 .field_info_mask = {
5173 .description = "l3.prot",
5174 .field_bit_size = 8,
5175 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5176 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5180 .field_info_spec = {
5181 .description = "l3.prot",
5182 .field_bit_size = 8,
5183 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5184 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5186 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
5187 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
5188 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5190 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
5191 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
5192 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5196 .field_info_mask = {
5197 .description = "l3.dst",
5198 .field_bit_size = 128,
5199 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5200 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5202 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5203 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5205 .field_info_spec = {
5206 .description = "l3.dst",
5207 .field_bit_size = 128,
5208 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5209 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5211 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5212 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
5216 .field_info_mask = {
5217 .description = "l3.src",
5218 .field_bit_size = 128,
5219 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5220 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5222 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5223 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5225 .field_info_spec = {
5226 .description = "l3.src",
5227 .field_bit_size = 128,
5228 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5229 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5231 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5232 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
5236 .field_info_mask = {
5237 .description = "l2.smac",
5238 .field_bit_size = 48,
5239 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5240 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5242 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5243 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5245 .field_info_spec = {
5246 .description = "l2.smac",
5247 .field_bit_size = 48,
5248 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5249 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5251 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5252 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5256 .field_info_mask = {
5257 .description = "l2.dmac",
5258 .field_bit_size = 48,
5259 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5260 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5262 .field_info_spec = {
5263 .description = "l2.dmac",
5264 .field_bit_size = 48,
5265 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5266 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5270 .field_info_mask = {
5271 .description = "l2_cntxt_id",
5272 .field_bit_size = 10,
5273 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5274 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5279 .field_info_spec = {
5280 .description = "l2_cntxt_id",
5281 .field_bit_size = 10,
5282 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5283 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5285 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5286 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5290 .field_info_mask = {
5291 .description = "em_profile_id",
5292 .field_bit_size = 8,
5293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5294 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5298 .field_info_spec = {
5299 .description = "em_profile_id",
5300 .field_bit_size = 8,
5301 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5302 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5304 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5305 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5308 /* class_tid: 1, , table: em.vxlan */
5310 .field_info_mask = {
5311 .description = "spare",
5312 .field_bit_size = 3,
5313 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5314 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5316 .field_info_spec = {
5317 .description = "spare",
5318 .field_bit_size = 3,
5319 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5320 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5324 .field_info_mask = {
5325 .description = "local_cos",
5326 .field_bit_size = 3,
5327 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5328 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5330 .field_info_spec = {
5331 .description = "local_cos",
5332 .field_bit_size = 3,
5333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5334 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5338 .field_info_mask = {
5339 .description = "tl4.src",
5340 .field_bit_size = 16,
5341 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5342 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5344 .field_info_spec = {
5345 .description = "tl4.src",
5346 .field_bit_size = 16,
5347 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5348 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5352 .field_info_mask = {
5353 .description = "tl4.dst",
5354 .field_bit_size = 16,
5355 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5356 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5361 .field_info_spec = {
5362 .description = "tl4.dst",
5363 .field_bit_size = 16,
5364 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5365 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5372 .field_info_mask = {
5373 .description = "tl3.prot",
5374 .field_bit_size = 8,
5375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5376 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5380 .field_info_spec = {
5381 .description = "tl3.prot",
5382 .field_bit_size = 8,
5383 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5384 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5390 .field_info_mask = {
5391 .description = "tl3.dst",
5392 .field_bit_size = 32,
5393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5394 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5396 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5397 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5399 .field_info_spec = {
5400 .description = "tl3.dst",
5401 .field_bit_size = 32,
5402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5403 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5405 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5406 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5410 .field_info_mask = {
5411 .description = "tl3.src",
5412 .field_bit_size = 32,
5413 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5414 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5416 .field_info_spec = {
5417 .description = "tl3.src",
5418 .field_bit_size = 32,
5419 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5420 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5424 .field_info_mask = {
5425 .description = "tl2.src",
5426 .field_bit_size = 48,
5427 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5428 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5430 .field_info_spec = {
5431 .description = "tl2.src",
5432 .field_bit_size = 48,
5433 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5434 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5438 .field_info_mask = {
5439 .description = "tun_id",
5440 .field_bit_size = 24,
5441 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5442 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5444 .field_info_spec = {
5445 .description = "tun_id",
5446 .field_bit_size = 24,
5447 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5448 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5452 .field_info_mask = {
5453 .description = "l2_cntxt_id",
5454 .field_bit_size = 10,
5455 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5456 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5461 .field_info_spec = {
5462 .description = "l2_cntxt_id",
5463 .field_bit_size = 10,
5464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5465 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5467 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5468 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5472 .field_info_mask = {
5473 .description = "em_profile_id",
5474 .field_bit_size = 8,
5475 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5476 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5480 .field_info_spec = {
5481 .description = "em_profile_id",
5482 .field_bit_size = 8,
5483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5484 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5486 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5487 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5490 /* class_tid: 1, , table: eem.vxlan */
5492 .field_info_mask = {
5493 .description = "spare",
5494 .field_bit_size = 251,
5495 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5496 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5498 .field_info_spec = {
5499 .description = "spare",
5500 .field_bit_size = 251,
5501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5502 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5506 .field_info_mask = {
5507 .description = "local_cos",
5508 .field_bit_size = 3,
5509 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5510 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5512 .field_info_spec = {
5513 .description = "local_cos",
5514 .field_bit_size = 3,
5515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5516 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5520 .field_info_mask = {
5521 .description = "tl4.dst",
5522 .field_bit_size = 16,
5523 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5524 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5529 .field_info_spec = {
5530 .description = "tl4.dst",
5531 .field_bit_size = 16,
5532 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5533 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5540 .field_info_mask = {
5541 .description = "tl4.src",
5542 .field_bit_size = 16,
5543 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5544 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5546 .field_info_spec = {
5547 .description = "tl4.src",
5548 .field_bit_size = 16,
5549 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5550 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5554 .field_info_mask = {
5555 .description = "tl3.prot",
5556 .field_bit_size = 8,
5557 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5558 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5562 .field_info_spec = {
5563 .description = "tl3.prot",
5564 .field_bit_size = 8,
5565 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5566 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5572 .field_info_mask = {
5573 .description = "tl3.dst",
5574 .field_bit_size = 32,
5575 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5576 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5578 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5579 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5581 .field_info_spec = {
5582 .description = "tl3.dst",
5583 .field_bit_size = 32,
5584 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5585 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5587 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
5588 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
5592 .field_info_mask = {
5593 .description = "tl3.src",
5594 .field_bit_size = 32,
5595 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5596 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5598 .field_info_spec = {
5599 .description = "tl3.src",
5600 .field_bit_size = 32,
5601 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5602 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5606 .field_info_mask = {
5607 .description = "tl2.src",
5608 .field_bit_size = 48,
5609 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5610 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5612 .field_info_spec = {
5613 .description = "tl2.src",
5614 .field_bit_size = 48,
5615 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5616 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5620 .field_info_mask = {
5621 .description = "tun_id",
5622 .field_bit_size = 24,
5623 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5624 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5626 .field_info_spec = {
5627 .description = "tun_id",
5628 .field_bit_size = 24,
5629 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5630 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5634 .field_info_mask = {
5635 .description = "l2_cntxt_id",
5636 .field_bit_size = 10,
5637 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5638 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5643 .field_info_spec = {
5644 .description = "l2_cntxt_id",
5645 .field_bit_size = 10,
5646 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5647 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5649 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
5650 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
5654 .field_info_mask = {
5655 .description = "em_profile_id",
5656 .field_bit_size = 8,
5657 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5658 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5662 .field_info_spec = {
5663 .description = "em_profile_id",
5664 .field_bit_size = 8,
5665 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5666 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
5668 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
5669 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
5672 /* class_tid: 2, , table: l2_cntxt_tcam_cache.rd */
5674 .field_info_mask = {
5675 .description = "svif",
5676 .field_bit_size = 8,
5677 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5678 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5680 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5681 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5683 .field_info_spec = {
5684 .description = "svif",
5685 .field_bit_size = 8,
5686 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5687 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5689 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5690 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5693 /* class_tid: 2, , table: mac_addr_cache.rd */
5695 .field_info_mask = {
5696 .description = "svif",
5697 .field_bit_size = 8,
5698 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5699 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5701 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5702 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5704 .field_info_spec = {
5705 .description = "svif",
5706 .field_bit_size = 8,
5707 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5708 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5710 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5711 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5715 .field_info_mask = {
5716 .description = "tun_hdr",
5717 .field_bit_size = 4,
5718 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5719 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5721 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
5723 .field_info_spec = {
5724 .description = "tun_hdr",
5725 .field_bit_size = 4,
5726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5727 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5729 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
5733 .field_info_mask = {
5734 .description = "one_tag",
5735 .field_bit_size = 1,
5736 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5737 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5741 .field_info_spec = {
5742 .description = "one_tag",
5743 .field_bit_size = 1,
5744 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5745 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5747 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
5748 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
5752 .field_info_mask = {
5753 .description = "vid",
5754 .field_bit_size = 12,
5755 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5756 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5758 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5759 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5760 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5761 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5762 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5763 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5764 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5765 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5766 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5768 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
5769 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
5770 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5772 .field_info_spec = {
5773 .description = "vid",
5774 .field_bit_size = 12,
5775 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5776 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5778 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5779 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5780 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5781 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5782 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5783 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5784 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5785 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5786 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5788 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
5789 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
5790 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5794 .field_info_mask = {
5795 .description = "mac_addr",
5796 .field_bit_size = 48,
5797 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5798 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5800 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5801 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5803 .field_info_spec = {
5804 .description = "mac_addr",
5805 .field_bit_size = 48,
5806 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5807 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5809 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5810 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5813 /* class_tid: 2, , table: l2_cntxt_tcam.0 */
5815 .field_info_mask = {
5816 .description = "l2_ivlan_vid",
5817 .field_bit_size = 12,
5818 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5819 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5821 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5822 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5823 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5824 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5825 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5826 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5827 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5828 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5829 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5831 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
5832 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
5833 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5835 .field_info_spec = {
5836 .description = "l2_ivlan_vid",
5837 .field_bit_size = 12,
5838 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5839 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5841 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5842 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5843 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5844 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5845 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5846 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5847 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5848 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5849 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5851 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
5852 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
5853 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5857 .field_info_mask = {
5858 .description = "l2_ovlan_vid",
5859 .field_bit_size = 12,
5860 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5861 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5863 .field_info_spec = {
5864 .description = "l2_ovlan_vid",
5865 .field_bit_size = 12,
5866 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5867 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5871 .field_info_mask = {
5872 .description = "mac0_addr",
5873 .field_bit_size = 48,
5874 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5875 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5877 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5878 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5880 .field_info_spec = {
5881 .description = "mac0_addr",
5882 .field_bit_size = 48,
5883 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5884 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5886 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
5887 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
5891 .field_info_mask = {
5892 .description = "svif",
5893 .field_bit_size = 8,
5894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5895 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5897 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5898 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5900 .field_info_spec = {
5901 .description = "svif",
5902 .field_bit_size = 8,
5903 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5904 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
5906 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
5907 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
5911 .field_info_mask = {
5912 .description = "sparif",
5913 .field_bit_size = 4,
5914 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5915 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5917 .field_info_spec = {
5918 .description = "sparif",
5919 .field_bit_size = 4,
5920 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5921 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5925 .field_info_mask = {
5926 .description = "tl2_ivlan_vid",
5927 .field_bit_size = 12,
5928 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5929 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5931 .field_info_spec = {
5932 .description = "tl2_ivlan_vid",
5933 .field_bit_size = 12,
5934 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5935 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5939 .field_info_mask = {
5940 .description = "tl2_ovlan_vid",
5941 .field_bit_size = 12,
5942 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5943 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5945 .field_info_spec = {
5946 .description = "tl2_ovlan_vid",
5947 .field_bit_size = 12,
5948 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5949 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5953 .field_info_mask = {
5954 .description = "mac1_addr",
5955 .field_bit_size = 48,
5956 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5957 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5959 .field_info_spec = {
5960 .description = "mac1_addr",
5961 .field_bit_size = 48,
5962 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5963 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5967 .field_info_mask = {
5968 .description = "l2_num_vtags",
5969 .field_bit_size = 2,
5970 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5971 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5975 .field_info_spec = {
5976 .description = "l2_num_vtags",
5977 .field_bit_size = 2,
5978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5979 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5981 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
5982 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff}
5986 .field_info_mask = {
5987 .description = "tl2_num_vtags",
5988 .field_bit_size = 2,
5989 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5990 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5992 .field_info_spec = {
5993 .description = "tl2_num_vtags",
5994 .field_bit_size = 2,
5995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5996 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6000 .field_info_mask = {
6001 .description = "tun_hdr_type",
6002 .field_bit_size = 4,
6003 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6004 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6006 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
6008 .field_info_spec = {
6009 .description = "tun_hdr_type",
6010 .field_bit_size = 4,
6011 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6012 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6014 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
6018 .field_info_mask = {
6019 .description = "key_type",
6020 .field_bit_size = 2,
6021 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6022 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6024 .field_info_spec = {
6025 .description = "key_type",
6026 .field_bit_size = 2,
6027 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6028 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6032 .field_info_mask = {
6033 .description = "valid",
6034 .field_bit_size = 1,
6035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6036 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6040 .field_info_spec = {
6041 .description = "valid",
6042 .field_bit_size = 1,
6043 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6044 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6049 /* class_tid: 2, , table: mac_addr_cache.wr */
6051 .field_info_mask = {
6052 .description = "svif",
6053 .field_bit_size = 8,
6054 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6055 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6057 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6058 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6060 .field_info_spec = {
6061 .description = "svif",
6062 .field_bit_size = 8,
6063 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6064 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6066 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
6067 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
6071 .field_info_mask = {
6072 .description = "tun_hdr",
6073 .field_bit_size = 4,
6074 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6075 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6077 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
6079 .field_info_spec = {
6080 .description = "tun_hdr",
6081 .field_bit_size = 4,
6082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6083 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6085 ULP_WP_SYM_TUN_HDR_TYPE_NONE}
6089 .field_info_mask = {
6090 .description = "one_tag",
6091 .field_bit_size = 1,
6092 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6093 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6097 .field_info_spec = {
6098 .description = "one_tag",
6099 .field_bit_size = 1,
6100 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6101 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6103 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
6104 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
6108 .field_info_mask = {
6109 .description = "vid",
6110 .field_bit_size = 12,
6111 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6112 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6114 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
6115 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
6116 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
6117 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
6118 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
6119 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
6120 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
6121 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
6122 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
6124 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
6125 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
6126 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
6128 .field_info_spec = {
6129 .description = "vid",
6130 .field_bit_size = 12,
6131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6132 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6134 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
6135 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
6136 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
6137 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
6138 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
6139 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
6140 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
6141 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
6142 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
6144 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
6145 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
6146 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
6150 .field_info_mask = {
6151 .description = "mac_addr",
6152 .field_bit_size = 48,
6153 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6154 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6156 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
6157 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
6159 .field_info_spec = {
6160 .description = "mac_addr",
6161 .field_bit_size = 48,
6162 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6163 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
6165 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
6166 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
6169 /* class_tid: 2, , table: profile_tcam_cache.rd */
6171 .field_info_mask = {
6172 .description = "recycle_cnt",
6173 .field_bit_size = 2,
6174 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6175 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6179 .field_info_spec = {
6180 .description = "recycle_cnt",
6181 .field_bit_size = 2,
6182 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6183 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6187 .field_info_mask = {
6188 .description = "prof_func_id",
6189 .field_bit_size = 7,
6190 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6191 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6195 .field_info_spec = {
6196 .description = "prof_func_id",
6197 .field_bit_size = 7,
6198 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6199 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
6201 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
6202 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
6203 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
6205 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
6206 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
6207 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
6209 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6210 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
6214 .field_info_mask = {
6215 .description = "hdr_sig_id",
6216 .field_bit_size = 5,
6217 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6218 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6222 .field_info_spec = {
6223 .description = "hdr_sig_id",
6224 .field_bit_size = 5,
6225 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6226 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6228 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
6229 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
6232 /* class_tid: 2, , table: profile_tcam.ipv4 */
6234 .field_info_mask = {
6235 .description = "l4_hdr_is_udp_tcp",
6236 .field_bit_size = 1,
6237 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6238 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6240 .field_info_spec = {
6241 .description = "l4_hdr_is_udp_tcp",
6242 .field_bit_size = 1,
6243 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6244 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6248 .field_info_mask = {
6249 .description = "l4_hdr_type",
6250 .field_bit_size = 4,
6251 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6252 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6254 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6255 BNXT_ULP_CF_IDX_O_L4 & 0xff},
6256 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
6257 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
6259 .field_info_spec = {
6260 .description = "l4_hdr_type",
6261 .field_bit_size = 4,
6262 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6263 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6265 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
6266 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
6267 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
6268 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
6269 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
6270 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
6271 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
6272 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
6273 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
6275 ULP_WP_SYM_L4_HDR_TYPE_TCP},
6276 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
6278 ULP_WP_SYM_L4_HDR_TYPE_UDP}
6282 .field_info_mask = {
6283 .description = "l4_hdr_error",
6284 .field_bit_size = 1,
6285 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6286 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6288 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6289 BNXT_ULP_CF_IDX_O_L4 & 0xff}
6291 .field_info_spec = {
6292 .description = "l4_hdr_error",
6293 .field_bit_size = 1,
6294 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6295 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6299 .field_info_mask = {
6300 .description = "l4_hdr_valid",
6301 .field_bit_size = 1,
6302 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6303 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6305 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6306 BNXT_ULP_CF_IDX_O_L4 & 0xff}
6308 .field_info_spec = {
6309 .description = "l4_hdr_valid",
6310 .field_bit_size = 1,
6311 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6312 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6314 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6315 BNXT_ULP_CF_IDX_O_L4 & 0xff}
6319 .field_info_mask = {
6320 .description = "l3_ipv6_cmp_dst",
6321 .field_bit_size = 1,
6322 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6323 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6325 .field_info_spec = {
6326 .description = "l3_ipv6_cmp_dst",
6327 .field_bit_size = 1,
6328 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6329 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6333 .field_info_mask = {
6334 .description = "l3_ipv6_cmp_src",
6335 .field_bit_size = 1,
6336 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6337 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6339 .field_info_spec = {
6340 .description = "l3_ipv6_cmp_src",
6341 .field_bit_size = 1,
6342 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6343 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6347 .field_info_mask = {
6348 .description = "l3_hdr_isIP",
6349 .field_bit_size = 1,
6350 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6351 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6353 .field_info_spec = {
6354 .description = "l3_hdr_isIP",
6355 .field_bit_size = 1,
6356 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6357 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6361 .field_info_mask = {
6362 .description = "l3_hdr_type",
6363 .field_bit_size = 4,
6364 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6365 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6369 .field_info_spec = {
6370 .description = "l3_hdr_type",
6371 .field_bit_size = 4,
6372 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6373 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6377 .field_info_mask = {
6378 .description = "l3_hdr_error",
6379 .field_bit_size = 1,
6380 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6381 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6385 .field_info_spec = {
6386 .description = "l3_hdr_error",
6387 .field_bit_size = 1,
6388 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6389 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6393 .field_info_mask = {
6394 .description = "l3_hdr_valid",
6395 .field_bit_size = 1,
6396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6397 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6401 .field_info_spec = {
6402 .description = "l3_hdr_valid",
6403 .field_bit_size = 1,
6404 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6405 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6407 ULP_WP_SYM_L3_HDR_VALID_YES}
6411 .field_info_mask = {
6412 .description = "l2_two_vtags",
6413 .field_bit_size = 1,
6414 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6415 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6419 .field_info_spec = {
6420 .description = "l2_two_vtags",
6421 .field_bit_size = 1,
6422 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6423 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6427 .field_info_mask = {
6428 .description = "l2_vtag_present",
6429 .field_bit_size = 1,
6430 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6431 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6435 .field_info_spec = {
6436 .description = "l2_vtag_present",
6437 .field_bit_size = 1,
6438 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6439 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6441 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
6442 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
6446 .field_info_mask = {
6447 .description = "l2_uc_mc_bc",
6448 .field_bit_size = 2,
6449 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6450 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6454 .field_info_spec = {
6455 .description = "l2_uc_mc_bc",
6456 .field_bit_size = 2,
6457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6458 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6462 .field_info_mask = {
6463 .description = "l2_hdr_type",
6464 .field_bit_size = 2,
6465 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6466 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6470 .field_info_spec = {
6471 .description = "l2_hdr_type",
6472 .field_bit_size = 2,
6473 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6474 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6478 .field_info_mask = {
6479 .description = "l2_hdr_error",
6480 .field_bit_size = 1,
6481 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6482 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6486 .field_info_spec = {
6487 .description = "l2_hdr_error",
6488 .field_bit_size = 1,
6489 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6490 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6494 .field_info_mask = {
6495 .description = "l2_hdr_valid",
6496 .field_bit_size = 1,
6497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6498 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6502 .field_info_spec = {
6503 .description = "l2_hdr_valid",
6504 .field_bit_size = 1,
6505 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6506 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6508 ULP_WP_SYM_L2_HDR_VALID_YES}
6512 .field_info_mask = {
6513 .description = "tun_hdr_flags",
6514 .field_bit_size = 3,
6515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6516 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6518 .field_info_spec = {
6519 .description = "tun_hdr_flags",
6520 .field_bit_size = 3,
6521 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6522 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6526 .field_info_mask = {
6527 .description = "tun_hdr_type",
6528 .field_bit_size = 4,
6529 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6530 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6532 .field_info_spec = {
6533 .description = "tun_hdr_type",
6534 .field_bit_size = 4,
6535 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6536 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6540 .field_info_mask = {
6541 .description = "tun_hdr_err",
6542 .field_bit_size = 1,
6543 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6544 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6546 .field_info_spec = {
6547 .description = "tun_hdr_err",
6548 .field_bit_size = 1,
6549 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6550 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6554 .field_info_mask = {
6555 .description = "tun_hdr_valid",
6556 .field_bit_size = 1,
6557 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6558 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6562 .field_info_spec = {
6563 .description = "tun_hdr_valid",
6564 .field_bit_size = 1,
6565 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6566 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6570 .field_info_mask = {
6571 .description = "tl4_hdr_is_udp_tcp",
6572 .field_bit_size = 1,
6573 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6574 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6576 .field_info_spec = {
6577 .description = "tl4_hdr_is_udp_tcp",
6578 .field_bit_size = 1,
6579 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6580 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6584 .field_info_mask = {
6585 .description = "tl4_hdr_type",
6586 .field_bit_size = 4,
6587 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6588 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6590 .field_info_spec = {
6591 .description = "tl4_hdr_type",
6592 .field_bit_size = 4,
6593 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6594 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6598 .field_info_mask = {
6599 .description = "tl4_hdr_error",
6600 .field_bit_size = 1,
6601 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6602 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6604 .field_info_spec = {
6605 .description = "tl4_hdr_error",
6606 .field_bit_size = 1,
6607 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6608 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6612 .field_info_mask = {
6613 .description = "tl4_hdr_valid",
6614 .field_bit_size = 1,
6615 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6616 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6620 .field_info_spec = {
6621 .description = "tl4_hdr_valid",
6622 .field_bit_size = 1,
6623 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6624 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6628 .field_info_mask = {
6629 .description = "tl3_ipv6_cmp_dst",
6630 .field_bit_size = 1,
6631 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6632 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6634 .field_info_spec = {
6635 .description = "tl3_ipv6_cmp_dst",
6636 .field_bit_size = 1,
6637 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6638 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6642 .field_info_mask = {
6643 .description = "tl3_ipv6_cmp_src",
6644 .field_bit_size = 1,
6645 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6646 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6648 .field_info_spec = {
6649 .description = "tl3_ipv6_cmp_src",
6650 .field_bit_size = 1,
6651 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6652 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6656 .field_info_mask = {
6657 .description = "tl3_hdr_isIP",
6658 .field_bit_size = 1,
6659 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6660 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6662 .field_info_spec = {
6663 .description = "tl3_hdr_isIP",
6664 .field_bit_size = 1,
6665 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6666 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6670 .field_info_mask = {
6671 .description = "tl3_hdr_type",
6672 .field_bit_size = 4,
6673 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6674 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6676 .field_info_spec = {
6677 .description = "tl3_hdr_type",
6678 .field_bit_size = 4,
6679 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6680 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6684 .field_info_mask = {
6685 .description = "tl3_hdr_error",
6686 .field_bit_size = 1,
6687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6688 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6690 .field_info_spec = {
6691 .description = "tl3_hdr_error",
6692 .field_bit_size = 1,
6693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6694 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6698 .field_info_mask = {
6699 .description = "tl3_hdr_valid",
6700 .field_bit_size = 1,
6701 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6702 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6706 .field_info_spec = {
6707 .description = "tl3_hdr_valid",
6708 .field_bit_size = 1,
6709 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6710 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6714 .field_info_mask = {
6715 .description = "tl2_two_vtags",
6716 .field_bit_size = 1,
6717 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6718 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6720 .field_info_spec = {
6721 .description = "tl2_two_vtags",
6722 .field_bit_size = 1,
6723 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6724 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6728 .field_info_mask = {
6729 .description = "tl2_vtag_present",
6730 .field_bit_size = 1,
6731 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6732 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6734 .field_info_spec = {
6735 .description = "tl2_vtag_present",
6736 .field_bit_size = 1,
6737 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6738 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6742 .field_info_mask = {
6743 .description = "tl2_uc_mc_bc",
6744 .field_bit_size = 2,
6745 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6746 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6748 .field_info_spec = {
6749 .description = "tl2_uc_mc_bc",
6750 .field_bit_size = 2,
6751 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6752 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6756 .field_info_mask = {
6757 .description = "tl2_hdr_type",
6758 .field_bit_size = 2,
6759 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6760 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6762 .field_info_spec = {
6763 .description = "tl2_hdr_type",
6764 .field_bit_size = 2,
6765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6766 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6770 .field_info_mask = {
6771 .description = "tl2_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 = "tl2_hdr_valid",
6780 .field_bit_size = 1,
6781 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6782 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6786 .field_info_mask = {
6787 .description = "hrec_next",
6788 .field_bit_size = 1,
6789 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6790 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6792 .field_info_spec = {
6793 .description = "hrec_next",
6794 .field_bit_size = 1,
6795 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6796 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6800 .field_info_mask = {
6801 .description = "reserved",
6802 .field_bit_size = 9,
6803 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6804 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6806 .field_info_spec = {
6807 .description = "reserved",
6808 .field_bit_size = 9,
6809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6810 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6814 .field_info_mask = {
6815 .description = "prof_func_id",
6816 .field_bit_size = 7,
6817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6818 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6822 .field_info_spec = {
6823 .description = "prof_func_id",
6824 .field_bit_size = 7,
6825 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6826 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
6828 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
6829 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
6830 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
6832 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
6833 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
6834 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
6836 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6837 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
6841 .field_info_mask = {
6842 .description = "agg_error",
6843 .field_bit_size = 1,
6844 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6845 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6847 .field_info_spec = {
6848 .description = "agg_error",
6849 .field_bit_size = 1,
6850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6851 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6855 .field_info_mask = {
6856 .description = "recycle_cnt",
6857 .field_bit_size = 2,
6858 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6859 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6861 .field_info_spec = {
6862 .description = "recycle_cnt",
6863 .field_bit_size = 2,
6864 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6865 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6869 .field_info_mask = {
6870 .description = "pkt_type_0",
6871 .field_bit_size = 2,
6872 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6873 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6875 .field_info_spec = {
6876 .description = "pkt_type_0",
6877 .field_bit_size = 2,
6878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6879 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6883 .field_info_mask = {
6884 .description = "pkt_type_1",
6885 .field_bit_size = 2,
6886 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6887 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6889 .field_info_spec = {
6890 .description = "pkt_type_1",
6891 .field_bit_size = 2,
6892 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6893 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6897 .field_info_mask = {
6898 .description = "valid",
6899 .field_bit_size = 1,
6900 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6901 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6905 .field_info_spec = {
6906 .description = "valid",
6907 .field_bit_size = 1,
6908 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6909 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6914 /* class_tid: 2, , table: profile_tcam.ipv6 */
6916 .field_info_mask = {
6917 .description = "l4_hdr_is_udp_tcp",
6918 .field_bit_size = 1,
6919 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6920 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6922 .field_info_spec = {
6923 .description = "l4_hdr_is_udp_tcp",
6924 .field_bit_size = 1,
6925 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6926 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6930 .field_info_mask = {
6931 .description = "l4_hdr_type",
6932 .field_bit_size = 4,
6933 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6934 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6936 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6937 BNXT_ULP_CF_IDX_O_L4 & 0xff},
6938 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
6939 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
6941 .field_info_spec = {
6942 .description = "l4_hdr_type",
6943 .field_bit_size = 4,
6944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6945 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6947 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
6948 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
6949 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
6950 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
6951 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
6952 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
6953 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
6954 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
6955 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
6957 ULP_WP_SYM_L4_HDR_TYPE_TCP},
6958 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
6960 ULP_WP_SYM_L4_HDR_TYPE_UDP}
6964 .field_info_mask = {
6965 .description = "l4_hdr_error",
6966 .field_bit_size = 1,
6967 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6968 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6970 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6971 BNXT_ULP_CF_IDX_O_L4 & 0xff}
6973 .field_info_spec = {
6974 .description = "l4_hdr_error",
6975 .field_bit_size = 1,
6976 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6977 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6981 .field_info_mask = {
6982 .description = "l4_hdr_valid",
6983 .field_bit_size = 1,
6984 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6985 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6987 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6988 BNXT_ULP_CF_IDX_O_L4 & 0xff}
6990 .field_info_spec = {
6991 .description = "l4_hdr_valid",
6992 .field_bit_size = 1,
6993 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6994 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6996 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
6997 BNXT_ULP_CF_IDX_O_L4 & 0xff}
7001 .field_info_mask = {
7002 .description = "l3_ipv6_cmp_dst",
7003 .field_bit_size = 1,
7004 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7005 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7007 .field_info_spec = {
7008 .description = "l3_ipv6_cmp_dst",
7009 .field_bit_size = 1,
7010 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7011 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7015 .field_info_mask = {
7016 .description = "l3_ipv6_cmp_src",
7017 .field_bit_size = 1,
7018 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7019 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7021 .field_info_spec = {
7022 .description = "l3_ipv6_cmp_src",
7023 .field_bit_size = 1,
7024 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7025 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7029 .field_info_mask = {
7030 .description = "l3_hdr_isIP",
7031 .field_bit_size = 1,
7032 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7033 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7035 .field_info_spec = {
7036 .description = "l3_hdr_isIP",
7037 .field_bit_size = 1,
7038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7039 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7043 .field_info_mask = {
7044 .description = "l3_hdr_type",
7045 .field_bit_size = 4,
7046 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7047 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7051 .field_info_spec = {
7052 .description = "l3_hdr_type",
7053 .field_bit_size = 4,
7054 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7055 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7057 ULP_WP_SYM_L3_HDR_TYPE_IPV6}
7061 .field_info_mask = {
7062 .description = "l3_hdr_error",
7063 .field_bit_size = 1,
7064 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7065 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7069 .field_info_spec = {
7070 .description = "l3_hdr_error",
7071 .field_bit_size = 1,
7072 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7073 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7077 .field_info_mask = {
7078 .description = "l3_hdr_valid",
7079 .field_bit_size = 1,
7080 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7081 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7085 .field_info_spec = {
7086 .description = "l3_hdr_valid",
7087 .field_bit_size = 1,
7088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7089 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7091 ULP_WP_SYM_L3_HDR_VALID_YES}
7095 .field_info_mask = {
7096 .description = "l2_two_vtags",
7097 .field_bit_size = 1,
7098 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7099 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7103 .field_info_spec = {
7104 .description = "l2_two_vtags",
7105 .field_bit_size = 1,
7106 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7107 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7111 .field_info_mask = {
7112 .description = "l2_vtag_present",
7113 .field_bit_size = 1,
7114 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7115 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7119 .field_info_spec = {
7120 .description = "l2_vtag_present",
7121 .field_bit_size = 1,
7122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7123 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7125 (BNXT_ULP_CF_IDX_O_ONE_VTAG >> 8) & 0xff,
7126 BNXT_ULP_CF_IDX_O_ONE_VTAG & 0xff}
7130 .field_info_mask = {
7131 .description = "l2_uc_mc_bc",
7132 .field_bit_size = 2,
7133 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7134 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7138 .field_info_spec = {
7139 .description = "l2_uc_mc_bc",
7140 .field_bit_size = 2,
7141 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7142 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7146 .field_info_mask = {
7147 .description = "l2_hdr_type",
7148 .field_bit_size = 2,
7149 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7150 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7154 .field_info_spec = {
7155 .description = "l2_hdr_type",
7156 .field_bit_size = 2,
7157 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7158 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7162 .field_info_mask = {
7163 .description = "l2_hdr_error",
7164 .field_bit_size = 1,
7165 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7166 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7170 .field_info_spec = {
7171 .description = "l2_hdr_error",
7172 .field_bit_size = 1,
7173 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7174 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7178 .field_info_mask = {
7179 .description = "l2_hdr_valid",
7180 .field_bit_size = 1,
7181 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7182 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7186 .field_info_spec = {
7187 .description = "l2_hdr_valid",
7188 .field_bit_size = 1,
7189 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7190 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7192 ULP_WP_SYM_L2_HDR_VALID_YES}
7196 .field_info_mask = {
7197 .description = "tun_hdr_flags",
7198 .field_bit_size = 3,
7199 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7200 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7202 .field_info_spec = {
7203 .description = "tun_hdr_flags",
7204 .field_bit_size = 3,
7205 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7206 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7210 .field_info_mask = {
7211 .description = "tun_hdr_type",
7212 .field_bit_size = 4,
7213 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7214 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7216 .field_info_spec = {
7217 .description = "tun_hdr_type",
7218 .field_bit_size = 4,
7219 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7220 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7224 .field_info_mask = {
7225 .description = "tun_hdr_err",
7226 .field_bit_size = 1,
7227 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7228 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7230 .field_info_spec = {
7231 .description = "tun_hdr_err",
7232 .field_bit_size = 1,
7233 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7234 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7238 .field_info_mask = {
7239 .description = "tun_hdr_valid",
7240 .field_bit_size = 1,
7241 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7242 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7246 .field_info_spec = {
7247 .description = "tun_hdr_valid",
7248 .field_bit_size = 1,
7249 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7250 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7254 .field_info_mask = {
7255 .description = "tl4_hdr_is_udp_tcp",
7256 .field_bit_size = 1,
7257 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7258 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7260 .field_info_spec = {
7261 .description = "tl4_hdr_is_udp_tcp",
7262 .field_bit_size = 1,
7263 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7264 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7268 .field_info_mask = {
7269 .description = "tl4_hdr_type",
7270 .field_bit_size = 4,
7271 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7272 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7274 .field_info_spec = {
7275 .description = "tl4_hdr_type",
7276 .field_bit_size = 4,
7277 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7278 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7282 .field_info_mask = {
7283 .description = "tl4_hdr_error",
7284 .field_bit_size = 1,
7285 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7286 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7288 .field_info_spec = {
7289 .description = "tl4_hdr_error",
7290 .field_bit_size = 1,
7291 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7292 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7296 .field_info_mask = {
7297 .description = "tl4_hdr_valid",
7298 .field_bit_size = 1,
7299 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7300 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7304 .field_info_spec = {
7305 .description = "tl4_hdr_valid",
7306 .field_bit_size = 1,
7307 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7308 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7312 .field_info_mask = {
7313 .description = "tl3_ipv6_cmp_dst",
7314 .field_bit_size = 1,
7315 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7316 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7318 .field_info_spec = {
7319 .description = "tl3_ipv6_cmp_dst",
7320 .field_bit_size = 1,
7321 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7322 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7326 .field_info_mask = {
7327 .description = "tl3_ipv6_cmp_src",
7328 .field_bit_size = 1,
7329 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7330 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7332 .field_info_spec = {
7333 .description = "tl3_ipv6_cmp_src",
7334 .field_bit_size = 1,
7335 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7336 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7340 .field_info_mask = {
7341 .description = "tl3_hdr_isIP",
7342 .field_bit_size = 1,
7343 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7344 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7346 .field_info_spec = {
7347 .description = "tl3_hdr_isIP",
7348 .field_bit_size = 1,
7349 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7350 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7354 .field_info_mask = {
7355 .description = "tl3_hdr_type",
7356 .field_bit_size = 4,
7357 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7358 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7360 .field_info_spec = {
7361 .description = "tl3_hdr_type",
7362 .field_bit_size = 4,
7363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7364 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7368 .field_info_mask = {
7369 .description = "tl3_hdr_error",
7370 .field_bit_size = 1,
7371 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7372 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7374 .field_info_spec = {
7375 .description = "tl3_hdr_error",
7376 .field_bit_size = 1,
7377 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7378 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7382 .field_info_mask = {
7383 .description = "tl3_hdr_valid",
7384 .field_bit_size = 1,
7385 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7386 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7390 .field_info_spec = {
7391 .description = "tl3_hdr_valid",
7392 .field_bit_size = 1,
7393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7394 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7398 .field_info_mask = {
7399 .description = "tl2_two_vtags",
7400 .field_bit_size = 1,
7401 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7402 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7404 .field_info_spec = {
7405 .description = "tl2_two_vtags",
7406 .field_bit_size = 1,
7407 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7408 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7412 .field_info_mask = {
7413 .description = "tl2_vtag_present",
7414 .field_bit_size = 1,
7415 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7416 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7418 .field_info_spec = {
7419 .description = "tl2_vtag_present",
7420 .field_bit_size = 1,
7421 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7422 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7426 .field_info_mask = {
7427 .description = "tl2_uc_mc_bc",
7428 .field_bit_size = 2,
7429 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7430 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7432 .field_info_spec = {
7433 .description = "tl2_uc_mc_bc",
7434 .field_bit_size = 2,
7435 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7436 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7440 .field_info_mask = {
7441 .description = "tl2_hdr_type",
7442 .field_bit_size = 2,
7443 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7444 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7446 .field_info_spec = {
7447 .description = "tl2_hdr_type",
7448 .field_bit_size = 2,
7449 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7450 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7454 .field_info_mask = {
7455 .description = "tl2_hdr_valid",
7456 .field_bit_size = 1,
7457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7458 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7462 .field_info_spec = {
7463 .description = "tl2_hdr_valid",
7464 .field_bit_size = 1,
7465 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7466 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7470 .field_info_mask = {
7471 .description = "hrec_next",
7472 .field_bit_size = 1,
7473 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7474 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7476 .field_info_spec = {
7477 .description = "hrec_next",
7478 .field_bit_size = 1,
7479 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7480 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7484 .field_info_mask = {
7485 .description = "reserved",
7486 .field_bit_size = 9,
7487 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7488 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7490 .field_info_spec = {
7491 .description = "reserved",
7492 .field_bit_size = 9,
7493 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7494 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7498 .field_info_mask = {
7499 .description = "prof_func_id",
7500 .field_bit_size = 7,
7501 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7502 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7506 .field_info_spec = {
7507 .description = "prof_func_id",
7508 .field_bit_size = 7,
7509 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7510 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7512 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7513 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
7514 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
7516 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
7517 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
7518 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
7520 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
7521 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
7525 .field_info_mask = {
7526 .description = "agg_error",
7527 .field_bit_size = 1,
7528 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7529 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7531 .field_info_spec = {
7532 .description = "agg_error",
7533 .field_bit_size = 1,
7534 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7535 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7539 .field_info_mask = {
7540 .description = "recycle_cnt",
7541 .field_bit_size = 2,
7542 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7543 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7545 .field_info_spec = {
7546 .description = "recycle_cnt",
7547 .field_bit_size = 2,
7548 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7549 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7553 .field_info_mask = {
7554 .description = "pkt_type_0",
7555 .field_bit_size = 2,
7556 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7557 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7559 .field_info_spec = {
7560 .description = "pkt_type_0",
7561 .field_bit_size = 2,
7562 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7563 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7567 .field_info_mask = {
7568 .description = "pkt_type_1",
7569 .field_bit_size = 2,
7570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7571 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7573 .field_info_spec = {
7574 .description = "pkt_type_1",
7575 .field_bit_size = 2,
7576 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7577 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7581 .field_info_mask = {
7582 .description = "valid",
7583 .field_bit_size = 1,
7584 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7585 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7589 .field_info_spec = {
7590 .description = "valid",
7591 .field_bit_size = 1,
7592 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7593 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
7598 /* class_tid: 2, , table: profile_tcam_cache.wr */
7600 .field_info_mask = {
7601 .description = "recycle_cnt",
7602 .field_bit_size = 2,
7603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7604 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7608 .field_info_spec = {
7609 .description = "recycle_cnt",
7610 .field_bit_size = 2,
7611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7612 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7616 .field_info_mask = {
7617 .description = "prof_func_id",
7618 .field_bit_size = 7,
7619 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7620 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7624 .field_info_spec = {
7625 .description = "prof_func_id",
7626 .field_bit_size = 7,
7627 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7628 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7630 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7631 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
7632 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
7634 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
7635 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
7636 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
7638 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
7639 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
7643 .field_info_mask = {
7644 .description = "hdr_sig_id",
7645 .field_bit_size = 5,
7646 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7647 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7651 .field_info_spec = {
7652 .description = "hdr_sig_id",
7653 .field_bit_size = 5,
7654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7655 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7657 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
7658 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
7661 /* class_tid: 2, , table: em.ipv4 */
7663 .field_info_mask = {
7664 .description = "spare",
7665 .field_bit_size = 3,
7666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7667 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7669 .field_info_spec = {
7670 .description = "spare",
7671 .field_bit_size = 3,
7672 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7673 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7677 .field_info_mask = {
7678 .description = "local_cos",
7679 .field_bit_size = 3,
7680 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7681 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7683 .field_info_spec = {
7684 .description = "local_cos",
7685 .field_bit_size = 3,
7686 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7687 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7691 .field_info_mask = {
7692 .description = "l4.dst",
7693 .field_bit_size = 16,
7694 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7695 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7700 .field_info_spec = {
7701 .description = "l4.dst",
7702 .field_bit_size = 16,
7703 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7704 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7706 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
7707 BNXT_ULP_CF_IDX_O_L4 & 0xff},
7708 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
7710 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
7711 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
7712 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7716 .field_info_mask = {
7717 .description = "l4.src",
7718 .field_bit_size = 16,
7719 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7720 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7725 .field_info_spec = {
7726 .description = "l4.src",
7727 .field_bit_size = 16,
7728 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7729 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7731 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
7732 BNXT_ULP_CF_IDX_O_L4 & 0xff},
7733 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
7735 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
7736 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
7737 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7741 .field_info_mask = {
7742 .description = "l3.prot",
7743 .field_bit_size = 8,
7744 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7745 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7749 .field_info_spec = {
7750 .description = "l3.prot",
7751 .field_bit_size = 8,
7752 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7753 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7755 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
7756 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
7757 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
7759 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
7760 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
7761 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7765 .field_info_mask = {
7766 .description = "l3.dst",
7767 .field_bit_size = 32,
7768 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7769 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7771 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
7772 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
7774 .field_info_spec = {
7775 .description = "l3.dst",
7776 .field_bit_size = 32,
7777 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7778 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7780 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
7781 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
7785 .field_info_mask = {
7786 .description = "l3.src",
7787 .field_bit_size = 32,
7788 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7789 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7791 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
7792 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
7794 .field_info_spec = {
7795 .description = "l3.src",
7796 .field_bit_size = 32,
7797 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7798 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7800 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
7801 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
7805 .field_info_mask = {
7806 .description = "l2.dmac",
7807 .field_bit_size = 48,
7808 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7809 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7811 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
7812 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
7814 .field_info_spec = {
7815 .description = "l2.dmac",
7816 .field_bit_size = 48,
7817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7818 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7820 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
7821 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
7825 .field_info_mask = {
7826 .description = "l2_cntxt_id",
7827 .field_bit_size = 10,
7828 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7829 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7834 .field_info_spec = {
7835 .description = "l2_cntxt_id",
7836 .field_bit_size = 10,
7837 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7838 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7840 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
7841 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
7845 .field_info_mask = {
7846 .description = "em_profile_id",
7847 .field_bit_size = 8,
7848 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7849 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7853 .field_info_spec = {
7854 .description = "em_profile_id",
7855 .field_bit_size = 8,
7856 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7857 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7859 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
7860 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
7863 /* class_tid: 2, , table: eem.ipv4 */
7865 .field_info_mask = {
7866 .description = "spare",
7867 .field_bit_size = 275,
7868 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7869 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7871 .field_info_spec = {
7872 .description = "spare",
7873 .field_bit_size = 275,
7874 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7875 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7879 .field_info_mask = {
7880 .description = "local_cos",
7881 .field_bit_size = 3,
7882 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7883 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7885 .field_info_spec = {
7886 .description = "local_cos",
7887 .field_bit_size = 3,
7888 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7889 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7893 .field_info_mask = {
7894 .description = "l4.dst",
7895 .field_bit_size = 16,
7896 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7897 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7902 .field_info_spec = {
7903 .description = "l4.dst",
7904 .field_bit_size = 16,
7905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7906 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7908 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
7909 BNXT_ULP_CF_IDX_O_L4 & 0xff},
7910 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
7912 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
7913 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
7914 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7918 .field_info_mask = {
7919 .description = "l4.src",
7920 .field_bit_size = 16,
7921 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7922 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7927 .field_info_spec = {
7928 .description = "l4.src",
7929 .field_bit_size = 16,
7930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7931 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7933 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
7934 BNXT_ULP_CF_IDX_O_L4 & 0xff},
7935 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
7937 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
7938 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
7939 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7943 .field_info_mask = {
7944 .description = "l3.prot",
7945 .field_bit_size = 8,
7946 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7947 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7951 .field_info_spec = {
7952 .description = "l3.prot",
7953 .field_bit_size = 8,
7954 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7955 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7957 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
7958 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff},
7959 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
7961 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
7962 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
7963 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7967 .field_info_mask = {
7968 .description = "l3.dst",
7969 .field_bit_size = 32,
7970 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7971 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7973 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
7974 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
7976 .field_info_spec = {
7977 .description = "l3.dst",
7978 .field_bit_size = 32,
7979 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7980 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7982 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
7983 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
7987 .field_info_mask = {
7988 .description = "l3.src",
7989 .field_bit_size = 32,
7990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7991 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
7993 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
7994 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
7996 .field_info_spec = {
7997 .description = "l3.src",
7998 .field_bit_size = 32,
7999 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8000 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8002 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
8003 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
8007 .field_info_mask = {
8008 .description = "l2.dmac",
8009 .field_bit_size = 48,
8010 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8011 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8013 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
8014 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
8016 .field_info_spec = {
8017 .description = "l2.dmac",
8018 .field_bit_size = 48,
8019 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8020 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8022 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
8023 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
8027 .field_info_mask = {
8028 .description = "l2_cntxt_id",
8029 .field_bit_size = 10,
8030 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8031 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8036 .field_info_spec = {
8037 .description = "l2_cntxt_id",
8038 .field_bit_size = 10,
8039 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8040 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8042 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
8043 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
8047 .field_info_mask = {
8048 .description = "em_profile_id",
8049 .field_bit_size = 8,
8050 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8051 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8055 .field_info_spec = {
8056 .description = "em_profile_id",
8057 .field_bit_size = 8,
8058 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8059 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8061 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
8062 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
8065 /* class_tid: 2, , table: em.ipv6 */
8067 .field_info_mask = {
8068 .description = "spare",
8069 .field_bit_size = 3,
8070 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8071 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8073 .field_info_spec = {
8074 .description = "spare",
8075 .field_bit_size = 3,
8076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8081 .field_info_mask = {
8082 .description = "local_cos",
8083 .field_bit_size = 3,
8084 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8085 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8087 .field_info_spec = {
8088 .description = "local_cos",
8089 .field_bit_size = 3,
8090 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8091 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8095 .field_info_mask = {
8096 .description = "l4.dst",
8097 .field_bit_size = 16,
8098 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8099 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8104 .field_info_spec = {
8105 .description = "l4.dst",
8106 .field_bit_size = 16,
8107 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8108 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8110 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8111 BNXT_ULP_CF_IDX_O_L4 & 0xff},
8112 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8114 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
8115 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
8116 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8120 .field_info_mask = {
8121 .description = "l4.src",
8122 .field_bit_size = 16,
8123 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8124 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8129 .field_info_spec = {
8130 .description = "l4.src",
8131 .field_bit_size = 16,
8132 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8133 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8135 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8136 BNXT_ULP_CF_IDX_O_L4 & 0xff},
8137 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8139 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
8140 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
8141 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8145 .field_info_mask = {
8146 .description = "l3.prot",
8147 .field_bit_size = 8,
8148 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8149 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8153 .field_info_spec = {
8154 .description = "l3.prot",
8155 .field_bit_size = 8,
8156 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8157 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8159 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
8160 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
8161 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8163 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
8164 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
8165 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8169 .field_info_mask = {
8170 .description = "l3.dst",
8171 .field_bit_size = 128,
8172 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8173 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8175 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
8176 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
8178 .field_info_spec = {
8179 .description = "l3.dst",
8180 .field_bit_size = 128,
8181 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8182 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8184 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
8185 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
8189 .field_info_mask = {
8190 .description = "l3.src",
8191 .field_bit_size = 128,
8192 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8193 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8195 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
8196 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
8198 .field_info_spec = {
8199 .description = "l3.src",
8200 .field_bit_size = 128,
8201 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8202 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8204 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
8205 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
8209 .field_info_mask = {
8210 .description = "l2.smac",
8211 .field_bit_size = 48,
8212 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8213 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8215 .field_info_spec = {
8216 .description = "l2.smac",
8217 .field_bit_size = 48,
8218 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8219 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8223 .field_info_mask = {
8224 .description = "l2.dmac",
8225 .field_bit_size = 48,
8226 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8227 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8229 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
8230 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
8232 .field_info_spec = {
8233 .description = "l2.dmac",
8234 .field_bit_size = 48,
8235 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8236 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8238 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
8239 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
8243 .field_info_mask = {
8244 .description = "l2_cntxt_id",
8245 .field_bit_size = 10,
8246 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8247 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8252 .field_info_spec = {
8253 .description = "l2_cntxt_id",
8254 .field_bit_size = 10,
8255 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8256 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8258 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
8259 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
8263 .field_info_mask = {
8264 .description = "em_profile_id",
8265 .field_bit_size = 8,
8266 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8267 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8271 .field_info_spec = {
8272 .description = "em_profile_id",
8273 .field_bit_size = 8,
8274 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8275 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8277 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
8278 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
8281 /* class_tid: 2, , table: eem.ipv6 */
8283 .field_info_mask = {
8284 .description = "spare",
8285 .field_bit_size = 35,
8286 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8287 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8289 .field_info_spec = {
8290 .description = "spare",
8291 .field_bit_size = 35,
8292 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8293 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8297 .field_info_mask = {
8298 .description = "local_cos",
8299 .field_bit_size = 3,
8300 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8301 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8303 .field_info_spec = {
8304 .description = "local_cos",
8305 .field_bit_size = 3,
8306 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8307 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8311 .field_info_mask = {
8312 .description = "l4.dst",
8313 .field_bit_size = 16,
8314 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8315 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8320 .field_info_spec = {
8321 .description = "l4.dst",
8322 .field_bit_size = 16,
8323 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8324 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8326 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8327 BNXT_ULP_CF_IDX_O_L4 & 0xff},
8328 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8330 (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
8331 BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
8332 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8336 .field_info_mask = {
8337 .description = "l4.src",
8338 .field_bit_size = 16,
8339 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8340 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8345 .field_info_spec = {
8346 .description = "l4.src",
8347 .field_bit_size = 16,
8348 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8349 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8351 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
8352 BNXT_ULP_CF_IDX_O_L4 & 0xff},
8353 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8355 (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
8356 BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
8357 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8361 .field_info_mask = {
8362 .description = "l3.prot",
8363 .field_bit_size = 8,
8364 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8365 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8369 .field_info_spec = {
8370 .description = "l3.prot",
8371 .field_bit_size = 8,
8372 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8373 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8375 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
8376 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff},
8377 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8379 (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
8380 BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
8381 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8385 .field_info_mask = {
8386 .description = "l3.dst",
8387 .field_bit_size = 128,
8388 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8389 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8391 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
8392 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
8394 .field_info_spec = {
8395 .description = "l3.dst",
8396 .field_bit_size = 128,
8397 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8398 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8400 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
8401 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
8405 .field_info_mask = {
8406 .description = "l3.src",
8407 .field_bit_size = 128,
8408 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8409 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8411 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
8412 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
8414 .field_info_spec = {
8415 .description = "l3.src",
8416 .field_bit_size = 128,
8417 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8418 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8420 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
8421 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
8425 .field_info_mask = {
8426 .description = "l2.smac",
8427 .field_bit_size = 48,
8428 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8429 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8431 .field_info_spec = {
8432 .description = "l2.smac",
8433 .field_bit_size = 48,
8434 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8435 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8439 .field_info_mask = {
8440 .description = "l2.dmac",
8441 .field_bit_size = 48,
8442 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8443 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8445 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
8446 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
8448 .field_info_spec = {
8449 .description = "l2.dmac",
8450 .field_bit_size = 48,
8451 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8452 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
8454 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
8455 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
8459 .field_info_mask = {
8460 .description = "l2_cntxt_id",
8461 .field_bit_size = 10,
8462 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8463 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8468 .field_info_spec = {
8469 .description = "l2_cntxt_id",
8470 .field_bit_size = 10,
8471 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8472 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8474 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
8475 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
8479 .field_info_mask = {
8480 .description = "em_profile_id",
8481 .field_bit_size = 8,
8482 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8483 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8487 .field_info_spec = {
8488 .description = "em_profile_id",
8489 .field_bit_size = 8,
8490 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8491 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8493 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
8494 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
8497 /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_rd */
8499 .field_info_mask = {
8500 .description = "svif",
8501 .field_bit_size = 8,
8502 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8503 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8507 .field_info_spec = {
8508 .description = "svif",
8509 .field_bit_size = 8,
8510 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8511 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8513 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
8514 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
8517 /* class_tid: 3, , table: l2_cntxt_tcam.ing_0 */
8519 .field_info_mask = {
8520 .description = "l2_ivlan_vid",
8521 .field_bit_size = 12,
8522 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8523 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8525 .field_info_spec = {
8526 .description = "l2_ivlan_vid",
8527 .field_bit_size = 12,
8528 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8529 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8533 .field_info_mask = {
8534 .description = "l2_ovlan_vid",
8535 .field_bit_size = 12,
8536 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8537 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8539 .field_info_spec = {
8540 .description = "l2_ovlan_vid",
8541 .field_bit_size = 12,
8542 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8543 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8547 .field_info_mask = {
8548 .description = "mac0_addr",
8549 .field_bit_size = 48,
8550 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8551 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8553 .field_info_spec = {
8554 .description = "mac0_addr",
8555 .field_bit_size = 48,
8556 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8557 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8561 .field_info_mask = {
8562 .description = "svif",
8563 .field_bit_size = 8,
8564 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8565 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8569 .field_info_spec = {
8570 .description = "svif",
8571 .field_bit_size = 8,
8572 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8573 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8575 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
8576 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
8580 .field_info_mask = {
8581 .description = "sparif",
8582 .field_bit_size = 4,
8583 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8584 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8586 .field_info_spec = {
8587 .description = "sparif",
8588 .field_bit_size = 4,
8589 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8590 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8594 .field_info_mask = {
8595 .description = "tl2_ivlan_vid",
8596 .field_bit_size = 12,
8597 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8598 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8600 .field_info_spec = {
8601 .description = "tl2_ivlan_vid",
8602 .field_bit_size = 12,
8603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8604 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8608 .field_info_mask = {
8609 .description = "tl2_ovlan_vid",
8610 .field_bit_size = 12,
8611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8612 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8614 .field_info_spec = {
8615 .description = "tl2_ovlan_vid",
8616 .field_bit_size = 12,
8617 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8618 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8622 .field_info_mask = {
8623 .description = "mac1_addr",
8624 .field_bit_size = 48,
8625 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8626 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8628 .field_info_spec = {
8629 .description = "mac1_addr",
8630 .field_bit_size = 48,
8631 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8632 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8636 .field_info_mask = {
8637 .description = "l2_num_vtags",
8638 .field_bit_size = 2,
8639 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8640 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8642 .field_info_spec = {
8643 .description = "l2_num_vtags",
8644 .field_bit_size = 2,
8645 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8646 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8650 .field_info_mask = {
8651 .description = "tl2_num_vtags",
8652 .field_bit_size = 2,
8653 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8654 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8656 .field_info_spec = {
8657 .description = "tl2_num_vtags",
8658 .field_bit_size = 2,
8659 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8660 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8664 .field_info_mask = {
8665 .description = "tun_hdr_type",
8666 .field_bit_size = 4,
8667 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8668 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8670 .field_info_spec = {
8671 .description = "tun_hdr_type",
8672 .field_bit_size = 4,
8673 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8674 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8678 .field_info_mask = {
8679 .description = "key_type",
8680 .field_bit_size = 2,
8681 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8682 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8684 .field_info_spec = {
8685 .description = "key_type",
8686 .field_bit_size = 2,
8687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8688 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8692 .field_info_mask = {
8693 .description = "valid",
8694 .field_bit_size = 1,
8695 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8696 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8700 .field_info_spec = {
8701 .description = "valid",
8702 .field_bit_size = 1,
8703 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8704 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8709 /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */
8711 .field_info_mask = {
8712 .description = "svif",
8713 .field_bit_size = 8,
8714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8715 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8719 .field_info_spec = {
8720 .description = "svif",
8721 .field_bit_size = 8,
8722 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8723 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8725 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
8726 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
8729 /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_rd_vfr */
8731 .field_info_mask = {
8732 .description = "svif",
8733 .field_bit_size = 8,
8734 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8735 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8739 .field_info_spec = {
8740 .description = "svif",
8741 .field_bit_size = 8,
8742 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8743 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8745 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
8746 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
8749 /* class_tid: 3, , table: l2_cntxt_tcam_bypass.egr_vfr */
8751 .field_info_mask = {
8752 .description = "l2_ivlan_vid",
8753 .field_bit_size = 12,
8754 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8755 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8757 .field_info_spec = {
8758 .description = "l2_ivlan_vid",
8759 .field_bit_size = 12,
8760 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8761 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8765 .field_info_mask = {
8766 .description = "l2_ovlan_vid",
8767 .field_bit_size = 12,
8768 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8769 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8771 .field_info_spec = {
8772 .description = "l2_ovlan_vid",
8773 .field_bit_size = 12,
8774 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8775 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8779 .field_info_mask = {
8780 .description = "mac0_addr",
8781 .field_bit_size = 48,
8782 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8783 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8785 .field_info_spec = {
8786 .description = "mac0_addr",
8787 .field_bit_size = 48,
8788 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8789 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8793 .field_info_mask = {
8794 .description = "svif",
8795 .field_bit_size = 8,
8796 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8797 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8801 .field_info_spec = {
8802 .description = "svif",
8803 .field_bit_size = 8,
8804 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8805 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8807 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
8808 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
8812 .field_info_mask = {
8813 .description = "sparif",
8814 .field_bit_size = 4,
8815 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8816 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8818 .field_info_spec = {
8819 .description = "sparif",
8820 .field_bit_size = 4,
8821 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8822 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8826 .field_info_mask = {
8827 .description = "tl2_ivlan_vid",
8828 .field_bit_size = 12,
8829 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8830 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8832 .field_info_spec = {
8833 .description = "tl2_ivlan_vid",
8834 .field_bit_size = 12,
8835 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8836 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8840 .field_info_mask = {
8841 .description = "tl2_ovlan_vid",
8842 .field_bit_size = 12,
8843 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8844 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8846 .field_info_spec = {
8847 .description = "tl2_ovlan_vid",
8848 .field_bit_size = 12,
8849 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8850 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8854 .field_info_mask = {
8855 .description = "mac1_addr",
8856 .field_bit_size = 48,
8857 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8858 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8860 .field_info_spec = {
8861 .description = "mac1_addr",
8862 .field_bit_size = 48,
8863 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8864 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8868 .field_info_mask = {
8869 .description = "l2_num_vtags",
8870 .field_bit_size = 2,
8871 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8872 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8874 .field_info_spec = {
8875 .description = "l2_num_vtags",
8876 .field_bit_size = 2,
8877 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8878 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8882 .field_info_mask = {
8883 .description = "tl2_num_vtags",
8884 .field_bit_size = 2,
8885 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8886 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8888 .field_info_spec = {
8889 .description = "tl2_num_vtags",
8890 .field_bit_size = 2,
8891 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8892 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8896 .field_info_mask = {
8897 .description = "tun_hdr_type",
8898 .field_bit_size = 4,
8899 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8900 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8902 .field_info_spec = {
8903 .description = "tun_hdr_type",
8904 .field_bit_size = 4,
8905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8906 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8910 .field_info_mask = {
8911 .description = "key_type",
8912 .field_bit_size = 2,
8913 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8914 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8916 .field_info_spec = {
8917 .description = "key_type",
8918 .field_bit_size = 2,
8919 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8920 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8924 .field_info_mask = {
8925 .description = "valid",
8926 .field_bit_size = 1,
8927 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8928 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8932 .field_info_spec = {
8933 .description = "valid",
8934 .field_bit_size = 1,
8935 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8936 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
8941 /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
8943 .field_info_mask = {
8944 .description = "svif",
8945 .field_bit_size = 8,
8946 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8947 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8951 .field_info_spec = {
8952 .description = "svif",
8953 .field_bit_size = 8,
8954 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8955 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8957 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
8958 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
8961 /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
8963 .field_info_mask = {
8964 .description = "svif",
8965 .field_bit_size = 8,
8966 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8967 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8971 .field_info_spec = {
8972 .description = "svif",
8973 .field_bit_size = 8,
8974 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8975 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8977 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
8978 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
8981 /* class_tid: 3, , table: l2_cntxt_tcam.egr_0 */
8983 .field_info_mask = {
8984 .description = "l2_ivlan_vid",
8985 .field_bit_size = 12,
8986 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8987 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8989 .field_info_spec = {
8990 .description = "l2_ivlan_vid",
8991 .field_bit_size = 12,
8992 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8993 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
8997 .field_info_mask = {
8998 .description = "l2_ovlan_vid",
8999 .field_bit_size = 12,
9000 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9001 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9003 .field_info_spec = {
9004 .description = "l2_ovlan_vid",
9005 .field_bit_size = 12,
9006 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9007 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9011 .field_info_mask = {
9012 .description = "mac0_addr",
9013 .field_bit_size = 48,
9014 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9015 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9017 .field_info_spec = {
9018 .description = "mac0_addr",
9019 .field_bit_size = 48,
9020 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9021 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9025 .field_info_mask = {
9026 .description = "svif",
9027 .field_bit_size = 8,
9028 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9029 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9033 .field_info_spec = {
9034 .description = "svif",
9035 .field_bit_size = 8,
9036 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9037 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9039 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
9040 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
9044 .field_info_mask = {
9045 .description = "sparif",
9046 .field_bit_size = 4,
9047 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9048 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9050 .field_info_spec = {
9051 .description = "sparif",
9052 .field_bit_size = 4,
9053 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9054 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9058 .field_info_mask = {
9059 .description = "tl2_ivlan_vid",
9060 .field_bit_size = 12,
9061 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9062 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9064 .field_info_spec = {
9065 .description = "tl2_ivlan_vid",
9066 .field_bit_size = 12,
9067 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9068 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9072 .field_info_mask = {
9073 .description = "tl2_ovlan_vid",
9074 .field_bit_size = 12,
9075 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9076 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9078 .field_info_spec = {
9079 .description = "tl2_ovlan_vid",
9080 .field_bit_size = 12,
9081 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9082 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9086 .field_info_mask = {
9087 .description = "mac1_addr",
9088 .field_bit_size = 48,
9089 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9090 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9092 .field_info_spec = {
9093 .description = "mac1_addr",
9094 .field_bit_size = 48,
9095 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9096 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9100 .field_info_mask = {
9101 .description = "l2_num_vtags",
9102 .field_bit_size = 2,
9103 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9104 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9106 .field_info_spec = {
9107 .description = "l2_num_vtags",
9108 .field_bit_size = 2,
9109 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9110 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9114 .field_info_mask = {
9115 .description = "tl2_num_vtags",
9116 .field_bit_size = 2,
9117 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9118 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9120 .field_info_spec = {
9121 .description = "tl2_num_vtags",
9122 .field_bit_size = 2,
9123 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9124 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9128 .field_info_mask = {
9129 .description = "tun_hdr_type",
9130 .field_bit_size = 4,
9131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9132 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9134 .field_info_spec = {
9135 .description = "tun_hdr_type",
9136 .field_bit_size = 4,
9137 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9138 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9142 .field_info_mask = {
9143 .description = "key_type",
9144 .field_bit_size = 2,
9145 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9146 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9148 .field_info_spec = {
9149 .description = "key_type",
9150 .field_bit_size = 2,
9151 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9152 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9156 .field_info_mask = {
9157 .description = "valid",
9158 .field_bit_size = 1,
9159 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9160 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9164 .field_info_spec = {
9165 .description = "valid",
9166 .field_bit_size = 1,
9167 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9168 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9173 /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr */
9175 .field_info_mask = {
9176 .description = "svif",
9177 .field_bit_size = 8,
9178 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9179 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9183 .field_info_spec = {
9184 .description = "svif",
9185 .field_bit_size = 8,
9186 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9187 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9189 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
9190 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
9193 /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_rd_egr */
9195 .field_info_mask = {
9196 .description = "svif",
9197 .field_bit_size = 8,
9198 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9199 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9203 .field_info_spec = {
9204 .description = "svif",
9205 .field_bit_size = 8,
9206 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9207 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9209 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
9210 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
9213 /* class_tid: 4, , table: l2_cntxt_tcam.vf_egr */
9215 .field_info_mask = {
9216 .description = "l2_ivlan_vid",
9217 .field_bit_size = 12,
9218 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9219 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9221 .field_info_spec = {
9222 .description = "l2_ivlan_vid",
9223 .field_bit_size = 12,
9224 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9225 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9229 .field_info_mask = {
9230 .description = "l2_ovlan_vid",
9231 .field_bit_size = 12,
9232 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9233 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9235 .field_info_spec = {
9236 .description = "l2_ovlan_vid",
9237 .field_bit_size = 12,
9238 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9239 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9243 .field_info_mask = {
9244 .description = "mac0_addr",
9245 .field_bit_size = 48,
9246 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9247 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9249 .field_info_spec = {
9250 .description = "mac0_addr",
9251 .field_bit_size = 48,
9252 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9253 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9257 .field_info_mask = {
9258 .description = "svif",
9259 .field_bit_size = 8,
9260 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9261 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9265 .field_info_spec = {
9266 .description = "svif",
9267 .field_bit_size = 8,
9268 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9269 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9271 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
9272 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
9276 .field_info_mask = {
9277 .description = "sparif",
9278 .field_bit_size = 4,
9279 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9280 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9282 .field_info_spec = {
9283 .description = "sparif",
9284 .field_bit_size = 4,
9285 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9286 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9290 .field_info_mask = {
9291 .description = "tl2_ivlan_vid",
9292 .field_bit_size = 12,
9293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9294 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9296 .field_info_spec = {
9297 .description = "tl2_ivlan_vid",
9298 .field_bit_size = 12,
9299 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9300 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9304 .field_info_mask = {
9305 .description = "tl2_ovlan_vid",
9306 .field_bit_size = 12,
9307 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9308 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9310 .field_info_spec = {
9311 .description = "tl2_ovlan_vid",
9312 .field_bit_size = 12,
9313 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9314 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9318 .field_info_mask = {
9319 .description = "mac1_addr",
9320 .field_bit_size = 48,
9321 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9322 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9324 .field_info_spec = {
9325 .description = "mac1_addr",
9326 .field_bit_size = 48,
9327 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9328 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9332 .field_info_mask = {
9333 .description = "l2_num_vtags",
9334 .field_bit_size = 2,
9335 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9336 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9338 .field_info_spec = {
9339 .description = "l2_num_vtags",
9340 .field_bit_size = 2,
9341 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9342 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9346 .field_info_mask = {
9347 .description = "tl2_num_vtags",
9348 .field_bit_size = 2,
9349 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9350 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9352 .field_info_spec = {
9353 .description = "tl2_num_vtags",
9354 .field_bit_size = 2,
9355 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9356 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9360 .field_info_mask = {
9361 .description = "tun_hdr_type",
9362 .field_bit_size = 4,
9363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9364 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9366 .field_info_spec = {
9367 .description = "tun_hdr_type",
9368 .field_bit_size = 4,
9369 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9370 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9374 .field_info_mask = {
9375 .description = "key_type",
9376 .field_bit_size = 2,
9377 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9378 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9380 .field_info_spec = {
9381 .description = "key_type",
9382 .field_bit_size = 2,
9383 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9384 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9388 .field_info_mask = {
9389 .description = "valid",
9390 .field_bit_size = 1,
9391 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9392 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9396 .field_info_spec = {
9397 .description = "valid",
9398 .field_bit_size = 1,
9399 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9400 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9405 /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_egr_wr */
9407 .field_info_mask = {
9408 .description = "svif",
9409 .field_bit_size = 8,
9410 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9411 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9415 .field_info_spec = {
9416 .description = "svif",
9417 .field_bit_size = 8,
9418 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9419 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9421 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
9422 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
9425 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vf_ing */
9427 .field_info_mask = {
9428 .description = "l2_ivlan_vid",
9429 .field_bit_size = 12,
9430 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9431 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9433 .field_info_spec = {
9434 .description = "l2_ivlan_vid",
9435 .field_bit_size = 12,
9436 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9437 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9441 .field_info_mask = {
9442 .description = "l2_ovlan_vid",
9443 .field_bit_size = 12,
9444 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9445 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9447 .field_info_spec = {
9448 .description = "l2_ovlan_vid",
9449 .field_bit_size = 12,
9450 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9451 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9455 .field_info_mask = {
9456 .description = "mac0_addr",
9457 .field_bit_size = 48,
9458 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9459 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9461 .field_info_spec = {
9462 .description = "mac0_addr",
9463 .field_bit_size = 48,
9464 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9465 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9469 .field_info_mask = {
9470 .description = "svif",
9471 .field_bit_size = 8,
9472 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9473 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9477 .field_info_spec = {
9478 .description = "svif",
9479 .field_bit_size = 8,
9480 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9481 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9483 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
9484 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
9488 .field_info_mask = {
9489 .description = "sparif",
9490 .field_bit_size = 4,
9491 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9492 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9494 .field_info_spec = {
9495 .description = "sparif",
9496 .field_bit_size = 4,
9497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9498 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9502 .field_info_mask = {
9503 .description = "tl2_ivlan_vid",
9504 .field_bit_size = 12,
9505 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9506 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9508 .field_info_spec = {
9509 .description = "tl2_ivlan_vid",
9510 .field_bit_size = 12,
9511 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9512 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9516 .field_info_mask = {
9517 .description = "tl2_ovlan_vid",
9518 .field_bit_size = 12,
9519 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9520 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9522 .field_info_spec = {
9523 .description = "tl2_ovlan_vid",
9524 .field_bit_size = 12,
9525 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9526 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9530 .field_info_mask = {
9531 .description = "mac1_addr",
9532 .field_bit_size = 48,
9533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9534 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9536 .field_info_spec = {
9537 .description = "mac1_addr",
9538 .field_bit_size = 48,
9539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9544 .field_info_mask = {
9545 .description = "l2_num_vtags",
9546 .field_bit_size = 2,
9547 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9548 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9550 .field_info_spec = {
9551 .description = "l2_num_vtags",
9552 .field_bit_size = 2,
9553 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9554 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9558 .field_info_mask = {
9559 .description = "tl2_num_vtags",
9560 .field_bit_size = 2,
9561 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9562 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9564 .field_info_spec = {
9565 .description = "tl2_num_vtags",
9566 .field_bit_size = 2,
9567 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9568 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9572 .field_info_mask = {
9573 .description = "tun_hdr_type",
9574 .field_bit_size = 4,
9575 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9576 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9578 .field_info_spec = {
9579 .description = "tun_hdr_type",
9580 .field_bit_size = 4,
9581 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9582 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9586 .field_info_mask = {
9587 .description = "key_type",
9588 .field_bit_size = 2,
9589 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9590 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9592 .field_info_spec = {
9593 .description = "key_type",
9594 .field_bit_size = 2,
9595 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9596 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9600 .field_info_mask = {
9601 .description = "valid",
9602 .field_bit_size = 1,
9603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9604 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9608 .field_info_spec = {
9609 .description = "valid",
9610 .field_bit_size = 1,
9611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9612 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9617 /* class_tid: 4, , table: l2_cntxt_tcam_cache.vfr_rd_egr0 */
9619 .field_info_mask = {
9620 .description = "svif",
9621 .field_bit_size = 8,
9622 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9623 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9627 .field_info_spec = {
9628 .description = "svif",
9629 .field_bit_size = 8,
9630 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9631 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9633 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
9634 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
9637 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_egr0 */
9639 .field_info_mask = {
9640 .description = "l2_ivlan_vid",
9641 .field_bit_size = 12,
9642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9643 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9645 .field_info_spec = {
9646 .description = "l2_ivlan_vid",
9647 .field_bit_size = 12,
9648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9649 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9653 .field_info_mask = {
9654 .description = "l2_ovlan_vid",
9655 .field_bit_size = 12,
9656 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9657 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9659 .field_info_spec = {
9660 .description = "l2_ovlan_vid",
9661 .field_bit_size = 12,
9662 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9663 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9667 .field_info_mask = {
9668 .description = "mac0_addr",
9669 .field_bit_size = 48,
9670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9671 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9673 .field_info_spec = {
9674 .description = "mac0_addr",
9675 .field_bit_size = 48,
9676 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9677 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9681 .field_info_mask = {
9682 .description = "svif",
9683 .field_bit_size = 8,
9684 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9685 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9689 .field_info_spec = {
9690 .description = "svif",
9691 .field_bit_size = 8,
9692 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9693 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9695 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
9696 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
9700 .field_info_mask = {
9701 .description = "sparif",
9702 .field_bit_size = 4,
9703 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9704 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9706 .field_info_spec = {
9707 .description = "sparif",
9708 .field_bit_size = 4,
9709 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9710 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9714 .field_info_mask = {
9715 .description = "tl2_ivlan_vid",
9716 .field_bit_size = 12,
9717 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9718 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9720 .field_info_spec = {
9721 .description = "tl2_ivlan_vid",
9722 .field_bit_size = 12,
9723 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9724 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9728 .field_info_mask = {
9729 .description = "tl2_ovlan_vid",
9730 .field_bit_size = 12,
9731 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9732 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9734 .field_info_spec = {
9735 .description = "tl2_ovlan_vid",
9736 .field_bit_size = 12,
9737 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9738 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9742 .field_info_mask = {
9743 .description = "mac1_addr",
9744 .field_bit_size = 48,
9745 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9746 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9748 .field_info_spec = {
9749 .description = "mac1_addr",
9750 .field_bit_size = 48,
9751 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9752 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9756 .field_info_mask = {
9757 .description = "l2_num_vtags",
9758 .field_bit_size = 2,
9759 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9760 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9762 .field_info_spec = {
9763 .description = "l2_num_vtags",
9764 .field_bit_size = 2,
9765 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9766 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9770 .field_info_mask = {
9771 .description = "tl2_num_vtags",
9772 .field_bit_size = 2,
9773 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9774 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9776 .field_info_spec = {
9777 .description = "tl2_num_vtags",
9778 .field_bit_size = 2,
9779 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9780 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9784 .field_info_mask = {
9785 .description = "tun_hdr_type",
9786 .field_bit_size = 4,
9787 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9788 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9790 .field_info_spec = {
9791 .description = "tun_hdr_type",
9792 .field_bit_size = 4,
9793 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9794 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9798 .field_info_mask = {
9799 .description = "key_type",
9800 .field_bit_size = 2,
9801 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9802 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9804 .field_info_spec = {
9805 .description = "key_type",
9806 .field_bit_size = 2,
9807 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9808 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9812 .field_info_mask = {
9813 .description = "valid",
9814 .field_bit_size = 1,
9815 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9816 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9820 .field_info_spec = {
9821 .description = "valid",
9822 .field_bit_size = 1,
9823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9824 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9829 /* class_tid: 4, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
9831 .field_info_mask = {
9832 .description = "svif",
9833 .field_bit_size = 8,
9834 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9835 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9839 .field_info_spec = {
9840 .description = "svif",
9841 .field_bit_size = 8,
9842 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9843 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9845 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
9846 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
9849 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_dtagged_ing0 */
9851 .field_info_mask = {
9852 .description = "l2_ivlan_vid",
9853 .field_bit_size = 12,
9854 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9855 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9857 .field_info_spec = {
9858 .description = "l2_ivlan_vid",
9859 .field_bit_size = 12,
9860 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9861 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9865 .field_info_mask = {
9866 .description = "l2_ovlan_vid",
9867 .field_bit_size = 12,
9868 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9869 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9874 .field_info_spec = {
9875 .description = "l2_ovlan_vid",
9876 .field_bit_size = 12,
9877 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9878 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9880 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
9881 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
9885 .field_info_mask = {
9886 .description = "mac0_addr",
9887 .field_bit_size = 48,
9888 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9889 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9891 .field_info_spec = {
9892 .description = "mac0_addr",
9893 .field_bit_size = 48,
9894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9895 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9899 .field_info_mask = {
9900 .description = "svif",
9901 .field_bit_size = 8,
9902 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9903 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9907 .field_info_spec = {
9908 .description = "svif",
9909 .field_bit_size = 8,
9910 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9911 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9913 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
9914 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
9918 .field_info_mask = {
9919 .description = "sparif",
9920 .field_bit_size = 4,
9921 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9922 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9924 .field_info_spec = {
9925 .description = "sparif",
9926 .field_bit_size = 4,
9927 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9928 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9932 .field_info_mask = {
9933 .description = "tl2_ivlan_vid",
9934 .field_bit_size = 12,
9935 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9936 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9938 .field_info_spec = {
9939 .description = "tl2_ivlan_vid",
9940 .field_bit_size = 12,
9941 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9942 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9946 .field_info_mask = {
9947 .description = "tl2_ovlan_vid",
9948 .field_bit_size = 12,
9949 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9950 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9952 .field_info_spec = {
9953 .description = "tl2_ovlan_vid",
9954 .field_bit_size = 12,
9955 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9956 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9960 .field_info_mask = {
9961 .description = "mac1_addr",
9962 .field_bit_size = 48,
9963 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9964 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9966 .field_info_spec = {
9967 .description = "mac1_addr",
9968 .field_bit_size = 48,
9969 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9970 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9974 .field_info_mask = {
9975 .description = "l2_num_vtags",
9976 .field_bit_size = 2,
9977 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9978 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
9982 .field_info_spec = {
9983 .description = "l2_num_vtags",
9984 .field_bit_size = 2,
9985 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9986 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
9992 .field_info_mask = {
9993 .description = "tl2_num_vtags",
9994 .field_bit_size = 2,
9995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
9996 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
9998 .field_info_spec = {
9999 .description = "tl2_num_vtags",
10000 .field_bit_size = 2,
10001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10002 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10006 .field_info_mask = {
10007 .description = "tun_hdr_type",
10008 .field_bit_size = 4,
10009 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10010 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10012 .field_info_spec = {
10013 .description = "tun_hdr_type",
10014 .field_bit_size = 4,
10015 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10016 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10020 .field_info_mask = {
10021 .description = "key_type",
10022 .field_bit_size = 2,
10023 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10024 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10026 .field_info_spec = {
10027 .description = "key_type",
10028 .field_bit_size = 2,
10029 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10030 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10034 .field_info_mask = {
10035 .description = "valid",
10036 .field_bit_size = 1,
10037 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10038 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10042 .field_info_spec = {
10043 .description = "valid",
10044 .field_bit_size = 1,
10045 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10046 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10051 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_stagged_ing0 */
10053 .field_info_mask = {
10054 .description = "l2_ivlan_vid",
10055 .field_bit_size = 12,
10056 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10057 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10062 .field_info_spec = {
10063 .description = "l2_ivlan_vid",
10064 .field_bit_size = 12,
10065 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10066 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10068 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
10069 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
10073 .field_info_mask = {
10074 .description = "l2_ovlan_vid",
10075 .field_bit_size = 12,
10076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10079 .field_info_spec = {
10080 .description = "l2_ovlan_vid",
10081 .field_bit_size = 12,
10082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10087 .field_info_mask = {
10088 .description = "mac0_addr",
10089 .field_bit_size = 48,
10090 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10091 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10093 .field_info_spec = {
10094 .description = "mac0_addr",
10095 .field_bit_size = 48,
10096 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10097 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10101 .field_info_mask = {
10102 .description = "svif",
10103 .field_bit_size = 8,
10104 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10105 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10109 .field_info_spec = {
10110 .description = "svif",
10111 .field_bit_size = 8,
10112 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10113 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10115 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
10116 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
10120 .field_info_mask = {
10121 .description = "sparif",
10122 .field_bit_size = 4,
10123 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10124 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10126 .field_info_spec = {
10127 .description = "sparif",
10128 .field_bit_size = 4,
10129 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10130 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10134 .field_info_mask = {
10135 .description = "tl2_ivlan_vid",
10136 .field_bit_size = 12,
10137 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10138 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10140 .field_info_spec = {
10141 .description = "tl2_ivlan_vid",
10142 .field_bit_size = 12,
10143 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10144 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10148 .field_info_mask = {
10149 .description = "tl2_ovlan_vid",
10150 .field_bit_size = 12,
10151 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10152 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10154 .field_info_spec = {
10155 .description = "tl2_ovlan_vid",
10156 .field_bit_size = 12,
10157 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10158 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10162 .field_info_mask = {
10163 .description = "mac1_addr",
10164 .field_bit_size = 48,
10165 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10166 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10168 .field_info_spec = {
10169 .description = "mac1_addr",
10170 .field_bit_size = 48,
10171 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10172 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10176 .field_info_mask = {
10177 .description = "l2_num_vtags",
10178 .field_bit_size = 2,
10179 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10180 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10184 .field_info_spec = {
10185 .description = "l2_num_vtags",
10186 .field_bit_size = 2,
10187 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10188 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10194 .field_info_mask = {
10195 .description = "tl2_num_vtags",
10196 .field_bit_size = 2,
10197 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10198 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10200 .field_info_spec = {
10201 .description = "tl2_num_vtags",
10202 .field_bit_size = 2,
10203 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10204 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10208 .field_info_mask = {
10209 .description = "tun_hdr_type",
10210 .field_bit_size = 4,
10211 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10212 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10214 .field_info_spec = {
10215 .description = "tun_hdr_type",
10216 .field_bit_size = 4,
10217 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10218 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10222 .field_info_mask = {
10223 .description = "key_type",
10224 .field_bit_size = 2,
10225 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10226 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10228 .field_info_spec = {
10229 .description = "key_type",
10230 .field_bit_size = 2,
10231 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10232 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10236 .field_info_mask = {
10237 .description = "valid",
10238 .field_bit_size = 1,
10239 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10240 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10244 .field_info_spec = {
10245 .description = "valid",
10246 .field_bit_size = 1,
10247 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10248 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10255 struct bnxt_ulp_mapper_field_info ulp_wh_plus_class_result_field_list[] = {
10256 /* class_tid: 1, , table: l2_cntxt_tcam.0 */
10258 .description = "l2_cntxt_id",
10259 .field_bit_size = 10,
10260 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10261 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10263 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
10264 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
10267 .description = "prof_func_id",
10268 .field_bit_size = 7,
10269 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10270 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
10272 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
10273 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}
10276 .description = "l2_byp_lkup_en",
10277 .field_bit_size = 1,
10278 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10279 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10282 .description = "parif",
10283 .field_bit_size = 4,
10284 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10285 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10287 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
10288 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
10291 .description = "allowed_pri",
10292 .field_bit_size = 8,
10293 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10294 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10297 .description = "default_pri",
10298 .field_bit_size = 3,
10299 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10300 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10303 .description = "allowed_tpid",
10304 .field_bit_size = 6,
10305 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10306 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10309 .description = "default_tpid",
10310 .field_bit_size = 3,
10311 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10312 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10315 .description = "bd_act_en",
10316 .field_bit_size = 1,
10317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10318 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10321 .description = "sp_rec_ptr",
10322 .field_bit_size = 16,
10323 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10324 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10327 .description = "byp_sp_lkup",
10328 .field_bit_size = 1,
10329 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10330 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10335 .description = "pri_anti_spoof_ctl",
10336 .field_bit_size = 2,
10337 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10338 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10341 .description = "tpid_anti_spoof_ctl",
10342 .field_bit_size = 2,
10343 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10344 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10346 /* class_tid: 1, , table: mac_addr_cache.wr */
10348 .description = "rid",
10349 .field_bit_size = 32,
10350 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10351 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10353 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
10354 BNXT_ULP_RF_IDX_RID & 0xff}
10357 .description = "l2_cntxt_tcam_index",
10358 .field_bit_size = 10,
10359 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10360 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10363 .description = "l2_cntxt_id",
10364 .field_bit_size = 10,
10365 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10366 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10368 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
10369 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
10372 .description = "src_property_ptr",
10373 .field_bit_size = 10,
10374 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10375 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10377 /* class_tid: 1, , table: profile_tcam.ipv4 */
10379 .description = "wc_key_id",
10380 .field_bit_size = 4,
10381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10382 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10385 .description = "wc_profile_id",
10386 .field_bit_size = 8,
10387 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10388 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10391 .description = "wc_search_en",
10392 .field_bit_size = 1,
10393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10394 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10397 .description = "em_key_mask.0",
10398 .field_bit_size = 1,
10399 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10400 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10405 .description = "em_key_mask.1",
10406 .field_bit_size = 1,
10407 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10408 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10410 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
10411 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
10414 .description = "em_key_mask.2",
10415 .field_bit_size = 1,
10416 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10417 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10419 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
10420 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
10423 .description = "em_key_mask.3",
10424 .field_bit_size = 1,
10425 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10426 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10428 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
10429 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
10432 .description = "em_key_mask.4",
10433 .field_bit_size = 1,
10434 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10435 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10437 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
10438 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}
10441 .description = "em_key_mask.5",
10442 .field_bit_size = 1,
10443 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
10444 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10446 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10447 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10448 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10450 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
10451 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
10452 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10454 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
10455 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
10458 .description = "em_key_mask.6",
10459 .field_bit_size = 1,
10460 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
10461 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10463 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10464 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10465 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10467 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
10468 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
10469 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10471 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
10472 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
10475 .description = "em_key_mask.7",
10476 .field_bit_size = 1,
10477 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10478 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10481 .description = "em_key_mask.8",
10482 .field_bit_size = 1,
10483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10484 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10487 .description = "em_key_mask.9",
10488 .field_bit_size = 1,
10489 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10490 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10493 .description = "em_key_id",
10494 .field_bit_size = 5,
10495 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10496 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10501 .description = "em_profile_id",
10502 .field_bit_size = 8,
10503 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10504 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10506 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10507 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10510 .description = "em_search_en",
10511 .field_bit_size = 1,
10512 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10513 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10518 .description = "pl_byp_lkup_en",
10519 .field_bit_size = 1,
10520 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10521 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10523 /* class_tid: 1, , table: profile_tcam.ipv6 */
10525 .description = "wc_key_id",
10526 .field_bit_size = 4,
10527 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10528 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10531 .description = "wc_profile_id",
10532 .field_bit_size = 8,
10533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10534 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10537 .description = "wc_search_en",
10538 .field_bit_size = 1,
10539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10543 .description = "em_key_mask.0",
10544 .field_bit_size = 1,
10545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10546 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10551 .description = "em_key_mask.1",
10552 .field_bit_size = 1,
10553 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10554 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10557 .description = "em_key_mask.2",
10558 .field_bit_size = 1,
10559 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10560 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10562 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
10563 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
10566 .description = "em_key_mask.3",
10567 .field_bit_size = 1,
10568 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10569 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10571 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
10572 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
10575 .description = "em_key_mask.4",
10576 .field_bit_size = 1,
10577 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10578 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10580 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
10581 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
10584 .description = "em_key_mask.5",
10585 .field_bit_size = 1,
10586 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10587 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10589 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
10590 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}
10593 .description = "em_key_mask.6",
10594 .field_bit_size = 1,
10595 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
10596 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10598 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10599 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10600 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10602 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
10603 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
10604 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10606 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
10607 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
10610 .description = "em_key_mask.7",
10611 .field_bit_size = 1,
10612 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
10613 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10615 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
10616 BNXT_ULP_CF_IDX_O_L4 & 0xff},
10617 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10619 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
10620 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
10621 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10623 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
10624 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
10627 .description = "em_key_mask.8",
10628 .field_bit_size = 1,
10629 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10630 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10633 .description = "em_key_mask.9",
10634 .field_bit_size = 1,
10635 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10636 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10639 .description = "em_key_id",
10640 .field_bit_size = 5,
10641 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10642 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10647 .description = "em_profile_id",
10648 .field_bit_size = 8,
10649 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10650 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10652 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10653 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10656 .description = "em_search_en",
10657 .field_bit_size = 1,
10658 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10659 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10664 .description = "pl_byp_lkup_en",
10665 .field_bit_size = 1,
10666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10667 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10669 /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
10671 .description = "wc_key_id",
10672 .field_bit_size = 4,
10673 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10674 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10677 .description = "wc_profile_id",
10678 .field_bit_size = 8,
10679 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10680 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10683 .description = "wc_search_en",
10684 .field_bit_size = 1,
10685 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10686 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10689 .description = "em_key_mask.0",
10690 .field_bit_size = 1,
10691 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10692 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10697 .description = "em_key_mask.1",
10698 .field_bit_size = 1,
10699 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10700 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10703 .description = "em_key_mask.2",
10704 .field_bit_size = 1,
10705 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10706 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10709 .description = "em_key_mask.3",
10710 .field_bit_size = 1,
10711 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10712 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10715 .description = "em_key_mask.4",
10716 .field_bit_size = 1,
10717 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10718 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10723 .description = "em_key_mask.5",
10724 .field_bit_size = 1,
10725 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10726 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10731 .description = "em_key_mask.6",
10732 .field_bit_size = 1,
10733 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10734 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10739 .description = "em_key_mask.7",
10740 .field_bit_size = 1,
10741 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10742 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10745 .description = "em_key_mask.8",
10746 .field_bit_size = 1,
10747 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10748 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10751 .description = "em_key_mask.9",
10752 .field_bit_size = 1,
10753 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10754 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10757 .description = "em_key_id",
10758 .field_bit_size = 5,
10759 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10760 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10765 .description = "em_profile_id",
10766 .field_bit_size = 8,
10767 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10768 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10770 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10771 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10774 .description = "em_search_en",
10775 .field_bit_size = 1,
10776 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10777 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10782 .description = "pl_byp_lkup_en",
10783 .field_bit_size = 1,
10784 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10785 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10787 /* class_tid: 1, , table: profile_tcam_cache.wr */
10789 .description = "rid",
10790 .field_bit_size = 32,
10791 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10792 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10794 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
10795 BNXT_ULP_RF_IDX_RID & 0xff}
10798 .description = "profile_tcam_index",
10799 .field_bit_size = 10,
10800 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10801 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10803 (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
10804 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
10807 .description = "em_profile_id",
10808 .field_bit_size = 8,
10809 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10810 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10812 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
10813 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
10816 .description = "wc_profile_id",
10817 .field_bit_size = 8,
10818 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10819 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10822 .description = "flow_sig_id",
10823 .field_bit_size = 64,
10824 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10825 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10827 (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
10828 BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
10830 /* class_tid: 1, , table: em.ipv4 */
10832 .description = "act_rec_ptr",
10833 .field_bit_size = 33,
10834 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10835 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10837 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
10838 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
10841 .description = "ext_flow_cntr",
10842 .field_bit_size = 1,
10843 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10844 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10847 .description = "act_rec_int",
10848 .field_bit_size = 1,
10849 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10850 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10853 .description = "act_rec_size",
10854 .field_bit_size = 5,
10855 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10856 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10859 .description = "key_size",
10860 .field_bit_size = 9,
10861 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10862 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10865 .description = "reserved",
10866 .field_bit_size = 11,
10867 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10868 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10871 .description = "strength",
10872 .field_bit_size = 2,
10873 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10874 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10879 .description = "l1_cacheable",
10880 .field_bit_size = 1,
10881 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10882 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10885 .description = "valid",
10886 .field_bit_size = 1,
10887 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10888 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10892 /* class_tid: 1, , table: eem.ipv4 */
10894 .description = "act_rec_ptr",
10895 .field_bit_size = 33,
10896 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10897 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10899 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
10900 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
10903 .description = "ext_flow_cntr",
10904 .field_bit_size = 1,
10905 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10906 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10909 .description = "act_rec_int",
10910 .field_bit_size = 1,
10911 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10912 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10915 .description = "act_rec_size",
10916 .field_bit_size = 5,
10917 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10918 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10920 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
10921 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
10924 .description = "key_size",
10925 .field_bit_size = 9,
10926 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10927 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10933 .description = "reserved",
10934 .field_bit_size = 11,
10935 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10936 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10939 .description = "strength",
10940 .field_bit_size = 2,
10941 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10942 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10947 .description = "l1_cacheable",
10948 .field_bit_size = 1,
10949 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10950 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10953 .description = "valid",
10954 .field_bit_size = 1,
10955 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10956 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
10960 /* class_tid: 1, , table: em.ipv6 */
10962 .description = "act_rec_ptr",
10963 .field_bit_size = 33,
10964 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10965 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10967 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
10968 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
10971 .description = "ext_flow_cntr",
10972 .field_bit_size = 1,
10973 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10974 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10977 .description = "act_rec_int",
10978 .field_bit_size = 1,
10979 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10980 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10983 .description = "act_rec_size",
10984 .field_bit_size = 5,
10985 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10986 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10989 .description = "key_size",
10990 .field_bit_size = 9,
10991 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10992 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
10995 .description = "reserved",
10996 .field_bit_size = 11,
10997 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10998 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11001 .description = "strength",
11002 .field_bit_size = 2,
11003 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11004 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11009 .description = "l1_cacheable",
11010 .field_bit_size = 1,
11011 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11012 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11015 .description = "valid",
11016 .field_bit_size = 1,
11017 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11018 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11022 /* class_tid: 1, , table: eem.ipv6 */
11024 .description = "act_rec_ptr",
11025 .field_bit_size = 33,
11026 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11027 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11029 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11030 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11033 .description = "ext_flow_cntr",
11034 .field_bit_size = 1,
11035 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11036 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11039 .description = "act_rec_int",
11040 .field_bit_size = 1,
11041 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11042 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11045 .description = "act_rec_size",
11046 .field_bit_size = 5,
11047 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11048 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11050 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
11051 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
11054 .description = "key_size",
11055 .field_bit_size = 9,
11056 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11057 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11063 .description = "reserved",
11064 .field_bit_size = 11,
11065 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11066 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11069 .description = "strength",
11070 .field_bit_size = 2,
11071 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11072 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11077 .description = "l1_cacheable",
11078 .field_bit_size = 1,
11079 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11080 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11083 .description = "valid",
11084 .field_bit_size = 1,
11085 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11086 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11090 /* class_tid: 1, , table: em.vxlan */
11092 .description = "act_rec_ptr",
11093 .field_bit_size = 33,
11094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11095 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11097 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11098 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11101 .description = "ext_flow_cntr",
11102 .field_bit_size = 1,
11103 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11104 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11107 .description = "act_rec_int",
11108 .field_bit_size = 1,
11109 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11110 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11113 .description = "act_rec_size",
11114 .field_bit_size = 5,
11115 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11116 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11119 .description = "key_size",
11120 .field_bit_size = 9,
11121 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11122 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11125 .description = "reserved",
11126 .field_bit_size = 11,
11127 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11128 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11131 .description = "strength",
11132 .field_bit_size = 2,
11133 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11134 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11139 .description = "l1_cacheable",
11140 .field_bit_size = 1,
11141 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11142 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11145 .description = "valid",
11146 .field_bit_size = 1,
11147 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11148 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11152 /* class_tid: 1, , table: eem.vxlan */
11154 .description = "act_rec_ptr",
11155 .field_bit_size = 33,
11156 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11157 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11159 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11160 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11163 .description = "ext_flow_cntr",
11164 .field_bit_size = 1,
11165 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11166 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11169 .description = "act_rec_int",
11170 .field_bit_size = 1,
11171 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11172 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11175 .description = "act_rec_size",
11176 .field_bit_size = 5,
11177 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11178 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11180 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
11181 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
11184 .description = "key_size",
11185 .field_bit_size = 9,
11186 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11187 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11193 .description = "reserved",
11194 .field_bit_size = 11,
11195 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11196 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11199 .description = "strength",
11200 .field_bit_size = 2,
11201 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11202 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11207 .description = "l1_cacheable",
11208 .field_bit_size = 1,
11209 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11210 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11213 .description = "valid",
11214 .field_bit_size = 1,
11215 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11216 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11220 /* class_tid: 2, , table: l2_cntxt_tcam.0 */
11222 .description = "l2_cntxt_id",
11223 .field_bit_size = 10,
11224 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11225 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11227 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
11228 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
11231 .description = "prof_func_id",
11232 .field_bit_size = 7,
11233 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11234 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
11236 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
11237 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff}
11240 .description = "l2_byp_lkup_en",
11241 .field_bit_size = 1,
11242 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11243 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11246 .description = "parif",
11247 .field_bit_size = 4,
11248 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11249 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11251 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
11252 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff},
11253 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
11255 ULP_WP_SYM_LOOPBACK_PARIF},
11256 .field_src3 = BNXT_ULP_FIELD_SRC_CF,
11258 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
11259 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
11262 .description = "allowed_pri",
11263 .field_bit_size = 8,
11264 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11265 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11268 .description = "default_pri",
11269 .field_bit_size = 3,
11270 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11271 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11274 .description = "allowed_tpid",
11275 .field_bit_size = 6,
11276 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11277 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11280 .description = "default_tpid",
11281 .field_bit_size = 3,
11282 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11283 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11286 .description = "bd_act_en",
11287 .field_bit_size = 1,
11288 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11289 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11292 .description = "sp_rec_ptr",
11293 .field_bit_size = 16,
11294 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11295 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11297 (BNXT_ULP_RF_IDX_MAIN_SP_PTR >> 8) & 0xff,
11298 BNXT_ULP_RF_IDX_MAIN_SP_PTR & 0xff}
11301 .description = "byp_sp_lkup",
11302 .field_bit_size = 1,
11303 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11304 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11309 .description = "pri_anti_spoof_ctl",
11310 .field_bit_size = 2,
11311 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11312 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11315 .description = "tpid_anti_spoof_ctl",
11316 .field_bit_size = 2,
11317 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11318 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11320 /* class_tid: 2, , table: mac_addr_cache.wr */
11322 .description = "rid",
11323 .field_bit_size = 32,
11324 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11325 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11327 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
11328 BNXT_ULP_RF_IDX_RID & 0xff}
11331 .description = "l2_cntxt_tcam_index",
11332 .field_bit_size = 10,
11333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11334 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11336 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
11337 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
11340 .description = "l2_cntxt_id",
11341 .field_bit_size = 10,
11342 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11343 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11345 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
11346 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
11349 .description = "src_property_ptr",
11350 .field_bit_size = 10,
11351 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11352 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11354 /* class_tid: 2, , table: profile_tcam.ipv4 */
11356 .description = "wc_key_id",
11357 .field_bit_size = 4,
11358 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11359 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11362 .description = "wc_profile_id",
11363 .field_bit_size = 8,
11364 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11365 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11368 .description = "wc_search_en",
11369 .field_bit_size = 1,
11370 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11371 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11374 .description = "em_key_mask.0",
11375 .field_bit_size = 1,
11376 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11377 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11382 .description = "em_key_mask.1",
11383 .field_bit_size = 1,
11384 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11385 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11387 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
11388 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
11391 .description = "em_key_mask.2",
11392 .field_bit_size = 1,
11393 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11394 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11396 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
11397 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
11400 .description = "em_key_mask.3",
11401 .field_bit_size = 1,
11402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11403 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11405 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
11406 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
11409 .description = "em_key_mask.4",
11410 .field_bit_size = 1,
11411 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11412 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11414 (BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID >> 8) & 0xff,
11415 BNXT_ULP_GLB_HF_ID_O_IPV4_PROTO_ID & 0xff}
11418 .description = "em_key_mask.5",
11419 .field_bit_size = 1,
11420 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
11421 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11423 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
11424 BNXT_ULP_CF_IDX_O_L4 & 0xff},
11425 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11427 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
11428 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
11429 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11431 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
11432 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
11435 .description = "em_key_mask.6",
11436 .field_bit_size = 1,
11437 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
11438 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11440 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
11441 BNXT_ULP_CF_IDX_O_L4 & 0xff},
11442 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11444 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
11445 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
11446 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11448 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
11449 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
11452 .description = "em_key_mask.7",
11453 .field_bit_size = 1,
11454 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11455 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11458 .description = "em_key_mask.8",
11459 .field_bit_size = 1,
11460 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11461 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11464 .description = "em_key_mask.9",
11465 .field_bit_size = 1,
11466 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11467 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11470 .description = "em_key_id",
11471 .field_bit_size = 5,
11472 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11473 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11478 .description = "em_profile_id",
11479 .field_bit_size = 8,
11480 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11481 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11483 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
11484 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
11487 .description = "em_search_en",
11488 .field_bit_size = 1,
11489 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11490 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11495 .description = "pl_byp_lkup_en",
11496 .field_bit_size = 1,
11497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11498 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11500 /* class_tid: 2, , table: profile_tcam.ipv6 */
11502 .description = "wc_key_id",
11503 .field_bit_size = 4,
11504 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11505 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11508 .description = "wc_profile_id",
11509 .field_bit_size = 8,
11510 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11511 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11514 .description = "wc_search_en",
11515 .field_bit_size = 1,
11516 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11517 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11520 .description = "em_key_mask.0",
11521 .field_bit_size = 1,
11522 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11523 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11528 .description = "em_key_mask.1",
11529 .field_bit_size = 1,
11530 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11531 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11533 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
11534 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
11537 .description = "em_key_mask.2",
11538 .field_bit_size = 1,
11539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11543 .description = "em_key_mask.3",
11544 .field_bit_size = 1,
11545 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11546 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11548 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
11549 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
11552 .description = "em_key_mask.4",
11553 .field_bit_size = 1,
11554 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11555 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11557 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
11558 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
11561 .description = "em_key_mask.5",
11562 .field_bit_size = 1,
11563 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11564 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11566 (BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID >> 8) & 0xff,
11567 BNXT_ULP_GLB_HF_ID_O_IPV6_PROTO_ID & 0xff}
11570 .description = "em_key_mask.6",
11571 .field_bit_size = 1,
11572 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
11573 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11575 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
11576 BNXT_ULP_CF_IDX_O_L4 & 0xff},
11577 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11579 (BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT >> 8) & 0xff,
11580 BNXT_ULP_GLB_HF_ID_O_UDP_SRC_PORT & 0xff},
11581 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11583 (BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT >> 8) & 0xff,
11584 BNXT_ULP_GLB_HF_ID_O_TCP_SRC_PORT & 0xff}
11587 .description = "em_key_mask.7",
11588 .field_bit_size = 1,
11589 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_AND_SRC2_OR_SRC3,
11590 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11592 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
11593 BNXT_ULP_CF_IDX_O_L4 & 0xff},
11594 .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11596 (BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT >> 8) & 0xff,
11597 BNXT_ULP_GLB_HF_ID_O_UDP_DST_PORT & 0xff},
11598 .field_src3 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11600 (BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT >> 8) & 0xff,
11601 BNXT_ULP_GLB_HF_ID_O_TCP_DST_PORT & 0xff}
11604 .description = "em_key_mask.8",
11605 .field_bit_size = 1,
11606 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11607 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11610 .description = "em_key_mask.9",
11611 .field_bit_size = 1,
11612 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11613 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11616 .description = "em_key_id",
11617 .field_bit_size = 5,
11618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11619 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11624 .description = "em_profile_id",
11625 .field_bit_size = 8,
11626 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11627 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11629 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
11630 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
11633 .description = "em_search_en",
11634 .field_bit_size = 1,
11635 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11636 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11641 .description = "pl_byp_lkup_en",
11642 .field_bit_size = 1,
11643 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11644 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11646 /* class_tid: 2, , table: profile_tcam_cache.wr */
11648 .description = "rid",
11649 .field_bit_size = 32,
11650 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11651 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11653 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
11654 BNXT_ULP_RF_IDX_RID & 0xff}
11657 .description = "profile_tcam_index",
11658 .field_bit_size = 10,
11659 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11660 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11662 (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
11663 BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
11666 .description = "em_profile_id",
11667 .field_bit_size = 8,
11668 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11669 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11671 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
11672 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
11675 .description = "wc_profile_id",
11676 .field_bit_size = 8,
11677 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11678 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11681 .description = "flow_sig_id",
11682 .field_bit_size = 64,
11683 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11684 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11686 (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
11687 BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
11689 /* class_tid: 2, , table: em.ipv4 */
11691 .description = "act_rec_ptr",
11692 .field_bit_size = 33,
11693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11694 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11696 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11697 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11700 .description = "ext_flow_cntr",
11701 .field_bit_size = 1,
11702 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11703 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11706 .description = "act_rec_int",
11707 .field_bit_size = 1,
11708 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11709 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11712 .description = "act_rec_size",
11713 .field_bit_size = 5,
11714 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11715 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11718 .description = "key_size",
11719 .field_bit_size = 9,
11720 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11721 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11724 .description = "reserved",
11725 .field_bit_size = 11,
11726 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11727 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11730 .description = "strength",
11731 .field_bit_size = 2,
11732 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11733 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11738 .description = "l1_cacheable",
11739 .field_bit_size = 1,
11740 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11741 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11744 .description = "valid",
11745 .field_bit_size = 1,
11746 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11747 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11751 /* class_tid: 2, , table: eem.ipv4 */
11753 .description = "act_rec_ptr",
11754 .field_bit_size = 33,
11755 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11756 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11758 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11759 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11762 .description = "ext_flow_cntr",
11763 .field_bit_size = 1,
11764 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11765 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11768 .description = "act_rec_int",
11769 .field_bit_size = 1,
11770 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11771 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11774 .description = "act_rec_size",
11775 .field_bit_size = 5,
11776 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11777 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11779 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
11780 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
11783 .description = "key_size",
11784 .field_bit_size = 9,
11785 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11786 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11792 .description = "reserved",
11793 .field_bit_size = 11,
11794 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11795 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11798 .description = "strength",
11799 .field_bit_size = 2,
11800 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11801 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11806 .description = "l1_cacheable",
11807 .field_bit_size = 1,
11808 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11809 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11812 .description = "valid",
11813 .field_bit_size = 1,
11814 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11815 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11819 /* class_tid: 2, , table: em.ipv6 */
11821 .description = "act_rec_ptr",
11822 .field_bit_size = 33,
11823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11824 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11826 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11827 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11830 .description = "ext_flow_cntr",
11831 .field_bit_size = 1,
11832 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11833 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11836 .description = "act_rec_int",
11837 .field_bit_size = 1,
11838 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11839 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11842 .description = "act_rec_size",
11843 .field_bit_size = 5,
11844 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11845 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11848 .description = "key_size",
11849 .field_bit_size = 9,
11850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11851 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11854 .description = "reserved",
11855 .field_bit_size = 11,
11856 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11857 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11860 .description = "strength",
11861 .field_bit_size = 2,
11862 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11863 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11868 .description = "l1_cacheable",
11869 .field_bit_size = 1,
11870 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11871 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11874 .description = "valid",
11875 .field_bit_size = 1,
11876 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11877 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11881 /* class_tid: 2, , table: eem.ipv6 */
11883 .description = "act_rec_ptr",
11884 .field_bit_size = 33,
11885 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11886 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11888 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
11889 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
11892 .description = "ext_flow_cntr",
11893 .field_bit_size = 1,
11894 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11895 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11898 .description = "act_rec_int",
11899 .field_bit_size = 1,
11900 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11901 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11904 .description = "act_rec_size",
11905 .field_bit_size = 5,
11906 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11907 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11909 (BNXT_ULP_RF_IDX_ACTION_REC_SIZE >> 8) & 0xff,
11910 BNXT_ULP_RF_IDX_ACTION_REC_SIZE & 0xff}
11913 .description = "key_size",
11914 .field_bit_size = 9,
11915 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11916 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11922 .description = "reserved",
11923 .field_bit_size = 11,
11924 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11925 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11928 .description = "strength",
11929 .field_bit_size = 2,
11930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11931 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11936 .description = "l1_cacheable",
11937 .field_bit_size = 1,
11938 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11939 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11942 .description = "valid",
11943 .field_bit_size = 1,
11944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11945 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
11949 /* class_tid: 3, , table: int_full_act_record.ing_0 */
11951 .description = "flow_cntr_ptr",
11952 .field_bit_size = 14,
11953 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11954 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11957 .description = "age_enable",
11958 .field_bit_size = 1,
11959 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11960 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11963 .description = "agg_cntr_en",
11964 .field_bit_size = 1,
11965 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11966 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11969 .description = "rate_cntr_en",
11970 .field_bit_size = 1,
11971 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11972 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11975 .description = "flow_cntr_en",
11976 .field_bit_size = 1,
11977 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11978 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11981 .description = "tcpflags_key",
11982 .field_bit_size = 8,
11983 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11984 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11987 .description = "tcpflags_mir",
11988 .field_bit_size = 1,
11989 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11990 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11993 .description = "tcpflags_match",
11994 .field_bit_size = 1,
11995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11996 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11999 .description = "encap_ptr",
12000 .field_bit_size = 11,
12001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12002 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12005 .description = "dst_ip_ptr",
12006 .field_bit_size = 10,
12007 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12008 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12011 .description = "tcp_dst_port",
12012 .field_bit_size = 16,
12013 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12014 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12017 .description = "src_ip_ptr",
12018 .field_bit_size = 10,
12019 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12020 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12023 .description = "tcp_src_port",
12024 .field_bit_size = 16,
12025 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12026 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12029 .description = "meter_id",
12030 .field_bit_size = 10,
12031 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12032 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12035 .description = "l3_rdir",
12036 .field_bit_size = 1,
12037 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12038 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12041 .description = "tl3_rdir",
12042 .field_bit_size = 1,
12043 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12044 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12047 .description = "l3_ttl_dec",
12048 .field_bit_size = 1,
12049 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12050 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12053 .description = "tl3_ttl_dec",
12054 .field_bit_size = 1,
12055 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12056 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12059 .description = "decap_func",
12060 .field_bit_size = 4,
12061 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12062 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12065 .description = "vnic_or_vport",
12066 .field_bit_size = 12,
12067 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12068 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12070 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
12071 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff}
12074 .description = "pop_vlan",
12075 .field_bit_size = 1,
12076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12080 .description = "meter",
12081 .field_bit_size = 1,
12082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12086 .description = "mirror",
12087 .field_bit_size = 2,
12088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12089 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12092 .description = "drop",
12093 .field_bit_size = 1,
12094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12095 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12098 .description = "hit",
12099 .field_bit_size = 1,
12100 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12101 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12104 .description = "type",
12105 .field_bit_size = 1,
12106 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12107 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12109 /* class_tid: 3, , table: l2_cntxt_tcam.ing_0 */
12111 .description = "l2_cntxt_id",
12112 .field_bit_size = 10,
12113 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12114 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12116 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
12117 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
12120 .description = "prof_func_id",
12121 .field_bit_size = 7,
12122 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12123 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
12125 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12126 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
12129 .description = "l2_byp_lkup_en",
12130 .field_bit_size = 1,
12131 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12132 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12135 .description = "parif",
12136 .field_bit_size = 4,
12137 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12138 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12140 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
12141 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
12144 .description = "allowed_pri",
12145 .field_bit_size = 8,
12146 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12147 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12150 .description = "default_pri",
12151 .field_bit_size = 3,
12152 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12153 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12156 .description = "allowed_tpid",
12157 .field_bit_size = 6,
12158 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12159 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12162 .description = "default_tpid",
12163 .field_bit_size = 3,
12164 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12165 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12168 .description = "bd_act_en",
12169 .field_bit_size = 1,
12170 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12171 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12174 .description = "sp_rec_ptr",
12175 .field_bit_size = 16,
12176 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12177 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12180 .description = "byp_sp_lkup",
12181 .field_bit_size = 1,
12182 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12183 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12188 .description = "pri_anti_spoof_ctl",
12189 .field_bit_size = 2,
12190 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12191 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12194 .description = "tpid_anti_spoof_ctl",
12195 .field_bit_size = 2,
12196 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12197 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12199 /* class_tid: 3, , table: l2_cntxt_tcam_cache.ing_wr */
12201 .description = "rid",
12202 .field_bit_size = 32,
12203 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12204 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12206 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
12207 BNXT_ULP_RF_IDX_RID & 0xff}
12210 .description = "l2_cntxt_tcam_index",
12211 .field_bit_size = 10,
12212 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12213 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12215 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
12216 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
12219 .description = "l2_cntxt_id",
12220 .field_bit_size = 10,
12221 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12222 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12224 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
12225 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
12228 .description = "src_property_ptr",
12229 .field_bit_size = 10,
12230 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12231 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12233 /* class_tid: 3, , table: parif_def_lkup_arec_ptr.ing_0 */
12235 .description = "act_rec_ptr",
12236 .field_bit_size = 32,
12237 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12238 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12240 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12241 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12243 /* class_tid: 3, , table: parif_def_arec_ptr.ing_0 */
12245 .description = "act_rec_ptr",
12246 .field_bit_size = 32,
12247 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12248 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12250 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12251 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12253 /* class_tid: 3, , table: parif_def_err_arec_ptr.ing_0 */
12255 .description = "act_rec_ptr",
12256 .field_bit_size = 32,
12257 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12258 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12260 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12261 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12263 /* class_tid: 3, , table: int_full_act_record.egr_vfr */
12265 .description = "flow_cntr_ptr",
12266 .field_bit_size = 14,
12267 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12268 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12271 .description = "age_enable",
12272 .field_bit_size = 1,
12273 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12274 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12277 .description = "agg_cntr_en",
12278 .field_bit_size = 1,
12279 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12280 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12283 .description = "rate_cntr_en",
12284 .field_bit_size = 1,
12285 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12286 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12289 .description = "flow_cntr_en",
12290 .field_bit_size = 1,
12291 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12292 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12295 .description = "tcpflags_key",
12296 .field_bit_size = 8,
12297 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12298 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12301 .description = "tcpflags_mir",
12302 .field_bit_size = 1,
12303 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12304 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12307 .description = "tcpflags_match",
12308 .field_bit_size = 1,
12309 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12310 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12313 .description = "encap_ptr",
12314 .field_bit_size = 11,
12315 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12316 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12319 .description = "dst_ip_ptr",
12320 .field_bit_size = 10,
12321 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12322 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12325 .description = "tcp_dst_port",
12326 .field_bit_size = 16,
12327 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12328 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12331 .description = "src_ip_ptr",
12332 .field_bit_size = 10,
12333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12334 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12337 .description = "tcp_src_port",
12338 .field_bit_size = 16,
12339 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12340 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12343 .description = "meter_id",
12344 .field_bit_size = 10,
12345 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12346 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12349 .description = "l3_rdir",
12350 .field_bit_size = 1,
12351 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12352 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12355 .description = "tl3_rdir",
12356 .field_bit_size = 1,
12357 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12358 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12361 .description = "l3_ttl_dec",
12362 .field_bit_size = 1,
12363 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12364 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12367 .description = "tl3_ttl_dec",
12368 .field_bit_size = 1,
12369 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12370 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12373 .description = "decap_func",
12374 .field_bit_size = 4,
12375 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12376 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12379 .description = "vnic_or_vport",
12380 .field_bit_size = 12,
12381 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12382 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12384 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
12385 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff}
12388 .description = "pop_vlan",
12389 .field_bit_size = 1,
12390 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12391 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12394 .description = "meter",
12395 .field_bit_size = 1,
12396 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12397 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12400 .description = "mirror",
12401 .field_bit_size = 2,
12402 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12403 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12406 .description = "drop",
12407 .field_bit_size = 1,
12408 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12409 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12412 .description = "hit",
12413 .field_bit_size = 1,
12414 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12415 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12418 .description = "type",
12419 .field_bit_size = 1,
12420 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12421 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12423 /* class_tid: 3, , table: l2_cntxt_tcam_bypass.egr_vfr */
12425 .description = "act_record_ptr",
12426 .field_bit_size = 16,
12427 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12428 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12431 .description = "reserved",
12432 .field_bit_size = 1,
12433 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12434 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12437 .description = "l2_byp_lkup_en",
12438 .field_bit_size = 1,
12439 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12440 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12445 .description = "parif",
12446 .field_bit_size = 4,
12447 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12448 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12450 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
12451 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
12454 .description = "allowed_pri",
12455 .field_bit_size = 8,
12456 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12457 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12460 .description = "default_pri",
12461 .field_bit_size = 3,
12462 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12463 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12466 .description = "allowed_tpid",
12467 .field_bit_size = 6,
12468 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12469 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12472 .description = "default_tpid",
12473 .field_bit_size = 3,
12474 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12475 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12478 .description = "bd_act_en",
12479 .field_bit_size = 1,
12480 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12481 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12486 .description = "sp_rec_ptr",
12487 .field_bit_size = 16,
12488 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12489 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12492 .description = "byp_sp_lkup",
12493 .field_bit_size = 1,
12494 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12495 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12500 .description = "pri_anti_spoof_ctl",
12501 .field_bit_size = 2,
12502 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12503 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12506 .description = "tpid_anti_spoof_ctl",
12507 .field_bit_size = 2,
12508 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12509 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12511 /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
12513 .description = "rid",
12514 .field_bit_size = 32,
12515 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12516 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12518 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
12519 BNXT_ULP_RF_IDX_RID & 0xff}
12522 .description = "l2_cntxt_tcam_index",
12523 .field_bit_size = 10,
12524 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12525 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12527 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
12528 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
12531 .description = "l2_cntxt_id",
12532 .field_bit_size = 10,
12533 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12534 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12537 .description = "src_property_ptr",
12538 .field_bit_size = 10,
12539 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12540 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12542 /* class_tid: 3, , table: l2_cntxt_tcam.egr_0 */
12544 .description = "l2_cntxt_id",
12545 .field_bit_size = 10,
12546 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12547 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12549 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
12550 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
12553 .description = "prof_func_id",
12554 .field_bit_size = 7,
12555 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12556 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
12558 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12559 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
12562 .description = "l2_byp_lkup_en",
12563 .field_bit_size = 1,
12564 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12565 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12568 .description = "parif",
12569 .field_bit_size = 4,
12570 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12571 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12573 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
12574 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
12577 .description = "allowed_pri",
12578 .field_bit_size = 8,
12579 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12580 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12583 .description = "default_pri",
12584 .field_bit_size = 3,
12585 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12586 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12589 .description = "allowed_tpid",
12590 .field_bit_size = 6,
12591 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12592 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12595 .description = "default_tpid",
12596 .field_bit_size = 3,
12597 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12598 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12601 .description = "bd_act_en",
12602 .field_bit_size = 1,
12603 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12604 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12607 .description = "sp_rec_ptr",
12608 .field_bit_size = 16,
12609 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12610 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12613 .description = "byp_sp_lkup",
12614 .field_bit_size = 1,
12615 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12616 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12621 .description = "pri_anti_spoof_ctl",
12622 .field_bit_size = 2,
12623 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12624 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12627 .description = "tpid_anti_spoof_ctl",
12628 .field_bit_size = 2,
12629 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12630 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12632 /* class_tid: 3, , table: l2_cntxt_tcam_cache.egr_wr */
12634 .description = "rid",
12635 .field_bit_size = 32,
12636 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12637 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12639 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
12640 BNXT_ULP_RF_IDX_RID & 0xff}
12643 .description = "l2_cntxt_tcam_index",
12644 .field_bit_size = 10,
12645 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12646 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12648 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
12649 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
12652 .description = "l2_cntxt_id",
12653 .field_bit_size = 10,
12654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12655 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12657 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
12658 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
12661 .description = "src_property_ptr",
12662 .field_bit_size = 10,
12663 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12664 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12666 /* class_tid: 3, , table: int_full_act_record.egr_0 */
12668 .description = "flow_cntr_ptr",
12669 .field_bit_size = 14,
12670 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12671 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12674 .description = "age_enable",
12675 .field_bit_size = 1,
12676 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12677 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12680 .description = "agg_cntr_en",
12681 .field_bit_size = 1,
12682 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12683 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12686 .description = "rate_cntr_en",
12687 .field_bit_size = 1,
12688 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12689 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12692 .description = "flow_cntr_en",
12693 .field_bit_size = 1,
12694 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12695 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12698 .description = "tcpflags_key",
12699 .field_bit_size = 8,
12700 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12701 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12704 .description = "tcpflags_mir",
12705 .field_bit_size = 1,
12706 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12707 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12710 .description = "tcpflags_match",
12711 .field_bit_size = 1,
12712 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12713 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12716 .description = "encap_ptr",
12717 .field_bit_size = 11,
12718 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12719 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12722 .description = "dst_ip_ptr",
12723 .field_bit_size = 10,
12724 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12725 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12728 .description = "tcp_dst_port",
12729 .field_bit_size = 16,
12730 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12731 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12734 .description = "src_ip_ptr",
12735 .field_bit_size = 10,
12736 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12737 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12740 .description = "tcp_src_port",
12741 .field_bit_size = 16,
12742 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12743 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12746 .description = "meter_id",
12747 .field_bit_size = 10,
12748 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12749 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12752 .description = "l3_rdir",
12753 .field_bit_size = 1,
12754 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12755 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12758 .description = "tl3_rdir",
12759 .field_bit_size = 1,
12760 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12761 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12764 .description = "l3_ttl_dec",
12765 .field_bit_size = 1,
12766 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12767 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12770 .description = "tl3_ttl_dec",
12771 .field_bit_size = 1,
12772 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12773 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12776 .description = "decap_func",
12777 .field_bit_size = 4,
12778 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12779 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12782 .description = "vnic_or_vport",
12783 .field_bit_size = 12,
12784 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12785 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12787 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
12788 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff}
12791 .description = "pop_vlan",
12792 .field_bit_size = 1,
12793 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12794 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12797 .description = "meter",
12798 .field_bit_size = 1,
12799 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12800 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12803 .description = "mirror",
12804 .field_bit_size = 2,
12805 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12806 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12809 .description = "drop",
12810 .field_bit_size = 1,
12811 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12812 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12815 .description = "hit",
12816 .field_bit_size = 1,
12817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12818 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12821 .description = "type",
12822 .field_bit_size = 1,
12823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12824 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12826 /* class_tid: 3, , table: parif_def_lkup_arec_ptr.egr_0 */
12828 .description = "act_rec_ptr",
12829 .field_bit_size = 32,
12830 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12831 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12833 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12834 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12836 /* class_tid: 3, , table: parif_def_arec_ptr.egr_0 */
12838 .description = "act_rec_ptr",
12839 .field_bit_size = 32,
12840 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12841 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12843 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12844 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12846 /* class_tid: 3, , table: parif_def_err_arec_ptr.egr_0 */
12848 .description = "act_rec_ptr",
12849 .field_bit_size = 32,
12850 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12851 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
12853 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
12854 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
12856 /* class_tid: 4, , table: int_full_act_record.loopback */
12858 .description = "flow_cntr_ptr",
12859 .field_bit_size = 14,
12860 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12861 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12864 .description = "age_enable",
12865 .field_bit_size = 1,
12866 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12867 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12870 .description = "agg_cntr_en",
12871 .field_bit_size = 1,
12872 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12873 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12876 .description = "rate_cntr_en",
12877 .field_bit_size = 1,
12878 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12879 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12882 .description = "flow_cntr_en",
12883 .field_bit_size = 1,
12884 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12885 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12888 .description = "tcpflags_key",
12889 .field_bit_size = 8,
12890 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12891 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12894 .description = "tcpflags_mir",
12895 .field_bit_size = 1,
12896 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12897 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12900 .description = "tcpflags_match",
12901 .field_bit_size = 1,
12902 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12903 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12906 .description = "encap_ptr",
12907 .field_bit_size = 11,
12908 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12909 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12912 .description = "dst_ip_ptr",
12913 .field_bit_size = 10,
12914 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12915 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12918 .description = "tcp_dst_port",
12919 .field_bit_size = 16,
12920 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12921 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12924 .description = "src_ip_ptr",
12925 .field_bit_size = 10,
12926 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12927 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12930 .description = "tcp_src_port",
12931 .field_bit_size = 16,
12932 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12933 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12936 .description = "meter_id",
12937 .field_bit_size = 10,
12938 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12939 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12942 .description = "l3_rdir",
12943 .field_bit_size = 1,
12944 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12945 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12948 .description = "tl3_rdir",
12949 .field_bit_size = 1,
12950 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12951 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12954 .description = "l3_ttl_dec",
12955 .field_bit_size = 1,
12956 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12957 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12960 .description = "tl3_ttl_dec",
12961 .field_bit_size = 1,
12962 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12963 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12966 .description = "decap_func",
12967 .field_bit_size = 4,
12968 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12969 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12972 .description = "vnic_or_vport",
12973 .field_bit_size = 12,
12974 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12975 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
12977 (ULP_WP_SYM_LOOPBACK_PORT >> 8) & 0xff,
12978 ULP_WP_SYM_LOOPBACK_PORT & 0xff}
12981 .description = "pop_vlan",
12982 .field_bit_size = 1,
12983 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12984 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12987 .description = "meter",
12988 .field_bit_size = 1,
12989 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12990 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12993 .description = "mirror",
12994 .field_bit_size = 2,
12995 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12996 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12999 .description = "drop",
13000 .field_bit_size = 1,
13001 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13002 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13005 .description = "hit",
13006 .field_bit_size = 1,
13007 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13008 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13011 .description = "type",
13012 .field_bit_size = 1,
13013 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13014 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13016 /* class_tid: 4, , table: l2_cntxt_tcam.vf_egr */
13018 .description = "l2_cntxt_id",
13019 .field_bit_size = 10,
13020 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13021 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13023 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13024 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13027 .description = "prof_func_id",
13028 .field_bit_size = 7,
13029 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13030 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13032 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13033 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
13036 .description = "l2_byp_lkup_en",
13037 .field_bit_size = 1,
13038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13039 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13042 .description = "parif",
13043 .field_bit_size = 4,
13044 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13045 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13047 ULP_WP_SYM_LOOPBACK_PARIF}
13050 .description = "allowed_pri",
13051 .field_bit_size = 8,
13052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13053 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13056 .description = "default_pri",
13057 .field_bit_size = 3,
13058 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13059 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13062 .description = "allowed_tpid",
13063 .field_bit_size = 6,
13064 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13065 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13068 .description = "default_tpid",
13069 .field_bit_size = 3,
13070 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13071 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13074 .description = "bd_act_en",
13075 .field_bit_size = 1,
13076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13080 .description = "sp_rec_ptr",
13081 .field_bit_size = 16,
13082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13086 .description = "byp_sp_lkup",
13087 .field_bit_size = 1,
13088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13089 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13094 .description = "pri_anti_spoof_ctl",
13095 .field_bit_size = 2,
13096 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13097 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13100 .description = "tpid_anti_spoof_ctl",
13101 .field_bit_size = 2,
13102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13103 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13105 /* class_tid: 4, , table: l2_cntxt_tcam_cache.vf_egr_wr */
13107 .description = "rid",
13108 .field_bit_size = 32,
13109 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13110 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13112 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
13113 BNXT_ULP_RF_IDX_RID & 0xff}
13116 .description = "l2_cntxt_tcam_index",
13117 .field_bit_size = 10,
13118 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13119 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13121 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
13122 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
13125 .description = "l2_cntxt_id",
13126 .field_bit_size = 10,
13127 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13128 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13130 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13131 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13134 .description = "src_property_ptr",
13135 .field_bit_size = 10,
13136 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13137 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13139 /* class_tid: 4, , table: parif_def_lkup_arec_ptr.vf_egr */
13141 .description = "act_rec_ptr",
13142 .field_bit_size = 32,
13143 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13144 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13146 (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
13147 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
13149 /* class_tid: 4, , table: parif_def_arec_ptr.vf_egr */
13151 .description = "act_rec_ptr",
13152 .field_bit_size = 32,
13153 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13154 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13156 (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
13157 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
13159 /* class_tid: 4, , table: parif_def_err_arec_ptr.vf_egr */
13161 .description = "act_rec_ptr",
13162 .field_bit_size = 32,
13163 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13164 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13166 (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
13167 BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
13169 /* class_tid: 4, , table: int_full_act_record.vf_ing */
13171 .description = "flow_cntr_ptr",
13172 .field_bit_size = 14,
13173 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13174 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13177 .description = "age_enable",
13178 .field_bit_size = 1,
13179 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13180 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13183 .description = "agg_cntr_en",
13184 .field_bit_size = 1,
13185 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13186 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13189 .description = "rate_cntr_en",
13190 .field_bit_size = 1,
13191 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13192 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13195 .description = "flow_cntr_en",
13196 .field_bit_size = 1,
13197 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13198 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13201 .description = "tcpflags_key",
13202 .field_bit_size = 8,
13203 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13204 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13207 .description = "tcpflags_mir",
13208 .field_bit_size = 1,
13209 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13210 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13213 .description = "tcpflags_match",
13214 .field_bit_size = 1,
13215 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13216 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13219 .description = "encap_ptr",
13220 .field_bit_size = 11,
13221 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13222 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13225 .description = "dst_ip_ptr",
13226 .field_bit_size = 10,
13227 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13228 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13231 .description = "tcp_dst_port",
13232 .field_bit_size = 16,
13233 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13234 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13237 .description = "src_ip_ptr",
13238 .field_bit_size = 10,
13239 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13240 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13243 .description = "tcp_src_port",
13244 .field_bit_size = 16,
13245 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13246 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13249 .description = "meter_id",
13250 .field_bit_size = 10,
13251 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13252 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13255 .description = "l3_rdir",
13256 .field_bit_size = 1,
13257 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13258 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13261 .description = "tl3_rdir",
13262 .field_bit_size = 1,
13263 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13264 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13267 .description = "l3_ttl_dec",
13268 .field_bit_size = 1,
13269 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13270 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13273 .description = "tl3_ttl_dec",
13274 .field_bit_size = 1,
13275 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13276 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13279 .description = "decap_func",
13280 .field_bit_size = 4,
13281 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13282 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13285 .description = "vnic_or_vport",
13286 .field_bit_size = 12,
13287 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13288 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13290 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
13291 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff}
13294 .description = "pop_vlan",
13295 .field_bit_size = 1,
13296 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13297 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13300 .description = "meter",
13301 .field_bit_size = 1,
13302 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13303 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13306 .description = "mirror",
13307 .field_bit_size = 2,
13308 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13309 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13312 .description = "drop",
13313 .field_bit_size = 1,
13314 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13315 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13318 .description = "hit",
13319 .field_bit_size = 1,
13320 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13321 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13324 .description = "type",
13325 .field_bit_size = 1,
13326 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13327 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13329 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vf_ing */
13331 .description = "act_record_ptr",
13332 .field_bit_size = 16,
13333 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13334 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13336 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
13337 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
13340 .description = "reserved",
13341 .field_bit_size = 1,
13342 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13343 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13346 .description = "l2_byp_lkup_en",
13347 .field_bit_size = 1,
13348 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13349 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13354 .description = "parif",
13355 .field_bit_size = 4,
13356 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13357 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13360 .description = "allowed_pri",
13361 .field_bit_size = 8,
13362 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13363 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13366 .description = "default_pri",
13367 .field_bit_size = 3,
13368 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13369 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13372 .description = "allowed_tpid",
13373 .field_bit_size = 6,
13374 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13375 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13378 .description = "default_tpid",
13379 .field_bit_size = 3,
13380 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13381 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13384 .description = "bd_act_en",
13385 .field_bit_size = 1,
13386 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13387 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13390 .description = "sp_rec_ptr",
13391 .field_bit_size = 16,
13392 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13393 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13396 .description = "byp_sp_lkup",
13397 .field_bit_size = 1,
13398 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13399 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13404 .description = "pri_anti_spoof_ctl",
13405 .field_bit_size = 2,
13406 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13407 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13410 .description = "tpid_anti_spoof_ctl",
13411 .field_bit_size = 2,
13412 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13413 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13415 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_egr0 */
13417 .description = "act_record_ptr",
13418 .field_bit_size = 16,
13419 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13420 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13423 .description = "reserved",
13424 .field_bit_size = 1,
13425 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13426 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13429 .description = "l2_byp_lkup_en",
13430 .field_bit_size = 1,
13431 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13432 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13437 .description = "parif",
13438 .field_bit_size = 4,
13439 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13440 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13443 .description = "allowed_pri",
13444 .field_bit_size = 8,
13445 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13446 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13449 .description = "default_pri",
13450 .field_bit_size = 3,
13451 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13452 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13455 .description = "allowed_tpid",
13456 .field_bit_size = 6,
13457 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13458 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13461 .description = "default_tpid",
13462 .field_bit_size = 3,
13463 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13464 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13467 .description = "bd_act_en",
13468 .field_bit_size = 1,
13469 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13470 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13475 .description = "sp_rec_ptr",
13476 .field_bit_size = 16,
13477 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13478 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13481 .description = "byp_sp_lkup",
13482 .field_bit_size = 1,
13483 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13484 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13489 .description = "pri_anti_spoof_ctl",
13490 .field_bit_size = 2,
13491 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13492 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13495 .description = "tpid_anti_spoof_ctl",
13496 .field_bit_size = 2,
13497 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13498 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13500 /* class_tid: 4, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
13502 .description = "rid",
13503 .field_bit_size = 32,
13504 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13505 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13507 (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
13508 BNXT_ULP_RF_IDX_RID & 0xff}
13511 .description = "l2_cntxt_tcam_index",
13512 .field_bit_size = 10,
13513 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13514 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13516 (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
13517 BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
13520 .description = "l2_cntxt_id",
13521 .field_bit_size = 10,
13522 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13523 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13526 .description = "src_property_ptr",
13527 .field_bit_size = 10,
13528 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13529 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13531 /* class_tid: 4, , table: int_vtag_encap_record.vfr_egr0 */
13533 .description = "ecv_tun_type",
13534 .field_bit_size = 3,
13535 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13536 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13539 .description = "ecv_l4_type",
13540 .field_bit_size = 3,
13541 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13542 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13545 .description = "ecv_l3_type",
13546 .field_bit_size = 3,
13547 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13548 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13551 .description = "ecv_l2_en",
13552 .field_bit_size = 1,
13553 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13554 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13557 .description = "ecv_vtag_type",
13558 .field_bit_size = 4,
13559 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13560 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13562 ULP_WP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI}
13565 .description = "ecv_custom_en",
13566 .field_bit_size = 1,
13567 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13568 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13571 .description = "ecv_valid",
13572 .field_bit_size = 1,
13573 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13574 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13579 .description = "vtag_tpid",
13580 .field_bit_size = 16,
13581 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13582 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13588 .description = "vtag_vid",
13589 .field_bit_size = 12,
13590 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13591 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13593 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
13594 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
13597 .description = "vtag_de",
13598 .field_bit_size = 1,
13599 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13600 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13603 .description = "vtag_pcp",
13604 .field_bit_size = 3,
13605 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13606 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13609 .description = "spare",
13610 .field_bit_size = 80,
13611 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13612 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13614 /* class_tid: 4, , table: int_full_act_record.vfr_egr0 */
13616 .description = "flow_cntr_ptr",
13617 .field_bit_size = 14,
13618 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13619 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13622 .description = "age_enable",
13623 .field_bit_size = 1,
13624 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13625 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13628 .description = "agg_cntr_en",
13629 .field_bit_size = 1,
13630 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13631 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13634 .description = "rate_cntr_en",
13635 .field_bit_size = 1,
13636 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13637 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13640 .description = "flow_cntr_en",
13641 .field_bit_size = 1,
13642 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13643 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13646 .description = "tcpflags_key",
13647 .field_bit_size = 8,
13648 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13649 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13652 .description = "tcpflags_mir",
13653 .field_bit_size = 1,
13654 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13655 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13658 .description = "tcpflags_match",
13659 .field_bit_size = 1,
13660 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13661 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13664 .description = "encap_ptr",
13665 .field_bit_size = 11,
13666 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13667 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13669 (BNXT_ULP_RF_IDX_ENCAP_PTR_0 >> 8) & 0xff,
13670 BNXT_ULP_RF_IDX_ENCAP_PTR_0 & 0xff}
13673 .description = "dst_ip_ptr",
13674 .field_bit_size = 10,
13675 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13676 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13679 .description = "tcp_dst_port",
13680 .field_bit_size = 16,
13681 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13682 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13685 .description = "src_ip_ptr",
13686 .field_bit_size = 10,
13687 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13688 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13691 .description = "tcp_src_port",
13692 .field_bit_size = 16,
13693 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13694 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13697 .description = "meter_id",
13698 .field_bit_size = 10,
13699 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13700 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13703 .description = "l3_rdir",
13704 .field_bit_size = 1,
13705 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13706 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13709 .description = "tl3_rdir",
13710 .field_bit_size = 1,
13711 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13712 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13715 .description = "l3_ttl_dec",
13716 .field_bit_size = 1,
13717 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13718 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13721 .description = "tl3_ttl_dec",
13722 .field_bit_size = 1,
13723 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13724 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13727 .description = "decap_func",
13728 .field_bit_size = 4,
13729 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13730 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13733 .description = "vnic_or_vport",
13734 .field_bit_size = 12,
13735 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13736 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13738 (ULP_WP_SYM_LOOPBACK_PORT >> 8) & 0xff,
13739 ULP_WP_SYM_LOOPBACK_PORT & 0xff}
13742 .description = "pop_vlan",
13743 .field_bit_size = 1,
13744 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13745 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13748 .description = "meter",
13749 .field_bit_size = 1,
13750 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13751 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13754 .description = "mirror",
13755 .field_bit_size = 2,
13756 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13757 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13760 .description = "drop",
13761 .field_bit_size = 1,
13762 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13763 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13766 .description = "hit",
13767 .field_bit_size = 1,
13768 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13769 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13772 .description = "type",
13773 .field_bit_size = 1,
13774 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13775 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13777 /* class_tid: 4, , table: int_full_act_record.vfr_ing0 */
13779 .description = "flow_cntr_ptr",
13780 .field_bit_size = 14,
13781 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13782 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13785 .description = "age_enable",
13786 .field_bit_size = 1,
13787 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13788 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13791 .description = "agg_cntr_en",
13792 .field_bit_size = 1,
13793 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13794 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13797 .description = "rate_cntr_en",
13798 .field_bit_size = 1,
13799 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13800 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13803 .description = "flow_cntr_en",
13804 .field_bit_size = 1,
13805 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13806 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13809 .description = "tcpflags_key",
13810 .field_bit_size = 8,
13811 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13812 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13815 .description = "tcpflags_mir",
13816 .field_bit_size = 1,
13817 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13818 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13821 .description = "tcpflags_match",
13822 .field_bit_size = 1,
13823 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13824 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13827 .description = "encap_ptr",
13828 .field_bit_size = 11,
13829 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13830 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13833 .description = "dst_ip_ptr",
13834 .field_bit_size = 10,
13835 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13836 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13839 .description = "tcp_dst_port",
13840 .field_bit_size = 16,
13841 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13842 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13845 .description = "src_ip_ptr",
13846 .field_bit_size = 10,
13847 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13848 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13851 .description = "tcp_src_port",
13852 .field_bit_size = 16,
13853 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13854 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13857 .description = "meter_id",
13858 .field_bit_size = 10,
13859 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13860 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13863 .description = "l3_rdir",
13864 .field_bit_size = 1,
13865 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13866 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13869 .description = "tl3_rdir",
13870 .field_bit_size = 1,
13871 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13872 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13875 .description = "l3_ttl_dec",
13876 .field_bit_size = 1,
13877 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13878 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13881 .description = "tl3_ttl_dec",
13882 .field_bit_size = 1,
13883 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13884 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13887 .description = "decap_func",
13888 .field_bit_size = 4,
13889 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13890 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13893 .description = "vnic_or_vport",
13894 .field_bit_size = 12,
13895 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13896 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13898 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
13899 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff}
13902 .description = "pop_vlan",
13903 .field_bit_size = 1,
13904 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13905 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13910 .description = "meter",
13911 .field_bit_size = 1,
13912 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13913 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13916 .description = "mirror",
13917 .field_bit_size = 2,
13918 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13919 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13922 .description = "drop",
13923 .field_bit_size = 1,
13924 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13925 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13928 .description = "hit",
13929 .field_bit_size = 1,
13930 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13931 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13934 .description = "type",
13935 .field_bit_size = 1,
13936 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13937 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13939 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_dtagged_ing0 */
13941 .description = "act_record_ptr",
13942 .field_bit_size = 16,
13943 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13944 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13946 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
13947 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
13950 .description = "reserved",
13951 .field_bit_size = 1,
13952 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13953 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13956 .description = "l2_byp_lkup_en",
13957 .field_bit_size = 1,
13958 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13959 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
13964 .description = "parif",
13965 .field_bit_size = 4,
13966 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13967 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13970 .description = "allowed_pri",
13971 .field_bit_size = 8,
13972 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13973 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13976 .description = "default_pri",
13977 .field_bit_size = 3,
13978 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13979 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13982 .description = "allowed_tpid",
13983 .field_bit_size = 6,
13984 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13985 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13988 .description = "default_tpid",
13989 .field_bit_size = 3,
13990 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13991 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
13994 .description = "bd_act_en",
13995 .field_bit_size = 1,
13996 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13997 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14000 .description = "sp_rec_ptr",
14001 .field_bit_size = 16,
14002 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14003 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14006 .description = "byp_sp_lkup",
14007 .field_bit_size = 1,
14008 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14009 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14014 .description = "pri_anti_spoof_ctl",
14015 .field_bit_size = 2,
14016 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14017 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14020 .description = "tpid_anti_spoof_ctl",
14021 .field_bit_size = 2,
14022 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14023 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14025 /* class_tid: 4, , table: l2_cntxt_tcam_bypass.vfr_stagged_ing0 */
14027 .description = "act_record_ptr",
14028 .field_bit_size = 16,
14029 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14030 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14032 (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
14033 BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
14036 .description = "reserved",
14037 .field_bit_size = 1,
14038 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14039 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14042 .description = "l2_byp_lkup_en",
14043 .field_bit_size = 1,
14044 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14045 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14050 .description = "parif",
14051 .field_bit_size = 4,
14052 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14053 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14056 .description = "allowed_pri",
14057 .field_bit_size = 8,
14058 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14059 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14062 .description = "default_pri",
14063 .field_bit_size = 3,
14064 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14065 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14068 .description = "allowed_tpid",
14069 .field_bit_size = 6,
14070 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14071 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14074 .description = "default_tpid",
14075 .field_bit_size = 3,
14076 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14077 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14080 .description = "bd_act_en",
14081 .field_bit_size = 1,
14082 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14083 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14086 .description = "sp_rec_ptr",
14087 .field_bit_size = 16,
14088 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14089 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14092 .description = "byp_sp_lkup",
14093 .field_bit_size = 1,
14094 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14095 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
14100 .description = "pri_anti_spoof_ctl",
14101 .field_bit_size = 2,
14102 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14103 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14106 .description = "tpid_anti_spoof_ctl",
14107 .field_bit_size = 2,
14108 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14109 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14113 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {
14114 /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
14116 .description = "l2_cntxt_id",
14117 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14118 .ident_bit_size = 10,
14119 .ident_bit_pos = 42
14121 /* class_tid: 1, , table: mac_addr_cache.rd */
14123 .description = "l2_cntxt_id",
14124 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14125 .ident_bit_size = 10,
14126 .ident_bit_pos = 42
14128 /* class_tid: 1, , table: l2_cntxt_tcam.0 */
14130 .description = "l2_cntxt_id",
14131 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14132 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
14133 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14134 .ident_bit_size = 10,
14137 /* class_tid: 1, , table: profile_tcam_cache.rd */
14139 .description = "em_profile_id",
14140 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14141 .ident_bit_size = 8,
14142 .ident_bit_pos = 42
14145 .description = "flow_sig_id",
14146 .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
14147 .ident_bit_size = 64,
14148 .ident_bit_pos = 58
14151 .description = "profile_tcam_index",
14152 .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
14153 .ident_bit_size = 10,
14154 .ident_bit_pos = 32
14156 /* class_tid: 1, , table: profile_tcam.ipv4 */
14158 .description = "em_profile_id",
14159 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14160 .ident_type = TF_IDENT_TYPE_EM_PROF,
14161 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14162 .ident_bit_size = 8,
14163 .ident_bit_pos = 28
14165 /* class_tid: 1, , table: profile_tcam.ipv6 */
14167 .description = "em_profile_id",
14168 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14169 .ident_type = TF_IDENT_TYPE_EM_PROF,
14170 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14171 .ident_bit_size = 8,
14172 .ident_bit_pos = 28
14174 /* class_tid: 1, , table: profile_tcam.ipv4_vxlan */
14176 .description = "em_profile_id",
14177 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14178 .ident_type = TF_IDENT_TYPE_EM_PROF,
14179 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14180 .ident_bit_size = 8,
14181 .ident_bit_pos = 28
14183 /* class_tid: 2, , table: l2_cntxt_tcam_cache.rd */
14185 .description = "l2_cntxt_id",
14186 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14187 .ident_bit_size = 10,
14188 .ident_bit_pos = 42
14190 /* class_tid: 2, , table: mac_addr_cache.rd */
14192 .description = "l2_cntxt_id",
14193 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14194 .ident_bit_size = 10,
14195 .ident_bit_pos = 42
14197 /* class_tid: 2, , table: l2_cntxt_tcam.0 */
14199 .description = "l2_cntxt_id",
14200 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14201 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
14202 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14203 .ident_bit_size = 10,
14206 /* class_tid: 2, , table: profile_tcam_cache.rd */
14208 .description = "em_profile_id",
14209 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14210 .ident_bit_size = 8,
14211 .ident_bit_pos = 42
14214 .description = "flow_sig_id",
14215 .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
14216 .ident_bit_size = 64,
14217 .ident_bit_pos = 58
14220 .description = "profile_tcam_index",
14221 .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
14222 .ident_bit_size = 10,
14223 .ident_bit_pos = 32
14225 /* class_tid: 2, , table: profile_tcam.ipv4 */
14227 .description = "em_profile_id",
14228 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14229 .ident_type = TF_IDENT_TYPE_EM_PROF,
14230 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14231 .ident_bit_size = 8,
14232 .ident_bit_pos = 28
14234 /* class_tid: 2, , table: profile_tcam.ipv6 */
14236 .description = "em_profile_id",
14237 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14238 .ident_type = TF_IDENT_TYPE_EM_PROF,
14239 .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
14240 .ident_bit_size = 8,
14241 .ident_bit_pos = 28
14243 /* class_tid: 3, , table: l2_cntxt_tcam.ing_0 */
14245 .description = "l2_cntxt_id",
14246 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14247 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
14248 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14249 .ident_bit_size = 10,
14252 /* class_tid: 3, , table: l2_cntxt_tcam.egr_0 */
14254 .description = "l2_cntxt_id",
14255 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14256 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
14257 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14258 .ident_bit_size = 10,
14261 /* class_tid: 4, , table: l2_cntxt_tcam.vf_egr */
14263 .description = "l2_cntxt_id",
14264 .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
14265 .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
14266 .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
14267 .ident_bit_size = 10,