net/bnxt: enable wildcard match for ingress flows
[dpdk.git] / drivers / net / bnxt / tf_ulp / generic_templates / ulp_template_db_thor_class.c
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2014-2021 Broadcom
3  * All rights reserved.
4  */
5
6 /* date: Thu Sep  9 12:11:08 2021 */
7
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"
12
13 /* Mapper templates for header class list */
14 struct bnxt_ulp_mapper_tmpl_info ulp_thor_class_tmpl_list[] = {
15         /* class_tid: 1, ingress */
16         [1] = {
17         .device_name = BNXT_ULP_DEVICE_ID_THOR,
18         .num_tbls = 28,
19         .start_tbl_idx = 0,
20         .reject_info = {
21                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
22                 .cond_start_idx = 0,
23                 .cond_nums = 0 }
24         },
25         /* class_tid: 2, ingress */
26         [2] = {
27         .device_name = BNXT_ULP_DEVICE_ID_THOR,
28         .num_tbls = 24,
29         .start_tbl_idx = 28,
30         .reject_info = {
31                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
32                 .cond_start_idx = 28,
33                 .cond_nums = 0 }
34         },
35         /* class_tid: 3, egress */
36         [3] = {
37         .device_name = BNXT_ULP_DEVICE_ID_THOR,
38         .num_tbls = 18,
39         .start_tbl_idx = 52,
40         .reject_info = {
41                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
42                 .cond_start_idx = 38,
43                 .cond_nums = 0 }
44         },
45         /* class_tid: 4, ingress */
46         [4] = {
47         .device_name = BNXT_ULP_DEVICE_ID_THOR,
48         .num_tbls = 21,
49         .start_tbl_idx = 70,
50         .reject_info = {
51                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
52                 .cond_start_idx = 47,
53                 .cond_nums = 0 }
54         },
55         /* class_tid: 5, egress */
56         [5] = {
57         .device_name = BNXT_ULP_DEVICE_ID_THOR,
58         .num_tbls = 25,
59         .start_tbl_idx = 91,
60         .reject_info = {
61                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_FALSE,
62                 .cond_start_idx = 51,
63                 .cond_nums = 0 }
64         }
65 };
66
67 struct bnxt_ulp_mapper_tbl_info ulp_thor_class_tbl_list[] = {
68         { /* class_tid: 1, , table: port_table.rd */
69         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
70         .resource_sub_type =
71                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE,
72         .direction = TF_DIR_RX,
73         .execute_info = {
74                 .cond_true_goto  = 1,
75                 .cond_false_goto = 1,
76                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
77                 .cond_start_idx = 0,
78                 .cond_nums = 0 },
79         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
80         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
81         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
82         .key_start_idx = 0,
83         .blob_key_bit_size = 10,
84         .key_bit_size = 10,
85         .key_num_fields = 1,
86         .ident_start_idx = 0,
87         .ident_nums = 3
88         },
89         { /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
90         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
91         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
92         .resource_sub_type =
93                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
94         .direction = TF_DIR_RX,
95         .execute_info = {
96                 .cond_true_goto  = 5,
97                 .cond_false_goto = 1,
98                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
99                 .cond_start_idx = 0,
100                 .cond_nums = 1 },
101         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
102         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
103         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
104         .key_start_idx = 1,
105         .blob_key_bit_size = 8,
106         .key_bit_size = 8,
107         .key_num_fields = 1,
108         .ident_start_idx = 3,
109         .ident_nums = 1
110         },
111         { /* class_tid: 1, , table: mac_addr_cache.rd */
112         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
113         .resource_sub_type =
114                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
115         .direction = TF_DIR_RX,
116         .execute_info = {
117                 .cond_true_goto  = 1,
118                 .cond_false_goto = 1,
119                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
120                 .cond_start_idx = 1,
121                 .cond_nums = 0 },
122         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
123         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
124         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
125         .key_start_idx = 2,
126         .blob_key_bit_size = 73,
127         .key_bit_size = 73,
128         .key_num_fields = 5,
129         .ident_start_idx = 4,
130         .ident_nums = 1
131         },
132         { /* class_tid: 1, , table: control.0 */
133         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
134         .direction = TF_DIR_RX,
135         .execute_info = {
136                 .cond_true_goto  = 1,
137                 .cond_false_goto = 3,
138                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
139                 .cond_start_idx = 1,
140                 .cond_nums = 1 },
141         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
142         .fdb_operand = BNXT_ULP_RF_IDX_RID
143         },
144         { /* class_tid: 1, , table: l2_cntxt_tcam.0 */
145         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
146         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
147         .direction = TF_DIR_RX,
148         .execute_info = {
149                 .cond_true_goto  = 1,
150                 .cond_false_goto = 1,
151                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
152                 .cond_start_idx = 2,
153                 .cond_nums = 0 },
154         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
155         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
156         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
157         .fdb_operand = BNXT_ULP_RF_IDX_RID,
158         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
159         .pri_operand = 0,
160         .key_start_idx = 7,
161         .blob_key_bit_size = 213,
162         .key_bit_size = 213,
163         .key_num_fields = 21,
164         .result_start_idx = 0,
165         .result_bit_size = 43,
166         .result_num_fields = 6,
167         .ident_start_idx = 5,
168         .ident_nums = 1
169         },
170         { /* class_tid: 1, , table: mac_addr_cache.wr */
171         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
172         .resource_sub_type =
173                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
174         .direction = TF_DIR_RX,
175         .execute_info = {
176                 .cond_true_goto  = 1,
177                 .cond_false_goto = 1,
178                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
179                 .cond_start_idx = 2,
180                 .cond_nums = 0 },
181         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
182         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
183         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
184         .key_start_idx = 28,
185         .blob_key_bit_size = 73,
186         .key_bit_size = 73,
187         .key_num_fields = 5,
188         .result_start_idx = 6,
189         .result_bit_size = 62,
190         .result_num_fields = 4
191         },
192         { /* class_tid: 1, , table: control.ipv6_check */
193         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
194         .direction = TF_DIR_RX,
195         .execute_info = {
196                 .cond_true_goto  = 1,
197                 .cond_false_goto = 8,
198                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
199                 .cond_start_idx = 2,
200                 .cond_nums = 1 },
201         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
202         },
203         { /* class_tid: 1, , table: profile_tcam_cache.ipv6_rd */
204         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
205         .resource_sub_type =
206                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
207         .direction = TF_DIR_RX,
208         .execute_info = {
209                 .cond_true_goto  = 1,
210                 .cond_false_goto = 1023,
211                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
212                 .cond_start_idx = 3,
213                 .cond_nums = 1 },
214         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
215         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
216         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
217         .key_start_idx = 33,
218         .blob_key_bit_size = 14,
219         .key_bit_size = 14,
220         .key_num_fields = 3,
221         .ident_start_idx = 6,
222         .ident_nums = 4
223         },
224         { /* class_tid: 1, , table: control.ipv6_prof_cache_check */
225         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
226         .direction = TF_DIR_RX,
227         .execute_info = {
228                 .cond_true_goto  = 2,
229                 .cond_false_goto = 1,
230                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
231                 .cond_start_idx = 4,
232                 .cond_nums = 1 },
233         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
234         .fdb_operand = BNXT_ULP_RF_IDX_RID
235         },
236         { /* class_tid: 1, , table: control.v6_conflict_check */
237         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
238         .direction = TF_DIR_RX,
239         .execute_info = {
240                 .cond_true_goto  = 4,
241                 .cond_false_goto = 1023,
242                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
243                 .cond_start_idx = 5,
244                 .cond_nums = 1 },
245         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
246         .func_info = {
247                 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
248                 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
249                 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
250                 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
251                 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
252                 .func_dst_opr = BNXT_ULP_RF_IDX_CC }
253         },
254         { /* class_tid: 1, , table: fkb_select.l2_l3_l4_v6_em */
255         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
256         .resource_type = TF_TBL_TYPE_EM_FKB,
257         .direction = TF_DIR_RX,
258         .execute_info = {
259                 .cond_true_goto  = 1,
260                 .cond_false_goto = 1,
261                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
262                 .cond_start_idx = 6,
263                 .cond_nums = 0 },
264         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
265         .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
266         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
267         .fdb_operand = BNXT_ULP_RF_IDX_RID,
268         .result_start_idx = 10,
269         .result_bit_size = 106,
270         .result_num_fields = 106
271         },
272         { /* class_tid: 1, , table: profile_tcam.l2_l3_l4_v6_em */
273         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
274         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
275         .direction = TF_DIR_RX,
276         .execute_info = {
277                 .cond_true_goto  = 1,
278                 .cond_false_goto = 1023,
279                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
280                 .cond_start_idx = 6,
281                 .cond_nums = 1 },
282         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
283         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
284         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
285         .fdb_operand = BNXT_ULP_RF_IDX_RID,
286         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
287         .pri_operand = 0,
288         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
289         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
290         .key_start_idx = 36,
291         .blob_key_bit_size = 94,
292         .key_bit_size = 94,
293         .key_num_fields = 43,
294         .result_start_idx = 116,
295         .result_bit_size = 33,
296         .result_num_fields = 8,
297         .ident_start_idx = 10,
298         .ident_nums = 1
299         },
300         { /* class_tid: 1, , table: profile_tcam_cache.l2_l3_l4_v6_wr */
301         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
302         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
303         .resource_sub_type =
304                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
305         .direction = TF_DIR_RX,
306         .execute_info = {
307                 .cond_true_goto  = 1,
308                 .cond_false_goto = 1,
309                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
310                 .cond_start_idx = 7,
311                 .cond_nums = 0 },
312         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
313         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
314         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
315         .key_start_idx = 79,
316         .blob_key_bit_size = 14,
317         .key_bit_size = 14,
318         .key_num_fields = 3,
319         .result_start_idx = 124,
320         .result_bit_size = 138,
321         .result_num_fields = 7
322         },
323         { /* class_tid: 1, , table: em.l2_l3_l4_v6.0 */
324         .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
325         .resource_type = TF_MEM_INTERNAL,
326         .direction = TF_DIR_RX,
327         .execute_info = {
328                 .cond_true_goto  = 0,
329                 .cond_false_goto = 1,
330                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
331                 .cond_start_idx = 7,
332                 .cond_nums = 0 },
333         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
334         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
335         .key_start_idx = 82,
336         .blob_key_bit_size = 0,
337         .key_bit_size = 0,
338         .key_num_fields = 114,
339         .result_start_idx = 131,
340         .result_bit_size = 0,
341         .result_num_fields = 6
342         },
343         { /* class_tid: 1, , table: profile_tcam_cache.rd */
344         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
345         .resource_sub_type =
346                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
347         .direction = TF_DIR_RX,
348         .execute_info = {
349                 .cond_true_goto  = 1,
350                 .cond_false_goto = 1,
351                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
352                 .cond_start_idx = 7,
353                 .cond_nums = 0 },
354         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
355         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
356         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
357         .key_start_idx = 196,
358         .blob_key_bit_size = 14,
359         .key_bit_size = 14,
360         .key_num_fields = 3,
361         .ident_start_idx = 11,
362         .ident_nums = 2
363         },
364         { /* class_tid: 1, , table: control.gen_tbl_miss */
365         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
366         .direction = TF_DIR_RX,
367         .execute_info = {
368                 .cond_true_goto  = 1,
369                 .cond_false_goto = 6,
370                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
371                 .cond_start_idx = 7,
372                 .cond_nums = 1 },
373         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
374         .fdb_operand = BNXT_ULP_RF_IDX_RID
375         },
376         { /* class_tid: 1, , table: fkb_select.l3_l4_wm */
377         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
378         .resource_type = TF_TBL_TYPE_WC_FKB,
379         .direction = TF_DIR_RX,
380         .execute_info = {
381                 .cond_true_goto  = 1,
382                 .cond_false_goto = 1,
383                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
384                 .cond_start_idx = 8,
385                 .cond_nums = 1 },
386         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
387         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0,
388         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
389         .result_start_idx = 137,
390         .result_bit_size = 106,
391         .result_num_fields = 106
392         },
393         { /* class_tid: 1, , table: fkb_select.l3_l4_wm_vxlan */
394         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
395         .resource_type = TF_TBL_TYPE_WC_FKB,
396         .direction = TF_DIR_RX,
397         .execute_info = {
398                 .cond_true_goto  = 1,
399                 .cond_false_goto = 1,
400                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
401                 .cond_start_idx = 9,
402                 .cond_nums = 1 },
403         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
404         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_2,
405         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
406         .result_start_idx = 243,
407         .result_bit_size = 106,
408         .result_num_fields = 106
409         },
410         { /* class_tid: 1, , table: profile_tcam.l3_l4.ip */
411         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
412         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
413         .direction = TF_DIR_RX,
414         .execute_info = {
415                 .cond_true_goto  = 2,
416                 .cond_false_goto = 1,
417                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
418                 .cond_start_idx = 10,
419                 .cond_nums = 2 },
420         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
421         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
422         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
423         .fdb_operand = BNXT_ULP_RF_IDX_RID,
424         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
425         .pri_operand = 0,
426         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
427         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
428         .key_start_idx = 199,
429         .blob_key_bit_size = 94,
430         .key_bit_size = 94,
431         .key_num_fields = 43,
432         .result_start_idx = 349,
433         .result_bit_size = 33,
434         .result_num_fields = 8,
435         .ident_start_idx = 13,
436         .ident_nums = 0
437         },
438         { /* class_tid: 1, , table: profile_tcam.l3_l4.vxlan */
439         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
440         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
441         .direction = TF_DIR_RX,
442         .execute_info = {
443                 .cond_true_goto  = 1,
444                 .cond_false_goto = 1,
445                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
446                 .cond_start_idx = 12,
447                 .cond_nums = 1 },
448         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
449         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
450         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
451         .fdb_operand = BNXT_ULP_RF_IDX_RID,
452         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
453         .pri_operand = 0,
454         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
455         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
456         .key_start_idx = 242,
457         .blob_key_bit_size = 94,
458         .key_bit_size = 94,
459         .key_num_fields = 43,
460         .result_start_idx = 357,
461         .result_bit_size = 33,
462         .result_num_fields = 8,
463         .ident_start_idx = 13,
464         .ident_nums = 0
465         },
466         { /* class_tid: 1, , table: profile_tcam_cache.wr */
467         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
468         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
469         .resource_sub_type =
470                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
471         .direction = TF_DIR_RX,
472         .execute_info = {
473                 .cond_true_goto  = 1,
474                 .cond_false_goto = 1,
475                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
476                 .cond_start_idx = 13,
477                 .cond_nums = 0 },
478         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
479         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
480         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
481         .key_start_idx = 285,
482         .blob_key_bit_size = 14,
483         .key_bit_size = 14,
484         .key_num_fields = 3,
485         .result_start_idx = 365,
486         .result_bit_size = 138,
487         .result_num_fields = 7
488         },
489         { /* class_tid: 1, , table: wm.l3_l4.ipv4 */
490         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
491         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
492         .direction = TF_DIR_RX,
493         .execute_info = {
494                 .cond_true_goto  = 0,
495                 .cond_false_goto = 1,
496                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
497                 .cond_start_idx = 13,
498                 .cond_nums = 3 },
499         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
500         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
501         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
502         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
503         .pri_operand = 0,
504         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
505         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
506         .key_start_idx = 288,
507         .blob_key_bit_size = 0,
508         .key_bit_size = 0,
509         .key_num_fields = 114,
510         .result_start_idx = 372,
511         .result_bit_size = 38,
512         .result_num_fields = 5
513         },
514         { /* class_tid: 1, , table: wm.l3_l4.ipv6 */
515         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
516         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
517         .direction = TF_DIR_RX,
518         .execute_info = {
519                 .cond_true_goto  = 0,
520                 .cond_false_goto = 1,
521                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
522                 .cond_start_idx = 16,
523                 .cond_nums = 3 },
524         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
525         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
526         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
527         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
528         .pri_operand = 0,
529         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
530         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
531         .key_start_idx = 402,
532         .blob_key_bit_size = 0,
533         .key_bit_size = 0,
534         .key_num_fields = 114,
535         .result_start_idx = 377,
536         .result_bit_size = 38,
537         .result_num_fields = 5
538         },
539         { /* class_tid: 1, , table: wm.l3.ipv4 */
540         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
541         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
542         .direction = TF_DIR_RX,
543         .execute_info = {
544                 .cond_true_goto  = 0,
545                 .cond_false_goto = 1,
546                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
547                 .cond_start_idx = 19,
548                 .cond_nums = 2 },
549         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
550         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
551         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
552         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
553         .pri_operand = 0,
554         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
555         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
556         .key_start_idx = 516,
557         .blob_key_bit_size = 0,
558         .key_bit_size = 0,
559         .key_num_fields = 114,
560         .result_start_idx = 382,
561         .result_bit_size = 38,
562         .result_num_fields = 5
563         },
564         { /* class_tid: 1, , table: wm.l3.ipv6 */
565         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
566         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
567         .direction = TF_DIR_RX,
568         .execute_info = {
569                 .cond_true_goto  = 0,
570                 .cond_false_goto = 1,
571                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
572                 .cond_start_idx = 21,
573                 .cond_nums = 2 },
574         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
575         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
576         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
577         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
578         .pri_operand = 0,
579         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
580         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
581         .key_start_idx = 630,
582         .blob_key_bit_size = 0,
583         .key_bit_size = 0,
584         .key_num_fields = 114,
585         .result_start_idx = 387,
586         .result_bit_size = 38,
587         .result_num_fields = 5
588         },
589         { /* class_tid: 1, , table: wm.l2 */
590         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
591         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
592         .direction = TF_DIR_RX,
593         .execute_info = {
594                 .cond_true_goto  = 0,
595                 .cond_false_goto = 1,
596                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
597                 .cond_start_idx = 23,
598                 .cond_nums = 1 },
599         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
600         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
601         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
602         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
603         .pri_operand = 0,
604         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
605         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
606         .key_start_idx = 744,
607         .blob_key_bit_size = 0,
608         .key_bit_size = 0,
609         .key_num_fields = 114,
610         .result_start_idx = 392,
611         .result_bit_size = 38,
612         .result_num_fields = 5
613         },
614         { /* class_tid: 1, , table: wm.l3_l4.vxlan.ipv4 */
615         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
616         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
617         .direction = TF_DIR_RX,
618         .execute_info = {
619                 .cond_true_goto  = 0,
620                 .cond_false_goto = 1,
621                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
622                 .cond_start_idx = 24,
623                 .cond_nums = 2 },
624         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
625         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
626         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
627         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
628         .pri_operand = 0,
629         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
630         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
631         .key_start_idx = 858,
632         .blob_key_bit_size = 0,
633         .key_bit_size = 0,
634         .key_num_fields = 114,
635         .result_start_idx = 397,
636         .result_bit_size = 38,
637         .result_num_fields = 5
638         },
639         { /* class_tid: 1, , table: wm.l3_l4.vxlan.ipv6 */
640         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
641         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
642         .direction = TF_DIR_RX,
643         .execute_info = {
644                 .cond_true_goto  = 0,
645                 .cond_false_goto = 1023,
646                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
647                 .cond_start_idx = 26,
648                 .cond_nums = 2 },
649         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
650         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
651         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
652         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
653         .pri_operand = 0,
654         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
655         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
656         .key_start_idx = 972,
657         .blob_key_bit_size = 0,
658         .key_bit_size = 0,
659         .key_num_fields = 114,
660         .result_start_idx = 402,
661         .result_bit_size = 38,
662         .result_num_fields = 5
663         },
664         { /* class_tid: 2, , table: port_table.rd */
665         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
666         .resource_sub_type =
667                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE,
668         .direction = TF_DIR_RX,
669         .execute_info = {
670                 .cond_true_goto  = 1,
671                 .cond_false_goto = 1,
672                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
673                 .cond_start_idx = 28,
674                 .cond_nums = 0 },
675         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
676         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
677         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
678         .key_start_idx = 1086,
679         .blob_key_bit_size = 10,
680         .key_bit_size = 10,
681         .key_num_fields = 1,
682         .ident_start_idx = 13,
683         .ident_nums = 3
684         },
685         { /* class_tid: 2, , table: tunnel_cache.rd */
686         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
687         .resource_sub_type =
688                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_CACHE,
689         .direction = TF_DIR_RX,
690         .execute_info = {
691                 .cond_true_goto  = 1,
692                 .cond_false_goto = 1,
693                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
694                 .cond_start_idx = 28,
695                 .cond_nums = 0 },
696         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
697         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
698         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
699         .key_start_idx = 1087,
700         .blob_key_bit_size = 16,
701         .key_bit_size = 16,
702         .key_num_fields = 2,
703         .ident_start_idx = 16,
704         .ident_nums = 1
705         },
706         { /* class_tid: 2, , table: control.tunnel_cache_check */
707         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
708         .direction = TF_DIR_RX,
709         .execute_info = {
710                 .cond_true_goto  = 1,
711                 .cond_false_goto = 3,
712                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
713                 .cond_start_idx = 28,
714                 .cond_nums = 1 },
715         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
716         .fdb_operand = BNXT_ULP_RF_IDX_RID
717         },
718         { /* class_tid: 2, , table: l2_cntxt_tcam.1 */
719         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
720         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
721         .direction = TF_DIR_RX,
722         .execute_info = {
723                 .cond_true_goto  = 1,
724                 .cond_false_goto = 1,
725                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
726                 .cond_start_idx = 29,
727                 .cond_nums = 0 },
728         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_IDENT,
729         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
730         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
731         .fdb_operand = BNXT_ULP_RF_IDX_RID,
732         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
733         .pri_operand = 0,
734         .key_start_idx = 1089,
735         .blob_key_bit_size = 213,
736         .key_bit_size = 213,
737         .key_num_fields = 21,
738         .result_start_idx = 407,
739         .result_bit_size = 43,
740         .result_num_fields = 6,
741         .ident_start_idx = 17,
742         .ident_nums = 1
743         },
744         { /* class_tid: 2, , table: tunnel_cache.wr */
745         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
746         .resource_sub_type =
747                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_TUNNEL_CACHE,
748         .direction = TF_DIR_RX,
749         .execute_info = {
750                 .cond_true_goto  = 1,
751                 .cond_false_goto = 1,
752                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
753                 .cond_start_idx = 29,
754                 .cond_nums = 0 },
755         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
756         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
757         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
758         .key_start_idx = 1110,
759         .blob_key_bit_size = 16,
760         .key_bit_size = 16,
761         .key_num_fields = 2,
762         .result_start_idx = 413,
763         .result_bit_size = 52,
764         .result_num_fields = 3
765         },
766         { /* class_tid: 2, , table: control.flow_type_check */
767         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
768         .direction = TF_DIR_RX,
769         .execute_info = {
770                 .cond_true_goto  = 1,
771                 .cond_false_goto = 5,
772                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
773                 .cond_start_idx = 29,
774                 .cond_nums = 1 },
775         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
776         },
777         { /* class_tid: 2, , table: mac_addr_cache.rd */
778         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
779         .resource_sub_type =
780                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
781         .direction = TF_DIR_RX,
782         .execute_info = {
783                 .cond_true_goto  = 1,
784                 .cond_false_goto = 1,
785                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
786                 .cond_start_idx = 30,
787                 .cond_nums = 0 },
788         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
789         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
790         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
791         .key_start_idx = 1112,
792         .blob_key_bit_size = 73,
793         .key_bit_size = 73,
794         .key_num_fields = 5,
795         .ident_start_idx = 18,
796         .ident_nums = 1
797         },
798         { /* class_tid: 2, , table: control.mac_addr_cache_check */
799         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
800         .direction = TF_DIR_RX,
801         .execute_info = {
802                 .cond_true_goto  = 1,
803                 .cond_false_goto = 0,
804                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
805                 .cond_start_idx = 30,
806                 .cond_nums = 1 },
807         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
808         .fdb_operand = BNXT_ULP_RF_IDX_RID
809         },
810         { /* class_tid: 2, , table: l2_cntxt_tcam.0 */
811         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
812         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
813         .direction = TF_DIR_RX,
814         .execute_info = {
815                 .cond_true_goto  = 1,
816                 .cond_false_goto = 1,
817                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
818                 .cond_start_idx = 31,
819                 .cond_nums = 0 },
820         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
821         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
822         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
823         .fdb_operand = BNXT_ULP_RF_IDX_RID,
824         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
825         .pri_operand = 0,
826         .key_start_idx = 1117,
827         .blob_key_bit_size = 213,
828         .key_bit_size = 213,
829         .key_num_fields = 21,
830         .result_start_idx = 416,
831         .result_bit_size = 43,
832         .result_num_fields = 6,
833         .ident_start_idx = 19,
834         .ident_nums = 0
835         },
836         { /* class_tid: 2, , table: mac_addr_cache.wr */
837         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
838         .resource_sub_type =
839                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_MAC_ADDR_CACHE,
840         .direction = TF_DIR_RX,
841         .execute_info = {
842                 .cond_true_goto  = 0,
843                 .cond_false_goto = 1,
844                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
845                 .cond_start_idx = 31,
846                 .cond_nums = 0 },
847         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
848         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_HASH,
849         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
850         .key_start_idx = 1138,
851         .blob_key_bit_size = 73,
852         .key_bit_size = 73,
853         .key_num_fields = 5,
854         .result_start_idx = 422,
855         .result_bit_size = 62,
856         .result_num_fields = 4
857         },
858         { /* class_tid: 2, , table: control.ipv6_check */
859         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
860         .direction = TF_DIR_RX,
861         .execute_info = {
862                 .cond_true_goto  = 1,
863                 .cond_false_goto = 8,
864                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
865                 .cond_start_idx = 31,
866                 .cond_nums = 1 },
867         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
868         },
869         { /* class_tid: 2, , table: profile_tcam_cache.f2_ipv6_rd */
870         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
871         .resource_sub_type =
872                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
873         .direction = TF_DIR_RX,
874         .execute_info = {
875                 .cond_true_goto  = 1,
876                 .cond_false_goto = 1023,
877                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
878                 .cond_start_idx = 32,
879                 .cond_nums = 1 },
880         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
881         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
882         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
883         .key_start_idx = 1143,
884         .blob_key_bit_size = 14,
885         .key_bit_size = 14,
886         .key_num_fields = 3,
887         .ident_start_idx = 19,
888         .ident_nums = 4
889         },
890         { /* class_tid: 2, , table: control.f2_ipv6_prof_cache_check */
891         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
892         .direction = TF_DIR_RX,
893         .execute_info = {
894                 .cond_true_goto  = 2,
895                 .cond_false_goto = 1,
896                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
897                 .cond_start_idx = 33,
898                 .cond_nums = 1 },
899         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
900         .fdb_operand = BNXT_ULP_RF_IDX_RID
901         },
902         { /* class_tid: 2, , table: control.f2_v6_conflict_check */
903         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
904         .direction = TF_DIR_RX,
905         .execute_info = {
906                 .cond_true_goto  = 4,
907                 .cond_false_goto = 1023,
908                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
909                 .cond_start_idx = 34,
910                 .cond_nums = 1 },
911         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
912         .func_info = {
913                 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
914                 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
915                 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
916                 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
917                 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
918                 .func_dst_opr = BNXT_ULP_RF_IDX_CC }
919         },
920         { /* class_tid: 2, , table: fkb_select.f2_l2_l3_l4_v6_em */
921         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
922         .resource_type = TF_TBL_TYPE_EM_FKB,
923         .direction = TF_DIR_RX,
924         .execute_info = {
925                 .cond_true_goto  = 1,
926                 .cond_false_goto = 1,
927                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
928                 .cond_start_idx = 35,
929                 .cond_nums = 0 },
930         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
931         .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
932         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
933         .fdb_operand = BNXT_ULP_RF_IDX_RID,
934         .result_start_idx = 426,
935         .result_bit_size = 106,
936         .result_num_fields = 106
937         },
938         { /* class_tid: 2, , table: profile_tcam.f2_l2_l3_l4_v6_em */
939         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
940         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
941         .direction = TF_DIR_RX,
942         .execute_info = {
943                 .cond_true_goto  = 1,
944                 .cond_false_goto = 1,
945                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
946                 .cond_start_idx = 35,
947                 .cond_nums = 0 },
948         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
949         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
950         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
951         .fdb_operand = BNXT_ULP_RF_IDX_RID,
952         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
953         .pri_operand = 0,
954         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
955         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
956         .key_start_idx = 1146,
957         .blob_key_bit_size = 94,
958         .key_bit_size = 94,
959         .key_num_fields = 43,
960         .result_start_idx = 532,
961         .result_bit_size = 33,
962         .result_num_fields = 8,
963         .ident_start_idx = 23,
964         .ident_nums = 1
965         },
966         { /* class_tid: 2, , table: profile_tcam_cache.f2_l2_l3_l4_v6_wr */
967         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
968         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
969         .resource_sub_type =
970                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
971         .direction = TF_DIR_RX,
972         .execute_info = {
973                 .cond_true_goto  = 1,
974                 .cond_false_goto = 1,
975                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
976                 .cond_start_idx = 35,
977                 .cond_nums = 0 },
978         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
979         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
980         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
981         .key_start_idx = 1189,
982         .blob_key_bit_size = 14,
983         .key_bit_size = 14,
984         .key_num_fields = 3,
985         .result_start_idx = 540,
986         .result_bit_size = 138,
987         .result_num_fields = 7
988         },
989         { /* class_tid: 2, , table: em.f2_l2_l3_l4_v6.0 */
990         .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
991         .resource_type = TF_MEM_INTERNAL,
992         .direction = TF_DIR_RX,
993         .execute_info = {
994                 .cond_true_goto  = 0,
995                 .cond_false_goto = 1,
996                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
997                 .cond_start_idx = 35,
998                 .cond_nums = 0 },
999         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1000         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1001         .key_start_idx = 1192,
1002         .blob_key_bit_size = 0,
1003         .key_bit_size = 0,
1004         .key_num_fields = 114,
1005         .result_start_idx = 547,
1006         .result_bit_size = 0,
1007         .result_num_fields = 6
1008         },
1009         { /* class_tid: 2, , table: profile_tcam_cache.f2_rd */
1010         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1011         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1012         .resource_sub_type =
1013                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1014         .direction = TF_DIR_RX,
1015         .execute_info = {
1016                 .cond_true_goto  = 1,
1017                 .cond_false_goto = 1,
1018                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1019                 .cond_start_idx = 35,
1020                 .cond_nums = 0 },
1021         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1022         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1023         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1024         .key_start_idx = 1306,
1025         .blob_key_bit_size = 14,
1026         .key_bit_size = 14,
1027         .key_num_fields = 3,
1028         .ident_start_idx = 24,
1029         .ident_nums = 3
1030         },
1031         { /* class_tid: 2, , table: control.profile_tcam_cache.f2_check */
1032         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1033         .direction = TF_DIR_RX,
1034         .execute_info = {
1035                 .cond_true_goto  = 1,
1036                 .cond_false_goto = 4,
1037                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1038                 .cond_start_idx = 35,
1039                 .cond_nums = 1 },
1040         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1041         .fdb_operand = BNXT_ULP_RF_IDX_RID
1042         },
1043         { /* class_tid: 2, , table: fkb_select.f2_wm */
1044         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1045         .resource_type = TF_TBL_TYPE_WC_FKB,
1046         .direction = TF_DIR_RX,
1047         .execute_info = {
1048                 .cond_true_goto  = 1,
1049                 .cond_false_goto = 1,
1050                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1051                 .cond_start_idx = 36,
1052                 .cond_nums = 1 },
1053         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
1054         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_4,
1055         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1056         .result_start_idx = 553,
1057         .result_bit_size = 106,
1058         .result_num_fields = 106
1059         },
1060         { /* class_tid: 2, , table: profile_tcam.f2 */
1061         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1062         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1063         .direction = TF_DIR_RX,
1064         .execute_info = {
1065                 .cond_true_goto  = 1,
1066                 .cond_false_goto = 1,
1067                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1068                 .cond_start_idx = 37,
1069                 .cond_nums = 0 },
1070         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1071         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
1072         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1073         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1074         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1075         .pri_operand = 1,
1076         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1077         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1078         .key_start_idx = 1309,
1079         .blob_key_bit_size = 94,
1080         .key_bit_size = 94,
1081         .key_num_fields = 43,
1082         .result_start_idx = 659,
1083         .result_bit_size = 33,
1084         .result_num_fields = 8
1085         },
1086         { /* class_tid: 2, , table: profile_tcam_cache.f2_wr */
1087         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1088         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1089         .resource_sub_type =
1090                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1091         .direction = TF_DIR_RX,
1092         .execute_info = {
1093                 .cond_true_goto  = 1,
1094                 .cond_false_goto = 1,
1095                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1096                 .cond_start_idx = 37,
1097                 .cond_nums = 0 },
1098         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1099         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1100         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1101         .key_start_idx = 1352,
1102         .blob_key_bit_size = 14,
1103         .key_bit_size = 14,
1104         .key_num_fields = 3,
1105         .result_start_idx = 667,
1106         .result_bit_size = 138,
1107         .result_num_fields = 7
1108         },
1109         { /* class_tid: 2, , table: wm.l3_l4.ipv4 */
1110         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1111         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1112         .direction = TF_DIR_RX,
1113         .execute_info = {
1114                 .cond_true_goto  = 0,
1115                 .cond_false_goto = 0,
1116                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1117                 .cond_start_idx = 37,
1118                 .cond_nums = 1 },
1119         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1120         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
1121         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1122         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1123         .pri_operand = 0,
1124         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1125         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1126         .key_start_idx = 1355,
1127         .blob_key_bit_size = 0,
1128         .key_bit_size = 0,
1129         .key_num_fields = 114,
1130         .result_start_idx = 674,
1131         .result_bit_size = 38,
1132         .result_num_fields = 5
1133         },
1134         { /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
1135         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1136         .resource_sub_type =
1137                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1138         .direction = TF_DIR_TX,
1139         .execute_info = {
1140                 .cond_true_goto  = 1,
1141                 .cond_false_goto = 1,
1142                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1143                 .cond_start_idx = 38,
1144                 .cond_nums = 0 },
1145         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1146         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1147         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1148         .key_start_idx = 1469,
1149         .blob_key_bit_size = 8,
1150         .key_bit_size = 8,
1151         .key_num_fields = 1,
1152         .ident_start_idx = 27,
1153         .ident_nums = 1
1154         },
1155         { /* class_tid: 3, , table: control.ipv6_check */
1156         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1157         .direction = TF_DIR_TX,
1158         .execute_info = {
1159                 .cond_true_goto  = 1,
1160                 .cond_false_goto = 8,
1161                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1162                 .cond_start_idx = 38,
1163                 .cond_nums = 1 },
1164         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
1165         },
1166         { /* class_tid: 3, , table: profile_tcam_cache.ipv6_rd */
1167         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1168         .resource_sub_type =
1169                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1170         .direction = TF_DIR_TX,
1171         .execute_info = {
1172                 .cond_true_goto  = 1,
1173                 .cond_false_goto = 1023,
1174                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1175                 .cond_start_idx = 39,
1176                 .cond_nums = 1 },
1177         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1178         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1179         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1180         .key_start_idx = 1470,
1181         .blob_key_bit_size = 14,
1182         .key_bit_size = 14,
1183         .key_num_fields = 3,
1184         .ident_start_idx = 28,
1185         .ident_nums = 4
1186         },
1187         { /* class_tid: 3, , table: control.ipv6_prof_cache_check */
1188         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1189         .direction = TF_DIR_TX,
1190         .execute_info = {
1191                 .cond_true_goto  = 2,
1192                 .cond_false_goto = 1,
1193                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1194                 .cond_start_idx = 40,
1195                 .cond_nums = 1 },
1196         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1197         .fdb_operand = BNXT_ULP_RF_IDX_RID
1198         },
1199         { /* class_tid: 3, , table: control.v6_conflict_check */
1200         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1201         .direction = TF_DIR_TX,
1202         .execute_info = {
1203                 .cond_true_goto  = 4,
1204                 .cond_false_goto = 1023,
1205                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1206                 .cond_start_idx = 41,
1207                 .cond_nums = 1 },
1208         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1209         .func_info = {
1210                 .func_opc = BNXT_ULP_FUNC_OPC_EQ,
1211                 .func_src1 = BNXT_ULP_FUNC_SRC_REGFILE,
1212                 .func_opr1 = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
1213                 .func_src2 = BNXT_ULP_FUNC_SRC_COMP_FIELD,
1214                 .func_opr2 = BNXT_ULP_CF_IDX_FLOW_SIG_ID,
1215                 .func_dst_opr = BNXT_ULP_RF_IDX_CC }
1216         },
1217         { /* class_tid: 3, , table: fkb_select.l2_l3_l4_v6_em */
1218         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1219         .resource_type = TF_TBL_TYPE_EM_FKB,
1220         .direction = TF_DIR_TX,
1221         .execute_info = {
1222                 .cond_true_goto  = 1,
1223                 .cond_false_goto = 1,
1224                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1225                 .cond_start_idx = 42,
1226                 .cond_nums = 0 },
1227         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1228         .tbl_operand = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
1229         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1230         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1231         .result_start_idx = 679,
1232         .result_bit_size = 106,
1233         .result_num_fields = 106
1234         },
1235         { /* class_tid: 3, , table: profile_tcam.l2_l3_l4_v6_em */
1236         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1237         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1238         .direction = TF_DIR_TX,
1239         .execute_info = {
1240                 .cond_true_goto  = 1,
1241                 .cond_false_goto = 1,
1242                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1243                 .cond_start_idx = 42,
1244                 .cond_nums = 0 },
1245         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1246         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
1247         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1248         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1249         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1250         .pri_operand = 0,
1251         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1252         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1253         .key_start_idx = 1473,
1254         .blob_key_bit_size = 94,
1255         .key_bit_size = 94,
1256         .key_num_fields = 43,
1257         .result_start_idx = 785,
1258         .result_bit_size = 33,
1259         .result_num_fields = 8,
1260         .ident_start_idx = 32,
1261         .ident_nums = 1
1262         },
1263         { /* class_tid: 3, , table: profile_tcam_cache.l2_l3_l4_v6_wr */
1264         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1265         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1266         .resource_sub_type =
1267                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1268         .direction = TF_DIR_TX,
1269         .execute_info = {
1270                 .cond_true_goto  = 1,
1271                 .cond_false_goto = 1,
1272                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1273                 .cond_start_idx = 42,
1274                 .cond_nums = 0 },
1275         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1276         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1277         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1278         .key_start_idx = 1516,
1279         .blob_key_bit_size = 14,
1280         .key_bit_size = 14,
1281         .key_num_fields = 3,
1282         .result_start_idx = 793,
1283         .result_bit_size = 138,
1284         .result_num_fields = 7
1285         },
1286         { /* class_tid: 3, , table: em.l2_l3_l4_v6.0 */
1287         .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
1288         .resource_type = TF_MEM_INTERNAL,
1289         .direction = TF_DIR_TX,
1290         .execute_info = {
1291                 .cond_true_goto  = 0,
1292                 .cond_false_goto = 1,
1293                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1294                 .cond_start_idx = 42,
1295                 .cond_nums = 0 },
1296         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1297         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1298         .key_start_idx = 1519,
1299         .blob_key_bit_size = 0,
1300         .key_bit_size = 0,
1301         .key_num_fields = 114,
1302         .result_start_idx = 800,
1303         .result_bit_size = 0,
1304         .result_num_fields = 6
1305         },
1306         { /* class_tid: 3, , table: profile_tcam_cache.rd */
1307         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1308         .resource_sub_type =
1309                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1310         .direction = TF_DIR_TX,
1311         .execute_info = {
1312                 .cond_true_goto  = 1,
1313                 .cond_false_goto = 1,
1314                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1315                 .cond_start_idx = 42,
1316                 .cond_nums = 0 },
1317         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1318         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1319         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1320         .key_start_idx = 1633,
1321         .blob_key_bit_size = 14,
1322         .key_bit_size = 14,
1323         .key_num_fields = 3,
1324         .ident_start_idx = 33,
1325         .ident_nums = 2
1326         },
1327         { /* class_tid: 3, , table: control.gen_tbl_miss */
1328         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1329         .direction = TF_DIR_TX,
1330         .execute_info = {
1331                 .cond_true_goto  = 1,
1332                 .cond_false_goto = 5,
1333                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1334                 .cond_start_idx = 42,
1335                 .cond_nums = 1 },
1336         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1337         .fdb_operand = BNXT_ULP_RF_IDX_RID
1338         },
1339         { /* class_tid: 3, , table: fkb_select.l3_l4_wc */
1340         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1341         .resource_type = TF_TBL_TYPE_WC_FKB,
1342         .direction = TF_DIR_TX,
1343         .execute_info = {
1344                 .cond_true_goto  = 1,
1345                 .cond_false_goto = 1,
1346                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1347                 .cond_start_idx = 43,
1348                 .cond_nums = 0 },
1349         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
1350         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1,
1351         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1352         .result_start_idx = 806,
1353         .result_bit_size = 106,
1354         .result_num_fields = 106
1355         },
1356         { /* class_tid: 3, , table: profile_tcam.l3_l4.ip */
1357         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1358         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1359         .direction = TF_DIR_TX,
1360         .execute_info = {
1361                 .cond_true_goto  = 2,
1362                 .cond_false_goto = 1,
1363                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1364                 .cond_start_idx = 43,
1365                 .cond_nums = 1 },
1366         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1367         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
1368         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1369         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1370         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1371         .pri_operand = 0,
1372         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1373         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1374         .key_start_idx = 1636,
1375         .blob_key_bit_size = 94,
1376         .key_bit_size = 94,
1377         .key_num_fields = 43,
1378         .result_start_idx = 912,
1379         .result_bit_size = 33,
1380         .result_num_fields = 8,
1381         .ident_start_idx = 35,
1382         .ident_nums = 0
1383         },
1384         { /* class_tid: 3, , table: profile_tcam.l3_l4.nonip */
1385         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1386         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1387         .direction = TF_DIR_TX,
1388         .execute_info = {
1389                 .cond_true_goto  = 1,
1390                 .cond_false_goto = 1,
1391                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1392                 .cond_start_idx = 44,
1393                 .cond_nums = 0 },
1394         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1395         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
1396         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1397         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1398         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1399         .pri_operand = 0,
1400         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1401         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1402         .key_start_idx = 1679,
1403         .blob_key_bit_size = 94,
1404         .key_bit_size = 94,
1405         .key_num_fields = 43,
1406         .result_start_idx = 920,
1407         .result_bit_size = 33,
1408         .result_num_fields = 8,
1409         .ident_start_idx = 35,
1410         .ident_nums = 0
1411         },
1412         { /* class_tid: 3, , table: profile_tcam_cache.wr */
1413         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1414         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1415         .resource_sub_type =
1416                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1417         .direction = TF_DIR_TX,
1418         .execute_info = {
1419                 .cond_true_goto  = 1,
1420                 .cond_false_goto = 1,
1421                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1422                 .cond_start_idx = 44,
1423                 .cond_nums = 0 },
1424         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1425         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1426         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1427         .key_start_idx = 1722,
1428         .blob_key_bit_size = 14,
1429         .key_bit_size = 14,
1430         .key_num_fields = 3,
1431         .result_start_idx = 928,
1432         .result_bit_size = 138,
1433         .result_num_fields = 7
1434         },
1435         { /* class_tid: 3, , table: wm.l3_l4.ipv4 */
1436         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1437         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1438         .direction = TF_DIR_TX,
1439         .execute_info = {
1440                 .cond_true_goto  = 0,
1441                 .cond_false_goto = 1,
1442                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1443                 .cond_start_idx = 44,
1444                 .cond_nums = 2 },
1445         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1446         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
1447         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1448         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1449         .pri_operand = 0,
1450         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1451         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1452         .key_start_idx = 1725,
1453         .blob_key_bit_size = 0,
1454         .key_bit_size = 0,
1455         .key_num_fields = 114,
1456         .result_start_idx = 935,
1457         .result_bit_size = 38,
1458         .result_num_fields = 5
1459         },
1460         { /* class_tid: 3, , table: wm.l3.ipv4 */
1461         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1462         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1463         .direction = TF_DIR_TX,
1464         .execute_info = {
1465                 .cond_true_goto  = 0,
1466                 .cond_false_goto = 1,
1467                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1468                 .cond_start_idx = 46,
1469                 .cond_nums = 1 },
1470         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1471         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
1472         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1473         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1474         .pri_operand = 0,
1475         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1476         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1477         .key_start_idx = 1839,
1478         .blob_key_bit_size = 0,
1479         .key_bit_size = 0,
1480         .key_num_fields = 114,
1481         .result_start_idx = 940,
1482         .result_bit_size = 38,
1483         .result_num_fields = 5
1484         },
1485         { /* class_tid: 3, , table: wm.l2 */
1486         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1487         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1488         .direction = TF_DIR_TX,
1489         .execute_info = {
1490                 .cond_true_goto  = 0,
1491                 .cond_false_goto = 0,
1492                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1493                 .cond_start_idx = 47,
1494                 .cond_nums = 0 },
1495         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1496         .tbl_operand = BNXT_ULP_RF_IDX_WC_TCAM_INDEX_0,
1497         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1498         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1499         .pri_operand = 0,
1500         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1501         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
1502         .key_start_idx = 1953,
1503         .blob_key_bit_size = 0,
1504         .key_bit_size = 0,
1505         .key_num_fields = 114,
1506         .result_start_idx = 945,
1507         .result_bit_size = 38,
1508         .result_num_fields = 5
1509         },
1510         { /* class_tid: 4, , table: int_full_act_record.0 */
1511         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1512         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1513         .resource_sub_type =
1514                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
1515         .direction = TF_DIR_RX,
1516         .execute_info = {
1517                 .cond_true_goto  = 1,
1518                 .cond_false_goto = 1,
1519                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1520                 .cond_start_idx = 47,
1521                 .cond_nums = 0 },
1522         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1523         .tbl_operand = BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR,
1524         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1525         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1526         .result_start_idx = 950,
1527         .result_bit_size = 128,
1528         .result_num_fields = 17
1529         },
1530         { /* class_tid: 4, , table: port_table.ing_wr_0 */
1531         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1532         .resource_sub_type =
1533                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE,
1534         .direction = TF_DIR_RX,
1535         .execute_info = {
1536                 .cond_true_goto  = 1,
1537                 .cond_false_goto = 1,
1538                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1539                 .cond_start_idx = 47,
1540                 .cond_nums = 0 },
1541         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1542         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1543         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1544         .key_start_idx = 2067,
1545         .blob_key_bit_size = 10,
1546         .key_bit_size = 10,
1547         .key_num_fields = 1,
1548         .result_start_idx = 967,
1549         .result_bit_size = 152,
1550         .result_num_fields = 5
1551         },
1552         { /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_rd */
1553         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1554         .resource_sub_type =
1555                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1556         .direction = TF_DIR_RX,
1557         .execute_info = {
1558                 .cond_true_goto  = 1,
1559                 .cond_false_goto = 1,
1560                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1561                 .cond_start_idx = 47,
1562                 .cond_nums = 0 },
1563         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1564         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1565         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1566         .key_start_idx = 2068,
1567         .blob_key_bit_size = 8,
1568         .key_bit_size = 8,
1569         .key_num_fields = 1,
1570         .ident_start_idx = 35,
1571         .ident_nums = 0
1572         },
1573         { /* class_tid: 4, , table: control.ing_0 */
1574         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1575         .direction = TF_DIR_RX,
1576         .execute_info = {
1577                 .cond_true_goto  = 1,
1578                 .cond_false_goto = 3,
1579                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1580                 .cond_start_idx = 47,
1581                 .cond_nums = 1 },
1582         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1583         .fdb_operand = BNXT_ULP_RF_IDX_RID
1584         },
1585         { /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
1586         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1587         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1588         .direction = TF_DIR_RX,
1589         .execute_info = {
1590                 .cond_true_goto  = 1,
1591                 .cond_false_goto = 1,
1592                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1593                 .cond_start_idx = 48,
1594                 .cond_nums = 0 },
1595         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1596         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1597         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1598         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1599         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
1600         .pri_operand = 0,
1601         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1602         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1603         .key_start_idx = 2069,
1604         .blob_key_bit_size = 213,
1605         .key_bit_size = 213,
1606         .key_num_fields = 21,
1607         .result_start_idx = 972,
1608         .result_bit_size = 43,
1609         .result_num_fields = 6,
1610         .ident_start_idx = 35,
1611         .ident_nums = 1
1612         },
1613         { /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_wr */
1614         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1615         .resource_sub_type =
1616                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1617         .direction = TF_DIR_RX,
1618         .execute_info = {
1619                 .cond_true_goto  = 1,
1620                 .cond_false_goto = 1,
1621                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1622                 .cond_start_idx = 48,
1623                 .cond_nums = 0 },
1624         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1625         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1626         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1627         .key_start_idx = 2090,
1628         .blob_key_bit_size = 8,
1629         .key_bit_size = 8,
1630         .key_num_fields = 1,
1631         .result_start_idx = 978,
1632         .result_bit_size = 62,
1633         .result_num_fields = 4
1634         },
1635         { /* class_tid: 4, , table: parif_def_arec_ptr.ing_0 */
1636         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1637         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1638         .direction = TF_DIR_RX,
1639         .execute_info = {
1640                 .cond_true_goto  = 1,
1641                 .cond_false_goto = 1,
1642                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1643                 .cond_start_idx = 48,
1644                 .cond_nums = 0 },
1645         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1646         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
1647         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1648         .result_start_idx = 982,
1649         .result_bit_size = 32,
1650         .result_num_fields = 1
1651         },
1652         { /* class_tid: 4, , table: parif_def_err_arec_ptr.ing_0 */
1653         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1654         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1655         .direction = TF_DIR_RX,
1656         .execute_info = {
1657                 .cond_true_goto  = 1,
1658                 .cond_false_goto = 1,
1659                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1660                 .cond_start_idx = 48,
1661                 .cond_nums = 0 },
1662         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1663         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
1664         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1665         .result_start_idx = 983,
1666         .result_bit_size = 32,
1667         .result_num_fields = 1
1668         },
1669         { /* class_tid: 4, , table: int_full_act_record.egr_0 */
1670         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1671         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1672         .resource_sub_type =
1673                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1674         .direction = TF_DIR_TX,
1675         .execute_info = {
1676                 .cond_true_goto  = 1,
1677                 .cond_false_goto = 1,
1678                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1679                 .cond_start_idx = 48,
1680                 .cond_nums = 0 },
1681         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1682         .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
1683         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1684         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1685         .result_start_idx = 984,
1686         .result_bit_size = 128,
1687         .result_num_fields = 17,
1688         .encap_num_fields = 0
1689         },
1690         { /* class_tid: 4, , table: port_table.egr_wr_0 */
1691         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1692         .resource_sub_type =
1693                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE,
1694         .direction = TF_DIR_TX,
1695         .execute_info = {
1696                 .cond_true_goto  = 1,
1697                 .cond_false_goto = 1,
1698                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1699                 .cond_start_idx = 48,
1700                 .cond_nums = 0 },
1701         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1702         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1703         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1704         .key_start_idx = 2091,
1705         .blob_key_bit_size = 10,
1706         .key_bit_size = 10,
1707         .key_num_fields = 1,
1708         .result_start_idx = 1001,
1709         .result_bit_size = 152,
1710         .result_num_fields = 5
1711         },
1712         { /* class_tid: 4, , table: control.egr_0 */
1713         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1714         .direction = TF_DIR_RX,
1715         .execute_info = {
1716                 .cond_true_goto  = 1,
1717                 .cond_false_goto = 5,
1718                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1719                 .cond_start_idx = 48,
1720                 .cond_nums = 1 },
1721         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
1722         },
1723         { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_rd_vfr */
1724         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1725         .resource_sub_type =
1726                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1727         .direction = TF_DIR_TX,
1728         .execute_info = {
1729                 .cond_true_goto  = 1,
1730                 .cond_false_goto = 1,
1731                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1732                 .cond_start_idx = 49,
1733                 .cond_nums = 0 },
1734         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1735         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1736         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1737         .key_start_idx = 2092,
1738         .blob_key_bit_size = 8,
1739         .key_bit_size = 8,
1740         .key_num_fields = 1,
1741         .ident_start_idx = 36,
1742         .ident_nums = 0
1743         },
1744         { /* class_tid: 4, , table: control.egr_1 */
1745         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1746         .direction = TF_DIR_RX,
1747         .execute_info = {
1748                 .cond_true_goto  = 1,
1749                 .cond_false_goto = 0,
1750                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1751                 .cond_start_idx = 49,
1752                 .cond_nums = 1 },
1753         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1754         .fdb_operand = BNXT_ULP_RF_IDX_RID
1755         },
1756         { /* class_tid: 4, , table: ilt_tbl.egr_vfr */
1757         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1758         .resource_type = TF_IF_TBL_TYPE_ILT,
1759         .direction = TF_DIR_TX,
1760         .execute_info = {
1761                 .cond_true_goto  = 1,
1762                 .cond_false_goto = 1,
1763                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1764                 .cond_start_idx = 50,
1765                 .cond_nums = 0 },
1766         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1767         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF,
1768         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1769         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1770         .result_start_idx = 1006,
1771         .result_bit_size = 64,
1772         .result_num_fields = 8
1773         },
1774         { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
1775         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1776         .resource_sub_type =
1777                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1778         .direction = TF_DIR_TX,
1779         .execute_info = {
1780                 .cond_true_goto  = 0,
1781                 .cond_false_goto = 1,
1782                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1783                 .cond_start_idx = 50,
1784                 .cond_nums = 0 },
1785         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1786         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1787         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1788         .key_start_idx = 2093,
1789         .blob_key_bit_size = 8,
1790         .key_bit_size = 8,
1791         .key_num_fields = 1,
1792         .result_start_idx = 1014,
1793         .result_bit_size = 62,
1794         .result_num_fields = 4
1795         },
1796         { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_rd */
1797         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1798         .resource_sub_type =
1799                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1800         .direction = TF_DIR_TX,
1801         .execute_info = {
1802                 .cond_true_goto  = 1,
1803                 .cond_false_goto = 1,
1804                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1805                 .cond_start_idx = 50,
1806                 .cond_nums = 0 },
1807         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1808         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1809         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1810         .key_start_idx = 2094,
1811         .blob_key_bit_size = 8,
1812         .key_bit_size = 8,
1813         .key_num_fields = 1,
1814         .ident_start_idx = 36,
1815         .ident_nums = 0
1816         },
1817         { /* class_tid: 4, , table: control.egr_2 */
1818         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1819         .direction = TF_DIR_RX,
1820         .execute_info = {
1821                 .cond_true_goto  = 1,
1822                 .cond_false_goto = 3,
1823                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1824                 .cond_start_idx = 50,
1825                 .cond_nums = 1 },
1826         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1827         .fdb_operand = BNXT_ULP_RF_IDX_RID
1828         },
1829         { /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
1830         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1831         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1832         .direction = TF_DIR_TX,
1833         .execute_info = {
1834                 .cond_true_goto  = 1,
1835                 .cond_false_goto = 1,
1836                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1837                 .cond_start_idx = 51,
1838                 .cond_nums = 0 },
1839         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1840         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1841         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
1842         .fdb_operand = BNXT_ULP_RF_IDX_RID,
1843         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1844         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
1845         .key_start_idx = 2095,
1846         .blob_key_bit_size = 213,
1847         .key_bit_size = 213,
1848         .key_num_fields = 21,
1849         .result_start_idx = 1018,
1850         .result_bit_size = 43,
1851         .result_num_fields = 6,
1852         .ident_start_idx = 36,
1853         .ident_nums = 1
1854         },
1855         { /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr */
1856         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1857         .resource_sub_type =
1858                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1859         .direction = TF_DIR_TX,
1860         .execute_info = {
1861                 .cond_true_goto  = 1,
1862                 .cond_false_goto = 1,
1863                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1864                 .cond_start_idx = 51,
1865                 .cond_nums = 0 },
1866         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1867         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1868         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1869         .key_start_idx = 2116,
1870         .blob_key_bit_size = 8,
1871         .key_bit_size = 8,
1872         .key_num_fields = 1,
1873         .result_start_idx = 1024,
1874         .result_bit_size = 62,
1875         .result_num_fields = 4
1876         },
1877         { /* class_tid: 4, , table: parif_def_arec_ptr.egr_0 */
1878         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1879         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
1880         .direction = TF_DIR_TX,
1881         .execute_info = {
1882                 .cond_true_goto  = 1,
1883                 .cond_false_goto = 1,
1884                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1885                 .cond_start_idx = 51,
1886                 .cond_nums = 0 },
1887         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1888         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1889         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1890         .result_start_idx = 1028,
1891         .result_bit_size = 32,
1892         .result_num_fields = 1
1893         },
1894         { /* class_tid: 4, , table: parif_def_err_arec_ptr.egr_0 */
1895         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
1896         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
1897         .direction = TF_DIR_TX,
1898         .execute_info = {
1899                 .cond_true_goto  = 0,
1900                 .cond_false_goto = 0,
1901                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1902                 .cond_start_idx = 51,
1903                 .cond_nums = 0 },
1904         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
1905         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF,
1906         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1907         .result_start_idx = 1029,
1908         .result_bit_size = 32,
1909         .result_num_fields = 1
1910         },
1911         { /* class_tid: 5, , table: int_full_act_record.loopback */
1912         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1913         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
1914         .resource_sub_type =
1915                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
1916         .direction = TF_DIR_TX,
1917         .execute_info = {
1918                 .cond_true_goto  = 1,
1919                 .cond_false_goto = 1,
1920                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1921                 .cond_start_idx = 51,
1922                 .cond_nums = 0 },
1923         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
1924         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR,
1925         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
1926         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1927         .result_start_idx = 1030,
1928         .result_bit_size = 128,
1929         .result_num_fields = 17,
1930         .encap_num_fields = 0
1931         },
1932         { /* class_tid: 5, , table: port_table.egr_wr */
1933         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1934         .resource_sub_type =
1935                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PORT_TABLE,
1936         .direction = TF_DIR_TX,
1937         .execute_info = {
1938                 .cond_true_goto  = 1,
1939                 .cond_false_goto = 1,
1940                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1941                 .cond_start_idx = 51,
1942                 .cond_nums = 0 },
1943         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
1944         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1945         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1946         .key_start_idx = 2117,
1947         .blob_key_bit_size = 10,
1948         .key_bit_size = 10,
1949         .key_num_fields = 1,
1950         .result_start_idx = 1047,
1951         .result_bit_size = 152,
1952         .result_num_fields = 5
1953         },
1954         { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_rd_egr */
1955         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
1956         .resource_sub_type =
1957                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1958         .direction = TF_DIR_TX,
1959         .execute_info = {
1960                 .cond_true_goto  = 1,
1961                 .cond_false_goto = 1,
1962                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1963                 .cond_start_idx = 51,
1964                 .cond_nums = 0 },
1965         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
1966         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
1967         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
1968         .key_start_idx = 2118,
1969         .blob_key_bit_size = 8,
1970         .key_bit_size = 8,
1971         .key_num_fields = 1,
1972         .ident_start_idx = 37,
1973         .ident_nums = 0
1974         },
1975         { /* class_tid: 5, , table: control.vf_0 */
1976         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
1977         .direction = TF_DIR_TX,
1978         .execute_info = {
1979                 .cond_true_goto  = 1,
1980                 .cond_false_goto = 3,
1981                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
1982                 .cond_start_idx = 51,
1983                 .cond_nums = 1 },
1984         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
1985         .fdb_operand = BNXT_ULP_RF_IDX_RID
1986         },
1987         { /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
1988         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1989         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1990         .direction = TF_DIR_TX,
1991         .execute_info = {
1992                 .cond_true_goto  = 1,
1993                 .cond_false_goto = 1,
1994                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
1995                 .cond_start_idx = 52,
1996                 .cond_nums = 0 },
1997         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1998         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
1999         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
2000         .fdb_operand = BNXT_ULP_RF_IDX_RID,
2001         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
2002         .pri_operand = 0,
2003         .key_start_idx = 2119,
2004         .blob_key_bit_size = 213,
2005         .key_bit_size = 213,
2006         .key_num_fields = 21,
2007         .result_start_idx = 1052,
2008         .result_bit_size = 43,
2009         .result_num_fields = 6,
2010         .ident_start_idx = 37,
2011         .ident_nums = 1
2012         },
2013         { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_egr_wr */
2014         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
2015         .resource_sub_type =
2016                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2017         .direction = TF_DIR_TX,
2018         .execute_info = {
2019                 .cond_true_goto  = 1,
2020                 .cond_false_goto = 1,
2021                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2022                 .cond_start_idx = 52,
2023                 .cond_nums = 0 },
2024         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
2025         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
2026         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2027         .key_start_idx = 2140,
2028         .blob_key_bit_size = 8,
2029         .key_bit_size = 8,
2030         .key_num_fields = 1,
2031         .result_start_idx = 1058,
2032         .result_bit_size = 62,
2033         .result_num_fields = 4
2034         },
2035         { /* class_tid: 5, , table: parif_def_arec_ptr.vf_egr */
2036         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
2037         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
2038         .direction = TF_DIR_TX,
2039         .execute_info = {
2040                 .cond_true_goto  = 1,
2041                 .cond_false_goto = 1,
2042                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2043                 .cond_start_idx = 52,
2044                 .cond_nums = 0 },
2045         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
2046         .tbl_operand = ULP_THOR_SYM_LOOPBACK_PARIF,
2047         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2048         .result_start_idx = 1062,
2049         .result_bit_size = 32,
2050         .result_num_fields = 1
2051         },
2052         { /* class_tid: 5, , table: parif_def_err_arec_ptr.vf_egr */
2053         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
2054         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
2055         .direction = TF_DIR_TX,
2056         .execute_info = {
2057                 .cond_true_goto  = 1,
2058                 .cond_false_goto = 1,
2059                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2060                 .cond_start_idx = 52,
2061                 .cond_nums = 0 },
2062         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
2063         .tbl_operand = ULP_THOR_SYM_LOOPBACK_PARIF,
2064         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2065         .result_start_idx = 1063,
2066         .result_bit_size = 32,
2067         .result_num_fields = 1
2068         },
2069         { /* class_tid: 5, , table: int_full_act_record.vf_ing */
2070         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
2071         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
2072         .resource_sub_type =
2073                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
2074         .direction = TF_DIR_RX,
2075         .execute_info = {
2076                 .cond_true_goto  = 1,
2077                 .cond_false_goto = 1,
2078                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2079                 .cond_start_idx = 52,
2080                 .cond_nums = 0 },
2081         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
2082         .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
2083         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2084         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG,
2085         .result_start_idx = 1064,
2086         .result_bit_size = 128,
2087         .result_num_fields = 17,
2088         .encap_num_fields = 0
2089         },
2090         { /* class_tid: 5, , table: ilt_tbl.vf_ing */
2091         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
2092         .resource_type = TF_IF_TBL_TYPE_ILT,
2093         .direction = TF_DIR_RX,
2094         .execute_info = {
2095                 .cond_true_goto  = 1,
2096                 .cond_false_goto = 1,
2097                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2098                 .cond_start_idx = 52,
2099                 .cond_nums = 0 },
2100         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
2101         .tbl_operand = BNXT_ULP_CF_IDX_VF_FUNC_SVIF,
2102         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2103         .result_start_idx = 1081,
2104         .result_bit_size = 64,
2105         .result_num_fields = 8
2106         },
2107         { /* class_tid: 5, , table: l2_cntxt_tcam_cache.rd_egr0 */
2108         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
2109         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2110         .resource_sub_type =
2111                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2112         .direction = TF_DIR_TX,
2113         .execute_info = {
2114                 .cond_true_goto  = 1,
2115                 .cond_false_goto = 1,
2116                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2117                 .cond_start_idx = 52,
2118                 .cond_nums = 0 },
2119         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
2120         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
2121         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2122         .key_start_idx = 2141,
2123         .blob_key_bit_size = 8,
2124         .key_bit_size = 8,
2125         .key_num_fields = 1,
2126         .ident_start_idx = 38,
2127         .ident_nums = 0
2128         },
2129         { /* class_tid: 5, , table: control.0 */
2130         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
2131         .direction = TF_DIR_TX,
2132         .execute_info = {
2133                 .cond_true_goto  = 1,
2134                 .cond_false_goto = 3,
2135                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
2136                 .cond_start_idx = 52,
2137                 .cond_nums = 1 },
2138         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
2139         .fdb_operand = BNXT_ULP_RF_IDX_RID
2140         },
2141         { /* class_tid: 5, , table: ilt_tbl.vfr_egr */
2142         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
2143         .resource_type = TF_IF_TBL_TYPE_ILT,
2144         .direction = TF_DIR_TX,
2145         .execute_info = {
2146                 .cond_true_goto  = 1,
2147                 .cond_false_goto = 1,
2148                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2149                 .cond_start_idx = 53,
2150                 .cond_nums = 0 },
2151         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
2152         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_SVIF,
2153         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
2154         .fdb_operand = BNXT_ULP_RF_IDX_RID,
2155         .result_start_idx = 1089,
2156         .result_bit_size = 64,
2157         .result_num_fields = 8
2158         },
2159         { /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
2160         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
2161         .resource_sub_type =
2162                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2163         .direction = TF_DIR_TX,
2164         .execute_info = {
2165                 .cond_true_goto  = 1,
2166                 .cond_false_goto = 1,
2167                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2168                 .cond_start_idx = 53,
2169                 .cond_nums = 0 },
2170         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
2171         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
2172         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2173         .key_start_idx = 2142,
2174         .blob_key_bit_size = 8,
2175         .key_bit_size = 8,
2176         .key_num_fields = 1,
2177         .result_start_idx = 1097,
2178         .result_bit_size = 62,
2179         .result_num_fields = 4
2180         },
2181         { /* class_tid: 5, , table: metadata_record.vfr_egr */
2182         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
2183         .resource_type = TF_TBL_TYPE_METADATA,
2184         .resource_sub_type =
2185                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
2186         .direction = TF_DIR_TX,
2187         .execute_info = {
2188                 .cond_true_goto  = 1,
2189                 .cond_false_goto = 1,
2190                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2191                 .cond_start_idx = 53,
2192                 .cond_nums = 0 },
2193         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
2194         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_METADATA_PROF_0,
2195         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
2196         .result_start_idx = 1101,
2197         .result_bit_size = 16,
2198         .result_num_fields = 1
2199         },
2200         { /* class_tid: 5, , table: mod_record.vfr_egr */
2201         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
2202         .resource_type = TF_TBL_TYPE_ACT_MODIFY_64B,
2203         .resource_sub_type =
2204                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
2205         .direction = TF_DIR_TX,
2206         .execute_info = {
2207                 .cond_true_goto  = 1,
2208                 .cond_false_goto = 1,
2209                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2210                 .cond_start_idx = 53,
2211                 .cond_nums = 0 },
2212         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
2213         .tbl_operand = BNXT_ULP_RF_IDX_MODIFY_PTR,
2214         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2215         .result_start_idx = 1102,
2216         .result_bit_size = 0,
2217         .result_num_fields = 0,
2218         .encap_num_fields = 47
2219         },
2220         { /* class_tid: 5, , table: int_full_act_record.vfr_egr */
2221         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
2222         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
2223         .resource_sub_type =
2224                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
2225         .direction = TF_DIR_TX,
2226         .execute_info = {
2227                 .cond_true_goto  = 1,
2228                 .cond_false_goto = 1,
2229                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2230                 .cond_start_idx = 53,
2231                 .cond_nums = 0 },
2232         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
2233         .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
2234         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2235         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2236         .result_start_idx = 1149,
2237         .result_bit_size = 128,
2238         .result_num_fields = 17
2239         },
2240         { /* class_tid: 5, , table: l2_cntxt_tcam_cache.ing_rd_vfr */
2241         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
2242         .resource_sub_type =
2243                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2244         .direction = TF_DIR_RX,
2245         .execute_info = {
2246                 .cond_true_goto  = 1,
2247                 .cond_false_goto = 1,
2248                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2249                 .cond_start_idx = 53,
2250                 .cond_nums = 0 },
2251         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_READ,
2252         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
2253         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2254         .key_start_idx = 2143,
2255         .blob_key_bit_size = 8,
2256         .key_bit_size = 8,
2257         .key_num_fields = 1,
2258         .ident_start_idx = 38,
2259         .ident_nums = 0
2260         },
2261         { /* class_tid: 5, , table: control.ing_rd_vfr */
2262         .resource_func = BNXT_ULP_RESOURCE_FUNC_CTRL_TABLE,
2263         .direction = TF_DIR_TX,
2264         .execute_info = {
2265                 .cond_true_goto  = 1,
2266                 .cond_false_goto = 5,
2267                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_AND,
2268                 .cond_start_idx = 53,
2269                 .cond_nums = 1 },
2270         .fdb_opcode = BNXT_ULP_FDB_OPC_ALLOC_RID_REGFILE,
2271         .fdb_operand = BNXT_ULP_RF_IDX_RID
2272         },
2273         { /* class_tid: 5, , table: l2_cntxt_tcam.vfr_ing0 */
2274         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2275         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2276         .direction = TF_DIR_RX,
2277         .execute_info = {
2278                 .cond_true_goto  = 1,
2279                 .cond_false_goto = 1,
2280                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2281                 .cond_start_idx = 54,
2282                 .cond_nums = 0 },
2283         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2284         .tbl_operand = BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0,
2285         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
2286         .fdb_operand = BNXT_ULP_RF_IDX_RID,
2287         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
2288         .pri_operand = 0,
2289         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2290         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
2291         .key_start_idx = 2144,
2292         .blob_key_bit_size = 213,
2293         .key_bit_size = 213,
2294         .key_num_fields = 21,
2295         .result_start_idx = 1166,
2296         .result_bit_size = 43,
2297         .result_num_fields = 6,
2298         .ident_start_idx = 38,
2299         .ident_nums = 0
2300         },
2301         { /* class_tid: 5, , table: fkb_select.vfr_em */
2302         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
2303         .resource_type = TF_TBL_TYPE_EM_FKB,
2304         .direction = TF_DIR_RX,
2305         .execute_info = {
2306                 .cond_true_goto  = 1,
2307                 .cond_false_goto = 1,
2308                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2309                 .cond_start_idx = 54,
2310                 .cond_nums = 0 },
2311         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
2312         .tbl_operand = BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0,
2313         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP,
2314         .result_start_idx = 1172,
2315         .result_bit_size = 106,
2316         .result_num_fields = 106
2317         },
2318         { /* class_tid: 5, , table: profile_tcam.vfr_ing0 */
2319         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2320         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2321         .direction = TF_DIR_RX,
2322         .execute_info = {
2323                 .cond_true_goto  = 1,
2324                 .cond_false_goto = 1,
2325                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2326                 .cond_start_idx = 54,
2327                 .cond_nums = 0 },
2328         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2329         .tbl_operand = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
2330         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_RID_REGFILE,
2331         .fdb_operand = BNXT_ULP_RF_IDX_RID,
2332         .pri_opcode  = BNXT_ULP_PRI_OPC_CONST,
2333         .pri_operand = 0,
2334         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2335         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO,
2336         .key_start_idx = 2165,
2337         .blob_key_bit_size = 94,
2338         .key_bit_size = 94,
2339         .key_num_fields = 43,
2340         .result_start_idx = 1278,
2341         .result_bit_size = 33,
2342         .result_num_fields = 8
2343         },
2344         { /* class_tid: 5, , table: l2_cntxt_tcam_cache.ing_wr_vfr */
2345         .resource_func = BNXT_ULP_RESOURCE_FUNC_GENERIC_TABLE,
2346         .resource_sub_type =
2347                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2348         .direction = TF_DIR_RX,
2349         .execute_info = {
2350                 .cond_true_goto  = 1,
2351                 .cond_false_goto = 1,
2352                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2353                 .cond_start_idx = 54,
2354                 .cond_nums = 0 },
2355         .tbl_opcode = BNXT_ULP_GENERIC_TBL_OPC_WRITE,
2356         .gen_tbl_lkup_type = BNXT_ULP_GENERIC_TBL_LKUP_TYPE_INDEX,
2357         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2358         .key_start_idx = 2208,
2359         .blob_key_bit_size = 8,
2360         .key_bit_size = 8,
2361         .key_num_fields = 1,
2362         .result_start_idx = 1286,
2363         .result_bit_size = 62,
2364         .result_num_fields = 4
2365         },
2366         { /* class_tid: 5, , table: int_full_act_record.vfr_ing0 */
2367         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
2368         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
2369         .resource_sub_type =
2370                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
2371         .direction = TF_DIR_RX,
2372         .execute_info = {
2373                 .cond_true_goto  = 1,
2374                 .cond_false_goto = 1,
2375                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2376                 .cond_start_idx = 54,
2377                 .cond_nums = 0 },
2378         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
2379         .tbl_operand = BNXT_ULP_RF_IDX_MAIN_ACTION_PTR,
2380         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2381         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2382         .result_start_idx = 1290,
2383         .result_bit_size = 128,
2384         .result_num_fields = 17
2385         },
2386         { /* class_tid: 5, , table: em.vfr.0 */
2387         .resource_func = BNXT_ULP_RESOURCE_FUNC_EM_TABLE,
2388         .resource_type = TF_MEM_INTERNAL,
2389         .direction = TF_DIR_RX,
2390         .execute_info = {
2391                 .cond_true_goto  = 0,
2392                 .cond_false_goto = 0,
2393                 .cond_list_opcode = BNXT_ULP_COND_LIST_OPC_TRUE,
2394                 .cond_start_idx = 54,
2395                 .cond_nums = 0 },
2396         .fdb_opcode = BNXT_ULP_FDB_OPC_PUSH_FID,
2397         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES,
2398         .key_start_idx = 2209,
2399         .blob_key_bit_size = 0,
2400         .key_bit_size = 0,
2401         .key_num_fields = 114,
2402         .result_start_idx = 1307,
2403         .result_bit_size = 0,
2404         .result_num_fields = 6
2405         }
2406 };
2407
2408 struct bnxt_ulp_mapper_cond_info ulp_thor_class_cond_list[] = {
2409         /* cond_execute: class_tid: 1, l2_cntxt_tcam_cache.rd */
2410         {
2411         .cond_opcode = BNXT_ULP_COND_OPC_FIELD_BIT_NOT_SET,
2412         .cond_operand = BNXT_ULP_GLB_HF_ID_O_ETH_DMAC
2413         },
2414         /* cond_execute: class_tid: 1, control.0 */
2415         {
2416         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2417         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2418         },
2419         /* cond_execute: class_tid: 1, control.ipv6_check */
2420         {
2421         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2422         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
2423         },
2424         /* cond_execute: class_tid: 1, profile_tcam_cache.ipv6_rd */
2425         {
2426         .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
2427         .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
2428         },
2429         /* cond_execute: class_tid: 1, control.ipv6_prof_cache_check */
2430         {
2431         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2432         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2433         },
2434         /* cond_execute: class_tid: 1, control.v6_conflict_check */
2435         {
2436         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2437         .cond_operand = BNXT_ULP_RF_IDX_CC
2438         },
2439         /* cond_execute: class_tid: 1, profile_tcam.l2_l3_l4_v6_em */
2440         {
2441         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2442         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2443         },
2444         /* cond_execute: class_tid: 1, control.gen_tbl_miss */
2445         {
2446         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2447         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2448         },
2449         /* cond_execute: class_tid: 1, fkb_select.l3_l4_wm */
2450         {
2451         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2452         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2453         },
2454         /* cond_execute: class_tid: 1, fkb_select.l3_l4_wm_vxlan */
2455         {
2456         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2457         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2458         },
2459         /* cond_execute: class_tid: 1, profile_tcam.l3_l4.ip */
2460         {
2461         .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2462         .cond_operand = BNXT_ULP_CF_IDX_O_L3
2463         },
2464         {
2465         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2466         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2467         },
2468         /* cond_execute: class_tid: 1, profile_tcam.l3_l4.vxlan */
2469         {
2470         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2471         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2472         },
2473         /* cond_execute: class_tid: 1, wm.l3_l4.ipv4 */
2474         {
2475         .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2476         .cond_operand = BNXT_ULP_CF_IDX_O_L4
2477         },
2478         {
2479         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2480         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2481         },
2482         {
2483         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2484         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2485         },
2486         /* cond_execute: class_tid: 1, wm.l3_l4.ipv6 */
2487         {
2488         .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2489         .cond_operand = BNXT_ULP_CF_IDX_O_L4
2490         },
2491         {
2492         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2493         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
2494         },
2495         {
2496         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2497         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2498         },
2499         /* cond_execute: class_tid: 1, wm.l3.ipv4 */
2500         {
2501         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2502         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2503         },
2504         {
2505         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2506         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2507         },
2508         /* cond_execute: class_tid: 1, wm.l3.ipv6 */
2509         {
2510         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2511         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
2512         },
2513         {
2514         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2515         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2516         },
2517         /* cond_execute: class_tid: 1, wm.l2 */
2518         {
2519         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_NOT_SET,
2520         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2521         },
2522         /* cond_execute: class_tid: 1, wm.l3_l4.vxlan.ipv4 */
2523         {
2524         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2525         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2526         },
2527         {
2528         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2529         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2530         },
2531         /* cond_execute: class_tid: 1, wm.l3_l4.vxlan.ipv6 */
2532         {
2533         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2534         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2535         },
2536         {
2537         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2538         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
2539         },
2540         /* cond_execute: class_tid: 2, control.tunnel_cache_check */
2541         {
2542         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2543         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2544         },
2545         /* cond_execute: class_tid: 2, control.flow_type_check */
2546         {
2547         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2548         .cond_operand = BNXT_ULP_HDR_BIT_F1
2549         },
2550         /* cond_execute: class_tid: 2, control.mac_addr_cache_check */
2551         {
2552         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2553         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2554         },
2555         /* cond_execute: class_tid: 2, control.ipv6_check */
2556         {
2557         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2558         .cond_operand = BNXT_ULP_HDR_BIT_I_IPV6
2559         },
2560         /* cond_execute: class_tid: 2, profile_tcam_cache.f2_ipv6_rd */
2561         {
2562         .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
2563         .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
2564         },
2565         /* cond_execute: class_tid: 2, control.f2_ipv6_prof_cache_check */
2566         {
2567         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2568         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2569         },
2570         /* cond_execute: class_tid: 2, control.f2_v6_conflict_check */
2571         {
2572         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2573         .cond_operand = BNXT_ULP_RF_IDX_CC
2574         },
2575         /* cond_execute: class_tid: 2, control.profile_tcam_cache.f2_check */
2576         {
2577         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2578         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2579         },
2580         /* cond_execute: class_tid: 2, fkb_select.f2_wm */
2581         {
2582         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2583         .cond_operand = BNXT_ULP_HDR_BIT_T_VXLAN
2584         },
2585         /* cond_execute: class_tid: 2, wm.l3_l4.ipv4 */
2586         {
2587         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2588         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2589         },
2590         /* cond_execute: class_tid: 3, control.ipv6_check */
2591         {
2592         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2593         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV6
2594         },
2595         /* cond_execute: class_tid: 3, profile_tcam_cache.ipv6_rd */
2596         {
2597         .cond_opcode = BNXT_ULP_COND_OPC_CF_NOT_SET,
2598         .cond_operand = BNXT_ULP_CF_IDX_WC_MATCH
2599         },
2600         /* cond_execute: class_tid: 3, control.ipv6_prof_cache_check */
2601         {
2602         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2603         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2604         },
2605         /* cond_execute: class_tid: 3, control.v6_conflict_check */
2606         {
2607         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2608         .cond_operand = BNXT_ULP_RF_IDX_CC
2609         },
2610         /* cond_execute: class_tid: 3, control.gen_tbl_miss */
2611         {
2612         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2613         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2614         },
2615         /* cond_execute: class_tid: 3, profile_tcam.l3_l4.ip */
2616         {
2617         .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2618         .cond_operand = BNXT_ULP_CF_IDX_O_L3
2619         },
2620         /* cond_execute: class_tid: 3, wm.l3_l4.ipv4 */
2621         {
2622         .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2623         .cond_operand = BNXT_ULP_CF_IDX_O_L4
2624         },
2625         {
2626         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2627         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2628         },
2629         /* cond_execute: class_tid: 3, wm.l3.ipv4 */
2630         {
2631         .cond_opcode = BNXT_ULP_COND_OPC_HDR_BIT_IS_SET,
2632         .cond_operand = BNXT_ULP_HDR_BIT_O_IPV4
2633         },
2634         /* cond_execute: class_tid: 4, control.ing_0 */
2635         {
2636         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2637         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2638         },
2639         /* cond_execute: class_tid: 4, control.egr_0 */
2640         {
2641         .cond_opcode = BNXT_ULP_COND_OPC_CF_IS_SET,
2642         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE
2643         },
2644         /* cond_execute: class_tid: 4, control.egr_1 */
2645         {
2646         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2647         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2648         },
2649         /* cond_execute: class_tid: 4, control.egr_2 */
2650         {
2651         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2652         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2653         },
2654         /* cond_execute: class_tid: 5, control.vf_0 */
2655         {
2656         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2657         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2658         },
2659         /* cond_execute: class_tid: 5, control.0 */
2660         {
2661         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2662         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2663         },
2664         /* cond_execute: class_tid: 5, control.ing_rd_vfr */
2665         {
2666         .cond_opcode = BNXT_ULP_COND_OPC_RF_IS_SET,
2667         .cond_operand = BNXT_ULP_RF_IDX_GENERIC_TBL_MISS
2668         }
2669 };
2670
2671 struct bnxt_ulp_mapper_key_info ulp_thor_class_key_info_list[] = {
2672         /* class_tid: 1, , table: port_table.rd */
2673         {
2674         .field_info_mask = {
2675                 .description = "dev.port_id",
2676                 .field_bit_size = 10,
2677                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2678                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
2679                 .field_opr1 = {
2680                         0xff,
2681                         0xff}
2682                 },
2683         .field_info_spec = {
2684                 .description = "dev.port_id",
2685                 .field_bit_size = 10,
2686                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2687                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
2688                 .field_opr1 = {
2689                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
2690                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
2691                 }
2692         },
2693         /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
2694         {
2695         .field_info_mask = {
2696                 .description = "svif",
2697                 .field_bit_size = 8,
2698                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2699                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2700                 .field_opr1 = {
2701                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2702                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2703                 },
2704         .field_info_spec = {
2705                 .description = "svif",
2706                 .field_bit_size = 8,
2707                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2708                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2709                 .field_opr1 = {
2710                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2711                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2712                 }
2713         },
2714         /* class_tid: 1, , table: mac_addr_cache.rd */
2715         {
2716         .field_info_mask = {
2717                 .description = "svif",
2718                 .field_bit_size = 8,
2719                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2720                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2721                 .field_opr1 = {
2722                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2723                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2724                 },
2725         .field_info_spec = {
2726                 .description = "svif",
2727                 .field_bit_size = 8,
2728                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2729                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2730                 .field_opr1 = {
2731                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
2732                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
2733                 }
2734         },
2735         {
2736         .field_info_mask = {
2737                 .description = "tun_hdr",
2738                 .field_bit_size = 4,
2739                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2740                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2741                 .field_opr1 = {
2742                 ULP_THOR_SYM_TUN_HDR_TYPE_NONE}
2743                 },
2744         .field_info_spec = {
2745                 .description = "tun_hdr",
2746                 .field_bit_size = 4,
2747                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2748                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
2749                 .field_opr1 = {
2750                 ULP_THOR_SYM_TUN_HDR_TYPE_NONE}
2751                 }
2752         },
2753         {
2754         .field_info_mask = {
2755                 .description = "one_tag",
2756                 .field_bit_size = 1,
2757                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2758                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2759                 },
2760         .field_info_spec = {
2761                 .description = "one_tag",
2762                 .field_bit_size = 1,
2763                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2764                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2765                 }
2766         },
2767         {
2768         .field_info_mask = {
2769                 .description = "vid",
2770                 .field_bit_size = 12,
2771                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2772                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2773                 },
2774         .field_info_spec = {
2775                 .description = "vid",
2776                 .field_bit_size = 12,
2777                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2778                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2779                 }
2780         },
2781         {
2782         .field_info_mask = {
2783                 .description = "mac_addr",
2784                 .field_bit_size = 48,
2785                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2786                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2787                 .field_opr1 = {
2788                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2789                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2790                 },
2791         .field_info_spec = {
2792                 .description = "mac_addr",
2793                 .field_bit_size = 48,
2794                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2795                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2796                 .field_opr1 = {
2797                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2798                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2799                 }
2800         },
2801         /* class_tid: 1, , table: l2_cntxt_tcam.0 */
2802         {
2803         .field_info_mask = {
2804                 .description = "etype",
2805                 .field_bit_size = 16,
2806                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2807                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2808                 },
2809         .field_info_spec = {
2810                 .description = "etype",
2811                 .field_bit_size = 16,
2812                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2813                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2814                 }
2815         },
2816         {
2817         .field_info_mask = {
2818                 .description = "l2_ivlan_tpid_sel",
2819                 .field_bit_size = 3,
2820                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2821                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2822                 },
2823         .field_info_spec = {
2824                 .description = "l2_ivlan_tpid_sel",
2825                 .field_bit_size = 3,
2826                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2827                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2828                 }
2829         },
2830         {
2831         .field_info_mask = {
2832                 .description = "l2_ivlan_vid",
2833                 .field_bit_size = 12,
2834                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2835                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2836                 },
2837         .field_info_spec = {
2838                 .description = "l2_ivlan_vid",
2839                 .field_bit_size = 12,
2840                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2841                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2842                 }
2843         },
2844         {
2845         .field_info_mask = {
2846                 .description = "l2_ovlan_tpid_sel",
2847                 .field_bit_size = 3,
2848                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2849                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2850                 },
2851         .field_info_spec = {
2852                 .description = "l2_ovlan_tpid_sel",
2853                 .field_bit_size = 3,
2854                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2855                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2856                 }
2857         },
2858         {
2859         .field_info_mask = {
2860                 .description = "l2_ovlan_vid",
2861                 .field_bit_size = 12,
2862                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2863                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2864                 },
2865         .field_info_spec = {
2866                 .description = "l2_ovlan_vid",
2867                 .field_bit_size = 12,
2868                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2869                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2870                 }
2871         },
2872         {
2873         .field_info_mask = {
2874                 .description = "two_vtags",
2875                 .field_bit_size = 1,
2876                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2877                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2878                 },
2879         .field_info_spec = {
2880                 .description = "two_vtags",
2881                 .field_bit_size = 1,
2882                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2883                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2884                 }
2885         },
2886         {
2887         .field_info_mask = {
2888                 .description = "vtag_present",
2889                 .field_bit_size = 1,
2890                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2891                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2892                 },
2893         .field_info_spec = {
2894                 .description = "vtag_present",
2895                 .field_bit_size = 1,
2896                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2897                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2898                 }
2899         },
2900         {
2901         .field_info_mask = {
2902                 .description = "mac1_addr",
2903                 .field_bit_size = 48,
2904                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2905                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2906                 },
2907         .field_info_spec = {
2908                 .description = "mac1_addr",
2909                 .field_bit_size = 48,
2910                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2911                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2912                 }
2913         },
2914         {
2915         .field_info_mask = {
2916                 .description = "mac0_addr",
2917                 .field_bit_size = 48,
2918                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2919                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2920                 .field_opr1 = {
2921                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2922                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2923                 },
2924         .field_info_spec = {
2925                 .description = "mac0_addr",
2926                 .field_bit_size = 48,
2927                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2928                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
2929                 .field_opr1 = {
2930                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
2931                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
2932                 }
2933         },
2934         {
2935         .field_info_mask = {
2936                 .description = "tunnel_id",
2937                 .field_bit_size = 24,
2938                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2939                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2940                 },
2941         .field_info_spec = {
2942                 .description = "tunnel_id",
2943                 .field_bit_size = 24,
2944                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2945                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2946                 }
2947         },
2948         {
2949         .field_info_mask = {
2950                 .description = "tun_hdr_type",
2951                 .field_bit_size = 4,
2952                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2953                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2954                 },
2955         .field_info_spec = {
2956                 .description = "tun_hdr_type",
2957                 .field_bit_size = 4,
2958                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2959                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2960                 }
2961         },
2962         {
2963         .field_info_mask = {
2964                 .description = "llc",
2965                 .field_bit_size = 1,
2966                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2967                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2968                 },
2969         .field_info_spec = {
2970                 .description = "llc",
2971                 .field_bit_size = 1,
2972                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2973                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2974                 }
2975         },
2976         {
2977         .field_info_mask = {
2978                 .description = "roce",
2979                 .field_bit_size = 1,
2980                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2981                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2982                 },
2983         .field_info_spec = {
2984                 .description = "roce",
2985                 .field_bit_size = 1,
2986                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2987                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2988                 }
2989         },
2990         {
2991         .field_info_mask = {
2992                 .description = "metadata",
2993                 .field_bit_size = 16,
2994                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
2995                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
2996                 },
2997         .field_info_spec = {
2998                 .description = "metadata",
2999                 .field_bit_size = 16,
3000                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3001                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3002                 }
3003         },
3004         {
3005         .field_info_mask = {
3006                 .description = "svif",
3007                 .field_bit_size = 11,
3008                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3009                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
3010                 .field_opr1 = {
3011                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
3012                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
3013                 },
3014         .field_info_spec = {
3015                 .description = "svif",
3016                 .field_bit_size = 11,
3017                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3018                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
3019                 .field_opr1 = {
3020                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
3021                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
3022                 }
3023         },
3024         {
3025         .field_info_mask = {
3026                 .description = "parif",
3027                 .field_bit_size = 4,
3028                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3029                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3030                 },
3031         .field_info_spec = {
3032                 .description = "parif",
3033                 .field_bit_size = 4,
3034                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3035                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3036                 }
3037         },
3038         {
3039         .field_info_mask = {
3040                 .description = "spif",
3041                 .field_bit_size = 2,
3042                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3043                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3044                 },
3045         .field_info_spec = {
3046                 .description = "spif",
3047                 .field_bit_size = 2,
3048                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3049                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3050                 }
3051         },
3052         {
3053         .field_info_mask = {
3054                 .description = "loopback",
3055                 .field_bit_size = 1,
3056                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3057                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3058                 },
3059         .field_info_spec = {
3060                 .description = "loopback",
3061                 .field_bit_size = 1,
3062                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3063                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3064                 }
3065         },
3066         {
3067         .field_info_mask = {
3068                 .description = "recycle_cnt",
3069                 .field_bit_size = 2,
3070                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3071                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3072                 },
3073         .field_info_spec = {
3074                 .description = "recycle_cnt",
3075                 .field_bit_size = 2,
3076                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3077                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3078                 }
3079         },
3080         {
3081         .field_info_mask = {
3082                 .description = "mpass_cnt",
3083                 .field_bit_size = 2,
3084                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3085                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3086                 .field_opr1 = {
3087                 2}
3088                 },
3089         .field_info_spec = {
3090                 .description = "mpass_cnt",
3091                 .field_bit_size = 2,
3092                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3093                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3094                 }
3095         },
3096         {
3097         .field_info_mask = {
3098                 .description = "valid",
3099                 .field_bit_size = 1,
3100                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3101                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3102                 .field_opr1 = {
3103                 1}
3104                 },
3105         .field_info_spec = {
3106                 .description = "valid",
3107                 .field_bit_size = 1,
3108                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3109                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3110                 .field_opr1 = {
3111                 1}
3112                 }
3113         },
3114         /* class_tid: 1, , table: mac_addr_cache.wr */
3115         {
3116         .field_info_mask = {
3117                 .description = "svif",
3118                 .field_bit_size = 8,
3119                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3120                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
3121                 .field_opr1 = {
3122                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
3123                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
3124                 },
3125         .field_info_spec = {
3126                 .description = "svif",
3127                 .field_bit_size = 8,
3128                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3129                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
3130                 .field_opr1 = {
3131                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
3132                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
3133                 }
3134         },
3135         {
3136         .field_info_mask = {
3137                 .description = "tun_hdr",
3138                 .field_bit_size = 4,
3139                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3140                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3141                 .field_opr1 = {
3142                 ULP_THOR_SYM_TUN_HDR_TYPE_NONE}
3143                 },
3144         .field_info_spec = {
3145                 .description = "tun_hdr",
3146                 .field_bit_size = 4,
3147                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3148                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3149                 .field_opr1 = {
3150                 ULP_THOR_SYM_TUN_HDR_TYPE_NONE}
3151                 }
3152         },
3153         {
3154         .field_info_mask = {
3155                 .description = "one_tag",
3156                 .field_bit_size = 1,
3157                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3158                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3159                 },
3160         .field_info_spec = {
3161                 .description = "one_tag",
3162                 .field_bit_size = 1,
3163                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3164                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3165                 }
3166         },
3167         {
3168         .field_info_mask = {
3169                 .description = "vid",
3170                 .field_bit_size = 12,
3171                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3172                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3173                 },
3174         .field_info_spec = {
3175                 .description = "vid",
3176                 .field_bit_size = 12,
3177                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3178                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3179                 }
3180         },
3181         {
3182         .field_info_mask = {
3183                 .description = "mac_addr",
3184                 .field_bit_size = 48,
3185                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3186                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
3187                 .field_opr1 = {
3188                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3189                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
3190                 },
3191         .field_info_spec = {
3192                 .description = "mac_addr",
3193                 .field_bit_size = 48,
3194                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3195                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
3196                 .field_opr1 = {
3197                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3198                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
3199                 }
3200         },
3201         /* class_tid: 1, , table: profile_tcam_cache.ipv6_rd */
3202         {
3203         .field_info_mask = {
3204                 .description = "recycle_cnt",
3205                 .field_bit_size = 2,
3206                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3207                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3208                 },
3209         .field_info_spec = {
3210                 .description = "recycle_cnt",
3211                 .field_bit_size = 2,
3212                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3213                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3214                 }
3215         },
3216         {
3217         .field_info_mask = {
3218                 .description = "prof_func_id",
3219                 .field_bit_size = 7,
3220                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3221                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3222                 .field_opr1 = {
3223                         0xff}
3224                 },
3225         .field_info_spec = {
3226                 .description = "prof_func_id",
3227                 .field_bit_size = 7,
3228                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3229                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
3230                 .field_opr1 = {
3231                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3232                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
3233                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3234                 .field_opr2 = {
3235                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3236                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3237                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3238                 .field_opr3 = {
3239                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3240                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3241                 }
3242         },
3243         {
3244         .field_info_mask = {
3245                 .description = "hdr_sig_id",
3246                 .field_bit_size = 5,
3247                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3248                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3249                 .field_opr1 = {
3250                         0xff}
3251                 },
3252         .field_info_spec = {
3253                 .description = "hdr_sig_id",
3254                 .field_bit_size = 5,
3255                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3256                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3257                 .field_opr1 = {
3258                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
3259                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
3260                 }
3261         },
3262         /* class_tid: 1, , table: profile_tcam.l2_l3_l4_v6_em */
3263         {
3264         .field_info_mask = {
3265                 .description = "l4_hdr_is_udp_tcp",
3266                 .field_bit_size = 1,
3267                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3268                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3269                 },
3270         .field_info_spec = {
3271                 .description = "l4_hdr_is_udp_tcp",
3272                 .field_bit_size = 1,
3273                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3274                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3275                 }
3276         },
3277         {
3278         .field_info_mask = {
3279                 .description = "l4_hdr_type",
3280                 .field_bit_size = 4,
3281                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3282                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3283                 .field_opr1 = {
3284                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3285                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
3286                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
3287                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
3288                 },
3289         .field_info_spec = {
3290                 .description = "l4_hdr_type",
3291                 .field_bit_size = 4,
3292                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3293                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
3294                 .field_opr1 = {
3295                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
3296                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
3297                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
3298                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
3299                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
3300                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
3301                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
3302                 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
3303                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
3304                 .field_opr2 = {
3305                         ULP_THOR_SYM_L4_HDR_TYPE_TCP},
3306                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
3307                 .field_opr3 = {
3308                 ULP_THOR_SYM_L4_HDR_TYPE_UDP}
3309                 }
3310         },
3311         {
3312         .field_info_mask = {
3313                 .description = "l4_hdr_error",
3314                 .field_bit_size = 1,
3315                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3316                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3317                 .field_opr1 = {
3318                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3319                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3320                 },
3321         .field_info_spec = {
3322                 .description = "l4_hdr_error",
3323                 .field_bit_size = 1,
3324                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3325                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3326                 }
3327         },
3328         {
3329         .field_info_mask = {
3330                 .description = "l4_hdr_valid",
3331                 .field_bit_size = 1,
3332                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3333                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3334                 .field_opr1 = {
3335                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3336                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3337                 },
3338         .field_info_spec = {
3339                 .description = "l4_hdr_valid",
3340                 .field_bit_size = 1,
3341                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3342                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
3343                 .field_opr1 = {
3344                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
3345                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
3346                 }
3347         },
3348         {
3349         .field_info_mask = {
3350                 .description = "ieh",
3351                 .field_bit_size = 8,
3352                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3353                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3354                 },
3355         .field_info_spec = {
3356                 .description = "ieh",
3357                 .field_bit_size = 8,
3358                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3359                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3360                 }
3361         },
3362         {
3363         .field_info_mask = {
3364                 .description = "l3_ipv6_cmp_dst",
3365                 .field_bit_size = 1,
3366                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3367                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3368                 },
3369         .field_info_spec = {
3370                 .description = "l3_ipv6_cmp_dst",
3371                 .field_bit_size = 1,
3372                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3373                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3374                 }
3375         },
3376         {
3377         .field_info_mask = {
3378                 .description = "l3_ipv6_cmp_src",
3379                 .field_bit_size = 1,
3380                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3381                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3382                 },
3383         .field_info_spec = {
3384                 .description = "l3_ipv6_cmp_src",
3385                 .field_bit_size = 1,
3386                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3387                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3388                 }
3389         },
3390         {
3391         .field_info_mask = {
3392                 .description = "l3_hdr_isIP",
3393                 .field_bit_size = 1,
3394                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3395                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3396                 },
3397         .field_info_spec = {
3398                 .description = "l3_hdr_isIP",
3399                 .field_bit_size = 1,
3400                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3401                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3402                 }
3403         },
3404         {
3405         .field_info_mask = {
3406                 .description = "l3_hdr_type",
3407                 .field_bit_size = 4,
3408                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3409                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3410                 .field_opr1 = {
3411                         0xff}
3412                 },
3413         .field_info_spec = {
3414                 .description = "l3_hdr_type",
3415                 .field_bit_size = 4,
3416                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3417                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3418                 .field_opr1 = {
3419                 ULP_THOR_SYM_L3_HDR_TYPE_IPV6}
3420                 }
3421         },
3422         {
3423         .field_info_mask = {
3424                 .description = "l3_hdr_error",
3425                 .field_bit_size = 1,
3426                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3427                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3428                 .field_opr1 = {
3429                         0xff}
3430                 },
3431         .field_info_spec = {
3432                 .description = "l3_hdr_error",
3433                 .field_bit_size = 1,
3434                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3435                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3436                 }
3437         },
3438         {
3439         .field_info_mask = {
3440                 .description = "l3_hdr_valid",
3441                 .field_bit_size = 1,
3442                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3443                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3444                 .field_opr1 = {
3445                         0xff}
3446                 },
3447         .field_info_spec = {
3448                 .description = "l3_hdr_valid",
3449                 .field_bit_size = 1,
3450                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3451                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3452                 .field_opr1 = {
3453                 ULP_THOR_SYM_L3_HDR_VALID_YES}
3454                 }
3455         },
3456         {
3457         .field_info_mask = {
3458                 .description = "l2_two_vtags",
3459                 .field_bit_size = 1,
3460                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3461                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3462                 },
3463         .field_info_spec = {
3464                 .description = "l2_two_vtags",
3465                 .field_bit_size = 1,
3466                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3467                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3468                 }
3469         },
3470         {
3471         .field_info_mask = {
3472                 .description = "l2_vtag_present",
3473                 .field_bit_size = 1,
3474                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3475                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3476                 .field_opr1 = {
3477                         0xff}
3478                 },
3479         .field_info_spec = {
3480                 .description = "l2_vtag_present",
3481                 .field_bit_size = 1,
3482                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3483                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
3484                 .field_opr1 = {
3485                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
3486                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
3487                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
3488                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
3489                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
3490                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
3491                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
3492                 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
3493                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
3494                 .field_opr2 = {
3495                         ULP_THOR_SYM_L2_VTAG_PRESENT_YES},
3496                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
3497                 .field_opr3 = {
3498                 ULP_THOR_SYM_L2_VTAG_PRESENT_NO}
3499                 }
3500         },
3501         {
3502         .field_info_mask = {
3503                 .description = "l2_uc_mc_bc",
3504                 .field_bit_size = 2,
3505                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3506                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3507                 .field_opr1 = {
3508                         0xff}
3509                 },
3510         .field_info_spec = {
3511                 .description = "l2_uc_mc_bc",
3512                 .field_bit_size = 2,
3513                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3514                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3515                 }
3516         },
3517         {
3518         .field_info_mask = {
3519                 .description = "l2_hdr_type",
3520                 .field_bit_size = 2,
3521                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3522                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3523                 .field_opr1 = {
3524                         0xff}
3525                 },
3526         .field_info_spec = {
3527                 .description = "l2_hdr_type",
3528                 .field_bit_size = 2,
3529                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3530                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3531                 }
3532         },
3533         {
3534         .field_info_mask = {
3535                 .description = "l2_hdr_error",
3536                 .field_bit_size = 1,
3537                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3538                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3539                 .field_opr1 = {
3540                         0xff}
3541                 },
3542         .field_info_spec = {
3543                 .description = "l2_hdr_error",
3544                 .field_bit_size = 1,
3545                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3546                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3547                 }
3548         },
3549         {
3550         .field_info_mask = {
3551                 .description = "l2_hdr_valid",
3552                 .field_bit_size = 1,
3553                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3554                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3555                 .field_opr1 = {
3556                         0xff}
3557                 },
3558         .field_info_spec = {
3559                 .description = "l2_hdr_valid",
3560                 .field_bit_size = 1,
3561                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3562                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3563                 .field_opr1 = {
3564                 ULP_THOR_SYM_L2_HDR_VALID_YES}
3565                 }
3566         },
3567         {
3568         .field_info_mask = {
3569                 .description = "tun_hdr_flags",
3570                 .field_bit_size = 3,
3571                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3572                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3573                 },
3574         .field_info_spec = {
3575                 .description = "tun_hdr_flags",
3576                 .field_bit_size = 3,
3577                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3578                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3579                 }
3580         },
3581         {
3582         .field_info_mask = {
3583                 .description = "tun_hdr_type",
3584                 .field_bit_size = 4,
3585                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3586                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3587                 },
3588         .field_info_spec = {
3589                 .description = "tun_hdr_type",
3590                 .field_bit_size = 4,
3591                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3592                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3593                 }
3594         },
3595         {
3596         .field_info_mask = {
3597                 .description = "tun_hdr_err",
3598                 .field_bit_size = 1,
3599                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3600                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3601                 },
3602         .field_info_spec = {
3603                 .description = "tun_hdr_err",
3604                 .field_bit_size = 1,
3605                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3606                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3607                 }
3608         },
3609         {
3610         .field_info_mask = {
3611                 .description = "tun_hdr_valid",
3612                 .field_bit_size = 1,
3613                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3614                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3615                 .field_opr1 = {
3616                         0xff}
3617                 },
3618         .field_info_spec = {
3619                 .description = "tun_hdr_valid",
3620                 .field_bit_size = 1,
3621                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3622                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3623                 }
3624         },
3625         {
3626         .field_info_mask = {
3627                 .description = "tl4_hdr_is_udp_tcp",
3628                 .field_bit_size = 1,
3629                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3630                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3631                 },
3632         .field_info_spec = {
3633                 .description = "tl4_hdr_is_udp_tcp",
3634                 .field_bit_size = 1,
3635                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3636                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3637                 }
3638         },
3639         {
3640         .field_info_mask = {
3641                 .description = "tl4_hdr_type",
3642                 .field_bit_size = 4,
3643                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3644                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3645                 },
3646         .field_info_spec = {
3647                 .description = "tl4_hdr_type",
3648                 .field_bit_size = 4,
3649                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3650                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3651                 }
3652         },
3653         {
3654         .field_info_mask = {
3655                 .description = "tl4_hdr_error",
3656                 .field_bit_size = 1,
3657                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3658                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3659                 },
3660         .field_info_spec = {
3661                 .description = "tl4_hdr_error",
3662                 .field_bit_size = 1,
3663                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3664                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3665                 }
3666         },
3667         {
3668         .field_info_mask = {
3669                 .description = "tl4_hdr_valid",
3670                 .field_bit_size = 1,
3671                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3672                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3673                 .field_opr1 = {
3674                         0xff}
3675                 },
3676         .field_info_spec = {
3677                 .description = "tl4_hdr_valid",
3678                 .field_bit_size = 1,
3679                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3680                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3681                 }
3682         },
3683         {
3684         .field_info_mask = {
3685                 .description = "tl3_ipv6_cmp_dst",
3686                 .field_bit_size = 1,
3687                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3688                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3689                 },
3690         .field_info_spec = {
3691                 .description = "tl3_ipv6_cmp_dst",
3692                 .field_bit_size = 1,
3693                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3694                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3695                 }
3696         },
3697         {
3698         .field_info_mask = {
3699                 .description = "tl3_ipv6_cmp_src",
3700                 .field_bit_size = 1,
3701                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3702                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3703                 },
3704         .field_info_spec = {
3705                 .description = "tl3_ipv6_cmp_src",
3706                 .field_bit_size = 1,
3707                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3708                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3709                 }
3710         },
3711         {
3712         .field_info_mask = {
3713                 .description = "tl3_hdr_isIP",
3714                 .field_bit_size = 1,
3715                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3716                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3717                 },
3718         .field_info_spec = {
3719                 .description = "tl3_hdr_isIP",
3720                 .field_bit_size = 1,
3721                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3722                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3723                 }
3724         },
3725         {
3726         .field_info_mask = {
3727                 .description = "tl3_hdr_type",
3728                 .field_bit_size = 4,
3729                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3730                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3731                 },
3732         .field_info_spec = {
3733                 .description = "tl3_hdr_type",
3734                 .field_bit_size = 4,
3735                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3736                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3737                 }
3738         },
3739         {
3740         .field_info_mask = {
3741                 .description = "tl3_hdr_error",
3742                 .field_bit_size = 1,
3743                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3744                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3745                 },
3746         .field_info_spec = {
3747                 .description = "tl3_hdr_error",
3748                 .field_bit_size = 1,
3749                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3750                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3751                 }
3752         },
3753         {
3754         .field_info_mask = {
3755                 .description = "tl3_hdr_valid",
3756                 .field_bit_size = 1,
3757                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3758                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3759                 .field_opr1 = {
3760                         0xff}
3761                 },
3762         .field_info_spec = {
3763                 .description = "tl3_hdr_valid",
3764                 .field_bit_size = 1,
3765                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3766                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3767                 }
3768         },
3769         {
3770         .field_info_mask = {
3771                 .description = "tl2_two_vtags",
3772                 .field_bit_size = 1,
3773                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3774                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3775                 },
3776         .field_info_spec = {
3777                 .description = "tl2_two_vtags",
3778                 .field_bit_size = 1,
3779                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3780                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3781                 }
3782         },
3783         {
3784         .field_info_mask = {
3785                 .description = "tl2_vtag_present",
3786                 .field_bit_size = 1,
3787                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3788                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3789                 },
3790         .field_info_spec = {
3791                 .description = "tl2_vtag_present",
3792                 .field_bit_size = 1,
3793                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3794                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3795                 }
3796         },
3797         {
3798         .field_info_mask = {
3799                 .description = "tl2_uc_mc_bc",
3800                 .field_bit_size = 2,
3801                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3802                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3803                 },
3804         .field_info_spec = {
3805                 .description = "tl2_uc_mc_bc",
3806                 .field_bit_size = 2,
3807                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3808                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3809                 }
3810         },
3811         {
3812         .field_info_mask = {
3813                 .description = "tl2_hdr_type",
3814                 .field_bit_size = 2,
3815                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3816                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3817                 },
3818         .field_info_spec = {
3819                 .description = "tl2_hdr_type",
3820                 .field_bit_size = 2,
3821                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3822                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3823                 }
3824         },
3825         {
3826         .field_info_mask = {
3827                 .description = "tl2_hdr_valid",
3828                 .field_bit_size = 1,
3829                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3830                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3831                 .field_opr1 = {
3832                         0xff}
3833                 },
3834         .field_info_spec = {
3835                 .description = "tl2_hdr_valid",
3836                 .field_bit_size = 1,
3837                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3838                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3839                 }
3840         },
3841         {
3842         .field_info_mask = {
3843                 .description = "hrec_next",
3844                 .field_bit_size = 1,
3845                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3846                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3847                 },
3848         .field_info_spec = {
3849                 .description = "hrec_next",
3850                 .field_bit_size = 1,
3851                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3852                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3853                 }
3854         },
3855         {
3856         .field_info_mask = {
3857                 .description = "prof_func_id",
3858                 .field_bit_size = 7,
3859                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3860                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3861                 .field_opr1 = {
3862                         0xff}
3863                 },
3864         .field_info_spec = {
3865                 .description = "prof_func_id",
3866                 .field_bit_size = 7,
3867                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3868                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
3869                 .field_opr1 = {
3870                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3871                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
3872                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3873                 .field_opr2 = {
3874                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3875                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3876                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3877                 .field_opr3 = {
3878                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3879                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3880                 }
3881         },
3882         {
3883         .field_info_mask = {
3884                 .description = "agg_error",
3885                 .field_bit_size = 1,
3886                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3887                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3888                 },
3889         .field_info_spec = {
3890                 .description = "agg_error",
3891                 .field_bit_size = 1,
3892                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3893                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3894                 }
3895         },
3896         {
3897         .field_info_mask = {
3898                 .description = "metadata",
3899                 .field_bit_size = 16,
3900                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3901                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3902                 },
3903         .field_info_spec = {
3904                 .description = "metadata",
3905                 .field_bit_size = 16,
3906                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3907                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3908                 }
3909         },
3910         {
3911         .field_info_mask = {
3912                 .description = "pkt_type_0",
3913                 .field_bit_size = 2,
3914                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3915                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3916                 },
3917         .field_info_spec = {
3918                 .description = "pkt_type_0",
3919                 .field_bit_size = 2,
3920                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3921                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3922                 }
3923         },
3924         {
3925         .field_info_mask = {
3926                 .description = "pkt_type_1",
3927                 .field_bit_size = 2,
3928                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3929                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3930                 },
3931         .field_info_spec = {
3932                 .description = "pkt_type_1",
3933                 .field_bit_size = 2,
3934                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3935                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3936                 }
3937         },
3938         {
3939         .field_info_mask = {
3940                 .description = "valid",
3941                 .field_bit_size = 1,
3942                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3943                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3944                 .field_opr1 = {
3945                 1}
3946                 },
3947         .field_info_spec = {
3948                 .description = "valid",
3949                 .field_bit_size = 1,
3950                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3951                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
3952                 .field_opr1 = {
3953                 1}
3954                 }
3955         },
3956         /* class_tid: 1, , table: profile_tcam_cache.l2_l3_l4_v6_wr */
3957         {
3958         .field_info_mask = {
3959                 .description = "recycle_cnt",
3960                 .field_bit_size = 2,
3961                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3962                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3963                 },
3964         .field_info_spec = {
3965                 .description = "recycle_cnt",
3966                 .field_bit_size = 2,
3967                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3968                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
3969                 }
3970         },
3971         {
3972         .field_info_mask = {
3973                 .description = "prof_func_id",
3974                 .field_bit_size = 7,
3975                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
3976                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
3977                 .field_opr1 = {
3978                         0xff}
3979                 },
3980         .field_info_spec = {
3981                 .description = "prof_func_id",
3982                 .field_bit_size = 7,
3983                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
3984                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
3985                 .field_opr1 = {
3986                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
3987                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
3988                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
3989                 .field_opr2 = {
3990                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
3991                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
3992                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
3993                 .field_opr3 = {
3994                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
3995                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
3996                 }
3997         },
3998         {
3999         .field_info_mask = {
4000                 .description = "hdr_sig_id",
4001                 .field_bit_size = 5,
4002                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4003                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4004                 .field_opr1 = {
4005                         0xff}
4006                 },
4007         .field_info_spec = {
4008                 .description = "hdr_sig_id",
4009                 .field_bit_size = 5,
4010                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4011                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4012                 .field_opr1 = {
4013                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
4014                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
4015                 }
4016         },
4017         /* class_tid: 1, , table: em.l2_l3_l4_v6.0 */
4018         {
4019         .field_info_mask = {
4020                 .description = "em_profile_id",
4021                 .field_bit_size = 8,
4022                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4023                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4024                 .field_opr1 = {
4025                         0xff}
4026                 },
4027         .field_info_spec = {
4028                 .description = "em_profile_id",
4029                 .field_bit_size = 8,
4030                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4031                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4032                 .field_opr1 = {
4033                 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
4034                 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
4035                 }
4036         },
4037         {
4038         .field_info_mask = {
4039                 .description = "l2_cntxt_id",
4040                 .field_bit_size = 10,
4041                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4042                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
4043                 .field_opr1 = {
4044                         0xff,
4045                         0xff}
4046                 },
4047         .field_info_spec = {
4048                 .description = "l2_cntxt_id",
4049                 .field_bit_size = 10,
4050                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
4051                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
4052                 .field_opr1 = {
4053                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
4054                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
4055                 }
4056         },
4057         {
4058         .field_info_mask = {
4059                 .description = "parif",
4060                 .field_bit_size = 4,
4061                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4062                 },
4063         .field_info_spec = {
4064                 .description = "parif",
4065                 .field_bit_size = 4,
4066                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4067                 }
4068         },
4069         {
4070         .field_info_mask = {
4071                 .description = "spif",
4072                 .field_bit_size = 2,
4073                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4074                 },
4075         .field_info_spec = {
4076                 .description = "spif",
4077                 .field_bit_size = 2,
4078                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4079                 }
4080         },
4081         {
4082         .field_info_mask = {
4083                 .description = "svif",
4084                 .field_bit_size = 11,
4085                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4086                 },
4087         .field_info_spec = {
4088                 .description = "svif",
4089                 .field_bit_size = 11,
4090                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4091                 }
4092         },
4093         {
4094         .field_info_mask = {
4095                 .description = "lcos",
4096                 .field_bit_size = 3,
4097                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4098                 },
4099         .field_info_spec = {
4100                 .description = "lcos",
4101                 .field_bit_size = 3,
4102                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4103                 }
4104         },
4105         {
4106         .field_info_mask = {
4107                 .description = "meta",
4108                 .field_bit_size = 16,
4109                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4110                 },
4111         .field_info_spec = {
4112                 .description = "meta",
4113                 .field_bit_size = 16,
4114                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4115                 }
4116         },
4117         {
4118         .field_info_mask = {
4119                 .description = "rcyc_cnt",
4120                 .field_bit_size = 2,
4121                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4122                 },
4123         .field_info_spec = {
4124                 .description = "rcyc_cnt",
4125                 .field_bit_size = 2,
4126                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4127                 }
4128         },
4129         {
4130         .field_info_mask = {
4131                 .description = "loopback",
4132                 .field_bit_size = 1,
4133                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4134                 },
4135         .field_info_spec = {
4136                 .description = "loopback",
4137                 .field_bit_size = 1,
4138                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4139                 }
4140         },
4141         {
4142         .field_info_mask = {
4143                 .description = "tl2_l2type",
4144                 .field_bit_size = 2,
4145                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4146                 },
4147         .field_info_spec = {
4148                 .description = "tl2_l2type",
4149                 .field_bit_size = 2,
4150                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4151                 }
4152         },
4153         {
4154         .field_info_mask = {
4155                 .description = "tl2_dmac",
4156                 .field_bit_size = 48,
4157                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4158                 },
4159         .field_info_spec = {
4160                 .description = "tl2_dmac",
4161                 .field_bit_size = 48,
4162                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4163                 }
4164         },
4165         {
4166         .field_info_mask = {
4167                 .description = "tl2_smac",
4168                 .field_bit_size = 48,
4169                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4170                 },
4171         .field_info_spec = {
4172                 .description = "tl2_smac",
4173                 .field_bit_size = 48,
4174                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4175                 }
4176         },
4177         {
4178         .field_info_mask = {
4179                 .description = "tl2_dt",
4180                 .field_bit_size = 2,
4181                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4182                 },
4183         .field_info_spec = {
4184                 .description = "tl2_dt",
4185                 .field_bit_size = 2,
4186                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4187                 }
4188         },
4189         {
4190         .field_info_mask = {
4191                 .description = "tl2_sa",
4192                 .field_bit_size = 1,
4193                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4194                 },
4195         .field_info_spec = {
4196                 .description = "tl2_sa",
4197                 .field_bit_size = 1,
4198                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4199                 }
4200         },
4201         {
4202         .field_info_mask = {
4203                 .description = "tl2_nvt",
4204                 .field_bit_size = 2,
4205                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4206                 },
4207         .field_info_spec = {
4208                 .description = "tl2_nvt",
4209                 .field_bit_size = 2,
4210                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4211                 }
4212         },
4213         {
4214         .field_info_mask = {
4215                 .description = "tl2_ovp",
4216                 .field_bit_size = 3,
4217                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4218                 },
4219         .field_info_spec = {
4220                 .description = "tl2_ovp",
4221                 .field_bit_size = 3,
4222                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4223                 }
4224         },
4225         {
4226         .field_info_mask = {
4227                 .description = "tl2_ovd",
4228                 .field_bit_size = 1,
4229                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4230                 },
4231         .field_info_spec = {
4232                 .description = "tl2_ovd",
4233                 .field_bit_size = 1,
4234                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4235                 }
4236         },
4237         {
4238         .field_info_mask = {
4239                 .description = "tl2_ovv",
4240                 .field_bit_size = 12,
4241                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4242                 },
4243         .field_info_spec = {
4244                 .description = "tl2_ovv",
4245                 .field_bit_size = 12,
4246                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4247                 }
4248         },
4249         {
4250         .field_info_mask = {
4251                 .description = "tl2_ovt",
4252                 .field_bit_size = 3,
4253                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4254                 },
4255         .field_info_spec = {
4256                 .description = "tl2_ovt",
4257                 .field_bit_size = 3,
4258                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4259                 }
4260         },
4261         {
4262         .field_info_mask = {
4263                 .description = "tl2_ivp",
4264                 .field_bit_size = 3,
4265                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4266                 },
4267         .field_info_spec = {
4268                 .description = "tl2_ivp",
4269                 .field_bit_size = 3,
4270                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4271                 }
4272         },
4273         {
4274         .field_info_mask = {
4275                 .description = "tl2_ivd",
4276                 .field_bit_size = 1,
4277                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4278                 },
4279         .field_info_spec = {
4280                 .description = "tl2_ivd",
4281                 .field_bit_size = 1,
4282                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4283                 }
4284         },
4285         {
4286         .field_info_mask = {
4287                 .description = "tl2_ivv",
4288                 .field_bit_size = 12,
4289                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4290                 },
4291         .field_info_spec = {
4292                 .description = "tl2_ivv",
4293                 .field_bit_size = 12,
4294                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4295                 }
4296         },
4297         {
4298         .field_info_mask = {
4299                 .description = "tl2_ivt",
4300                 .field_bit_size = 3,
4301                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4302                 },
4303         .field_info_spec = {
4304                 .description = "tl2_ivt",
4305                 .field_bit_size = 3,
4306                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4307                 }
4308         },
4309         {
4310         .field_info_mask = {
4311                 .description = "tl2_etype",
4312                 .field_bit_size = 16,
4313                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4314                 },
4315         .field_info_spec = {
4316                 .description = "tl2_etype",
4317                 .field_bit_size = 16,
4318                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4319                 }
4320         },
4321         {
4322         .field_info_mask = {
4323                 .description = "tl3.l3type",
4324                 .field_bit_size = 4,
4325                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4326                 },
4327         .field_info_spec = {
4328                 .description = "tl3.l3type",
4329                 .field_bit_size = 4,
4330                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4331                 }
4332         },
4333         {
4334         .field_info_mask = {
4335                 .description = "tl3.sip.ipv4",
4336                 .field_bit_size = 32,
4337                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4338                 },
4339         .field_info_spec = {
4340                 .description = "tl3.sip.ipv4",
4341                 .field_bit_size = 32,
4342                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4343                 }
4344         },
4345         {
4346         .field_info_mask = {
4347                 .description = "tl3.sip.ipv6",
4348                 .field_bit_size = 128,
4349                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4350                 },
4351         .field_info_spec = {
4352                 .description = "tl3.sip.ipv6",
4353                 .field_bit_size = 128,
4354                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4355                 }
4356         },
4357         {
4358         .field_info_mask = {
4359                 .description = "tl3.sip_selcmp.ipv6",
4360                 .field_bit_size = 72,
4361                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4362                 },
4363         .field_info_spec = {
4364                 .description = "tl3.sip_selcmp.ipv6",
4365                 .field_bit_size = 72,
4366                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4367                 }
4368         },
4369         {
4370         .field_info_mask = {
4371                 .description = "tl3.dip.ipv4",
4372                 .field_bit_size = 32,
4373                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4374                 },
4375         .field_info_spec = {
4376                 .description = "tl3.dip.ipv4",
4377                 .field_bit_size = 32,
4378                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4379                 }
4380         },
4381         {
4382         .field_info_mask = {
4383                 .description = "tl3.dip.ipv6",
4384                 .field_bit_size = 128,
4385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4386                 },
4387         .field_info_spec = {
4388                 .description = "tl3.dip.ipv6",
4389                 .field_bit_size = 128,
4390                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4391                 }
4392         },
4393         {
4394         .field_info_mask = {
4395                 .description = "tl3.dip_selcmp.ipv6",
4396                 .field_bit_size = 72,
4397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4398                 },
4399         .field_info_spec = {
4400                 .description = "tl3.dip_selcmp.ipv6",
4401                 .field_bit_size = 72,
4402                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4403                 }
4404         },
4405         {
4406         .field_info_mask = {
4407                 .description = "tl3.ttl",
4408                 .field_bit_size = 8,
4409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4410                 },
4411         .field_info_spec = {
4412                 .description = "tl3.ttl",
4413                 .field_bit_size = 8,
4414                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4415                 }
4416         },
4417         {
4418         .field_info_mask = {
4419                 .description = "tl3.prot",
4420                 .field_bit_size = 8,
4421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4422                 },
4423         .field_info_spec = {
4424                 .description = "tl3.prot",
4425                 .field_bit_size = 8,
4426                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4427                 }
4428         },
4429         {
4430         .field_info_mask = {
4431                 .description = "tl3.fid.ipv4",
4432                 .field_bit_size = 16,
4433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4434                 },
4435         .field_info_spec = {
4436                 .description = "tl3.fid.ipv4",
4437                 .field_bit_size = 16,
4438                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4439                 }
4440         },
4441         {
4442         .field_info_mask = {
4443                 .description = "tl3.fid.ipv6",
4444                 .field_bit_size = 20,
4445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4446                 },
4447         .field_info_spec = {
4448                 .description = "tl3.fid.ipv6",
4449                 .field_bit_size = 20,
4450                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4451                 }
4452         },
4453         {
4454         .field_info_mask = {
4455                 .description = "tl3.qos",
4456                 .field_bit_size = 8,
4457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4458                 },
4459         .field_info_spec = {
4460                 .description = "tl3.qos",
4461                 .field_bit_size = 8,
4462                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4463                 }
4464         },
4465         {
4466         .field_info_mask = {
4467                 .description = "tl3.ieh_nonext",
4468                 .field_bit_size = 1,
4469                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4470                 },
4471         .field_info_spec = {
4472                 .description = "tl3.ieh_nonext",
4473                 .field_bit_size = 1,
4474                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4475                 }
4476         },
4477         {
4478         .field_info_mask = {
4479                 .description = "tl3.ieh_esp",
4480                 .field_bit_size = 1,
4481                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4482                 },
4483         .field_info_spec = {
4484                 .description = "tl3.ieh_esp",
4485                 .field_bit_size = 1,
4486                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4487                 }
4488         },
4489         {
4490         .field_info_mask = {
4491                 .description = "tl3.ieh_auth",
4492                 .field_bit_size = 1,
4493                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4494                 },
4495         .field_info_spec = {
4496                 .description = "tl3.ieh_auth",
4497                 .field_bit_size = 1,
4498                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4499                 }
4500         },
4501         {
4502         .field_info_mask = {
4503                 .description = "tl3.ieh_dest",
4504                 .field_bit_size = 1,
4505                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4506                 },
4507         .field_info_spec = {
4508                 .description = "tl3.ieh_dest",
4509                 .field_bit_size = 1,
4510                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4511                 }
4512         },
4513         {
4514         .field_info_mask = {
4515                 .description = "tl3.ieh_frag",
4516                 .field_bit_size = 1,
4517                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4518                 },
4519         .field_info_spec = {
4520                 .description = "tl3.ieh_frag",
4521                 .field_bit_size = 1,
4522                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4523                 }
4524         },
4525         {
4526         .field_info_mask = {
4527                 .description = "tl3.ieh_rthdr",
4528                 .field_bit_size = 1,
4529                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4530                 },
4531         .field_info_spec = {
4532                 .description = "tl3.ieh_rthdr",
4533                 .field_bit_size = 1,
4534                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4535                 }
4536         },
4537         {
4538         .field_info_mask = {
4539                 .description = "tl3.ieh_hop",
4540                 .field_bit_size = 1,
4541                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4542                 },
4543         .field_info_spec = {
4544                 .description = "tl3.ieh_hop",
4545                 .field_bit_size = 1,
4546                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4547                 }
4548         },
4549         {
4550         .field_info_mask = {
4551                 .description = "tl3.ieh_1frag",
4552                 .field_bit_size = 1,
4553                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4554                 },
4555         .field_info_spec = {
4556                 .description = "tl3.ieh_1frag",
4557                 .field_bit_size = 1,
4558                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4559                 }
4560         },
4561         {
4562         .field_info_mask = {
4563                 .description = "tl3.df",
4564                 .field_bit_size = 1,
4565                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4566                 },
4567         .field_info_spec = {
4568                 .description = "tl3.df",
4569                 .field_bit_size = 1,
4570                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4571                 }
4572         },
4573         {
4574         .field_info_mask = {
4575                 .description = "tl3.l3err",
4576                 .field_bit_size = 4,
4577                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4578                 },
4579         .field_info_spec = {
4580                 .description = "tl3.l3err",
4581                 .field_bit_size = 4,
4582                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4583                 }
4584         },
4585         {
4586         .field_info_mask = {
4587                 .description = "tl4.l4type",
4588                 .field_bit_size = 4,
4589                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4590                 },
4591         .field_info_spec = {
4592                 .description = "tl4.l4type",
4593                 .field_bit_size = 4,
4594                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4595                 }
4596         },
4597         {
4598         .field_info_mask = {
4599                 .description = "tl4.src",
4600                 .field_bit_size = 16,
4601                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4602                 },
4603         .field_info_spec = {
4604                 .description = "tl4.src",
4605                 .field_bit_size = 16,
4606                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4607                 }
4608         },
4609         {
4610         .field_info_mask = {
4611                 .description = "tl4.dst",
4612                 .field_bit_size = 16,
4613                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4614                 },
4615         .field_info_spec = {
4616                 .description = "tl4.dst",
4617                 .field_bit_size = 16,
4618                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4619                 }
4620         },
4621         {
4622         .field_info_mask = {
4623                 .description = "tl4.flags",
4624                 .field_bit_size = 9,
4625                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4626                 },
4627         .field_info_spec = {
4628                 .description = "tl4.flags",
4629                 .field_bit_size = 9,
4630                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4631                 }
4632         },
4633         {
4634         .field_info_mask = {
4635                 .description = "tl4.seq",
4636                 .field_bit_size = 32,
4637                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4638                 },
4639         .field_info_spec = {
4640                 .description = "tl4.seq",
4641                 .field_bit_size = 32,
4642                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4643                 }
4644         },
4645         {
4646         .field_info_mask = {
4647                 .description = "tl4.pa",
4648                 .field_bit_size = 1,
4649                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4650                 },
4651         .field_info_spec = {
4652                 .description = "tl4.pa",
4653                 .field_bit_size = 1,
4654                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4655                 }
4656         },
4657         {
4658         .field_info_mask = {
4659                 .description = "tl4.opt",
4660                 .field_bit_size = 1,
4661                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4662                 },
4663         .field_info_spec = {
4664                 .description = "tl4.opt",
4665                 .field_bit_size = 1,
4666                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4667                 }
4668         },
4669         {
4670         .field_info_mask = {
4671                 .description = "tl4.tcpts",
4672                 .field_bit_size = 1,
4673                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4674                 },
4675         .field_info_spec = {
4676                 .description = "tl4.tcpts",
4677                 .field_bit_size = 1,
4678                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4679                 }
4680         },
4681         {
4682         .field_info_mask = {
4683                 .description = "tl4.err",
4684                 .field_bit_size = 4,
4685                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4686                 },
4687         .field_info_spec = {
4688                 .description = "tl4.err",
4689                 .field_bit_size = 4,
4690                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4691                 }
4692         },
4693         {
4694         .field_info_mask = {
4695                 .description = "tuntype",
4696                 .field_bit_size = 4,
4697                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4698                 },
4699         .field_info_spec = {
4700                 .description = "tuntype",
4701                 .field_bit_size = 4,
4702                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4703                 }
4704         },
4705         {
4706         .field_info_mask = {
4707                 .description = "tflags",
4708                 .field_bit_size = 3,
4709                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4710                 },
4711         .field_info_spec = {
4712                 .description = "tflags",
4713                 .field_bit_size = 3,
4714                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4715                 }
4716         },
4717         {
4718         .field_info_mask = {
4719                 .description = "tids",
4720                 .field_bit_size = 24,
4721                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4722                 },
4723         .field_info_spec = {
4724                 .description = "tids",
4725                 .field_bit_size = 24,
4726                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4727                 }
4728         },
4729         {
4730         .field_info_mask = {
4731                 .description = "tid",
4732                 .field_bit_size = 32,
4733                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4734                 },
4735         .field_info_spec = {
4736                 .description = "tid",
4737                 .field_bit_size = 32,
4738                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4739                 }
4740         },
4741         {
4742         .field_info_mask = {
4743                 .description = "tctxts",
4744                 .field_bit_size = 24,
4745                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4746                 },
4747         .field_info_spec = {
4748                 .description = "tctxts",
4749                 .field_bit_size = 24,
4750                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4751                 }
4752         },
4753         {
4754         .field_info_mask = {
4755                 .description = "tctxt",
4756                 .field_bit_size = 32,
4757                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4758                 },
4759         .field_info_spec = {
4760                 .description = "tctxt",
4761                 .field_bit_size = 32,
4762                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4763                 }
4764         },
4765         {
4766         .field_info_mask = {
4767                 .description = "tqos",
4768                 .field_bit_size = 3,
4769                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4770                 },
4771         .field_info_spec = {
4772                 .description = "tqos",
4773                 .field_bit_size = 3,
4774                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4775                 }
4776         },
4777         {
4778         .field_info_mask = {
4779                 .description = "terr",
4780                 .field_bit_size = 4,
4781                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4782                 },
4783         .field_info_spec = {
4784                 .description = "terr",
4785                 .field_bit_size = 4,
4786                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4787                 }
4788         },
4789         {
4790         .field_info_mask = {
4791                 .description = "l2_l2type",
4792                 .field_bit_size = 2,
4793                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4794                 },
4795         .field_info_spec = {
4796                 .description = "l2_l2type",
4797                 .field_bit_size = 2,
4798                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4799                 }
4800         },
4801         {
4802         .field_info_mask = {
4803                 .description = "l2_dmac",
4804                 .field_bit_size = 48,
4805                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4806                 },
4807         .field_info_spec = {
4808                 .description = "l2_dmac",
4809                 .field_bit_size = 48,
4810                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4811                 }
4812         },
4813         {
4814         .field_info_mask = {
4815                 .description = "l2_smac",
4816                 .field_bit_size = 48,
4817                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4818                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4819                 .field_opr1 = {
4820                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4821                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
4822                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
4823                 .field_opr2 = {
4824                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4825                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
4826                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4827                 },
4828         .field_info_spec = {
4829                 .description = "l2_smac",
4830                 .field_bit_size = 48,
4831                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4832                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
4833                 .field_opr1 = {
4834                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4835                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
4836                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
4837                 .field_opr2 = {
4838                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
4839                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
4840                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4841                 }
4842         },
4843         {
4844         .field_info_mask = {
4845                 .description = "l2_dt",
4846                 .field_bit_size = 2,
4847                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4848                 },
4849         .field_info_spec = {
4850                 .description = "l2_dt",
4851                 .field_bit_size = 2,
4852                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4853                 }
4854         },
4855         {
4856         .field_info_mask = {
4857                 .description = "l2_sa",
4858                 .field_bit_size = 1,
4859                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4860                 },
4861         .field_info_spec = {
4862                 .description = "l2_sa",
4863                 .field_bit_size = 1,
4864                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4865                 }
4866         },
4867         {
4868         .field_info_mask = {
4869                 .description = "l2_nvt",
4870                 .field_bit_size = 2,
4871                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4872                 },
4873         .field_info_spec = {
4874                 .description = "l2_nvt",
4875                 .field_bit_size = 2,
4876                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4877                 }
4878         },
4879         {
4880         .field_info_mask = {
4881                 .description = "l2_ovp",
4882                 .field_bit_size = 3,
4883                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4884                 },
4885         .field_info_spec = {
4886                 .description = "l2_ovp",
4887                 .field_bit_size = 3,
4888                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4889                 }
4890         },
4891         {
4892         .field_info_mask = {
4893                 .description = "l2_ovd",
4894                 .field_bit_size = 1,
4895                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4896                 },
4897         .field_info_spec = {
4898                 .description = "l2_ovd",
4899                 .field_bit_size = 1,
4900                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4901                 }
4902         },
4903         {
4904         .field_info_mask = {
4905                 .description = "l2_ovv",
4906                 .field_bit_size = 12,
4907                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4908                 },
4909         .field_info_spec = {
4910                 .description = "l2_ovv",
4911                 .field_bit_size = 12,
4912                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4913                 }
4914         },
4915         {
4916         .field_info_mask = {
4917                 .description = "l2_ovt",
4918                 .field_bit_size = 3,
4919                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4920                 },
4921         .field_info_spec = {
4922                 .description = "l2_ovt",
4923                 .field_bit_size = 3,
4924                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4925                 }
4926         },
4927         {
4928         .field_info_mask = {
4929                 .description = "l2_ivp",
4930                 .field_bit_size = 3,
4931                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4932                 },
4933         .field_info_spec = {
4934                 .description = "l2_ivp",
4935                 .field_bit_size = 3,
4936                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4937                 }
4938         },
4939         {
4940         .field_info_mask = {
4941                 .description = "l2_ivd",
4942                 .field_bit_size = 1,
4943                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4944                 },
4945         .field_info_spec = {
4946                 .description = "l2_ivd",
4947                 .field_bit_size = 1,
4948                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4949                 }
4950         },
4951         {
4952         .field_info_mask = {
4953                 .description = "l2_ivv",
4954                 .field_bit_size = 12,
4955                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4956                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4957                 .field_opr1 = {
4958                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
4959                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
4960                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
4961                 .field_opr2 = {
4962                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
4963                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
4964                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4965                 },
4966         .field_info_spec = {
4967                 .description = "l2_ivv",
4968                 .field_bit_size = 12,
4969                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
4970                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
4971                 .field_opr1 = {
4972                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
4973                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
4974                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
4975                 .field_opr2 = {
4976                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
4977                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
4978                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
4979                 }
4980         },
4981         {
4982         .field_info_mask = {
4983                 .description = "l2_ivt",
4984                 .field_bit_size = 3,
4985                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4986                 },
4987         .field_info_spec = {
4988                 .description = "l2_ivt",
4989                 .field_bit_size = 3,
4990                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4991                 }
4992         },
4993         {
4994         .field_info_mask = {
4995                 .description = "l2_etype",
4996                 .field_bit_size = 16,
4997                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
4998                 },
4999         .field_info_spec = {
5000                 .description = "l2_etype",
5001                 .field_bit_size = 16,
5002                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5003                 }
5004         },
5005         {
5006         .field_info_mask = {
5007                 .description = "l3.l3type",
5008                 .field_bit_size = 4,
5009                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5010                 },
5011         .field_info_spec = {
5012                 .description = "l3.l3type",
5013                 .field_bit_size = 4,
5014                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5015                 }
5016         },
5017         {
5018         .field_info_mask = {
5019                 .description = "l3.sip.ipv4",
5020                 .field_bit_size = 32,
5021                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5022                 },
5023         .field_info_spec = {
5024                 .description = "l3.sip.ipv4",
5025                 .field_bit_size = 32,
5026                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5027                 }
5028         },
5029         {
5030         .field_info_mask = {
5031                 .description = "l3.sip.ipv6",
5032                 .field_bit_size = 128,
5033                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5034                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5035                 .field_opr1 = {
5036                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5037                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
5038                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5039                 .field_opr2 = {
5040                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5041                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
5042                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5043                 },
5044         .field_info_spec = {
5045                 .description = "l3.sip.ipv6",
5046                 .field_bit_size = 128,
5047                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5048                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5049                 .field_opr1 = {
5050                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5051                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
5052                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5053                 .field_opr2 = {
5054                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
5055                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
5056                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5057                 }
5058         },
5059         {
5060         .field_info_mask = {
5061                 .description = "l3.sip_selcmp.ipv6",
5062                 .field_bit_size = 72,
5063                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5064                 },
5065         .field_info_spec = {
5066                 .description = "l3.sip_selcmp.ipv6",
5067                 .field_bit_size = 72,
5068                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5069                 }
5070         },
5071         {
5072         .field_info_mask = {
5073                 .description = "l3.dip.ipv4",
5074                 .field_bit_size = 32,
5075                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5076                 },
5077         .field_info_spec = {
5078                 .description = "l3.dip.ipv4",
5079                 .field_bit_size = 32,
5080                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5081                 }
5082         },
5083         {
5084         .field_info_mask = {
5085                 .description = "l3.dip.ipv6",
5086                 .field_bit_size = 128,
5087                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5088                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5089                 .field_opr1 = {
5090                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5091                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
5092                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5093                 .field_opr2 = {
5094                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5095                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
5096                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5097                 },
5098         .field_info_spec = {
5099                 .description = "l3.dip.ipv6",
5100                 .field_bit_size = 128,
5101                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5102                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5103                 .field_opr1 = {
5104                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5105                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
5106                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
5107                 .field_opr2 = {
5108                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
5109                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
5110                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5111                 }
5112         },
5113         {
5114         .field_info_mask = {
5115                 .description = "l3.dip_selcmp.ipv6",
5116                 .field_bit_size = 72,
5117                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5118                 },
5119         .field_info_spec = {
5120                 .description = "l3.dip_selcmp.ipv6",
5121                 .field_bit_size = 72,
5122                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5123                 }
5124         },
5125         {
5126         .field_info_mask = {
5127                 .description = "l3.ttl",
5128                 .field_bit_size = 8,
5129                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5130                 },
5131         .field_info_spec = {
5132                 .description = "l3.ttl",
5133                 .field_bit_size = 8,
5134                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5135                 }
5136         },
5137         {
5138         .field_info_mask = {
5139                 .description = "l3.prot",
5140                 .field_bit_size = 8,
5141                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5142                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5143                 .field_opr1 = {
5144                         0xff}
5145                 },
5146         .field_info_spec = {
5147                 .description = "l3.prot",
5148                 .field_bit_size = 8,
5149                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5150                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5151                 .field_opr1 = {
5152                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
5153                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
5154                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5155                 .field_opr2 = {
5156                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
5157                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
5158                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5159                 }
5160         },
5161         {
5162         .field_info_mask = {
5163                 .description = "l3.fid.ipv4",
5164                 .field_bit_size = 16,
5165                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5166                 },
5167         .field_info_spec = {
5168                 .description = "l3.fid.ipv4",
5169                 .field_bit_size = 16,
5170                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5171                 }
5172         },
5173         {
5174         .field_info_mask = {
5175                 .description = "l3.fid.ipv6",
5176                 .field_bit_size = 20,
5177                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5178                 },
5179         .field_info_spec = {
5180                 .description = "l3.fid.ipv6",
5181                 .field_bit_size = 20,
5182                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5183                 }
5184         },
5185         {
5186         .field_info_mask = {
5187                 .description = "l3.qos",
5188                 .field_bit_size = 8,
5189                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5190                 },
5191         .field_info_spec = {
5192                 .description = "l3.qos",
5193                 .field_bit_size = 8,
5194                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5195                 }
5196         },
5197         {
5198         .field_info_mask = {
5199                 .description = "l3.ieh_nonext",
5200                 .field_bit_size = 1,
5201                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5202                 },
5203         .field_info_spec = {
5204                 .description = "l3.ieh_nonext",
5205                 .field_bit_size = 1,
5206                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5207                 }
5208         },
5209         {
5210         .field_info_mask = {
5211                 .description = "l3.ieh_esp",
5212                 .field_bit_size = 1,
5213                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5214                 },
5215         .field_info_spec = {
5216                 .description = "l3.ieh_esp",
5217                 .field_bit_size = 1,
5218                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5219                 }
5220         },
5221         {
5222         .field_info_mask = {
5223                 .description = "l3.ieh_auth",
5224                 .field_bit_size = 1,
5225                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5226                 },
5227         .field_info_spec = {
5228                 .description = "l3.ieh_auth",
5229                 .field_bit_size = 1,
5230                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5231                 }
5232         },
5233         {
5234         .field_info_mask = {
5235                 .description = "l3.ieh_dest",
5236                 .field_bit_size = 1,
5237                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5238                 },
5239         .field_info_spec = {
5240                 .description = "l3.ieh_dest",
5241                 .field_bit_size = 1,
5242                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5243                 }
5244         },
5245         {
5246         .field_info_mask = {
5247                 .description = "l3.ieh_frag",
5248                 .field_bit_size = 1,
5249                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5250                 },
5251         .field_info_spec = {
5252                 .description = "l3.ieh_frag",
5253                 .field_bit_size = 1,
5254                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5255                 }
5256         },
5257         {
5258         .field_info_mask = {
5259                 .description = "l3.ieh_rthdr",
5260                 .field_bit_size = 1,
5261                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5262                 },
5263         .field_info_spec = {
5264                 .description = "l3.ieh_rthdr",
5265                 .field_bit_size = 1,
5266                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5267                 }
5268         },
5269         {
5270         .field_info_mask = {
5271                 .description = "l3.ieh_hop",
5272                 .field_bit_size = 1,
5273                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5274                 },
5275         .field_info_spec = {
5276                 .description = "l3.ieh_hop",
5277                 .field_bit_size = 1,
5278                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5279                 }
5280         },
5281         {
5282         .field_info_mask = {
5283                 .description = "l3.ieh_1frag",
5284                 .field_bit_size = 1,
5285                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5286                 },
5287         .field_info_spec = {
5288                 .description = "l3.ieh_1frag",
5289                 .field_bit_size = 1,
5290                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5291                 }
5292         },
5293         {
5294         .field_info_mask = {
5295                 .description = "l3.df",
5296                 .field_bit_size = 1,
5297                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5298                 },
5299         .field_info_spec = {
5300                 .description = "l3.df",
5301                 .field_bit_size = 1,
5302                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5303                 }
5304         },
5305         {
5306         .field_info_mask = {
5307                 .description = "l3.l3err.ipv4",
5308                 .field_bit_size = 4,
5309                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5310                 },
5311         .field_info_spec = {
5312                 .description = "l3.l3err.ipv4",
5313                 .field_bit_size = 4,
5314                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5315                 }
5316         },
5317         {
5318         .field_info_mask = {
5319                 .description = "l3.l3err.ipv6",
5320                 .field_bit_size = 4,
5321                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5322                 },
5323         .field_info_spec = {
5324                 .description = "l3.l3err.ipv6",
5325                 .field_bit_size = 4,
5326                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5327                 }
5328         },
5329         {
5330         .field_info_mask = {
5331                 .description = "l4.l4type",
5332                 .field_bit_size = 4,
5333                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5334                 },
5335         .field_info_spec = {
5336                 .description = "l4.l4type",
5337                 .field_bit_size = 4,
5338                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5339                 }
5340         },
5341         {
5342         .field_info_mask = {
5343                 .description = "l4.src",
5344                 .field_bit_size = 16,
5345                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5346                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5347                 .field_opr1 = {
5348                         0xff,
5349                         0xff}
5350                 },
5351         .field_info_spec = {
5352                 .description = "l4.src",
5353                 .field_bit_size = 16,
5354                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5355                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5356                 .field_opr1 = {
5357                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
5358                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
5359                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5360                 .field_opr2 = {
5361                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
5362                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
5363                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5364                 }
5365         },
5366         {
5367         .field_info_mask = {
5368                 .description = "l4.dst",
5369                 .field_bit_size = 16,
5370                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5371                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5372                 .field_opr1 = {
5373                         0xff,
5374                         0xff}
5375                 },
5376         .field_info_spec = {
5377                 .description = "l4.dst",
5378                 .field_bit_size = 16,
5379                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5380                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5381                 .field_opr1 = {
5382                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
5383                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
5384                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
5385                 .field_opr2 = {
5386                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
5387                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
5388                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
5389                 }
5390         },
5391         {
5392         .field_info_mask = {
5393                 .description = "l4.flags",
5394                 .field_bit_size = 9,
5395                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5396                 },
5397         .field_info_spec = {
5398                 .description = "l4.flags",
5399                 .field_bit_size = 9,
5400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5401                 }
5402         },
5403         {
5404         .field_info_mask = {
5405                 .description = "l4.seq",
5406                 .field_bit_size = 32,
5407                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5408                 },
5409         .field_info_spec = {
5410                 .description = "l4.seq",
5411                 .field_bit_size = 32,
5412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5413                 }
5414         },
5415         {
5416         .field_info_mask = {
5417                 .description = "l4.ack",
5418                 .field_bit_size = 32,
5419                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5420                 },
5421         .field_info_spec = {
5422                 .description = "l4.ack",
5423                 .field_bit_size = 32,
5424                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5425                 }
5426         },
5427         {
5428         .field_info_mask = {
5429                 .description = "l4.win",
5430                 .field_bit_size = 16,
5431                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5432                 },
5433         .field_info_spec = {
5434                 .description = "l4.win",
5435                 .field_bit_size = 16,
5436                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5437                 }
5438         },
5439         {
5440         .field_info_mask = {
5441                 .description = "l4.pa",
5442                 .field_bit_size = 1,
5443                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5444                 },
5445         .field_info_spec = {
5446                 .description = "l4.pa",
5447                 .field_bit_size = 1,
5448                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5449                 }
5450         },
5451         {
5452         .field_info_mask = {
5453                 .description = "l4.opt",
5454                 .field_bit_size = 1,
5455                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5456                 },
5457         .field_info_spec = {
5458                 .description = "l4.opt",
5459                 .field_bit_size = 1,
5460                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5461                 }
5462         },
5463         {
5464         .field_info_mask = {
5465                 .description = "l4.tcpts",
5466                 .field_bit_size = 1,
5467                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5468                 },
5469         .field_info_spec = {
5470                 .description = "l4.tcpts",
5471                 .field_bit_size = 1,
5472                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5473                 }
5474         },
5475         {
5476         .field_info_mask = {
5477                 .description = "l4.tsval",
5478                 .field_bit_size = 32,
5479                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5480                 },
5481         .field_info_spec = {
5482                 .description = "l4.tsval",
5483                 .field_bit_size = 32,
5484                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5485                 }
5486         },
5487         {
5488         .field_info_mask = {
5489                 .description = "l4.txecr",
5490                 .field_bit_size = 32,
5491                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5492                 },
5493         .field_info_spec = {
5494                 .description = "l4.txecr",
5495                 .field_bit_size = 32,
5496                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5497                 }
5498         },
5499         {
5500         .field_info_mask = {
5501                 .description = "l4.err",
5502                 .field_bit_size = 4,
5503                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5504                 },
5505         .field_info_spec = {
5506                 .description = "l4.err",
5507                 .field_bit_size = 4,
5508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
5509                 }
5510         },
5511         /* class_tid: 1, , table: profile_tcam_cache.rd */
5512         {
5513         .field_info_mask = {
5514                 .description = "recycle_cnt",
5515                 .field_bit_size = 2,
5516                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5517                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5518                 },
5519         .field_info_spec = {
5520                 .description = "recycle_cnt",
5521                 .field_bit_size = 2,
5522                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5523                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5524                 }
5525         },
5526         {
5527         .field_info_mask = {
5528                 .description = "prof_func_id",
5529                 .field_bit_size = 7,
5530                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5531                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5532                 .field_opr1 = {
5533                         0xff}
5534                 },
5535         .field_info_spec = {
5536                 .description = "prof_func_id",
5537                 .field_bit_size = 7,
5538                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5539                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
5540                 .field_opr1 = {
5541                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
5542                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
5543                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
5544                 .field_opr2 = {
5545                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
5546                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
5547                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
5548                 .field_opr3 = {
5549                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5550                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
5551                 }
5552         },
5553         {
5554         .field_info_mask = {
5555                 .description = "hdr_sig_id",
5556                 .field_bit_size = 5,
5557                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5558                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5559                 .field_opr1 = {
5560                         0xff}
5561                 },
5562         .field_info_spec = {
5563                 .description = "hdr_sig_id",
5564                 .field_bit_size = 5,
5565                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5566                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5567                 .field_opr1 = {
5568                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
5569                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
5570                 }
5571         },
5572         /* class_tid: 1, , table: profile_tcam.l3_l4.ip */
5573         {
5574         .field_info_mask = {
5575                 .description = "l4_hdr_is_udp_tcp",
5576                 .field_bit_size = 1,
5577                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5578                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5579                 },
5580         .field_info_spec = {
5581                 .description = "l4_hdr_is_udp_tcp",
5582                 .field_bit_size = 1,
5583                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5584                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5585                 }
5586         },
5587         {
5588         .field_info_mask = {
5589                 .description = "l4_hdr_type",
5590                 .field_bit_size = 4,
5591                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5592                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5593                 .field_opr1 = {
5594                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5595                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5596                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
5597                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5598                 },
5599         .field_info_spec = {
5600                 .description = "l4_hdr_type",
5601                 .field_bit_size = 4,
5602                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5603                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5604                 .field_opr1 = {
5605                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
5606                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
5607                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
5608                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
5609                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
5610                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
5611                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
5612                 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
5613                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
5614                 .field_opr2 = {
5615                         ULP_THOR_SYM_L4_HDR_TYPE_TCP},
5616                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
5617                 .field_opr3 = {
5618                 ULP_THOR_SYM_L4_HDR_TYPE_UDP}
5619                 }
5620         },
5621         {
5622         .field_info_mask = {
5623                 .description = "l4_hdr_error",
5624                 .field_bit_size = 1,
5625                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5626                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5627                 .field_opr1 = {
5628                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5629                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5630                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
5631                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5632                 },
5633         .field_info_spec = {
5634                 .description = "l4_hdr_error",
5635                 .field_bit_size = 1,
5636                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5637                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5638                 }
5639         },
5640         {
5641         .field_info_mask = {
5642                 .description = "l4_hdr_valid",
5643                 .field_bit_size = 1,
5644                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5645                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5646                 .field_opr1 = {
5647                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5648                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5649                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
5650                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5651                 },
5652         .field_info_spec = {
5653                 .description = "l4_hdr_valid",
5654                 .field_bit_size = 1,
5655                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5656                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5657                 .field_opr1 = {
5658                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
5659                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
5660                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
5661                 .field_opr2 = {
5662                         ULP_THOR_SYM_L4_HDR_VALID_YES},
5663                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
5664                 .field_opr3 = {
5665                 ULP_THOR_SYM_L4_HDR_VALID_IGNORE}
5666                 }
5667         },
5668         {
5669         .field_info_mask = {
5670                 .description = "ieh",
5671                 .field_bit_size = 8,
5672                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5673                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5674                 },
5675         .field_info_spec = {
5676                 .description = "ieh",
5677                 .field_bit_size = 8,
5678                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5679                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5680                 }
5681         },
5682         {
5683         .field_info_mask = {
5684                 .description = "l3_ipv6_cmp_dst",
5685                 .field_bit_size = 1,
5686                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5687                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5688                 },
5689         .field_info_spec = {
5690                 .description = "l3_ipv6_cmp_dst",
5691                 .field_bit_size = 1,
5692                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5693                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5694                 }
5695         },
5696         {
5697         .field_info_mask = {
5698                 .description = "l3_ipv6_cmp_src",
5699                 .field_bit_size = 1,
5700                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5701                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5702                 },
5703         .field_info_spec = {
5704                 .description = "l3_ipv6_cmp_src",
5705                 .field_bit_size = 1,
5706                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5707                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5708                 }
5709         },
5710         {
5711         .field_info_mask = {
5712                 .description = "l3_hdr_isIP",
5713                 .field_bit_size = 1,
5714                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5715                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5716                 },
5717         .field_info_spec = {
5718                 .description = "l3_hdr_isIP",
5719                 .field_bit_size = 1,
5720                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5721                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5722                 }
5723         },
5724         {
5725         .field_info_mask = {
5726                 .description = "l3_hdr_type",
5727                 .field_bit_size = 4,
5728                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5729                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
5730                 .field_opr1 = {
5731                 (BNXT_ULP_CF_IDX_O_L3 >> 8) & 0xff,
5732                 BNXT_ULP_CF_IDX_O_L3 & 0xff},
5733                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
5734                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
5735                 },
5736         .field_info_spec = {
5737                 .description = "l3_hdr_type",
5738                 .field_bit_size = 4,
5739                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5740                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5741                 .field_opr1 = {
5742                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
5743                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
5744                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
5745                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
5746                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
5747                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
5748                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
5749                 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
5750                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
5751                 .field_opr2 = {
5752                         ULP_THOR_SYM_L3_HDR_TYPE_IPV4},
5753                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
5754                 .field_opr3 = {
5755                 ULP_THOR_SYM_L3_HDR_TYPE_IPV6}
5756                 }
5757         },
5758         {
5759         .field_info_mask = {
5760                 .description = "l3_hdr_error",
5761                 .field_bit_size = 1,
5762                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5763                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5764                 .field_opr1 = {
5765                         0xff}
5766                 },
5767         .field_info_spec = {
5768                 .description = "l3_hdr_error",
5769                 .field_bit_size = 1,
5770                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5771                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5772                 }
5773         },
5774         {
5775         .field_info_mask = {
5776                 .description = "l3_hdr_valid",
5777                 .field_bit_size = 1,
5778                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5779                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5780                 .field_opr1 = {
5781                         0xff}
5782                 },
5783         .field_info_spec = {
5784                 .description = "l3_hdr_valid",
5785                 .field_bit_size = 1,
5786                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5787                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5788                 .field_opr1 = {
5789                 ULP_THOR_SYM_L3_HDR_VALID_YES}
5790                 }
5791         },
5792         {
5793         .field_info_mask = {
5794                 .description = "l2_two_vtags",
5795                 .field_bit_size = 1,
5796                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5797                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5798                 .field_opr1 = {
5799                         0xff}
5800                 },
5801         .field_info_spec = {
5802                 .description = "l2_two_vtags",
5803                 .field_bit_size = 1,
5804                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5805                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5806                 }
5807         },
5808         {
5809         .field_info_mask = {
5810                 .description = "l2_vtag_present",
5811                 .field_bit_size = 1,
5812                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5813                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5814                 .field_opr1 = {
5815                         0xff}
5816                 },
5817         .field_info_spec = {
5818                 .description = "l2_vtag_present",
5819                 .field_bit_size = 1,
5820                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
5821                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
5822                 .field_opr1 = {
5823                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
5824                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
5825                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
5826                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
5827                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
5828                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
5829                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
5830                 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
5831                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
5832                 .field_opr2 = {
5833                         ULP_THOR_SYM_L2_VTAG_PRESENT_YES},
5834                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
5835                 .field_opr3 = {
5836                 ULP_THOR_SYM_L2_VTAG_PRESENT_NO}
5837                 }
5838         },
5839         {
5840         .field_info_mask = {
5841                 .description = "l2_uc_mc_bc",
5842                 .field_bit_size = 2,
5843                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5844                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5845                 .field_opr1 = {
5846                         0xff}
5847                 },
5848         .field_info_spec = {
5849                 .description = "l2_uc_mc_bc",
5850                 .field_bit_size = 2,
5851                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5852                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5853                 }
5854         },
5855         {
5856         .field_info_mask = {
5857                 .description = "l2_hdr_type",
5858                 .field_bit_size = 2,
5859                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5860                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5861                 .field_opr1 = {
5862                         0xff}
5863                 },
5864         .field_info_spec = {
5865                 .description = "l2_hdr_type",
5866                 .field_bit_size = 2,
5867                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5868                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5869                 }
5870         },
5871         {
5872         .field_info_mask = {
5873                 .description = "l2_hdr_error",
5874                 .field_bit_size = 1,
5875                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5876                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5877                 .field_opr1 = {
5878                         0xff}
5879                 },
5880         .field_info_spec = {
5881                 .description = "l2_hdr_error",
5882                 .field_bit_size = 1,
5883                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5884                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5885                 }
5886         },
5887         {
5888         .field_info_mask = {
5889                 .description = "l2_hdr_valid",
5890                 .field_bit_size = 1,
5891                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5892                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5893                 .field_opr1 = {
5894                         0xff}
5895                 },
5896         .field_info_spec = {
5897                 .description = "l2_hdr_valid",
5898                 .field_bit_size = 1,
5899                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5900                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
5901                 .field_opr1 = {
5902                 ULP_THOR_SYM_L2_HDR_VALID_YES}
5903                 }
5904         },
5905         {
5906         .field_info_mask = {
5907                 .description = "tun_hdr_flags",
5908                 .field_bit_size = 3,
5909                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5910                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5911                 },
5912         .field_info_spec = {
5913                 .description = "tun_hdr_flags",
5914                 .field_bit_size = 3,
5915                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5916                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5917                 }
5918         },
5919         {
5920         .field_info_mask = {
5921                 .description = "tun_hdr_type",
5922                 .field_bit_size = 4,
5923                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5924                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5925                 },
5926         .field_info_spec = {
5927                 .description = "tun_hdr_type",
5928                 .field_bit_size = 4,
5929                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5930                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5931                 }
5932         },
5933         {
5934         .field_info_mask = {
5935                 .description = "tun_hdr_err",
5936                 .field_bit_size = 1,
5937                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5938                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5939                 },
5940         .field_info_spec = {
5941                 .description = "tun_hdr_err",
5942                 .field_bit_size = 1,
5943                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5944                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5945                 }
5946         },
5947         {
5948         .field_info_mask = {
5949                 .description = "tun_hdr_valid",
5950                 .field_bit_size = 1,
5951                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5952                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
5953                 .field_opr1 = {
5954                         0xff}
5955                 },
5956         .field_info_spec = {
5957                 .description = "tun_hdr_valid",
5958                 .field_bit_size = 1,
5959                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5960                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5961                 }
5962         },
5963         {
5964         .field_info_mask = {
5965                 .description = "tl4_hdr_is_udp_tcp",
5966                 .field_bit_size = 1,
5967                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5968                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5969                 },
5970         .field_info_spec = {
5971                 .description = "tl4_hdr_is_udp_tcp",
5972                 .field_bit_size = 1,
5973                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5974                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5975                 }
5976         },
5977         {
5978         .field_info_mask = {
5979                 .description = "tl4_hdr_type",
5980                 .field_bit_size = 4,
5981                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5982                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5983                 },
5984         .field_info_spec = {
5985                 .description = "tl4_hdr_type",
5986                 .field_bit_size = 4,
5987                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5988                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5989                 }
5990         },
5991         {
5992         .field_info_mask = {
5993                 .description = "tl4_hdr_error",
5994                 .field_bit_size = 1,
5995                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
5996                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
5997                 },
5998         .field_info_spec = {
5999                 .description = "tl4_hdr_error",
6000                 .field_bit_size = 1,
6001                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6002                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6003                 }
6004         },
6005         {
6006         .field_info_mask = {
6007                 .description = "tl4_hdr_valid",
6008                 .field_bit_size = 1,
6009                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6010                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6011                 .field_opr1 = {
6012                         0xff}
6013                 },
6014         .field_info_spec = {
6015                 .description = "tl4_hdr_valid",
6016                 .field_bit_size = 1,
6017                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6018                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6019                 }
6020         },
6021         {
6022         .field_info_mask = {
6023                 .description = "tl3_ipv6_cmp_dst",
6024                 .field_bit_size = 1,
6025                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6026                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6027                 },
6028         .field_info_spec = {
6029                 .description = "tl3_ipv6_cmp_dst",
6030                 .field_bit_size = 1,
6031                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6032                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6033                 }
6034         },
6035         {
6036         .field_info_mask = {
6037                 .description = "tl3_ipv6_cmp_src",
6038                 .field_bit_size = 1,
6039                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6040                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6041                 },
6042         .field_info_spec = {
6043                 .description = "tl3_ipv6_cmp_src",
6044                 .field_bit_size = 1,
6045                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6046                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6047                 }
6048         },
6049         {
6050         .field_info_mask = {
6051                 .description = "tl3_hdr_isIP",
6052                 .field_bit_size = 1,
6053                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6054                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6055                 },
6056         .field_info_spec = {
6057                 .description = "tl3_hdr_isIP",
6058                 .field_bit_size = 1,
6059                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6060                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6061                 }
6062         },
6063         {
6064         .field_info_mask = {
6065                 .description = "tl3_hdr_type",
6066                 .field_bit_size = 4,
6067                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6068                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6069                 },
6070         .field_info_spec = {
6071                 .description = "tl3_hdr_type",
6072                 .field_bit_size = 4,
6073                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6074                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6075                 }
6076         },
6077         {
6078         .field_info_mask = {
6079                 .description = "tl3_hdr_error",
6080                 .field_bit_size = 1,
6081                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6082                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6083                 },
6084         .field_info_spec = {
6085                 .description = "tl3_hdr_error",
6086                 .field_bit_size = 1,
6087                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6088                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6089                 }
6090         },
6091         {
6092         .field_info_mask = {
6093                 .description = "tl3_hdr_valid",
6094                 .field_bit_size = 1,
6095                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6096                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6097                 .field_opr1 = {
6098                         0xff}
6099                 },
6100         .field_info_spec = {
6101                 .description = "tl3_hdr_valid",
6102                 .field_bit_size = 1,
6103                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6104                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6105                 }
6106         },
6107         {
6108         .field_info_mask = {
6109                 .description = "tl2_two_vtags",
6110                 .field_bit_size = 1,
6111                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6112                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6113                 },
6114         .field_info_spec = {
6115                 .description = "tl2_two_vtags",
6116                 .field_bit_size = 1,
6117                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6118                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6119                 }
6120         },
6121         {
6122         .field_info_mask = {
6123                 .description = "tl2_vtag_present",
6124                 .field_bit_size = 1,
6125                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6126                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6127                 },
6128         .field_info_spec = {
6129                 .description = "tl2_vtag_present",
6130                 .field_bit_size = 1,
6131                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6132                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6133                 }
6134         },
6135         {
6136         .field_info_mask = {
6137                 .description = "tl2_uc_mc_bc",
6138                 .field_bit_size = 2,
6139                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6140                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6141                 },
6142         .field_info_spec = {
6143                 .description = "tl2_uc_mc_bc",
6144                 .field_bit_size = 2,
6145                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6146                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6147                 }
6148         },
6149         {
6150         .field_info_mask = {
6151                 .description = "tl2_hdr_type",
6152                 .field_bit_size = 2,
6153                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6154                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6155                 },
6156         .field_info_spec = {
6157                 .description = "tl2_hdr_type",
6158                 .field_bit_size = 2,
6159                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6160                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6161                 }
6162         },
6163         {
6164         .field_info_mask = {
6165                 .description = "tl2_hdr_valid",
6166                 .field_bit_size = 1,
6167                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6168                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6169                 .field_opr1 = {
6170                         0xff}
6171                 },
6172         .field_info_spec = {
6173                 .description = "tl2_hdr_valid",
6174                 .field_bit_size = 1,
6175                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6176                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6177                 }
6178         },
6179         {
6180         .field_info_mask = {
6181                 .description = "hrec_next",
6182                 .field_bit_size = 1,
6183                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6184                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6185                 },
6186         .field_info_spec = {
6187                 .description = "hrec_next",
6188                 .field_bit_size = 1,
6189                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6190                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6191                 }
6192         },
6193         {
6194         .field_info_mask = {
6195                 .description = "prof_func_id",
6196                 .field_bit_size = 7,
6197                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6198                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6199                 .field_opr1 = {
6200                         0xff}
6201                 },
6202         .field_info_spec = {
6203                 .description = "prof_func_id",
6204                 .field_bit_size = 7,
6205                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6206                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
6207                 .field_opr1 = {
6208                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6209                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
6210                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
6211                 .field_opr2 = {
6212                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
6213                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
6214                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
6215                 .field_opr3 = {
6216                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6217                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
6218                 }
6219         },
6220         {
6221         .field_info_mask = {
6222                 .description = "agg_error",
6223                 .field_bit_size = 1,
6224                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6225                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6226                 },
6227         .field_info_spec = {
6228                 .description = "agg_error",
6229                 .field_bit_size = 1,
6230                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6231                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6232                 }
6233         },
6234         {
6235         .field_info_mask = {
6236                 .description = "metadata",
6237                 .field_bit_size = 16,
6238                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6239                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6240                 },
6241         .field_info_spec = {
6242                 .description = "metadata",
6243                 .field_bit_size = 16,
6244                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6245                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6246                 }
6247         },
6248         {
6249         .field_info_mask = {
6250                 .description = "pkt_type_0",
6251                 .field_bit_size = 2,
6252                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6253                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6254                 },
6255         .field_info_spec = {
6256                 .description = "pkt_type_0",
6257                 .field_bit_size = 2,
6258                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6259                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6260                 }
6261         },
6262         {
6263         .field_info_mask = {
6264                 .description = "pkt_type_1",
6265                 .field_bit_size = 2,
6266                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6267                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6268                 },
6269         .field_info_spec = {
6270                 .description = "pkt_type_1",
6271                 .field_bit_size = 2,
6272                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6273                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6274                 }
6275         },
6276         {
6277         .field_info_mask = {
6278                 .description = "valid",
6279                 .field_bit_size = 1,
6280                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6281                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6282                 .field_opr1 = {
6283                 1}
6284                 },
6285         .field_info_spec = {
6286                 .description = "valid",
6287                 .field_bit_size = 1,
6288                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6289                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6290                 .field_opr1 = {
6291                 1}
6292                 }
6293         },
6294         /* class_tid: 1, , table: profile_tcam.l3_l4.vxlan */
6295         {
6296         .field_info_mask = {
6297                 .description = "l4_hdr_is_udp_tcp",
6298                 .field_bit_size = 1,
6299                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6300                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6301                 },
6302         .field_info_spec = {
6303                 .description = "l4_hdr_is_udp_tcp",
6304                 .field_bit_size = 1,
6305                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6306                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6307                 }
6308         },
6309         {
6310         .field_info_mask = {
6311                 .description = "l4_hdr_type",
6312                 .field_bit_size = 4,
6313                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6314                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6315                 },
6316         .field_info_spec = {
6317                 .description = "l4_hdr_type",
6318                 .field_bit_size = 4,
6319                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6320                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6321                 }
6322         },
6323         {
6324         .field_info_mask = {
6325                 .description = "l4_hdr_error",
6326                 .field_bit_size = 1,
6327                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6328                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6329                 },
6330         .field_info_spec = {
6331                 .description = "l4_hdr_error",
6332                 .field_bit_size = 1,
6333                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6334                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6335                 }
6336         },
6337         {
6338         .field_info_mask = {
6339                 .description = "l4_hdr_valid",
6340                 .field_bit_size = 1,
6341                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6342                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6343                 },
6344         .field_info_spec = {
6345                 .description = "l4_hdr_valid",
6346                 .field_bit_size = 1,
6347                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6348                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6349                 }
6350         },
6351         {
6352         .field_info_mask = {
6353                 .description = "ieh",
6354                 .field_bit_size = 8,
6355                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6356                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6357                 },
6358         .field_info_spec = {
6359                 .description = "ieh",
6360                 .field_bit_size = 8,
6361                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6362                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6363                 }
6364         },
6365         {
6366         .field_info_mask = {
6367                 .description = "l3_ipv6_cmp_dst",
6368                 .field_bit_size = 1,
6369                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6370                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6371                 },
6372         .field_info_spec = {
6373                 .description = "l3_ipv6_cmp_dst",
6374                 .field_bit_size = 1,
6375                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6376                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6377                 }
6378         },
6379         {
6380         .field_info_mask = {
6381                 .description = "l3_ipv6_cmp_src",
6382                 .field_bit_size = 1,
6383                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6384                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6385                 },
6386         .field_info_spec = {
6387                 .description = "l3_ipv6_cmp_src",
6388                 .field_bit_size = 1,
6389                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6390                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6391                 }
6392         },
6393         {
6394         .field_info_mask = {
6395                 .description = "l3_hdr_isIP",
6396                 .field_bit_size = 1,
6397                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6398                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6399                 },
6400         .field_info_spec = {
6401                 .description = "l3_hdr_isIP",
6402                 .field_bit_size = 1,
6403                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6404                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6405                 }
6406         },
6407         {
6408         .field_info_mask = {
6409                 .description = "l3_hdr_type",
6410                 .field_bit_size = 4,
6411                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6412                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6413                 },
6414         .field_info_spec = {
6415                 .description = "l3_hdr_type",
6416                 .field_bit_size = 4,
6417                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6418                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6419                 }
6420         },
6421         {
6422         .field_info_mask = {
6423                 .description = "l3_hdr_error",
6424                 .field_bit_size = 1,
6425                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6426                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6427                 .field_opr1 = {
6428                         0xff}
6429                 },
6430         .field_info_spec = {
6431                 .description = "l3_hdr_error",
6432                 .field_bit_size = 1,
6433                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6434                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6435                 }
6436         },
6437         {
6438         .field_info_mask = {
6439                 .description = "l3_hdr_valid",
6440                 .field_bit_size = 1,
6441                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6442                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6443                 .field_opr1 = {
6444                         0xff}
6445                 },
6446         .field_info_spec = {
6447                 .description = "l3_hdr_valid",
6448                 .field_bit_size = 1,
6449                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6450                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6451                 .field_opr1 = {
6452                 ULP_THOR_SYM_L3_HDR_VALID_YES}
6453                 }
6454         },
6455         {
6456         .field_info_mask = {
6457                 .description = "l2_two_vtags",
6458                 .field_bit_size = 1,
6459                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6460                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6461                 },
6462         .field_info_spec = {
6463                 .description = "l2_two_vtags",
6464                 .field_bit_size = 1,
6465                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6466                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6467                 }
6468         },
6469         {
6470         .field_info_mask = {
6471                 .description = "l2_vtag_present",
6472                 .field_bit_size = 1,
6473                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6474                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6475                 },
6476         .field_info_spec = {
6477                 .description = "l2_vtag_present",
6478                 .field_bit_size = 1,
6479                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6480                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6481                 }
6482         },
6483         {
6484         .field_info_mask = {
6485                 .description = "l2_uc_mc_bc",
6486                 .field_bit_size = 2,
6487                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6488                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6489                 .field_opr1 = {
6490                         0xff}
6491                 },
6492         .field_info_spec = {
6493                 .description = "l2_uc_mc_bc",
6494                 .field_bit_size = 2,
6495                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6496                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6497                 }
6498         },
6499         {
6500         .field_info_mask = {
6501                 .description = "l2_hdr_type",
6502                 .field_bit_size = 2,
6503                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6504                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6505                 },
6506         .field_info_spec = {
6507                 .description = "l2_hdr_type",
6508                 .field_bit_size = 2,
6509                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6510                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6511                 }
6512         },
6513         {
6514         .field_info_mask = {
6515                 .description = "l2_hdr_error",
6516                 .field_bit_size = 1,
6517                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6518                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6519                 },
6520         .field_info_spec = {
6521                 .description = "l2_hdr_error",
6522                 .field_bit_size = 1,
6523                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6524                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6525                 }
6526         },
6527         {
6528         .field_info_mask = {
6529                 .description = "l2_hdr_valid",
6530                 .field_bit_size = 1,
6531                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6532                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6533                 .field_opr1 = {
6534                         0xff}
6535                 },
6536         .field_info_spec = {
6537                 .description = "l2_hdr_valid",
6538                 .field_bit_size = 1,
6539                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6540                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6541                 .field_opr1 = {
6542                 ULP_THOR_SYM_L3_HDR_VALID_YES}
6543                 }
6544         },
6545         {
6546         .field_info_mask = {
6547                 .description = "tun_hdr_flags",
6548                 .field_bit_size = 3,
6549                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6550                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6551                 },
6552         .field_info_spec = {
6553                 .description = "tun_hdr_flags",
6554                 .field_bit_size = 3,
6555                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6556                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6557                 }
6558         },
6559         {
6560         .field_info_mask = {
6561                 .description = "tun_hdr_type",
6562                 .field_bit_size = 4,
6563                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6564                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6565                 .field_opr1 = {
6566                         0xff}
6567                 },
6568         .field_info_spec = {
6569                 .description = "tun_hdr_type",
6570                 .field_bit_size = 4,
6571                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6572                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6573                 }
6574         },
6575         {
6576         .field_info_mask = {
6577                 .description = "tun_hdr_err",
6578                 .field_bit_size = 1,
6579                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6580                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6581                 },
6582         .field_info_spec = {
6583                 .description = "tun_hdr_err",
6584                 .field_bit_size = 1,
6585                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6586                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6587                 }
6588         },
6589         {
6590         .field_info_mask = {
6591                 .description = "tun_hdr_valid",
6592                 .field_bit_size = 1,
6593                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6594                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6595                 .field_opr1 = {
6596                         0xff}
6597                 },
6598         .field_info_spec = {
6599                 .description = "tun_hdr_valid",
6600                 .field_bit_size = 1,
6601                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6602                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6603                 .field_opr1 = {
6604                 ULP_THOR_SYM_TUN_HDR_VALID_YES}
6605                 }
6606         },
6607         {
6608         .field_info_mask = {
6609                 .description = "tl4_hdr_is_udp_tcp",
6610                 .field_bit_size = 1,
6611                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6612                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6613                 },
6614         .field_info_spec = {
6615                 .description = "tl4_hdr_is_udp_tcp",
6616                 .field_bit_size = 1,
6617                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6618                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6619                 }
6620         },
6621         {
6622         .field_info_mask = {
6623                 .description = "tl4_hdr_type",
6624                 .field_bit_size = 4,
6625                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6626                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6627                 },
6628         .field_info_spec = {
6629                 .description = "tl4_hdr_type",
6630                 .field_bit_size = 4,
6631                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6632                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6633                 }
6634         },
6635         {
6636         .field_info_mask = {
6637                 .description = "tl4_hdr_error",
6638                 .field_bit_size = 1,
6639                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6640                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6641                 },
6642         .field_info_spec = {
6643                 .description = "tl4_hdr_error",
6644                 .field_bit_size = 1,
6645                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6646                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6647                 }
6648         },
6649         {
6650         .field_info_mask = {
6651                 .description = "tl4_hdr_valid",
6652                 .field_bit_size = 1,
6653                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6654                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6655                 .field_opr1 = {
6656                         0xff}
6657                 },
6658         .field_info_spec = {
6659                 .description = "tl4_hdr_valid",
6660                 .field_bit_size = 1,
6661                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6662                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6663                 .field_opr1 = {
6664                 ULP_THOR_SYM_TL4_HDR_VALID_YES}
6665                 }
6666         },
6667         {
6668         .field_info_mask = {
6669                 .description = "tl3_ipv6_cmp_dst",
6670                 .field_bit_size = 1,
6671                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6672                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6673                 },
6674         .field_info_spec = {
6675                 .description = "tl3_ipv6_cmp_dst",
6676                 .field_bit_size = 1,
6677                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6678                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6679                 }
6680         },
6681         {
6682         .field_info_mask = {
6683                 .description = "tl3_ipv6_cmp_src",
6684                 .field_bit_size = 1,
6685                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6686                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6687                 },
6688         .field_info_spec = {
6689                 .description = "tl3_ipv6_cmp_src",
6690                 .field_bit_size = 1,
6691                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6692                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6693                 }
6694         },
6695         {
6696         .field_info_mask = {
6697                 .description = "tl3_hdr_isIP",
6698                 .field_bit_size = 1,
6699                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6700                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6701                 },
6702         .field_info_spec = {
6703                 .description = "tl3_hdr_isIP",
6704                 .field_bit_size = 1,
6705                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6706                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6707                 }
6708         },
6709         {
6710         .field_info_mask = {
6711                 .description = "tl3_hdr_type",
6712                 .field_bit_size = 4,
6713                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6714                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
6715                 .field_opr1 = {
6716                 (BNXT_ULP_CF_IDX_O_L3 >> 8) & 0xff,
6717                 BNXT_ULP_CF_IDX_O_L3 & 0xff},
6718                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
6719                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
6720                 },
6721         .field_info_spec = {
6722                 .description = "tl3_hdr_type",
6723                 .field_bit_size = 4,
6724                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6725                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6726                 .field_opr1 = {
6727                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
6728                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
6729                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
6730                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
6731                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
6732                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
6733                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
6734                 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
6735                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
6736                 .field_opr2 = {
6737                         ULP_THOR_SYM_L3_HDR_TYPE_IPV4},
6738                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
6739                 .field_opr3 = {
6740                 ULP_THOR_SYM_L3_HDR_TYPE_IPV6}
6741                 }
6742         },
6743         {
6744         .field_info_mask = {
6745                 .description = "tl3_hdr_error",
6746                 .field_bit_size = 1,
6747                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6748                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6749                 .field_opr1 = {
6750                         0xff}
6751                 },
6752         .field_info_spec = {
6753                 .description = "tl3_hdr_error",
6754                 .field_bit_size = 1,
6755                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6756                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6757                 }
6758         },
6759         {
6760         .field_info_mask = {
6761                 .description = "tl3_hdr_valid",
6762                 .field_bit_size = 1,
6763                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6764                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6765                 .field_opr1 = {
6766                         0xff}
6767                 },
6768         .field_info_spec = {
6769                 .description = "tl3_hdr_valid",
6770                 .field_bit_size = 1,
6771                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6772                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6773                 .field_opr1 = {
6774                 ULP_THOR_SYM_TL3_HDR_VALID_YES}
6775                 }
6776         },
6777         {
6778         .field_info_mask = {
6779                 .description = "tl2_two_vtags",
6780                 .field_bit_size = 1,
6781                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6782                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6783                 .field_opr1 = {
6784                         0xff}
6785                 },
6786         .field_info_spec = {
6787                 .description = "tl2_two_vtags",
6788                 .field_bit_size = 1,
6789                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6790                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6791                 }
6792         },
6793         {
6794         .field_info_mask = {
6795                 .description = "tl2_vtag_present",
6796                 .field_bit_size = 1,
6797                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6798                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6799                 .field_opr1 = {
6800                         0xff}
6801                 },
6802         .field_info_spec = {
6803                 .description = "tl2_vtag_present",
6804                 .field_bit_size = 1,
6805                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6806                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
6807                 .field_opr1 = {
6808                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
6809                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
6810                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
6811                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
6812                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
6813                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
6814                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
6815                 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
6816                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
6817                 .field_opr2 = {
6818                         ULP_THOR_SYM_TL2_VTAG_PRESENT_YES},
6819                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
6820                 .field_opr3 = {
6821                 ULP_THOR_SYM_TL2_VTAG_PRESENT_NO}
6822                 }
6823         },
6824         {
6825         .field_info_mask = {
6826                 .description = "tl2_uc_mc_bc",
6827                 .field_bit_size = 2,
6828                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6829                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6830                 },
6831         .field_info_spec = {
6832                 .description = "tl2_uc_mc_bc",
6833                 .field_bit_size = 2,
6834                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6835                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6836                 }
6837         },
6838         {
6839         .field_info_mask = {
6840                 .description = "tl2_hdr_type",
6841                 .field_bit_size = 2,
6842                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6843                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6844                 },
6845         .field_info_spec = {
6846                 .description = "tl2_hdr_type",
6847                 .field_bit_size = 2,
6848                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6849                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6850                 }
6851         },
6852         {
6853         .field_info_mask = {
6854                 .description = "tl2_hdr_valid",
6855                 .field_bit_size = 1,
6856                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6857                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6858                 .field_opr1 = {
6859                         0xff}
6860                 },
6861         .field_info_spec = {
6862                 .description = "tl2_hdr_valid",
6863                 .field_bit_size = 1,
6864                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6865                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6866                 .field_opr1 = {
6867                 ULP_THOR_SYM_TL2_HDR_VALID_YES}
6868                 }
6869         },
6870         {
6871         .field_info_mask = {
6872                 .description = "hrec_next",
6873                 .field_bit_size = 1,
6874                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6875                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6876                 },
6877         .field_info_spec = {
6878                 .description = "hrec_next",
6879                 .field_bit_size = 1,
6880                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6881                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6882                 }
6883         },
6884         {
6885         .field_info_mask = {
6886                 .description = "prof_func_id",
6887                 .field_bit_size = 7,
6888                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6889                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6890                 .field_opr1 = {
6891                         0xff}
6892                 },
6893         .field_info_spec = {
6894                 .description = "prof_func_id",
6895                 .field_bit_size = 7,
6896                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
6897                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
6898                 .field_opr1 = {
6899                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
6900                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
6901                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
6902                 .field_opr2 = {
6903                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
6904                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
6905                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
6906                 .field_opr3 = {
6907                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6908                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
6909                 }
6910         },
6911         {
6912         .field_info_mask = {
6913                 .description = "agg_error",
6914                 .field_bit_size = 1,
6915                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6916                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6917                 },
6918         .field_info_spec = {
6919                 .description = "agg_error",
6920                 .field_bit_size = 1,
6921                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6922                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6923                 }
6924         },
6925         {
6926         .field_info_mask = {
6927                 .description = "metadata",
6928                 .field_bit_size = 16,
6929                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6930                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6931                 },
6932         .field_info_spec = {
6933                 .description = "metadata",
6934                 .field_bit_size = 16,
6935                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6936                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6937                 }
6938         },
6939         {
6940         .field_info_mask = {
6941                 .description = "pkt_type_0",
6942                 .field_bit_size = 2,
6943                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6944                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6945                 },
6946         .field_info_spec = {
6947                 .description = "pkt_type_0",
6948                 .field_bit_size = 2,
6949                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6950                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6951                 }
6952         },
6953         {
6954         .field_info_mask = {
6955                 .description = "pkt_type_1",
6956                 .field_bit_size = 2,
6957                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6958                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6959                 },
6960         .field_info_spec = {
6961                 .description = "pkt_type_1",
6962                 .field_bit_size = 2,
6963                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6964                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
6965                 }
6966         },
6967         {
6968         .field_info_mask = {
6969                 .description = "valid",
6970                 .field_bit_size = 1,
6971                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6972                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6973                 .field_opr1 = {
6974                 1}
6975                 },
6976         .field_info_spec = {
6977                 .description = "valid",
6978                 .field_bit_size = 1,
6979                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6980                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
6981                 .field_opr1 = {
6982                 1}
6983                 }
6984         },
6985         /* class_tid: 1, , table: profile_tcam_cache.wr */
6986         {
6987         .field_info_mask = {
6988                 .description = "recycle_cnt",
6989                 .field_bit_size = 2,
6990                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6991                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
6992                 .field_opr1 = {
6993                         0xff}
6994                 },
6995         .field_info_spec = {
6996                 .description = "recycle_cnt",
6997                 .field_bit_size = 2,
6998                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
6999                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
7000                 }
7001         },
7002         {
7003         .field_info_mask = {
7004                 .description = "prof_func_id",
7005                 .field_bit_size = 7,
7006                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7007                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7008                 .field_opr1 = {
7009                         0xff}
7010                 },
7011         .field_info_spec = {
7012                 .description = "prof_func_id",
7013                 .field_bit_size = 7,
7014                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7015                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7016                 .field_opr1 = {
7017                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
7018                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
7019                 .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
7020                 .field_opr2 = {
7021                         (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
7022                         BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
7023                 .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
7024                 .field_opr3 = {
7025                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
7026                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
7027                 }
7028         },
7029         {
7030         .field_info_mask = {
7031                 .description = "hdr_sig_id",
7032                 .field_bit_size = 5,
7033                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7034                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7035                 .field_opr1 = {
7036                         0xff}
7037                 },
7038         .field_info_spec = {
7039                 .description = "hdr_sig_id",
7040                 .field_bit_size = 5,
7041                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7042                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7043                 .field_opr1 = {
7044                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
7045                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
7046                 }
7047         },
7048         /* class_tid: 1, , table: wm.l3_l4.ipv4 */
7049         {
7050         .field_info_mask = {
7051                 .description = "wc_profile_id",
7052                 .field_bit_size = 8,
7053                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7054                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7055                 .field_opr1 = {
7056                         0xff}
7057                 },
7058         .field_info_spec = {
7059                 .description = "wc_profile_id",
7060                 .field_bit_size = 8,
7061                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7062                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
7063                 .field_opr1 = {
7064                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 >> 8) & 0xff,
7065                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 & 0xff}
7066                 }
7067         },
7068         {
7069         .field_info_mask = {
7070                 .description = "l2_cntxt_id",
7071                 .field_bit_size = 10,
7072                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7073                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
7074                 .field_opr1 = {
7075                         0xff,
7076                         0xff}
7077                 },
7078         .field_info_spec = {
7079                 .description = "l2_cntxt_id",
7080                 .field_bit_size = 10,
7081                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
7082                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
7083                 .field_opr1 = {
7084                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
7085                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
7086                 }
7087         },
7088         {
7089         .field_info_mask = {
7090                 .description = "parif",
7091                 .field_bit_size = 4,
7092                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7093                 },
7094         .field_info_spec = {
7095                 .description = "parif",
7096                 .field_bit_size = 4,
7097                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7098                 }
7099         },
7100         {
7101         .field_info_mask = {
7102                 .description = "spif",
7103                 .field_bit_size = 2,
7104                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7105                 },
7106         .field_info_spec = {
7107                 .description = "spif",
7108                 .field_bit_size = 2,
7109                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7110                 }
7111         },
7112         {
7113         .field_info_mask = {
7114                 .description = "svif",
7115                 .field_bit_size = 11,
7116                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7117                 },
7118         .field_info_spec = {
7119                 .description = "svif",
7120                 .field_bit_size = 11,
7121                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7122                 }
7123         },
7124         {
7125         .field_info_mask = {
7126                 .description = "lcos",
7127                 .field_bit_size = 3,
7128                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7129                 },
7130         .field_info_spec = {
7131                 .description = "lcos",
7132                 .field_bit_size = 3,
7133                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7134                 }
7135         },
7136         {
7137         .field_info_mask = {
7138                 .description = "meta",
7139                 .field_bit_size = 16,
7140                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7141                 },
7142         .field_info_spec = {
7143                 .description = "meta",
7144                 .field_bit_size = 16,
7145                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7146                 }
7147         },
7148         {
7149         .field_info_mask = {
7150                 .description = "rcyc_cnt",
7151                 .field_bit_size = 2,
7152                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7153                 },
7154         .field_info_spec = {
7155                 .description = "rcyc_cnt",
7156                 .field_bit_size = 2,
7157                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7158                 }
7159         },
7160         {
7161         .field_info_mask = {
7162                 .description = "loopback",
7163                 .field_bit_size = 1,
7164                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7165                 },
7166         .field_info_spec = {
7167                 .description = "loopback",
7168                 .field_bit_size = 1,
7169                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7170                 }
7171         },
7172         {
7173         .field_info_mask = {
7174                 .description = "tl2_l2type",
7175                 .field_bit_size = 2,
7176                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7177                 },
7178         .field_info_spec = {
7179                 .description = "tl2_l2type",
7180                 .field_bit_size = 2,
7181                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7182                 }
7183         },
7184         {
7185         .field_info_mask = {
7186                 .description = "tl2_dmac",
7187                 .field_bit_size = 48,
7188                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7189                 },
7190         .field_info_spec = {
7191                 .description = "tl2_dmac",
7192                 .field_bit_size = 48,
7193                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7194                 }
7195         },
7196         {
7197         .field_info_mask = {
7198                 .description = "tl2_smac",
7199                 .field_bit_size = 48,
7200                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7201                 },
7202         .field_info_spec = {
7203                 .description = "tl2_smac",
7204                 .field_bit_size = 48,
7205                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7206                 }
7207         },
7208         {
7209         .field_info_mask = {
7210                 .description = "tl2_dt",
7211                 .field_bit_size = 2,
7212                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7213                 },
7214         .field_info_spec = {
7215                 .description = "tl2_dt",
7216                 .field_bit_size = 2,
7217                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7218                 }
7219         },
7220         {
7221         .field_info_mask = {
7222                 .description = "tl2_sa",
7223                 .field_bit_size = 1,
7224                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7225                 },
7226         .field_info_spec = {
7227                 .description = "tl2_sa",
7228                 .field_bit_size = 1,
7229                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7230                 }
7231         },
7232         {
7233         .field_info_mask = {
7234                 .description = "tl2_nvt",
7235                 .field_bit_size = 2,
7236                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7237                 },
7238         .field_info_spec = {
7239                 .description = "tl2_nvt",
7240                 .field_bit_size = 2,
7241                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7242                 }
7243         },
7244         {
7245         .field_info_mask = {
7246                 .description = "tl2_ovp",
7247                 .field_bit_size = 3,
7248                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7249                 },
7250         .field_info_spec = {
7251                 .description = "tl2_ovp",
7252                 .field_bit_size = 3,
7253                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7254                 }
7255         },
7256         {
7257         .field_info_mask = {
7258                 .description = "tl2_ovd",
7259                 .field_bit_size = 1,
7260                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7261                 },
7262         .field_info_spec = {
7263                 .description = "tl2_ovd",
7264                 .field_bit_size = 1,
7265                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7266                 }
7267         },
7268         {
7269         .field_info_mask = {
7270                 .description = "tl2_ovv",
7271                 .field_bit_size = 12,
7272                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7273                 },
7274         .field_info_spec = {
7275                 .description = "tl2_ovv",
7276                 .field_bit_size = 12,
7277                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7278                 }
7279         },
7280         {
7281         .field_info_mask = {
7282                 .description = "tl2_ovt",
7283                 .field_bit_size = 3,
7284                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7285                 },
7286         .field_info_spec = {
7287                 .description = "tl2_ovt",
7288                 .field_bit_size = 3,
7289                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7290                 }
7291         },
7292         {
7293         .field_info_mask = {
7294                 .description = "tl2_ivp",
7295                 .field_bit_size = 3,
7296                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7297                 },
7298         .field_info_spec = {
7299                 .description = "tl2_ivp",
7300                 .field_bit_size = 3,
7301                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7302                 }
7303         },
7304         {
7305         .field_info_mask = {
7306                 .description = "tl2_ivd",
7307                 .field_bit_size = 1,
7308                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7309                 },
7310         .field_info_spec = {
7311                 .description = "tl2_ivd",
7312                 .field_bit_size = 1,
7313                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7314                 }
7315         },
7316         {
7317         .field_info_mask = {
7318                 .description = "tl2_ivv",
7319                 .field_bit_size = 12,
7320                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7321                 },
7322         .field_info_spec = {
7323                 .description = "tl2_ivv",
7324                 .field_bit_size = 12,
7325                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7326                 }
7327         },
7328         {
7329         .field_info_mask = {
7330                 .description = "tl2_ivt",
7331                 .field_bit_size = 3,
7332                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7333                 },
7334         .field_info_spec = {
7335                 .description = "tl2_ivt",
7336                 .field_bit_size = 3,
7337                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7338                 }
7339         },
7340         {
7341         .field_info_mask = {
7342                 .description = "tl2_etype",
7343                 .field_bit_size = 16,
7344                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7345                 },
7346         .field_info_spec = {
7347                 .description = "tl2_etype",
7348                 .field_bit_size = 16,
7349                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7350                 }
7351         },
7352         {
7353         .field_info_mask = {
7354                 .description = "tl3.l3type",
7355                 .field_bit_size = 4,
7356                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7357                 },
7358         .field_info_spec = {
7359                 .description = "tl3.l3type",
7360                 .field_bit_size = 4,
7361                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7362                 }
7363         },
7364         {
7365         .field_info_mask = {
7366                 .description = "tl3.sip.ipv4",
7367                 .field_bit_size = 32,
7368                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7369                 },
7370         .field_info_spec = {
7371                 .description = "tl3.sip.ipv4",
7372                 .field_bit_size = 32,
7373                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7374                 }
7375         },
7376         {
7377         .field_info_mask = {
7378                 .description = "tl3.sip.ipv6",
7379                 .field_bit_size = 128,
7380                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7381                 },
7382         .field_info_spec = {
7383                 .description = "tl3.sip.ipv6",
7384                 .field_bit_size = 128,
7385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7386                 }
7387         },
7388         {
7389         .field_info_mask = {
7390                 .description = "tl3.sip_selcmp.ipv6",
7391                 .field_bit_size = 72,
7392                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7393                 },
7394         .field_info_spec = {
7395                 .description = "tl3.sip_selcmp.ipv6",
7396                 .field_bit_size = 72,
7397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7398                 }
7399         },
7400         {
7401         .field_info_mask = {
7402                 .description = "tl3.dip.ipv4",
7403                 .field_bit_size = 32,
7404                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7405                 },
7406         .field_info_spec = {
7407                 .description = "tl3.dip.ipv4",
7408                 .field_bit_size = 32,
7409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7410                 }
7411         },
7412         {
7413         .field_info_mask = {
7414                 .description = "tl3.dip.ipv6",
7415                 .field_bit_size = 128,
7416                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7417                 },
7418         .field_info_spec = {
7419                 .description = "tl3.dip.ipv6",
7420                 .field_bit_size = 128,
7421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7422                 }
7423         },
7424         {
7425         .field_info_mask = {
7426                 .description = "tl3.dip_selcmp.ipv6",
7427                 .field_bit_size = 72,
7428                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7429                 },
7430         .field_info_spec = {
7431                 .description = "tl3.dip_selcmp.ipv6",
7432                 .field_bit_size = 72,
7433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7434                 }
7435         },
7436         {
7437         .field_info_mask = {
7438                 .description = "tl3.ttl",
7439                 .field_bit_size = 8,
7440                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7441                 },
7442         .field_info_spec = {
7443                 .description = "tl3.ttl",
7444                 .field_bit_size = 8,
7445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7446                 }
7447         },
7448         {
7449         .field_info_mask = {
7450                 .description = "tl3.prot",
7451                 .field_bit_size = 8,
7452                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7453                 },
7454         .field_info_spec = {
7455                 .description = "tl3.prot",
7456                 .field_bit_size = 8,
7457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7458                 }
7459         },
7460         {
7461         .field_info_mask = {
7462                 .description = "tl3.fid.ipv4",
7463                 .field_bit_size = 16,
7464                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7465                 },
7466         .field_info_spec = {
7467                 .description = "tl3.fid.ipv4",
7468                 .field_bit_size = 16,
7469                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7470                 }
7471         },
7472         {
7473         .field_info_mask = {
7474                 .description = "tl3.fid.ipv6",
7475                 .field_bit_size = 20,
7476                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7477                 },
7478         .field_info_spec = {
7479                 .description = "tl3.fid.ipv6",
7480                 .field_bit_size = 20,
7481                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7482                 }
7483         },
7484         {
7485         .field_info_mask = {
7486                 .description = "tl3.qos",
7487                 .field_bit_size = 8,
7488                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7489                 },
7490         .field_info_spec = {
7491                 .description = "tl3.qos",
7492                 .field_bit_size = 8,
7493                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7494                 }
7495         },
7496         {
7497         .field_info_mask = {
7498                 .description = "tl3.ieh_nonext",
7499                 .field_bit_size = 1,
7500                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7501                 },
7502         .field_info_spec = {
7503                 .description = "tl3.ieh_nonext",
7504                 .field_bit_size = 1,
7505                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7506                 }
7507         },
7508         {
7509         .field_info_mask = {
7510                 .description = "tl3.ieh_esp",
7511                 .field_bit_size = 1,
7512                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7513                 },
7514         .field_info_spec = {
7515                 .description = "tl3.ieh_esp",
7516                 .field_bit_size = 1,
7517                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7518                 }
7519         },
7520         {
7521         .field_info_mask = {
7522                 .description = "tl3.ieh_auth",
7523                 .field_bit_size = 1,
7524                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7525                 },
7526         .field_info_spec = {
7527                 .description = "tl3.ieh_auth",
7528                 .field_bit_size = 1,
7529                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7530                 }
7531         },
7532         {
7533         .field_info_mask = {
7534                 .description = "tl3.ieh_dest",
7535                 .field_bit_size = 1,
7536                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7537                 },
7538         .field_info_spec = {
7539                 .description = "tl3.ieh_dest",
7540                 .field_bit_size = 1,
7541                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7542                 }
7543         },
7544         {
7545         .field_info_mask = {
7546                 .description = "tl3.ieh_frag",
7547                 .field_bit_size = 1,
7548                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7549                 },
7550         .field_info_spec = {
7551                 .description = "tl3.ieh_frag",
7552                 .field_bit_size = 1,
7553                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7554                 }
7555         },
7556         {
7557         .field_info_mask = {
7558                 .description = "tl3.ieh_rthdr",
7559                 .field_bit_size = 1,
7560                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7561                 },
7562         .field_info_spec = {
7563                 .description = "tl3.ieh_rthdr",
7564                 .field_bit_size = 1,
7565                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7566                 }
7567         },
7568         {
7569         .field_info_mask = {
7570                 .description = "tl3.ieh_hop",
7571                 .field_bit_size = 1,
7572                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7573                 },
7574         .field_info_spec = {
7575                 .description = "tl3.ieh_hop",
7576                 .field_bit_size = 1,
7577                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7578                 }
7579         },
7580         {
7581         .field_info_mask = {
7582                 .description = "tl3.ieh_1frag",
7583                 .field_bit_size = 1,
7584                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7585                 },
7586         .field_info_spec = {
7587                 .description = "tl3.ieh_1frag",
7588                 .field_bit_size = 1,
7589                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7590                 }
7591         },
7592         {
7593         .field_info_mask = {
7594                 .description = "tl3.df",
7595                 .field_bit_size = 1,
7596                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7597                 },
7598         .field_info_spec = {
7599                 .description = "tl3.df",
7600                 .field_bit_size = 1,
7601                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7602                 }
7603         },
7604         {
7605         .field_info_mask = {
7606                 .description = "tl3.l3err",
7607                 .field_bit_size = 4,
7608                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7609                 },
7610         .field_info_spec = {
7611                 .description = "tl3.l3err",
7612                 .field_bit_size = 4,
7613                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7614                 }
7615         },
7616         {
7617         .field_info_mask = {
7618                 .description = "tl4.l4type",
7619                 .field_bit_size = 4,
7620                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7621                 },
7622         .field_info_spec = {
7623                 .description = "tl4.l4type",
7624                 .field_bit_size = 4,
7625                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7626                 }
7627         },
7628         {
7629         .field_info_mask = {
7630                 .description = "tl4.src",
7631                 .field_bit_size = 16,
7632                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7633                 },
7634         .field_info_spec = {
7635                 .description = "tl4.src",
7636                 .field_bit_size = 16,
7637                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7638                 }
7639         },
7640         {
7641         .field_info_mask = {
7642                 .description = "tl4.dst",
7643                 .field_bit_size = 16,
7644                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7645                 },
7646         .field_info_spec = {
7647                 .description = "tl4.dst",
7648                 .field_bit_size = 16,
7649                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7650                 }
7651         },
7652         {
7653         .field_info_mask = {
7654                 .description = "tl4.flags",
7655                 .field_bit_size = 9,
7656                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7657                 },
7658         .field_info_spec = {
7659                 .description = "tl4.flags",
7660                 .field_bit_size = 9,
7661                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7662                 }
7663         },
7664         {
7665         .field_info_mask = {
7666                 .description = "tl4.seq",
7667                 .field_bit_size = 32,
7668                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7669                 },
7670         .field_info_spec = {
7671                 .description = "tl4.seq",
7672                 .field_bit_size = 32,
7673                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7674                 }
7675         },
7676         {
7677         .field_info_mask = {
7678                 .description = "tl4.pa",
7679                 .field_bit_size = 1,
7680                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7681                 },
7682         .field_info_spec = {
7683                 .description = "tl4.pa",
7684                 .field_bit_size = 1,
7685                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7686                 }
7687         },
7688         {
7689         .field_info_mask = {
7690                 .description = "tl4.opt",
7691                 .field_bit_size = 1,
7692                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7693                 },
7694         .field_info_spec = {
7695                 .description = "tl4.opt",
7696                 .field_bit_size = 1,
7697                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7698                 }
7699         },
7700         {
7701         .field_info_mask = {
7702                 .description = "tl4.tcpts",
7703                 .field_bit_size = 1,
7704                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7705                 },
7706         .field_info_spec = {
7707                 .description = "tl4.tcpts",
7708                 .field_bit_size = 1,
7709                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7710                 }
7711         },
7712         {
7713         .field_info_mask = {
7714                 .description = "tl4.err",
7715                 .field_bit_size = 4,
7716                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7717                 },
7718         .field_info_spec = {
7719                 .description = "tl4.err",
7720                 .field_bit_size = 4,
7721                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7722                 }
7723         },
7724         {
7725         .field_info_mask = {
7726                 .description = "tuntype",
7727                 .field_bit_size = 4,
7728                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7729                 },
7730         .field_info_spec = {
7731                 .description = "tuntype",
7732                 .field_bit_size = 4,
7733                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7734                 }
7735         },
7736         {
7737         .field_info_mask = {
7738                 .description = "tflags",
7739                 .field_bit_size = 3,
7740                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7741                 },
7742         .field_info_spec = {
7743                 .description = "tflags",
7744                 .field_bit_size = 3,
7745                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7746                 }
7747         },
7748         {
7749         .field_info_mask = {
7750                 .description = "tids",
7751                 .field_bit_size = 24,
7752                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7753                 },
7754         .field_info_spec = {
7755                 .description = "tids",
7756                 .field_bit_size = 24,
7757                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7758                 }
7759         },
7760         {
7761         .field_info_mask = {
7762                 .description = "tid",
7763                 .field_bit_size = 32,
7764                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7765                 },
7766         .field_info_spec = {
7767                 .description = "tid",
7768                 .field_bit_size = 32,
7769                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7770                 }
7771         },
7772         {
7773         .field_info_mask = {
7774                 .description = "tctxts",
7775                 .field_bit_size = 24,
7776                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7777                 },
7778         .field_info_spec = {
7779                 .description = "tctxts",
7780                 .field_bit_size = 24,
7781                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7782                 }
7783         },
7784         {
7785         .field_info_mask = {
7786                 .description = "tctxt",
7787                 .field_bit_size = 32,
7788                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7789                 },
7790         .field_info_spec = {
7791                 .description = "tctxt",
7792                 .field_bit_size = 32,
7793                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7794                 }
7795         },
7796         {
7797         .field_info_mask = {
7798                 .description = "tqos",
7799                 .field_bit_size = 3,
7800                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7801                 },
7802         .field_info_spec = {
7803                 .description = "tqos",
7804                 .field_bit_size = 3,
7805                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7806                 }
7807         },
7808         {
7809         .field_info_mask = {
7810                 .description = "terr",
7811                 .field_bit_size = 4,
7812                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7813                 },
7814         .field_info_spec = {
7815                 .description = "terr",
7816                 .field_bit_size = 4,
7817                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7818                 }
7819         },
7820         {
7821         .field_info_mask = {
7822                 .description = "l2_l2type",
7823                 .field_bit_size = 2,
7824                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7825                 },
7826         .field_info_spec = {
7827                 .description = "l2_l2type",
7828                 .field_bit_size = 2,
7829                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7830                 }
7831         },
7832         {
7833         .field_info_mask = {
7834                 .description = "l2_dmac",
7835                 .field_bit_size = 48,
7836                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7837                 },
7838         .field_info_spec = {
7839                 .description = "l2_dmac",
7840                 .field_bit_size = 48,
7841                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7842                 }
7843         },
7844         {
7845         .field_info_mask = {
7846                 .description = "l2_smac",
7847                 .field_bit_size = 48,
7848                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7849                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7850                 .field_opr1 = {
7851                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7852                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
7853                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7854                 .field_opr2 = {
7855                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7856                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
7857                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7858                 },
7859         .field_info_spec = {
7860                 .description = "l2_smac",
7861                 .field_bit_size = 48,
7862                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7863                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
7864                 .field_opr1 = {
7865                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7866                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
7867                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7868                 .field_opr2 = {
7869                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
7870                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
7871                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7872                 }
7873         },
7874         {
7875         .field_info_mask = {
7876                 .description = "l2_dt",
7877                 .field_bit_size = 2,
7878                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7879                 },
7880         .field_info_spec = {
7881                 .description = "l2_dt",
7882                 .field_bit_size = 2,
7883                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7884                 }
7885         },
7886         {
7887         .field_info_mask = {
7888                 .description = "l2_sa",
7889                 .field_bit_size = 1,
7890                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7891                 },
7892         .field_info_spec = {
7893                 .description = "l2_sa",
7894                 .field_bit_size = 1,
7895                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7896                 }
7897         },
7898         {
7899         .field_info_mask = {
7900                 .description = "l2_nvt",
7901                 .field_bit_size = 2,
7902                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7903                 },
7904         .field_info_spec = {
7905                 .description = "l2_nvt",
7906                 .field_bit_size = 2,
7907                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7908                 }
7909         },
7910         {
7911         .field_info_mask = {
7912                 .description = "l2_ovp",
7913                 .field_bit_size = 3,
7914                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7915                 },
7916         .field_info_spec = {
7917                 .description = "l2_ovp",
7918                 .field_bit_size = 3,
7919                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7920                 }
7921         },
7922         {
7923         .field_info_mask = {
7924                 .description = "l2_ovd",
7925                 .field_bit_size = 1,
7926                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7927                 },
7928         .field_info_spec = {
7929                 .description = "l2_ovd",
7930                 .field_bit_size = 1,
7931                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7932                 }
7933         },
7934         {
7935         .field_info_mask = {
7936                 .description = "l2_ovv",
7937                 .field_bit_size = 12,
7938                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7939                 },
7940         .field_info_spec = {
7941                 .description = "l2_ovv",
7942                 .field_bit_size = 12,
7943                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7944                 }
7945         },
7946         {
7947         .field_info_mask = {
7948                 .description = "l2_ovt",
7949                 .field_bit_size = 3,
7950                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7951                 },
7952         .field_info_spec = {
7953                 .description = "l2_ovt",
7954                 .field_bit_size = 3,
7955                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7956                 }
7957         },
7958         {
7959         .field_info_mask = {
7960                 .description = "l2_ivp",
7961                 .field_bit_size = 3,
7962                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7963                 },
7964         .field_info_spec = {
7965                 .description = "l2_ivp",
7966                 .field_bit_size = 3,
7967                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7968                 }
7969         },
7970         {
7971         .field_info_mask = {
7972                 .description = "l2_ivd",
7973                 .field_bit_size = 1,
7974                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7975                 },
7976         .field_info_spec = {
7977                 .description = "l2_ivd",
7978                 .field_bit_size = 1,
7979                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
7980                 }
7981         },
7982         {
7983         .field_info_mask = {
7984                 .description = "l2_ivv",
7985                 .field_bit_size = 12,
7986                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
7987                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
7988                 .field_opr1 = {
7989                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
7990                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
7991                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
7992                 .field_opr2 = {
7993                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
7994                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
7995                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
7996                 },
7997         .field_info_spec = {
7998                 .description = "l2_ivv",
7999                 .field_bit_size = 12,
8000                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8001                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8002                 .field_opr1 = {
8003                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
8004                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
8005                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8006                 .field_opr2 = {
8007                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
8008                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
8009                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8010                 }
8011         },
8012         {
8013         .field_info_mask = {
8014                 .description = "l2_ivt",
8015                 .field_bit_size = 3,
8016                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8017                 },
8018         .field_info_spec = {
8019                 .description = "l2_ivt",
8020                 .field_bit_size = 3,
8021                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8022                 }
8023         },
8024         {
8025         .field_info_mask = {
8026                 .description = "l2_etype",
8027                 .field_bit_size = 16,
8028                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8029                 },
8030         .field_info_spec = {
8031                 .description = "l2_etype",
8032                 .field_bit_size = 16,
8033                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8034                 }
8035         },
8036         {
8037         .field_info_mask = {
8038                 .description = "l3.l3type",
8039                 .field_bit_size = 4,
8040                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8041                 },
8042         .field_info_spec = {
8043                 .description = "l3.l3type",
8044                 .field_bit_size = 4,
8045                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8046                 }
8047         },
8048         {
8049         .field_info_mask = {
8050                 .description = "l3.sip.ipv4",
8051                 .field_bit_size = 32,
8052                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8053                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8054                 .field_opr1 = {
8055                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
8056                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
8057                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8058                 .field_opr2 = {
8059                         (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
8060                         BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
8061                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8062                 },
8063         .field_info_spec = {
8064                 .description = "l3.sip.ipv4",
8065                 .field_bit_size = 32,
8066                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8067                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8068                 .field_opr1 = {
8069                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
8070                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
8071                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8072                 .field_opr2 = {
8073                         (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
8074                         BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
8075                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8076                 }
8077         },
8078         {
8079         .field_info_mask = {
8080                 .description = "l3.sip.ipv6",
8081                 .field_bit_size = 128,
8082                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8083                 },
8084         .field_info_spec = {
8085                 .description = "l3.sip.ipv6",
8086                 .field_bit_size = 128,
8087                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8088                 }
8089         },
8090         {
8091         .field_info_mask = {
8092                 .description = "l3.sip_selcmp.ipv6",
8093                 .field_bit_size = 72,
8094                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8095                 },
8096         .field_info_spec = {
8097                 .description = "l3.sip_selcmp.ipv6",
8098                 .field_bit_size = 72,
8099                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8100                 }
8101         },
8102         {
8103         .field_info_mask = {
8104                 .description = "l3.dip.ipv4",
8105                 .field_bit_size = 32,
8106                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8107                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8108                 .field_opr1 = {
8109                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
8110                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
8111                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8112                 .field_opr2 = {
8113                         (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
8114                         BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
8115                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8116                 },
8117         .field_info_spec = {
8118                 .description = "l3.dip.ipv4",
8119                 .field_bit_size = 32,
8120                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8121                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
8122                 .field_opr1 = {
8123                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
8124                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
8125                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
8126                 .field_opr2 = {
8127                         (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
8128                         BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
8129                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8130                 }
8131         },
8132         {
8133         .field_info_mask = {
8134                 .description = "l3.dip.ipv6",
8135                 .field_bit_size = 128,
8136                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8137                 },
8138         .field_info_spec = {
8139                 .description = "l3.dip.ipv6",
8140                 .field_bit_size = 128,
8141                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8142                 }
8143         },
8144         {
8145         .field_info_mask = {
8146                 .description = "l3.dip_selcmp.ipv6",
8147                 .field_bit_size = 72,
8148                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8149                 },
8150         .field_info_spec = {
8151                 .description = "l3.dip_selcmp.ipv6",
8152                 .field_bit_size = 72,
8153                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8154                 }
8155         },
8156         {
8157         .field_info_mask = {
8158                 .description = "l3.ttl",
8159                 .field_bit_size = 8,
8160                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8161                 },
8162         .field_info_spec = {
8163                 .description = "l3.ttl",
8164                 .field_bit_size = 8,
8165                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8166                 }
8167         },
8168         {
8169         .field_info_mask = {
8170                 .description = "l3.prot",
8171                 .field_bit_size = 8,
8172                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8173                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8174                 .field_opr1 = {
8175                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
8176                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
8177                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
8178                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8179                 },
8180         .field_info_spec = {
8181                 .description = "l3.prot",
8182                 .field_bit_size = 8,
8183                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8184                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8185                 .field_opr1 = {
8186                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
8187                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
8188                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8189                 .field_opr2 = {
8190                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
8191                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
8192                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8193                 }
8194         },
8195         {
8196         .field_info_mask = {
8197                 .description = "l3.fid.ipv4",
8198                 .field_bit_size = 16,
8199                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8200                 },
8201         .field_info_spec = {
8202                 .description = "l3.fid.ipv4",
8203                 .field_bit_size = 16,
8204                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8205                 }
8206         },
8207         {
8208         .field_info_mask = {
8209                 .description = "l3.fid.ipv6",
8210                 .field_bit_size = 20,
8211                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8212                 },
8213         .field_info_spec = {
8214                 .description = "l3.fid.ipv6",
8215                 .field_bit_size = 20,
8216                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8217                 }
8218         },
8219         {
8220         .field_info_mask = {
8221                 .description = "l3.qos",
8222                 .field_bit_size = 8,
8223                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8224                 },
8225         .field_info_spec = {
8226                 .description = "l3.qos",
8227                 .field_bit_size = 8,
8228                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8229                 }
8230         },
8231         {
8232         .field_info_mask = {
8233                 .description = "l3.ieh_nonext",
8234                 .field_bit_size = 1,
8235                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8236                 },
8237         .field_info_spec = {
8238                 .description = "l3.ieh_nonext",
8239                 .field_bit_size = 1,
8240                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8241                 }
8242         },
8243         {
8244         .field_info_mask = {
8245                 .description = "l3.ieh_esp",
8246                 .field_bit_size = 1,
8247                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8248                 },
8249         .field_info_spec = {
8250                 .description = "l3.ieh_esp",
8251                 .field_bit_size = 1,
8252                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8253                 }
8254         },
8255         {
8256         .field_info_mask = {
8257                 .description = "l3.ieh_auth",
8258                 .field_bit_size = 1,
8259                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8260                 },
8261         .field_info_spec = {
8262                 .description = "l3.ieh_auth",
8263                 .field_bit_size = 1,
8264                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8265                 }
8266         },
8267         {
8268         .field_info_mask = {
8269                 .description = "l3.ieh_dest",
8270                 .field_bit_size = 1,
8271                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8272                 },
8273         .field_info_spec = {
8274                 .description = "l3.ieh_dest",
8275                 .field_bit_size = 1,
8276                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8277                 }
8278         },
8279         {
8280         .field_info_mask = {
8281                 .description = "l3.ieh_frag",
8282                 .field_bit_size = 1,
8283                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8284                 },
8285         .field_info_spec = {
8286                 .description = "l3.ieh_frag",
8287                 .field_bit_size = 1,
8288                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8289                 }
8290         },
8291         {
8292         .field_info_mask = {
8293                 .description = "l3.ieh_rthdr",
8294                 .field_bit_size = 1,
8295                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8296                 },
8297         .field_info_spec = {
8298                 .description = "l3.ieh_rthdr",
8299                 .field_bit_size = 1,
8300                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8301                 }
8302         },
8303         {
8304         .field_info_mask = {
8305                 .description = "l3.ieh_hop",
8306                 .field_bit_size = 1,
8307                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8308                 },
8309         .field_info_spec = {
8310                 .description = "l3.ieh_hop",
8311                 .field_bit_size = 1,
8312                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8313                 }
8314         },
8315         {
8316         .field_info_mask = {
8317                 .description = "l3.ieh_1frag",
8318                 .field_bit_size = 1,
8319                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8320                 },
8321         .field_info_spec = {
8322                 .description = "l3.ieh_1frag",
8323                 .field_bit_size = 1,
8324                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8325                 }
8326         },
8327         {
8328         .field_info_mask = {
8329                 .description = "l3.df",
8330                 .field_bit_size = 1,
8331                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8332                 },
8333         .field_info_spec = {
8334                 .description = "l3.df",
8335                 .field_bit_size = 1,
8336                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8337                 }
8338         },
8339         {
8340         .field_info_mask = {
8341                 .description = "l3.l3err.ipv4",
8342                 .field_bit_size = 4,
8343                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8344                 },
8345         .field_info_spec = {
8346                 .description = "l3.l3err.ipv4",
8347                 .field_bit_size = 4,
8348                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8349                 }
8350         },
8351         {
8352         .field_info_mask = {
8353                 .description = "l3.l3err.ipv6",
8354                 .field_bit_size = 4,
8355                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8356                 },
8357         .field_info_spec = {
8358                 .description = "l3.l3err.ipv6",
8359                 .field_bit_size = 4,
8360                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8361                 }
8362         },
8363         {
8364         .field_info_mask = {
8365                 .description = "l4.l4type",
8366                 .field_bit_size = 4,
8367                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8368                 },
8369         .field_info_spec = {
8370                 .description = "l4.l4type",
8371                 .field_bit_size = 4,
8372                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8373                 }
8374         },
8375         {
8376         .field_info_mask = {
8377                 .description = "l4.src",
8378                 .field_bit_size = 16,
8379                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8380                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8381                 .field_opr1 = {
8382                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
8383                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
8384                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8385                 .field_opr2 = {
8386                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff,
8387                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff},
8388                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8389                 },
8390         .field_info_spec = {
8391                 .description = "l4.src",
8392                 .field_bit_size = 16,
8393                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8394                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8395                 .field_opr1 = {
8396                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
8397                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
8398                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8399                 .field_opr2 = {
8400                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
8401                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
8402                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8403                 }
8404         },
8405         {
8406         .field_info_mask = {
8407                 .description = "l4.dst",
8408                 .field_bit_size = 16,
8409                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8410                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8411                 .field_opr1 = {
8412                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
8413                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
8414                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8415                 .field_opr2 = {
8416                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff,
8417                         BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff},
8418                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8419                 },
8420         .field_info_spec = {
8421                 .description = "l4.dst",
8422                 .field_bit_size = 16,
8423                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
8424                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
8425                 .field_opr1 = {
8426                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
8427                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
8428                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
8429                 .field_opr2 = {
8430                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
8431                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
8432                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
8433                 }
8434         },
8435         {
8436         .field_info_mask = {
8437                 .description = "l4.flags",
8438                 .field_bit_size = 9,
8439                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8440                 },
8441         .field_info_spec = {
8442                 .description = "l4.flags",
8443                 .field_bit_size = 9,
8444                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8445                 }
8446         },
8447         {
8448         .field_info_mask = {
8449                 .description = "l4.seq",
8450                 .field_bit_size = 32,
8451                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8452                 },
8453         .field_info_spec = {
8454                 .description = "l4.seq",
8455                 .field_bit_size = 32,
8456                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8457                 }
8458         },
8459         {
8460         .field_info_mask = {
8461                 .description = "l4.ack",
8462                 .field_bit_size = 32,
8463                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8464                 },
8465         .field_info_spec = {
8466                 .description = "l4.ack",
8467                 .field_bit_size = 32,
8468                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8469                 }
8470         },
8471         {
8472         .field_info_mask = {
8473                 .description = "l4.win",
8474                 .field_bit_size = 16,
8475                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8476                 },
8477         .field_info_spec = {
8478                 .description = "l4.win",
8479                 .field_bit_size = 16,
8480                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8481                 }
8482         },
8483         {
8484         .field_info_mask = {
8485                 .description = "l4.pa",
8486                 .field_bit_size = 1,
8487                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8488                 },
8489         .field_info_spec = {
8490                 .description = "l4.pa",
8491                 .field_bit_size = 1,
8492                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8493                 }
8494         },
8495         {
8496         .field_info_mask = {
8497                 .description = "l4.opt",
8498                 .field_bit_size = 1,
8499                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8500                 },
8501         .field_info_spec = {
8502                 .description = "l4.opt",
8503                 .field_bit_size = 1,
8504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8505                 }
8506         },
8507         {
8508         .field_info_mask = {
8509                 .description = "l4.tcpts",
8510                 .field_bit_size = 1,
8511                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8512                 },
8513         .field_info_spec = {
8514                 .description = "l4.tcpts",
8515                 .field_bit_size = 1,
8516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8517                 }
8518         },
8519         {
8520         .field_info_mask = {
8521                 .description = "l4.tsval",
8522                 .field_bit_size = 32,
8523                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8524                 },
8525         .field_info_spec = {
8526                 .description = "l4.tsval",
8527                 .field_bit_size = 32,
8528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8529                 }
8530         },
8531         {
8532         .field_info_mask = {
8533                 .description = "l4.txecr",
8534                 .field_bit_size = 32,
8535                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8536                 },
8537         .field_info_spec = {
8538                 .description = "l4.txecr",
8539                 .field_bit_size = 32,
8540                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8541                 }
8542         },
8543         {
8544         .field_info_mask = {
8545                 .description = "l4.err",
8546                 .field_bit_size = 4,
8547                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8548                 },
8549         .field_info_spec = {
8550                 .description = "l4.err",
8551                 .field_bit_size = 4,
8552                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8553                 }
8554         },
8555         /* class_tid: 1, , table: wm.l3_l4.ipv6 */
8556         {
8557         .field_info_mask = {
8558                 .description = "wc_profile_id",
8559                 .field_bit_size = 8,
8560                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8561                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8562                 .field_opr1 = {
8563                         0xff}
8564                 },
8565         .field_info_spec = {
8566                 .description = "wc_profile_id",
8567                 .field_bit_size = 8,
8568                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8569                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
8570                 .field_opr1 = {
8571                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
8572                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
8573                 }
8574         },
8575         {
8576         .field_info_mask = {
8577                 .description = "l2_cntxt_id",
8578                 .field_bit_size = 10,
8579                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8580                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
8581                 .field_opr1 = {
8582                         0xff,
8583                         0xff}
8584                 },
8585         .field_info_spec = {
8586                 .description = "l2_cntxt_id",
8587                 .field_bit_size = 10,
8588                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
8589                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
8590                 .field_opr1 = {
8591                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
8592                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
8593                 }
8594         },
8595         {
8596         .field_info_mask = {
8597                 .description = "parif",
8598                 .field_bit_size = 4,
8599                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8600                 },
8601         .field_info_spec = {
8602                 .description = "parif",
8603                 .field_bit_size = 4,
8604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8605                 }
8606         },
8607         {
8608         .field_info_mask = {
8609                 .description = "spif",
8610                 .field_bit_size = 2,
8611                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8612                 },
8613         .field_info_spec = {
8614                 .description = "spif",
8615                 .field_bit_size = 2,
8616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8617                 }
8618         },
8619         {
8620         .field_info_mask = {
8621                 .description = "svif",
8622                 .field_bit_size = 11,
8623                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8624                 },
8625         .field_info_spec = {
8626                 .description = "svif",
8627                 .field_bit_size = 11,
8628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8629                 }
8630         },
8631         {
8632         .field_info_mask = {
8633                 .description = "lcos",
8634                 .field_bit_size = 3,
8635                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8636                 },
8637         .field_info_spec = {
8638                 .description = "lcos",
8639                 .field_bit_size = 3,
8640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8641                 }
8642         },
8643         {
8644         .field_info_mask = {
8645                 .description = "meta",
8646                 .field_bit_size = 16,
8647                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8648                 },
8649         .field_info_spec = {
8650                 .description = "meta",
8651                 .field_bit_size = 16,
8652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8653                 }
8654         },
8655         {
8656         .field_info_mask = {
8657                 .description = "rcyc_cnt",
8658                 .field_bit_size = 2,
8659                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8660                 },
8661         .field_info_spec = {
8662                 .description = "rcyc_cnt",
8663                 .field_bit_size = 2,
8664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8665                 }
8666         },
8667         {
8668         .field_info_mask = {
8669                 .description = "loopback",
8670                 .field_bit_size = 1,
8671                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8672                 },
8673         .field_info_spec = {
8674                 .description = "loopback",
8675                 .field_bit_size = 1,
8676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8677                 }
8678         },
8679         {
8680         .field_info_mask = {
8681                 .description = "tl2_l2type",
8682                 .field_bit_size = 2,
8683                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8684                 },
8685         .field_info_spec = {
8686                 .description = "tl2_l2type",
8687                 .field_bit_size = 2,
8688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8689                 }
8690         },
8691         {
8692         .field_info_mask = {
8693                 .description = "tl2_dmac",
8694                 .field_bit_size = 48,
8695                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8696                 },
8697         .field_info_spec = {
8698                 .description = "tl2_dmac",
8699                 .field_bit_size = 48,
8700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8701                 }
8702         },
8703         {
8704         .field_info_mask = {
8705                 .description = "tl2_smac",
8706                 .field_bit_size = 48,
8707                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8708                 },
8709         .field_info_spec = {
8710                 .description = "tl2_smac",
8711                 .field_bit_size = 48,
8712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8713                 }
8714         },
8715         {
8716         .field_info_mask = {
8717                 .description = "tl2_dt",
8718                 .field_bit_size = 2,
8719                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8720                 },
8721         .field_info_spec = {
8722                 .description = "tl2_dt",
8723                 .field_bit_size = 2,
8724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8725                 }
8726         },
8727         {
8728         .field_info_mask = {
8729                 .description = "tl2_sa",
8730                 .field_bit_size = 1,
8731                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8732                 },
8733         .field_info_spec = {
8734                 .description = "tl2_sa",
8735                 .field_bit_size = 1,
8736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8737                 }
8738         },
8739         {
8740         .field_info_mask = {
8741                 .description = "tl2_nvt",
8742                 .field_bit_size = 2,
8743                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8744                 },
8745         .field_info_spec = {
8746                 .description = "tl2_nvt",
8747                 .field_bit_size = 2,
8748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8749                 }
8750         },
8751         {
8752         .field_info_mask = {
8753                 .description = "tl2_ovp",
8754                 .field_bit_size = 3,
8755                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8756                 },
8757         .field_info_spec = {
8758                 .description = "tl2_ovp",
8759                 .field_bit_size = 3,
8760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8761                 }
8762         },
8763         {
8764         .field_info_mask = {
8765                 .description = "tl2_ovd",
8766                 .field_bit_size = 1,
8767                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8768                 },
8769         .field_info_spec = {
8770                 .description = "tl2_ovd",
8771                 .field_bit_size = 1,
8772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8773                 }
8774         },
8775         {
8776         .field_info_mask = {
8777                 .description = "tl2_ovv",
8778                 .field_bit_size = 12,
8779                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8780                 },
8781         .field_info_spec = {
8782                 .description = "tl2_ovv",
8783                 .field_bit_size = 12,
8784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8785                 }
8786         },
8787         {
8788         .field_info_mask = {
8789                 .description = "tl2_ovt",
8790                 .field_bit_size = 3,
8791                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8792                 },
8793         .field_info_spec = {
8794                 .description = "tl2_ovt",
8795                 .field_bit_size = 3,
8796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8797                 }
8798         },
8799         {
8800         .field_info_mask = {
8801                 .description = "tl2_ivp",
8802                 .field_bit_size = 3,
8803                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8804                 },
8805         .field_info_spec = {
8806                 .description = "tl2_ivp",
8807                 .field_bit_size = 3,
8808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8809                 }
8810         },
8811         {
8812         .field_info_mask = {
8813                 .description = "tl2_ivd",
8814                 .field_bit_size = 1,
8815                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8816                 },
8817         .field_info_spec = {
8818                 .description = "tl2_ivd",
8819                 .field_bit_size = 1,
8820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8821                 }
8822         },
8823         {
8824         .field_info_mask = {
8825                 .description = "tl2_ivv",
8826                 .field_bit_size = 12,
8827                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8828                 },
8829         .field_info_spec = {
8830                 .description = "tl2_ivv",
8831                 .field_bit_size = 12,
8832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8833                 }
8834         },
8835         {
8836         .field_info_mask = {
8837                 .description = "tl2_ivt",
8838                 .field_bit_size = 3,
8839                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8840                 },
8841         .field_info_spec = {
8842                 .description = "tl2_ivt",
8843                 .field_bit_size = 3,
8844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8845                 }
8846         },
8847         {
8848         .field_info_mask = {
8849                 .description = "tl2_etype",
8850                 .field_bit_size = 16,
8851                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8852                 },
8853         .field_info_spec = {
8854                 .description = "tl2_etype",
8855                 .field_bit_size = 16,
8856                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8857                 }
8858         },
8859         {
8860         .field_info_mask = {
8861                 .description = "tl3.l3type",
8862                 .field_bit_size = 4,
8863                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8864                 },
8865         .field_info_spec = {
8866                 .description = "tl3.l3type",
8867                 .field_bit_size = 4,
8868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8869                 }
8870         },
8871         {
8872         .field_info_mask = {
8873                 .description = "tl3.sip.ipv4",
8874                 .field_bit_size = 32,
8875                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8876                 },
8877         .field_info_spec = {
8878                 .description = "tl3.sip.ipv4",
8879                 .field_bit_size = 32,
8880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8881                 }
8882         },
8883         {
8884         .field_info_mask = {
8885                 .description = "tl3.sip.ipv6",
8886                 .field_bit_size = 128,
8887                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8888                 },
8889         .field_info_spec = {
8890                 .description = "tl3.sip.ipv6",
8891                 .field_bit_size = 128,
8892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8893                 }
8894         },
8895         {
8896         .field_info_mask = {
8897                 .description = "tl3.sip_selcmp.ipv6",
8898                 .field_bit_size = 72,
8899                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8900                 },
8901         .field_info_spec = {
8902                 .description = "tl3.sip_selcmp.ipv6",
8903                 .field_bit_size = 72,
8904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8905                 }
8906         },
8907         {
8908         .field_info_mask = {
8909                 .description = "tl3.dip.ipv4",
8910                 .field_bit_size = 32,
8911                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8912                 },
8913         .field_info_spec = {
8914                 .description = "tl3.dip.ipv4",
8915                 .field_bit_size = 32,
8916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8917                 }
8918         },
8919         {
8920         .field_info_mask = {
8921                 .description = "tl3.dip.ipv6",
8922                 .field_bit_size = 128,
8923                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8924                 },
8925         .field_info_spec = {
8926                 .description = "tl3.dip.ipv6",
8927                 .field_bit_size = 128,
8928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8929                 }
8930         },
8931         {
8932         .field_info_mask = {
8933                 .description = "tl3.dip_selcmp.ipv6",
8934                 .field_bit_size = 72,
8935                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8936                 },
8937         .field_info_spec = {
8938                 .description = "tl3.dip_selcmp.ipv6",
8939                 .field_bit_size = 72,
8940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8941                 }
8942         },
8943         {
8944         .field_info_mask = {
8945                 .description = "tl3.ttl",
8946                 .field_bit_size = 8,
8947                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8948                 },
8949         .field_info_spec = {
8950                 .description = "tl3.ttl",
8951                 .field_bit_size = 8,
8952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8953                 }
8954         },
8955         {
8956         .field_info_mask = {
8957                 .description = "tl3.prot",
8958                 .field_bit_size = 8,
8959                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8960                 },
8961         .field_info_spec = {
8962                 .description = "tl3.prot",
8963                 .field_bit_size = 8,
8964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8965                 }
8966         },
8967         {
8968         .field_info_mask = {
8969                 .description = "tl3.fid.ipv4",
8970                 .field_bit_size = 16,
8971                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8972                 },
8973         .field_info_spec = {
8974                 .description = "tl3.fid.ipv4",
8975                 .field_bit_size = 16,
8976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8977                 }
8978         },
8979         {
8980         .field_info_mask = {
8981                 .description = "tl3.fid.ipv6",
8982                 .field_bit_size = 20,
8983                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8984                 },
8985         .field_info_spec = {
8986                 .description = "tl3.fid.ipv6",
8987                 .field_bit_size = 20,
8988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8989                 }
8990         },
8991         {
8992         .field_info_mask = {
8993                 .description = "tl3.qos",
8994                 .field_bit_size = 8,
8995                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
8996                 },
8997         .field_info_spec = {
8998                 .description = "tl3.qos",
8999                 .field_bit_size = 8,
9000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9001                 }
9002         },
9003         {
9004         .field_info_mask = {
9005                 .description = "tl3.ieh_nonext",
9006                 .field_bit_size = 1,
9007                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9008                 },
9009         .field_info_spec = {
9010                 .description = "tl3.ieh_nonext",
9011                 .field_bit_size = 1,
9012                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9013                 }
9014         },
9015         {
9016         .field_info_mask = {
9017                 .description = "tl3.ieh_esp",
9018                 .field_bit_size = 1,
9019                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9020                 },
9021         .field_info_spec = {
9022                 .description = "tl3.ieh_esp",
9023                 .field_bit_size = 1,
9024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9025                 }
9026         },
9027         {
9028         .field_info_mask = {
9029                 .description = "tl3.ieh_auth",
9030                 .field_bit_size = 1,
9031                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9032                 },
9033         .field_info_spec = {
9034                 .description = "tl3.ieh_auth",
9035                 .field_bit_size = 1,
9036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9037                 }
9038         },
9039         {
9040         .field_info_mask = {
9041                 .description = "tl3.ieh_dest",
9042                 .field_bit_size = 1,
9043                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9044                 },
9045         .field_info_spec = {
9046                 .description = "tl3.ieh_dest",
9047                 .field_bit_size = 1,
9048                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9049                 }
9050         },
9051         {
9052         .field_info_mask = {
9053                 .description = "tl3.ieh_frag",
9054                 .field_bit_size = 1,
9055                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9056                 },
9057         .field_info_spec = {
9058                 .description = "tl3.ieh_frag",
9059                 .field_bit_size = 1,
9060                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9061                 }
9062         },
9063         {
9064         .field_info_mask = {
9065                 .description = "tl3.ieh_rthdr",
9066                 .field_bit_size = 1,
9067                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9068                 },
9069         .field_info_spec = {
9070                 .description = "tl3.ieh_rthdr",
9071                 .field_bit_size = 1,
9072                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9073                 }
9074         },
9075         {
9076         .field_info_mask = {
9077                 .description = "tl3.ieh_hop",
9078                 .field_bit_size = 1,
9079                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9080                 },
9081         .field_info_spec = {
9082                 .description = "tl3.ieh_hop",
9083                 .field_bit_size = 1,
9084                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9085                 }
9086         },
9087         {
9088         .field_info_mask = {
9089                 .description = "tl3.ieh_1frag",
9090                 .field_bit_size = 1,
9091                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9092                 },
9093         .field_info_spec = {
9094                 .description = "tl3.ieh_1frag",
9095                 .field_bit_size = 1,
9096                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9097                 }
9098         },
9099         {
9100         .field_info_mask = {
9101                 .description = "tl3.df",
9102                 .field_bit_size = 1,
9103                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9104                 },
9105         .field_info_spec = {
9106                 .description = "tl3.df",
9107                 .field_bit_size = 1,
9108                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9109                 }
9110         },
9111         {
9112         .field_info_mask = {
9113                 .description = "tl3.l3err",
9114                 .field_bit_size = 4,
9115                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9116                 },
9117         .field_info_spec = {
9118                 .description = "tl3.l3err",
9119                 .field_bit_size = 4,
9120                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9121                 }
9122         },
9123         {
9124         .field_info_mask = {
9125                 .description = "tl4.l4type",
9126                 .field_bit_size = 4,
9127                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9128                 },
9129         .field_info_spec = {
9130                 .description = "tl4.l4type",
9131                 .field_bit_size = 4,
9132                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9133                 }
9134         },
9135         {
9136         .field_info_mask = {
9137                 .description = "tl4.src",
9138                 .field_bit_size = 16,
9139                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9140                 },
9141         .field_info_spec = {
9142                 .description = "tl4.src",
9143                 .field_bit_size = 16,
9144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9145                 }
9146         },
9147         {
9148         .field_info_mask = {
9149                 .description = "tl4.dst",
9150                 .field_bit_size = 16,
9151                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9152                 },
9153         .field_info_spec = {
9154                 .description = "tl4.dst",
9155                 .field_bit_size = 16,
9156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9157                 }
9158         },
9159         {
9160         .field_info_mask = {
9161                 .description = "tl4.flags",
9162                 .field_bit_size = 9,
9163                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9164                 },
9165         .field_info_spec = {
9166                 .description = "tl4.flags",
9167                 .field_bit_size = 9,
9168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9169                 }
9170         },
9171         {
9172         .field_info_mask = {
9173                 .description = "tl4.seq",
9174                 .field_bit_size = 32,
9175                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9176                 },
9177         .field_info_spec = {
9178                 .description = "tl4.seq",
9179                 .field_bit_size = 32,
9180                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9181                 }
9182         },
9183         {
9184         .field_info_mask = {
9185                 .description = "tl4.pa",
9186                 .field_bit_size = 1,
9187                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9188                 },
9189         .field_info_spec = {
9190                 .description = "tl4.pa",
9191                 .field_bit_size = 1,
9192                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9193                 }
9194         },
9195         {
9196         .field_info_mask = {
9197                 .description = "tl4.opt",
9198                 .field_bit_size = 1,
9199                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9200                 },
9201         .field_info_spec = {
9202                 .description = "tl4.opt",
9203                 .field_bit_size = 1,
9204                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9205                 }
9206         },
9207         {
9208         .field_info_mask = {
9209                 .description = "tl4.tcpts",
9210                 .field_bit_size = 1,
9211                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9212                 },
9213         .field_info_spec = {
9214                 .description = "tl4.tcpts",
9215                 .field_bit_size = 1,
9216                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9217                 }
9218         },
9219         {
9220         .field_info_mask = {
9221                 .description = "tl4.err",
9222                 .field_bit_size = 4,
9223                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9224                 },
9225         .field_info_spec = {
9226                 .description = "tl4.err",
9227                 .field_bit_size = 4,
9228                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9229                 }
9230         },
9231         {
9232         .field_info_mask = {
9233                 .description = "tuntype",
9234                 .field_bit_size = 4,
9235                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9236                 },
9237         .field_info_spec = {
9238                 .description = "tuntype",
9239                 .field_bit_size = 4,
9240                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9241                 }
9242         },
9243         {
9244         .field_info_mask = {
9245                 .description = "tflags",
9246                 .field_bit_size = 3,
9247                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9248                 },
9249         .field_info_spec = {
9250                 .description = "tflags",
9251                 .field_bit_size = 3,
9252                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9253                 }
9254         },
9255         {
9256         .field_info_mask = {
9257                 .description = "tids",
9258                 .field_bit_size = 24,
9259                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9260                 },
9261         .field_info_spec = {
9262                 .description = "tids",
9263                 .field_bit_size = 24,
9264                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9265                 }
9266         },
9267         {
9268         .field_info_mask = {
9269                 .description = "tid",
9270                 .field_bit_size = 32,
9271                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9272                 },
9273         .field_info_spec = {
9274                 .description = "tid",
9275                 .field_bit_size = 32,
9276                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9277                 }
9278         },
9279         {
9280         .field_info_mask = {
9281                 .description = "tctxts",
9282                 .field_bit_size = 24,
9283                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9284                 },
9285         .field_info_spec = {
9286                 .description = "tctxts",
9287                 .field_bit_size = 24,
9288                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9289                 }
9290         },
9291         {
9292         .field_info_mask = {
9293                 .description = "tctxt",
9294                 .field_bit_size = 32,
9295                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9296                 },
9297         .field_info_spec = {
9298                 .description = "tctxt",
9299                 .field_bit_size = 32,
9300                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9301                 }
9302         },
9303         {
9304         .field_info_mask = {
9305                 .description = "tqos",
9306                 .field_bit_size = 3,
9307                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9308                 },
9309         .field_info_spec = {
9310                 .description = "tqos",
9311                 .field_bit_size = 3,
9312                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9313                 }
9314         },
9315         {
9316         .field_info_mask = {
9317                 .description = "terr",
9318                 .field_bit_size = 4,
9319                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9320                 },
9321         .field_info_spec = {
9322                 .description = "terr",
9323                 .field_bit_size = 4,
9324                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9325                 }
9326         },
9327         {
9328         .field_info_mask = {
9329                 .description = "l2_l2type",
9330                 .field_bit_size = 2,
9331                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9332                 },
9333         .field_info_spec = {
9334                 .description = "l2_l2type",
9335                 .field_bit_size = 2,
9336                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9337                 }
9338         },
9339         {
9340         .field_info_mask = {
9341                 .description = "l2_dmac",
9342                 .field_bit_size = 48,
9343                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9344                 },
9345         .field_info_spec = {
9346                 .description = "l2_dmac",
9347                 .field_bit_size = 48,
9348                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9349                 }
9350         },
9351         {
9352         .field_info_mask = {
9353                 .description = "l2_smac",
9354                 .field_bit_size = 48,
9355                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9356                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9357                 .field_opr1 = {
9358                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
9359                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
9360                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9361                 .field_opr2 = {
9362                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
9363                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
9364                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9365                 },
9366         .field_info_spec = {
9367                 .description = "l2_smac",
9368                 .field_bit_size = 48,
9369                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9370                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9371                 .field_opr1 = {
9372                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
9373                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
9374                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9375                 .field_opr2 = {
9376                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
9377                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
9378                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9379                 }
9380         },
9381         {
9382         .field_info_mask = {
9383                 .description = "l2_dt",
9384                 .field_bit_size = 2,
9385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9386                 },
9387         .field_info_spec = {
9388                 .description = "l2_dt",
9389                 .field_bit_size = 2,
9390                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9391                 }
9392         },
9393         {
9394         .field_info_mask = {
9395                 .description = "l2_sa",
9396                 .field_bit_size = 1,
9397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9398                 },
9399         .field_info_spec = {
9400                 .description = "l2_sa",
9401                 .field_bit_size = 1,
9402                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9403                 }
9404         },
9405         {
9406         .field_info_mask = {
9407                 .description = "l2_nvt",
9408                 .field_bit_size = 2,
9409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9410                 },
9411         .field_info_spec = {
9412                 .description = "l2_nvt",
9413                 .field_bit_size = 2,
9414                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9415                 }
9416         },
9417         {
9418         .field_info_mask = {
9419                 .description = "l2_ovp",
9420                 .field_bit_size = 3,
9421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9422                 },
9423         .field_info_spec = {
9424                 .description = "l2_ovp",
9425                 .field_bit_size = 3,
9426                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9427                 }
9428         },
9429         {
9430         .field_info_mask = {
9431                 .description = "l2_ovd",
9432                 .field_bit_size = 1,
9433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9434                 },
9435         .field_info_spec = {
9436                 .description = "l2_ovd",
9437                 .field_bit_size = 1,
9438                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9439                 }
9440         },
9441         {
9442         .field_info_mask = {
9443                 .description = "l2_ovv",
9444                 .field_bit_size = 12,
9445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9446                 },
9447         .field_info_spec = {
9448                 .description = "l2_ovv",
9449                 .field_bit_size = 12,
9450                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9451                 }
9452         },
9453         {
9454         .field_info_mask = {
9455                 .description = "l2_ovt",
9456                 .field_bit_size = 3,
9457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9458                 },
9459         .field_info_spec = {
9460                 .description = "l2_ovt",
9461                 .field_bit_size = 3,
9462                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9463                 }
9464         },
9465         {
9466         .field_info_mask = {
9467                 .description = "l2_ivp",
9468                 .field_bit_size = 3,
9469                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9470                 },
9471         .field_info_spec = {
9472                 .description = "l2_ivp",
9473                 .field_bit_size = 3,
9474                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9475                 }
9476         },
9477         {
9478         .field_info_mask = {
9479                 .description = "l2_ivd",
9480                 .field_bit_size = 1,
9481                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9482                 },
9483         .field_info_spec = {
9484                 .description = "l2_ivd",
9485                 .field_bit_size = 1,
9486                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9487                 }
9488         },
9489         {
9490         .field_info_mask = {
9491                 .description = "l2_ivv",
9492                 .field_bit_size = 12,
9493                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9494                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9495                 .field_opr1 = {
9496                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
9497                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
9498                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9499                 .field_opr2 = {
9500                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
9501                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
9502                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9503                 },
9504         .field_info_spec = {
9505                 .description = "l2_ivv",
9506                 .field_bit_size = 12,
9507                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9508                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9509                 .field_opr1 = {
9510                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
9511                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
9512                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9513                 .field_opr2 = {
9514                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
9515                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
9516                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9517                 }
9518         },
9519         {
9520         .field_info_mask = {
9521                 .description = "l2_ivt",
9522                 .field_bit_size = 3,
9523                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9524                 },
9525         .field_info_spec = {
9526                 .description = "l2_ivt",
9527                 .field_bit_size = 3,
9528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9529                 }
9530         },
9531         {
9532         .field_info_mask = {
9533                 .description = "l2_etype",
9534                 .field_bit_size = 16,
9535                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9536                 },
9537         .field_info_spec = {
9538                 .description = "l2_etype",
9539                 .field_bit_size = 16,
9540                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9541                 }
9542         },
9543         {
9544         .field_info_mask = {
9545                 .description = "l3.l3type",
9546                 .field_bit_size = 4,
9547                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9548                 },
9549         .field_info_spec = {
9550                 .description = "l3.l3type",
9551                 .field_bit_size = 4,
9552                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9553                 }
9554         },
9555         {
9556         .field_info_mask = {
9557                 .description = "l3.sip.ipv4",
9558                 .field_bit_size = 32,
9559                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9560                 },
9561         .field_info_spec = {
9562                 .description = "l3.sip.ipv4",
9563                 .field_bit_size = 32,
9564                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9565                 }
9566         },
9567         {
9568         .field_info_mask = {
9569                 .description = "l3.sip.ipv6",
9570                 .field_bit_size = 128,
9571                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9572                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9573                 .field_opr1 = {
9574                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
9575                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
9576                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9577                 .field_opr2 = {
9578                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
9579                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
9580                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9581                 },
9582         .field_info_spec = {
9583                 .description = "l3.sip.ipv6",
9584                 .field_bit_size = 128,
9585                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9586                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9587                 .field_opr1 = {
9588                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
9589                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
9590                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9591                 .field_opr2 = {
9592                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
9593                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
9594                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9595                 }
9596         },
9597         {
9598         .field_info_mask = {
9599                 .description = "l3.sip_selcmp.ipv6",
9600                 .field_bit_size = 72,
9601                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9602                 },
9603         .field_info_spec = {
9604                 .description = "l3.sip_selcmp.ipv6",
9605                 .field_bit_size = 72,
9606                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9607                 }
9608         },
9609         {
9610         .field_info_mask = {
9611                 .description = "l3.dip.ipv4",
9612                 .field_bit_size = 32,
9613                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9614                 },
9615         .field_info_spec = {
9616                 .description = "l3.dip.ipv4",
9617                 .field_bit_size = 32,
9618                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9619                 }
9620         },
9621         {
9622         .field_info_mask = {
9623                 .description = "l3.dip.ipv6",
9624                 .field_bit_size = 128,
9625                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9626                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9627                 .field_opr1 = {
9628                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
9629                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
9630                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9631                 .field_opr2 = {
9632                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
9633                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
9634                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9635                 },
9636         .field_info_spec = {
9637                 .description = "l3.dip.ipv6",
9638                 .field_bit_size = 128,
9639                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9640                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
9641                 .field_opr1 = {
9642                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
9643                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
9644                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
9645                 .field_opr2 = {
9646                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
9647                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
9648                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9649                 }
9650         },
9651         {
9652         .field_info_mask = {
9653                 .description = "l3.dip_selcmp.ipv6",
9654                 .field_bit_size = 72,
9655                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9656                 },
9657         .field_info_spec = {
9658                 .description = "l3.dip_selcmp.ipv6",
9659                 .field_bit_size = 72,
9660                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9661                 }
9662         },
9663         {
9664         .field_info_mask = {
9665                 .description = "l3.ttl",
9666                 .field_bit_size = 8,
9667                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9668                 },
9669         .field_info_spec = {
9670                 .description = "l3.ttl",
9671                 .field_bit_size = 8,
9672                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9673                 }
9674         },
9675         {
9676         .field_info_mask = {
9677                 .description = "l3.prot",
9678                 .field_bit_size = 8,
9679                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9680                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9681                 .field_opr1 = {
9682                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
9683                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
9684                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
9685                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9686                 },
9687         .field_info_spec = {
9688                 .description = "l3.prot",
9689                 .field_bit_size = 8,
9690                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9691                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9692                 .field_opr1 = {
9693                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
9694                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
9695                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9696                 .field_opr2 = {
9697                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
9698                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
9699                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9700                 }
9701         },
9702         {
9703         .field_info_mask = {
9704                 .description = "l3.fid.ipv4",
9705                 .field_bit_size = 16,
9706                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9707                 },
9708         .field_info_spec = {
9709                 .description = "l3.fid.ipv4",
9710                 .field_bit_size = 16,
9711                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9712                 }
9713         },
9714         {
9715         .field_info_mask = {
9716                 .description = "l3.fid.ipv6",
9717                 .field_bit_size = 20,
9718                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9719                 },
9720         .field_info_spec = {
9721                 .description = "l3.fid.ipv6",
9722                 .field_bit_size = 20,
9723                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9724                 }
9725         },
9726         {
9727         .field_info_mask = {
9728                 .description = "l3.qos",
9729                 .field_bit_size = 8,
9730                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9731                 },
9732         .field_info_spec = {
9733                 .description = "l3.qos",
9734                 .field_bit_size = 8,
9735                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9736                 }
9737         },
9738         {
9739         .field_info_mask = {
9740                 .description = "l3.ieh_nonext",
9741                 .field_bit_size = 1,
9742                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9743                 },
9744         .field_info_spec = {
9745                 .description = "l3.ieh_nonext",
9746                 .field_bit_size = 1,
9747                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9748                 }
9749         },
9750         {
9751         .field_info_mask = {
9752                 .description = "l3.ieh_esp",
9753                 .field_bit_size = 1,
9754                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9755                 },
9756         .field_info_spec = {
9757                 .description = "l3.ieh_esp",
9758                 .field_bit_size = 1,
9759                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9760                 }
9761         },
9762         {
9763         .field_info_mask = {
9764                 .description = "l3.ieh_auth",
9765                 .field_bit_size = 1,
9766                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9767                 },
9768         .field_info_spec = {
9769                 .description = "l3.ieh_auth",
9770                 .field_bit_size = 1,
9771                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9772                 }
9773         },
9774         {
9775         .field_info_mask = {
9776                 .description = "l3.ieh_dest",
9777                 .field_bit_size = 1,
9778                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9779                 },
9780         .field_info_spec = {
9781                 .description = "l3.ieh_dest",
9782                 .field_bit_size = 1,
9783                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9784                 }
9785         },
9786         {
9787         .field_info_mask = {
9788                 .description = "l3.ieh_frag",
9789                 .field_bit_size = 1,
9790                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9791                 },
9792         .field_info_spec = {
9793                 .description = "l3.ieh_frag",
9794                 .field_bit_size = 1,
9795                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9796                 }
9797         },
9798         {
9799         .field_info_mask = {
9800                 .description = "l3.ieh_rthdr",
9801                 .field_bit_size = 1,
9802                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9803                 },
9804         .field_info_spec = {
9805                 .description = "l3.ieh_rthdr",
9806                 .field_bit_size = 1,
9807                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9808                 }
9809         },
9810         {
9811         .field_info_mask = {
9812                 .description = "l3.ieh_hop",
9813                 .field_bit_size = 1,
9814                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9815                 },
9816         .field_info_spec = {
9817                 .description = "l3.ieh_hop",
9818                 .field_bit_size = 1,
9819                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9820                 }
9821         },
9822         {
9823         .field_info_mask = {
9824                 .description = "l3.ieh_1frag",
9825                 .field_bit_size = 1,
9826                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9827                 },
9828         .field_info_spec = {
9829                 .description = "l3.ieh_1frag",
9830                 .field_bit_size = 1,
9831                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9832                 }
9833         },
9834         {
9835         .field_info_mask = {
9836                 .description = "l3.df",
9837                 .field_bit_size = 1,
9838                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9839                 },
9840         .field_info_spec = {
9841                 .description = "l3.df",
9842                 .field_bit_size = 1,
9843                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9844                 }
9845         },
9846         {
9847         .field_info_mask = {
9848                 .description = "l3.l3err.ipv4",
9849                 .field_bit_size = 4,
9850                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9851                 },
9852         .field_info_spec = {
9853                 .description = "l3.l3err.ipv4",
9854                 .field_bit_size = 4,
9855                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9856                 }
9857         },
9858         {
9859         .field_info_mask = {
9860                 .description = "l3.l3err.ipv6",
9861                 .field_bit_size = 4,
9862                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9863                 },
9864         .field_info_spec = {
9865                 .description = "l3.l3err.ipv6",
9866                 .field_bit_size = 4,
9867                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9868                 }
9869         },
9870         {
9871         .field_info_mask = {
9872                 .description = "l4.l4type",
9873                 .field_bit_size = 4,
9874                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9875                 },
9876         .field_info_spec = {
9877                 .description = "l4.l4type",
9878                 .field_bit_size = 4,
9879                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9880                 }
9881         },
9882         {
9883         .field_info_mask = {
9884                 .description = "l4.src",
9885                 .field_bit_size = 16,
9886                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9887                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9888                 .field_opr1 = {
9889                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
9890                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
9891                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
9892                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9893                 },
9894         .field_info_spec = {
9895                 .description = "l4.src",
9896                 .field_bit_size = 16,
9897                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9898                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9899                 .field_opr1 = {
9900                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
9901                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
9902                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9903                 .field_opr2 = {
9904                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
9905                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
9906                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9907                 }
9908         },
9909         {
9910         .field_info_mask = {
9911                 .description = "l4.dst",
9912                 .field_bit_size = 16,
9913                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9914                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9915                 .field_opr1 = {
9916                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
9917                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
9918                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
9919                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9920                 },
9921         .field_info_spec = {
9922                 .description = "l4.dst",
9923                 .field_bit_size = 16,
9924                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
9925                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
9926                 .field_opr1 = {
9927                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
9928                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
9929                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
9930                 .field_opr2 = {
9931                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
9932                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
9933                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
9934                 }
9935         },
9936         {
9937         .field_info_mask = {
9938                 .description = "l4.flags",
9939                 .field_bit_size = 9,
9940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9941                 },
9942         .field_info_spec = {
9943                 .description = "l4.flags",
9944                 .field_bit_size = 9,
9945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9946                 }
9947         },
9948         {
9949         .field_info_mask = {
9950                 .description = "l4.seq",
9951                 .field_bit_size = 32,
9952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9953                 },
9954         .field_info_spec = {
9955                 .description = "l4.seq",
9956                 .field_bit_size = 32,
9957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9958                 }
9959         },
9960         {
9961         .field_info_mask = {
9962                 .description = "l4.ack",
9963                 .field_bit_size = 32,
9964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9965                 },
9966         .field_info_spec = {
9967                 .description = "l4.ack",
9968                 .field_bit_size = 32,
9969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9970                 }
9971         },
9972         {
9973         .field_info_mask = {
9974                 .description = "l4.win",
9975                 .field_bit_size = 16,
9976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9977                 },
9978         .field_info_spec = {
9979                 .description = "l4.win",
9980                 .field_bit_size = 16,
9981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9982                 }
9983         },
9984         {
9985         .field_info_mask = {
9986                 .description = "l4.pa",
9987                 .field_bit_size = 1,
9988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9989                 },
9990         .field_info_spec = {
9991                 .description = "l4.pa",
9992                 .field_bit_size = 1,
9993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
9994                 }
9995         },
9996         {
9997         .field_info_mask = {
9998                 .description = "l4.opt",
9999                 .field_bit_size = 1,
10000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10001                 },
10002         .field_info_spec = {
10003                 .description = "l4.opt",
10004                 .field_bit_size = 1,
10005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10006                 }
10007         },
10008         {
10009         .field_info_mask = {
10010                 .description = "l4.tcpts",
10011                 .field_bit_size = 1,
10012                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10013                 },
10014         .field_info_spec = {
10015                 .description = "l4.tcpts",
10016                 .field_bit_size = 1,
10017                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10018                 }
10019         },
10020         {
10021         .field_info_mask = {
10022                 .description = "l4.tsval",
10023                 .field_bit_size = 32,
10024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10025                 },
10026         .field_info_spec = {
10027                 .description = "l4.tsval",
10028                 .field_bit_size = 32,
10029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10030                 }
10031         },
10032         {
10033         .field_info_mask = {
10034                 .description = "l4.txecr",
10035                 .field_bit_size = 32,
10036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10037                 },
10038         .field_info_spec = {
10039                 .description = "l4.txecr",
10040                 .field_bit_size = 32,
10041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10042                 }
10043         },
10044         {
10045         .field_info_mask = {
10046                 .description = "l4.err",
10047                 .field_bit_size = 4,
10048                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10049                 },
10050         .field_info_spec = {
10051                 .description = "l4.err",
10052                 .field_bit_size = 4,
10053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10054                 }
10055         },
10056         /* class_tid: 1, , table: wm.l3.ipv4 */
10057         {
10058         .field_info_mask = {
10059                 .description = "wc_profile_id",
10060                 .field_bit_size = 8,
10061                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10062                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10063                 .field_opr1 = {
10064                         0xff}
10065                 },
10066         .field_info_spec = {
10067                 .description = "wc_profile_id",
10068                 .field_bit_size = 8,
10069                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10070                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
10071                 .field_opr1 = {
10072                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 >> 8) & 0xff,
10073                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 & 0xff}
10074                 }
10075         },
10076         {
10077         .field_info_mask = {
10078                 .description = "l2_cntxt_id",
10079                 .field_bit_size = 10,
10080                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10081                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
10082                 .field_opr1 = {
10083                         0xff,
10084                         0xff}
10085                 },
10086         .field_info_spec = {
10087                 .description = "l2_cntxt_id",
10088                 .field_bit_size = 10,
10089                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
10090                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
10091                 .field_opr1 = {
10092                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
10093                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
10094                 }
10095         },
10096         {
10097         .field_info_mask = {
10098                 .description = "parif",
10099                 .field_bit_size = 4,
10100                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10101                 },
10102         .field_info_spec = {
10103                 .description = "parif",
10104                 .field_bit_size = 4,
10105                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10106                 }
10107         },
10108         {
10109         .field_info_mask = {
10110                 .description = "spif",
10111                 .field_bit_size = 2,
10112                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10113                 },
10114         .field_info_spec = {
10115                 .description = "spif",
10116                 .field_bit_size = 2,
10117                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10118                 }
10119         },
10120         {
10121         .field_info_mask = {
10122                 .description = "svif",
10123                 .field_bit_size = 11,
10124                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10125                 },
10126         .field_info_spec = {
10127                 .description = "svif",
10128                 .field_bit_size = 11,
10129                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10130                 }
10131         },
10132         {
10133         .field_info_mask = {
10134                 .description = "lcos",
10135                 .field_bit_size = 3,
10136                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10137                 },
10138         .field_info_spec = {
10139                 .description = "lcos",
10140                 .field_bit_size = 3,
10141                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10142                 }
10143         },
10144         {
10145         .field_info_mask = {
10146                 .description = "meta",
10147                 .field_bit_size = 16,
10148                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10149                 },
10150         .field_info_spec = {
10151                 .description = "meta",
10152                 .field_bit_size = 16,
10153                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10154                 }
10155         },
10156         {
10157         .field_info_mask = {
10158                 .description = "rcyc_cnt",
10159                 .field_bit_size = 2,
10160                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10161                 },
10162         .field_info_spec = {
10163                 .description = "rcyc_cnt",
10164                 .field_bit_size = 2,
10165                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10166                 }
10167         },
10168         {
10169         .field_info_mask = {
10170                 .description = "loopback",
10171                 .field_bit_size = 1,
10172                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10173                 },
10174         .field_info_spec = {
10175                 .description = "loopback",
10176                 .field_bit_size = 1,
10177                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10178                 }
10179         },
10180         {
10181         .field_info_mask = {
10182                 .description = "tl2_l2type",
10183                 .field_bit_size = 2,
10184                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10185                 },
10186         .field_info_spec = {
10187                 .description = "tl2_l2type",
10188                 .field_bit_size = 2,
10189                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10190                 }
10191         },
10192         {
10193         .field_info_mask = {
10194                 .description = "tl2_dmac",
10195                 .field_bit_size = 48,
10196                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10197                 },
10198         .field_info_spec = {
10199                 .description = "tl2_dmac",
10200                 .field_bit_size = 48,
10201                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10202                 }
10203         },
10204         {
10205         .field_info_mask = {
10206                 .description = "tl2_smac",
10207                 .field_bit_size = 48,
10208                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10209                 },
10210         .field_info_spec = {
10211                 .description = "tl2_smac",
10212                 .field_bit_size = 48,
10213                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10214                 }
10215         },
10216         {
10217         .field_info_mask = {
10218                 .description = "tl2_dt",
10219                 .field_bit_size = 2,
10220                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10221                 },
10222         .field_info_spec = {
10223                 .description = "tl2_dt",
10224                 .field_bit_size = 2,
10225                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10226                 }
10227         },
10228         {
10229         .field_info_mask = {
10230                 .description = "tl2_sa",
10231                 .field_bit_size = 1,
10232                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10233                 },
10234         .field_info_spec = {
10235                 .description = "tl2_sa",
10236                 .field_bit_size = 1,
10237                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10238                 }
10239         },
10240         {
10241         .field_info_mask = {
10242                 .description = "tl2_nvt",
10243                 .field_bit_size = 2,
10244                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10245                 },
10246         .field_info_spec = {
10247                 .description = "tl2_nvt",
10248                 .field_bit_size = 2,
10249                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10250                 }
10251         },
10252         {
10253         .field_info_mask = {
10254                 .description = "tl2_ovp",
10255                 .field_bit_size = 3,
10256                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10257                 },
10258         .field_info_spec = {
10259                 .description = "tl2_ovp",
10260                 .field_bit_size = 3,
10261                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10262                 }
10263         },
10264         {
10265         .field_info_mask = {
10266                 .description = "tl2_ovd",
10267                 .field_bit_size = 1,
10268                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10269                 },
10270         .field_info_spec = {
10271                 .description = "tl2_ovd",
10272                 .field_bit_size = 1,
10273                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10274                 }
10275         },
10276         {
10277         .field_info_mask = {
10278                 .description = "tl2_ovv",
10279                 .field_bit_size = 12,
10280                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10281                 },
10282         .field_info_spec = {
10283                 .description = "tl2_ovv",
10284                 .field_bit_size = 12,
10285                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10286                 }
10287         },
10288         {
10289         .field_info_mask = {
10290                 .description = "tl2_ovt",
10291                 .field_bit_size = 3,
10292                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10293                 },
10294         .field_info_spec = {
10295                 .description = "tl2_ovt",
10296                 .field_bit_size = 3,
10297                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10298                 }
10299         },
10300         {
10301         .field_info_mask = {
10302                 .description = "tl2_ivp",
10303                 .field_bit_size = 3,
10304                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10305                 },
10306         .field_info_spec = {
10307                 .description = "tl2_ivp",
10308                 .field_bit_size = 3,
10309                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10310                 }
10311         },
10312         {
10313         .field_info_mask = {
10314                 .description = "tl2_ivd",
10315                 .field_bit_size = 1,
10316                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10317                 },
10318         .field_info_spec = {
10319                 .description = "tl2_ivd",
10320                 .field_bit_size = 1,
10321                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10322                 }
10323         },
10324         {
10325         .field_info_mask = {
10326                 .description = "tl2_ivv",
10327                 .field_bit_size = 12,
10328                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10329                 },
10330         .field_info_spec = {
10331                 .description = "tl2_ivv",
10332                 .field_bit_size = 12,
10333                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10334                 }
10335         },
10336         {
10337         .field_info_mask = {
10338                 .description = "tl2_ivt",
10339                 .field_bit_size = 3,
10340                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10341                 },
10342         .field_info_spec = {
10343                 .description = "tl2_ivt",
10344                 .field_bit_size = 3,
10345                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10346                 }
10347         },
10348         {
10349         .field_info_mask = {
10350                 .description = "tl2_etype",
10351                 .field_bit_size = 16,
10352                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10353                 },
10354         .field_info_spec = {
10355                 .description = "tl2_etype",
10356                 .field_bit_size = 16,
10357                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10358                 }
10359         },
10360         {
10361         .field_info_mask = {
10362                 .description = "tl3.l3type",
10363                 .field_bit_size = 4,
10364                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10365                 },
10366         .field_info_spec = {
10367                 .description = "tl3.l3type",
10368                 .field_bit_size = 4,
10369                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10370                 }
10371         },
10372         {
10373         .field_info_mask = {
10374                 .description = "tl3.sip.ipv4",
10375                 .field_bit_size = 32,
10376                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10377                 },
10378         .field_info_spec = {
10379                 .description = "tl3.sip.ipv4",
10380                 .field_bit_size = 32,
10381                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10382                 }
10383         },
10384         {
10385         .field_info_mask = {
10386                 .description = "tl3.sip.ipv6",
10387                 .field_bit_size = 128,
10388                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10389                 },
10390         .field_info_spec = {
10391                 .description = "tl3.sip.ipv6",
10392                 .field_bit_size = 128,
10393                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10394                 }
10395         },
10396         {
10397         .field_info_mask = {
10398                 .description = "tl3.sip_selcmp.ipv6",
10399                 .field_bit_size = 72,
10400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10401                 },
10402         .field_info_spec = {
10403                 .description = "tl3.sip_selcmp.ipv6",
10404                 .field_bit_size = 72,
10405                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10406                 }
10407         },
10408         {
10409         .field_info_mask = {
10410                 .description = "tl3.dip.ipv4",
10411                 .field_bit_size = 32,
10412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10413                 },
10414         .field_info_spec = {
10415                 .description = "tl3.dip.ipv4",
10416                 .field_bit_size = 32,
10417                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10418                 }
10419         },
10420         {
10421         .field_info_mask = {
10422                 .description = "tl3.dip.ipv6",
10423                 .field_bit_size = 128,
10424                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10425                 },
10426         .field_info_spec = {
10427                 .description = "tl3.dip.ipv6",
10428                 .field_bit_size = 128,
10429                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10430                 }
10431         },
10432         {
10433         .field_info_mask = {
10434                 .description = "tl3.dip_selcmp.ipv6",
10435                 .field_bit_size = 72,
10436                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10437                 },
10438         .field_info_spec = {
10439                 .description = "tl3.dip_selcmp.ipv6",
10440                 .field_bit_size = 72,
10441                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10442                 }
10443         },
10444         {
10445         .field_info_mask = {
10446                 .description = "tl3.ttl",
10447                 .field_bit_size = 8,
10448                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10449                 },
10450         .field_info_spec = {
10451                 .description = "tl3.ttl",
10452                 .field_bit_size = 8,
10453                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10454                 }
10455         },
10456         {
10457         .field_info_mask = {
10458                 .description = "tl3.prot",
10459                 .field_bit_size = 8,
10460                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10461                 },
10462         .field_info_spec = {
10463                 .description = "tl3.prot",
10464                 .field_bit_size = 8,
10465                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10466                 }
10467         },
10468         {
10469         .field_info_mask = {
10470                 .description = "tl3.fid.ipv4",
10471                 .field_bit_size = 16,
10472                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10473                 },
10474         .field_info_spec = {
10475                 .description = "tl3.fid.ipv4",
10476                 .field_bit_size = 16,
10477                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10478                 }
10479         },
10480         {
10481         .field_info_mask = {
10482                 .description = "tl3.fid.ipv6",
10483                 .field_bit_size = 20,
10484                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10485                 },
10486         .field_info_spec = {
10487                 .description = "tl3.fid.ipv6",
10488                 .field_bit_size = 20,
10489                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10490                 }
10491         },
10492         {
10493         .field_info_mask = {
10494                 .description = "tl3.qos",
10495                 .field_bit_size = 8,
10496                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10497                 },
10498         .field_info_spec = {
10499                 .description = "tl3.qos",
10500                 .field_bit_size = 8,
10501                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10502                 }
10503         },
10504         {
10505         .field_info_mask = {
10506                 .description = "tl3.ieh_nonext",
10507                 .field_bit_size = 1,
10508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10509                 },
10510         .field_info_spec = {
10511                 .description = "tl3.ieh_nonext",
10512                 .field_bit_size = 1,
10513                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10514                 }
10515         },
10516         {
10517         .field_info_mask = {
10518                 .description = "tl3.ieh_esp",
10519                 .field_bit_size = 1,
10520                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10521                 },
10522         .field_info_spec = {
10523                 .description = "tl3.ieh_esp",
10524                 .field_bit_size = 1,
10525                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10526                 }
10527         },
10528         {
10529         .field_info_mask = {
10530                 .description = "tl3.ieh_auth",
10531                 .field_bit_size = 1,
10532                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10533                 },
10534         .field_info_spec = {
10535                 .description = "tl3.ieh_auth",
10536                 .field_bit_size = 1,
10537                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10538                 }
10539         },
10540         {
10541         .field_info_mask = {
10542                 .description = "tl3.ieh_dest",
10543                 .field_bit_size = 1,
10544                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10545                 },
10546         .field_info_spec = {
10547                 .description = "tl3.ieh_dest",
10548                 .field_bit_size = 1,
10549                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10550                 }
10551         },
10552         {
10553         .field_info_mask = {
10554                 .description = "tl3.ieh_frag",
10555                 .field_bit_size = 1,
10556                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10557                 },
10558         .field_info_spec = {
10559                 .description = "tl3.ieh_frag",
10560                 .field_bit_size = 1,
10561                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10562                 }
10563         },
10564         {
10565         .field_info_mask = {
10566                 .description = "tl3.ieh_rthdr",
10567                 .field_bit_size = 1,
10568                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10569                 },
10570         .field_info_spec = {
10571                 .description = "tl3.ieh_rthdr",
10572                 .field_bit_size = 1,
10573                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10574                 }
10575         },
10576         {
10577         .field_info_mask = {
10578                 .description = "tl3.ieh_hop",
10579                 .field_bit_size = 1,
10580                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10581                 },
10582         .field_info_spec = {
10583                 .description = "tl3.ieh_hop",
10584                 .field_bit_size = 1,
10585                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10586                 }
10587         },
10588         {
10589         .field_info_mask = {
10590                 .description = "tl3.ieh_1frag",
10591                 .field_bit_size = 1,
10592                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10593                 },
10594         .field_info_spec = {
10595                 .description = "tl3.ieh_1frag",
10596                 .field_bit_size = 1,
10597                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10598                 }
10599         },
10600         {
10601         .field_info_mask = {
10602                 .description = "tl3.df",
10603                 .field_bit_size = 1,
10604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10605                 },
10606         .field_info_spec = {
10607                 .description = "tl3.df",
10608                 .field_bit_size = 1,
10609                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10610                 }
10611         },
10612         {
10613         .field_info_mask = {
10614                 .description = "tl3.l3err",
10615                 .field_bit_size = 4,
10616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10617                 },
10618         .field_info_spec = {
10619                 .description = "tl3.l3err",
10620                 .field_bit_size = 4,
10621                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10622                 }
10623         },
10624         {
10625         .field_info_mask = {
10626                 .description = "tl4.l4type",
10627                 .field_bit_size = 4,
10628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10629                 },
10630         .field_info_spec = {
10631                 .description = "tl4.l4type",
10632                 .field_bit_size = 4,
10633                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10634                 }
10635         },
10636         {
10637         .field_info_mask = {
10638                 .description = "tl4.src",
10639                 .field_bit_size = 16,
10640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10641                 },
10642         .field_info_spec = {
10643                 .description = "tl4.src",
10644                 .field_bit_size = 16,
10645                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10646                 }
10647         },
10648         {
10649         .field_info_mask = {
10650                 .description = "tl4.dst",
10651                 .field_bit_size = 16,
10652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10653                 },
10654         .field_info_spec = {
10655                 .description = "tl4.dst",
10656                 .field_bit_size = 16,
10657                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10658                 }
10659         },
10660         {
10661         .field_info_mask = {
10662                 .description = "tl4.flags",
10663                 .field_bit_size = 9,
10664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10665                 },
10666         .field_info_spec = {
10667                 .description = "tl4.flags",
10668                 .field_bit_size = 9,
10669                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10670                 }
10671         },
10672         {
10673         .field_info_mask = {
10674                 .description = "tl4.seq",
10675                 .field_bit_size = 32,
10676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10677                 },
10678         .field_info_spec = {
10679                 .description = "tl4.seq",
10680                 .field_bit_size = 32,
10681                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10682                 }
10683         },
10684         {
10685         .field_info_mask = {
10686                 .description = "tl4.pa",
10687                 .field_bit_size = 1,
10688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10689                 },
10690         .field_info_spec = {
10691                 .description = "tl4.pa",
10692                 .field_bit_size = 1,
10693                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10694                 }
10695         },
10696         {
10697         .field_info_mask = {
10698                 .description = "tl4.opt",
10699                 .field_bit_size = 1,
10700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10701                 },
10702         .field_info_spec = {
10703                 .description = "tl4.opt",
10704                 .field_bit_size = 1,
10705                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10706                 }
10707         },
10708         {
10709         .field_info_mask = {
10710                 .description = "tl4.tcpts",
10711                 .field_bit_size = 1,
10712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10713                 },
10714         .field_info_spec = {
10715                 .description = "tl4.tcpts",
10716                 .field_bit_size = 1,
10717                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10718                 }
10719         },
10720         {
10721         .field_info_mask = {
10722                 .description = "tl4.err",
10723                 .field_bit_size = 4,
10724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10725                 },
10726         .field_info_spec = {
10727                 .description = "tl4.err",
10728                 .field_bit_size = 4,
10729                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10730                 }
10731         },
10732         {
10733         .field_info_mask = {
10734                 .description = "tuntype",
10735                 .field_bit_size = 4,
10736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10737                 },
10738         .field_info_spec = {
10739                 .description = "tuntype",
10740                 .field_bit_size = 4,
10741                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10742                 }
10743         },
10744         {
10745         .field_info_mask = {
10746                 .description = "tflags",
10747                 .field_bit_size = 3,
10748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10749                 },
10750         .field_info_spec = {
10751                 .description = "tflags",
10752                 .field_bit_size = 3,
10753                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10754                 }
10755         },
10756         {
10757         .field_info_mask = {
10758                 .description = "tids",
10759                 .field_bit_size = 24,
10760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10761                 },
10762         .field_info_spec = {
10763                 .description = "tids",
10764                 .field_bit_size = 24,
10765                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10766                 }
10767         },
10768         {
10769         .field_info_mask = {
10770                 .description = "tid",
10771                 .field_bit_size = 32,
10772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10773                 },
10774         .field_info_spec = {
10775                 .description = "tid",
10776                 .field_bit_size = 32,
10777                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10778                 }
10779         },
10780         {
10781         .field_info_mask = {
10782                 .description = "tctxts",
10783                 .field_bit_size = 24,
10784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10785                 },
10786         .field_info_spec = {
10787                 .description = "tctxts",
10788                 .field_bit_size = 24,
10789                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10790                 }
10791         },
10792         {
10793         .field_info_mask = {
10794                 .description = "tctxt",
10795                 .field_bit_size = 32,
10796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10797                 },
10798         .field_info_spec = {
10799                 .description = "tctxt",
10800                 .field_bit_size = 32,
10801                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10802                 }
10803         },
10804         {
10805         .field_info_mask = {
10806                 .description = "tqos",
10807                 .field_bit_size = 3,
10808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10809                 },
10810         .field_info_spec = {
10811                 .description = "tqos",
10812                 .field_bit_size = 3,
10813                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10814                 }
10815         },
10816         {
10817         .field_info_mask = {
10818                 .description = "terr",
10819                 .field_bit_size = 4,
10820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10821                 },
10822         .field_info_spec = {
10823                 .description = "terr",
10824                 .field_bit_size = 4,
10825                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10826                 }
10827         },
10828         {
10829         .field_info_mask = {
10830                 .description = "l2_l2type",
10831                 .field_bit_size = 2,
10832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10833                 },
10834         .field_info_spec = {
10835                 .description = "l2_l2type",
10836                 .field_bit_size = 2,
10837                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10838                 }
10839         },
10840         {
10841         .field_info_mask = {
10842                 .description = "l2_dmac",
10843                 .field_bit_size = 48,
10844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10845                 },
10846         .field_info_spec = {
10847                 .description = "l2_dmac",
10848                 .field_bit_size = 48,
10849                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10850                 }
10851         },
10852         {
10853         .field_info_mask = {
10854                 .description = "l2_smac",
10855                 .field_bit_size = 48,
10856                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10857                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10858                 .field_opr1 = {
10859                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
10860                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
10861                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
10862                 .field_opr2 = {
10863                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
10864                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
10865                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10866                 },
10867         .field_info_spec = {
10868                 .description = "l2_smac",
10869                 .field_bit_size = 48,
10870                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10871                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
10872                 .field_opr1 = {
10873                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
10874                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
10875                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
10876                 .field_opr2 = {
10877                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
10878                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
10879                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
10880                 }
10881         },
10882         {
10883         .field_info_mask = {
10884                 .description = "l2_dt",
10885                 .field_bit_size = 2,
10886                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10887                 },
10888         .field_info_spec = {
10889                 .description = "l2_dt",
10890                 .field_bit_size = 2,
10891                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10892                 }
10893         },
10894         {
10895         .field_info_mask = {
10896                 .description = "l2_sa",
10897                 .field_bit_size = 1,
10898                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10899                 },
10900         .field_info_spec = {
10901                 .description = "l2_sa",
10902                 .field_bit_size = 1,
10903                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10904                 }
10905         },
10906         {
10907         .field_info_mask = {
10908                 .description = "l2_nvt",
10909                 .field_bit_size = 2,
10910                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10911                 },
10912         .field_info_spec = {
10913                 .description = "l2_nvt",
10914                 .field_bit_size = 2,
10915                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10916                 }
10917         },
10918         {
10919         .field_info_mask = {
10920                 .description = "l2_ovp",
10921                 .field_bit_size = 3,
10922                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10923                 },
10924         .field_info_spec = {
10925                 .description = "l2_ovp",
10926                 .field_bit_size = 3,
10927                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10928                 }
10929         },
10930         {
10931         .field_info_mask = {
10932                 .description = "l2_ovd",
10933                 .field_bit_size = 1,
10934                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10935                 },
10936         .field_info_spec = {
10937                 .description = "l2_ovd",
10938                 .field_bit_size = 1,
10939                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10940                 }
10941         },
10942         {
10943         .field_info_mask = {
10944                 .description = "l2_ovv",
10945                 .field_bit_size = 12,
10946                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10947                 },
10948         .field_info_spec = {
10949                 .description = "l2_ovv",
10950                 .field_bit_size = 12,
10951                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10952                 }
10953         },
10954         {
10955         .field_info_mask = {
10956                 .description = "l2_ovt",
10957                 .field_bit_size = 3,
10958                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10959                 },
10960         .field_info_spec = {
10961                 .description = "l2_ovt",
10962                 .field_bit_size = 3,
10963                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10964                 }
10965         },
10966         {
10967         .field_info_mask = {
10968                 .description = "l2_ivp",
10969                 .field_bit_size = 3,
10970                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10971                 },
10972         .field_info_spec = {
10973                 .description = "l2_ivp",
10974                 .field_bit_size = 3,
10975                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10976                 }
10977         },
10978         {
10979         .field_info_mask = {
10980                 .description = "l2_ivd",
10981                 .field_bit_size = 1,
10982                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10983                 },
10984         .field_info_spec = {
10985                 .description = "l2_ivd",
10986                 .field_bit_size = 1,
10987                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
10988                 }
10989         },
10990         {
10991         .field_info_mask = {
10992                 .description = "l2_ivv",
10993                 .field_bit_size = 12,
10994                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
10995                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
10996                 .field_opr1 = {
10997                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
10998                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
10999                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
11000                 .field_opr2 = {
11001                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
11002                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
11003                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11004                 },
11005         .field_info_spec = {
11006                 .description = "l2_ivv",
11007                 .field_bit_size = 12,
11008                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11009                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11010                 .field_opr1 = {
11011                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
11012                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
11013                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
11014                 .field_opr2 = {
11015                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
11016                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
11017                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11018                 }
11019         },
11020         {
11021         .field_info_mask = {
11022                 .description = "l2_ivt",
11023                 .field_bit_size = 3,
11024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11025                 },
11026         .field_info_spec = {
11027                 .description = "l2_ivt",
11028                 .field_bit_size = 3,
11029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11030                 }
11031         },
11032         {
11033         .field_info_mask = {
11034                 .description = "l2_etype",
11035                 .field_bit_size = 16,
11036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11037                 },
11038         .field_info_spec = {
11039                 .description = "l2_etype",
11040                 .field_bit_size = 16,
11041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11042                 }
11043         },
11044         {
11045         .field_info_mask = {
11046                 .description = "l3.l3type",
11047                 .field_bit_size = 4,
11048                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11049                 },
11050         .field_info_spec = {
11051                 .description = "l3.l3type",
11052                 .field_bit_size = 4,
11053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11054                 }
11055         },
11056         {
11057         .field_info_mask = {
11058                 .description = "l3.sip.ipv4",
11059                 .field_bit_size = 32,
11060                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11061                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11062                 .field_opr1 = {
11063                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
11064                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
11065                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
11066                 .field_opr2 = {
11067                         (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
11068                         BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
11069                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11070                 },
11071         .field_info_spec = {
11072                 .description = "l3.sip.ipv4",
11073                 .field_bit_size = 32,
11074                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11075                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11076                 .field_opr1 = {
11077                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
11078                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
11079                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
11080                 .field_opr2 = {
11081                         (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
11082                         BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
11083                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11084                 }
11085         },
11086         {
11087         .field_info_mask = {
11088                 .description = "l3.sip.ipv6",
11089                 .field_bit_size = 128,
11090                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11091                 },
11092         .field_info_spec = {
11093                 .description = "l3.sip.ipv6",
11094                 .field_bit_size = 128,
11095                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11096                 }
11097         },
11098         {
11099         .field_info_mask = {
11100                 .description = "l3.sip_selcmp.ipv6",
11101                 .field_bit_size = 72,
11102                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11103                 },
11104         .field_info_spec = {
11105                 .description = "l3.sip_selcmp.ipv6",
11106                 .field_bit_size = 72,
11107                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11108                 }
11109         },
11110         {
11111         .field_info_mask = {
11112                 .description = "l3.dip.ipv4",
11113                 .field_bit_size = 32,
11114                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11115                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11116                 .field_opr1 = {
11117                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
11118                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
11119                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
11120                 .field_opr2 = {
11121                         (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
11122                         BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
11123                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11124                 },
11125         .field_info_spec = {
11126                 .description = "l3.dip.ipv4",
11127                 .field_bit_size = 32,
11128                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11129                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
11130                 .field_opr1 = {
11131                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
11132                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
11133                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
11134                 .field_opr2 = {
11135                         (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
11136                         BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
11137                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11138                 }
11139         },
11140         {
11141         .field_info_mask = {
11142                 .description = "l3.dip.ipv6",
11143                 .field_bit_size = 128,
11144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11145                 },
11146         .field_info_spec = {
11147                 .description = "l3.dip.ipv6",
11148                 .field_bit_size = 128,
11149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11150                 }
11151         },
11152         {
11153         .field_info_mask = {
11154                 .description = "l3.dip_selcmp.ipv6",
11155                 .field_bit_size = 72,
11156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11157                 },
11158         .field_info_spec = {
11159                 .description = "l3.dip_selcmp.ipv6",
11160                 .field_bit_size = 72,
11161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11162                 }
11163         },
11164         {
11165         .field_info_mask = {
11166                 .description = "l3.ttl",
11167                 .field_bit_size = 8,
11168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11169                 },
11170         .field_info_spec = {
11171                 .description = "l3.ttl",
11172                 .field_bit_size = 8,
11173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11174                 }
11175         },
11176         {
11177         .field_info_mask = {
11178                 .description = "l3.prot",
11179                 .field_bit_size = 8,
11180                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11181                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11182                 .field_opr1 = {
11183                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
11184                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
11185                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
11186                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11187                 },
11188         .field_info_spec = {
11189                 .description = "l3.prot",
11190                 .field_bit_size = 8,
11191                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
11192                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
11193                 .field_opr1 = {
11194                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
11195                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
11196                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
11197                 .field_opr2 = {
11198                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
11199                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
11200                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
11201                 }
11202         },
11203         {
11204         .field_info_mask = {
11205                 .description = "l3.fid.ipv4",
11206                 .field_bit_size = 16,
11207                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11208                 },
11209         .field_info_spec = {
11210                 .description = "l3.fid.ipv4",
11211                 .field_bit_size = 16,
11212                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11213                 }
11214         },
11215         {
11216         .field_info_mask = {
11217                 .description = "l3.fid.ipv6",
11218                 .field_bit_size = 20,
11219                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11220                 },
11221         .field_info_spec = {
11222                 .description = "l3.fid.ipv6",
11223                 .field_bit_size = 20,
11224                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11225                 }
11226         },
11227         {
11228         .field_info_mask = {
11229                 .description = "l3.qos",
11230                 .field_bit_size = 8,
11231                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11232                 },
11233         .field_info_spec = {
11234                 .description = "l3.qos",
11235                 .field_bit_size = 8,
11236                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11237                 }
11238         },
11239         {
11240         .field_info_mask = {
11241                 .description = "l3.ieh_nonext",
11242                 .field_bit_size = 1,
11243                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11244                 },
11245         .field_info_spec = {
11246                 .description = "l3.ieh_nonext",
11247                 .field_bit_size = 1,
11248                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11249                 }
11250         },
11251         {
11252         .field_info_mask = {
11253                 .description = "l3.ieh_esp",
11254                 .field_bit_size = 1,
11255                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11256                 },
11257         .field_info_spec = {
11258                 .description = "l3.ieh_esp",
11259                 .field_bit_size = 1,
11260                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11261                 }
11262         },
11263         {
11264         .field_info_mask = {
11265                 .description = "l3.ieh_auth",
11266                 .field_bit_size = 1,
11267                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11268                 },
11269         .field_info_spec = {
11270                 .description = "l3.ieh_auth",
11271                 .field_bit_size = 1,
11272                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11273                 }
11274         },
11275         {
11276         .field_info_mask = {
11277                 .description = "l3.ieh_dest",
11278                 .field_bit_size = 1,
11279                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11280                 },
11281         .field_info_spec = {
11282                 .description = "l3.ieh_dest",
11283                 .field_bit_size = 1,
11284                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11285                 }
11286         },
11287         {
11288         .field_info_mask = {
11289                 .description = "l3.ieh_frag",
11290                 .field_bit_size = 1,
11291                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11292                 },
11293         .field_info_spec = {
11294                 .description = "l3.ieh_frag",
11295                 .field_bit_size = 1,
11296                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11297                 }
11298         },
11299         {
11300         .field_info_mask = {
11301                 .description = "l3.ieh_rthdr",
11302                 .field_bit_size = 1,
11303                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11304                 },
11305         .field_info_spec = {
11306                 .description = "l3.ieh_rthdr",
11307                 .field_bit_size = 1,
11308                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11309                 }
11310         },
11311         {
11312         .field_info_mask = {
11313                 .description = "l3.ieh_hop",
11314                 .field_bit_size = 1,
11315                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11316                 },
11317         .field_info_spec = {
11318                 .description = "l3.ieh_hop",
11319                 .field_bit_size = 1,
11320                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11321                 }
11322         },
11323         {
11324         .field_info_mask = {
11325                 .description = "l3.ieh_1frag",
11326                 .field_bit_size = 1,
11327                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11328                 },
11329         .field_info_spec = {
11330                 .description = "l3.ieh_1frag",
11331                 .field_bit_size = 1,
11332                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11333                 }
11334         },
11335         {
11336         .field_info_mask = {
11337                 .description = "l3.df",
11338                 .field_bit_size = 1,
11339                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11340                 },
11341         .field_info_spec = {
11342                 .description = "l3.df",
11343                 .field_bit_size = 1,
11344                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11345                 }
11346         },
11347         {
11348         .field_info_mask = {
11349                 .description = "l3.l3err.ipv4",
11350                 .field_bit_size = 4,
11351                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11352                 },
11353         .field_info_spec = {
11354                 .description = "l3.l3err.ipv4",
11355                 .field_bit_size = 4,
11356                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11357                 }
11358         },
11359         {
11360         .field_info_mask = {
11361                 .description = "l3.l3err.ipv6",
11362                 .field_bit_size = 4,
11363                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11364                 },
11365         .field_info_spec = {
11366                 .description = "l3.l3err.ipv6",
11367                 .field_bit_size = 4,
11368                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11369                 }
11370         },
11371         {
11372         .field_info_mask = {
11373                 .description = "l4.l4type",
11374                 .field_bit_size = 4,
11375                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11376                 },
11377         .field_info_spec = {
11378                 .description = "l4.l4type",
11379                 .field_bit_size = 4,
11380                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11381                 }
11382         },
11383         {
11384         .field_info_mask = {
11385                 .description = "l4.src",
11386                 .field_bit_size = 16,
11387                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11388                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11389                 },
11390         .field_info_spec = {
11391                 .description = "l4.src",
11392                 .field_bit_size = 16,
11393                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11394                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11395                 }
11396         },
11397         {
11398         .field_info_mask = {
11399                 .description = "l4.dst",
11400                 .field_bit_size = 16,
11401                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11402                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11403                 },
11404         .field_info_spec = {
11405                 .description = "l4.dst",
11406                 .field_bit_size = 16,
11407                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11408                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
11409                 }
11410         },
11411         {
11412         .field_info_mask = {
11413                 .description = "l4.flags",
11414                 .field_bit_size = 9,
11415                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11416                 },
11417         .field_info_spec = {
11418                 .description = "l4.flags",
11419                 .field_bit_size = 9,
11420                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11421                 }
11422         },
11423         {
11424         .field_info_mask = {
11425                 .description = "l4.seq",
11426                 .field_bit_size = 32,
11427                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11428                 },
11429         .field_info_spec = {
11430                 .description = "l4.seq",
11431                 .field_bit_size = 32,
11432                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11433                 }
11434         },
11435         {
11436         .field_info_mask = {
11437                 .description = "l4.ack",
11438                 .field_bit_size = 32,
11439                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11440                 },
11441         .field_info_spec = {
11442                 .description = "l4.ack",
11443                 .field_bit_size = 32,
11444                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11445                 }
11446         },
11447         {
11448         .field_info_mask = {
11449                 .description = "l4.win",
11450                 .field_bit_size = 16,
11451                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11452                 },
11453         .field_info_spec = {
11454                 .description = "l4.win",
11455                 .field_bit_size = 16,
11456                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11457                 }
11458         },
11459         {
11460         .field_info_mask = {
11461                 .description = "l4.pa",
11462                 .field_bit_size = 1,
11463                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11464                 },
11465         .field_info_spec = {
11466                 .description = "l4.pa",
11467                 .field_bit_size = 1,
11468                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11469                 }
11470         },
11471         {
11472         .field_info_mask = {
11473                 .description = "l4.opt",
11474                 .field_bit_size = 1,
11475                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11476                 },
11477         .field_info_spec = {
11478                 .description = "l4.opt",
11479                 .field_bit_size = 1,
11480                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11481                 }
11482         },
11483         {
11484         .field_info_mask = {
11485                 .description = "l4.tcpts",
11486                 .field_bit_size = 1,
11487                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11488                 },
11489         .field_info_spec = {
11490                 .description = "l4.tcpts",
11491                 .field_bit_size = 1,
11492                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11493                 }
11494         },
11495         {
11496         .field_info_mask = {
11497                 .description = "l4.tsval",
11498                 .field_bit_size = 32,
11499                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11500                 },
11501         .field_info_spec = {
11502                 .description = "l4.tsval",
11503                 .field_bit_size = 32,
11504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11505                 }
11506         },
11507         {
11508         .field_info_mask = {
11509                 .description = "l4.txecr",
11510                 .field_bit_size = 32,
11511                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11512                 },
11513         .field_info_spec = {
11514                 .description = "l4.txecr",
11515                 .field_bit_size = 32,
11516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11517                 }
11518         },
11519         {
11520         .field_info_mask = {
11521                 .description = "l4.err",
11522                 .field_bit_size = 4,
11523                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11524                 },
11525         .field_info_spec = {
11526                 .description = "l4.err",
11527                 .field_bit_size = 4,
11528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11529                 }
11530         },
11531         /* class_tid: 1, , table: wm.l3.ipv6 */
11532         {
11533         .field_info_mask = {
11534                 .description = "wc_profile_id",
11535                 .field_bit_size = 8,
11536                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11537                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11538                 .field_opr1 = {
11539                         0xff}
11540                 },
11541         .field_info_spec = {
11542                 .description = "wc_profile_id",
11543                 .field_bit_size = 8,
11544                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11545                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
11546                 .field_opr1 = {
11547                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
11548                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
11549                 }
11550         },
11551         {
11552         .field_info_mask = {
11553                 .description = "l2_cntxt_id",
11554                 .field_bit_size = 10,
11555                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11556                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
11557                 .field_opr1 = {
11558                         0xff,
11559                         0xff}
11560                 },
11561         .field_info_spec = {
11562                 .description = "l2_cntxt_id",
11563                 .field_bit_size = 10,
11564                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
11565                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
11566                 .field_opr1 = {
11567                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
11568                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
11569                 }
11570         },
11571         {
11572         .field_info_mask = {
11573                 .description = "parif",
11574                 .field_bit_size = 4,
11575                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11576                 },
11577         .field_info_spec = {
11578                 .description = "parif",
11579                 .field_bit_size = 4,
11580                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11581                 }
11582         },
11583         {
11584         .field_info_mask = {
11585                 .description = "spif",
11586                 .field_bit_size = 2,
11587                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11588                 },
11589         .field_info_spec = {
11590                 .description = "spif",
11591                 .field_bit_size = 2,
11592                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11593                 }
11594         },
11595         {
11596         .field_info_mask = {
11597                 .description = "svif",
11598                 .field_bit_size = 11,
11599                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11600                 },
11601         .field_info_spec = {
11602                 .description = "svif",
11603                 .field_bit_size = 11,
11604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11605                 }
11606         },
11607         {
11608         .field_info_mask = {
11609                 .description = "lcos",
11610                 .field_bit_size = 3,
11611                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11612                 },
11613         .field_info_spec = {
11614                 .description = "lcos",
11615                 .field_bit_size = 3,
11616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11617                 }
11618         },
11619         {
11620         .field_info_mask = {
11621                 .description = "meta",
11622                 .field_bit_size = 16,
11623                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11624                 },
11625         .field_info_spec = {
11626                 .description = "meta",
11627                 .field_bit_size = 16,
11628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11629                 }
11630         },
11631         {
11632         .field_info_mask = {
11633                 .description = "rcyc_cnt",
11634                 .field_bit_size = 2,
11635                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11636                 },
11637         .field_info_spec = {
11638                 .description = "rcyc_cnt",
11639                 .field_bit_size = 2,
11640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11641                 }
11642         },
11643         {
11644         .field_info_mask = {
11645                 .description = "loopback",
11646                 .field_bit_size = 1,
11647                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11648                 },
11649         .field_info_spec = {
11650                 .description = "loopback",
11651                 .field_bit_size = 1,
11652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11653                 }
11654         },
11655         {
11656         .field_info_mask = {
11657                 .description = "tl2_l2type",
11658                 .field_bit_size = 2,
11659                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11660                 },
11661         .field_info_spec = {
11662                 .description = "tl2_l2type",
11663                 .field_bit_size = 2,
11664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11665                 }
11666         },
11667         {
11668         .field_info_mask = {
11669                 .description = "tl2_dmac",
11670                 .field_bit_size = 48,
11671                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11672                 },
11673         .field_info_spec = {
11674                 .description = "tl2_dmac",
11675                 .field_bit_size = 48,
11676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11677                 }
11678         },
11679         {
11680         .field_info_mask = {
11681                 .description = "tl2_smac",
11682                 .field_bit_size = 48,
11683                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11684                 },
11685         .field_info_spec = {
11686                 .description = "tl2_smac",
11687                 .field_bit_size = 48,
11688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11689                 }
11690         },
11691         {
11692         .field_info_mask = {
11693                 .description = "tl2_dt",
11694                 .field_bit_size = 2,
11695                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11696                 },
11697         .field_info_spec = {
11698                 .description = "tl2_dt",
11699                 .field_bit_size = 2,
11700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11701                 }
11702         },
11703         {
11704         .field_info_mask = {
11705                 .description = "tl2_sa",
11706                 .field_bit_size = 1,
11707                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11708                 },
11709         .field_info_spec = {
11710                 .description = "tl2_sa",
11711                 .field_bit_size = 1,
11712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11713                 }
11714         },
11715         {
11716         .field_info_mask = {
11717                 .description = "tl2_nvt",
11718                 .field_bit_size = 2,
11719                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11720                 },
11721         .field_info_spec = {
11722                 .description = "tl2_nvt",
11723                 .field_bit_size = 2,
11724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11725                 }
11726         },
11727         {
11728         .field_info_mask = {
11729                 .description = "tl2_ovp",
11730                 .field_bit_size = 3,
11731                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11732                 },
11733         .field_info_spec = {
11734                 .description = "tl2_ovp",
11735                 .field_bit_size = 3,
11736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11737                 }
11738         },
11739         {
11740         .field_info_mask = {
11741                 .description = "tl2_ovd",
11742                 .field_bit_size = 1,
11743                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11744                 },
11745         .field_info_spec = {
11746                 .description = "tl2_ovd",
11747                 .field_bit_size = 1,
11748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11749                 }
11750         },
11751         {
11752         .field_info_mask = {
11753                 .description = "tl2_ovv",
11754                 .field_bit_size = 12,
11755                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11756                 },
11757         .field_info_spec = {
11758                 .description = "tl2_ovv",
11759                 .field_bit_size = 12,
11760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11761                 }
11762         },
11763         {
11764         .field_info_mask = {
11765                 .description = "tl2_ovt",
11766                 .field_bit_size = 3,
11767                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11768                 },
11769         .field_info_spec = {
11770                 .description = "tl2_ovt",
11771                 .field_bit_size = 3,
11772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11773                 }
11774         },
11775         {
11776         .field_info_mask = {
11777                 .description = "tl2_ivp",
11778                 .field_bit_size = 3,
11779                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11780                 },
11781         .field_info_spec = {
11782                 .description = "tl2_ivp",
11783                 .field_bit_size = 3,
11784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11785                 }
11786         },
11787         {
11788         .field_info_mask = {
11789                 .description = "tl2_ivd",
11790                 .field_bit_size = 1,
11791                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11792                 },
11793         .field_info_spec = {
11794                 .description = "tl2_ivd",
11795                 .field_bit_size = 1,
11796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11797                 }
11798         },
11799         {
11800         .field_info_mask = {
11801                 .description = "tl2_ivv",
11802                 .field_bit_size = 12,
11803                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11804                 },
11805         .field_info_spec = {
11806                 .description = "tl2_ivv",
11807                 .field_bit_size = 12,
11808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11809                 }
11810         },
11811         {
11812         .field_info_mask = {
11813                 .description = "tl2_ivt",
11814                 .field_bit_size = 3,
11815                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11816                 },
11817         .field_info_spec = {
11818                 .description = "tl2_ivt",
11819                 .field_bit_size = 3,
11820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11821                 }
11822         },
11823         {
11824         .field_info_mask = {
11825                 .description = "tl2_etype",
11826                 .field_bit_size = 16,
11827                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11828                 },
11829         .field_info_spec = {
11830                 .description = "tl2_etype",
11831                 .field_bit_size = 16,
11832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11833                 }
11834         },
11835         {
11836         .field_info_mask = {
11837                 .description = "tl3.l3type",
11838                 .field_bit_size = 4,
11839                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11840                 },
11841         .field_info_spec = {
11842                 .description = "tl3.l3type",
11843                 .field_bit_size = 4,
11844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11845                 }
11846         },
11847         {
11848         .field_info_mask = {
11849                 .description = "tl3.sip.ipv4",
11850                 .field_bit_size = 32,
11851                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11852                 },
11853         .field_info_spec = {
11854                 .description = "tl3.sip.ipv4",
11855                 .field_bit_size = 32,
11856                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11857                 }
11858         },
11859         {
11860         .field_info_mask = {
11861                 .description = "tl3.sip.ipv6",
11862                 .field_bit_size = 128,
11863                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11864                 },
11865         .field_info_spec = {
11866                 .description = "tl3.sip.ipv6",
11867                 .field_bit_size = 128,
11868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11869                 }
11870         },
11871         {
11872         .field_info_mask = {
11873                 .description = "tl3.sip_selcmp.ipv6",
11874                 .field_bit_size = 72,
11875                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11876                 },
11877         .field_info_spec = {
11878                 .description = "tl3.sip_selcmp.ipv6",
11879                 .field_bit_size = 72,
11880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11881                 }
11882         },
11883         {
11884         .field_info_mask = {
11885                 .description = "tl3.dip.ipv4",
11886                 .field_bit_size = 32,
11887                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11888                 },
11889         .field_info_spec = {
11890                 .description = "tl3.dip.ipv4",
11891                 .field_bit_size = 32,
11892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11893                 }
11894         },
11895         {
11896         .field_info_mask = {
11897                 .description = "tl3.dip.ipv6",
11898                 .field_bit_size = 128,
11899                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11900                 },
11901         .field_info_spec = {
11902                 .description = "tl3.dip.ipv6",
11903                 .field_bit_size = 128,
11904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11905                 }
11906         },
11907         {
11908         .field_info_mask = {
11909                 .description = "tl3.dip_selcmp.ipv6",
11910                 .field_bit_size = 72,
11911                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11912                 },
11913         .field_info_spec = {
11914                 .description = "tl3.dip_selcmp.ipv6",
11915                 .field_bit_size = 72,
11916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11917                 }
11918         },
11919         {
11920         .field_info_mask = {
11921                 .description = "tl3.ttl",
11922                 .field_bit_size = 8,
11923                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11924                 },
11925         .field_info_spec = {
11926                 .description = "tl3.ttl",
11927                 .field_bit_size = 8,
11928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11929                 }
11930         },
11931         {
11932         .field_info_mask = {
11933                 .description = "tl3.prot",
11934                 .field_bit_size = 8,
11935                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11936                 },
11937         .field_info_spec = {
11938                 .description = "tl3.prot",
11939                 .field_bit_size = 8,
11940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11941                 }
11942         },
11943         {
11944         .field_info_mask = {
11945                 .description = "tl3.fid.ipv4",
11946                 .field_bit_size = 16,
11947                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11948                 },
11949         .field_info_spec = {
11950                 .description = "tl3.fid.ipv4",
11951                 .field_bit_size = 16,
11952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11953                 }
11954         },
11955         {
11956         .field_info_mask = {
11957                 .description = "tl3.fid.ipv6",
11958                 .field_bit_size = 20,
11959                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11960                 },
11961         .field_info_spec = {
11962                 .description = "tl3.fid.ipv6",
11963                 .field_bit_size = 20,
11964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11965                 }
11966         },
11967         {
11968         .field_info_mask = {
11969                 .description = "tl3.qos",
11970                 .field_bit_size = 8,
11971                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11972                 },
11973         .field_info_spec = {
11974                 .description = "tl3.qos",
11975                 .field_bit_size = 8,
11976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11977                 }
11978         },
11979         {
11980         .field_info_mask = {
11981                 .description = "tl3.ieh_nonext",
11982                 .field_bit_size = 1,
11983                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11984                 },
11985         .field_info_spec = {
11986                 .description = "tl3.ieh_nonext",
11987                 .field_bit_size = 1,
11988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11989                 }
11990         },
11991         {
11992         .field_info_mask = {
11993                 .description = "tl3.ieh_esp",
11994                 .field_bit_size = 1,
11995                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
11996                 },
11997         .field_info_spec = {
11998                 .description = "tl3.ieh_esp",
11999                 .field_bit_size = 1,
12000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12001                 }
12002         },
12003         {
12004         .field_info_mask = {
12005                 .description = "tl3.ieh_auth",
12006                 .field_bit_size = 1,
12007                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12008                 },
12009         .field_info_spec = {
12010                 .description = "tl3.ieh_auth",
12011                 .field_bit_size = 1,
12012                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12013                 }
12014         },
12015         {
12016         .field_info_mask = {
12017                 .description = "tl3.ieh_dest",
12018                 .field_bit_size = 1,
12019                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12020                 },
12021         .field_info_spec = {
12022                 .description = "tl3.ieh_dest",
12023                 .field_bit_size = 1,
12024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12025                 }
12026         },
12027         {
12028         .field_info_mask = {
12029                 .description = "tl3.ieh_frag",
12030                 .field_bit_size = 1,
12031                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12032                 },
12033         .field_info_spec = {
12034                 .description = "tl3.ieh_frag",
12035                 .field_bit_size = 1,
12036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12037                 }
12038         },
12039         {
12040         .field_info_mask = {
12041                 .description = "tl3.ieh_rthdr",
12042                 .field_bit_size = 1,
12043                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12044                 },
12045         .field_info_spec = {
12046                 .description = "tl3.ieh_rthdr",
12047                 .field_bit_size = 1,
12048                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12049                 }
12050         },
12051         {
12052         .field_info_mask = {
12053                 .description = "tl3.ieh_hop",
12054                 .field_bit_size = 1,
12055                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12056                 },
12057         .field_info_spec = {
12058                 .description = "tl3.ieh_hop",
12059                 .field_bit_size = 1,
12060                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12061                 }
12062         },
12063         {
12064         .field_info_mask = {
12065                 .description = "tl3.ieh_1frag",
12066                 .field_bit_size = 1,
12067                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12068                 },
12069         .field_info_spec = {
12070                 .description = "tl3.ieh_1frag",
12071                 .field_bit_size = 1,
12072                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12073                 }
12074         },
12075         {
12076         .field_info_mask = {
12077                 .description = "tl3.df",
12078                 .field_bit_size = 1,
12079                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12080                 },
12081         .field_info_spec = {
12082                 .description = "tl3.df",
12083                 .field_bit_size = 1,
12084                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12085                 }
12086         },
12087         {
12088         .field_info_mask = {
12089                 .description = "tl3.l3err",
12090                 .field_bit_size = 4,
12091                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12092                 },
12093         .field_info_spec = {
12094                 .description = "tl3.l3err",
12095                 .field_bit_size = 4,
12096                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12097                 }
12098         },
12099         {
12100         .field_info_mask = {
12101                 .description = "tl4.l4type",
12102                 .field_bit_size = 4,
12103                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12104                 },
12105         .field_info_spec = {
12106                 .description = "tl4.l4type",
12107                 .field_bit_size = 4,
12108                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12109                 }
12110         },
12111         {
12112         .field_info_mask = {
12113                 .description = "tl4.src",
12114                 .field_bit_size = 16,
12115                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12116                 },
12117         .field_info_spec = {
12118                 .description = "tl4.src",
12119                 .field_bit_size = 16,
12120                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12121                 }
12122         },
12123         {
12124         .field_info_mask = {
12125                 .description = "tl4.dst",
12126                 .field_bit_size = 16,
12127                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12128                 },
12129         .field_info_spec = {
12130                 .description = "tl4.dst",
12131                 .field_bit_size = 16,
12132                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12133                 }
12134         },
12135         {
12136         .field_info_mask = {
12137                 .description = "tl4.flags",
12138                 .field_bit_size = 9,
12139                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12140                 },
12141         .field_info_spec = {
12142                 .description = "tl4.flags",
12143                 .field_bit_size = 9,
12144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12145                 }
12146         },
12147         {
12148         .field_info_mask = {
12149                 .description = "tl4.seq",
12150                 .field_bit_size = 32,
12151                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12152                 },
12153         .field_info_spec = {
12154                 .description = "tl4.seq",
12155                 .field_bit_size = 32,
12156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12157                 }
12158         },
12159         {
12160         .field_info_mask = {
12161                 .description = "tl4.pa",
12162                 .field_bit_size = 1,
12163                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12164                 },
12165         .field_info_spec = {
12166                 .description = "tl4.pa",
12167                 .field_bit_size = 1,
12168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12169                 }
12170         },
12171         {
12172         .field_info_mask = {
12173                 .description = "tl4.opt",
12174                 .field_bit_size = 1,
12175                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12176                 },
12177         .field_info_spec = {
12178                 .description = "tl4.opt",
12179                 .field_bit_size = 1,
12180                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12181                 }
12182         },
12183         {
12184         .field_info_mask = {
12185                 .description = "tl4.tcpts",
12186                 .field_bit_size = 1,
12187                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12188                 },
12189         .field_info_spec = {
12190                 .description = "tl4.tcpts",
12191                 .field_bit_size = 1,
12192                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12193                 }
12194         },
12195         {
12196         .field_info_mask = {
12197                 .description = "tl4.err",
12198                 .field_bit_size = 4,
12199                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12200                 },
12201         .field_info_spec = {
12202                 .description = "tl4.err",
12203                 .field_bit_size = 4,
12204                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12205                 }
12206         },
12207         {
12208         .field_info_mask = {
12209                 .description = "tuntype",
12210                 .field_bit_size = 4,
12211                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12212                 },
12213         .field_info_spec = {
12214                 .description = "tuntype",
12215                 .field_bit_size = 4,
12216                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12217                 }
12218         },
12219         {
12220         .field_info_mask = {
12221                 .description = "tflags",
12222                 .field_bit_size = 3,
12223                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12224                 },
12225         .field_info_spec = {
12226                 .description = "tflags",
12227                 .field_bit_size = 3,
12228                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12229                 }
12230         },
12231         {
12232         .field_info_mask = {
12233                 .description = "tids",
12234                 .field_bit_size = 24,
12235                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12236                 },
12237         .field_info_spec = {
12238                 .description = "tids",
12239                 .field_bit_size = 24,
12240                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12241                 }
12242         },
12243         {
12244         .field_info_mask = {
12245                 .description = "tid",
12246                 .field_bit_size = 32,
12247                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12248                 },
12249         .field_info_spec = {
12250                 .description = "tid",
12251                 .field_bit_size = 32,
12252                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12253                 }
12254         },
12255         {
12256         .field_info_mask = {
12257                 .description = "tctxts",
12258                 .field_bit_size = 24,
12259                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12260                 },
12261         .field_info_spec = {
12262                 .description = "tctxts",
12263                 .field_bit_size = 24,
12264                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12265                 }
12266         },
12267         {
12268         .field_info_mask = {
12269                 .description = "tctxt",
12270                 .field_bit_size = 32,
12271                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12272                 },
12273         .field_info_spec = {
12274                 .description = "tctxt",
12275                 .field_bit_size = 32,
12276                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12277                 }
12278         },
12279         {
12280         .field_info_mask = {
12281                 .description = "tqos",
12282                 .field_bit_size = 3,
12283                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12284                 },
12285         .field_info_spec = {
12286                 .description = "tqos",
12287                 .field_bit_size = 3,
12288                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12289                 }
12290         },
12291         {
12292         .field_info_mask = {
12293                 .description = "terr",
12294                 .field_bit_size = 4,
12295                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12296                 },
12297         .field_info_spec = {
12298                 .description = "terr",
12299                 .field_bit_size = 4,
12300                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12301                 }
12302         },
12303         {
12304         .field_info_mask = {
12305                 .description = "l2_l2type",
12306                 .field_bit_size = 2,
12307                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12308                 },
12309         .field_info_spec = {
12310                 .description = "l2_l2type",
12311                 .field_bit_size = 2,
12312                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12313                 }
12314         },
12315         {
12316         .field_info_mask = {
12317                 .description = "l2_dmac",
12318                 .field_bit_size = 48,
12319                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12320                 },
12321         .field_info_spec = {
12322                 .description = "l2_dmac",
12323                 .field_bit_size = 48,
12324                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12325                 }
12326         },
12327         {
12328         .field_info_mask = {
12329                 .description = "l2_smac",
12330                 .field_bit_size = 48,
12331                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12332                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12333                 .field_opr1 = {
12334                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
12335                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
12336                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12337                 .field_opr2 = {
12338                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
12339                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
12340                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12341                 },
12342         .field_info_spec = {
12343                 .description = "l2_smac",
12344                 .field_bit_size = 48,
12345                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12346                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12347                 .field_opr1 = {
12348                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
12349                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
12350                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12351                 .field_opr2 = {
12352                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
12353                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
12354                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12355                 }
12356         },
12357         {
12358         .field_info_mask = {
12359                 .description = "l2_dt",
12360                 .field_bit_size = 2,
12361                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12362                 },
12363         .field_info_spec = {
12364                 .description = "l2_dt",
12365                 .field_bit_size = 2,
12366                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12367                 }
12368         },
12369         {
12370         .field_info_mask = {
12371                 .description = "l2_sa",
12372                 .field_bit_size = 1,
12373                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12374                 },
12375         .field_info_spec = {
12376                 .description = "l2_sa",
12377                 .field_bit_size = 1,
12378                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12379                 }
12380         },
12381         {
12382         .field_info_mask = {
12383                 .description = "l2_nvt",
12384                 .field_bit_size = 2,
12385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12386                 },
12387         .field_info_spec = {
12388                 .description = "l2_nvt",
12389                 .field_bit_size = 2,
12390                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12391                 }
12392         },
12393         {
12394         .field_info_mask = {
12395                 .description = "l2_ovp",
12396                 .field_bit_size = 3,
12397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12398                 },
12399         .field_info_spec = {
12400                 .description = "l2_ovp",
12401                 .field_bit_size = 3,
12402                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12403                 }
12404         },
12405         {
12406         .field_info_mask = {
12407                 .description = "l2_ovd",
12408                 .field_bit_size = 1,
12409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12410                 },
12411         .field_info_spec = {
12412                 .description = "l2_ovd",
12413                 .field_bit_size = 1,
12414                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12415                 }
12416         },
12417         {
12418         .field_info_mask = {
12419                 .description = "l2_ovv",
12420                 .field_bit_size = 12,
12421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12422                 },
12423         .field_info_spec = {
12424                 .description = "l2_ovv",
12425                 .field_bit_size = 12,
12426                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12427                 }
12428         },
12429         {
12430         .field_info_mask = {
12431                 .description = "l2_ovt",
12432                 .field_bit_size = 3,
12433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12434                 },
12435         .field_info_spec = {
12436                 .description = "l2_ovt",
12437                 .field_bit_size = 3,
12438                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12439                 }
12440         },
12441         {
12442         .field_info_mask = {
12443                 .description = "l2_ivp",
12444                 .field_bit_size = 3,
12445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12446                 },
12447         .field_info_spec = {
12448                 .description = "l2_ivp",
12449                 .field_bit_size = 3,
12450                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12451                 }
12452         },
12453         {
12454         .field_info_mask = {
12455                 .description = "l2_ivd",
12456                 .field_bit_size = 1,
12457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12458                 },
12459         .field_info_spec = {
12460                 .description = "l2_ivd",
12461                 .field_bit_size = 1,
12462                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12463                 }
12464         },
12465         {
12466         .field_info_mask = {
12467                 .description = "l2_ivv",
12468                 .field_bit_size = 12,
12469                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12470                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12471                 .field_opr1 = {
12472                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
12473                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
12474                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12475                 .field_opr2 = {
12476                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
12477                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
12478                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12479                 },
12480         .field_info_spec = {
12481                 .description = "l2_ivv",
12482                 .field_bit_size = 12,
12483                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12484                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12485                 .field_opr1 = {
12486                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
12487                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
12488                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12489                 .field_opr2 = {
12490                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
12491                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
12492                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12493                 }
12494         },
12495         {
12496         .field_info_mask = {
12497                 .description = "l2_ivt",
12498                 .field_bit_size = 3,
12499                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12500                 },
12501         .field_info_spec = {
12502                 .description = "l2_ivt",
12503                 .field_bit_size = 3,
12504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12505                 }
12506         },
12507         {
12508         .field_info_mask = {
12509                 .description = "l2_etype",
12510                 .field_bit_size = 16,
12511                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12512                 },
12513         .field_info_spec = {
12514                 .description = "l2_etype",
12515                 .field_bit_size = 16,
12516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12517                 }
12518         },
12519         {
12520         .field_info_mask = {
12521                 .description = "l3.l3type",
12522                 .field_bit_size = 4,
12523                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12524                 },
12525         .field_info_spec = {
12526                 .description = "l3.l3type",
12527                 .field_bit_size = 4,
12528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12529                 }
12530         },
12531         {
12532         .field_info_mask = {
12533                 .description = "l3.sip.ipv4",
12534                 .field_bit_size = 32,
12535                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12536                 },
12537         .field_info_spec = {
12538                 .description = "l3.sip.ipv4",
12539                 .field_bit_size = 32,
12540                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12541                 }
12542         },
12543         {
12544         .field_info_mask = {
12545                 .description = "l3.sip.ipv6",
12546                 .field_bit_size = 128,
12547                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12548                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12549                 .field_opr1 = {
12550                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
12551                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
12552                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12553                 .field_opr2 = {
12554                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
12555                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
12556                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12557                 },
12558         .field_info_spec = {
12559                 .description = "l3.sip.ipv6",
12560                 .field_bit_size = 128,
12561                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12562                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12563                 .field_opr1 = {
12564                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
12565                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
12566                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12567                 .field_opr2 = {
12568                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
12569                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
12570                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12571                 }
12572         },
12573         {
12574         .field_info_mask = {
12575                 .description = "l3.sip_selcmp.ipv6",
12576                 .field_bit_size = 72,
12577                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12578                 },
12579         .field_info_spec = {
12580                 .description = "l3.sip_selcmp.ipv6",
12581                 .field_bit_size = 72,
12582                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12583                 }
12584         },
12585         {
12586         .field_info_mask = {
12587                 .description = "l3.dip.ipv4",
12588                 .field_bit_size = 32,
12589                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12590                 },
12591         .field_info_spec = {
12592                 .description = "l3.dip.ipv4",
12593                 .field_bit_size = 32,
12594                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12595                 }
12596         },
12597         {
12598         .field_info_mask = {
12599                 .description = "l3.dip.ipv6",
12600                 .field_bit_size = 128,
12601                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12602                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12603                 .field_opr1 = {
12604                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
12605                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
12606                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12607                 .field_opr2 = {
12608                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
12609                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
12610                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12611                 },
12612         .field_info_spec = {
12613                 .description = "l3.dip.ipv6",
12614                 .field_bit_size = 128,
12615                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12616                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
12617                 .field_opr1 = {
12618                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
12619                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
12620                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
12621                 .field_opr2 = {
12622                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
12623                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
12624                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12625                 }
12626         },
12627         {
12628         .field_info_mask = {
12629                 .description = "l3.dip_selcmp.ipv6",
12630                 .field_bit_size = 72,
12631                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12632                 },
12633         .field_info_spec = {
12634                 .description = "l3.dip_selcmp.ipv6",
12635                 .field_bit_size = 72,
12636                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12637                 }
12638         },
12639         {
12640         .field_info_mask = {
12641                 .description = "l3.ttl",
12642                 .field_bit_size = 8,
12643                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12644                 },
12645         .field_info_spec = {
12646                 .description = "l3.ttl",
12647                 .field_bit_size = 8,
12648                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12649                 }
12650         },
12651         {
12652         .field_info_mask = {
12653                 .description = "l3.prot",
12654                 .field_bit_size = 8,
12655                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12656                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12657                 .field_opr1 = {
12658                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
12659                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
12660                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
12661                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12662                 },
12663         .field_info_spec = {
12664                 .description = "l3.prot",
12665                 .field_bit_size = 8,
12666                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
12667                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
12668                 .field_opr1 = {
12669                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
12670                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
12671                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
12672                 .field_opr2 = {
12673                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
12674                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
12675                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
12676                 }
12677         },
12678         {
12679         .field_info_mask = {
12680                 .description = "l3.fid.ipv4",
12681                 .field_bit_size = 16,
12682                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12683                 },
12684         .field_info_spec = {
12685                 .description = "l3.fid.ipv4",
12686                 .field_bit_size = 16,
12687                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12688                 }
12689         },
12690         {
12691         .field_info_mask = {
12692                 .description = "l3.fid.ipv6",
12693                 .field_bit_size = 20,
12694                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12695                 },
12696         .field_info_spec = {
12697                 .description = "l3.fid.ipv6",
12698                 .field_bit_size = 20,
12699                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12700                 }
12701         },
12702         {
12703         .field_info_mask = {
12704                 .description = "l3.qos",
12705                 .field_bit_size = 8,
12706                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12707                 },
12708         .field_info_spec = {
12709                 .description = "l3.qos",
12710                 .field_bit_size = 8,
12711                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12712                 }
12713         },
12714         {
12715         .field_info_mask = {
12716                 .description = "l3.ieh_nonext",
12717                 .field_bit_size = 1,
12718                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12719                 },
12720         .field_info_spec = {
12721                 .description = "l3.ieh_nonext",
12722                 .field_bit_size = 1,
12723                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12724                 }
12725         },
12726         {
12727         .field_info_mask = {
12728                 .description = "l3.ieh_esp",
12729                 .field_bit_size = 1,
12730                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12731                 },
12732         .field_info_spec = {
12733                 .description = "l3.ieh_esp",
12734                 .field_bit_size = 1,
12735                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12736                 }
12737         },
12738         {
12739         .field_info_mask = {
12740                 .description = "l3.ieh_auth",
12741                 .field_bit_size = 1,
12742                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12743                 },
12744         .field_info_spec = {
12745                 .description = "l3.ieh_auth",
12746                 .field_bit_size = 1,
12747                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12748                 }
12749         },
12750         {
12751         .field_info_mask = {
12752                 .description = "l3.ieh_dest",
12753                 .field_bit_size = 1,
12754                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12755                 },
12756         .field_info_spec = {
12757                 .description = "l3.ieh_dest",
12758                 .field_bit_size = 1,
12759                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12760                 }
12761         },
12762         {
12763         .field_info_mask = {
12764                 .description = "l3.ieh_frag",
12765                 .field_bit_size = 1,
12766                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12767                 },
12768         .field_info_spec = {
12769                 .description = "l3.ieh_frag",
12770                 .field_bit_size = 1,
12771                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12772                 }
12773         },
12774         {
12775         .field_info_mask = {
12776                 .description = "l3.ieh_rthdr",
12777                 .field_bit_size = 1,
12778                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12779                 },
12780         .field_info_spec = {
12781                 .description = "l3.ieh_rthdr",
12782                 .field_bit_size = 1,
12783                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12784                 }
12785         },
12786         {
12787         .field_info_mask = {
12788                 .description = "l3.ieh_hop",
12789                 .field_bit_size = 1,
12790                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12791                 },
12792         .field_info_spec = {
12793                 .description = "l3.ieh_hop",
12794                 .field_bit_size = 1,
12795                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12796                 }
12797         },
12798         {
12799         .field_info_mask = {
12800                 .description = "l3.ieh_1frag",
12801                 .field_bit_size = 1,
12802                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12803                 },
12804         .field_info_spec = {
12805                 .description = "l3.ieh_1frag",
12806                 .field_bit_size = 1,
12807                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12808                 }
12809         },
12810         {
12811         .field_info_mask = {
12812                 .description = "l3.df",
12813                 .field_bit_size = 1,
12814                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12815                 },
12816         .field_info_spec = {
12817                 .description = "l3.df",
12818                 .field_bit_size = 1,
12819                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12820                 }
12821         },
12822         {
12823         .field_info_mask = {
12824                 .description = "l3.l3err.ipv4",
12825                 .field_bit_size = 4,
12826                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12827                 },
12828         .field_info_spec = {
12829                 .description = "l3.l3err.ipv4",
12830                 .field_bit_size = 4,
12831                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12832                 }
12833         },
12834         {
12835         .field_info_mask = {
12836                 .description = "l3.l3err.ipv6",
12837                 .field_bit_size = 4,
12838                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12839                 },
12840         .field_info_spec = {
12841                 .description = "l3.l3err.ipv6",
12842                 .field_bit_size = 4,
12843                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12844                 }
12845         },
12846         {
12847         .field_info_mask = {
12848                 .description = "l4.l4type",
12849                 .field_bit_size = 4,
12850                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12851                 },
12852         .field_info_spec = {
12853                 .description = "l4.l4type",
12854                 .field_bit_size = 4,
12855                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12856                 }
12857         },
12858         {
12859         .field_info_mask = {
12860                 .description = "l4.src",
12861                 .field_bit_size = 16,
12862                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12863                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12864                 },
12865         .field_info_spec = {
12866                 .description = "l4.src",
12867                 .field_bit_size = 16,
12868                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12869                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12870                 }
12871         },
12872         {
12873         .field_info_mask = {
12874                 .description = "l4.dst",
12875                 .field_bit_size = 16,
12876                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12877                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12878                 },
12879         .field_info_spec = {
12880                 .description = "l4.dst",
12881                 .field_bit_size = 16,
12882                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
12883                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
12884                 }
12885         },
12886         {
12887         .field_info_mask = {
12888                 .description = "l4.flags",
12889                 .field_bit_size = 9,
12890                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12891                 },
12892         .field_info_spec = {
12893                 .description = "l4.flags",
12894                 .field_bit_size = 9,
12895                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12896                 }
12897         },
12898         {
12899         .field_info_mask = {
12900                 .description = "l4.seq",
12901                 .field_bit_size = 32,
12902                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12903                 },
12904         .field_info_spec = {
12905                 .description = "l4.seq",
12906                 .field_bit_size = 32,
12907                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12908                 }
12909         },
12910         {
12911         .field_info_mask = {
12912                 .description = "l4.ack",
12913                 .field_bit_size = 32,
12914                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12915                 },
12916         .field_info_spec = {
12917                 .description = "l4.ack",
12918                 .field_bit_size = 32,
12919                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12920                 }
12921         },
12922         {
12923         .field_info_mask = {
12924                 .description = "l4.win",
12925                 .field_bit_size = 16,
12926                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12927                 },
12928         .field_info_spec = {
12929                 .description = "l4.win",
12930                 .field_bit_size = 16,
12931                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12932                 }
12933         },
12934         {
12935         .field_info_mask = {
12936                 .description = "l4.pa",
12937                 .field_bit_size = 1,
12938                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12939                 },
12940         .field_info_spec = {
12941                 .description = "l4.pa",
12942                 .field_bit_size = 1,
12943                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12944                 }
12945         },
12946         {
12947         .field_info_mask = {
12948                 .description = "l4.opt",
12949                 .field_bit_size = 1,
12950                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12951                 },
12952         .field_info_spec = {
12953                 .description = "l4.opt",
12954                 .field_bit_size = 1,
12955                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12956                 }
12957         },
12958         {
12959         .field_info_mask = {
12960                 .description = "l4.tcpts",
12961                 .field_bit_size = 1,
12962                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12963                 },
12964         .field_info_spec = {
12965                 .description = "l4.tcpts",
12966                 .field_bit_size = 1,
12967                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12968                 }
12969         },
12970         {
12971         .field_info_mask = {
12972                 .description = "l4.tsval",
12973                 .field_bit_size = 32,
12974                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12975                 },
12976         .field_info_spec = {
12977                 .description = "l4.tsval",
12978                 .field_bit_size = 32,
12979                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12980                 }
12981         },
12982         {
12983         .field_info_mask = {
12984                 .description = "l4.txecr",
12985                 .field_bit_size = 32,
12986                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12987                 },
12988         .field_info_spec = {
12989                 .description = "l4.txecr",
12990                 .field_bit_size = 32,
12991                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12992                 }
12993         },
12994         {
12995         .field_info_mask = {
12996                 .description = "l4.err",
12997                 .field_bit_size = 4,
12998                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
12999                 },
13000         .field_info_spec = {
13001                 .description = "l4.err",
13002                 .field_bit_size = 4,
13003                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13004                 }
13005         },
13006         /* class_tid: 1, , table: wm.l2 */
13007         {
13008         .field_info_mask = {
13009                 .description = "wc_profile_id",
13010                 .field_bit_size = 8,
13011                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13012                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
13013                 .field_opr1 = {
13014                         0xff}
13015                 },
13016         .field_info_spec = {
13017                 .description = "wc_profile_id",
13018                 .field_bit_size = 8,
13019                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13020                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
13021                 .field_opr1 = {
13022                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 >> 8) & 0xff,
13023                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 & 0xff}
13024                 }
13025         },
13026         {
13027         .field_info_mask = {
13028                 .description = "l2_cntxt_id",
13029                 .field_bit_size = 10,
13030                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13031                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
13032                 .field_opr1 = {
13033                         0xff,
13034                         0xff}
13035                 },
13036         .field_info_spec = {
13037                 .description = "l2_cntxt_id",
13038                 .field_bit_size = 10,
13039                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
13040                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
13041                 .field_opr1 = {
13042                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
13043                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
13044                 }
13045         },
13046         {
13047         .field_info_mask = {
13048                 .description = "parif",
13049                 .field_bit_size = 4,
13050                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13051                 },
13052         .field_info_spec = {
13053                 .description = "parif",
13054                 .field_bit_size = 4,
13055                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13056                 }
13057         },
13058         {
13059         .field_info_mask = {
13060                 .description = "spif",
13061                 .field_bit_size = 2,
13062                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13063                 },
13064         .field_info_spec = {
13065                 .description = "spif",
13066                 .field_bit_size = 2,
13067                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13068                 }
13069         },
13070         {
13071         .field_info_mask = {
13072                 .description = "svif",
13073                 .field_bit_size = 11,
13074                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13075                 },
13076         .field_info_spec = {
13077                 .description = "svif",
13078                 .field_bit_size = 11,
13079                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13080                 }
13081         },
13082         {
13083         .field_info_mask = {
13084                 .description = "lcos",
13085                 .field_bit_size = 3,
13086                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13087                 },
13088         .field_info_spec = {
13089                 .description = "lcos",
13090                 .field_bit_size = 3,
13091                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13092                 }
13093         },
13094         {
13095         .field_info_mask = {
13096                 .description = "meta",
13097                 .field_bit_size = 16,
13098                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13099                 },
13100         .field_info_spec = {
13101                 .description = "meta",
13102                 .field_bit_size = 16,
13103                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13104                 }
13105         },
13106         {
13107         .field_info_mask = {
13108                 .description = "rcyc_cnt",
13109                 .field_bit_size = 2,
13110                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13111                 },
13112         .field_info_spec = {
13113                 .description = "rcyc_cnt",
13114                 .field_bit_size = 2,
13115                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13116                 }
13117         },
13118         {
13119         .field_info_mask = {
13120                 .description = "loopback",
13121                 .field_bit_size = 1,
13122                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13123                 },
13124         .field_info_spec = {
13125                 .description = "loopback",
13126                 .field_bit_size = 1,
13127                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13128                 }
13129         },
13130         {
13131         .field_info_mask = {
13132                 .description = "tl2_l2type",
13133                 .field_bit_size = 2,
13134                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13135                 },
13136         .field_info_spec = {
13137                 .description = "tl2_l2type",
13138                 .field_bit_size = 2,
13139                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13140                 }
13141         },
13142         {
13143         .field_info_mask = {
13144                 .description = "tl2_dmac",
13145                 .field_bit_size = 48,
13146                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13147                 },
13148         .field_info_spec = {
13149                 .description = "tl2_dmac",
13150                 .field_bit_size = 48,
13151                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13152                 }
13153         },
13154         {
13155         .field_info_mask = {
13156                 .description = "tl2_smac",
13157                 .field_bit_size = 48,
13158                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13159                 },
13160         .field_info_spec = {
13161                 .description = "tl2_smac",
13162                 .field_bit_size = 48,
13163                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13164                 }
13165         },
13166         {
13167         .field_info_mask = {
13168                 .description = "tl2_dt",
13169                 .field_bit_size = 2,
13170                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13171                 },
13172         .field_info_spec = {
13173                 .description = "tl2_dt",
13174                 .field_bit_size = 2,
13175                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13176                 }
13177         },
13178         {
13179         .field_info_mask = {
13180                 .description = "tl2_sa",
13181                 .field_bit_size = 1,
13182                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13183                 },
13184         .field_info_spec = {
13185                 .description = "tl2_sa",
13186                 .field_bit_size = 1,
13187                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13188                 }
13189         },
13190         {
13191         .field_info_mask = {
13192                 .description = "tl2_nvt",
13193                 .field_bit_size = 2,
13194                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13195                 },
13196         .field_info_spec = {
13197                 .description = "tl2_nvt",
13198                 .field_bit_size = 2,
13199                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13200                 }
13201         },
13202         {
13203         .field_info_mask = {
13204                 .description = "tl2_ovp",
13205                 .field_bit_size = 3,
13206                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13207                 },
13208         .field_info_spec = {
13209                 .description = "tl2_ovp",
13210                 .field_bit_size = 3,
13211                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13212                 }
13213         },
13214         {
13215         .field_info_mask = {
13216                 .description = "tl2_ovd",
13217                 .field_bit_size = 1,
13218                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13219                 },
13220         .field_info_spec = {
13221                 .description = "tl2_ovd",
13222                 .field_bit_size = 1,
13223                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13224                 }
13225         },
13226         {
13227         .field_info_mask = {
13228                 .description = "tl2_ovv",
13229                 .field_bit_size = 12,
13230                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13231                 },
13232         .field_info_spec = {
13233                 .description = "tl2_ovv",
13234                 .field_bit_size = 12,
13235                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13236                 }
13237         },
13238         {
13239         .field_info_mask = {
13240                 .description = "tl2_ovt",
13241                 .field_bit_size = 3,
13242                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13243                 },
13244         .field_info_spec = {
13245                 .description = "tl2_ovt",
13246                 .field_bit_size = 3,
13247                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13248                 }
13249         },
13250         {
13251         .field_info_mask = {
13252                 .description = "tl2_ivp",
13253                 .field_bit_size = 3,
13254                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13255                 },
13256         .field_info_spec = {
13257                 .description = "tl2_ivp",
13258                 .field_bit_size = 3,
13259                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13260                 }
13261         },
13262         {
13263         .field_info_mask = {
13264                 .description = "tl2_ivd",
13265                 .field_bit_size = 1,
13266                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13267                 },
13268         .field_info_spec = {
13269                 .description = "tl2_ivd",
13270                 .field_bit_size = 1,
13271                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13272                 }
13273         },
13274         {
13275         .field_info_mask = {
13276                 .description = "tl2_ivv",
13277                 .field_bit_size = 12,
13278                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13279                 },
13280         .field_info_spec = {
13281                 .description = "tl2_ivv",
13282                 .field_bit_size = 12,
13283                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13284                 }
13285         },
13286         {
13287         .field_info_mask = {
13288                 .description = "tl2_ivt",
13289                 .field_bit_size = 3,
13290                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13291                 },
13292         .field_info_spec = {
13293                 .description = "tl2_ivt",
13294                 .field_bit_size = 3,
13295                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13296                 }
13297         },
13298         {
13299         .field_info_mask = {
13300                 .description = "tl2_etype",
13301                 .field_bit_size = 16,
13302                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13303                 },
13304         .field_info_spec = {
13305                 .description = "tl2_etype",
13306                 .field_bit_size = 16,
13307                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13308                 }
13309         },
13310         {
13311         .field_info_mask = {
13312                 .description = "tl3.l3type",
13313                 .field_bit_size = 4,
13314                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13315                 },
13316         .field_info_spec = {
13317                 .description = "tl3.l3type",
13318                 .field_bit_size = 4,
13319                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13320                 }
13321         },
13322         {
13323         .field_info_mask = {
13324                 .description = "tl3.sip.ipv4",
13325                 .field_bit_size = 32,
13326                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13327                 },
13328         .field_info_spec = {
13329                 .description = "tl3.sip.ipv4",
13330                 .field_bit_size = 32,
13331                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13332                 }
13333         },
13334         {
13335         .field_info_mask = {
13336                 .description = "tl3.sip.ipv6",
13337                 .field_bit_size = 128,
13338                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13339                 },
13340         .field_info_spec = {
13341                 .description = "tl3.sip.ipv6",
13342                 .field_bit_size = 128,
13343                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13344                 }
13345         },
13346         {
13347         .field_info_mask = {
13348                 .description = "tl3.sip_selcmp.ipv6",
13349                 .field_bit_size = 72,
13350                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13351                 },
13352         .field_info_spec = {
13353                 .description = "tl3.sip_selcmp.ipv6",
13354                 .field_bit_size = 72,
13355                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13356                 }
13357         },
13358         {
13359         .field_info_mask = {
13360                 .description = "tl3.dip.ipv4",
13361                 .field_bit_size = 32,
13362                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13363                 },
13364         .field_info_spec = {
13365                 .description = "tl3.dip.ipv4",
13366                 .field_bit_size = 32,
13367                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13368                 }
13369         },
13370         {
13371         .field_info_mask = {
13372                 .description = "tl3.dip.ipv6",
13373                 .field_bit_size = 128,
13374                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13375                 },
13376         .field_info_spec = {
13377                 .description = "tl3.dip.ipv6",
13378                 .field_bit_size = 128,
13379                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13380                 }
13381         },
13382         {
13383         .field_info_mask = {
13384                 .description = "tl3.dip_selcmp.ipv6",
13385                 .field_bit_size = 72,
13386                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13387                 },
13388         .field_info_spec = {
13389                 .description = "tl3.dip_selcmp.ipv6",
13390                 .field_bit_size = 72,
13391                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13392                 }
13393         },
13394         {
13395         .field_info_mask = {
13396                 .description = "tl3.ttl",
13397                 .field_bit_size = 8,
13398                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13399                 },
13400         .field_info_spec = {
13401                 .description = "tl3.ttl",
13402                 .field_bit_size = 8,
13403                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13404                 }
13405         },
13406         {
13407         .field_info_mask = {
13408                 .description = "tl3.prot",
13409                 .field_bit_size = 8,
13410                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13411                 },
13412         .field_info_spec = {
13413                 .description = "tl3.prot",
13414                 .field_bit_size = 8,
13415                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13416                 }
13417         },
13418         {
13419         .field_info_mask = {
13420                 .description = "tl3.fid.ipv4",
13421                 .field_bit_size = 16,
13422                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13423                 },
13424         .field_info_spec = {
13425                 .description = "tl3.fid.ipv4",
13426                 .field_bit_size = 16,
13427                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13428                 }
13429         },
13430         {
13431         .field_info_mask = {
13432                 .description = "tl3.fid.ipv6",
13433                 .field_bit_size = 20,
13434                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13435                 },
13436         .field_info_spec = {
13437                 .description = "tl3.fid.ipv6",
13438                 .field_bit_size = 20,
13439                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13440                 }
13441         },
13442         {
13443         .field_info_mask = {
13444                 .description = "tl3.qos",
13445                 .field_bit_size = 8,
13446                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13447                 },
13448         .field_info_spec = {
13449                 .description = "tl3.qos",
13450                 .field_bit_size = 8,
13451                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13452                 }
13453         },
13454         {
13455         .field_info_mask = {
13456                 .description = "tl3.ieh_nonext",
13457                 .field_bit_size = 1,
13458                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13459                 },
13460         .field_info_spec = {
13461                 .description = "tl3.ieh_nonext",
13462                 .field_bit_size = 1,
13463                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13464                 }
13465         },
13466         {
13467         .field_info_mask = {
13468                 .description = "tl3.ieh_esp",
13469                 .field_bit_size = 1,
13470                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13471                 },
13472         .field_info_spec = {
13473                 .description = "tl3.ieh_esp",
13474                 .field_bit_size = 1,
13475                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13476                 }
13477         },
13478         {
13479         .field_info_mask = {
13480                 .description = "tl3.ieh_auth",
13481                 .field_bit_size = 1,
13482                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13483                 },
13484         .field_info_spec = {
13485                 .description = "tl3.ieh_auth",
13486                 .field_bit_size = 1,
13487                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13488                 }
13489         },
13490         {
13491         .field_info_mask = {
13492                 .description = "tl3.ieh_dest",
13493                 .field_bit_size = 1,
13494                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13495                 },
13496         .field_info_spec = {
13497                 .description = "tl3.ieh_dest",
13498                 .field_bit_size = 1,
13499                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13500                 }
13501         },
13502         {
13503         .field_info_mask = {
13504                 .description = "tl3.ieh_frag",
13505                 .field_bit_size = 1,
13506                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13507                 },
13508         .field_info_spec = {
13509                 .description = "tl3.ieh_frag",
13510                 .field_bit_size = 1,
13511                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13512                 }
13513         },
13514         {
13515         .field_info_mask = {
13516                 .description = "tl3.ieh_rthdr",
13517                 .field_bit_size = 1,
13518                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13519                 },
13520         .field_info_spec = {
13521                 .description = "tl3.ieh_rthdr",
13522                 .field_bit_size = 1,
13523                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13524                 }
13525         },
13526         {
13527         .field_info_mask = {
13528                 .description = "tl3.ieh_hop",
13529                 .field_bit_size = 1,
13530                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13531                 },
13532         .field_info_spec = {
13533                 .description = "tl3.ieh_hop",
13534                 .field_bit_size = 1,
13535                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13536                 }
13537         },
13538         {
13539         .field_info_mask = {
13540                 .description = "tl3.ieh_1frag",
13541                 .field_bit_size = 1,
13542                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13543                 },
13544         .field_info_spec = {
13545                 .description = "tl3.ieh_1frag",
13546                 .field_bit_size = 1,
13547                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13548                 }
13549         },
13550         {
13551         .field_info_mask = {
13552                 .description = "tl3.df",
13553                 .field_bit_size = 1,
13554                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13555                 },
13556         .field_info_spec = {
13557                 .description = "tl3.df",
13558                 .field_bit_size = 1,
13559                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13560                 }
13561         },
13562         {
13563         .field_info_mask = {
13564                 .description = "tl3.l3err",
13565                 .field_bit_size = 4,
13566                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13567                 },
13568         .field_info_spec = {
13569                 .description = "tl3.l3err",
13570                 .field_bit_size = 4,
13571                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13572                 }
13573         },
13574         {
13575         .field_info_mask = {
13576                 .description = "tl4.l4type",
13577                 .field_bit_size = 4,
13578                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13579                 },
13580         .field_info_spec = {
13581                 .description = "tl4.l4type",
13582                 .field_bit_size = 4,
13583                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13584                 }
13585         },
13586         {
13587         .field_info_mask = {
13588                 .description = "tl4.src",
13589                 .field_bit_size = 16,
13590                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13591                 },
13592         .field_info_spec = {
13593                 .description = "tl4.src",
13594                 .field_bit_size = 16,
13595                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13596                 }
13597         },
13598         {
13599         .field_info_mask = {
13600                 .description = "tl4.dst",
13601                 .field_bit_size = 16,
13602                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13603                 },
13604         .field_info_spec = {
13605                 .description = "tl4.dst",
13606                 .field_bit_size = 16,
13607                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13608                 }
13609         },
13610         {
13611         .field_info_mask = {
13612                 .description = "tl4.flags",
13613                 .field_bit_size = 9,
13614                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13615                 },
13616         .field_info_spec = {
13617                 .description = "tl4.flags",
13618                 .field_bit_size = 9,
13619                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13620                 }
13621         },
13622         {
13623         .field_info_mask = {
13624                 .description = "tl4.seq",
13625                 .field_bit_size = 32,
13626                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13627                 },
13628         .field_info_spec = {
13629                 .description = "tl4.seq",
13630                 .field_bit_size = 32,
13631                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13632                 }
13633         },
13634         {
13635         .field_info_mask = {
13636                 .description = "tl4.pa",
13637                 .field_bit_size = 1,
13638                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13639                 },
13640         .field_info_spec = {
13641                 .description = "tl4.pa",
13642                 .field_bit_size = 1,
13643                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13644                 }
13645         },
13646         {
13647         .field_info_mask = {
13648                 .description = "tl4.opt",
13649                 .field_bit_size = 1,
13650                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13651                 },
13652         .field_info_spec = {
13653                 .description = "tl4.opt",
13654                 .field_bit_size = 1,
13655                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13656                 }
13657         },
13658         {
13659         .field_info_mask = {
13660                 .description = "tl4.tcpts",
13661                 .field_bit_size = 1,
13662                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13663                 },
13664         .field_info_spec = {
13665                 .description = "tl4.tcpts",
13666                 .field_bit_size = 1,
13667                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13668                 }
13669         },
13670         {
13671         .field_info_mask = {
13672                 .description = "tl4.err",
13673                 .field_bit_size = 4,
13674                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13675                 },
13676         .field_info_spec = {
13677                 .description = "tl4.err",
13678                 .field_bit_size = 4,
13679                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13680                 }
13681         },
13682         {
13683         .field_info_mask = {
13684                 .description = "tuntype",
13685                 .field_bit_size = 4,
13686                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13687                 },
13688         .field_info_spec = {
13689                 .description = "tuntype",
13690                 .field_bit_size = 4,
13691                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13692                 }
13693         },
13694         {
13695         .field_info_mask = {
13696                 .description = "tflags",
13697                 .field_bit_size = 3,
13698                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13699                 },
13700         .field_info_spec = {
13701                 .description = "tflags",
13702                 .field_bit_size = 3,
13703                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13704                 }
13705         },
13706         {
13707         .field_info_mask = {
13708                 .description = "tids",
13709                 .field_bit_size = 24,
13710                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13711                 },
13712         .field_info_spec = {
13713                 .description = "tids",
13714                 .field_bit_size = 24,
13715                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13716                 }
13717         },
13718         {
13719         .field_info_mask = {
13720                 .description = "tid",
13721                 .field_bit_size = 32,
13722                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13723                 },
13724         .field_info_spec = {
13725                 .description = "tid",
13726                 .field_bit_size = 32,
13727                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13728                 }
13729         },
13730         {
13731         .field_info_mask = {
13732                 .description = "tctxts",
13733                 .field_bit_size = 24,
13734                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13735                 },
13736         .field_info_spec = {
13737                 .description = "tctxts",
13738                 .field_bit_size = 24,
13739                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13740                 }
13741         },
13742         {
13743         .field_info_mask = {
13744                 .description = "tctxt",
13745                 .field_bit_size = 32,
13746                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13747                 },
13748         .field_info_spec = {
13749                 .description = "tctxt",
13750                 .field_bit_size = 32,
13751                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13752                 }
13753         },
13754         {
13755         .field_info_mask = {
13756                 .description = "tqos",
13757                 .field_bit_size = 3,
13758                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13759                 },
13760         .field_info_spec = {
13761                 .description = "tqos",
13762                 .field_bit_size = 3,
13763                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13764                 }
13765         },
13766         {
13767         .field_info_mask = {
13768                 .description = "terr",
13769                 .field_bit_size = 4,
13770                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13771                 },
13772         .field_info_spec = {
13773                 .description = "terr",
13774                 .field_bit_size = 4,
13775                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13776                 }
13777         },
13778         {
13779         .field_info_mask = {
13780                 .description = "l2_l2type",
13781                 .field_bit_size = 2,
13782                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13783                 },
13784         .field_info_spec = {
13785                 .description = "l2_l2type",
13786                 .field_bit_size = 2,
13787                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13788                 }
13789         },
13790         {
13791         .field_info_mask = {
13792                 .description = "l2_dmac",
13793                 .field_bit_size = 48,
13794                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13795                 },
13796         .field_info_spec = {
13797                 .description = "l2_dmac",
13798                 .field_bit_size = 48,
13799                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13800                 }
13801         },
13802         {
13803         .field_info_mask = {
13804                 .description = "l2_smac",
13805                 .field_bit_size = 48,
13806                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
13807                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13808                 .field_opr1 = {
13809                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
13810                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
13811                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
13812                 .field_opr2 = {
13813                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
13814                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
13815                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
13816                 },
13817         .field_info_spec = {
13818                 .description = "l2_smac",
13819                 .field_bit_size = 48,
13820                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
13821                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
13822                 .field_opr1 = {
13823                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
13824                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
13825                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
13826                 .field_opr2 = {
13827                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
13828                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
13829                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
13830                 }
13831         },
13832         {
13833         .field_info_mask = {
13834                 .description = "l2_dt",
13835                 .field_bit_size = 2,
13836                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13837                 },
13838         .field_info_spec = {
13839                 .description = "l2_dt",
13840                 .field_bit_size = 2,
13841                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13842                 }
13843         },
13844         {
13845         .field_info_mask = {
13846                 .description = "l2_sa",
13847                 .field_bit_size = 1,
13848                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13849                 },
13850         .field_info_spec = {
13851                 .description = "l2_sa",
13852                 .field_bit_size = 1,
13853                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13854                 }
13855         },
13856         {
13857         .field_info_mask = {
13858                 .description = "l2_nvt",
13859                 .field_bit_size = 2,
13860                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13861                 },
13862         .field_info_spec = {
13863                 .description = "l2_nvt",
13864                 .field_bit_size = 2,
13865                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13866                 }
13867         },
13868         {
13869         .field_info_mask = {
13870                 .description = "l2_ovp",
13871                 .field_bit_size = 3,
13872                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13873                 },
13874         .field_info_spec = {
13875                 .description = "l2_ovp",
13876                 .field_bit_size = 3,
13877                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13878                 }
13879         },
13880         {
13881         .field_info_mask = {
13882                 .description = "l2_ovd",
13883                 .field_bit_size = 1,
13884                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13885                 },
13886         .field_info_spec = {
13887                 .description = "l2_ovd",
13888                 .field_bit_size = 1,
13889                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13890                 }
13891         },
13892         {
13893         .field_info_mask = {
13894                 .description = "l2_ovv",
13895                 .field_bit_size = 12,
13896                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13897                 },
13898         .field_info_spec = {
13899                 .description = "l2_ovv",
13900                 .field_bit_size = 12,
13901                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13902                 }
13903         },
13904         {
13905         .field_info_mask = {
13906                 .description = "l2_ovt",
13907                 .field_bit_size = 3,
13908                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13909                 },
13910         .field_info_spec = {
13911                 .description = "l2_ovt",
13912                 .field_bit_size = 3,
13913                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13914                 }
13915         },
13916         {
13917         .field_info_mask = {
13918                 .description = "l2_ivp",
13919                 .field_bit_size = 3,
13920                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13921                 },
13922         .field_info_spec = {
13923                 .description = "l2_ivp",
13924                 .field_bit_size = 3,
13925                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13926                 }
13927         },
13928         {
13929         .field_info_mask = {
13930                 .description = "l2_ivd",
13931                 .field_bit_size = 1,
13932                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13933                 },
13934         .field_info_spec = {
13935                 .description = "l2_ivd",
13936                 .field_bit_size = 1,
13937                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13938                 }
13939         },
13940         {
13941         .field_info_mask = {
13942                 .description = "l2_ivv",
13943                 .field_bit_size = 12,
13944                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
13945                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13946                 .field_opr1 = {
13947                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
13948                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
13949                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
13950                 .field_opr2 = {
13951                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
13952                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
13953                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
13954                 },
13955         .field_info_spec = {
13956                 .description = "l2_ivv",
13957                 .field_bit_size = 12,
13958                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
13959                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
13960                 .field_opr1 = {
13961                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
13962                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
13963                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
13964                 .field_opr2 = {
13965                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
13966                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
13967                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
13968                 }
13969         },
13970         {
13971         .field_info_mask = {
13972                 .description = "l2_ivt",
13973                 .field_bit_size = 3,
13974                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13975                 },
13976         .field_info_spec = {
13977                 .description = "l2_ivt",
13978                 .field_bit_size = 3,
13979                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13980                 }
13981         },
13982         {
13983         .field_info_mask = {
13984                 .description = "l2_etype",
13985                 .field_bit_size = 16,
13986                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13987                 },
13988         .field_info_spec = {
13989                 .description = "l2_etype",
13990                 .field_bit_size = 16,
13991                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13992                 }
13993         },
13994         {
13995         .field_info_mask = {
13996                 .description = "l3.l3type",
13997                 .field_bit_size = 4,
13998                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
13999                 },
14000         .field_info_spec = {
14001                 .description = "l3.l3type",
14002                 .field_bit_size = 4,
14003                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14004                 }
14005         },
14006         {
14007         .field_info_mask = {
14008                 .description = "l3.sip.ipv4",
14009                 .field_bit_size = 32,
14010                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14011                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14012                 },
14013         .field_info_spec = {
14014                 .description = "l3.sip.ipv4",
14015                 .field_bit_size = 32,
14016                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14017                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14018                 }
14019         },
14020         {
14021         .field_info_mask = {
14022                 .description = "l3.sip.ipv6",
14023                 .field_bit_size = 128,
14024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14025                 },
14026         .field_info_spec = {
14027                 .description = "l3.sip.ipv6",
14028                 .field_bit_size = 128,
14029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14030                 }
14031         },
14032         {
14033         .field_info_mask = {
14034                 .description = "l3.sip_selcmp.ipv6",
14035                 .field_bit_size = 72,
14036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14037                 },
14038         .field_info_spec = {
14039                 .description = "l3.sip_selcmp.ipv6",
14040                 .field_bit_size = 72,
14041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14042                 }
14043         },
14044         {
14045         .field_info_mask = {
14046                 .description = "l3.dip.ipv4",
14047                 .field_bit_size = 32,
14048                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14049                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14050                 },
14051         .field_info_spec = {
14052                 .description = "l3.dip.ipv4",
14053                 .field_bit_size = 32,
14054                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14055                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14056                 }
14057         },
14058         {
14059         .field_info_mask = {
14060                 .description = "l3.dip.ipv6",
14061                 .field_bit_size = 128,
14062                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14063                 },
14064         .field_info_spec = {
14065                 .description = "l3.dip.ipv6",
14066                 .field_bit_size = 128,
14067                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14068                 }
14069         },
14070         {
14071         .field_info_mask = {
14072                 .description = "l3.dip_selcmp.ipv6",
14073                 .field_bit_size = 72,
14074                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14075                 },
14076         .field_info_spec = {
14077                 .description = "l3.dip_selcmp.ipv6",
14078                 .field_bit_size = 72,
14079                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14080                 }
14081         },
14082         {
14083         .field_info_mask = {
14084                 .description = "l3.ttl",
14085                 .field_bit_size = 8,
14086                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14087                 },
14088         .field_info_spec = {
14089                 .description = "l3.ttl",
14090                 .field_bit_size = 8,
14091                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14092                 }
14093         },
14094         {
14095         .field_info_mask = {
14096                 .description = "l3.prot",
14097                 .field_bit_size = 8,
14098                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14099                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14100                 },
14101         .field_info_spec = {
14102                 .description = "l3.prot",
14103                 .field_bit_size = 8,
14104                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14105                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14106                 }
14107         },
14108         {
14109         .field_info_mask = {
14110                 .description = "l3.fid.ipv4",
14111                 .field_bit_size = 16,
14112                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14113                 },
14114         .field_info_spec = {
14115                 .description = "l3.fid.ipv4",
14116                 .field_bit_size = 16,
14117                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14118                 }
14119         },
14120         {
14121         .field_info_mask = {
14122                 .description = "l3.fid.ipv6",
14123                 .field_bit_size = 20,
14124                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14125                 },
14126         .field_info_spec = {
14127                 .description = "l3.fid.ipv6",
14128                 .field_bit_size = 20,
14129                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14130                 }
14131         },
14132         {
14133         .field_info_mask = {
14134                 .description = "l3.qos",
14135                 .field_bit_size = 8,
14136                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14137                 },
14138         .field_info_spec = {
14139                 .description = "l3.qos",
14140                 .field_bit_size = 8,
14141                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14142                 }
14143         },
14144         {
14145         .field_info_mask = {
14146                 .description = "l3.ieh_nonext",
14147                 .field_bit_size = 1,
14148                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14149                 },
14150         .field_info_spec = {
14151                 .description = "l3.ieh_nonext",
14152                 .field_bit_size = 1,
14153                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14154                 }
14155         },
14156         {
14157         .field_info_mask = {
14158                 .description = "l3.ieh_esp",
14159                 .field_bit_size = 1,
14160                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14161                 },
14162         .field_info_spec = {
14163                 .description = "l3.ieh_esp",
14164                 .field_bit_size = 1,
14165                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14166                 }
14167         },
14168         {
14169         .field_info_mask = {
14170                 .description = "l3.ieh_auth",
14171                 .field_bit_size = 1,
14172                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14173                 },
14174         .field_info_spec = {
14175                 .description = "l3.ieh_auth",
14176                 .field_bit_size = 1,
14177                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14178                 }
14179         },
14180         {
14181         .field_info_mask = {
14182                 .description = "l3.ieh_dest",
14183                 .field_bit_size = 1,
14184                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14185                 },
14186         .field_info_spec = {
14187                 .description = "l3.ieh_dest",
14188                 .field_bit_size = 1,
14189                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14190                 }
14191         },
14192         {
14193         .field_info_mask = {
14194                 .description = "l3.ieh_frag",
14195                 .field_bit_size = 1,
14196                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14197                 },
14198         .field_info_spec = {
14199                 .description = "l3.ieh_frag",
14200                 .field_bit_size = 1,
14201                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14202                 }
14203         },
14204         {
14205         .field_info_mask = {
14206                 .description = "l3.ieh_rthdr",
14207                 .field_bit_size = 1,
14208                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14209                 },
14210         .field_info_spec = {
14211                 .description = "l3.ieh_rthdr",
14212                 .field_bit_size = 1,
14213                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14214                 }
14215         },
14216         {
14217         .field_info_mask = {
14218                 .description = "l3.ieh_hop",
14219                 .field_bit_size = 1,
14220                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14221                 },
14222         .field_info_spec = {
14223                 .description = "l3.ieh_hop",
14224                 .field_bit_size = 1,
14225                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14226                 }
14227         },
14228         {
14229         .field_info_mask = {
14230                 .description = "l3.ieh_1frag",
14231                 .field_bit_size = 1,
14232                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14233                 },
14234         .field_info_spec = {
14235                 .description = "l3.ieh_1frag",
14236                 .field_bit_size = 1,
14237                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14238                 }
14239         },
14240         {
14241         .field_info_mask = {
14242                 .description = "l3.df",
14243                 .field_bit_size = 1,
14244                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14245                 },
14246         .field_info_spec = {
14247                 .description = "l3.df",
14248                 .field_bit_size = 1,
14249                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14250                 }
14251         },
14252         {
14253         .field_info_mask = {
14254                 .description = "l3.l3err.ipv4",
14255                 .field_bit_size = 4,
14256                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14257                 },
14258         .field_info_spec = {
14259                 .description = "l3.l3err.ipv4",
14260                 .field_bit_size = 4,
14261                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14262                 }
14263         },
14264         {
14265         .field_info_mask = {
14266                 .description = "l3.l3err.ipv6",
14267                 .field_bit_size = 4,
14268                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14269                 },
14270         .field_info_spec = {
14271                 .description = "l3.l3err.ipv6",
14272                 .field_bit_size = 4,
14273                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14274                 }
14275         },
14276         {
14277         .field_info_mask = {
14278                 .description = "l4.l4type",
14279                 .field_bit_size = 4,
14280                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14281                 },
14282         .field_info_spec = {
14283                 .description = "l4.l4type",
14284                 .field_bit_size = 4,
14285                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14286                 }
14287         },
14288         {
14289         .field_info_mask = {
14290                 .description = "l4.src",
14291                 .field_bit_size = 16,
14292                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14293                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14294                 },
14295         .field_info_spec = {
14296                 .description = "l4.src",
14297                 .field_bit_size = 16,
14298                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14299                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14300                 }
14301         },
14302         {
14303         .field_info_mask = {
14304                 .description = "l4.dst",
14305                 .field_bit_size = 16,
14306                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14307                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14308                 },
14309         .field_info_spec = {
14310                 .description = "l4.dst",
14311                 .field_bit_size = 16,
14312                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14313                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
14314                 }
14315         },
14316         {
14317         .field_info_mask = {
14318                 .description = "l4.flags",
14319                 .field_bit_size = 9,
14320                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14321                 },
14322         .field_info_spec = {
14323                 .description = "l4.flags",
14324                 .field_bit_size = 9,
14325                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14326                 }
14327         },
14328         {
14329         .field_info_mask = {
14330                 .description = "l4.seq",
14331                 .field_bit_size = 32,
14332                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14333                 },
14334         .field_info_spec = {
14335                 .description = "l4.seq",
14336                 .field_bit_size = 32,
14337                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14338                 }
14339         },
14340         {
14341         .field_info_mask = {
14342                 .description = "l4.ack",
14343                 .field_bit_size = 32,
14344                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14345                 },
14346         .field_info_spec = {
14347                 .description = "l4.ack",
14348                 .field_bit_size = 32,
14349                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14350                 }
14351         },
14352         {
14353         .field_info_mask = {
14354                 .description = "l4.win",
14355                 .field_bit_size = 16,
14356                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14357                 },
14358         .field_info_spec = {
14359                 .description = "l4.win",
14360                 .field_bit_size = 16,
14361                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14362                 }
14363         },
14364         {
14365         .field_info_mask = {
14366                 .description = "l4.pa",
14367                 .field_bit_size = 1,
14368                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14369                 },
14370         .field_info_spec = {
14371                 .description = "l4.pa",
14372                 .field_bit_size = 1,
14373                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14374                 }
14375         },
14376         {
14377         .field_info_mask = {
14378                 .description = "l4.opt",
14379                 .field_bit_size = 1,
14380                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14381                 },
14382         .field_info_spec = {
14383                 .description = "l4.opt",
14384                 .field_bit_size = 1,
14385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14386                 }
14387         },
14388         {
14389         .field_info_mask = {
14390                 .description = "l4.tcpts",
14391                 .field_bit_size = 1,
14392                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14393                 },
14394         .field_info_spec = {
14395                 .description = "l4.tcpts",
14396                 .field_bit_size = 1,
14397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14398                 }
14399         },
14400         {
14401         .field_info_mask = {
14402                 .description = "l4.tsval",
14403                 .field_bit_size = 32,
14404                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14405                 },
14406         .field_info_spec = {
14407                 .description = "l4.tsval",
14408                 .field_bit_size = 32,
14409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14410                 }
14411         },
14412         {
14413         .field_info_mask = {
14414                 .description = "l4.txecr",
14415                 .field_bit_size = 32,
14416                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14417                 },
14418         .field_info_spec = {
14419                 .description = "l4.txecr",
14420                 .field_bit_size = 32,
14421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14422                 }
14423         },
14424         {
14425         .field_info_mask = {
14426                 .description = "l4.err",
14427                 .field_bit_size = 4,
14428                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14429                 },
14430         .field_info_spec = {
14431                 .description = "l4.err",
14432                 .field_bit_size = 4,
14433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14434                 }
14435         },
14436         /* class_tid: 1, , table: wm.l3_l4.vxlan.ipv4 */
14437         {
14438         .field_info_mask = {
14439                 .description = "wc_profile_id",
14440                 .field_bit_size = 8,
14441                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14442                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
14443                 .field_opr1 = {
14444                         0xff}
14445                 },
14446         .field_info_spec = {
14447                 .description = "wc_profile_id",
14448                 .field_bit_size = 8,
14449                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14450                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
14451                 .field_opr1 = {
14452                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2 >> 8) & 0xff,
14453                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2 & 0xff}
14454                 }
14455         },
14456         {
14457         .field_info_mask = {
14458                 .description = "l2_cntxt_id",
14459                 .field_bit_size = 10,
14460                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14461                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
14462                 .field_opr1 = {
14463                         0xff,
14464                         0xff}
14465                 },
14466         .field_info_spec = {
14467                 .description = "l2_cntxt_id",
14468                 .field_bit_size = 10,
14469                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
14470                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
14471                 .field_opr1 = {
14472                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
14473                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
14474                 }
14475         },
14476         {
14477         .field_info_mask = {
14478                 .description = "parif",
14479                 .field_bit_size = 4,
14480                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14481                 },
14482         .field_info_spec = {
14483                 .description = "parif",
14484                 .field_bit_size = 4,
14485                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14486                 }
14487         },
14488         {
14489         .field_info_mask = {
14490                 .description = "spif",
14491                 .field_bit_size = 2,
14492                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14493                 },
14494         .field_info_spec = {
14495                 .description = "spif",
14496                 .field_bit_size = 2,
14497                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14498                 }
14499         },
14500         {
14501         .field_info_mask = {
14502                 .description = "svif",
14503                 .field_bit_size = 11,
14504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14505                 },
14506         .field_info_spec = {
14507                 .description = "svif",
14508                 .field_bit_size = 11,
14509                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14510                 }
14511         },
14512         {
14513         .field_info_mask = {
14514                 .description = "lcos",
14515                 .field_bit_size = 3,
14516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14517                 },
14518         .field_info_spec = {
14519                 .description = "lcos",
14520                 .field_bit_size = 3,
14521                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14522                 }
14523         },
14524         {
14525         .field_info_mask = {
14526                 .description = "meta",
14527                 .field_bit_size = 16,
14528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14529                 },
14530         .field_info_spec = {
14531                 .description = "meta",
14532                 .field_bit_size = 16,
14533                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14534                 }
14535         },
14536         {
14537         .field_info_mask = {
14538                 .description = "rcyc_cnt",
14539                 .field_bit_size = 2,
14540                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14541                 },
14542         .field_info_spec = {
14543                 .description = "rcyc_cnt",
14544                 .field_bit_size = 2,
14545                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14546                 }
14547         },
14548         {
14549         .field_info_mask = {
14550                 .description = "loopback",
14551                 .field_bit_size = 1,
14552                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14553                 },
14554         .field_info_spec = {
14555                 .description = "loopback",
14556                 .field_bit_size = 1,
14557                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14558                 }
14559         },
14560         {
14561         .field_info_mask = {
14562                 .description = "tl2_l2type",
14563                 .field_bit_size = 2,
14564                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14565                 },
14566         .field_info_spec = {
14567                 .description = "tl2_l2type",
14568                 .field_bit_size = 2,
14569                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14570                 }
14571         },
14572         {
14573         .field_info_mask = {
14574                 .description = "tl2_dmac",
14575                 .field_bit_size = 48,
14576                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14577                 },
14578         .field_info_spec = {
14579                 .description = "tl2_dmac",
14580                 .field_bit_size = 48,
14581                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14582                 }
14583         },
14584         {
14585         .field_info_mask = {
14586                 .description = "tl2_smac",
14587                 .field_bit_size = 48,
14588                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14589                 },
14590         .field_info_spec = {
14591                 .description = "tl2_smac",
14592                 .field_bit_size = 48,
14593                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14594                 }
14595         },
14596         {
14597         .field_info_mask = {
14598                 .description = "tl2_dt",
14599                 .field_bit_size = 2,
14600                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14601                 },
14602         .field_info_spec = {
14603                 .description = "tl2_dt",
14604                 .field_bit_size = 2,
14605                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14606                 }
14607         },
14608         {
14609         .field_info_mask = {
14610                 .description = "tl2_sa",
14611                 .field_bit_size = 1,
14612                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14613                 },
14614         .field_info_spec = {
14615                 .description = "tl2_sa",
14616                 .field_bit_size = 1,
14617                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14618                 }
14619         },
14620         {
14621         .field_info_mask = {
14622                 .description = "tl2_nvt",
14623                 .field_bit_size = 2,
14624                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14625                 },
14626         .field_info_spec = {
14627                 .description = "tl2_nvt",
14628                 .field_bit_size = 2,
14629                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14630                 }
14631         },
14632         {
14633         .field_info_mask = {
14634                 .description = "tl2_ovp",
14635                 .field_bit_size = 3,
14636                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14637                 },
14638         .field_info_spec = {
14639                 .description = "tl2_ovp",
14640                 .field_bit_size = 3,
14641                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14642                 }
14643         },
14644         {
14645         .field_info_mask = {
14646                 .description = "tl2_ovd",
14647                 .field_bit_size = 1,
14648                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14649                 },
14650         .field_info_spec = {
14651                 .description = "tl2_ovd",
14652                 .field_bit_size = 1,
14653                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14654                 }
14655         },
14656         {
14657         .field_info_mask = {
14658                 .description = "tl2_ovv",
14659                 .field_bit_size = 12,
14660                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14661                 },
14662         .field_info_spec = {
14663                 .description = "tl2_ovv",
14664                 .field_bit_size = 12,
14665                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14666                 }
14667         },
14668         {
14669         .field_info_mask = {
14670                 .description = "tl2_ovt",
14671                 .field_bit_size = 3,
14672                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14673                 },
14674         .field_info_spec = {
14675                 .description = "tl2_ovt",
14676                 .field_bit_size = 3,
14677                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14678                 }
14679         },
14680         {
14681         .field_info_mask = {
14682                 .description = "tl2_ivp",
14683                 .field_bit_size = 3,
14684                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14685                 },
14686         .field_info_spec = {
14687                 .description = "tl2_ivp",
14688                 .field_bit_size = 3,
14689                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14690                 }
14691         },
14692         {
14693         .field_info_mask = {
14694                 .description = "tl2_ivd",
14695                 .field_bit_size = 1,
14696                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14697                 },
14698         .field_info_spec = {
14699                 .description = "tl2_ivd",
14700                 .field_bit_size = 1,
14701                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14702                 }
14703         },
14704         {
14705         .field_info_mask = {
14706                 .description = "tl2_ivv",
14707                 .field_bit_size = 12,
14708                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14709                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14710                 .field_opr1 = {
14711                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
14712                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
14713                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
14714                 .field_opr2 = {
14715                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
14716                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
14717                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14718                 },
14719         .field_info_spec = {
14720                 .description = "tl2_ivv",
14721                 .field_bit_size = 12,
14722                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14723                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14724                 .field_opr1 = {
14725                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
14726                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
14727                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
14728                 .field_opr2 = {
14729                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
14730                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
14731                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14732                 }
14733         },
14734         {
14735         .field_info_mask = {
14736                 .description = "tl2_ivt",
14737                 .field_bit_size = 3,
14738                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14739                 },
14740         .field_info_spec = {
14741                 .description = "tl2_ivt",
14742                 .field_bit_size = 3,
14743                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14744                 }
14745         },
14746         {
14747         .field_info_mask = {
14748                 .description = "tl2_etype",
14749                 .field_bit_size = 16,
14750                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14751                 },
14752         .field_info_spec = {
14753                 .description = "tl2_etype",
14754                 .field_bit_size = 16,
14755                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14756                 }
14757         },
14758         {
14759         .field_info_mask = {
14760                 .description = "tl3.l3type",
14761                 .field_bit_size = 4,
14762                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14763                 },
14764         .field_info_spec = {
14765                 .description = "tl3.l3type",
14766                 .field_bit_size = 4,
14767                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14768                 }
14769         },
14770         {
14771         .field_info_mask = {
14772                 .description = "tl3.sip.ipv4",
14773                 .field_bit_size = 32,
14774                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14775                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14776                 .field_opr1 = {
14777                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
14778                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
14779                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
14780                 .field_opr2 = {
14781                         (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
14782                         BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
14783                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14784                 },
14785         .field_info_spec = {
14786                 .description = "tl3.sip.ipv4",
14787                 .field_bit_size = 32,
14788                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14789                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14790                 .field_opr1 = {
14791                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
14792                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
14793                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
14794                 .field_opr2 = {
14795                         (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
14796                         BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff},
14797                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14798                 }
14799         },
14800         {
14801         .field_info_mask = {
14802                 .description = "tl3.sip.ipv6",
14803                 .field_bit_size = 128,
14804                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14805                 },
14806         .field_info_spec = {
14807                 .description = "tl3.sip.ipv6",
14808                 .field_bit_size = 128,
14809                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14810                 }
14811         },
14812         {
14813         .field_info_mask = {
14814                 .description = "tl3.sip_selcmp.ipv6",
14815                 .field_bit_size = 72,
14816                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14817                 },
14818         .field_info_spec = {
14819                 .description = "tl3.sip_selcmp.ipv6",
14820                 .field_bit_size = 72,
14821                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14822                 }
14823         },
14824         {
14825         .field_info_mask = {
14826                 .description = "tl3.dip.ipv4",
14827                 .field_bit_size = 32,
14828                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14829                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14830                 .field_opr1 = {
14831                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
14832                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
14833                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
14834                 .field_opr2 = {
14835                         (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
14836                         BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
14837                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14838                 },
14839         .field_info_spec = {
14840                 .description = "tl3.dip.ipv4",
14841                 .field_bit_size = 32,
14842                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14843                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
14844                 .field_opr1 = {
14845                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
14846                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
14847                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
14848                 .field_opr2 = {
14849                         (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
14850                         BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff},
14851                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14852                 }
14853         },
14854         {
14855         .field_info_mask = {
14856                 .description = "tl3.dip.ipv6",
14857                 .field_bit_size = 128,
14858                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14859                 },
14860         .field_info_spec = {
14861                 .description = "tl3.dip.ipv6",
14862                 .field_bit_size = 128,
14863                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14864                 }
14865         },
14866         {
14867         .field_info_mask = {
14868                 .description = "tl3.dip_selcmp.ipv6",
14869                 .field_bit_size = 72,
14870                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14871                 },
14872         .field_info_spec = {
14873                 .description = "tl3.dip_selcmp.ipv6",
14874                 .field_bit_size = 72,
14875                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14876                 }
14877         },
14878         {
14879         .field_info_mask = {
14880                 .description = "tl3.ttl",
14881                 .field_bit_size = 8,
14882                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14883                 },
14884         .field_info_spec = {
14885                 .description = "tl3.ttl",
14886                 .field_bit_size = 8,
14887                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14888                 }
14889         },
14890         {
14891         .field_info_mask = {
14892                 .description = "tl3.prot",
14893                 .field_bit_size = 8,
14894                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14895                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14896                 .field_opr1 = {
14897                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
14898                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
14899                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
14900                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14901                 },
14902         .field_info_spec = {
14903                 .description = "tl3.prot",
14904                 .field_bit_size = 8,
14905                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
14906                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
14907                 .field_opr1 = {
14908                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
14909                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
14910                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
14911                 .field_opr2 = {
14912                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
14913                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
14914                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
14915                 }
14916         },
14917         {
14918         .field_info_mask = {
14919                 .description = "tl3.fid.ipv4",
14920                 .field_bit_size = 16,
14921                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14922                 },
14923         .field_info_spec = {
14924                 .description = "tl3.fid.ipv4",
14925                 .field_bit_size = 16,
14926                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14927                 }
14928         },
14929         {
14930         .field_info_mask = {
14931                 .description = "tl3.fid.ipv6",
14932                 .field_bit_size = 20,
14933                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14934                 },
14935         .field_info_spec = {
14936                 .description = "tl3.fid.ipv6",
14937                 .field_bit_size = 20,
14938                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14939                 }
14940         },
14941         {
14942         .field_info_mask = {
14943                 .description = "tl3.qos",
14944                 .field_bit_size = 8,
14945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14946                 },
14947         .field_info_spec = {
14948                 .description = "tl3.qos",
14949                 .field_bit_size = 8,
14950                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14951                 }
14952         },
14953         {
14954         .field_info_mask = {
14955                 .description = "tl3.ieh_nonext",
14956                 .field_bit_size = 1,
14957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14958                 },
14959         .field_info_spec = {
14960                 .description = "tl3.ieh_nonext",
14961                 .field_bit_size = 1,
14962                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14963                 }
14964         },
14965         {
14966         .field_info_mask = {
14967                 .description = "tl3.ieh_esp",
14968                 .field_bit_size = 1,
14969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14970                 },
14971         .field_info_spec = {
14972                 .description = "tl3.ieh_esp",
14973                 .field_bit_size = 1,
14974                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14975                 }
14976         },
14977         {
14978         .field_info_mask = {
14979                 .description = "tl3.ieh_auth",
14980                 .field_bit_size = 1,
14981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14982                 },
14983         .field_info_spec = {
14984                 .description = "tl3.ieh_auth",
14985                 .field_bit_size = 1,
14986                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14987                 }
14988         },
14989         {
14990         .field_info_mask = {
14991                 .description = "tl3.ieh_dest",
14992                 .field_bit_size = 1,
14993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14994                 },
14995         .field_info_spec = {
14996                 .description = "tl3.ieh_dest",
14997                 .field_bit_size = 1,
14998                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
14999                 }
15000         },
15001         {
15002         .field_info_mask = {
15003                 .description = "tl3.ieh_frag",
15004                 .field_bit_size = 1,
15005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15006                 },
15007         .field_info_spec = {
15008                 .description = "tl3.ieh_frag",
15009                 .field_bit_size = 1,
15010                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15011                 }
15012         },
15013         {
15014         .field_info_mask = {
15015                 .description = "tl3.ieh_rthdr",
15016                 .field_bit_size = 1,
15017                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15018                 },
15019         .field_info_spec = {
15020                 .description = "tl3.ieh_rthdr",
15021                 .field_bit_size = 1,
15022                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15023                 }
15024         },
15025         {
15026         .field_info_mask = {
15027                 .description = "tl3.ieh_hop",
15028                 .field_bit_size = 1,
15029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15030                 },
15031         .field_info_spec = {
15032                 .description = "tl3.ieh_hop",
15033                 .field_bit_size = 1,
15034                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15035                 }
15036         },
15037         {
15038         .field_info_mask = {
15039                 .description = "tl3.ieh_1frag",
15040                 .field_bit_size = 1,
15041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15042                 },
15043         .field_info_spec = {
15044                 .description = "tl3.ieh_1frag",
15045                 .field_bit_size = 1,
15046                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15047                 }
15048         },
15049         {
15050         .field_info_mask = {
15051                 .description = "tl3.df",
15052                 .field_bit_size = 1,
15053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15054                 },
15055         .field_info_spec = {
15056                 .description = "tl3.df",
15057                 .field_bit_size = 1,
15058                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15059                 }
15060         },
15061         {
15062         .field_info_mask = {
15063                 .description = "tl3.l3err",
15064                 .field_bit_size = 4,
15065                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15066                 },
15067         .field_info_spec = {
15068                 .description = "tl3.l3err",
15069                 .field_bit_size = 4,
15070                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15071                 }
15072         },
15073         {
15074         .field_info_mask = {
15075                 .description = "tl4.l4type",
15076                 .field_bit_size = 4,
15077                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15078                 },
15079         .field_info_spec = {
15080                 .description = "tl4.l4type",
15081                 .field_bit_size = 4,
15082                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15083                 }
15084         },
15085         {
15086         .field_info_mask = {
15087                 .description = "tl4.src",
15088                 .field_bit_size = 16,
15089                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
15090                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15091                 .field_opr1 = {
15092                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
15093                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
15094                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
15095                 .field_opr2 = {
15096                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff,
15097                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff},
15098                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
15099                 },
15100         .field_info_spec = {
15101                 .description = "tl4.src",
15102                 .field_bit_size = 16,
15103                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
15104                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15105                 .field_opr1 = {
15106                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
15107                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
15108                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
15109                 .field_opr2 = {
15110                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
15111                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
15112                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
15113                 }
15114         },
15115         {
15116         .field_info_mask = {
15117                 .description = "tl4.dst",
15118                 .field_bit_size = 16,
15119                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
15120                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15121                 .field_opr1 = {
15122                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
15123                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
15124                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
15125                 .field_opr2 = {
15126                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff,
15127                         BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff},
15128                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
15129                 },
15130         .field_info_spec = {
15131                 .description = "tl4.dst",
15132                 .field_bit_size = 16,
15133                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
15134                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
15135                 .field_opr1 = {
15136                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
15137                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
15138                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
15139                 .field_opr2 = {
15140                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
15141                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
15142                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
15143                 }
15144         },
15145         {
15146         .field_info_mask = {
15147                 .description = "tl4.flags",
15148                 .field_bit_size = 9,
15149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15150                 },
15151         .field_info_spec = {
15152                 .description = "tl4.flags",
15153                 .field_bit_size = 9,
15154                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15155                 }
15156         },
15157         {
15158         .field_info_mask = {
15159                 .description = "tl4.seq",
15160                 .field_bit_size = 32,
15161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15162                 },
15163         .field_info_spec = {
15164                 .description = "tl4.seq",
15165                 .field_bit_size = 32,
15166                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15167                 }
15168         },
15169         {
15170         .field_info_mask = {
15171                 .description = "tl4.pa",
15172                 .field_bit_size = 1,
15173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15174                 },
15175         .field_info_spec = {
15176                 .description = "tl4.pa",
15177                 .field_bit_size = 1,
15178                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15179                 }
15180         },
15181         {
15182         .field_info_mask = {
15183                 .description = "tl4.opt",
15184                 .field_bit_size = 1,
15185                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15186                 },
15187         .field_info_spec = {
15188                 .description = "tl4.opt",
15189                 .field_bit_size = 1,
15190                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15191                 }
15192         },
15193         {
15194         .field_info_mask = {
15195                 .description = "tl4.tcpts",
15196                 .field_bit_size = 1,
15197                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15198                 },
15199         .field_info_spec = {
15200                 .description = "tl4.tcpts",
15201                 .field_bit_size = 1,
15202                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15203                 }
15204         },
15205         {
15206         .field_info_mask = {
15207                 .description = "tl4.err",
15208                 .field_bit_size = 4,
15209                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15210                 },
15211         .field_info_spec = {
15212                 .description = "tl4.err",
15213                 .field_bit_size = 4,
15214                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15215                 }
15216         },
15217         {
15218         .field_info_mask = {
15219                 .description = "tuntype",
15220                 .field_bit_size = 4,
15221                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15222                 },
15223         .field_info_spec = {
15224                 .description = "tuntype",
15225                 .field_bit_size = 4,
15226                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15227                 }
15228         },
15229         {
15230         .field_info_mask = {
15231                 .description = "tflags",
15232                 .field_bit_size = 3,
15233                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15234                 },
15235         .field_info_spec = {
15236                 .description = "tflags",
15237                 .field_bit_size = 3,
15238                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15239                 }
15240         },
15241         {
15242         .field_info_mask = {
15243                 .description = "tids",
15244                 .field_bit_size = 24,
15245                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15246                 },
15247         .field_info_spec = {
15248                 .description = "tids",
15249                 .field_bit_size = 24,
15250                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15251                 }
15252         },
15253         {
15254         .field_info_mask = {
15255                 .description = "tid",
15256                 .field_bit_size = 32,
15257                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15258                 },
15259         .field_info_spec = {
15260                 .description = "tid",
15261                 .field_bit_size = 32,
15262                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15263                 }
15264         },
15265         {
15266         .field_info_mask = {
15267                 .description = "tctxts",
15268                 .field_bit_size = 24,
15269                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15270                 },
15271         .field_info_spec = {
15272                 .description = "tctxts",
15273                 .field_bit_size = 24,
15274                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15275                 }
15276         },
15277         {
15278         .field_info_mask = {
15279                 .description = "tctxt",
15280                 .field_bit_size = 32,
15281                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15282                 },
15283         .field_info_spec = {
15284                 .description = "tctxt",
15285                 .field_bit_size = 32,
15286                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15287                 }
15288         },
15289         {
15290         .field_info_mask = {
15291                 .description = "tqos",
15292                 .field_bit_size = 3,
15293                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15294                 },
15295         .field_info_spec = {
15296                 .description = "tqos",
15297                 .field_bit_size = 3,
15298                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15299                 }
15300         },
15301         {
15302         .field_info_mask = {
15303                 .description = "terr",
15304                 .field_bit_size = 4,
15305                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15306                 },
15307         .field_info_spec = {
15308                 .description = "terr",
15309                 .field_bit_size = 4,
15310                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15311                 }
15312         },
15313         {
15314         .field_info_mask = {
15315                 .description = "l2_l2type",
15316                 .field_bit_size = 2,
15317                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15318                 },
15319         .field_info_spec = {
15320                 .description = "l2_l2type",
15321                 .field_bit_size = 2,
15322                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15323                 }
15324         },
15325         {
15326         .field_info_mask = {
15327                 .description = "l2_dmac",
15328                 .field_bit_size = 48,
15329                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15330                 },
15331         .field_info_spec = {
15332                 .description = "l2_dmac",
15333                 .field_bit_size = 48,
15334                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15335                 }
15336         },
15337         {
15338         .field_info_mask = {
15339                 .description = "l2_smac",
15340                 .field_bit_size = 48,
15341                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
15342                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
15343                 .field_opr1 = {
15344                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
15345                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
15346                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
15347                 .field_opr2 = {
15348                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
15349                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
15350                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
15351                 },
15352         .field_info_spec = {
15353                 .description = "l2_smac",
15354                 .field_bit_size = 48,
15355                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
15356                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
15357                 .field_opr1 = {
15358                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
15359                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
15360                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
15361                 .field_opr2 = {
15362                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
15363                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
15364                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
15365                 }
15366         },
15367         {
15368         .field_info_mask = {
15369                 .description = "l2_dt",
15370                 .field_bit_size = 2,
15371                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15372                 },
15373         .field_info_spec = {
15374                 .description = "l2_dt",
15375                 .field_bit_size = 2,
15376                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15377                 }
15378         },
15379         {
15380         .field_info_mask = {
15381                 .description = "l2_sa",
15382                 .field_bit_size = 1,
15383                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15384                 },
15385         .field_info_spec = {
15386                 .description = "l2_sa",
15387                 .field_bit_size = 1,
15388                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15389                 }
15390         },
15391         {
15392         .field_info_mask = {
15393                 .description = "l2_nvt",
15394                 .field_bit_size = 2,
15395                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15396                 },
15397         .field_info_spec = {
15398                 .description = "l2_nvt",
15399                 .field_bit_size = 2,
15400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15401                 }
15402         },
15403         {
15404         .field_info_mask = {
15405                 .description = "l2_ovp",
15406                 .field_bit_size = 3,
15407                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15408                 },
15409         .field_info_spec = {
15410                 .description = "l2_ovp",
15411                 .field_bit_size = 3,
15412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15413                 }
15414         },
15415         {
15416         .field_info_mask = {
15417                 .description = "l2_ovd",
15418                 .field_bit_size = 1,
15419                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15420                 },
15421         .field_info_spec = {
15422                 .description = "l2_ovd",
15423                 .field_bit_size = 1,
15424                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15425                 }
15426         },
15427         {
15428         .field_info_mask = {
15429                 .description = "l2_ovv",
15430                 .field_bit_size = 12,
15431                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15432                 },
15433         .field_info_spec = {
15434                 .description = "l2_ovv",
15435                 .field_bit_size = 12,
15436                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15437                 }
15438         },
15439         {
15440         .field_info_mask = {
15441                 .description = "l2_ovt",
15442                 .field_bit_size = 3,
15443                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15444                 },
15445         .field_info_spec = {
15446                 .description = "l2_ovt",
15447                 .field_bit_size = 3,
15448                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15449                 }
15450         },
15451         {
15452         .field_info_mask = {
15453                 .description = "l2_ivp",
15454                 .field_bit_size = 3,
15455                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15456                 },
15457         .field_info_spec = {
15458                 .description = "l2_ivp",
15459                 .field_bit_size = 3,
15460                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15461                 }
15462         },
15463         {
15464         .field_info_mask = {
15465                 .description = "l2_ivd",
15466                 .field_bit_size = 1,
15467                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15468                 },
15469         .field_info_spec = {
15470                 .description = "l2_ivd",
15471                 .field_bit_size = 1,
15472                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15473                 }
15474         },
15475         {
15476         .field_info_mask = {
15477                 .description = "l2_ivv",
15478                 .field_bit_size = 12,
15479                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15480                 },
15481         .field_info_spec = {
15482                 .description = "l2_ivv",
15483                 .field_bit_size = 12,
15484                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15485                 }
15486         },
15487         {
15488         .field_info_mask = {
15489                 .description = "l2_ivt",
15490                 .field_bit_size = 3,
15491                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15492                 },
15493         .field_info_spec = {
15494                 .description = "l2_ivt",
15495                 .field_bit_size = 3,
15496                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15497                 }
15498         },
15499         {
15500         .field_info_mask = {
15501                 .description = "l2_etype",
15502                 .field_bit_size = 16,
15503                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15504                 },
15505         .field_info_spec = {
15506                 .description = "l2_etype",
15507                 .field_bit_size = 16,
15508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15509                 }
15510         },
15511         {
15512         .field_info_mask = {
15513                 .description = "l3.l3type",
15514                 .field_bit_size = 4,
15515                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15516                 },
15517         .field_info_spec = {
15518                 .description = "l3.l3type",
15519                 .field_bit_size = 4,
15520                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15521                 }
15522         },
15523         {
15524         .field_info_mask = {
15525                 .description = "l3.sip.ipv4",
15526                 .field_bit_size = 32,
15527                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15528                 },
15529         .field_info_spec = {
15530                 .description = "l3.sip.ipv4",
15531                 .field_bit_size = 32,
15532                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15533                 }
15534         },
15535         {
15536         .field_info_mask = {
15537                 .description = "l3.sip.ipv6",
15538                 .field_bit_size = 128,
15539                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15540                 },
15541         .field_info_spec = {
15542                 .description = "l3.sip.ipv6",
15543                 .field_bit_size = 128,
15544                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15545                 }
15546         },
15547         {
15548         .field_info_mask = {
15549                 .description = "l3.sip_selcmp.ipv6",
15550                 .field_bit_size = 72,
15551                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15552                 },
15553         .field_info_spec = {
15554                 .description = "l3.sip_selcmp.ipv6",
15555                 .field_bit_size = 72,
15556                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15557                 }
15558         },
15559         {
15560         .field_info_mask = {
15561                 .description = "l3.dip.ipv4",
15562                 .field_bit_size = 32,
15563                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15564                 },
15565         .field_info_spec = {
15566                 .description = "l3.dip.ipv4",
15567                 .field_bit_size = 32,
15568                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15569                 }
15570         },
15571         {
15572         .field_info_mask = {
15573                 .description = "l3.dip.ipv6",
15574                 .field_bit_size = 128,
15575                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15576                 },
15577         .field_info_spec = {
15578                 .description = "l3.dip.ipv6",
15579                 .field_bit_size = 128,
15580                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15581                 }
15582         },
15583         {
15584         .field_info_mask = {
15585                 .description = "l3.dip_selcmp.ipv6",
15586                 .field_bit_size = 72,
15587                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15588                 },
15589         .field_info_spec = {
15590                 .description = "l3.dip_selcmp.ipv6",
15591                 .field_bit_size = 72,
15592                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15593                 }
15594         },
15595         {
15596         .field_info_mask = {
15597                 .description = "l3.ttl",
15598                 .field_bit_size = 8,
15599                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15600                 },
15601         .field_info_spec = {
15602                 .description = "l3.ttl",
15603                 .field_bit_size = 8,
15604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15605                 }
15606         },
15607         {
15608         .field_info_mask = {
15609                 .description = "l3.prot",
15610                 .field_bit_size = 8,
15611                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15612                 },
15613         .field_info_spec = {
15614                 .description = "l3.prot",
15615                 .field_bit_size = 8,
15616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15617                 }
15618         },
15619         {
15620         .field_info_mask = {
15621                 .description = "l3.fid.ipv4",
15622                 .field_bit_size = 16,
15623                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15624                 },
15625         .field_info_spec = {
15626                 .description = "l3.fid.ipv4",
15627                 .field_bit_size = 16,
15628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15629                 }
15630         },
15631         {
15632         .field_info_mask = {
15633                 .description = "l3.fid.ipv6",
15634                 .field_bit_size = 20,
15635                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15636                 },
15637         .field_info_spec = {
15638                 .description = "l3.fid.ipv6",
15639                 .field_bit_size = 20,
15640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15641                 }
15642         },
15643         {
15644         .field_info_mask = {
15645                 .description = "l3.qos",
15646                 .field_bit_size = 8,
15647                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15648                 },
15649         .field_info_spec = {
15650                 .description = "l3.qos",
15651                 .field_bit_size = 8,
15652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15653                 }
15654         },
15655         {
15656         .field_info_mask = {
15657                 .description = "l3.ieh_nonext",
15658                 .field_bit_size = 1,
15659                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15660                 },
15661         .field_info_spec = {
15662                 .description = "l3.ieh_nonext",
15663                 .field_bit_size = 1,
15664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15665                 }
15666         },
15667         {
15668         .field_info_mask = {
15669                 .description = "l3.ieh_esp",
15670                 .field_bit_size = 1,
15671                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15672                 },
15673         .field_info_spec = {
15674                 .description = "l3.ieh_esp",
15675                 .field_bit_size = 1,
15676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15677                 }
15678         },
15679         {
15680         .field_info_mask = {
15681                 .description = "l3.ieh_auth",
15682                 .field_bit_size = 1,
15683                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15684                 },
15685         .field_info_spec = {
15686                 .description = "l3.ieh_auth",
15687                 .field_bit_size = 1,
15688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15689                 }
15690         },
15691         {
15692         .field_info_mask = {
15693                 .description = "l3.ieh_dest",
15694                 .field_bit_size = 1,
15695                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15696                 },
15697         .field_info_spec = {
15698                 .description = "l3.ieh_dest",
15699                 .field_bit_size = 1,
15700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15701                 }
15702         },
15703         {
15704         .field_info_mask = {
15705                 .description = "l3.ieh_frag",
15706                 .field_bit_size = 1,
15707                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15708                 },
15709         .field_info_spec = {
15710                 .description = "l3.ieh_frag",
15711                 .field_bit_size = 1,
15712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15713                 }
15714         },
15715         {
15716         .field_info_mask = {
15717                 .description = "l3.ieh_rthdr",
15718                 .field_bit_size = 1,
15719                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15720                 },
15721         .field_info_spec = {
15722                 .description = "l3.ieh_rthdr",
15723                 .field_bit_size = 1,
15724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15725                 }
15726         },
15727         {
15728         .field_info_mask = {
15729                 .description = "l3.ieh_hop",
15730                 .field_bit_size = 1,
15731                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15732                 },
15733         .field_info_spec = {
15734                 .description = "l3.ieh_hop",
15735                 .field_bit_size = 1,
15736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15737                 }
15738         },
15739         {
15740         .field_info_mask = {
15741                 .description = "l3.ieh_1frag",
15742                 .field_bit_size = 1,
15743                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15744                 },
15745         .field_info_spec = {
15746                 .description = "l3.ieh_1frag",
15747                 .field_bit_size = 1,
15748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15749                 }
15750         },
15751         {
15752         .field_info_mask = {
15753                 .description = "l3.df",
15754                 .field_bit_size = 1,
15755                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15756                 },
15757         .field_info_spec = {
15758                 .description = "l3.df",
15759                 .field_bit_size = 1,
15760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15761                 }
15762         },
15763         {
15764         .field_info_mask = {
15765                 .description = "l3.l3err.ipv4",
15766                 .field_bit_size = 4,
15767                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15768                 },
15769         .field_info_spec = {
15770                 .description = "l3.l3err.ipv4",
15771                 .field_bit_size = 4,
15772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15773                 }
15774         },
15775         {
15776         .field_info_mask = {
15777                 .description = "l3.l3err.ipv6",
15778                 .field_bit_size = 4,
15779                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15780                 },
15781         .field_info_spec = {
15782                 .description = "l3.l3err.ipv6",
15783                 .field_bit_size = 4,
15784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15785                 }
15786         },
15787         {
15788         .field_info_mask = {
15789                 .description = "l4.l4type",
15790                 .field_bit_size = 4,
15791                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15792                 },
15793         .field_info_spec = {
15794                 .description = "l4.l4type",
15795                 .field_bit_size = 4,
15796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15797                 }
15798         },
15799         {
15800         .field_info_mask = {
15801                 .description = "l4.src",
15802                 .field_bit_size = 16,
15803                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15804                 },
15805         .field_info_spec = {
15806                 .description = "l4.src",
15807                 .field_bit_size = 16,
15808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15809                 }
15810         },
15811         {
15812         .field_info_mask = {
15813                 .description = "l4.dst",
15814                 .field_bit_size = 16,
15815                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15816                 },
15817         .field_info_spec = {
15818                 .description = "l4.dst",
15819                 .field_bit_size = 16,
15820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15821                 }
15822         },
15823         {
15824         .field_info_mask = {
15825                 .description = "l4.flags",
15826                 .field_bit_size = 9,
15827                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15828                 },
15829         .field_info_spec = {
15830                 .description = "l4.flags",
15831                 .field_bit_size = 9,
15832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15833                 }
15834         },
15835         {
15836         .field_info_mask = {
15837                 .description = "l4.seq",
15838                 .field_bit_size = 32,
15839                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15840                 },
15841         .field_info_spec = {
15842                 .description = "l4.seq",
15843                 .field_bit_size = 32,
15844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15845                 }
15846         },
15847         {
15848         .field_info_mask = {
15849                 .description = "l4.ack",
15850                 .field_bit_size = 32,
15851                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15852                 },
15853         .field_info_spec = {
15854                 .description = "l4.ack",
15855                 .field_bit_size = 32,
15856                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15857                 }
15858         },
15859         {
15860         .field_info_mask = {
15861                 .description = "l4.win",
15862                 .field_bit_size = 16,
15863                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15864                 },
15865         .field_info_spec = {
15866                 .description = "l4.win",
15867                 .field_bit_size = 16,
15868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15869                 }
15870         },
15871         {
15872         .field_info_mask = {
15873                 .description = "l4.pa",
15874                 .field_bit_size = 1,
15875                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15876                 },
15877         .field_info_spec = {
15878                 .description = "l4.pa",
15879                 .field_bit_size = 1,
15880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15881                 }
15882         },
15883         {
15884         .field_info_mask = {
15885                 .description = "l4.opt",
15886                 .field_bit_size = 1,
15887                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15888                 },
15889         .field_info_spec = {
15890                 .description = "l4.opt",
15891                 .field_bit_size = 1,
15892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15893                 }
15894         },
15895         {
15896         .field_info_mask = {
15897                 .description = "l4.tcpts",
15898                 .field_bit_size = 1,
15899                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15900                 },
15901         .field_info_spec = {
15902                 .description = "l4.tcpts",
15903                 .field_bit_size = 1,
15904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15905                 }
15906         },
15907         {
15908         .field_info_mask = {
15909                 .description = "l4.tsval",
15910                 .field_bit_size = 32,
15911                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15912                 },
15913         .field_info_spec = {
15914                 .description = "l4.tsval",
15915                 .field_bit_size = 32,
15916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15917                 }
15918         },
15919         {
15920         .field_info_mask = {
15921                 .description = "l4.txecr",
15922                 .field_bit_size = 32,
15923                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15924                 },
15925         .field_info_spec = {
15926                 .description = "l4.txecr",
15927                 .field_bit_size = 32,
15928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15929                 }
15930         },
15931         {
15932         .field_info_mask = {
15933                 .description = "l4.err",
15934                 .field_bit_size = 4,
15935                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15936                 },
15937         .field_info_spec = {
15938                 .description = "l4.err",
15939                 .field_bit_size = 4,
15940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15941                 }
15942         },
15943         /* class_tid: 1, , table: wm.l3_l4.vxlan.ipv6 */
15944         {
15945         .field_info_mask = {
15946                 .description = "wc_profile_id",
15947                 .field_bit_size = 8,
15948                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15949                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
15950                 .field_opr1 = {
15951                         0xff}
15952                 },
15953         .field_info_spec = {
15954                 .description = "wc_profile_id",
15955                 .field_bit_size = 8,
15956                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15957                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
15958                 .field_opr1 = {
15959                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 >> 8) & 0xff,
15960                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 & 0xff}
15961                 }
15962         },
15963         {
15964         .field_info_mask = {
15965                 .description = "l2_cntxt_id",
15966                 .field_bit_size = 10,
15967                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15968                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
15969                 .field_opr1 = {
15970                         0xff,
15971                         0xff}
15972                 },
15973         .field_info_spec = {
15974                 .description = "l2_cntxt_id",
15975                 .field_bit_size = 10,
15976                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
15977                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
15978                 .field_opr1 = {
15979                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
15980                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
15981                 }
15982         },
15983         {
15984         .field_info_mask = {
15985                 .description = "parif",
15986                 .field_bit_size = 4,
15987                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15988                 },
15989         .field_info_spec = {
15990                 .description = "parif",
15991                 .field_bit_size = 4,
15992                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
15993                 }
15994         },
15995         {
15996         .field_info_mask = {
15997                 .description = "spif",
15998                 .field_bit_size = 2,
15999                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16000                 },
16001         .field_info_spec = {
16002                 .description = "spif",
16003                 .field_bit_size = 2,
16004                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16005                 }
16006         },
16007         {
16008         .field_info_mask = {
16009                 .description = "svif",
16010                 .field_bit_size = 11,
16011                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16012                 },
16013         .field_info_spec = {
16014                 .description = "svif",
16015                 .field_bit_size = 11,
16016                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16017                 }
16018         },
16019         {
16020         .field_info_mask = {
16021                 .description = "lcos",
16022                 .field_bit_size = 3,
16023                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16024                 },
16025         .field_info_spec = {
16026                 .description = "lcos",
16027                 .field_bit_size = 3,
16028                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16029                 }
16030         },
16031         {
16032         .field_info_mask = {
16033                 .description = "meta",
16034                 .field_bit_size = 16,
16035                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16036                 },
16037         .field_info_spec = {
16038                 .description = "meta",
16039                 .field_bit_size = 16,
16040                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16041                 }
16042         },
16043         {
16044         .field_info_mask = {
16045                 .description = "rcyc_cnt",
16046                 .field_bit_size = 2,
16047                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16048                 },
16049         .field_info_spec = {
16050                 .description = "rcyc_cnt",
16051                 .field_bit_size = 2,
16052                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16053                 }
16054         },
16055         {
16056         .field_info_mask = {
16057                 .description = "loopback",
16058                 .field_bit_size = 1,
16059                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16060                 },
16061         .field_info_spec = {
16062                 .description = "loopback",
16063                 .field_bit_size = 1,
16064                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16065                 }
16066         },
16067         {
16068         .field_info_mask = {
16069                 .description = "tl2_l2type",
16070                 .field_bit_size = 2,
16071                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16072                 },
16073         .field_info_spec = {
16074                 .description = "tl2_l2type",
16075                 .field_bit_size = 2,
16076                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16077                 }
16078         },
16079         {
16080         .field_info_mask = {
16081                 .description = "tl2_dmac",
16082                 .field_bit_size = 48,
16083                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16084                 },
16085         .field_info_spec = {
16086                 .description = "tl2_dmac",
16087                 .field_bit_size = 48,
16088                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16089                 }
16090         },
16091         {
16092         .field_info_mask = {
16093                 .description = "tl2_smac",
16094                 .field_bit_size = 48,
16095                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16096                 },
16097         .field_info_spec = {
16098                 .description = "tl2_smac",
16099                 .field_bit_size = 48,
16100                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16101                 }
16102         },
16103         {
16104         .field_info_mask = {
16105                 .description = "tl2_dt",
16106                 .field_bit_size = 2,
16107                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16108                 },
16109         .field_info_spec = {
16110                 .description = "tl2_dt",
16111                 .field_bit_size = 2,
16112                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16113                 }
16114         },
16115         {
16116         .field_info_mask = {
16117                 .description = "tl2_sa",
16118                 .field_bit_size = 1,
16119                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16120                 },
16121         .field_info_spec = {
16122                 .description = "tl2_sa",
16123                 .field_bit_size = 1,
16124                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16125                 }
16126         },
16127         {
16128         .field_info_mask = {
16129                 .description = "tl2_nvt",
16130                 .field_bit_size = 2,
16131                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16132                 },
16133         .field_info_spec = {
16134                 .description = "tl2_nvt",
16135                 .field_bit_size = 2,
16136                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16137                 }
16138         },
16139         {
16140         .field_info_mask = {
16141                 .description = "tl2_ovp",
16142                 .field_bit_size = 3,
16143                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16144                 },
16145         .field_info_spec = {
16146                 .description = "tl2_ovp",
16147                 .field_bit_size = 3,
16148                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16149                 }
16150         },
16151         {
16152         .field_info_mask = {
16153                 .description = "tl2_ovd",
16154                 .field_bit_size = 1,
16155                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16156                 },
16157         .field_info_spec = {
16158                 .description = "tl2_ovd",
16159                 .field_bit_size = 1,
16160                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16161                 }
16162         },
16163         {
16164         .field_info_mask = {
16165                 .description = "tl2_ovv",
16166                 .field_bit_size = 12,
16167                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16168                 },
16169         .field_info_spec = {
16170                 .description = "tl2_ovv",
16171                 .field_bit_size = 12,
16172                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16173                 }
16174         },
16175         {
16176         .field_info_mask = {
16177                 .description = "tl2_ovt",
16178                 .field_bit_size = 3,
16179                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16180                 },
16181         .field_info_spec = {
16182                 .description = "tl2_ovt",
16183                 .field_bit_size = 3,
16184                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16185                 }
16186         },
16187         {
16188         .field_info_mask = {
16189                 .description = "tl2_ivp",
16190                 .field_bit_size = 3,
16191                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16192                 },
16193         .field_info_spec = {
16194                 .description = "tl2_ivp",
16195                 .field_bit_size = 3,
16196                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16197                 }
16198         },
16199         {
16200         .field_info_mask = {
16201                 .description = "tl2_ivd",
16202                 .field_bit_size = 1,
16203                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16204                 },
16205         .field_info_spec = {
16206                 .description = "tl2_ivd",
16207                 .field_bit_size = 1,
16208                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16209                 }
16210         },
16211         {
16212         .field_info_mask = {
16213                 .description = "tl2_ivv",
16214                 .field_bit_size = 12,
16215                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16216                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16217                 .field_opr1 = {
16218                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
16219                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
16220                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16221                 .field_opr2 = {
16222                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
16223                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
16224                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16225                 },
16226         .field_info_spec = {
16227                 .description = "tl2_ivv",
16228                 .field_bit_size = 12,
16229                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16230                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16231                 .field_opr1 = {
16232                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
16233                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
16234                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16235                 .field_opr2 = {
16236                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
16237                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
16238                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16239                 }
16240         },
16241         {
16242         .field_info_mask = {
16243                 .description = "tl2_ivt",
16244                 .field_bit_size = 3,
16245                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16246                 },
16247         .field_info_spec = {
16248                 .description = "tl2_ivt",
16249                 .field_bit_size = 3,
16250                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16251                 }
16252         },
16253         {
16254         .field_info_mask = {
16255                 .description = "tl2_etype",
16256                 .field_bit_size = 16,
16257                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16258                 },
16259         .field_info_spec = {
16260                 .description = "tl2_etype",
16261                 .field_bit_size = 16,
16262                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16263                 }
16264         },
16265         {
16266         .field_info_mask = {
16267                 .description = "tl3.l3type",
16268                 .field_bit_size = 4,
16269                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16270                 },
16271         .field_info_spec = {
16272                 .description = "tl3.l3type",
16273                 .field_bit_size = 4,
16274                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16275                 }
16276         },
16277         {
16278         .field_info_mask = {
16279                 .description = "tl3.sip.ipv4",
16280                 .field_bit_size = 32,
16281                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16282                 },
16283         .field_info_spec = {
16284                 .description = "tl3.sip.ipv4",
16285                 .field_bit_size = 32,
16286                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16287                 }
16288         },
16289         {
16290         .field_info_mask = {
16291                 .description = "tl3.sip.ipv6",
16292                 .field_bit_size = 128,
16293                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16294                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
16295                 .field_opr1 = {
16296                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
16297                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
16298                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16299                 .field_opr2 = {
16300                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
16301                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
16302                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16303                 },
16304         .field_info_spec = {
16305                 .description = "tl3.sip.ipv6",
16306                 .field_bit_size = 128,
16307                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16308                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
16309                 .field_opr1 = {
16310                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
16311                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
16312                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16313                 .field_opr2 = {
16314                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
16315                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
16316                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16317                 }
16318         },
16319         {
16320         .field_info_mask = {
16321                 .description = "tl3.sip_selcmp.ipv6",
16322                 .field_bit_size = 72,
16323                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16324                 },
16325         .field_info_spec = {
16326                 .description = "tl3.sip_selcmp.ipv6",
16327                 .field_bit_size = 72,
16328                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16329                 }
16330         },
16331         {
16332         .field_info_mask = {
16333                 .description = "tl3.dip.ipv4",
16334                 .field_bit_size = 32,
16335                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16336                 },
16337         .field_info_spec = {
16338                 .description = "tl3.dip.ipv4",
16339                 .field_bit_size = 32,
16340                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16341                 }
16342         },
16343         {
16344         .field_info_mask = {
16345                 .description = "tl3.dip.ipv6",
16346                 .field_bit_size = 128,
16347                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16348                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
16349                 .field_opr1 = {
16350                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
16351                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
16352                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16353                 .field_opr2 = {
16354                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
16355                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
16356                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16357                 },
16358         .field_info_spec = {
16359                 .description = "tl3.dip.ipv6",
16360                 .field_bit_size = 128,
16361                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16362                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
16363                 .field_opr1 = {
16364                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
16365                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
16366                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16367                 .field_opr2 = {
16368                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
16369                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
16370                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16371                 }
16372         },
16373         {
16374         .field_info_mask = {
16375                 .description = "tl3.dip_selcmp.ipv6",
16376                 .field_bit_size = 72,
16377                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16378                 },
16379         .field_info_spec = {
16380                 .description = "tl3.dip_selcmp.ipv6",
16381                 .field_bit_size = 72,
16382                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16383                 }
16384         },
16385         {
16386         .field_info_mask = {
16387                 .description = "tl3.ttl",
16388                 .field_bit_size = 8,
16389                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16390                 },
16391         .field_info_spec = {
16392                 .description = "tl3.ttl",
16393                 .field_bit_size = 8,
16394                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16395                 }
16396         },
16397         {
16398         .field_info_mask = {
16399                 .description = "tl3.prot",
16400                 .field_bit_size = 8,
16401                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16402                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16403                 .field_opr1 = {
16404                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
16405                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
16406                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
16407                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16408                 },
16409         .field_info_spec = {
16410                 .description = "tl3.prot",
16411                 .field_bit_size = 8,
16412                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16413                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16414                 .field_opr1 = {
16415                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
16416                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
16417                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
16418                 .field_opr2 = {
16419                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
16420                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
16421                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16422                 }
16423         },
16424         {
16425         .field_info_mask = {
16426                 .description = "tl3.fid.ipv4",
16427                 .field_bit_size = 16,
16428                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16429                 },
16430         .field_info_spec = {
16431                 .description = "tl3.fid.ipv4",
16432                 .field_bit_size = 16,
16433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16434                 }
16435         },
16436         {
16437         .field_info_mask = {
16438                 .description = "tl3.fid.ipv6",
16439                 .field_bit_size = 20,
16440                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16441                 },
16442         .field_info_spec = {
16443                 .description = "tl3.fid.ipv6",
16444                 .field_bit_size = 20,
16445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16446                 }
16447         },
16448         {
16449         .field_info_mask = {
16450                 .description = "tl3.qos",
16451                 .field_bit_size = 8,
16452                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16453                 },
16454         .field_info_spec = {
16455                 .description = "tl3.qos",
16456                 .field_bit_size = 8,
16457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16458                 }
16459         },
16460         {
16461         .field_info_mask = {
16462                 .description = "tl3.ieh_nonext",
16463                 .field_bit_size = 1,
16464                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16465                 },
16466         .field_info_spec = {
16467                 .description = "tl3.ieh_nonext",
16468                 .field_bit_size = 1,
16469                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16470                 }
16471         },
16472         {
16473         .field_info_mask = {
16474                 .description = "tl3.ieh_esp",
16475                 .field_bit_size = 1,
16476                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16477                 },
16478         .field_info_spec = {
16479                 .description = "tl3.ieh_esp",
16480                 .field_bit_size = 1,
16481                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16482                 }
16483         },
16484         {
16485         .field_info_mask = {
16486                 .description = "tl3.ieh_auth",
16487                 .field_bit_size = 1,
16488                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16489                 },
16490         .field_info_spec = {
16491                 .description = "tl3.ieh_auth",
16492                 .field_bit_size = 1,
16493                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16494                 }
16495         },
16496         {
16497         .field_info_mask = {
16498                 .description = "tl3.ieh_dest",
16499                 .field_bit_size = 1,
16500                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16501                 },
16502         .field_info_spec = {
16503                 .description = "tl3.ieh_dest",
16504                 .field_bit_size = 1,
16505                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16506                 }
16507         },
16508         {
16509         .field_info_mask = {
16510                 .description = "tl3.ieh_frag",
16511                 .field_bit_size = 1,
16512                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16513                 },
16514         .field_info_spec = {
16515                 .description = "tl3.ieh_frag",
16516                 .field_bit_size = 1,
16517                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16518                 }
16519         },
16520         {
16521         .field_info_mask = {
16522                 .description = "tl3.ieh_rthdr",
16523                 .field_bit_size = 1,
16524                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16525                 },
16526         .field_info_spec = {
16527                 .description = "tl3.ieh_rthdr",
16528                 .field_bit_size = 1,
16529                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16530                 }
16531         },
16532         {
16533         .field_info_mask = {
16534                 .description = "tl3.ieh_hop",
16535                 .field_bit_size = 1,
16536                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16537                 },
16538         .field_info_spec = {
16539                 .description = "tl3.ieh_hop",
16540                 .field_bit_size = 1,
16541                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16542                 }
16543         },
16544         {
16545         .field_info_mask = {
16546                 .description = "tl3.ieh_1frag",
16547                 .field_bit_size = 1,
16548                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16549                 },
16550         .field_info_spec = {
16551                 .description = "tl3.ieh_1frag",
16552                 .field_bit_size = 1,
16553                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16554                 }
16555         },
16556         {
16557         .field_info_mask = {
16558                 .description = "tl3.df",
16559                 .field_bit_size = 1,
16560                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16561                 },
16562         .field_info_spec = {
16563                 .description = "tl3.df",
16564                 .field_bit_size = 1,
16565                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16566                 }
16567         },
16568         {
16569         .field_info_mask = {
16570                 .description = "tl3.l3err",
16571                 .field_bit_size = 4,
16572                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16573                 },
16574         .field_info_spec = {
16575                 .description = "tl3.l3err",
16576                 .field_bit_size = 4,
16577                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16578                 }
16579         },
16580         {
16581         .field_info_mask = {
16582                 .description = "tl4.l4type",
16583                 .field_bit_size = 4,
16584                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16585                 },
16586         .field_info_spec = {
16587                 .description = "tl4.l4type",
16588                 .field_bit_size = 4,
16589                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16590                 }
16591         },
16592         {
16593         .field_info_mask = {
16594                 .description = "tl4.src",
16595                 .field_bit_size = 16,
16596                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16597                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16598                 .field_opr1 = {
16599                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
16600                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
16601                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
16602                 .field_opr2 = {
16603                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff,
16604                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff},
16605                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16606                 },
16607         .field_info_spec = {
16608                 .description = "tl4.src",
16609                 .field_bit_size = 16,
16610                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16611                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16612                 .field_opr1 = {
16613                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
16614                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
16615                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
16616                 .field_opr2 = {
16617                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
16618                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
16619                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16620                 }
16621         },
16622         {
16623         .field_info_mask = {
16624                 .description = "tl4.dst",
16625                 .field_bit_size = 16,
16626                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16627                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16628                 .field_opr1 = {
16629                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
16630                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
16631                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
16632                 .field_opr2 = {
16633                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff,
16634                         BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff},
16635                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16636                 },
16637         .field_info_spec = {
16638                 .description = "tl4.dst",
16639                 .field_bit_size = 16,
16640                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16641                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
16642                 .field_opr1 = {
16643                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
16644                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
16645                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
16646                 .field_opr2 = {
16647                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
16648                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
16649                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16650                 }
16651         },
16652         {
16653         .field_info_mask = {
16654                 .description = "tl4.flags",
16655                 .field_bit_size = 9,
16656                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16657                 },
16658         .field_info_spec = {
16659                 .description = "tl4.flags",
16660                 .field_bit_size = 9,
16661                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16662                 }
16663         },
16664         {
16665         .field_info_mask = {
16666                 .description = "tl4.seq",
16667                 .field_bit_size = 32,
16668                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16669                 },
16670         .field_info_spec = {
16671                 .description = "tl4.seq",
16672                 .field_bit_size = 32,
16673                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16674                 }
16675         },
16676         {
16677         .field_info_mask = {
16678                 .description = "tl4.pa",
16679                 .field_bit_size = 1,
16680                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16681                 },
16682         .field_info_spec = {
16683                 .description = "tl4.pa",
16684                 .field_bit_size = 1,
16685                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16686                 }
16687         },
16688         {
16689         .field_info_mask = {
16690                 .description = "tl4.opt",
16691                 .field_bit_size = 1,
16692                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16693                 },
16694         .field_info_spec = {
16695                 .description = "tl4.opt",
16696                 .field_bit_size = 1,
16697                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16698                 }
16699         },
16700         {
16701         .field_info_mask = {
16702                 .description = "tl4.tcpts",
16703                 .field_bit_size = 1,
16704                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16705                 },
16706         .field_info_spec = {
16707                 .description = "tl4.tcpts",
16708                 .field_bit_size = 1,
16709                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16710                 }
16711         },
16712         {
16713         .field_info_mask = {
16714                 .description = "tl4.err",
16715                 .field_bit_size = 4,
16716                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16717                 },
16718         .field_info_spec = {
16719                 .description = "tl4.err",
16720                 .field_bit_size = 4,
16721                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16722                 }
16723         },
16724         {
16725         .field_info_mask = {
16726                 .description = "tuntype",
16727                 .field_bit_size = 4,
16728                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16729                 },
16730         .field_info_spec = {
16731                 .description = "tuntype",
16732                 .field_bit_size = 4,
16733                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16734                 }
16735         },
16736         {
16737         .field_info_mask = {
16738                 .description = "tflags",
16739                 .field_bit_size = 3,
16740                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16741                 },
16742         .field_info_spec = {
16743                 .description = "tflags",
16744                 .field_bit_size = 3,
16745                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16746                 }
16747         },
16748         {
16749         .field_info_mask = {
16750                 .description = "tids",
16751                 .field_bit_size = 24,
16752                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16753                 },
16754         .field_info_spec = {
16755                 .description = "tids",
16756                 .field_bit_size = 24,
16757                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16758                 }
16759         },
16760         {
16761         .field_info_mask = {
16762                 .description = "tid",
16763                 .field_bit_size = 32,
16764                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16765                 },
16766         .field_info_spec = {
16767                 .description = "tid",
16768                 .field_bit_size = 32,
16769                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16770                 }
16771         },
16772         {
16773         .field_info_mask = {
16774                 .description = "tctxts",
16775                 .field_bit_size = 24,
16776                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16777                 },
16778         .field_info_spec = {
16779                 .description = "tctxts",
16780                 .field_bit_size = 24,
16781                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16782                 }
16783         },
16784         {
16785         .field_info_mask = {
16786                 .description = "tctxt",
16787                 .field_bit_size = 32,
16788                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16789                 },
16790         .field_info_spec = {
16791                 .description = "tctxt",
16792                 .field_bit_size = 32,
16793                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16794                 }
16795         },
16796         {
16797         .field_info_mask = {
16798                 .description = "tqos",
16799                 .field_bit_size = 3,
16800                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16801                 },
16802         .field_info_spec = {
16803                 .description = "tqos",
16804                 .field_bit_size = 3,
16805                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16806                 }
16807         },
16808         {
16809         .field_info_mask = {
16810                 .description = "terr",
16811                 .field_bit_size = 4,
16812                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16813                 },
16814         .field_info_spec = {
16815                 .description = "terr",
16816                 .field_bit_size = 4,
16817                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16818                 }
16819         },
16820         {
16821         .field_info_mask = {
16822                 .description = "l2_l2type",
16823                 .field_bit_size = 2,
16824                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16825                 },
16826         .field_info_spec = {
16827                 .description = "l2_l2type",
16828                 .field_bit_size = 2,
16829                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16830                 }
16831         },
16832         {
16833         .field_info_mask = {
16834                 .description = "l2_dmac",
16835                 .field_bit_size = 48,
16836                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16837                 },
16838         .field_info_spec = {
16839                 .description = "l2_dmac",
16840                 .field_bit_size = 48,
16841                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16842                 }
16843         },
16844         {
16845         .field_info_mask = {
16846                 .description = "l2_smac",
16847                 .field_bit_size = 48,
16848                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16849                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
16850                 .field_opr1 = {
16851                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
16852                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
16853                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16854                 .field_opr2 = {
16855                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
16856                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
16857                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16858                 },
16859         .field_info_spec = {
16860                 .description = "l2_smac",
16861                 .field_bit_size = 48,
16862                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
16863                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
16864                 .field_opr1 = {
16865                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
16866                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
16867                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
16868                 .field_opr2 = {
16869                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
16870                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
16871                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
16872                 }
16873         },
16874         {
16875         .field_info_mask = {
16876                 .description = "l2_dt",
16877                 .field_bit_size = 2,
16878                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16879                 },
16880         .field_info_spec = {
16881                 .description = "l2_dt",
16882                 .field_bit_size = 2,
16883                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16884                 }
16885         },
16886         {
16887         .field_info_mask = {
16888                 .description = "l2_sa",
16889                 .field_bit_size = 1,
16890                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16891                 },
16892         .field_info_spec = {
16893                 .description = "l2_sa",
16894                 .field_bit_size = 1,
16895                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16896                 }
16897         },
16898         {
16899         .field_info_mask = {
16900                 .description = "l2_nvt",
16901                 .field_bit_size = 2,
16902                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16903                 },
16904         .field_info_spec = {
16905                 .description = "l2_nvt",
16906                 .field_bit_size = 2,
16907                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16908                 }
16909         },
16910         {
16911         .field_info_mask = {
16912                 .description = "l2_ovp",
16913                 .field_bit_size = 3,
16914                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16915                 },
16916         .field_info_spec = {
16917                 .description = "l2_ovp",
16918                 .field_bit_size = 3,
16919                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16920                 }
16921         },
16922         {
16923         .field_info_mask = {
16924                 .description = "l2_ovd",
16925                 .field_bit_size = 1,
16926                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16927                 },
16928         .field_info_spec = {
16929                 .description = "l2_ovd",
16930                 .field_bit_size = 1,
16931                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16932                 }
16933         },
16934         {
16935         .field_info_mask = {
16936                 .description = "l2_ovv",
16937                 .field_bit_size = 12,
16938                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16939                 },
16940         .field_info_spec = {
16941                 .description = "l2_ovv",
16942                 .field_bit_size = 12,
16943                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16944                 }
16945         },
16946         {
16947         .field_info_mask = {
16948                 .description = "l2_ovt",
16949                 .field_bit_size = 3,
16950                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16951                 },
16952         .field_info_spec = {
16953                 .description = "l2_ovt",
16954                 .field_bit_size = 3,
16955                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16956                 }
16957         },
16958         {
16959         .field_info_mask = {
16960                 .description = "l2_ivp",
16961                 .field_bit_size = 3,
16962                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16963                 },
16964         .field_info_spec = {
16965                 .description = "l2_ivp",
16966                 .field_bit_size = 3,
16967                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16968                 }
16969         },
16970         {
16971         .field_info_mask = {
16972                 .description = "l2_ivd",
16973                 .field_bit_size = 1,
16974                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16975                 },
16976         .field_info_spec = {
16977                 .description = "l2_ivd",
16978                 .field_bit_size = 1,
16979                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16980                 }
16981         },
16982         {
16983         .field_info_mask = {
16984                 .description = "l2_ivv",
16985                 .field_bit_size = 12,
16986                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16987                 },
16988         .field_info_spec = {
16989                 .description = "l2_ivv",
16990                 .field_bit_size = 12,
16991                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16992                 }
16993         },
16994         {
16995         .field_info_mask = {
16996                 .description = "l2_ivt",
16997                 .field_bit_size = 3,
16998                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
16999                 },
17000         .field_info_spec = {
17001                 .description = "l2_ivt",
17002                 .field_bit_size = 3,
17003                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17004                 }
17005         },
17006         {
17007         .field_info_mask = {
17008                 .description = "l2_etype",
17009                 .field_bit_size = 16,
17010                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17011                 },
17012         .field_info_spec = {
17013                 .description = "l2_etype",
17014                 .field_bit_size = 16,
17015                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17016                 }
17017         },
17018         {
17019         .field_info_mask = {
17020                 .description = "l3.l3type",
17021                 .field_bit_size = 4,
17022                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17023                 },
17024         .field_info_spec = {
17025                 .description = "l3.l3type",
17026                 .field_bit_size = 4,
17027                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17028                 }
17029         },
17030         {
17031         .field_info_mask = {
17032                 .description = "l3.sip.ipv4",
17033                 .field_bit_size = 32,
17034                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17035                 },
17036         .field_info_spec = {
17037                 .description = "l3.sip.ipv4",
17038                 .field_bit_size = 32,
17039                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17040                 }
17041         },
17042         {
17043         .field_info_mask = {
17044                 .description = "l3.sip.ipv6",
17045                 .field_bit_size = 128,
17046                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17047                 },
17048         .field_info_spec = {
17049                 .description = "l3.sip.ipv6",
17050                 .field_bit_size = 128,
17051                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17052                 }
17053         },
17054         {
17055         .field_info_mask = {
17056                 .description = "l3.sip_selcmp.ipv6",
17057                 .field_bit_size = 72,
17058                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17059                 },
17060         .field_info_spec = {
17061                 .description = "l3.sip_selcmp.ipv6",
17062                 .field_bit_size = 72,
17063                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17064                 }
17065         },
17066         {
17067         .field_info_mask = {
17068                 .description = "l3.dip.ipv4",
17069                 .field_bit_size = 32,
17070                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17071                 },
17072         .field_info_spec = {
17073                 .description = "l3.dip.ipv4",
17074                 .field_bit_size = 32,
17075                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17076                 }
17077         },
17078         {
17079         .field_info_mask = {
17080                 .description = "l3.dip.ipv6",
17081                 .field_bit_size = 128,
17082                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17083                 },
17084         .field_info_spec = {
17085                 .description = "l3.dip.ipv6",
17086                 .field_bit_size = 128,
17087                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17088                 }
17089         },
17090         {
17091         .field_info_mask = {
17092                 .description = "l3.dip_selcmp.ipv6",
17093                 .field_bit_size = 72,
17094                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17095                 },
17096         .field_info_spec = {
17097                 .description = "l3.dip_selcmp.ipv6",
17098                 .field_bit_size = 72,
17099                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17100                 }
17101         },
17102         {
17103         .field_info_mask = {
17104                 .description = "l3.ttl",
17105                 .field_bit_size = 8,
17106                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17107                 },
17108         .field_info_spec = {
17109                 .description = "l3.ttl",
17110                 .field_bit_size = 8,
17111                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17112                 }
17113         },
17114         {
17115         .field_info_mask = {
17116                 .description = "l3.prot",
17117                 .field_bit_size = 8,
17118                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17119                 },
17120         .field_info_spec = {
17121                 .description = "l3.prot",
17122                 .field_bit_size = 8,
17123                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17124                 }
17125         },
17126         {
17127         .field_info_mask = {
17128                 .description = "l3.fid.ipv4",
17129                 .field_bit_size = 16,
17130                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17131                 },
17132         .field_info_spec = {
17133                 .description = "l3.fid.ipv4",
17134                 .field_bit_size = 16,
17135                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17136                 }
17137         },
17138         {
17139         .field_info_mask = {
17140                 .description = "l3.fid.ipv6",
17141                 .field_bit_size = 20,
17142                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17143                 },
17144         .field_info_spec = {
17145                 .description = "l3.fid.ipv6",
17146                 .field_bit_size = 20,
17147                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17148                 }
17149         },
17150         {
17151         .field_info_mask = {
17152                 .description = "l3.qos",
17153                 .field_bit_size = 8,
17154                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17155                 },
17156         .field_info_spec = {
17157                 .description = "l3.qos",
17158                 .field_bit_size = 8,
17159                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17160                 }
17161         },
17162         {
17163         .field_info_mask = {
17164                 .description = "l3.ieh_nonext",
17165                 .field_bit_size = 1,
17166                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17167                 },
17168         .field_info_spec = {
17169                 .description = "l3.ieh_nonext",
17170                 .field_bit_size = 1,
17171                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17172                 }
17173         },
17174         {
17175         .field_info_mask = {
17176                 .description = "l3.ieh_esp",
17177                 .field_bit_size = 1,
17178                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17179                 },
17180         .field_info_spec = {
17181                 .description = "l3.ieh_esp",
17182                 .field_bit_size = 1,
17183                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17184                 }
17185         },
17186         {
17187         .field_info_mask = {
17188                 .description = "l3.ieh_auth",
17189                 .field_bit_size = 1,
17190                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17191                 },
17192         .field_info_spec = {
17193                 .description = "l3.ieh_auth",
17194                 .field_bit_size = 1,
17195                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17196                 }
17197         },
17198         {
17199         .field_info_mask = {
17200                 .description = "l3.ieh_dest",
17201                 .field_bit_size = 1,
17202                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17203                 },
17204         .field_info_spec = {
17205                 .description = "l3.ieh_dest",
17206                 .field_bit_size = 1,
17207                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17208                 }
17209         },
17210         {
17211         .field_info_mask = {
17212                 .description = "l3.ieh_frag",
17213                 .field_bit_size = 1,
17214                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17215                 },
17216         .field_info_spec = {
17217                 .description = "l3.ieh_frag",
17218                 .field_bit_size = 1,
17219                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17220                 }
17221         },
17222         {
17223         .field_info_mask = {
17224                 .description = "l3.ieh_rthdr",
17225                 .field_bit_size = 1,
17226                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17227                 },
17228         .field_info_spec = {
17229                 .description = "l3.ieh_rthdr",
17230                 .field_bit_size = 1,
17231                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17232                 }
17233         },
17234         {
17235         .field_info_mask = {
17236                 .description = "l3.ieh_hop",
17237                 .field_bit_size = 1,
17238                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17239                 },
17240         .field_info_spec = {
17241                 .description = "l3.ieh_hop",
17242                 .field_bit_size = 1,
17243                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17244                 }
17245         },
17246         {
17247         .field_info_mask = {
17248                 .description = "l3.ieh_1frag",
17249                 .field_bit_size = 1,
17250                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17251                 },
17252         .field_info_spec = {
17253                 .description = "l3.ieh_1frag",
17254                 .field_bit_size = 1,
17255                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17256                 }
17257         },
17258         {
17259         .field_info_mask = {
17260                 .description = "l3.df",
17261                 .field_bit_size = 1,
17262                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17263                 },
17264         .field_info_spec = {
17265                 .description = "l3.df",
17266                 .field_bit_size = 1,
17267                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17268                 }
17269         },
17270         {
17271         .field_info_mask = {
17272                 .description = "l3.l3err.ipv4",
17273                 .field_bit_size = 4,
17274                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17275                 },
17276         .field_info_spec = {
17277                 .description = "l3.l3err.ipv4",
17278                 .field_bit_size = 4,
17279                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17280                 }
17281         },
17282         {
17283         .field_info_mask = {
17284                 .description = "l3.l3err.ipv6",
17285                 .field_bit_size = 4,
17286                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17287                 },
17288         .field_info_spec = {
17289                 .description = "l3.l3err.ipv6",
17290                 .field_bit_size = 4,
17291                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17292                 }
17293         },
17294         {
17295         .field_info_mask = {
17296                 .description = "l4.l4type",
17297                 .field_bit_size = 4,
17298                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17299                 },
17300         .field_info_spec = {
17301                 .description = "l4.l4type",
17302                 .field_bit_size = 4,
17303                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17304                 }
17305         },
17306         {
17307         .field_info_mask = {
17308                 .description = "l4.src",
17309                 .field_bit_size = 16,
17310                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17311                 },
17312         .field_info_spec = {
17313                 .description = "l4.src",
17314                 .field_bit_size = 16,
17315                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17316                 }
17317         },
17318         {
17319         .field_info_mask = {
17320                 .description = "l4.dst",
17321                 .field_bit_size = 16,
17322                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17323                 },
17324         .field_info_spec = {
17325                 .description = "l4.dst",
17326                 .field_bit_size = 16,
17327                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17328                 }
17329         },
17330         {
17331         .field_info_mask = {
17332                 .description = "l4.flags",
17333                 .field_bit_size = 9,
17334                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17335                 },
17336         .field_info_spec = {
17337                 .description = "l4.flags",
17338                 .field_bit_size = 9,
17339                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17340                 }
17341         },
17342         {
17343         .field_info_mask = {
17344                 .description = "l4.seq",
17345                 .field_bit_size = 32,
17346                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17347                 },
17348         .field_info_spec = {
17349                 .description = "l4.seq",
17350                 .field_bit_size = 32,
17351                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17352                 }
17353         },
17354         {
17355         .field_info_mask = {
17356                 .description = "l4.ack",
17357                 .field_bit_size = 32,
17358                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17359                 },
17360         .field_info_spec = {
17361                 .description = "l4.ack",
17362                 .field_bit_size = 32,
17363                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17364                 }
17365         },
17366         {
17367         .field_info_mask = {
17368                 .description = "l4.win",
17369                 .field_bit_size = 16,
17370                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17371                 },
17372         .field_info_spec = {
17373                 .description = "l4.win",
17374                 .field_bit_size = 16,
17375                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17376                 }
17377         },
17378         {
17379         .field_info_mask = {
17380                 .description = "l4.pa",
17381                 .field_bit_size = 1,
17382                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17383                 },
17384         .field_info_spec = {
17385                 .description = "l4.pa",
17386                 .field_bit_size = 1,
17387                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17388                 }
17389         },
17390         {
17391         .field_info_mask = {
17392                 .description = "l4.opt",
17393                 .field_bit_size = 1,
17394                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17395                 },
17396         .field_info_spec = {
17397                 .description = "l4.opt",
17398                 .field_bit_size = 1,
17399                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17400                 }
17401         },
17402         {
17403         .field_info_mask = {
17404                 .description = "l4.tcpts",
17405                 .field_bit_size = 1,
17406                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17407                 },
17408         .field_info_spec = {
17409                 .description = "l4.tcpts",
17410                 .field_bit_size = 1,
17411                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17412                 }
17413         },
17414         {
17415         .field_info_mask = {
17416                 .description = "l4.tsval",
17417                 .field_bit_size = 32,
17418                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17419                 },
17420         .field_info_spec = {
17421                 .description = "l4.tsval",
17422                 .field_bit_size = 32,
17423                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17424                 }
17425         },
17426         {
17427         .field_info_mask = {
17428                 .description = "l4.txecr",
17429                 .field_bit_size = 32,
17430                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17431                 },
17432         .field_info_spec = {
17433                 .description = "l4.txecr",
17434                 .field_bit_size = 32,
17435                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17436                 }
17437         },
17438         {
17439         .field_info_mask = {
17440                 .description = "l4.err",
17441                 .field_bit_size = 4,
17442                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17443                 },
17444         .field_info_spec = {
17445                 .description = "l4.err",
17446                 .field_bit_size = 4,
17447                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
17448                 }
17449         },
17450         /* class_tid: 2, , table: port_table.rd */
17451         {
17452         .field_info_mask = {
17453                 .description = "dev.port_id",
17454                 .field_bit_size = 10,
17455                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17456                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
17457                 .field_opr1 = {
17458                         0xff,
17459                         0xff}
17460                 },
17461         .field_info_spec = {
17462                 .description = "dev.port_id",
17463                 .field_bit_size = 10,
17464                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17465                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
17466                 .field_opr1 = {
17467                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
17468                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
17469                 }
17470         },
17471         /* class_tid: 2, , table: tunnel_cache.rd */
17472         {
17473         .field_info_mask = {
17474                 .description = "svif",
17475                 .field_bit_size = 8,
17476                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17477                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17478                 .field_opr1 = {
17479                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
17480                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
17481                 },
17482         .field_info_spec = {
17483                 .description = "svif",
17484                 .field_bit_size = 8,
17485                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17486                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17487                 .field_opr1 = {
17488                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
17489                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
17490                 }
17491         },
17492         {
17493         .field_info_mask = {
17494                 .description = "tunnel_id",
17495                 .field_bit_size = 8,
17496                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17497                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
17498                 .field_opr1 = {
17499                         0xff}
17500                 },
17501         .field_info_spec = {
17502                 .description = "tunnel_id",
17503                 .field_bit_size = 8,
17504                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17505                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
17506                 .field_opr1 = {
17507                 (BNXT_ULP_CF_IDX_TUNNEL_ID >> 8) & 0xff,
17508                 BNXT_ULP_CF_IDX_TUNNEL_ID & 0xff}
17509                 }
17510         },
17511         /* class_tid: 2, , table: l2_cntxt_tcam.1 */
17512         {
17513         .field_info_mask = {
17514                 .description = "etype",
17515                 .field_bit_size = 16,
17516                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17517                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17518                 },
17519         .field_info_spec = {
17520                 .description = "etype",
17521                 .field_bit_size = 16,
17522                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17523                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17524                 }
17525         },
17526         {
17527         .field_info_mask = {
17528                 .description = "l2_ivlan_tpid_sel",
17529                 .field_bit_size = 3,
17530                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17531                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17532                 },
17533         .field_info_spec = {
17534                 .description = "l2_ivlan_tpid_sel",
17535                 .field_bit_size = 3,
17536                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17537                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17538                 }
17539         },
17540         {
17541         .field_info_mask = {
17542                 .description = "l2_ivlan_vid",
17543                 .field_bit_size = 12,
17544                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17545                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17546                 },
17547         .field_info_spec = {
17548                 .description = "l2_ivlan_vid",
17549                 .field_bit_size = 12,
17550                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17551                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17552                 }
17553         },
17554         {
17555         .field_info_mask = {
17556                 .description = "l2_ovlan_tpid_sel",
17557                 .field_bit_size = 3,
17558                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17559                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17560                 },
17561         .field_info_spec = {
17562                 .description = "l2_ovlan_tpid_sel",
17563                 .field_bit_size = 3,
17564                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17565                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17566                 }
17567         },
17568         {
17569         .field_info_mask = {
17570                 .description = "l2_ovlan_vid",
17571                 .field_bit_size = 12,
17572                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17573                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17574                 },
17575         .field_info_spec = {
17576                 .description = "l2_ovlan_vid",
17577                 .field_bit_size = 12,
17578                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17579                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17580                 }
17581         },
17582         {
17583         .field_info_mask = {
17584                 .description = "two_vtags",
17585                 .field_bit_size = 1,
17586                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17587                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17588                 },
17589         .field_info_spec = {
17590                 .description = "two_vtags",
17591                 .field_bit_size = 1,
17592                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17593                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17594                 }
17595         },
17596         {
17597         .field_info_mask = {
17598                 .description = "vtag_present",
17599                 .field_bit_size = 1,
17600                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17601                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17602                 },
17603         .field_info_spec = {
17604                 .description = "vtag_present",
17605                 .field_bit_size = 1,
17606                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17607                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17608                 }
17609         },
17610         {
17611         .field_info_mask = {
17612                 .description = "mac1_addr",
17613                 .field_bit_size = 48,
17614                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17615                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17616                 },
17617         .field_info_spec = {
17618                 .description = "mac1_addr",
17619                 .field_bit_size = 48,
17620                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17621                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17622                 }
17623         },
17624         {
17625         .field_info_mask = {
17626                 .description = "mac0_addr",
17627                 .field_bit_size = 48,
17628                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17629                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17630                 },
17631         .field_info_spec = {
17632                 .description = "mac0_addr",
17633                 .field_bit_size = 48,
17634                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17635                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17636                 }
17637         },
17638         {
17639         .field_info_mask = {
17640                 .description = "tunnel_id",
17641                 .field_bit_size = 24,
17642                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17643                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17644                 },
17645         .field_info_spec = {
17646                 .description = "tunnel_id",
17647                 .field_bit_size = 24,
17648                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17649                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17650                 }
17651         },
17652         {
17653         .field_info_mask = {
17654                 .description = "tun_hdr_type",
17655                 .field_bit_size = 4,
17656                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17657                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
17658                 .field_opr1 = {
17659                 ULP_THOR_SYM_TUN_HDR_TYPE_NONE}
17660                 },
17661         .field_info_spec = {
17662                 .description = "tun_hdr_type",
17663                 .field_bit_size = 4,
17664                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17665                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
17666                 .field_opr1 = {
17667                 ULP_THOR_SYM_TUN_HDR_TYPE_NONE}
17668                 }
17669         },
17670         {
17671         .field_info_mask = {
17672                 .description = "llc",
17673                 .field_bit_size = 1,
17674                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17675                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17676                 },
17677         .field_info_spec = {
17678                 .description = "llc",
17679                 .field_bit_size = 1,
17680                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17681                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17682                 }
17683         },
17684         {
17685         .field_info_mask = {
17686                 .description = "roce",
17687                 .field_bit_size = 1,
17688                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17689                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17690                 },
17691         .field_info_spec = {
17692                 .description = "roce",
17693                 .field_bit_size = 1,
17694                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17695                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17696                 }
17697         },
17698         {
17699         .field_info_mask = {
17700                 .description = "metadata",
17701                 .field_bit_size = 16,
17702                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17703                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17704                 },
17705         .field_info_spec = {
17706                 .description = "metadata",
17707                 .field_bit_size = 16,
17708                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17709                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17710                 }
17711         },
17712         {
17713         .field_info_mask = {
17714                 .description = "svif",
17715                 .field_bit_size = 11,
17716                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17717                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17718                 },
17719         .field_info_spec = {
17720                 .description = "svif",
17721                 .field_bit_size = 11,
17722                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17723                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17724                 }
17725         },
17726         {
17727         .field_info_mask = {
17728                 .description = "parif",
17729                 .field_bit_size = 4,
17730                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17731                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17732                 },
17733         .field_info_spec = {
17734                 .description = "parif",
17735                 .field_bit_size = 4,
17736                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17737                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17738                 }
17739         },
17740         {
17741         .field_info_mask = {
17742                 .description = "spif",
17743                 .field_bit_size = 2,
17744                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17745                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17746                 },
17747         .field_info_spec = {
17748                 .description = "spif",
17749                 .field_bit_size = 2,
17750                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17751                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17752                 }
17753         },
17754         {
17755         .field_info_mask = {
17756                 .description = "loopback",
17757                 .field_bit_size = 1,
17758                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17759                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17760                 },
17761         .field_info_spec = {
17762                 .description = "loopback",
17763                 .field_bit_size = 1,
17764                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17765                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17766                 }
17767         },
17768         {
17769         .field_info_mask = {
17770                 .description = "recycle_cnt",
17771                 .field_bit_size = 2,
17772                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17773                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17774                 },
17775         .field_info_spec = {
17776                 .description = "recycle_cnt",
17777                 .field_bit_size = 2,
17778                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17779                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17780                 }
17781         },
17782         {
17783         .field_info_mask = {
17784                 .description = "mpass_cnt",
17785                 .field_bit_size = 2,
17786                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17787                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17788                 },
17789         .field_info_spec = {
17790                 .description = "mpass_cnt",
17791                 .field_bit_size = 2,
17792                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17793                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17794                 }
17795         },
17796         {
17797         .field_info_mask = {
17798                 .description = "valid",
17799                 .field_bit_size = 1,
17800                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17801                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
17802                 .field_opr1 = {
17803                 1}
17804                 },
17805         .field_info_spec = {
17806                 .description = "valid",
17807                 .field_bit_size = 1,
17808                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17809                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
17810                 .field_opr1 = {
17811                 1}
17812                 }
17813         },
17814         /* class_tid: 2, , table: tunnel_cache.wr */
17815         {
17816         .field_info_mask = {
17817                 .description = "svif",
17818                 .field_bit_size = 8,
17819                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17820                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17821                 .field_opr1 = {
17822                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
17823                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
17824                 },
17825         .field_info_spec = {
17826                 .description = "svif",
17827                 .field_bit_size = 8,
17828                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17829                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17830                 .field_opr1 = {
17831                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
17832                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
17833                 }
17834         },
17835         {
17836         .field_info_mask = {
17837                 .description = "tunnel_id",
17838                 .field_bit_size = 8,
17839                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17840                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
17841                 .field_opr1 = {
17842                         0xff}
17843                 },
17844         .field_info_spec = {
17845                 .description = "tunnel_id",
17846                 .field_bit_size = 8,
17847                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17848                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
17849                 .field_opr1 = {
17850                 (BNXT_ULP_CF_IDX_TUNNEL_ID >> 8) & 0xff,
17851                 BNXT_ULP_CF_IDX_TUNNEL_ID & 0xff}
17852                 }
17853         },
17854         /* class_tid: 2, , table: mac_addr_cache.rd */
17855         {
17856         .field_info_mask = {
17857                 .description = "svif",
17858                 .field_bit_size = 8,
17859                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17860                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17861                 .field_opr1 = {
17862                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
17863                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
17864                 },
17865         .field_info_spec = {
17866                 .description = "svif",
17867                 .field_bit_size = 8,
17868                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17869                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17870                 .field_opr1 = {
17871                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
17872                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
17873                 }
17874         },
17875         {
17876         .field_info_mask = {
17877                 .description = "tun_hdr",
17878                 .field_bit_size = 4,
17879                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17880                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
17881                 .field_opr1 = {
17882                         0xff}
17883                 },
17884         .field_info_spec = {
17885                 .description = "tun_hdr",
17886                 .field_bit_size = 4,
17887                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17888                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17889                 }
17890         },
17891         {
17892         .field_info_mask = {
17893                 .description = "one_tag",
17894                 .field_bit_size = 1,
17895                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17896                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17897                 },
17898         .field_info_spec = {
17899                 .description = "one_tag",
17900                 .field_bit_size = 1,
17901                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17902                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17903                 }
17904         },
17905         {
17906         .field_info_mask = {
17907                 .description = "vid",
17908                 .field_bit_size = 12,
17909                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17910                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17911                 },
17912         .field_info_spec = {
17913                 .description = "vid",
17914                 .field_bit_size = 12,
17915                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17916                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17917                 }
17918         },
17919         {
17920         .field_info_mask = {
17921                 .description = "mac_addr",
17922                 .field_bit_size = 48,
17923                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17924                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17925                 .field_opr1 = {
17926                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
17927                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
17928                 },
17929         .field_info_spec = {
17930                 .description = "mac_addr",
17931                 .field_bit_size = 48,
17932                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17933                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
17934                 .field_opr1 = {
17935                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
17936                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
17937                 }
17938         },
17939         /* class_tid: 2, , table: l2_cntxt_tcam.0 */
17940         {
17941         .field_info_mask = {
17942                 .description = "etype",
17943                 .field_bit_size = 16,
17944                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17945                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17946                 },
17947         .field_info_spec = {
17948                 .description = "etype",
17949                 .field_bit_size = 16,
17950                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17951                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17952                 }
17953         },
17954         {
17955         .field_info_mask = {
17956                 .description = "l2_ivlan_tpid_sel",
17957                 .field_bit_size = 3,
17958                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17959                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17960                 },
17961         .field_info_spec = {
17962                 .description = "l2_ivlan_tpid_sel",
17963                 .field_bit_size = 3,
17964                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17965                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17966                 }
17967         },
17968         {
17969         .field_info_mask = {
17970                 .description = "l2_ivlan_vid",
17971                 .field_bit_size = 12,
17972                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17973                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17974                 },
17975         .field_info_spec = {
17976                 .description = "l2_ivlan_vid",
17977                 .field_bit_size = 12,
17978                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17979                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17980                 }
17981         },
17982         {
17983         .field_info_mask = {
17984                 .description = "l2_ovlan_tpid_sel",
17985                 .field_bit_size = 3,
17986                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17987                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17988                 },
17989         .field_info_spec = {
17990                 .description = "l2_ovlan_tpid_sel",
17991                 .field_bit_size = 3,
17992                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
17993                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
17994                 }
17995         },
17996         {
17997         .field_info_mask = {
17998                 .description = "l2_ovlan_vid",
17999                 .field_bit_size = 12,
18000                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18001                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18002                 },
18003         .field_info_spec = {
18004                 .description = "l2_ovlan_vid",
18005                 .field_bit_size = 12,
18006                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18007                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18008                 }
18009         },
18010         {
18011         .field_info_mask = {
18012                 .description = "two_vtags",
18013                 .field_bit_size = 1,
18014                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18015                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18016                 },
18017         .field_info_spec = {
18018                 .description = "two_vtags",
18019                 .field_bit_size = 1,
18020                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18021                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18022                 }
18023         },
18024         {
18025         .field_info_mask = {
18026                 .description = "vtag_present",
18027                 .field_bit_size = 1,
18028                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18029                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18030                 },
18031         .field_info_spec = {
18032                 .description = "vtag_present",
18033                 .field_bit_size = 1,
18034                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18035                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18036                 }
18037         },
18038         {
18039         .field_info_mask = {
18040                 .description = "mac1_addr",
18041                 .field_bit_size = 48,
18042                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18043                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18044                 },
18045         .field_info_spec = {
18046                 .description = "mac1_addr",
18047                 .field_bit_size = 48,
18048                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18049                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18050                 }
18051         },
18052         {
18053         .field_info_mask = {
18054                 .description = "mac0_addr",
18055                 .field_bit_size = 48,
18056                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18057                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18058                 .field_opr1 = {
18059                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
18060                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
18061                 },
18062         .field_info_spec = {
18063                 .description = "mac0_addr",
18064                 .field_bit_size = 48,
18065                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18066                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18067                 .field_opr1 = {
18068                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
18069                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
18070                 }
18071         },
18072         {
18073         .field_info_mask = {
18074                 .description = "tunnel_id",
18075                 .field_bit_size = 24,
18076                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18077                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18078                 },
18079         .field_info_spec = {
18080                 .description = "tunnel_id",
18081                 .field_bit_size = 24,
18082                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18083                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18084                 }
18085         },
18086         {
18087         .field_info_mask = {
18088                 .description = "tun_hdr_type",
18089                 .field_bit_size = 4,
18090                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18091                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18092                 .field_opr1 = {
18093                         0xff}
18094                 },
18095         .field_info_spec = {
18096                 .description = "tun_hdr_type",
18097                 .field_bit_size = 4,
18098                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18099                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18100                 }
18101         },
18102         {
18103         .field_info_mask = {
18104                 .description = "llc",
18105                 .field_bit_size = 1,
18106                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18107                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18108                 },
18109         .field_info_spec = {
18110                 .description = "llc",
18111                 .field_bit_size = 1,
18112                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18113                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18114                 }
18115         },
18116         {
18117         .field_info_mask = {
18118                 .description = "roce",
18119                 .field_bit_size = 1,
18120                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18121                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18122                 },
18123         .field_info_spec = {
18124                 .description = "roce",
18125                 .field_bit_size = 1,
18126                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18127                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18128                 }
18129         },
18130         {
18131         .field_info_mask = {
18132                 .description = "metadata",
18133                 .field_bit_size = 16,
18134                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18135                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18136                 },
18137         .field_info_spec = {
18138                 .description = "metadata",
18139                 .field_bit_size = 16,
18140                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18141                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18142                 }
18143         },
18144         {
18145         .field_info_mask = {
18146                 .description = "svif",
18147                 .field_bit_size = 11,
18148                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18149                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18150                 .field_opr1 = {
18151                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
18152                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
18153                 },
18154         .field_info_spec = {
18155                 .description = "svif",
18156                 .field_bit_size = 11,
18157                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18158                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18159                 .field_opr1 = {
18160                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
18161                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
18162                 }
18163         },
18164         {
18165         .field_info_mask = {
18166                 .description = "parif",
18167                 .field_bit_size = 4,
18168                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18169                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18170                 },
18171         .field_info_spec = {
18172                 .description = "parif",
18173                 .field_bit_size = 4,
18174                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18175                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18176                 }
18177         },
18178         {
18179         .field_info_mask = {
18180                 .description = "spif",
18181                 .field_bit_size = 2,
18182                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18183                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18184                 },
18185         .field_info_spec = {
18186                 .description = "spif",
18187                 .field_bit_size = 2,
18188                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18189                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18190                 }
18191         },
18192         {
18193         .field_info_mask = {
18194                 .description = "loopback",
18195                 .field_bit_size = 1,
18196                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18197                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18198                 },
18199         .field_info_spec = {
18200                 .description = "loopback",
18201                 .field_bit_size = 1,
18202                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18203                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18204                 }
18205         },
18206         {
18207         .field_info_mask = {
18208                 .description = "recycle_cnt",
18209                 .field_bit_size = 2,
18210                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18211                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18212                 },
18213         .field_info_spec = {
18214                 .description = "recycle_cnt",
18215                 .field_bit_size = 2,
18216                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18217                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18218                 }
18219         },
18220         {
18221         .field_info_mask = {
18222                 .description = "mpass_cnt",
18223                 .field_bit_size = 2,
18224                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18225                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18226                 .field_opr1 = {
18227                 2}
18228                 },
18229         .field_info_spec = {
18230                 .description = "mpass_cnt",
18231                 .field_bit_size = 2,
18232                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18233                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18234                 }
18235         },
18236         {
18237         .field_info_mask = {
18238                 .description = "valid",
18239                 .field_bit_size = 1,
18240                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18241                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18242                 .field_opr1 = {
18243                 1}
18244                 },
18245         .field_info_spec = {
18246                 .description = "valid",
18247                 .field_bit_size = 1,
18248                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18249                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18250                 .field_opr1 = {
18251                 1}
18252                 }
18253         },
18254         /* class_tid: 2, , table: mac_addr_cache.wr */
18255         {
18256         .field_info_mask = {
18257                 .description = "svif",
18258                 .field_bit_size = 8,
18259                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18260                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18261                 .field_opr1 = {
18262                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
18263                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
18264                 },
18265         .field_info_spec = {
18266                 .description = "svif",
18267                 .field_bit_size = 8,
18268                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18269                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18270                 .field_opr1 = {
18271                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
18272                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
18273                 }
18274         },
18275         {
18276         .field_info_mask = {
18277                 .description = "tun_hdr",
18278                 .field_bit_size = 4,
18279                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18280                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18281                 .field_opr1 = {
18282                         0xff}
18283                 },
18284         .field_info_spec = {
18285                 .description = "tun_hdr",
18286                 .field_bit_size = 4,
18287                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18288                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18289                 }
18290         },
18291         {
18292         .field_info_mask = {
18293                 .description = "one_tag",
18294                 .field_bit_size = 1,
18295                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18296                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18297                 },
18298         .field_info_spec = {
18299                 .description = "one_tag",
18300                 .field_bit_size = 1,
18301                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18302                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18303                 }
18304         },
18305         {
18306         .field_info_mask = {
18307                 .description = "vid",
18308                 .field_bit_size = 12,
18309                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18310                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18311                 },
18312         .field_info_spec = {
18313                 .description = "vid",
18314                 .field_bit_size = 12,
18315                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18316                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18317                 }
18318         },
18319         {
18320         .field_info_mask = {
18321                 .description = "mac_addr",
18322                 .field_bit_size = 48,
18323                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18324                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18325                 .field_opr1 = {
18326                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
18327                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
18328                 },
18329         .field_info_spec = {
18330                 .description = "mac_addr",
18331                 .field_bit_size = 48,
18332                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18333                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
18334                 .field_opr1 = {
18335                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
18336                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
18337                 }
18338         },
18339         /* class_tid: 2, , table: profile_tcam_cache.f2_ipv6_rd */
18340         {
18341         .field_info_mask = {
18342                 .description = "recycle_cnt",
18343                 .field_bit_size = 2,
18344                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18345                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18346                 .field_opr1 = {
18347                         0xff}
18348                 },
18349         .field_info_spec = {
18350                 .description = "recycle_cnt",
18351                 .field_bit_size = 2,
18352                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18353                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18354                 }
18355         },
18356         {
18357         .field_info_mask = {
18358                 .description = "prof_func_id",
18359                 .field_bit_size = 7,
18360                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18361                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18362                 .field_opr1 = {
18363                         0xff}
18364                 },
18365         .field_info_spec = {
18366                 .description = "prof_func_id",
18367                 .field_bit_size = 7,
18368                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18369                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
18370                 .field_opr1 = {
18371                 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
18372                 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
18373                 }
18374         },
18375         {
18376         .field_info_mask = {
18377                 .description = "hdr_sig_id",
18378                 .field_bit_size = 5,
18379                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18380                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18381                 .field_opr1 = {
18382                         0xff}
18383                 },
18384         .field_info_spec = {
18385                 .description = "hdr_sig_id",
18386                 .field_bit_size = 5,
18387                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18388                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
18389                 .field_opr1 = {
18390                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
18391                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
18392                 }
18393         },
18394         /* class_tid: 2, , table: profile_tcam.f2_l2_l3_l4_v6_em */
18395         {
18396         .field_info_mask = {
18397                 .description = "l4_hdr_is_udp_tcp",
18398                 .field_bit_size = 1,
18399                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18400                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18401                 },
18402         .field_info_spec = {
18403                 .description = "l4_hdr_is_udp_tcp",
18404                 .field_bit_size = 1,
18405                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18406                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18407                 }
18408         },
18409         {
18410         .field_info_mask = {
18411                 .description = "l4_hdr_type",
18412                 .field_bit_size = 4,
18413                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
18414                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
18415                 .field_opr1 = {
18416                 (BNXT_ULP_CF_IDX_I_L4 >> 8) & 0xff,
18417                 BNXT_ULP_CF_IDX_I_L4 & 0xff},
18418                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
18419                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
18420                 },
18421         .field_info_spec = {
18422                 .description = "l4_hdr_type",
18423                 .field_bit_size = 4,
18424                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
18425                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
18426                 .field_opr1 = {
18427                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 56) & 0xff,
18428                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 48) & 0xff,
18429                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 40) & 0xff,
18430                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 32) & 0xff,
18431                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 24) & 0xff,
18432                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 16) & 0xff,
18433                 ((uint64_t)BNXT_ULP_HDR_BIT_I_TCP >> 8) & 0xff,
18434                 (uint64_t)BNXT_ULP_HDR_BIT_I_TCP & 0xff},
18435                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
18436                 .field_opr2 = {
18437                         ULP_THOR_SYM_L4_HDR_TYPE_TCP},
18438                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
18439                 .field_opr3 = {
18440                 ULP_THOR_SYM_L4_HDR_TYPE_UDP}
18441                 }
18442         },
18443         {
18444         .field_info_mask = {
18445                 .description = "l4_hdr_error",
18446                 .field_bit_size = 1,
18447                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18448                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
18449                 .field_opr1 = {
18450                 (BNXT_ULP_CF_IDX_I_L4 >> 8) & 0xff,
18451                 BNXT_ULP_CF_IDX_I_L4 & 0xff}
18452                 },
18453         .field_info_spec = {
18454                 .description = "l4_hdr_error",
18455                 .field_bit_size = 1,
18456                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18457                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18458                 }
18459         },
18460         {
18461         .field_info_mask = {
18462                 .description = "l4_hdr_valid",
18463                 .field_bit_size = 1,
18464                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18465                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
18466                 .field_opr1 = {
18467                 (BNXT_ULP_CF_IDX_I_L4 >> 8) & 0xff,
18468                 BNXT_ULP_CF_IDX_I_L4 & 0xff}
18469                 },
18470         .field_info_spec = {
18471                 .description = "l4_hdr_valid",
18472                 .field_bit_size = 1,
18473                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18474                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
18475                 .field_opr1 = {
18476                 (BNXT_ULP_CF_IDX_I_L4 >> 8) & 0xff,
18477                 BNXT_ULP_CF_IDX_I_L4 & 0xff}
18478                 }
18479         },
18480         {
18481         .field_info_mask = {
18482                 .description = "ieh",
18483                 .field_bit_size = 8,
18484                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18485                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18486                 },
18487         .field_info_spec = {
18488                 .description = "ieh",
18489                 .field_bit_size = 8,
18490                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18491                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18492                 }
18493         },
18494         {
18495         .field_info_mask = {
18496                 .description = "l3_ipv6_cmp_dst",
18497                 .field_bit_size = 1,
18498                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18499                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18500                 },
18501         .field_info_spec = {
18502                 .description = "l3_ipv6_cmp_dst",
18503                 .field_bit_size = 1,
18504                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18505                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18506                 }
18507         },
18508         {
18509         .field_info_mask = {
18510                 .description = "l3_ipv6_cmp_src",
18511                 .field_bit_size = 1,
18512                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18513                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18514                 },
18515         .field_info_spec = {
18516                 .description = "l3_ipv6_cmp_src",
18517                 .field_bit_size = 1,
18518                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18519                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18520                 }
18521         },
18522         {
18523         .field_info_mask = {
18524                 .description = "l3_hdr_isIP",
18525                 .field_bit_size = 1,
18526                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18527                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18528                 },
18529         .field_info_spec = {
18530                 .description = "l3_hdr_isIP",
18531                 .field_bit_size = 1,
18532                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18533                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18534                 }
18535         },
18536         {
18537         .field_info_mask = {
18538                 .description = "l3_hdr_type",
18539                 .field_bit_size = 4,
18540                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18541                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18542                 .field_opr1 = {
18543                         0xff}
18544                 },
18545         .field_info_spec = {
18546                 .description = "l3_hdr_type",
18547                 .field_bit_size = 4,
18548                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18549                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18550                 .field_opr1 = {
18551                 ULP_THOR_SYM_L3_HDR_TYPE_IPV6}
18552                 }
18553         },
18554         {
18555         .field_info_mask = {
18556                 .description = "l3_hdr_error",
18557                 .field_bit_size = 1,
18558                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18559                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18560                 .field_opr1 = {
18561                         0xff}
18562                 },
18563         .field_info_spec = {
18564                 .description = "l3_hdr_error",
18565                 .field_bit_size = 1,
18566                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18567                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18568                 }
18569         },
18570         {
18571         .field_info_mask = {
18572                 .description = "l3_hdr_valid",
18573                 .field_bit_size = 1,
18574                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18575                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18576                 .field_opr1 = {
18577                         0xff}
18578                 },
18579         .field_info_spec = {
18580                 .description = "l3_hdr_valid",
18581                 .field_bit_size = 1,
18582                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18583                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18584                 .field_opr1 = {
18585                 ULP_THOR_SYM_L3_HDR_VALID_YES}
18586                 }
18587         },
18588         {
18589         .field_info_mask = {
18590                 .description = "l2_two_vtags",
18591                 .field_bit_size = 1,
18592                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18593                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18594                 },
18595         .field_info_spec = {
18596                 .description = "l2_two_vtags",
18597                 .field_bit_size = 1,
18598                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18599                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18600                 }
18601         },
18602         {
18603         .field_info_mask = {
18604                 .description = "l2_vtag_present",
18605                 .field_bit_size = 1,
18606                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18607                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18608                 },
18609         .field_info_spec = {
18610                 .description = "l2_vtag_present",
18611                 .field_bit_size = 1,
18612                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18613                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18614                 }
18615         },
18616         {
18617         .field_info_mask = {
18618                 .description = "l2_uc_mc_bc",
18619                 .field_bit_size = 2,
18620                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18621                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18622                 .field_opr1 = {
18623                         0xff}
18624                 },
18625         .field_info_spec = {
18626                 .description = "l2_uc_mc_bc",
18627                 .field_bit_size = 2,
18628                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18629                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18630                 }
18631         },
18632         {
18633         .field_info_mask = {
18634                 .description = "l2_hdr_type",
18635                 .field_bit_size = 2,
18636                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18637                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18638                 .field_opr1 = {
18639                         0xff}
18640                 },
18641         .field_info_spec = {
18642                 .description = "l2_hdr_type",
18643                 .field_bit_size = 2,
18644                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18645                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18646                 }
18647         },
18648         {
18649         .field_info_mask = {
18650                 .description = "l2_hdr_error",
18651                 .field_bit_size = 1,
18652                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18653                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18654                 .field_opr1 = {
18655                         0xff}
18656                 },
18657         .field_info_spec = {
18658                 .description = "l2_hdr_error",
18659                 .field_bit_size = 1,
18660                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18661                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18662                 }
18663         },
18664         {
18665         .field_info_mask = {
18666                 .description = "l2_hdr_valid",
18667                 .field_bit_size = 1,
18668                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18669                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18670                 .field_opr1 = {
18671                         0xff}
18672                 },
18673         .field_info_spec = {
18674                 .description = "l2_hdr_valid",
18675                 .field_bit_size = 1,
18676                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18677                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18678                 .field_opr1 = {
18679                 ULP_THOR_SYM_L2_HDR_VALID_YES}
18680                 }
18681         },
18682         {
18683         .field_info_mask = {
18684                 .description = "tun_hdr_flags",
18685                 .field_bit_size = 3,
18686                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18687                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18688                 },
18689         .field_info_spec = {
18690                 .description = "tun_hdr_flags",
18691                 .field_bit_size = 3,
18692                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18693                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18694                 }
18695         },
18696         {
18697         .field_info_mask = {
18698                 .description = "tun_hdr_type",
18699                 .field_bit_size = 4,
18700                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18701                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18702                 .field_opr1 = {
18703                         0xff}
18704                 },
18705         .field_info_spec = {
18706                 .description = "tun_hdr_type",
18707                 .field_bit_size = 4,
18708                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18709                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18710                 }
18711         },
18712         {
18713         .field_info_mask = {
18714                 .description = "tun_hdr_err",
18715                 .field_bit_size = 1,
18716                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18717                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18718                 .field_opr1 = {
18719                         0xff}
18720                 },
18721         .field_info_spec = {
18722                 .description = "tun_hdr_err",
18723                 .field_bit_size = 1,
18724                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18725                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18726                 }
18727         },
18728         {
18729         .field_info_mask = {
18730                 .description = "tun_hdr_valid",
18731                 .field_bit_size = 1,
18732                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18733                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18734                 .field_opr1 = {
18735                         0xff}
18736                 },
18737         .field_info_spec = {
18738                 .description = "tun_hdr_valid",
18739                 .field_bit_size = 1,
18740                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18741                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18742                 .field_opr1 = {
18743                 ULP_THOR_SYM_TUN_HDR_VALID_YES}
18744                 }
18745         },
18746         {
18747         .field_info_mask = {
18748                 .description = "tl4_hdr_is_udp_tcp",
18749                 .field_bit_size = 1,
18750                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18751                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18752                 },
18753         .field_info_spec = {
18754                 .description = "tl4_hdr_is_udp_tcp",
18755                 .field_bit_size = 1,
18756                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18757                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18758                 }
18759         },
18760         {
18761         .field_info_mask = {
18762                 .description = "tl4_hdr_type",
18763                 .field_bit_size = 4,
18764                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18765                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18766                 .field_opr1 = {
18767                         0xff}
18768                 },
18769         .field_info_spec = {
18770                 .description = "tl4_hdr_type",
18771                 .field_bit_size = 4,
18772                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18773                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18774                 .field_opr1 = {
18775                 ULP_THOR_SYM_TL4_HDR_TYPE_UDP}
18776                 }
18777         },
18778         {
18779         .field_info_mask = {
18780                 .description = "tl4_hdr_error",
18781                 .field_bit_size = 1,
18782                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18783                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18784                 .field_opr1 = {
18785                         0xff}
18786                 },
18787         .field_info_spec = {
18788                 .description = "tl4_hdr_error",
18789                 .field_bit_size = 1,
18790                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18791                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18792                 }
18793         },
18794         {
18795         .field_info_mask = {
18796                 .description = "tl4_hdr_valid",
18797                 .field_bit_size = 1,
18798                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18799                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18800                 .field_opr1 = {
18801                         0xff}
18802                 },
18803         .field_info_spec = {
18804                 .description = "tl4_hdr_valid",
18805                 .field_bit_size = 1,
18806                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18807                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18808                 .field_opr1 = {
18809                 ULP_THOR_SYM_TL4_HDR_VALID_YES}
18810                 }
18811         },
18812         {
18813         .field_info_mask = {
18814                 .description = "tl3_ipv6_cmp_dst",
18815                 .field_bit_size = 1,
18816                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18817                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18818                 },
18819         .field_info_spec = {
18820                 .description = "tl3_ipv6_cmp_dst",
18821                 .field_bit_size = 1,
18822                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18823                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18824                 }
18825         },
18826         {
18827         .field_info_mask = {
18828                 .description = "tl3_ipv6_cmp_src",
18829                 .field_bit_size = 1,
18830                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18831                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18832                 },
18833         .field_info_spec = {
18834                 .description = "tl3_ipv6_cmp_src",
18835                 .field_bit_size = 1,
18836                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18837                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18838                 }
18839         },
18840         {
18841         .field_info_mask = {
18842                 .description = "tl3_hdr_isIP",
18843                 .field_bit_size = 1,
18844                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18845                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18846                 },
18847         .field_info_spec = {
18848                 .description = "tl3_hdr_isIP",
18849                 .field_bit_size = 1,
18850                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18851                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18852                 }
18853         },
18854         {
18855         .field_info_mask = {
18856                 .description = "tl3_hdr_type",
18857                 .field_bit_size = 4,
18858                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18859                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18860                 .field_opr1 = {
18861                         0xff}
18862                 },
18863         .field_info_spec = {
18864                 .description = "tl3_hdr_type",
18865                 .field_bit_size = 4,
18866                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18867                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18868                 }
18869         },
18870         {
18871         .field_info_mask = {
18872                 .description = "tl3_hdr_error",
18873                 .field_bit_size = 1,
18874                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18875                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18876                 .field_opr1 = {
18877                         0xff}
18878                 },
18879         .field_info_spec = {
18880                 .description = "tl3_hdr_error",
18881                 .field_bit_size = 1,
18882                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18883                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18884                 }
18885         },
18886         {
18887         .field_info_mask = {
18888                 .description = "tl3_hdr_valid",
18889                 .field_bit_size = 1,
18890                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18891                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18892                 .field_opr1 = {
18893                         0xff}
18894                 },
18895         .field_info_spec = {
18896                 .description = "tl3_hdr_valid",
18897                 .field_bit_size = 1,
18898                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18899                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18900                 .field_opr1 = {
18901                 ULP_THOR_SYM_TL3_HDR_VALID_YES}
18902                 }
18903         },
18904         {
18905         .field_info_mask = {
18906                 .description = "tl2_two_vtags",
18907                 .field_bit_size = 1,
18908                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18909                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18910                 },
18911         .field_info_spec = {
18912                 .description = "tl2_two_vtags",
18913                 .field_bit_size = 1,
18914                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18915                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18916                 }
18917         },
18918         {
18919         .field_info_mask = {
18920                 .description = "tl2_vtag_present",
18921                 .field_bit_size = 1,
18922                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18923                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18924                 },
18925         .field_info_spec = {
18926                 .description = "tl2_vtag_present",
18927                 .field_bit_size = 1,
18928                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18929                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18930                 }
18931         },
18932         {
18933         .field_info_mask = {
18934                 .description = "tl2_uc_mc_bc",
18935                 .field_bit_size = 2,
18936                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18937                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18938                 .field_opr1 = {
18939                         0xff}
18940                 },
18941         .field_info_spec = {
18942                 .description = "tl2_uc_mc_bc",
18943                 .field_bit_size = 2,
18944                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18945                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18946                 }
18947         },
18948         {
18949         .field_info_mask = {
18950                 .description = "tl2_hdr_type",
18951                 .field_bit_size = 2,
18952                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18953                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18954                 },
18955         .field_info_spec = {
18956                 .description = "tl2_hdr_type",
18957                 .field_bit_size = 2,
18958                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18959                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18960                 }
18961         },
18962         {
18963         .field_info_mask = {
18964                 .description = "tl2_hdr_valid",
18965                 .field_bit_size = 1,
18966                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18967                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
18968                 .field_opr1 = {
18969                         0xff}
18970                 },
18971         .field_info_spec = {
18972                 .description = "tl2_hdr_valid",
18973                 .field_bit_size = 1,
18974                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18975                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
18976                 .field_opr1 = {
18977                 ULP_THOR_SYM_TL2_HDR_VALID_YES}
18978                 }
18979         },
18980         {
18981         .field_info_mask = {
18982                 .description = "hrec_next",
18983                 .field_bit_size = 1,
18984                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18985                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18986                 },
18987         .field_info_spec = {
18988                 .description = "hrec_next",
18989                 .field_bit_size = 1,
18990                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18991                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
18992                 }
18993         },
18994         {
18995         .field_info_mask = {
18996                 .description = "prof_func_id",
18997                 .field_bit_size = 7,
18998                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
18999                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
19000                 .field_opr1 = {
19001                         0xff}
19002                 },
19003         .field_info_spec = {
19004                 .description = "prof_func_id",
19005                 .field_bit_size = 7,
19006                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19007                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
19008                 .field_opr1 = {
19009                 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
19010                 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
19011                 }
19012         },
19013         {
19014         .field_info_mask = {
19015                 .description = "agg_error",
19016                 .field_bit_size = 1,
19017                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19018                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19019                 },
19020         .field_info_spec = {
19021                 .description = "agg_error",
19022                 .field_bit_size = 1,
19023                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19024                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19025                 }
19026         },
19027         {
19028         .field_info_mask = {
19029                 .description = "metadata",
19030                 .field_bit_size = 16,
19031                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19032                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19033                 },
19034         .field_info_spec = {
19035                 .description = "metadata",
19036                 .field_bit_size = 16,
19037                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19038                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19039                 }
19040         },
19041         {
19042         .field_info_mask = {
19043                 .description = "pkt_type_0",
19044                 .field_bit_size = 2,
19045                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19046                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19047                 },
19048         .field_info_spec = {
19049                 .description = "pkt_type_0",
19050                 .field_bit_size = 2,
19051                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19052                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19053                 }
19054         },
19055         {
19056         .field_info_mask = {
19057                 .description = "pkt_type_1",
19058                 .field_bit_size = 2,
19059                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19060                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19061                 },
19062         .field_info_spec = {
19063                 .description = "pkt_type_1",
19064                 .field_bit_size = 2,
19065                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19066                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19067                 }
19068         },
19069         {
19070         .field_info_mask = {
19071                 .description = "valid",
19072                 .field_bit_size = 1,
19073                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19074                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
19075                 .field_opr1 = {
19076                 1}
19077                 },
19078         .field_info_spec = {
19079                 .description = "valid",
19080                 .field_bit_size = 1,
19081                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19082                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
19083                 .field_opr1 = {
19084                 1}
19085                 }
19086         },
19087         /* class_tid: 2, , table: profile_tcam_cache.f2_l2_l3_l4_v6_wr */
19088         {
19089         .field_info_mask = {
19090                 .description = "recycle_cnt",
19091                 .field_bit_size = 2,
19092                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19093                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19094                 },
19095         .field_info_spec = {
19096                 .description = "recycle_cnt",
19097                 .field_bit_size = 2,
19098                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19099                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
19100                 }
19101         },
19102         {
19103         .field_info_mask = {
19104                 .description = "prof_func_id",
19105                 .field_bit_size = 7,
19106                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19107                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
19108                 .field_opr1 = {
19109                         0xff}
19110                 },
19111         .field_info_spec = {
19112                 .description = "prof_func_id",
19113                 .field_bit_size = 7,
19114                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19115                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
19116                 .field_opr1 = {
19117                 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
19118                 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
19119                 }
19120         },
19121         {
19122         .field_info_mask = {
19123                 .description = "hdr_sig_id",
19124                 .field_bit_size = 5,
19125                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19126                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
19127                 .field_opr1 = {
19128                         0xff}
19129                 },
19130         .field_info_spec = {
19131                 .description = "hdr_sig_id",
19132                 .field_bit_size = 5,
19133                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19134                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
19135                 .field_opr1 = {
19136                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
19137                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
19138                 }
19139         },
19140         /* class_tid: 2, , table: em.f2_l2_l3_l4_v6.0 */
19141         {
19142         .field_info_mask = {
19143                 .description = "em_profile_id",
19144                 .field_bit_size = 8,
19145                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19146                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
19147                 .field_opr1 = {
19148                         0xff}
19149                 },
19150         .field_info_spec = {
19151                 .description = "em_profile_id",
19152                 .field_bit_size = 8,
19153                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19154                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
19155                 .field_opr1 = {
19156                 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
19157                 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
19158                 }
19159         },
19160         {
19161         .field_info_mask = {
19162                 .description = "l2_cntxt_id",
19163                 .field_bit_size = 10,
19164                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19165                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
19166                 .field_opr1 = {
19167                         0xff,
19168                         0xff}
19169                 },
19170         .field_info_spec = {
19171                 .description = "l2_cntxt_id",
19172                 .field_bit_size = 10,
19173                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19174                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
19175                 .field_opr1 = {
19176                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
19177                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
19178                 }
19179         },
19180         {
19181         .field_info_mask = {
19182                 .description = "parif",
19183                 .field_bit_size = 4,
19184                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19185                 },
19186         .field_info_spec = {
19187                 .description = "parif",
19188                 .field_bit_size = 4,
19189                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19190                 }
19191         },
19192         {
19193         .field_info_mask = {
19194                 .description = "spif",
19195                 .field_bit_size = 2,
19196                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19197                 },
19198         .field_info_spec = {
19199                 .description = "spif",
19200                 .field_bit_size = 2,
19201                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19202                 }
19203         },
19204         {
19205         .field_info_mask = {
19206                 .description = "svif",
19207                 .field_bit_size = 11,
19208                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19209                 },
19210         .field_info_spec = {
19211                 .description = "svif",
19212                 .field_bit_size = 11,
19213                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19214                 }
19215         },
19216         {
19217         .field_info_mask = {
19218                 .description = "lcos",
19219                 .field_bit_size = 3,
19220                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19221                 },
19222         .field_info_spec = {
19223                 .description = "lcos",
19224                 .field_bit_size = 3,
19225                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19226                 }
19227         },
19228         {
19229         .field_info_mask = {
19230                 .description = "meta",
19231                 .field_bit_size = 16,
19232                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19233                 },
19234         .field_info_spec = {
19235                 .description = "meta",
19236                 .field_bit_size = 16,
19237                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19238                 }
19239         },
19240         {
19241         .field_info_mask = {
19242                 .description = "rcyc_cnt",
19243                 .field_bit_size = 2,
19244                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19245                 },
19246         .field_info_spec = {
19247                 .description = "rcyc_cnt",
19248                 .field_bit_size = 2,
19249                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19250                 }
19251         },
19252         {
19253         .field_info_mask = {
19254                 .description = "loopback",
19255                 .field_bit_size = 1,
19256                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19257                 },
19258         .field_info_spec = {
19259                 .description = "loopback",
19260                 .field_bit_size = 1,
19261                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19262                 }
19263         },
19264         {
19265         .field_info_mask = {
19266                 .description = "tl2_l2type",
19267                 .field_bit_size = 2,
19268                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19269                 },
19270         .field_info_spec = {
19271                 .description = "tl2_l2type",
19272                 .field_bit_size = 2,
19273                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19274                 }
19275         },
19276         {
19277         .field_info_mask = {
19278                 .description = "tl2_dmac",
19279                 .field_bit_size = 48,
19280                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19281                 },
19282         .field_info_spec = {
19283                 .description = "tl2_dmac",
19284                 .field_bit_size = 48,
19285                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19286                 }
19287         },
19288         {
19289         .field_info_mask = {
19290                 .description = "tl2_smac",
19291                 .field_bit_size = 48,
19292                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19293                 },
19294         .field_info_spec = {
19295                 .description = "tl2_smac",
19296                 .field_bit_size = 48,
19297                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19298                 }
19299         },
19300         {
19301         .field_info_mask = {
19302                 .description = "tl2_dt",
19303                 .field_bit_size = 2,
19304                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19305                 },
19306         .field_info_spec = {
19307                 .description = "tl2_dt",
19308                 .field_bit_size = 2,
19309                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19310                 }
19311         },
19312         {
19313         .field_info_mask = {
19314                 .description = "tl2_sa",
19315                 .field_bit_size = 1,
19316                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19317                 },
19318         .field_info_spec = {
19319                 .description = "tl2_sa",
19320                 .field_bit_size = 1,
19321                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19322                 }
19323         },
19324         {
19325         .field_info_mask = {
19326                 .description = "tl2_nvt",
19327                 .field_bit_size = 2,
19328                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19329                 },
19330         .field_info_spec = {
19331                 .description = "tl2_nvt",
19332                 .field_bit_size = 2,
19333                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19334                 }
19335         },
19336         {
19337         .field_info_mask = {
19338                 .description = "tl2_ovp",
19339                 .field_bit_size = 3,
19340                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19341                 },
19342         .field_info_spec = {
19343                 .description = "tl2_ovp",
19344                 .field_bit_size = 3,
19345                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19346                 }
19347         },
19348         {
19349         .field_info_mask = {
19350                 .description = "tl2_ovd",
19351                 .field_bit_size = 1,
19352                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19353                 },
19354         .field_info_spec = {
19355                 .description = "tl2_ovd",
19356                 .field_bit_size = 1,
19357                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19358                 }
19359         },
19360         {
19361         .field_info_mask = {
19362                 .description = "tl2_ovv",
19363                 .field_bit_size = 12,
19364                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19365                 },
19366         .field_info_spec = {
19367                 .description = "tl2_ovv",
19368                 .field_bit_size = 12,
19369                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19370                 }
19371         },
19372         {
19373         .field_info_mask = {
19374                 .description = "tl2_ovt",
19375                 .field_bit_size = 3,
19376                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19377                 },
19378         .field_info_spec = {
19379                 .description = "tl2_ovt",
19380                 .field_bit_size = 3,
19381                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19382                 }
19383         },
19384         {
19385         .field_info_mask = {
19386                 .description = "tl2_ivp",
19387                 .field_bit_size = 3,
19388                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19389                 },
19390         .field_info_spec = {
19391                 .description = "tl2_ivp",
19392                 .field_bit_size = 3,
19393                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19394                 }
19395         },
19396         {
19397         .field_info_mask = {
19398                 .description = "tl2_ivd",
19399                 .field_bit_size = 1,
19400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19401                 },
19402         .field_info_spec = {
19403                 .description = "tl2_ivd",
19404                 .field_bit_size = 1,
19405                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19406                 }
19407         },
19408         {
19409         .field_info_mask = {
19410                 .description = "tl2_ivv",
19411                 .field_bit_size = 12,
19412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19413                 },
19414         .field_info_spec = {
19415                 .description = "tl2_ivv",
19416                 .field_bit_size = 12,
19417                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19418                 }
19419         },
19420         {
19421         .field_info_mask = {
19422                 .description = "tl2_ivt",
19423                 .field_bit_size = 3,
19424                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19425                 },
19426         .field_info_spec = {
19427                 .description = "tl2_ivt",
19428                 .field_bit_size = 3,
19429                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19430                 }
19431         },
19432         {
19433         .field_info_mask = {
19434                 .description = "tl2_etype",
19435                 .field_bit_size = 16,
19436                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19437                 },
19438         .field_info_spec = {
19439                 .description = "tl2_etype",
19440                 .field_bit_size = 16,
19441                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19442                 }
19443         },
19444         {
19445         .field_info_mask = {
19446                 .description = "tl3.l3type",
19447                 .field_bit_size = 4,
19448                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19449                 },
19450         .field_info_spec = {
19451                 .description = "tl3.l3type",
19452                 .field_bit_size = 4,
19453                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19454                 }
19455         },
19456         {
19457         .field_info_mask = {
19458                 .description = "tl3.sip.ipv4",
19459                 .field_bit_size = 32,
19460                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19461                 },
19462         .field_info_spec = {
19463                 .description = "tl3.sip.ipv4",
19464                 .field_bit_size = 32,
19465                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19466                 }
19467         },
19468         {
19469         .field_info_mask = {
19470                 .description = "tl3.sip.ipv6",
19471                 .field_bit_size = 128,
19472                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19473                 },
19474         .field_info_spec = {
19475                 .description = "tl3.sip.ipv6",
19476                 .field_bit_size = 128,
19477                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19478                 }
19479         },
19480         {
19481         .field_info_mask = {
19482                 .description = "tl3.sip_selcmp.ipv6",
19483                 .field_bit_size = 72,
19484                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19485                 },
19486         .field_info_spec = {
19487                 .description = "tl3.sip_selcmp.ipv6",
19488                 .field_bit_size = 72,
19489                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19490                 }
19491         },
19492         {
19493         .field_info_mask = {
19494                 .description = "tl3.dip.ipv4",
19495                 .field_bit_size = 32,
19496                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19497                 },
19498         .field_info_spec = {
19499                 .description = "tl3.dip.ipv4",
19500                 .field_bit_size = 32,
19501                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19502                 }
19503         },
19504         {
19505         .field_info_mask = {
19506                 .description = "tl3.dip.ipv6",
19507                 .field_bit_size = 128,
19508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19509                 },
19510         .field_info_spec = {
19511                 .description = "tl3.dip.ipv6",
19512                 .field_bit_size = 128,
19513                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19514                 }
19515         },
19516         {
19517         .field_info_mask = {
19518                 .description = "tl3.dip_selcmp.ipv6",
19519                 .field_bit_size = 72,
19520                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19521                 },
19522         .field_info_spec = {
19523                 .description = "tl3.dip_selcmp.ipv6",
19524                 .field_bit_size = 72,
19525                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19526                 }
19527         },
19528         {
19529         .field_info_mask = {
19530                 .description = "tl3.ttl",
19531                 .field_bit_size = 8,
19532                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19533                 },
19534         .field_info_spec = {
19535                 .description = "tl3.ttl",
19536                 .field_bit_size = 8,
19537                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19538                 }
19539         },
19540         {
19541         .field_info_mask = {
19542                 .description = "tl3.prot",
19543                 .field_bit_size = 8,
19544                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19545                 },
19546         .field_info_spec = {
19547                 .description = "tl3.prot",
19548                 .field_bit_size = 8,
19549                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19550                 }
19551         },
19552         {
19553         .field_info_mask = {
19554                 .description = "tl3.fid.ipv4",
19555                 .field_bit_size = 16,
19556                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19557                 },
19558         .field_info_spec = {
19559                 .description = "tl3.fid.ipv4",
19560                 .field_bit_size = 16,
19561                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19562                 }
19563         },
19564         {
19565         .field_info_mask = {
19566                 .description = "tl3.fid.ipv6",
19567                 .field_bit_size = 20,
19568                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19569                 },
19570         .field_info_spec = {
19571                 .description = "tl3.fid.ipv6",
19572                 .field_bit_size = 20,
19573                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19574                 }
19575         },
19576         {
19577         .field_info_mask = {
19578                 .description = "tl3.qos",
19579                 .field_bit_size = 8,
19580                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19581                 },
19582         .field_info_spec = {
19583                 .description = "tl3.qos",
19584                 .field_bit_size = 8,
19585                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19586                 }
19587         },
19588         {
19589         .field_info_mask = {
19590                 .description = "tl3.ieh_nonext",
19591                 .field_bit_size = 1,
19592                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19593                 },
19594         .field_info_spec = {
19595                 .description = "tl3.ieh_nonext",
19596                 .field_bit_size = 1,
19597                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19598                 }
19599         },
19600         {
19601         .field_info_mask = {
19602                 .description = "tl3.ieh_esp",
19603                 .field_bit_size = 1,
19604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19605                 },
19606         .field_info_spec = {
19607                 .description = "tl3.ieh_esp",
19608                 .field_bit_size = 1,
19609                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19610                 }
19611         },
19612         {
19613         .field_info_mask = {
19614                 .description = "tl3.ieh_auth",
19615                 .field_bit_size = 1,
19616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19617                 },
19618         .field_info_spec = {
19619                 .description = "tl3.ieh_auth",
19620                 .field_bit_size = 1,
19621                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19622                 }
19623         },
19624         {
19625         .field_info_mask = {
19626                 .description = "tl3.ieh_dest",
19627                 .field_bit_size = 1,
19628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19629                 },
19630         .field_info_spec = {
19631                 .description = "tl3.ieh_dest",
19632                 .field_bit_size = 1,
19633                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19634                 }
19635         },
19636         {
19637         .field_info_mask = {
19638                 .description = "tl3.ieh_frag",
19639                 .field_bit_size = 1,
19640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19641                 },
19642         .field_info_spec = {
19643                 .description = "tl3.ieh_frag",
19644                 .field_bit_size = 1,
19645                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19646                 }
19647         },
19648         {
19649         .field_info_mask = {
19650                 .description = "tl3.ieh_rthdr",
19651                 .field_bit_size = 1,
19652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19653                 },
19654         .field_info_spec = {
19655                 .description = "tl3.ieh_rthdr",
19656                 .field_bit_size = 1,
19657                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19658                 }
19659         },
19660         {
19661         .field_info_mask = {
19662                 .description = "tl3.ieh_hop",
19663                 .field_bit_size = 1,
19664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19665                 },
19666         .field_info_spec = {
19667                 .description = "tl3.ieh_hop",
19668                 .field_bit_size = 1,
19669                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19670                 }
19671         },
19672         {
19673         .field_info_mask = {
19674                 .description = "tl3.ieh_1frag",
19675                 .field_bit_size = 1,
19676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19677                 },
19678         .field_info_spec = {
19679                 .description = "tl3.ieh_1frag",
19680                 .field_bit_size = 1,
19681                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19682                 }
19683         },
19684         {
19685         .field_info_mask = {
19686                 .description = "tl3.df",
19687                 .field_bit_size = 1,
19688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19689                 },
19690         .field_info_spec = {
19691                 .description = "tl3.df",
19692                 .field_bit_size = 1,
19693                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19694                 }
19695         },
19696         {
19697         .field_info_mask = {
19698                 .description = "tl3.l3err",
19699                 .field_bit_size = 4,
19700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19701                 },
19702         .field_info_spec = {
19703                 .description = "tl3.l3err",
19704                 .field_bit_size = 4,
19705                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19706                 }
19707         },
19708         {
19709         .field_info_mask = {
19710                 .description = "tl4.l4type",
19711                 .field_bit_size = 4,
19712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19713                 },
19714         .field_info_spec = {
19715                 .description = "tl4.l4type",
19716                 .field_bit_size = 4,
19717                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19718                 }
19719         },
19720         {
19721         .field_info_mask = {
19722                 .description = "tl4.src",
19723                 .field_bit_size = 16,
19724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19725                 },
19726         .field_info_spec = {
19727                 .description = "tl4.src",
19728                 .field_bit_size = 16,
19729                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19730                 }
19731         },
19732         {
19733         .field_info_mask = {
19734                 .description = "tl4.dst",
19735                 .field_bit_size = 16,
19736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19737                 },
19738         .field_info_spec = {
19739                 .description = "tl4.dst",
19740                 .field_bit_size = 16,
19741                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19742                 }
19743         },
19744         {
19745         .field_info_mask = {
19746                 .description = "tl4.flags",
19747                 .field_bit_size = 9,
19748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19749                 },
19750         .field_info_spec = {
19751                 .description = "tl4.flags",
19752                 .field_bit_size = 9,
19753                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19754                 }
19755         },
19756         {
19757         .field_info_mask = {
19758                 .description = "tl4.seq",
19759                 .field_bit_size = 32,
19760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19761                 },
19762         .field_info_spec = {
19763                 .description = "tl4.seq",
19764                 .field_bit_size = 32,
19765                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19766                 }
19767         },
19768         {
19769         .field_info_mask = {
19770                 .description = "tl4.pa",
19771                 .field_bit_size = 1,
19772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19773                 },
19774         .field_info_spec = {
19775                 .description = "tl4.pa",
19776                 .field_bit_size = 1,
19777                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19778                 }
19779         },
19780         {
19781         .field_info_mask = {
19782                 .description = "tl4.opt",
19783                 .field_bit_size = 1,
19784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19785                 },
19786         .field_info_spec = {
19787                 .description = "tl4.opt",
19788                 .field_bit_size = 1,
19789                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19790                 }
19791         },
19792         {
19793         .field_info_mask = {
19794                 .description = "tl4.tcpts",
19795                 .field_bit_size = 1,
19796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19797                 },
19798         .field_info_spec = {
19799                 .description = "tl4.tcpts",
19800                 .field_bit_size = 1,
19801                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19802                 }
19803         },
19804         {
19805         .field_info_mask = {
19806                 .description = "tl4.err",
19807                 .field_bit_size = 4,
19808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19809                 },
19810         .field_info_spec = {
19811                 .description = "tl4.err",
19812                 .field_bit_size = 4,
19813                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19814                 }
19815         },
19816         {
19817         .field_info_mask = {
19818                 .description = "tuntype",
19819                 .field_bit_size = 4,
19820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19821                 },
19822         .field_info_spec = {
19823                 .description = "tuntype",
19824                 .field_bit_size = 4,
19825                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19826                 }
19827         },
19828         {
19829         .field_info_mask = {
19830                 .description = "tflags",
19831                 .field_bit_size = 3,
19832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19833                 },
19834         .field_info_spec = {
19835                 .description = "tflags",
19836                 .field_bit_size = 3,
19837                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19838                 }
19839         },
19840         {
19841         .field_info_mask = {
19842                 .description = "tids",
19843                 .field_bit_size = 24,
19844                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
19845                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
19846                 .field_opr1 = {
19847                 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
19848                 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
19849                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
19850                 .field_opr2 = {
19851                         (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
19852                         BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
19853                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
19854                 },
19855         .field_info_spec = {
19856                 .description = "tids",
19857                 .field_bit_size = 24,
19858                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
19859                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
19860                 .field_opr1 = {
19861                 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
19862                 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
19863                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
19864                 .field_opr2 = {
19865                         (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
19866                         BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
19867                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
19868                 }
19869         },
19870         {
19871         .field_info_mask = {
19872                 .description = "tid",
19873                 .field_bit_size = 32,
19874                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19875                 },
19876         .field_info_spec = {
19877                 .description = "tid",
19878                 .field_bit_size = 32,
19879                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19880                 }
19881         },
19882         {
19883         .field_info_mask = {
19884                 .description = "tctxts",
19885                 .field_bit_size = 24,
19886                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19887                 },
19888         .field_info_spec = {
19889                 .description = "tctxts",
19890                 .field_bit_size = 24,
19891                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19892                 }
19893         },
19894         {
19895         .field_info_mask = {
19896                 .description = "tctxt",
19897                 .field_bit_size = 32,
19898                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19899                 },
19900         .field_info_spec = {
19901                 .description = "tctxt",
19902                 .field_bit_size = 32,
19903                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19904                 }
19905         },
19906         {
19907         .field_info_mask = {
19908                 .description = "tqos",
19909                 .field_bit_size = 3,
19910                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19911                 },
19912         .field_info_spec = {
19913                 .description = "tqos",
19914                 .field_bit_size = 3,
19915                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19916                 }
19917         },
19918         {
19919         .field_info_mask = {
19920                 .description = "terr",
19921                 .field_bit_size = 4,
19922                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19923                 },
19924         .field_info_spec = {
19925                 .description = "terr",
19926                 .field_bit_size = 4,
19927                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19928                 }
19929         },
19930         {
19931         .field_info_mask = {
19932                 .description = "l2_l2type",
19933                 .field_bit_size = 2,
19934                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19935                 },
19936         .field_info_spec = {
19937                 .description = "l2_l2type",
19938                 .field_bit_size = 2,
19939                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19940                 }
19941         },
19942         {
19943         .field_info_mask = {
19944                 .description = "l2_dmac",
19945                 .field_bit_size = 48,
19946                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19947                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
19948                 .field_opr1 = {
19949                 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
19950                 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
19951                 },
19952         .field_info_spec = {
19953                 .description = "l2_dmac",
19954                 .field_bit_size = 48,
19955                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
19956                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
19957                 .field_opr1 = {
19958                 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
19959                 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
19960                 }
19961         },
19962         {
19963         .field_info_mask = {
19964                 .description = "l2_smac",
19965                 .field_bit_size = 48,
19966                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
19967                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
19968                 .field_opr1 = {
19969                 (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
19970                 BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
19971                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
19972                 .field_opr2 = {
19973                         (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
19974                         BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
19975                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
19976                 },
19977         .field_info_spec = {
19978                 .description = "l2_smac",
19979                 .field_bit_size = 48,
19980                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
19981                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
19982                 .field_opr1 = {
19983                 (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
19984                 BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
19985                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
19986                 .field_opr2 = {
19987                         (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
19988                         BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
19989                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
19990                 }
19991         },
19992         {
19993         .field_info_mask = {
19994                 .description = "l2_dt",
19995                 .field_bit_size = 2,
19996                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
19997                 },
19998         .field_info_spec = {
19999                 .description = "l2_dt",
20000                 .field_bit_size = 2,
20001                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20002                 }
20003         },
20004         {
20005         .field_info_mask = {
20006                 .description = "l2_sa",
20007                 .field_bit_size = 1,
20008                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20009                 },
20010         .field_info_spec = {
20011                 .description = "l2_sa",
20012                 .field_bit_size = 1,
20013                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20014                 }
20015         },
20016         {
20017         .field_info_mask = {
20018                 .description = "l2_nvt",
20019                 .field_bit_size = 2,
20020                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20021                 },
20022         .field_info_spec = {
20023                 .description = "l2_nvt",
20024                 .field_bit_size = 2,
20025                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20026                 }
20027         },
20028         {
20029         .field_info_mask = {
20030                 .description = "l2_ovp",
20031                 .field_bit_size = 3,
20032                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20033                 },
20034         .field_info_spec = {
20035                 .description = "l2_ovp",
20036                 .field_bit_size = 3,
20037                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20038                 }
20039         },
20040         {
20041         .field_info_mask = {
20042                 .description = "l2_ovd",
20043                 .field_bit_size = 1,
20044                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20045                 },
20046         .field_info_spec = {
20047                 .description = "l2_ovd",
20048                 .field_bit_size = 1,
20049                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20050                 }
20051         },
20052         {
20053         .field_info_mask = {
20054                 .description = "l2_ovv",
20055                 .field_bit_size = 12,
20056                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20057                 },
20058         .field_info_spec = {
20059                 .description = "l2_ovv",
20060                 .field_bit_size = 12,
20061                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20062                 }
20063         },
20064         {
20065         .field_info_mask = {
20066                 .description = "l2_ovt",
20067                 .field_bit_size = 3,
20068                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20069                 },
20070         .field_info_spec = {
20071                 .description = "l2_ovt",
20072                 .field_bit_size = 3,
20073                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20074                 }
20075         },
20076         {
20077         .field_info_mask = {
20078                 .description = "l2_ivp",
20079                 .field_bit_size = 3,
20080                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20081                 },
20082         .field_info_spec = {
20083                 .description = "l2_ivp",
20084                 .field_bit_size = 3,
20085                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20086                 }
20087         },
20088         {
20089         .field_info_mask = {
20090                 .description = "l2_ivd",
20091                 .field_bit_size = 1,
20092                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20093                 },
20094         .field_info_spec = {
20095                 .description = "l2_ivd",
20096                 .field_bit_size = 1,
20097                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20098                 }
20099         },
20100         {
20101         .field_info_mask = {
20102                 .description = "l2_ivv",
20103                 .field_bit_size = 12,
20104                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20105                 },
20106         .field_info_spec = {
20107                 .description = "l2_ivv",
20108                 .field_bit_size = 12,
20109                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20110                 }
20111         },
20112         {
20113         .field_info_mask = {
20114                 .description = "l2_ivt",
20115                 .field_bit_size = 3,
20116                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20117                 },
20118         .field_info_spec = {
20119                 .description = "l2_ivt",
20120                 .field_bit_size = 3,
20121                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20122                 }
20123         },
20124         {
20125         .field_info_mask = {
20126                 .description = "l2_etype",
20127                 .field_bit_size = 16,
20128                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20129                 },
20130         .field_info_spec = {
20131                 .description = "l2_etype",
20132                 .field_bit_size = 16,
20133                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20134                 }
20135         },
20136         {
20137         .field_info_mask = {
20138                 .description = "l3.l3type",
20139                 .field_bit_size = 4,
20140                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20141                 },
20142         .field_info_spec = {
20143                 .description = "l3.l3type",
20144                 .field_bit_size = 4,
20145                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20146                 }
20147         },
20148         {
20149         .field_info_mask = {
20150                 .description = "l3.sip.ipv4",
20151                 .field_bit_size = 32,
20152                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20153                 },
20154         .field_info_spec = {
20155                 .description = "l3.sip.ipv4",
20156                 .field_bit_size = 32,
20157                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20158                 }
20159         },
20160         {
20161         .field_info_mask = {
20162                 .description = "l3.sip.ipv6",
20163                 .field_bit_size = 128,
20164                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20165                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
20166                 .field_opr1 = {
20167                 (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff,
20168                 BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff},
20169                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
20170                 .field_opr2 = {
20171                         (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff,
20172                         BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff},
20173                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20174                 },
20175         .field_info_spec = {
20176                 .description = "l3.sip.ipv6",
20177                 .field_bit_size = 128,
20178                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20179                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
20180                 .field_opr1 = {
20181                 (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff,
20182                 BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff},
20183                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
20184                 .field_opr2 = {
20185                         (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff,
20186                         BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff},
20187                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20188                 }
20189         },
20190         {
20191         .field_info_mask = {
20192                 .description = "l3.sip_selcmp.ipv6",
20193                 .field_bit_size = 72,
20194                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20195                 },
20196         .field_info_spec = {
20197                 .description = "l3.sip_selcmp.ipv6",
20198                 .field_bit_size = 72,
20199                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20200                 }
20201         },
20202         {
20203         .field_info_mask = {
20204                 .description = "l3.dip.ipv4",
20205                 .field_bit_size = 32,
20206                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20207                 },
20208         .field_info_spec = {
20209                 .description = "l3.dip.ipv4",
20210                 .field_bit_size = 32,
20211                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20212                 }
20213         },
20214         {
20215         .field_info_mask = {
20216                 .description = "l3.dip.ipv6",
20217                 .field_bit_size = 128,
20218                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20219                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
20220                 .field_opr1 = {
20221                 (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff,
20222                 BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff},
20223                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
20224                 .field_opr2 = {
20225                         (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff,
20226                         BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff},
20227                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20228                 },
20229         .field_info_spec = {
20230                 .description = "l3.dip.ipv6",
20231                 .field_bit_size = 128,
20232                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20233                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
20234                 .field_opr1 = {
20235                 (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff,
20236                 BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff},
20237                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
20238                 .field_opr2 = {
20239                         (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff,
20240                         BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff},
20241                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20242                 }
20243         },
20244         {
20245         .field_info_mask = {
20246                 .description = "l3.dip_selcmp.ipv6",
20247                 .field_bit_size = 72,
20248                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20249                 },
20250         .field_info_spec = {
20251                 .description = "l3.dip_selcmp.ipv6",
20252                 .field_bit_size = 72,
20253                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20254                 }
20255         },
20256         {
20257         .field_info_mask = {
20258                 .description = "l3.ttl",
20259                 .field_bit_size = 8,
20260                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20261                 },
20262         .field_info_spec = {
20263                 .description = "l3.ttl",
20264                 .field_bit_size = 8,
20265                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20266                 }
20267         },
20268         {
20269         .field_info_mask = {
20270                 .description = "l3.prot",
20271                 .field_bit_size = 8,
20272                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20273                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20274                 .field_opr1 = {
20275                         0xff}
20276                 },
20277         .field_info_spec = {
20278                 .description = "l3.prot",
20279                 .field_bit_size = 8,
20280                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20281                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
20282                 .field_opr1 = {
20283                 (BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID >> 8) & 0xff,
20284                 BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID & 0xff},
20285                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
20286                 .field_opr2 = {
20287                         (BNXT_ULP_CF_IDX_I_L3_PROTO_ID >> 8) & 0xff,
20288                         BNXT_ULP_CF_IDX_I_L3_PROTO_ID & 0xff},
20289                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20290                 }
20291         },
20292         {
20293         .field_info_mask = {
20294                 .description = "l3.fid.ipv4",
20295                 .field_bit_size = 16,
20296                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20297                 },
20298         .field_info_spec = {
20299                 .description = "l3.fid.ipv4",
20300                 .field_bit_size = 16,
20301                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20302                 }
20303         },
20304         {
20305         .field_info_mask = {
20306                 .description = "l3.fid.ipv6",
20307                 .field_bit_size = 20,
20308                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20309                 },
20310         .field_info_spec = {
20311                 .description = "l3.fid.ipv6",
20312                 .field_bit_size = 20,
20313                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20314                 }
20315         },
20316         {
20317         .field_info_mask = {
20318                 .description = "l3.qos",
20319                 .field_bit_size = 8,
20320                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20321                 },
20322         .field_info_spec = {
20323                 .description = "l3.qos",
20324                 .field_bit_size = 8,
20325                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20326                 }
20327         },
20328         {
20329         .field_info_mask = {
20330                 .description = "l3.ieh_nonext",
20331                 .field_bit_size = 1,
20332                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20333                 },
20334         .field_info_spec = {
20335                 .description = "l3.ieh_nonext",
20336                 .field_bit_size = 1,
20337                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20338                 }
20339         },
20340         {
20341         .field_info_mask = {
20342                 .description = "l3.ieh_esp",
20343                 .field_bit_size = 1,
20344                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20345                 },
20346         .field_info_spec = {
20347                 .description = "l3.ieh_esp",
20348                 .field_bit_size = 1,
20349                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20350                 }
20351         },
20352         {
20353         .field_info_mask = {
20354                 .description = "l3.ieh_auth",
20355                 .field_bit_size = 1,
20356                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20357                 },
20358         .field_info_spec = {
20359                 .description = "l3.ieh_auth",
20360                 .field_bit_size = 1,
20361                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20362                 }
20363         },
20364         {
20365         .field_info_mask = {
20366                 .description = "l3.ieh_dest",
20367                 .field_bit_size = 1,
20368                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20369                 },
20370         .field_info_spec = {
20371                 .description = "l3.ieh_dest",
20372                 .field_bit_size = 1,
20373                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20374                 }
20375         },
20376         {
20377         .field_info_mask = {
20378                 .description = "l3.ieh_frag",
20379                 .field_bit_size = 1,
20380                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20381                 },
20382         .field_info_spec = {
20383                 .description = "l3.ieh_frag",
20384                 .field_bit_size = 1,
20385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20386                 }
20387         },
20388         {
20389         .field_info_mask = {
20390                 .description = "l3.ieh_rthdr",
20391                 .field_bit_size = 1,
20392                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20393                 },
20394         .field_info_spec = {
20395                 .description = "l3.ieh_rthdr",
20396                 .field_bit_size = 1,
20397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20398                 }
20399         },
20400         {
20401         .field_info_mask = {
20402                 .description = "l3.ieh_hop",
20403                 .field_bit_size = 1,
20404                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20405                 },
20406         .field_info_spec = {
20407                 .description = "l3.ieh_hop",
20408                 .field_bit_size = 1,
20409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20410                 }
20411         },
20412         {
20413         .field_info_mask = {
20414                 .description = "l3.ieh_1frag",
20415                 .field_bit_size = 1,
20416                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20417                 },
20418         .field_info_spec = {
20419                 .description = "l3.ieh_1frag",
20420                 .field_bit_size = 1,
20421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20422                 }
20423         },
20424         {
20425         .field_info_mask = {
20426                 .description = "l3.df",
20427                 .field_bit_size = 1,
20428                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20429                 },
20430         .field_info_spec = {
20431                 .description = "l3.df",
20432                 .field_bit_size = 1,
20433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20434                 }
20435         },
20436         {
20437         .field_info_mask = {
20438                 .description = "l3.l3err.ipv4",
20439                 .field_bit_size = 4,
20440                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20441                 },
20442         .field_info_spec = {
20443                 .description = "l3.l3err.ipv4",
20444                 .field_bit_size = 4,
20445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20446                 }
20447         },
20448         {
20449         .field_info_mask = {
20450                 .description = "l3.l3err.ipv6",
20451                 .field_bit_size = 4,
20452                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20453                 },
20454         .field_info_spec = {
20455                 .description = "l3.l3err.ipv6",
20456                 .field_bit_size = 4,
20457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20458                 }
20459         },
20460         {
20461         .field_info_mask = {
20462                 .description = "l4.l4type",
20463                 .field_bit_size = 4,
20464                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20465                 },
20466         .field_info_spec = {
20467                 .description = "l4.l4type",
20468                 .field_bit_size = 4,
20469                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20470                 }
20471         },
20472         {
20473         .field_info_mask = {
20474                 .description = "l4.src",
20475                 .field_bit_size = 16,
20476                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20477                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20478                 .field_opr1 = {
20479                         0xff,
20480                         0xff}
20481                 },
20482         .field_info_spec = {
20483                 .description = "l4.src",
20484                 .field_bit_size = 16,
20485                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20486                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
20487                 .field_opr1 = {
20488                 (BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT >> 8) & 0xff,
20489                 BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff},
20490                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
20491                 .field_opr2 = {
20492                         (BNXT_ULP_CF_IDX_I_L4_SRC_PORT >> 8) & 0xff,
20493                         BNXT_ULP_CF_IDX_I_L4_SRC_PORT & 0xff},
20494                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20495                 }
20496         },
20497         {
20498         .field_info_mask = {
20499                 .description = "l4.dst",
20500                 .field_bit_size = 16,
20501                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20502                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20503                 .field_opr1 = {
20504                         0xff,
20505                         0xff}
20506                 },
20507         .field_info_spec = {
20508                 .description = "l4.dst",
20509                 .field_bit_size = 16,
20510                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
20511                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
20512                 .field_opr1 = {
20513                 (BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT >> 8) & 0xff,
20514                 BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff},
20515                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
20516                 .field_opr2 = {
20517                         (BNXT_ULP_CF_IDX_I_L4_DST_PORT >> 8) & 0xff,
20518                         BNXT_ULP_CF_IDX_I_L4_DST_PORT & 0xff},
20519                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
20520                 }
20521         },
20522         {
20523         .field_info_mask = {
20524                 .description = "l4.flags",
20525                 .field_bit_size = 9,
20526                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20527                 },
20528         .field_info_spec = {
20529                 .description = "l4.flags",
20530                 .field_bit_size = 9,
20531                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20532                 }
20533         },
20534         {
20535         .field_info_mask = {
20536                 .description = "l4.seq",
20537                 .field_bit_size = 32,
20538                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20539                 },
20540         .field_info_spec = {
20541                 .description = "l4.seq",
20542                 .field_bit_size = 32,
20543                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20544                 }
20545         },
20546         {
20547         .field_info_mask = {
20548                 .description = "l4.ack",
20549                 .field_bit_size = 32,
20550                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20551                 },
20552         .field_info_spec = {
20553                 .description = "l4.ack",
20554                 .field_bit_size = 32,
20555                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20556                 }
20557         },
20558         {
20559         .field_info_mask = {
20560                 .description = "l4.win",
20561                 .field_bit_size = 16,
20562                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20563                 },
20564         .field_info_spec = {
20565                 .description = "l4.win",
20566                 .field_bit_size = 16,
20567                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20568                 }
20569         },
20570         {
20571         .field_info_mask = {
20572                 .description = "l4.pa",
20573                 .field_bit_size = 1,
20574                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20575                 },
20576         .field_info_spec = {
20577                 .description = "l4.pa",
20578                 .field_bit_size = 1,
20579                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20580                 }
20581         },
20582         {
20583         .field_info_mask = {
20584                 .description = "l4.opt",
20585                 .field_bit_size = 1,
20586                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20587                 },
20588         .field_info_spec = {
20589                 .description = "l4.opt",
20590                 .field_bit_size = 1,
20591                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20592                 }
20593         },
20594         {
20595         .field_info_mask = {
20596                 .description = "l4.tcpts",
20597                 .field_bit_size = 1,
20598                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20599                 },
20600         .field_info_spec = {
20601                 .description = "l4.tcpts",
20602                 .field_bit_size = 1,
20603                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20604                 }
20605         },
20606         {
20607         .field_info_mask = {
20608                 .description = "l4.tsval",
20609                 .field_bit_size = 32,
20610                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20611                 },
20612         .field_info_spec = {
20613                 .description = "l4.tsval",
20614                 .field_bit_size = 32,
20615                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20616                 }
20617         },
20618         {
20619         .field_info_mask = {
20620                 .description = "l4.txecr",
20621                 .field_bit_size = 32,
20622                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20623                 },
20624         .field_info_spec = {
20625                 .description = "l4.txecr",
20626                 .field_bit_size = 32,
20627                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20628                 }
20629         },
20630         {
20631         .field_info_mask = {
20632                 .description = "l4.err",
20633                 .field_bit_size = 4,
20634                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20635                 },
20636         .field_info_spec = {
20637                 .description = "l4.err",
20638                 .field_bit_size = 4,
20639                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
20640                 }
20641         },
20642         /* class_tid: 2, , table: profile_tcam_cache.f2_rd */
20643         {
20644         .field_info_mask = {
20645                 .description = "recycle_cnt",
20646                 .field_bit_size = 2,
20647                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20648                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20649                 .field_opr1 = {
20650                         0xff}
20651                 },
20652         .field_info_spec = {
20653                 .description = "recycle_cnt",
20654                 .field_bit_size = 2,
20655                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20656                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20657                 }
20658         },
20659         {
20660         .field_info_mask = {
20661                 .description = "prof_func_id",
20662                 .field_bit_size = 7,
20663                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20664                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20665                 .field_opr1 = {
20666                         0xff}
20667                 },
20668         .field_info_spec = {
20669                 .description = "prof_func_id",
20670                 .field_bit_size = 7,
20671                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20672                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
20673                 .field_opr1 = {
20674                 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20675                 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
20676                 }
20677         },
20678         {
20679         .field_info_mask = {
20680                 .description = "hdr_sig_id",
20681                 .field_bit_size = 5,
20682                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20683                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20684                 .field_opr1 = {
20685                         0xff}
20686                 },
20687         .field_info_spec = {
20688                 .description = "hdr_sig_id",
20689                 .field_bit_size = 5,
20690                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20691                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
20692                 .field_opr1 = {
20693                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
20694                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
20695                 }
20696         },
20697         /* class_tid: 2, , table: profile_tcam.f2 */
20698         {
20699         .field_info_mask = {
20700                 .description = "l4_hdr_is_udp_tcp",
20701                 .field_bit_size = 1,
20702                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20703                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20704                 },
20705         .field_info_spec = {
20706                 .description = "l4_hdr_is_udp_tcp",
20707                 .field_bit_size = 1,
20708                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20709                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20710                 }
20711         },
20712         {
20713         .field_info_mask = {
20714                 .description = "l4_hdr_type",
20715                 .field_bit_size = 4,
20716                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20717                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20718                 },
20719         .field_info_spec = {
20720                 .description = "l4_hdr_type",
20721                 .field_bit_size = 4,
20722                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20723                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20724                 }
20725         },
20726         {
20727         .field_info_mask = {
20728                 .description = "l4_hdr_error",
20729                 .field_bit_size = 1,
20730                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20731                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20732                 },
20733         .field_info_spec = {
20734                 .description = "l4_hdr_error",
20735                 .field_bit_size = 1,
20736                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20737                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20738                 }
20739         },
20740         {
20741         .field_info_mask = {
20742                 .description = "l4_hdr_valid",
20743                 .field_bit_size = 1,
20744                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20745                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20746                 },
20747         .field_info_spec = {
20748                 .description = "l4_hdr_valid",
20749                 .field_bit_size = 1,
20750                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20751                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20752                 }
20753         },
20754         {
20755         .field_info_mask = {
20756                 .description = "ieh",
20757                 .field_bit_size = 8,
20758                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20759                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20760                 },
20761         .field_info_spec = {
20762                 .description = "ieh",
20763                 .field_bit_size = 8,
20764                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20765                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20766                 }
20767         },
20768         {
20769         .field_info_mask = {
20770                 .description = "l3_ipv6_cmp_dst",
20771                 .field_bit_size = 1,
20772                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20773                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20774                 },
20775         .field_info_spec = {
20776                 .description = "l3_ipv6_cmp_dst",
20777                 .field_bit_size = 1,
20778                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20779                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20780                 }
20781         },
20782         {
20783         .field_info_mask = {
20784                 .description = "l3_ipv6_cmp_src",
20785                 .field_bit_size = 1,
20786                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20787                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20788                 },
20789         .field_info_spec = {
20790                 .description = "l3_ipv6_cmp_src",
20791                 .field_bit_size = 1,
20792                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20793                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20794                 }
20795         },
20796         {
20797         .field_info_mask = {
20798                 .description = "l3_hdr_isIP",
20799                 .field_bit_size = 1,
20800                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20801                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20802                 },
20803         .field_info_spec = {
20804                 .description = "l3_hdr_isIP",
20805                 .field_bit_size = 1,
20806                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20807                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20808                 }
20809         },
20810         {
20811         .field_info_mask = {
20812                 .description = "l3_hdr_type",
20813                 .field_bit_size = 4,
20814                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20815                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20816                 .field_opr1 = {
20817                         0xff}
20818                 },
20819         .field_info_spec = {
20820                 .description = "l3_hdr_type",
20821                 .field_bit_size = 4,
20822                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20823                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20824                 }
20825         },
20826         {
20827         .field_info_mask = {
20828                 .description = "l3_hdr_error",
20829                 .field_bit_size = 1,
20830                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20831                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20832                 .field_opr1 = {
20833                         0xff}
20834                 },
20835         .field_info_spec = {
20836                 .description = "l3_hdr_error",
20837                 .field_bit_size = 1,
20838                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20839                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20840                 }
20841         },
20842         {
20843         .field_info_mask = {
20844                 .description = "l3_hdr_valid",
20845                 .field_bit_size = 1,
20846                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20847                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20848                 .field_opr1 = {
20849                         0xff}
20850                 },
20851         .field_info_spec = {
20852                 .description = "l3_hdr_valid",
20853                 .field_bit_size = 1,
20854                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20855                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
20856                 .field_opr1 = {
20857                 ULP_THOR_SYM_L3_HDR_VALID_YES}
20858                 }
20859         },
20860         {
20861         .field_info_mask = {
20862                 .description = "l2_two_vtags",
20863                 .field_bit_size = 1,
20864                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20865                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20866                 },
20867         .field_info_spec = {
20868                 .description = "l2_two_vtags",
20869                 .field_bit_size = 1,
20870                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20871                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20872                 }
20873         },
20874         {
20875         .field_info_mask = {
20876                 .description = "l2_vtag_present",
20877                 .field_bit_size = 1,
20878                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20879                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20880                 },
20881         .field_info_spec = {
20882                 .description = "l2_vtag_present",
20883                 .field_bit_size = 1,
20884                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20885                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20886                 }
20887         },
20888         {
20889         .field_info_mask = {
20890                 .description = "l2_uc_mc_bc",
20891                 .field_bit_size = 2,
20892                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20893                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20894                 },
20895         .field_info_spec = {
20896                 .description = "l2_uc_mc_bc",
20897                 .field_bit_size = 2,
20898                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20899                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20900                 }
20901         },
20902         {
20903         .field_info_mask = {
20904                 .description = "l2_hdr_type",
20905                 .field_bit_size = 2,
20906                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20907                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20908                 .field_opr1 = {
20909                         0xff}
20910                 },
20911         .field_info_spec = {
20912                 .description = "l2_hdr_type",
20913                 .field_bit_size = 2,
20914                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20915                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20916                 }
20917         },
20918         {
20919         .field_info_mask = {
20920                 .description = "l2_hdr_error",
20921                 .field_bit_size = 1,
20922                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20923                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20924                 .field_opr1 = {
20925                         0xff}
20926                 },
20927         .field_info_spec = {
20928                 .description = "l2_hdr_error",
20929                 .field_bit_size = 1,
20930                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20931                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20932                 }
20933         },
20934         {
20935         .field_info_mask = {
20936                 .description = "l2_hdr_valid",
20937                 .field_bit_size = 1,
20938                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20939                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20940                 .field_opr1 = {
20941                         0xff}
20942                 },
20943         .field_info_spec = {
20944                 .description = "l2_hdr_valid",
20945                 .field_bit_size = 1,
20946                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20947                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
20948                 .field_opr1 = {
20949                 ULP_THOR_SYM_L2_HDR_VALID_YES}
20950                 }
20951         },
20952         {
20953         .field_info_mask = {
20954                 .description = "tun_hdr_flags",
20955                 .field_bit_size = 3,
20956                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20957                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20958                 },
20959         .field_info_spec = {
20960                 .description = "tun_hdr_flags",
20961                 .field_bit_size = 3,
20962                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20963                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20964                 }
20965         },
20966         {
20967         .field_info_mask = {
20968                 .description = "tun_hdr_type",
20969                 .field_bit_size = 4,
20970                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20971                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20972                 .field_opr1 = {
20973                         0xff}
20974                 },
20975         .field_info_spec = {
20976                 .description = "tun_hdr_type",
20977                 .field_bit_size = 4,
20978                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20979                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20980                 }
20981         },
20982         {
20983         .field_info_mask = {
20984                 .description = "tun_hdr_err",
20985                 .field_bit_size = 1,
20986                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20987                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
20988                 .field_opr1 = {
20989                         0xff}
20990                 },
20991         .field_info_spec = {
20992                 .description = "tun_hdr_err",
20993                 .field_bit_size = 1,
20994                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
20995                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
20996                 }
20997         },
20998         {
20999         .field_info_mask = {
21000                 .description = "tun_hdr_valid",
21001                 .field_bit_size = 1,
21002                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21003                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21004                 .field_opr1 = {
21005                         0xff}
21006                 },
21007         .field_info_spec = {
21008                 .description = "tun_hdr_valid",
21009                 .field_bit_size = 1,
21010                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21011                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21012                 .field_opr1 = {
21013                 ULP_THOR_SYM_TUN_HDR_VALID_YES}
21014                 }
21015         },
21016         {
21017         .field_info_mask = {
21018                 .description = "tl4_hdr_is_udp_tcp",
21019                 .field_bit_size = 1,
21020                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21021                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21022                 },
21023         .field_info_spec = {
21024                 .description = "tl4_hdr_is_udp_tcp",
21025                 .field_bit_size = 1,
21026                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21027                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21028                 }
21029         },
21030         {
21031         .field_info_mask = {
21032                 .description = "tl4_hdr_type",
21033                 .field_bit_size = 4,
21034                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21035                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21036                 .field_opr1 = {
21037                         0xff}
21038                 },
21039         .field_info_spec = {
21040                 .description = "tl4_hdr_type",
21041                 .field_bit_size = 4,
21042                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21043                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21044                 .field_opr1 = {
21045                 ULP_THOR_SYM_TL4_HDR_TYPE_UDP}
21046                 }
21047         },
21048         {
21049         .field_info_mask = {
21050                 .description = "tl4_hdr_error",
21051                 .field_bit_size = 1,
21052                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21053                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21054                 .field_opr1 = {
21055                         0xff}
21056                 },
21057         .field_info_spec = {
21058                 .description = "tl4_hdr_error",
21059                 .field_bit_size = 1,
21060                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21061                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21062                 }
21063         },
21064         {
21065         .field_info_mask = {
21066                 .description = "tl4_hdr_valid",
21067                 .field_bit_size = 1,
21068                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21069                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21070                 .field_opr1 = {
21071                         0xff}
21072                 },
21073         .field_info_spec = {
21074                 .description = "tl4_hdr_valid",
21075                 .field_bit_size = 1,
21076                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21077                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21078                 .field_opr1 = {
21079                 ULP_THOR_SYM_TL4_HDR_VALID_YES}
21080                 }
21081         },
21082         {
21083         .field_info_mask = {
21084                 .description = "tl3_ipv6_cmp_dst",
21085                 .field_bit_size = 1,
21086                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21087                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21088                 },
21089         .field_info_spec = {
21090                 .description = "tl3_ipv6_cmp_dst",
21091                 .field_bit_size = 1,
21092                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21093                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21094                 }
21095         },
21096         {
21097         .field_info_mask = {
21098                 .description = "tl3_ipv6_cmp_src",
21099                 .field_bit_size = 1,
21100                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21101                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21102                 },
21103         .field_info_spec = {
21104                 .description = "tl3_ipv6_cmp_src",
21105                 .field_bit_size = 1,
21106                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21107                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21108                 }
21109         },
21110         {
21111         .field_info_mask = {
21112                 .description = "tl3_hdr_isIP",
21113                 .field_bit_size = 1,
21114                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21115                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21116                 },
21117         .field_info_spec = {
21118                 .description = "tl3_hdr_isIP",
21119                 .field_bit_size = 1,
21120                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21121                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21122                 }
21123         },
21124         {
21125         .field_info_mask = {
21126                 .description = "tl3_hdr_type",
21127                 .field_bit_size = 4,
21128                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21129                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21130                 .field_opr1 = {
21131                         0xff}
21132                 },
21133         .field_info_spec = {
21134                 .description = "tl3_hdr_type",
21135                 .field_bit_size = 4,
21136                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21137                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21138                 }
21139         },
21140         {
21141         .field_info_mask = {
21142                 .description = "tl3_hdr_error",
21143                 .field_bit_size = 1,
21144                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21145                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21146                 .field_opr1 = {
21147                         0xff}
21148                 },
21149         .field_info_spec = {
21150                 .description = "tl3_hdr_error",
21151                 .field_bit_size = 1,
21152                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21153                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21154                 }
21155         },
21156         {
21157         .field_info_mask = {
21158                 .description = "tl3_hdr_valid",
21159                 .field_bit_size = 1,
21160                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21161                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21162                 .field_opr1 = {
21163                         0xff}
21164                 },
21165         .field_info_spec = {
21166                 .description = "tl3_hdr_valid",
21167                 .field_bit_size = 1,
21168                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21169                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21170                 .field_opr1 = {
21171                 ULP_THOR_SYM_TL3_HDR_VALID_YES}
21172                 }
21173         },
21174         {
21175         .field_info_mask = {
21176                 .description = "tl2_two_vtags",
21177                 .field_bit_size = 1,
21178                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21179                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21180                 },
21181         .field_info_spec = {
21182                 .description = "tl2_two_vtags",
21183                 .field_bit_size = 1,
21184                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21185                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21186                 }
21187         },
21188         {
21189         .field_info_mask = {
21190                 .description = "tl2_vtag_present",
21191                 .field_bit_size = 1,
21192                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21193                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21194                 },
21195         .field_info_spec = {
21196                 .description = "tl2_vtag_present",
21197                 .field_bit_size = 1,
21198                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21199                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21200                 }
21201         },
21202         {
21203         .field_info_mask = {
21204                 .description = "tl2_uc_mc_bc",
21205                 .field_bit_size = 2,
21206                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21207                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21208                 .field_opr1 = {
21209                         0xff}
21210                 },
21211         .field_info_spec = {
21212                 .description = "tl2_uc_mc_bc",
21213                 .field_bit_size = 2,
21214                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21215                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21216                 }
21217         },
21218         {
21219         .field_info_mask = {
21220                 .description = "tl2_hdr_type",
21221                 .field_bit_size = 2,
21222                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21223                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21224                 },
21225         .field_info_spec = {
21226                 .description = "tl2_hdr_type",
21227                 .field_bit_size = 2,
21228                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21229                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21230                 }
21231         },
21232         {
21233         .field_info_mask = {
21234                 .description = "tl2_hdr_valid",
21235                 .field_bit_size = 1,
21236                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21237                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21238                 .field_opr1 = {
21239                         0xff}
21240                 },
21241         .field_info_spec = {
21242                 .description = "tl2_hdr_valid",
21243                 .field_bit_size = 1,
21244                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21245                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21246                 .field_opr1 = {
21247                 ULP_THOR_SYM_TL2_HDR_VALID_YES}
21248                 }
21249         },
21250         {
21251         .field_info_mask = {
21252                 .description = "hrec_next",
21253                 .field_bit_size = 1,
21254                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21255                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21256                 },
21257         .field_info_spec = {
21258                 .description = "hrec_next",
21259                 .field_bit_size = 1,
21260                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21261                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21262                 }
21263         },
21264         {
21265         .field_info_mask = {
21266                 .description = "prof_func_id",
21267                 .field_bit_size = 7,
21268                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21269                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21270                 .field_opr1 = {
21271                         0xff}
21272                 },
21273         .field_info_spec = {
21274                 .description = "prof_func_id",
21275                 .field_bit_size = 7,
21276                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21277                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
21278                 .field_opr1 = {
21279                 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21280                 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
21281                 }
21282         },
21283         {
21284         .field_info_mask = {
21285                 .description = "agg_error",
21286                 .field_bit_size = 1,
21287                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21288                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21289                 },
21290         .field_info_spec = {
21291                 .description = "agg_error",
21292                 .field_bit_size = 1,
21293                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21294                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21295                 }
21296         },
21297         {
21298         .field_info_mask = {
21299                 .description = "metadata",
21300                 .field_bit_size = 16,
21301                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21302                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21303                 },
21304         .field_info_spec = {
21305                 .description = "metadata",
21306                 .field_bit_size = 16,
21307                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21308                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21309                 }
21310         },
21311         {
21312         .field_info_mask = {
21313                 .description = "pkt_type_0",
21314                 .field_bit_size = 2,
21315                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21316                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21317                 },
21318         .field_info_spec = {
21319                 .description = "pkt_type_0",
21320                 .field_bit_size = 2,
21321                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21322                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21323                 }
21324         },
21325         {
21326         .field_info_mask = {
21327                 .description = "pkt_type_1",
21328                 .field_bit_size = 2,
21329                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21330                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21331                 },
21332         .field_info_spec = {
21333                 .description = "pkt_type_1",
21334                 .field_bit_size = 2,
21335                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21336                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21337                 }
21338         },
21339         {
21340         .field_info_mask = {
21341                 .description = "valid",
21342                 .field_bit_size = 1,
21343                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21344                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21345                 .field_opr1 = {
21346                 1}
21347                 },
21348         .field_info_spec = {
21349                 .description = "valid",
21350                 .field_bit_size = 1,
21351                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21352                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
21353                 .field_opr1 = {
21354                 1}
21355                 }
21356         },
21357         /* class_tid: 2, , table: profile_tcam_cache.f2_wr */
21358         {
21359         .field_info_mask = {
21360                 .description = "recycle_cnt",
21361                 .field_bit_size = 2,
21362                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21363                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21364                 .field_opr1 = {
21365                         0xff}
21366                 },
21367         .field_info_spec = {
21368                 .description = "recycle_cnt",
21369                 .field_bit_size = 2,
21370                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21371                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
21372                 }
21373         },
21374         {
21375         .field_info_mask = {
21376                 .description = "prof_func_id",
21377                 .field_bit_size = 7,
21378                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21379                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21380                 .field_opr1 = {
21381                         0xff}
21382                 },
21383         .field_info_spec = {
21384                 .description = "prof_func_id",
21385                 .field_bit_size = 7,
21386                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21387                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
21388                 .field_opr1 = {
21389                 (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21390                 BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
21391                 }
21392         },
21393         {
21394         .field_info_mask = {
21395                 .description = "hdr_sig_id",
21396                 .field_bit_size = 5,
21397                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21398                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21399                 .field_opr1 = {
21400                         0xff}
21401                 },
21402         .field_info_spec = {
21403                 .description = "hdr_sig_id",
21404                 .field_bit_size = 5,
21405                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21406                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
21407                 .field_opr1 = {
21408                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
21409                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
21410                 }
21411         },
21412         /* class_tid: 2, , table: wm.l3_l4.ipv4 */
21413         {
21414         .field_info_mask = {
21415                 .description = "wc_profile_id",
21416                 .field_bit_size = 8,
21417                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21418                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21419                 .field_opr1 = {
21420                         0xff}
21421                 },
21422         .field_info_spec = {
21423                 .description = "wc_profile_id",
21424                 .field_bit_size = 8,
21425                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21426                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
21427                 .field_opr1 = {
21428                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4 >> 8) & 0xff,
21429                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4 & 0xff}
21430                 }
21431         },
21432         {
21433         .field_info_mask = {
21434                 .description = "l2_cntxt_id",
21435                 .field_bit_size = 10,
21436                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21437                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
21438                 .field_opr1 = {
21439                         0xff,
21440                         0xff}
21441                 },
21442         .field_info_spec = {
21443                 .description = "l2_cntxt_id",
21444                 .field_bit_size = 10,
21445                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
21446                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
21447                 .field_opr1 = {
21448                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
21449                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
21450                 }
21451         },
21452         {
21453         .field_info_mask = {
21454                 .description = "parif",
21455                 .field_bit_size = 4,
21456                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21457                 },
21458         .field_info_spec = {
21459                 .description = "parif",
21460                 .field_bit_size = 4,
21461                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21462                 }
21463         },
21464         {
21465         .field_info_mask = {
21466                 .description = "spif",
21467                 .field_bit_size = 2,
21468                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21469                 },
21470         .field_info_spec = {
21471                 .description = "spif",
21472                 .field_bit_size = 2,
21473                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21474                 }
21475         },
21476         {
21477         .field_info_mask = {
21478                 .description = "svif",
21479                 .field_bit_size = 11,
21480                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21481                 },
21482         .field_info_spec = {
21483                 .description = "svif",
21484                 .field_bit_size = 11,
21485                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21486                 }
21487         },
21488         {
21489         .field_info_mask = {
21490                 .description = "lcos",
21491                 .field_bit_size = 3,
21492                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21493                 },
21494         .field_info_spec = {
21495                 .description = "lcos",
21496                 .field_bit_size = 3,
21497                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21498                 }
21499         },
21500         {
21501         .field_info_mask = {
21502                 .description = "meta",
21503                 .field_bit_size = 16,
21504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21505                 },
21506         .field_info_spec = {
21507                 .description = "meta",
21508                 .field_bit_size = 16,
21509                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21510                 }
21511         },
21512         {
21513         .field_info_mask = {
21514                 .description = "rcyc_cnt",
21515                 .field_bit_size = 2,
21516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21517                 },
21518         .field_info_spec = {
21519                 .description = "rcyc_cnt",
21520                 .field_bit_size = 2,
21521                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21522                 }
21523         },
21524         {
21525         .field_info_mask = {
21526                 .description = "loopback",
21527                 .field_bit_size = 1,
21528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21529                 },
21530         .field_info_spec = {
21531                 .description = "loopback",
21532                 .field_bit_size = 1,
21533                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21534                 }
21535         },
21536         {
21537         .field_info_mask = {
21538                 .description = "tl2_l2type",
21539                 .field_bit_size = 2,
21540                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21541                 },
21542         .field_info_spec = {
21543                 .description = "tl2_l2type",
21544                 .field_bit_size = 2,
21545                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21546                 }
21547         },
21548         {
21549         .field_info_mask = {
21550                 .description = "tl2_dmac",
21551                 .field_bit_size = 48,
21552                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21553                 },
21554         .field_info_spec = {
21555                 .description = "tl2_dmac",
21556                 .field_bit_size = 48,
21557                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21558                 }
21559         },
21560         {
21561         .field_info_mask = {
21562                 .description = "tl2_smac",
21563                 .field_bit_size = 48,
21564                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21565                 },
21566         .field_info_spec = {
21567                 .description = "tl2_smac",
21568                 .field_bit_size = 48,
21569                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21570                 }
21571         },
21572         {
21573         .field_info_mask = {
21574                 .description = "tl2_dt",
21575                 .field_bit_size = 2,
21576                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21577                 },
21578         .field_info_spec = {
21579                 .description = "tl2_dt",
21580                 .field_bit_size = 2,
21581                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21582                 }
21583         },
21584         {
21585         .field_info_mask = {
21586                 .description = "tl2_sa",
21587                 .field_bit_size = 1,
21588                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21589                 },
21590         .field_info_spec = {
21591                 .description = "tl2_sa",
21592                 .field_bit_size = 1,
21593                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21594                 }
21595         },
21596         {
21597         .field_info_mask = {
21598                 .description = "tl2_nvt",
21599                 .field_bit_size = 2,
21600                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21601                 },
21602         .field_info_spec = {
21603                 .description = "tl2_nvt",
21604                 .field_bit_size = 2,
21605                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21606                 }
21607         },
21608         {
21609         .field_info_mask = {
21610                 .description = "tl2_ovp",
21611                 .field_bit_size = 3,
21612                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21613                 },
21614         .field_info_spec = {
21615                 .description = "tl2_ovp",
21616                 .field_bit_size = 3,
21617                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21618                 }
21619         },
21620         {
21621         .field_info_mask = {
21622                 .description = "tl2_ovd",
21623                 .field_bit_size = 1,
21624                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21625                 },
21626         .field_info_spec = {
21627                 .description = "tl2_ovd",
21628                 .field_bit_size = 1,
21629                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21630                 }
21631         },
21632         {
21633         .field_info_mask = {
21634                 .description = "tl2_ovv",
21635                 .field_bit_size = 12,
21636                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21637                 },
21638         .field_info_spec = {
21639                 .description = "tl2_ovv",
21640                 .field_bit_size = 12,
21641                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21642                 }
21643         },
21644         {
21645         .field_info_mask = {
21646                 .description = "tl2_ovt",
21647                 .field_bit_size = 3,
21648                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21649                 },
21650         .field_info_spec = {
21651                 .description = "tl2_ovt",
21652                 .field_bit_size = 3,
21653                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21654                 }
21655         },
21656         {
21657         .field_info_mask = {
21658                 .description = "tl2_ivp",
21659                 .field_bit_size = 3,
21660                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21661                 },
21662         .field_info_spec = {
21663                 .description = "tl2_ivp",
21664                 .field_bit_size = 3,
21665                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21666                 }
21667         },
21668         {
21669         .field_info_mask = {
21670                 .description = "tl2_ivd",
21671                 .field_bit_size = 1,
21672                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21673                 },
21674         .field_info_spec = {
21675                 .description = "tl2_ivd",
21676                 .field_bit_size = 1,
21677                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21678                 }
21679         },
21680         {
21681         .field_info_mask = {
21682                 .description = "tl2_ivv",
21683                 .field_bit_size = 12,
21684                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21685                 },
21686         .field_info_spec = {
21687                 .description = "tl2_ivv",
21688                 .field_bit_size = 12,
21689                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21690                 }
21691         },
21692         {
21693         .field_info_mask = {
21694                 .description = "tl2_ivt",
21695                 .field_bit_size = 3,
21696                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21697                 },
21698         .field_info_spec = {
21699                 .description = "tl2_ivt",
21700                 .field_bit_size = 3,
21701                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21702                 }
21703         },
21704         {
21705         .field_info_mask = {
21706                 .description = "tl2_etype",
21707                 .field_bit_size = 16,
21708                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21709                 },
21710         .field_info_spec = {
21711                 .description = "tl2_etype",
21712                 .field_bit_size = 16,
21713                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21714                 }
21715         },
21716         {
21717         .field_info_mask = {
21718                 .description = "tl3.l3type",
21719                 .field_bit_size = 4,
21720                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21721                 },
21722         .field_info_spec = {
21723                 .description = "tl3.l3type",
21724                 .field_bit_size = 4,
21725                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21726                 }
21727         },
21728         {
21729         .field_info_mask = {
21730                 .description = "tl3.sip.ipv4",
21731                 .field_bit_size = 32,
21732                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21733                 },
21734         .field_info_spec = {
21735                 .description = "tl3.sip.ipv4",
21736                 .field_bit_size = 32,
21737                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21738                 }
21739         },
21740         {
21741         .field_info_mask = {
21742                 .description = "tl3.sip.ipv6",
21743                 .field_bit_size = 128,
21744                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21745                 },
21746         .field_info_spec = {
21747                 .description = "tl3.sip.ipv6",
21748                 .field_bit_size = 128,
21749                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21750                 }
21751         },
21752         {
21753         .field_info_mask = {
21754                 .description = "tl3.sip_selcmp.ipv6",
21755                 .field_bit_size = 72,
21756                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21757                 },
21758         .field_info_spec = {
21759                 .description = "tl3.sip_selcmp.ipv6",
21760                 .field_bit_size = 72,
21761                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21762                 }
21763         },
21764         {
21765         .field_info_mask = {
21766                 .description = "tl3.dip.ipv4",
21767                 .field_bit_size = 32,
21768                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21769                 },
21770         .field_info_spec = {
21771                 .description = "tl3.dip.ipv4",
21772                 .field_bit_size = 32,
21773                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21774                 }
21775         },
21776         {
21777         .field_info_mask = {
21778                 .description = "tl3.dip.ipv6",
21779                 .field_bit_size = 128,
21780                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21781                 },
21782         .field_info_spec = {
21783                 .description = "tl3.dip.ipv6",
21784                 .field_bit_size = 128,
21785                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21786                 }
21787         },
21788         {
21789         .field_info_mask = {
21790                 .description = "tl3.dip_selcmp.ipv6",
21791                 .field_bit_size = 72,
21792                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21793                 },
21794         .field_info_spec = {
21795                 .description = "tl3.dip_selcmp.ipv6",
21796                 .field_bit_size = 72,
21797                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21798                 }
21799         },
21800         {
21801         .field_info_mask = {
21802                 .description = "tl3.ttl",
21803                 .field_bit_size = 8,
21804                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21805                 },
21806         .field_info_spec = {
21807                 .description = "tl3.ttl",
21808                 .field_bit_size = 8,
21809                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21810                 }
21811         },
21812         {
21813         .field_info_mask = {
21814                 .description = "tl3.prot",
21815                 .field_bit_size = 8,
21816                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21817                 },
21818         .field_info_spec = {
21819                 .description = "tl3.prot",
21820                 .field_bit_size = 8,
21821                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21822                 }
21823         },
21824         {
21825         .field_info_mask = {
21826                 .description = "tl3.fid.ipv4",
21827                 .field_bit_size = 16,
21828                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21829                 },
21830         .field_info_spec = {
21831                 .description = "tl3.fid.ipv4",
21832                 .field_bit_size = 16,
21833                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21834                 }
21835         },
21836         {
21837         .field_info_mask = {
21838                 .description = "tl3.fid.ipv6",
21839                 .field_bit_size = 20,
21840                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21841                 },
21842         .field_info_spec = {
21843                 .description = "tl3.fid.ipv6",
21844                 .field_bit_size = 20,
21845                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21846                 }
21847         },
21848         {
21849         .field_info_mask = {
21850                 .description = "tl3.qos",
21851                 .field_bit_size = 8,
21852                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21853                 },
21854         .field_info_spec = {
21855                 .description = "tl3.qos",
21856                 .field_bit_size = 8,
21857                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21858                 }
21859         },
21860         {
21861         .field_info_mask = {
21862                 .description = "tl3.ieh_nonext",
21863                 .field_bit_size = 1,
21864                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21865                 },
21866         .field_info_spec = {
21867                 .description = "tl3.ieh_nonext",
21868                 .field_bit_size = 1,
21869                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21870                 }
21871         },
21872         {
21873         .field_info_mask = {
21874                 .description = "tl3.ieh_esp",
21875                 .field_bit_size = 1,
21876                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21877                 },
21878         .field_info_spec = {
21879                 .description = "tl3.ieh_esp",
21880                 .field_bit_size = 1,
21881                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21882                 }
21883         },
21884         {
21885         .field_info_mask = {
21886                 .description = "tl3.ieh_auth",
21887                 .field_bit_size = 1,
21888                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21889                 },
21890         .field_info_spec = {
21891                 .description = "tl3.ieh_auth",
21892                 .field_bit_size = 1,
21893                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21894                 }
21895         },
21896         {
21897         .field_info_mask = {
21898                 .description = "tl3.ieh_dest",
21899                 .field_bit_size = 1,
21900                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21901                 },
21902         .field_info_spec = {
21903                 .description = "tl3.ieh_dest",
21904                 .field_bit_size = 1,
21905                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21906                 }
21907         },
21908         {
21909         .field_info_mask = {
21910                 .description = "tl3.ieh_frag",
21911                 .field_bit_size = 1,
21912                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21913                 },
21914         .field_info_spec = {
21915                 .description = "tl3.ieh_frag",
21916                 .field_bit_size = 1,
21917                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21918                 }
21919         },
21920         {
21921         .field_info_mask = {
21922                 .description = "tl3.ieh_rthdr",
21923                 .field_bit_size = 1,
21924                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21925                 },
21926         .field_info_spec = {
21927                 .description = "tl3.ieh_rthdr",
21928                 .field_bit_size = 1,
21929                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21930                 }
21931         },
21932         {
21933         .field_info_mask = {
21934                 .description = "tl3.ieh_hop",
21935                 .field_bit_size = 1,
21936                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21937                 },
21938         .field_info_spec = {
21939                 .description = "tl3.ieh_hop",
21940                 .field_bit_size = 1,
21941                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21942                 }
21943         },
21944         {
21945         .field_info_mask = {
21946                 .description = "tl3.ieh_1frag",
21947                 .field_bit_size = 1,
21948                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21949                 },
21950         .field_info_spec = {
21951                 .description = "tl3.ieh_1frag",
21952                 .field_bit_size = 1,
21953                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21954                 }
21955         },
21956         {
21957         .field_info_mask = {
21958                 .description = "tl3.df",
21959                 .field_bit_size = 1,
21960                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21961                 },
21962         .field_info_spec = {
21963                 .description = "tl3.df",
21964                 .field_bit_size = 1,
21965                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21966                 }
21967         },
21968         {
21969         .field_info_mask = {
21970                 .description = "tl3.l3err",
21971                 .field_bit_size = 4,
21972                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21973                 },
21974         .field_info_spec = {
21975                 .description = "tl3.l3err",
21976                 .field_bit_size = 4,
21977                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21978                 }
21979         },
21980         {
21981         .field_info_mask = {
21982                 .description = "tl4.l4type",
21983                 .field_bit_size = 4,
21984                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21985                 },
21986         .field_info_spec = {
21987                 .description = "tl4.l4type",
21988                 .field_bit_size = 4,
21989                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21990                 }
21991         },
21992         {
21993         .field_info_mask = {
21994                 .description = "tl4.src",
21995                 .field_bit_size = 16,
21996                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
21997                 },
21998         .field_info_spec = {
21999                 .description = "tl4.src",
22000                 .field_bit_size = 16,
22001                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22002                 }
22003         },
22004         {
22005         .field_info_mask = {
22006                 .description = "tl4.dst",
22007                 .field_bit_size = 16,
22008                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22009                 },
22010         .field_info_spec = {
22011                 .description = "tl4.dst",
22012                 .field_bit_size = 16,
22013                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22014                 }
22015         },
22016         {
22017         .field_info_mask = {
22018                 .description = "tl4.flags",
22019                 .field_bit_size = 9,
22020                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22021                 },
22022         .field_info_spec = {
22023                 .description = "tl4.flags",
22024                 .field_bit_size = 9,
22025                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22026                 }
22027         },
22028         {
22029         .field_info_mask = {
22030                 .description = "tl4.seq",
22031                 .field_bit_size = 32,
22032                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22033                 },
22034         .field_info_spec = {
22035                 .description = "tl4.seq",
22036                 .field_bit_size = 32,
22037                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22038                 }
22039         },
22040         {
22041         .field_info_mask = {
22042                 .description = "tl4.pa",
22043                 .field_bit_size = 1,
22044                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22045                 },
22046         .field_info_spec = {
22047                 .description = "tl4.pa",
22048                 .field_bit_size = 1,
22049                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22050                 }
22051         },
22052         {
22053         .field_info_mask = {
22054                 .description = "tl4.opt",
22055                 .field_bit_size = 1,
22056                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22057                 },
22058         .field_info_spec = {
22059                 .description = "tl4.opt",
22060                 .field_bit_size = 1,
22061                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22062                 }
22063         },
22064         {
22065         .field_info_mask = {
22066                 .description = "tl4.tcpts",
22067                 .field_bit_size = 1,
22068                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22069                 },
22070         .field_info_spec = {
22071                 .description = "tl4.tcpts",
22072                 .field_bit_size = 1,
22073                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22074                 }
22075         },
22076         {
22077         .field_info_mask = {
22078                 .description = "tl4.err",
22079                 .field_bit_size = 4,
22080                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22081                 },
22082         .field_info_spec = {
22083                 .description = "tl4.err",
22084                 .field_bit_size = 4,
22085                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22086                 }
22087         },
22088         {
22089         .field_info_mask = {
22090                 .description = "tuntype",
22091                 .field_bit_size = 4,
22092                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22093                 },
22094         .field_info_spec = {
22095                 .description = "tuntype",
22096                 .field_bit_size = 4,
22097                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22098                 }
22099         },
22100         {
22101         .field_info_mask = {
22102                 .description = "tflags",
22103                 .field_bit_size = 3,
22104                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22105                 },
22106         .field_info_spec = {
22107                 .description = "tflags",
22108                 .field_bit_size = 3,
22109                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22110                 }
22111         },
22112         {
22113         .field_info_mask = {
22114                 .description = "tids",
22115                 .field_bit_size = 24,
22116                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22117                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22118                 .field_opr1 = {
22119                 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
22120                 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
22121                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22122                 .field_opr2 = {
22123                         (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
22124                         BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
22125                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22126                 },
22127         .field_info_spec = {
22128                 .description = "tids",
22129                 .field_bit_size = 24,
22130                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22131                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22132                 .field_opr1 = {
22133                 (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
22134                 BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
22135                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22136                 .field_opr2 = {
22137                         (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
22138                         BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff},
22139                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22140                 }
22141         },
22142         {
22143         .field_info_mask = {
22144                 .description = "tid",
22145                 .field_bit_size = 32,
22146                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22147                 },
22148         .field_info_spec = {
22149                 .description = "tid",
22150                 .field_bit_size = 32,
22151                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22152                 }
22153         },
22154         {
22155         .field_info_mask = {
22156                 .description = "tctxts",
22157                 .field_bit_size = 24,
22158                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22159                 },
22160         .field_info_spec = {
22161                 .description = "tctxts",
22162                 .field_bit_size = 24,
22163                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22164                 }
22165         },
22166         {
22167         .field_info_mask = {
22168                 .description = "tctxt",
22169                 .field_bit_size = 32,
22170                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22171                 },
22172         .field_info_spec = {
22173                 .description = "tctxt",
22174                 .field_bit_size = 32,
22175                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22176                 }
22177         },
22178         {
22179         .field_info_mask = {
22180                 .description = "tqos",
22181                 .field_bit_size = 3,
22182                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22183                 },
22184         .field_info_spec = {
22185                 .description = "tqos",
22186                 .field_bit_size = 3,
22187                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22188                 }
22189         },
22190         {
22191         .field_info_mask = {
22192                 .description = "terr",
22193                 .field_bit_size = 4,
22194                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22195                 },
22196         .field_info_spec = {
22197                 .description = "terr",
22198                 .field_bit_size = 4,
22199                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22200                 }
22201         },
22202         {
22203         .field_info_mask = {
22204                 .description = "l2_l2type",
22205                 .field_bit_size = 2,
22206                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22207                 },
22208         .field_info_spec = {
22209                 .description = "l2_l2type",
22210                 .field_bit_size = 2,
22211                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22212                 }
22213         },
22214         {
22215         .field_info_mask = {
22216                 .description = "l2_dmac",
22217                 .field_bit_size = 48,
22218                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22219                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
22220                 .field_opr1 = {
22221                 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
22222                 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
22223                 },
22224         .field_info_spec = {
22225                 .description = "l2_dmac",
22226                 .field_bit_size = 48,
22227                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22228                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
22229                 .field_opr1 = {
22230                 (BNXT_ULP_GLB_HF_ID_I_ETH_DMAC >> 8) & 0xff,
22231                 BNXT_ULP_GLB_HF_ID_I_ETH_DMAC & 0xff}
22232                 }
22233         },
22234         {
22235         .field_info_mask = {
22236                 .description = "l2_smac",
22237                 .field_bit_size = 48,
22238                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22239                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22240                 .field_opr1 = {
22241                 (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
22242                 BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
22243                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22244                 .field_opr2 = {
22245                         (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
22246                         BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
22247                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22248                 },
22249         .field_info_spec = {
22250                 .description = "l2_smac",
22251                 .field_bit_size = 48,
22252                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22253                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22254                 .field_opr1 = {
22255                 (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
22256                 BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
22257                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22258                 .field_opr2 = {
22259                         (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
22260                         BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff},
22261                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22262                 }
22263         },
22264         {
22265         .field_info_mask = {
22266                 .description = "l2_dt",
22267                 .field_bit_size = 2,
22268                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22269                 },
22270         .field_info_spec = {
22271                 .description = "l2_dt",
22272                 .field_bit_size = 2,
22273                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22274                 }
22275         },
22276         {
22277         .field_info_mask = {
22278                 .description = "l2_sa",
22279                 .field_bit_size = 1,
22280                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22281                 },
22282         .field_info_spec = {
22283                 .description = "l2_sa",
22284                 .field_bit_size = 1,
22285                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22286                 }
22287         },
22288         {
22289         .field_info_mask = {
22290                 .description = "l2_nvt",
22291                 .field_bit_size = 2,
22292                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22293                 },
22294         .field_info_spec = {
22295                 .description = "l2_nvt",
22296                 .field_bit_size = 2,
22297                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22298                 }
22299         },
22300         {
22301         .field_info_mask = {
22302                 .description = "l2_ovp",
22303                 .field_bit_size = 3,
22304                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22305                 },
22306         .field_info_spec = {
22307                 .description = "l2_ovp",
22308                 .field_bit_size = 3,
22309                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22310                 }
22311         },
22312         {
22313         .field_info_mask = {
22314                 .description = "l2_ovd",
22315                 .field_bit_size = 1,
22316                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22317                 },
22318         .field_info_spec = {
22319                 .description = "l2_ovd",
22320                 .field_bit_size = 1,
22321                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22322                 }
22323         },
22324         {
22325         .field_info_mask = {
22326                 .description = "l2_ovv",
22327                 .field_bit_size = 12,
22328                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22329                 },
22330         .field_info_spec = {
22331                 .description = "l2_ovv",
22332                 .field_bit_size = 12,
22333                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22334                 }
22335         },
22336         {
22337         .field_info_mask = {
22338                 .description = "l2_ovt",
22339                 .field_bit_size = 3,
22340                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22341                 },
22342         .field_info_spec = {
22343                 .description = "l2_ovt",
22344                 .field_bit_size = 3,
22345                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22346                 }
22347         },
22348         {
22349         .field_info_mask = {
22350                 .description = "l2_ivp",
22351                 .field_bit_size = 3,
22352                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22353                 },
22354         .field_info_spec = {
22355                 .description = "l2_ivp",
22356                 .field_bit_size = 3,
22357                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22358                 }
22359         },
22360         {
22361         .field_info_mask = {
22362                 .description = "l2_ivd",
22363                 .field_bit_size = 1,
22364                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22365                 },
22366         .field_info_spec = {
22367                 .description = "l2_ivd",
22368                 .field_bit_size = 1,
22369                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22370                 }
22371         },
22372         {
22373         .field_info_mask = {
22374                 .description = "l2_ivv",
22375                 .field_bit_size = 12,
22376                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22377                 },
22378         .field_info_spec = {
22379                 .description = "l2_ivv",
22380                 .field_bit_size = 12,
22381                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22382                 }
22383         },
22384         {
22385         .field_info_mask = {
22386                 .description = "l2_ivt",
22387                 .field_bit_size = 3,
22388                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22389                 },
22390         .field_info_spec = {
22391                 .description = "l2_ivt",
22392                 .field_bit_size = 3,
22393                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22394                 }
22395         },
22396         {
22397         .field_info_mask = {
22398                 .description = "l2_etype",
22399                 .field_bit_size = 16,
22400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22401                 },
22402         .field_info_spec = {
22403                 .description = "l2_etype",
22404                 .field_bit_size = 16,
22405                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22406                 }
22407         },
22408         {
22409         .field_info_mask = {
22410                 .description = "l3.l3type",
22411                 .field_bit_size = 4,
22412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22413                 },
22414         .field_info_spec = {
22415                 .description = "l3.l3type",
22416                 .field_bit_size = 4,
22417                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22418                 }
22419         },
22420         {
22421         .field_info_mask = {
22422                 .description = "l3.sip.ipv4",
22423                 .field_bit_size = 32,
22424                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22425                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22426                 .field_opr1 = {
22427                 (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff,
22428                 BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff},
22429                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22430                 .field_opr2 = {
22431                         (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff,
22432                         BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff},
22433                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22434                 },
22435         .field_info_spec = {
22436                 .description = "l3.sip.ipv4",
22437                 .field_bit_size = 32,
22438                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22439                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22440                 .field_opr1 = {
22441                 (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff,
22442                 BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff},
22443                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22444                 .field_opr2 = {
22445                         (BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR >> 8) & 0xff,
22446                         BNXT_ULP_GLB_HF_ID_I_IPV4_SRC_ADDR & 0xff},
22447                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22448                 }
22449         },
22450         {
22451         .field_info_mask = {
22452                 .description = "l3.sip.ipv6",
22453                 .field_bit_size = 128,
22454                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22455                 },
22456         .field_info_spec = {
22457                 .description = "l3.sip.ipv6",
22458                 .field_bit_size = 128,
22459                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22460                 }
22461         },
22462         {
22463         .field_info_mask = {
22464                 .description = "l3.sip_selcmp.ipv6",
22465                 .field_bit_size = 72,
22466                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22467                 },
22468         .field_info_spec = {
22469                 .description = "l3.sip_selcmp.ipv6",
22470                 .field_bit_size = 72,
22471                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22472                 }
22473         },
22474         {
22475         .field_info_mask = {
22476                 .description = "l3.dip.ipv4",
22477                 .field_bit_size = 32,
22478                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22479                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22480                 .field_opr1 = {
22481                 (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff,
22482                 BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff},
22483                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22484                 .field_opr2 = {
22485                         (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff,
22486                         BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff},
22487                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22488                 },
22489         .field_info_spec = {
22490                 .description = "l3.dip.ipv4",
22491                 .field_bit_size = 32,
22492                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22493                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
22494                 .field_opr1 = {
22495                 (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff,
22496                 BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff},
22497                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
22498                 .field_opr2 = {
22499                         (BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR >> 8) & 0xff,
22500                         BNXT_ULP_GLB_HF_ID_I_IPV4_DST_ADDR & 0xff},
22501                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22502                 }
22503         },
22504         {
22505         .field_info_mask = {
22506                 .description = "l3.dip.ipv6",
22507                 .field_bit_size = 128,
22508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22509                 },
22510         .field_info_spec = {
22511                 .description = "l3.dip.ipv6",
22512                 .field_bit_size = 128,
22513                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22514                 }
22515         },
22516         {
22517         .field_info_mask = {
22518                 .description = "l3.dip_selcmp.ipv6",
22519                 .field_bit_size = 72,
22520                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22521                 },
22522         .field_info_spec = {
22523                 .description = "l3.dip_selcmp.ipv6",
22524                 .field_bit_size = 72,
22525                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22526                 }
22527         },
22528         {
22529         .field_info_mask = {
22530                 .description = "l3.ttl",
22531                 .field_bit_size = 8,
22532                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22533                 },
22534         .field_info_spec = {
22535                 .description = "l3.ttl",
22536                 .field_bit_size = 8,
22537                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22538                 }
22539         },
22540         {
22541         .field_info_mask = {
22542                 .description = "l3.prot",
22543                 .field_bit_size = 8,
22544                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22545                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22546                 .field_opr1 = {
22547                 (BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID >> 8) & 0xff,
22548                 BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID & 0xff},
22549                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
22550                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22551                 },
22552         .field_info_spec = {
22553                 .description = "l3.prot",
22554                 .field_bit_size = 8,
22555                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22556                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22557                 .field_opr1 = {
22558                 (BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID >> 8) & 0xff,
22559                 BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID & 0xff},
22560                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
22561                 .field_opr2 = {
22562                         (BNXT_ULP_CF_IDX_I_L3_PROTO_ID >> 8) & 0xff,
22563                         BNXT_ULP_CF_IDX_I_L3_PROTO_ID & 0xff},
22564                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22565                 }
22566         },
22567         {
22568         .field_info_mask = {
22569                 .description = "l3.fid.ipv4",
22570                 .field_bit_size = 16,
22571                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22572                 },
22573         .field_info_spec = {
22574                 .description = "l3.fid.ipv4",
22575                 .field_bit_size = 16,
22576                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22577                 }
22578         },
22579         {
22580         .field_info_mask = {
22581                 .description = "l3.fid.ipv6",
22582                 .field_bit_size = 20,
22583                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22584                 },
22585         .field_info_spec = {
22586                 .description = "l3.fid.ipv6",
22587                 .field_bit_size = 20,
22588                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22589                 }
22590         },
22591         {
22592         .field_info_mask = {
22593                 .description = "l3.qos",
22594                 .field_bit_size = 8,
22595                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22596                 },
22597         .field_info_spec = {
22598                 .description = "l3.qos",
22599                 .field_bit_size = 8,
22600                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22601                 }
22602         },
22603         {
22604         .field_info_mask = {
22605                 .description = "l3.ieh_nonext",
22606                 .field_bit_size = 1,
22607                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22608                 },
22609         .field_info_spec = {
22610                 .description = "l3.ieh_nonext",
22611                 .field_bit_size = 1,
22612                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22613                 }
22614         },
22615         {
22616         .field_info_mask = {
22617                 .description = "l3.ieh_esp",
22618                 .field_bit_size = 1,
22619                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22620                 },
22621         .field_info_spec = {
22622                 .description = "l3.ieh_esp",
22623                 .field_bit_size = 1,
22624                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22625                 }
22626         },
22627         {
22628         .field_info_mask = {
22629                 .description = "l3.ieh_auth",
22630                 .field_bit_size = 1,
22631                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22632                 },
22633         .field_info_spec = {
22634                 .description = "l3.ieh_auth",
22635                 .field_bit_size = 1,
22636                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22637                 }
22638         },
22639         {
22640         .field_info_mask = {
22641                 .description = "l3.ieh_dest",
22642                 .field_bit_size = 1,
22643                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22644                 },
22645         .field_info_spec = {
22646                 .description = "l3.ieh_dest",
22647                 .field_bit_size = 1,
22648                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22649                 }
22650         },
22651         {
22652         .field_info_mask = {
22653                 .description = "l3.ieh_frag",
22654                 .field_bit_size = 1,
22655                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22656                 },
22657         .field_info_spec = {
22658                 .description = "l3.ieh_frag",
22659                 .field_bit_size = 1,
22660                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22661                 }
22662         },
22663         {
22664         .field_info_mask = {
22665                 .description = "l3.ieh_rthdr",
22666                 .field_bit_size = 1,
22667                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22668                 },
22669         .field_info_spec = {
22670                 .description = "l3.ieh_rthdr",
22671                 .field_bit_size = 1,
22672                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22673                 }
22674         },
22675         {
22676         .field_info_mask = {
22677                 .description = "l3.ieh_hop",
22678                 .field_bit_size = 1,
22679                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22680                 },
22681         .field_info_spec = {
22682                 .description = "l3.ieh_hop",
22683                 .field_bit_size = 1,
22684                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22685                 }
22686         },
22687         {
22688         .field_info_mask = {
22689                 .description = "l3.ieh_1frag",
22690                 .field_bit_size = 1,
22691                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22692                 },
22693         .field_info_spec = {
22694                 .description = "l3.ieh_1frag",
22695                 .field_bit_size = 1,
22696                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22697                 }
22698         },
22699         {
22700         .field_info_mask = {
22701                 .description = "l3.df",
22702                 .field_bit_size = 1,
22703                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22704                 },
22705         .field_info_spec = {
22706                 .description = "l3.df",
22707                 .field_bit_size = 1,
22708                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22709                 }
22710         },
22711         {
22712         .field_info_mask = {
22713                 .description = "l3.l3err.ipv4",
22714                 .field_bit_size = 4,
22715                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22716                 },
22717         .field_info_spec = {
22718                 .description = "l3.l3err.ipv4",
22719                 .field_bit_size = 4,
22720                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22721                 }
22722         },
22723         {
22724         .field_info_mask = {
22725                 .description = "l3.l3err.ipv6",
22726                 .field_bit_size = 4,
22727                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22728                 },
22729         .field_info_spec = {
22730                 .description = "l3.l3err.ipv6",
22731                 .field_bit_size = 4,
22732                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22733                 }
22734         },
22735         {
22736         .field_info_mask = {
22737                 .description = "l4.l4type",
22738                 .field_bit_size = 4,
22739                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22740                 },
22741         .field_info_spec = {
22742                 .description = "l4.l4type",
22743                 .field_bit_size = 4,
22744                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22745                 }
22746         },
22747         {
22748         .field_info_mask = {
22749                 .description = "l4.src",
22750                 .field_bit_size = 16,
22751                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22752                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22753                 .field_opr1 = {
22754                 (BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT >> 8) & 0xff,
22755                 BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff},
22756                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
22757                 .field_opr2 = {
22758                         (BNXT_ULP_CF_IDX_I_L4_SRC_PORT_MASK >> 8) & 0xff,
22759                         BNXT_ULP_CF_IDX_I_L4_SRC_PORT_MASK & 0xff},
22760                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22761                 },
22762         .field_info_spec = {
22763                 .description = "l4.src",
22764                 .field_bit_size = 16,
22765                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22766                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22767                 .field_opr1 = {
22768                 (BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT >> 8) & 0xff,
22769                 BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff},
22770                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
22771                 .field_opr2 = {
22772                         (BNXT_ULP_CF_IDX_I_L4_SRC_PORT >> 8) & 0xff,
22773                         BNXT_ULP_CF_IDX_I_L4_SRC_PORT & 0xff},
22774                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22775                 }
22776         },
22777         {
22778         .field_info_mask = {
22779                 .description = "l4.dst",
22780                 .field_bit_size = 16,
22781                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22782                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22783                 .field_opr1 = {
22784                 (BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT >> 8) & 0xff,
22785                 BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff},
22786                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
22787                 .field_opr2 = {
22788                         (BNXT_ULP_CF_IDX_I_L4_DST_PORT_MASK >> 8) & 0xff,
22789                         BNXT_ULP_CF_IDX_I_L4_DST_PORT_MASK & 0xff},
22790                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22791                 },
22792         .field_info_spec = {
22793                 .description = "l4.dst",
22794                 .field_bit_size = 16,
22795                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
22796                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22797                 .field_opr1 = {
22798                 (BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT >> 8) & 0xff,
22799                 BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff},
22800                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
22801                 .field_opr2 = {
22802                         (BNXT_ULP_CF_IDX_I_L4_DST_PORT >> 8) & 0xff,
22803                         BNXT_ULP_CF_IDX_I_L4_DST_PORT & 0xff},
22804                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
22805                 }
22806         },
22807         {
22808         .field_info_mask = {
22809                 .description = "l4.flags",
22810                 .field_bit_size = 9,
22811                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22812                 },
22813         .field_info_spec = {
22814                 .description = "l4.flags",
22815                 .field_bit_size = 9,
22816                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22817                 }
22818         },
22819         {
22820         .field_info_mask = {
22821                 .description = "l4.seq",
22822                 .field_bit_size = 32,
22823                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22824                 },
22825         .field_info_spec = {
22826                 .description = "l4.seq",
22827                 .field_bit_size = 32,
22828                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22829                 }
22830         },
22831         {
22832         .field_info_mask = {
22833                 .description = "l4.ack",
22834                 .field_bit_size = 32,
22835                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22836                 },
22837         .field_info_spec = {
22838                 .description = "l4.ack",
22839                 .field_bit_size = 32,
22840                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22841                 }
22842         },
22843         {
22844         .field_info_mask = {
22845                 .description = "l4.win",
22846                 .field_bit_size = 16,
22847                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22848                 },
22849         .field_info_spec = {
22850                 .description = "l4.win",
22851                 .field_bit_size = 16,
22852                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22853                 }
22854         },
22855         {
22856         .field_info_mask = {
22857                 .description = "l4.pa",
22858                 .field_bit_size = 1,
22859                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22860                 },
22861         .field_info_spec = {
22862                 .description = "l4.pa",
22863                 .field_bit_size = 1,
22864                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22865                 }
22866         },
22867         {
22868         .field_info_mask = {
22869                 .description = "l4.opt",
22870                 .field_bit_size = 1,
22871                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22872                 },
22873         .field_info_spec = {
22874                 .description = "l4.opt",
22875                 .field_bit_size = 1,
22876                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22877                 }
22878         },
22879         {
22880         .field_info_mask = {
22881                 .description = "l4.tcpts",
22882                 .field_bit_size = 1,
22883                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22884                 },
22885         .field_info_spec = {
22886                 .description = "l4.tcpts",
22887                 .field_bit_size = 1,
22888                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22889                 }
22890         },
22891         {
22892         .field_info_mask = {
22893                 .description = "l4.tsval",
22894                 .field_bit_size = 32,
22895                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22896                 },
22897         .field_info_spec = {
22898                 .description = "l4.tsval",
22899                 .field_bit_size = 32,
22900                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22901                 }
22902         },
22903         {
22904         .field_info_mask = {
22905                 .description = "l4.txecr",
22906                 .field_bit_size = 32,
22907                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22908                 },
22909         .field_info_spec = {
22910                 .description = "l4.txecr",
22911                 .field_bit_size = 32,
22912                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22913                 }
22914         },
22915         {
22916         .field_info_mask = {
22917                 .description = "l4.err",
22918                 .field_bit_size = 4,
22919                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22920                 },
22921         .field_info_spec = {
22922                 .description = "l4.err",
22923                 .field_bit_size = 4,
22924                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
22925                 }
22926         },
22927         /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
22928         {
22929         .field_info_mask = {
22930                 .description = "svif",
22931                 .field_bit_size = 8,
22932                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22933                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
22934                 .field_opr1 = {
22935                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
22936                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
22937                 },
22938         .field_info_spec = {
22939                 .description = "svif",
22940                 .field_bit_size = 8,
22941                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22942                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
22943                 .field_opr1 = {
22944                 (BNXT_ULP_GLB_HF_ID_SVIF_INDEX >> 8) & 0xff,
22945                 BNXT_ULP_GLB_HF_ID_SVIF_INDEX & 0xff}
22946                 }
22947         },
22948         /* class_tid: 3, , table: profile_tcam_cache.ipv6_rd */
22949         {
22950         .field_info_mask = {
22951                 .description = "recycle_cnt",
22952                 .field_bit_size = 2,
22953                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22954                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
22955                 },
22956         .field_info_spec = {
22957                 .description = "recycle_cnt",
22958                 .field_bit_size = 2,
22959                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22960                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
22961                 }
22962         },
22963         {
22964         .field_info_mask = {
22965                 .description = "prof_func_id",
22966                 .field_bit_size = 7,
22967                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22968                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
22969                 .field_opr1 = {
22970                         0xff}
22971                 },
22972         .field_info_spec = {
22973                 .description = "prof_func_id",
22974                 .field_bit_size = 7,
22975                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22976                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
22977                 .field_opr1 = {
22978                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22979                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
22980                 }
22981         },
22982         {
22983         .field_info_mask = {
22984                 .description = "hdr_sig_id",
22985                 .field_bit_size = 5,
22986                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22987                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
22988                 .field_opr1 = {
22989                         0xff}
22990                 },
22991         .field_info_spec = {
22992                 .description = "hdr_sig_id",
22993                 .field_bit_size = 5,
22994                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
22995                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
22996                 .field_opr1 = {
22997                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
22998                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
22999                 }
23000         },
23001         /* class_tid: 3, , table: profile_tcam.l2_l3_l4_v6_em */
23002         {
23003         .field_info_mask = {
23004                 .description = "l4_hdr_is_udp_tcp",
23005                 .field_bit_size = 1,
23006                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23007                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23008                 },
23009         .field_info_spec = {
23010                 .description = "l4_hdr_is_udp_tcp",
23011                 .field_bit_size = 1,
23012                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23013                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23014                 }
23015         },
23016         {
23017         .field_info_mask = {
23018                 .description = "l4_hdr_type",
23019                 .field_bit_size = 4,
23020                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
23021                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
23022                 .field_opr1 = {
23023                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
23024                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
23025                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
23026                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
23027                 },
23028         .field_info_spec = {
23029                 .description = "l4_hdr_type",
23030                 .field_bit_size = 4,
23031                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
23032                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
23033                 .field_opr1 = {
23034                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
23035                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
23036                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
23037                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
23038                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
23039                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
23040                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
23041                 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
23042                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
23043                 .field_opr2 = {
23044                         ULP_THOR_SYM_L4_HDR_TYPE_TCP},
23045                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
23046                 .field_opr3 = {
23047                 ULP_THOR_SYM_L4_HDR_TYPE_UDP}
23048                 }
23049         },
23050         {
23051         .field_info_mask = {
23052                 .description = "l4_hdr_error",
23053                 .field_bit_size = 1,
23054                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23055                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
23056                 .field_opr1 = {
23057                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
23058                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
23059                 },
23060         .field_info_spec = {
23061                 .description = "l4_hdr_error",
23062                 .field_bit_size = 1,
23063                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23064                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23065                 }
23066         },
23067         {
23068         .field_info_mask = {
23069                 .description = "l4_hdr_valid",
23070                 .field_bit_size = 1,
23071                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23072                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
23073                 .field_opr1 = {
23074                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
23075                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
23076                 },
23077         .field_info_spec = {
23078                 .description = "l4_hdr_valid",
23079                 .field_bit_size = 1,
23080                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23081                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
23082                 .field_opr1 = {
23083                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
23084                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
23085                 }
23086         },
23087         {
23088         .field_info_mask = {
23089                 .description = "ieh",
23090                 .field_bit_size = 8,
23091                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23092                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23093                 },
23094         .field_info_spec = {
23095                 .description = "ieh",
23096                 .field_bit_size = 8,
23097                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23098                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23099                 }
23100         },
23101         {
23102         .field_info_mask = {
23103                 .description = "l3_ipv6_cmp_dst",
23104                 .field_bit_size = 1,
23105                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23106                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23107                 },
23108         .field_info_spec = {
23109                 .description = "l3_ipv6_cmp_dst",
23110                 .field_bit_size = 1,
23111                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23112                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23113                 }
23114         },
23115         {
23116         .field_info_mask = {
23117                 .description = "l3_ipv6_cmp_src",
23118                 .field_bit_size = 1,
23119                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23120                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23121                 },
23122         .field_info_spec = {
23123                 .description = "l3_ipv6_cmp_src",
23124                 .field_bit_size = 1,
23125                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23126                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23127                 }
23128         },
23129         {
23130         .field_info_mask = {
23131                 .description = "l3_hdr_isIP",
23132                 .field_bit_size = 1,
23133                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23134                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23135                 },
23136         .field_info_spec = {
23137                 .description = "l3_hdr_isIP",
23138                 .field_bit_size = 1,
23139                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23140                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23141                 }
23142         },
23143         {
23144         .field_info_mask = {
23145                 .description = "l3_hdr_type",
23146                 .field_bit_size = 4,
23147                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23148                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23149                 .field_opr1 = {
23150                         0xff}
23151                 },
23152         .field_info_spec = {
23153                 .description = "l3_hdr_type",
23154                 .field_bit_size = 4,
23155                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23156                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
23157                 .field_opr1 = {
23158                 ULP_THOR_SYM_L3_HDR_TYPE_IPV6}
23159                 }
23160         },
23161         {
23162         .field_info_mask = {
23163                 .description = "l3_hdr_error",
23164                 .field_bit_size = 1,
23165                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23166                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23167                 .field_opr1 = {
23168                         0xff}
23169                 },
23170         .field_info_spec = {
23171                 .description = "l3_hdr_error",
23172                 .field_bit_size = 1,
23173                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23174                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23175                 }
23176         },
23177         {
23178         .field_info_mask = {
23179                 .description = "l3_hdr_valid",
23180                 .field_bit_size = 1,
23181                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23182                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23183                 .field_opr1 = {
23184                         0xff}
23185                 },
23186         .field_info_spec = {
23187                 .description = "l3_hdr_valid",
23188                 .field_bit_size = 1,
23189                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23190                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
23191                 .field_opr1 = {
23192                 ULP_THOR_SYM_L3_HDR_VALID_YES}
23193                 }
23194         },
23195         {
23196         .field_info_mask = {
23197                 .description = "l2_two_vtags",
23198                 .field_bit_size = 1,
23199                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23200                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23201                 },
23202         .field_info_spec = {
23203                 .description = "l2_two_vtags",
23204                 .field_bit_size = 1,
23205                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23206                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23207                 }
23208         },
23209         {
23210         .field_info_mask = {
23211                 .description = "l2_vtag_present",
23212                 .field_bit_size = 1,
23213                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23214                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23215                 .field_opr1 = {
23216                         0xff}
23217                 },
23218         .field_info_spec = {
23219                 .description = "l2_vtag_present",
23220                 .field_bit_size = 1,
23221                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
23222                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
23223                 .field_opr1 = {
23224                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
23225                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
23226                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
23227                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
23228                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
23229                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
23230                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
23231                 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
23232                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
23233                 .field_opr2 = {
23234                         ULP_THOR_SYM_L2_VTAG_PRESENT_YES},
23235                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
23236                 .field_opr3 = {
23237                 ULP_THOR_SYM_L2_VTAG_PRESENT_NO}
23238                 }
23239         },
23240         {
23241         .field_info_mask = {
23242                 .description = "l2_uc_mc_bc",
23243                 .field_bit_size = 2,
23244                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23245                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23246                 .field_opr1 = {
23247                         0xff}
23248                 },
23249         .field_info_spec = {
23250                 .description = "l2_uc_mc_bc",
23251                 .field_bit_size = 2,
23252                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23253                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23254                 }
23255         },
23256         {
23257         .field_info_mask = {
23258                 .description = "l2_hdr_type",
23259                 .field_bit_size = 2,
23260                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23261                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23262                 .field_opr1 = {
23263                         0xff}
23264                 },
23265         .field_info_spec = {
23266                 .description = "l2_hdr_type",
23267                 .field_bit_size = 2,
23268                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23269                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23270                 }
23271         },
23272         {
23273         .field_info_mask = {
23274                 .description = "l2_hdr_error",
23275                 .field_bit_size = 1,
23276                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23277                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23278                 .field_opr1 = {
23279                         0xff}
23280                 },
23281         .field_info_spec = {
23282                 .description = "l2_hdr_error",
23283                 .field_bit_size = 1,
23284                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23285                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23286                 }
23287         },
23288         {
23289         .field_info_mask = {
23290                 .description = "l2_hdr_valid",
23291                 .field_bit_size = 1,
23292                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23293                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23294                 .field_opr1 = {
23295                         0xff}
23296                 },
23297         .field_info_spec = {
23298                 .description = "l2_hdr_valid",
23299                 .field_bit_size = 1,
23300                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23301                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
23302                 .field_opr1 = {
23303                 ULP_THOR_SYM_L2_HDR_VALID_YES}
23304                 }
23305         },
23306         {
23307         .field_info_mask = {
23308                 .description = "tun_hdr_flags",
23309                 .field_bit_size = 3,
23310                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23311                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23312                 },
23313         .field_info_spec = {
23314                 .description = "tun_hdr_flags",
23315                 .field_bit_size = 3,
23316                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23317                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23318                 }
23319         },
23320         {
23321         .field_info_mask = {
23322                 .description = "tun_hdr_type",
23323                 .field_bit_size = 4,
23324                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23325                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23326                 },
23327         .field_info_spec = {
23328                 .description = "tun_hdr_type",
23329                 .field_bit_size = 4,
23330                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23331                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23332                 }
23333         },
23334         {
23335         .field_info_mask = {
23336                 .description = "tun_hdr_err",
23337                 .field_bit_size = 1,
23338                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23339                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23340                 },
23341         .field_info_spec = {
23342                 .description = "tun_hdr_err",
23343                 .field_bit_size = 1,
23344                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23345                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23346                 }
23347         },
23348         {
23349         .field_info_mask = {
23350                 .description = "tun_hdr_valid",
23351                 .field_bit_size = 1,
23352                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23353                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23354                 .field_opr1 = {
23355                         0xff}
23356                 },
23357         .field_info_spec = {
23358                 .description = "tun_hdr_valid",
23359                 .field_bit_size = 1,
23360                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23361                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23362                 }
23363         },
23364         {
23365         .field_info_mask = {
23366                 .description = "tl4_hdr_is_udp_tcp",
23367                 .field_bit_size = 1,
23368                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23369                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23370                 },
23371         .field_info_spec = {
23372                 .description = "tl4_hdr_is_udp_tcp",
23373                 .field_bit_size = 1,
23374                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23375                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23376                 }
23377         },
23378         {
23379         .field_info_mask = {
23380                 .description = "tl4_hdr_type",
23381                 .field_bit_size = 4,
23382                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23383                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23384                 },
23385         .field_info_spec = {
23386                 .description = "tl4_hdr_type",
23387                 .field_bit_size = 4,
23388                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23389                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23390                 }
23391         },
23392         {
23393         .field_info_mask = {
23394                 .description = "tl4_hdr_error",
23395                 .field_bit_size = 1,
23396                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23397                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23398                 },
23399         .field_info_spec = {
23400                 .description = "tl4_hdr_error",
23401                 .field_bit_size = 1,
23402                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23403                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23404                 }
23405         },
23406         {
23407         .field_info_mask = {
23408                 .description = "tl4_hdr_valid",
23409                 .field_bit_size = 1,
23410                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23411                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23412                 .field_opr1 = {
23413                         0xff}
23414                 },
23415         .field_info_spec = {
23416                 .description = "tl4_hdr_valid",
23417                 .field_bit_size = 1,
23418                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23419                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23420                 }
23421         },
23422         {
23423         .field_info_mask = {
23424                 .description = "tl3_ipv6_cmp_dst",
23425                 .field_bit_size = 1,
23426                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23427                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23428                 },
23429         .field_info_spec = {
23430                 .description = "tl3_ipv6_cmp_dst",
23431                 .field_bit_size = 1,
23432                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23433                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23434                 }
23435         },
23436         {
23437         .field_info_mask = {
23438                 .description = "tl3_ipv6_cmp_src",
23439                 .field_bit_size = 1,
23440                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23441                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23442                 },
23443         .field_info_spec = {
23444                 .description = "tl3_ipv6_cmp_src",
23445                 .field_bit_size = 1,
23446                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23447                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23448                 }
23449         },
23450         {
23451         .field_info_mask = {
23452                 .description = "tl3_hdr_isIP",
23453                 .field_bit_size = 1,
23454                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23455                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23456                 },
23457         .field_info_spec = {
23458                 .description = "tl3_hdr_isIP",
23459                 .field_bit_size = 1,
23460                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23461                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23462                 }
23463         },
23464         {
23465         .field_info_mask = {
23466                 .description = "tl3_hdr_type",
23467                 .field_bit_size = 4,
23468                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23469                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23470                 },
23471         .field_info_spec = {
23472                 .description = "tl3_hdr_type",
23473                 .field_bit_size = 4,
23474                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23475                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23476                 }
23477         },
23478         {
23479         .field_info_mask = {
23480                 .description = "tl3_hdr_error",
23481                 .field_bit_size = 1,
23482                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23483                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23484                 },
23485         .field_info_spec = {
23486                 .description = "tl3_hdr_error",
23487                 .field_bit_size = 1,
23488                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23489                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23490                 }
23491         },
23492         {
23493         .field_info_mask = {
23494                 .description = "tl3_hdr_valid",
23495                 .field_bit_size = 1,
23496                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23497                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23498                 .field_opr1 = {
23499                         0xff}
23500                 },
23501         .field_info_spec = {
23502                 .description = "tl3_hdr_valid",
23503                 .field_bit_size = 1,
23504                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23505                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23506                 }
23507         },
23508         {
23509         .field_info_mask = {
23510                 .description = "tl2_two_vtags",
23511                 .field_bit_size = 1,
23512                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23513                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23514                 },
23515         .field_info_spec = {
23516                 .description = "tl2_two_vtags",
23517                 .field_bit_size = 1,
23518                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23519                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23520                 }
23521         },
23522         {
23523         .field_info_mask = {
23524                 .description = "tl2_vtag_present",
23525                 .field_bit_size = 1,
23526                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23527                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23528                 },
23529         .field_info_spec = {
23530                 .description = "tl2_vtag_present",
23531                 .field_bit_size = 1,
23532                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23533                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23534                 }
23535         },
23536         {
23537         .field_info_mask = {
23538                 .description = "tl2_uc_mc_bc",
23539                 .field_bit_size = 2,
23540                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23541                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23542                 },
23543         .field_info_spec = {
23544                 .description = "tl2_uc_mc_bc",
23545                 .field_bit_size = 2,
23546                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23547                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23548                 }
23549         },
23550         {
23551         .field_info_mask = {
23552                 .description = "tl2_hdr_type",
23553                 .field_bit_size = 2,
23554                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23555                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23556                 },
23557         .field_info_spec = {
23558                 .description = "tl2_hdr_type",
23559                 .field_bit_size = 2,
23560                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23561                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23562                 }
23563         },
23564         {
23565         .field_info_mask = {
23566                 .description = "tl2_hdr_valid",
23567                 .field_bit_size = 1,
23568                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23569                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23570                 .field_opr1 = {
23571                         0xff}
23572                 },
23573         .field_info_spec = {
23574                 .description = "tl2_hdr_valid",
23575                 .field_bit_size = 1,
23576                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23577                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23578                 }
23579         },
23580         {
23581         .field_info_mask = {
23582                 .description = "hrec_next",
23583                 .field_bit_size = 1,
23584                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23585                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23586                 },
23587         .field_info_spec = {
23588                 .description = "hrec_next",
23589                 .field_bit_size = 1,
23590                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23591                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23592                 }
23593         },
23594         {
23595         .field_info_mask = {
23596                 .description = "prof_func_id",
23597                 .field_bit_size = 7,
23598                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23599                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23600                 .field_opr1 = {
23601                         0xff}
23602                 },
23603         .field_info_spec = {
23604                 .description = "prof_func_id",
23605                 .field_bit_size = 7,
23606                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23607                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
23608                 .field_opr1 = {
23609                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
23610                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
23611                 }
23612         },
23613         {
23614         .field_info_mask = {
23615                 .description = "agg_error",
23616                 .field_bit_size = 1,
23617                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23618                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23619                 },
23620         .field_info_spec = {
23621                 .description = "agg_error",
23622                 .field_bit_size = 1,
23623                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23624                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23625                 }
23626         },
23627         {
23628         .field_info_mask = {
23629                 .description = "metadata",
23630                 .field_bit_size = 16,
23631                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23632                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23633                 },
23634         .field_info_spec = {
23635                 .description = "metadata",
23636                 .field_bit_size = 16,
23637                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23638                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23639                 }
23640         },
23641         {
23642         .field_info_mask = {
23643                 .description = "pkt_type_0",
23644                 .field_bit_size = 2,
23645                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23646                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23647                 },
23648         .field_info_spec = {
23649                 .description = "pkt_type_0",
23650                 .field_bit_size = 2,
23651                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23652                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23653                 }
23654         },
23655         {
23656         .field_info_mask = {
23657                 .description = "pkt_type_1",
23658                 .field_bit_size = 2,
23659                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23660                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23661                 },
23662         .field_info_spec = {
23663                 .description = "pkt_type_1",
23664                 .field_bit_size = 2,
23665                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23666                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23667                 }
23668         },
23669         {
23670         .field_info_mask = {
23671                 .description = "valid",
23672                 .field_bit_size = 1,
23673                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23674                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
23675                 .field_opr1 = {
23676                 1}
23677                 },
23678         .field_info_spec = {
23679                 .description = "valid",
23680                 .field_bit_size = 1,
23681                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23682                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
23683                 .field_opr1 = {
23684                 1}
23685                 }
23686         },
23687         /* class_tid: 3, , table: profile_tcam_cache.l2_l3_l4_v6_wr */
23688         {
23689         .field_info_mask = {
23690                 .description = "recycle_cnt",
23691                 .field_bit_size = 2,
23692                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23693                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23694                 },
23695         .field_info_spec = {
23696                 .description = "recycle_cnt",
23697                 .field_bit_size = 2,
23698                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23699                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
23700                 }
23701         },
23702         {
23703         .field_info_mask = {
23704                 .description = "prof_func_id",
23705                 .field_bit_size = 7,
23706                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23707                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23708                 .field_opr1 = {
23709                         0xff}
23710                 },
23711         .field_info_spec = {
23712                 .description = "prof_func_id",
23713                 .field_bit_size = 7,
23714                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23715                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
23716                 .field_opr1 = {
23717                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
23718                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
23719                 }
23720         },
23721         {
23722         .field_info_mask = {
23723                 .description = "hdr_sig_id",
23724                 .field_bit_size = 5,
23725                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23726                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23727                 .field_opr1 = {
23728                         0xff}
23729                 },
23730         .field_info_spec = {
23731                 .description = "hdr_sig_id",
23732                 .field_bit_size = 5,
23733                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23734                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
23735                 .field_opr1 = {
23736                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
23737                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
23738                 }
23739         },
23740         /* class_tid: 3, , table: em.l2_l3_l4_v6.0 */
23741         {
23742         .field_info_mask = {
23743                 .description = "em_profile_id",
23744                 .field_bit_size = 8,
23745                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23746                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23747                 .field_opr1 = {
23748                         0xff}
23749                 },
23750         .field_info_spec = {
23751                 .description = "em_profile_id",
23752                 .field_bit_size = 8,
23753                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23754                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
23755                 .field_opr1 = {
23756                 (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
23757                 BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
23758                 }
23759         },
23760         {
23761         .field_info_mask = {
23762                 .description = "l2_cntxt_id",
23763                 .field_bit_size = 10,
23764                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23765                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
23766                 .field_opr1 = {
23767                         0xff,
23768                         0xff}
23769                 },
23770         .field_info_spec = {
23771                 .description = "l2_cntxt_id",
23772                 .field_bit_size = 10,
23773                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
23774                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
23775                 .field_opr1 = {
23776                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
23777                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
23778                 }
23779         },
23780         {
23781         .field_info_mask = {
23782                 .description = "parif",
23783                 .field_bit_size = 4,
23784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23785                 },
23786         .field_info_spec = {
23787                 .description = "parif",
23788                 .field_bit_size = 4,
23789                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23790                 }
23791         },
23792         {
23793         .field_info_mask = {
23794                 .description = "spif",
23795                 .field_bit_size = 2,
23796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23797                 },
23798         .field_info_spec = {
23799                 .description = "spif",
23800                 .field_bit_size = 2,
23801                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23802                 }
23803         },
23804         {
23805         .field_info_mask = {
23806                 .description = "svif",
23807                 .field_bit_size = 11,
23808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23809                 },
23810         .field_info_spec = {
23811                 .description = "svif",
23812                 .field_bit_size = 11,
23813                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23814                 }
23815         },
23816         {
23817         .field_info_mask = {
23818                 .description = "lcos",
23819                 .field_bit_size = 3,
23820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23821                 },
23822         .field_info_spec = {
23823                 .description = "lcos",
23824                 .field_bit_size = 3,
23825                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23826                 }
23827         },
23828         {
23829         .field_info_mask = {
23830                 .description = "meta",
23831                 .field_bit_size = 16,
23832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23833                 },
23834         .field_info_spec = {
23835                 .description = "meta",
23836                 .field_bit_size = 16,
23837                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23838                 }
23839         },
23840         {
23841         .field_info_mask = {
23842                 .description = "rcyc_cnt",
23843                 .field_bit_size = 2,
23844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23845                 },
23846         .field_info_spec = {
23847                 .description = "rcyc_cnt",
23848                 .field_bit_size = 2,
23849                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23850                 }
23851         },
23852         {
23853         .field_info_mask = {
23854                 .description = "loopback",
23855                 .field_bit_size = 1,
23856                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23857                 },
23858         .field_info_spec = {
23859                 .description = "loopback",
23860                 .field_bit_size = 1,
23861                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23862                 }
23863         },
23864         {
23865         .field_info_mask = {
23866                 .description = "tl2_l2type",
23867                 .field_bit_size = 2,
23868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23869                 },
23870         .field_info_spec = {
23871                 .description = "tl2_l2type",
23872                 .field_bit_size = 2,
23873                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23874                 }
23875         },
23876         {
23877         .field_info_mask = {
23878                 .description = "tl2_dmac",
23879                 .field_bit_size = 48,
23880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23881                 },
23882         .field_info_spec = {
23883                 .description = "tl2_dmac",
23884                 .field_bit_size = 48,
23885                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23886                 }
23887         },
23888         {
23889         .field_info_mask = {
23890                 .description = "tl2_smac",
23891                 .field_bit_size = 48,
23892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23893                 },
23894         .field_info_spec = {
23895                 .description = "tl2_smac",
23896                 .field_bit_size = 48,
23897                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23898                 }
23899         },
23900         {
23901         .field_info_mask = {
23902                 .description = "tl2_dt",
23903                 .field_bit_size = 2,
23904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23905                 },
23906         .field_info_spec = {
23907                 .description = "tl2_dt",
23908                 .field_bit_size = 2,
23909                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23910                 }
23911         },
23912         {
23913         .field_info_mask = {
23914                 .description = "tl2_sa",
23915                 .field_bit_size = 1,
23916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23917                 },
23918         .field_info_spec = {
23919                 .description = "tl2_sa",
23920                 .field_bit_size = 1,
23921                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23922                 }
23923         },
23924         {
23925         .field_info_mask = {
23926                 .description = "tl2_nvt",
23927                 .field_bit_size = 2,
23928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23929                 },
23930         .field_info_spec = {
23931                 .description = "tl2_nvt",
23932                 .field_bit_size = 2,
23933                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23934                 }
23935         },
23936         {
23937         .field_info_mask = {
23938                 .description = "tl2_ovp",
23939                 .field_bit_size = 3,
23940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23941                 },
23942         .field_info_spec = {
23943                 .description = "tl2_ovp",
23944                 .field_bit_size = 3,
23945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23946                 }
23947         },
23948         {
23949         .field_info_mask = {
23950                 .description = "tl2_ovd",
23951                 .field_bit_size = 1,
23952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23953                 },
23954         .field_info_spec = {
23955                 .description = "tl2_ovd",
23956                 .field_bit_size = 1,
23957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23958                 }
23959         },
23960         {
23961         .field_info_mask = {
23962                 .description = "tl2_ovv",
23963                 .field_bit_size = 12,
23964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23965                 },
23966         .field_info_spec = {
23967                 .description = "tl2_ovv",
23968                 .field_bit_size = 12,
23969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23970                 }
23971         },
23972         {
23973         .field_info_mask = {
23974                 .description = "tl2_ovt",
23975                 .field_bit_size = 3,
23976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23977                 },
23978         .field_info_spec = {
23979                 .description = "tl2_ovt",
23980                 .field_bit_size = 3,
23981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23982                 }
23983         },
23984         {
23985         .field_info_mask = {
23986                 .description = "tl2_ivp",
23987                 .field_bit_size = 3,
23988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23989                 },
23990         .field_info_spec = {
23991                 .description = "tl2_ivp",
23992                 .field_bit_size = 3,
23993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
23994                 }
23995         },
23996         {
23997         .field_info_mask = {
23998                 .description = "tl2_ivd",
23999                 .field_bit_size = 1,
24000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24001                 },
24002         .field_info_spec = {
24003                 .description = "tl2_ivd",
24004                 .field_bit_size = 1,
24005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24006                 }
24007         },
24008         {
24009         .field_info_mask = {
24010                 .description = "tl2_ivv",
24011                 .field_bit_size = 12,
24012                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24013                 },
24014         .field_info_spec = {
24015                 .description = "tl2_ivv",
24016                 .field_bit_size = 12,
24017                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24018                 }
24019         },
24020         {
24021         .field_info_mask = {
24022                 .description = "tl2_ivt",
24023                 .field_bit_size = 3,
24024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24025                 },
24026         .field_info_spec = {
24027                 .description = "tl2_ivt",
24028                 .field_bit_size = 3,
24029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24030                 }
24031         },
24032         {
24033         .field_info_mask = {
24034                 .description = "tl2_etype",
24035                 .field_bit_size = 16,
24036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24037                 },
24038         .field_info_spec = {
24039                 .description = "tl2_etype",
24040                 .field_bit_size = 16,
24041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24042                 }
24043         },
24044         {
24045         .field_info_mask = {
24046                 .description = "tl3.l3type",
24047                 .field_bit_size = 4,
24048                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24049                 },
24050         .field_info_spec = {
24051                 .description = "tl3.l3type",
24052                 .field_bit_size = 4,
24053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24054                 }
24055         },
24056         {
24057         .field_info_mask = {
24058                 .description = "tl3.sip.ipv4",
24059                 .field_bit_size = 32,
24060                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24061                 },
24062         .field_info_spec = {
24063                 .description = "tl3.sip.ipv4",
24064                 .field_bit_size = 32,
24065                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24066                 }
24067         },
24068         {
24069         .field_info_mask = {
24070                 .description = "tl3.sip.ipv6",
24071                 .field_bit_size = 128,
24072                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24073                 },
24074         .field_info_spec = {
24075                 .description = "tl3.sip.ipv6",
24076                 .field_bit_size = 128,
24077                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24078                 }
24079         },
24080         {
24081         .field_info_mask = {
24082                 .description = "tl3.sip_selcmp.ipv6",
24083                 .field_bit_size = 72,
24084                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24085                 },
24086         .field_info_spec = {
24087                 .description = "tl3.sip_selcmp.ipv6",
24088                 .field_bit_size = 72,
24089                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24090                 }
24091         },
24092         {
24093         .field_info_mask = {
24094                 .description = "tl3.dip.ipv4",
24095                 .field_bit_size = 32,
24096                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24097                 },
24098         .field_info_spec = {
24099                 .description = "tl3.dip.ipv4",
24100                 .field_bit_size = 32,
24101                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24102                 }
24103         },
24104         {
24105         .field_info_mask = {
24106                 .description = "tl3.dip.ipv6",
24107                 .field_bit_size = 128,
24108                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24109                 },
24110         .field_info_spec = {
24111                 .description = "tl3.dip.ipv6",
24112                 .field_bit_size = 128,
24113                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24114                 }
24115         },
24116         {
24117         .field_info_mask = {
24118                 .description = "tl3.dip_selcmp.ipv6",
24119                 .field_bit_size = 72,
24120                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24121                 },
24122         .field_info_spec = {
24123                 .description = "tl3.dip_selcmp.ipv6",
24124                 .field_bit_size = 72,
24125                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24126                 }
24127         },
24128         {
24129         .field_info_mask = {
24130                 .description = "tl3.ttl",
24131                 .field_bit_size = 8,
24132                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24133                 },
24134         .field_info_spec = {
24135                 .description = "tl3.ttl",
24136                 .field_bit_size = 8,
24137                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24138                 }
24139         },
24140         {
24141         .field_info_mask = {
24142                 .description = "tl3.prot",
24143                 .field_bit_size = 8,
24144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24145                 },
24146         .field_info_spec = {
24147                 .description = "tl3.prot",
24148                 .field_bit_size = 8,
24149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24150                 }
24151         },
24152         {
24153         .field_info_mask = {
24154                 .description = "tl3.fid.ipv4",
24155                 .field_bit_size = 16,
24156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24157                 },
24158         .field_info_spec = {
24159                 .description = "tl3.fid.ipv4",
24160                 .field_bit_size = 16,
24161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24162                 }
24163         },
24164         {
24165         .field_info_mask = {
24166                 .description = "tl3.fid.ipv6",
24167                 .field_bit_size = 20,
24168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24169                 },
24170         .field_info_spec = {
24171                 .description = "tl3.fid.ipv6",
24172                 .field_bit_size = 20,
24173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24174                 }
24175         },
24176         {
24177         .field_info_mask = {
24178                 .description = "tl3.qos",
24179                 .field_bit_size = 8,
24180                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24181                 },
24182         .field_info_spec = {
24183                 .description = "tl3.qos",
24184                 .field_bit_size = 8,
24185                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24186                 }
24187         },
24188         {
24189         .field_info_mask = {
24190                 .description = "tl3.ieh_nonext",
24191                 .field_bit_size = 1,
24192                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24193                 },
24194         .field_info_spec = {
24195                 .description = "tl3.ieh_nonext",
24196                 .field_bit_size = 1,
24197                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24198                 }
24199         },
24200         {
24201         .field_info_mask = {
24202                 .description = "tl3.ieh_esp",
24203                 .field_bit_size = 1,
24204                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24205                 },
24206         .field_info_spec = {
24207                 .description = "tl3.ieh_esp",
24208                 .field_bit_size = 1,
24209                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24210                 }
24211         },
24212         {
24213         .field_info_mask = {
24214                 .description = "tl3.ieh_auth",
24215                 .field_bit_size = 1,
24216                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24217                 },
24218         .field_info_spec = {
24219                 .description = "tl3.ieh_auth",
24220                 .field_bit_size = 1,
24221                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24222                 }
24223         },
24224         {
24225         .field_info_mask = {
24226                 .description = "tl3.ieh_dest",
24227                 .field_bit_size = 1,
24228                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24229                 },
24230         .field_info_spec = {
24231                 .description = "tl3.ieh_dest",
24232                 .field_bit_size = 1,
24233                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24234                 }
24235         },
24236         {
24237         .field_info_mask = {
24238                 .description = "tl3.ieh_frag",
24239                 .field_bit_size = 1,
24240                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24241                 },
24242         .field_info_spec = {
24243                 .description = "tl3.ieh_frag",
24244                 .field_bit_size = 1,
24245                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24246                 }
24247         },
24248         {
24249         .field_info_mask = {
24250                 .description = "tl3.ieh_rthdr",
24251                 .field_bit_size = 1,
24252                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24253                 },
24254         .field_info_spec = {
24255                 .description = "tl3.ieh_rthdr",
24256                 .field_bit_size = 1,
24257                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24258                 }
24259         },
24260         {
24261         .field_info_mask = {
24262                 .description = "tl3.ieh_hop",
24263                 .field_bit_size = 1,
24264                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24265                 },
24266         .field_info_spec = {
24267                 .description = "tl3.ieh_hop",
24268                 .field_bit_size = 1,
24269                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24270                 }
24271         },
24272         {
24273         .field_info_mask = {
24274                 .description = "tl3.ieh_1frag",
24275                 .field_bit_size = 1,
24276                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24277                 },
24278         .field_info_spec = {
24279                 .description = "tl3.ieh_1frag",
24280                 .field_bit_size = 1,
24281                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24282                 }
24283         },
24284         {
24285         .field_info_mask = {
24286                 .description = "tl3.df",
24287                 .field_bit_size = 1,
24288                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24289                 },
24290         .field_info_spec = {
24291                 .description = "tl3.df",
24292                 .field_bit_size = 1,
24293                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24294                 }
24295         },
24296         {
24297         .field_info_mask = {
24298                 .description = "tl3.l3err",
24299                 .field_bit_size = 4,
24300                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24301                 },
24302         .field_info_spec = {
24303                 .description = "tl3.l3err",
24304                 .field_bit_size = 4,
24305                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24306                 }
24307         },
24308         {
24309         .field_info_mask = {
24310                 .description = "tl4.l4type",
24311                 .field_bit_size = 4,
24312                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24313                 },
24314         .field_info_spec = {
24315                 .description = "tl4.l4type",
24316                 .field_bit_size = 4,
24317                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24318                 }
24319         },
24320         {
24321         .field_info_mask = {
24322                 .description = "tl4.src",
24323                 .field_bit_size = 16,
24324                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24325                 },
24326         .field_info_spec = {
24327                 .description = "tl4.src",
24328                 .field_bit_size = 16,
24329                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24330                 }
24331         },
24332         {
24333         .field_info_mask = {
24334                 .description = "tl4.dst",
24335                 .field_bit_size = 16,
24336                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24337                 },
24338         .field_info_spec = {
24339                 .description = "tl4.dst",
24340                 .field_bit_size = 16,
24341                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24342                 }
24343         },
24344         {
24345         .field_info_mask = {
24346                 .description = "tl4.flags",
24347                 .field_bit_size = 9,
24348                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24349                 },
24350         .field_info_spec = {
24351                 .description = "tl4.flags",
24352                 .field_bit_size = 9,
24353                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24354                 }
24355         },
24356         {
24357         .field_info_mask = {
24358                 .description = "tl4.seq",
24359                 .field_bit_size = 32,
24360                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24361                 },
24362         .field_info_spec = {
24363                 .description = "tl4.seq",
24364                 .field_bit_size = 32,
24365                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24366                 }
24367         },
24368         {
24369         .field_info_mask = {
24370                 .description = "tl4.pa",
24371                 .field_bit_size = 1,
24372                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24373                 },
24374         .field_info_spec = {
24375                 .description = "tl4.pa",
24376                 .field_bit_size = 1,
24377                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24378                 }
24379         },
24380         {
24381         .field_info_mask = {
24382                 .description = "tl4.opt",
24383                 .field_bit_size = 1,
24384                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24385                 },
24386         .field_info_spec = {
24387                 .description = "tl4.opt",
24388                 .field_bit_size = 1,
24389                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24390                 }
24391         },
24392         {
24393         .field_info_mask = {
24394                 .description = "tl4.tcpts",
24395                 .field_bit_size = 1,
24396                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24397                 },
24398         .field_info_spec = {
24399                 .description = "tl4.tcpts",
24400                 .field_bit_size = 1,
24401                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24402                 }
24403         },
24404         {
24405         .field_info_mask = {
24406                 .description = "tl4.err",
24407                 .field_bit_size = 4,
24408                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24409                 },
24410         .field_info_spec = {
24411                 .description = "tl4.err",
24412                 .field_bit_size = 4,
24413                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24414                 }
24415         },
24416         {
24417         .field_info_mask = {
24418                 .description = "tuntype",
24419                 .field_bit_size = 4,
24420                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24421                 },
24422         .field_info_spec = {
24423                 .description = "tuntype",
24424                 .field_bit_size = 4,
24425                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24426                 }
24427         },
24428         {
24429         .field_info_mask = {
24430                 .description = "tflags",
24431                 .field_bit_size = 3,
24432                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24433                 },
24434         .field_info_spec = {
24435                 .description = "tflags",
24436                 .field_bit_size = 3,
24437                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24438                 }
24439         },
24440         {
24441         .field_info_mask = {
24442                 .description = "tids",
24443                 .field_bit_size = 24,
24444                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24445                 },
24446         .field_info_spec = {
24447                 .description = "tids",
24448                 .field_bit_size = 24,
24449                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24450                 }
24451         },
24452         {
24453         .field_info_mask = {
24454                 .description = "tid",
24455                 .field_bit_size = 32,
24456                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24457                 },
24458         .field_info_spec = {
24459                 .description = "tid",
24460                 .field_bit_size = 32,
24461                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24462                 }
24463         },
24464         {
24465         .field_info_mask = {
24466                 .description = "tctxts",
24467                 .field_bit_size = 24,
24468                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24469                 },
24470         .field_info_spec = {
24471                 .description = "tctxts",
24472                 .field_bit_size = 24,
24473                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24474                 }
24475         },
24476         {
24477         .field_info_mask = {
24478                 .description = "tctxt",
24479                 .field_bit_size = 32,
24480                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24481                 },
24482         .field_info_spec = {
24483                 .description = "tctxt",
24484                 .field_bit_size = 32,
24485                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24486                 }
24487         },
24488         {
24489         .field_info_mask = {
24490                 .description = "tqos",
24491                 .field_bit_size = 3,
24492                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24493                 },
24494         .field_info_spec = {
24495                 .description = "tqos",
24496                 .field_bit_size = 3,
24497                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24498                 }
24499         },
24500         {
24501         .field_info_mask = {
24502                 .description = "terr",
24503                 .field_bit_size = 4,
24504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24505                 },
24506         .field_info_spec = {
24507                 .description = "terr",
24508                 .field_bit_size = 4,
24509                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24510                 }
24511         },
24512         {
24513         .field_info_mask = {
24514                 .description = "l2_l2type",
24515                 .field_bit_size = 2,
24516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24517                 },
24518         .field_info_spec = {
24519                 .description = "l2_l2type",
24520                 .field_bit_size = 2,
24521                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24522                 }
24523         },
24524         {
24525         .field_info_mask = {
24526                 .description = "l2_dmac",
24527                 .field_bit_size = 48,
24528                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24529                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24530                 .field_opr1 = {
24531                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
24532                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
24533                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24534                 .field_opr2 = {
24535                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
24536                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
24537                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24538                 },
24539         .field_info_spec = {
24540                 .description = "l2_dmac",
24541                 .field_bit_size = 48,
24542                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24543                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24544                 .field_opr1 = {
24545                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
24546                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
24547                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24548                 .field_opr2 = {
24549                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
24550                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
24551                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24552                 }
24553         },
24554         {
24555         .field_info_mask = {
24556                 .description = "l2_smac",
24557                 .field_bit_size = 48,
24558                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24559                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24560                 .field_opr1 = {
24561                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
24562                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
24563                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24564                 .field_opr2 = {
24565                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
24566                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
24567                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24568                 },
24569         .field_info_spec = {
24570                 .description = "l2_smac",
24571                 .field_bit_size = 48,
24572                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24573                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24574                 .field_opr1 = {
24575                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
24576                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
24577                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24578                 .field_opr2 = {
24579                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
24580                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
24581                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24582                 }
24583         },
24584         {
24585         .field_info_mask = {
24586                 .description = "l2_dt",
24587                 .field_bit_size = 2,
24588                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24589                 },
24590         .field_info_spec = {
24591                 .description = "l2_dt",
24592                 .field_bit_size = 2,
24593                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24594                 }
24595         },
24596         {
24597         .field_info_mask = {
24598                 .description = "l2_sa",
24599                 .field_bit_size = 1,
24600                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24601                 },
24602         .field_info_spec = {
24603                 .description = "l2_sa",
24604                 .field_bit_size = 1,
24605                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24606                 }
24607         },
24608         {
24609         .field_info_mask = {
24610                 .description = "l2_nvt",
24611                 .field_bit_size = 2,
24612                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24613                 },
24614         .field_info_spec = {
24615                 .description = "l2_nvt",
24616                 .field_bit_size = 2,
24617                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24618                 }
24619         },
24620         {
24621         .field_info_mask = {
24622                 .description = "l2_ovp",
24623                 .field_bit_size = 3,
24624                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24625                 },
24626         .field_info_spec = {
24627                 .description = "l2_ovp",
24628                 .field_bit_size = 3,
24629                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24630                 }
24631         },
24632         {
24633         .field_info_mask = {
24634                 .description = "l2_ovd",
24635                 .field_bit_size = 1,
24636                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24637                 },
24638         .field_info_spec = {
24639                 .description = "l2_ovd",
24640                 .field_bit_size = 1,
24641                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24642                 }
24643         },
24644         {
24645         .field_info_mask = {
24646                 .description = "l2_ovv",
24647                 .field_bit_size = 12,
24648                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24649                 },
24650         .field_info_spec = {
24651                 .description = "l2_ovv",
24652                 .field_bit_size = 12,
24653                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24654                 }
24655         },
24656         {
24657         .field_info_mask = {
24658                 .description = "l2_ovt",
24659                 .field_bit_size = 3,
24660                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24661                 },
24662         .field_info_spec = {
24663                 .description = "l2_ovt",
24664                 .field_bit_size = 3,
24665                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24666                 }
24667         },
24668         {
24669         .field_info_mask = {
24670                 .description = "l2_ivp",
24671                 .field_bit_size = 3,
24672                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24673                 },
24674         .field_info_spec = {
24675                 .description = "l2_ivp",
24676                 .field_bit_size = 3,
24677                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24678                 }
24679         },
24680         {
24681         .field_info_mask = {
24682                 .description = "l2_ivd",
24683                 .field_bit_size = 1,
24684                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24685                 },
24686         .field_info_spec = {
24687                 .description = "l2_ivd",
24688                 .field_bit_size = 1,
24689                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24690                 }
24691         },
24692         {
24693         .field_info_mask = {
24694                 .description = "l2_ivv",
24695                 .field_bit_size = 12,
24696                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24697                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
24698                 .field_opr1 = {
24699                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
24700                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
24701                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24702                 .field_opr2 = {
24703                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
24704                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
24705                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24706                 },
24707         .field_info_spec = {
24708                 .description = "l2_ivv",
24709                 .field_bit_size = 12,
24710                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24711                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
24712                 .field_opr1 = {
24713                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
24714                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
24715                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24716                 .field_opr2 = {
24717                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
24718                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
24719                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24720                 }
24721         },
24722         {
24723         .field_info_mask = {
24724                 .description = "l2_ivt",
24725                 .field_bit_size = 3,
24726                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24727                 },
24728         .field_info_spec = {
24729                 .description = "l2_ivt",
24730                 .field_bit_size = 3,
24731                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24732                 }
24733         },
24734         {
24735         .field_info_mask = {
24736                 .description = "l2_etype",
24737                 .field_bit_size = 16,
24738                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24739                 },
24740         .field_info_spec = {
24741                 .description = "l2_etype",
24742                 .field_bit_size = 16,
24743                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24744                 }
24745         },
24746         {
24747         .field_info_mask = {
24748                 .description = "l3.l3type",
24749                 .field_bit_size = 4,
24750                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24751                 },
24752         .field_info_spec = {
24753                 .description = "l3.l3type",
24754                 .field_bit_size = 4,
24755                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24756                 }
24757         },
24758         {
24759         .field_info_mask = {
24760                 .description = "l3.sip.ipv4",
24761                 .field_bit_size = 32,
24762                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24763                 },
24764         .field_info_spec = {
24765                 .description = "l3.sip.ipv4",
24766                 .field_bit_size = 32,
24767                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24768                 }
24769         },
24770         {
24771         .field_info_mask = {
24772                 .description = "l3.sip.ipv6",
24773                 .field_bit_size = 128,
24774                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24775                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24776                 .field_opr1 = {
24777                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
24778                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
24779                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24780                 .field_opr2 = {
24781                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
24782                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
24783                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24784                 },
24785         .field_info_spec = {
24786                 .description = "l3.sip.ipv6",
24787                 .field_bit_size = 128,
24788                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24789                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24790                 .field_opr1 = {
24791                 (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
24792                 BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
24793                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24794                 .field_opr2 = {
24795                         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
24796                         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff},
24797                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24798                 }
24799         },
24800         {
24801         .field_info_mask = {
24802                 .description = "l3.sip_selcmp.ipv6",
24803                 .field_bit_size = 72,
24804                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24805                 },
24806         .field_info_spec = {
24807                 .description = "l3.sip_selcmp.ipv6",
24808                 .field_bit_size = 72,
24809                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24810                 }
24811         },
24812         {
24813         .field_info_mask = {
24814                 .description = "l3.dip.ipv4",
24815                 .field_bit_size = 32,
24816                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24817                 },
24818         .field_info_spec = {
24819                 .description = "l3.dip.ipv4",
24820                 .field_bit_size = 32,
24821                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24822                 }
24823         },
24824         {
24825         .field_info_mask = {
24826                 .description = "l3.dip.ipv6",
24827                 .field_bit_size = 128,
24828                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24829                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24830                 .field_opr1 = {
24831                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
24832                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
24833                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24834                 .field_opr2 = {
24835                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
24836                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
24837                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24838                 },
24839         .field_info_spec = {
24840                 .description = "l3.dip.ipv6",
24841                 .field_bit_size = 128,
24842                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24843                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
24844                 .field_opr1 = {
24845                 (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
24846                 BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
24847                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
24848                 .field_opr2 = {
24849                         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
24850                         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff},
24851                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24852                 }
24853         },
24854         {
24855         .field_info_mask = {
24856                 .description = "l3.dip_selcmp.ipv6",
24857                 .field_bit_size = 72,
24858                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24859                 },
24860         .field_info_spec = {
24861                 .description = "l3.dip_selcmp.ipv6",
24862                 .field_bit_size = 72,
24863                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24864                 }
24865         },
24866         {
24867         .field_info_mask = {
24868                 .description = "l3.ttl",
24869                 .field_bit_size = 8,
24870                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24871                 },
24872         .field_info_spec = {
24873                 .description = "l3.ttl",
24874                 .field_bit_size = 8,
24875                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24876                 }
24877         },
24878         {
24879         .field_info_mask = {
24880                 .description = "l3.prot",
24881                 .field_bit_size = 8,
24882                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
24883                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
24884                 .field_opr1 = {
24885                         0xff}
24886                 },
24887         .field_info_spec = {
24888                 .description = "l3.prot",
24889                 .field_bit_size = 8,
24890                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
24891                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
24892                 .field_opr1 = {
24893                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
24894                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
24895                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
24896                 .field_opr2 = {
24897                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
24898                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
24899                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
24900                 }
24901         },
24902         {
24903         .field_info_mask = {
24904                 .description = "l3.fid.ipv4",
24905                 .field_bit_size = 16,
24906                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24907                 },
24908         .field_info_spec = {
24909                 .description = "l3.fid.ipv4",
24910                 .field_bit_size = 16,
24911                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24912                 }
24913         },
24914         {
24915         .field_info_mask = {
24916                 .description = "l3.fid.ipv6",
24917                 .field_bit_size = 20,
24918                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24919                 },
24920         .field_info_spec = {
24921                 .description = "l3.fid.ipv6",
24922                 .field_bit_size = 20,
24923                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24924                 }
24925         },
24926         {
24927         .field_info_mask = {
24928                 .description = "l3.qos",
24929                 .field_bit_size = 8,
24930                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24931                 },
24932         .field_info_spec = {
24933                 .description = "l3.qos",
24934                 .field_bit_size = 8,
24935                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24936                 }
24937         },
24938         {
24939         .field_info_mask = {
24940                 .description = "l3.ieh_nonext",
24941                 .field_bit_size = 1,
24942                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24943                 },
24944         .field_info_spec = {
24945                 .description = "l3.ieh_nonext",
24946                 .field_bit_size = 1,
24947                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24948                 }
24949         },
24950         {
24951         .field_info_mask = {
24952                 .description = "l3.ieh_esp",
24953                 .field_bit_size = 1,
24954                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24955                 },
24956         .field_info_spec = {
24957                 .description = "l3.ieh_esp",
24958                 .field_bit_size = 1,
24959                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24960                 }
24961         },
24962         {
24963         .field_info_mask = {
24964                 .description = "l3.ieh_auth",
24965                 .field_bit_size = 1,
24966                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24967                 },
24968         .field_info_spec = {
24969                 .description = "l3.ieh_auth",
24970                 .field_bit_size = 1,
24971                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24972                 }
24973         },
24974         {
24975         .field_info_mask = {
24976                 .description = "l3.ieh_dest",
24977                 .field_bit_size = 1,
24978                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24979                 },
24980         .field_info_spec = {
24981                 .description = "l3.ieh_dest",
24982                 .field_bit_size = 1,
24983                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24984                 }
24985         },
24986         {
24987         .field_info_mask = {
24988                 .description = "l3.ieh_frag",
24989                 .field_bit_size = 1,
24990                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24991                 },
24992         .field_info_spec = {
24993                 .description = "l3.ieh_frag",
24994                 .field_bit_size = 1,
24995                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
24996                 }
24997         },
24998         {
24999         .field_info_mask = {
25000                 .description = "l3.ieh_rthdr",
25001                 .field_bit_size = 1,
25002                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25003                 },
25004         .field_info_spec = {
25005                 .description = "l3.ieh_rthdr",
25006                 .field_bit_size = 1,
25007                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25008                 }
25009         },
25010         {
25011         .field_info_mask = {
25012                 .description = "l3.ieh_hop",
25013                 .field_bit_size = 1,
25014                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25015                 },
25016         .field_info_spec = {
25017                 .description = "l3.ieh_hop",
25018                 .field_bit_size = 1,
25019                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25020                 }
25021         },
25022         {
25023         .field_info_mask = {
25024                 .description = "l3.ieh_1frag",
25025                 .field_bit_size = 1,
25026                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25027                 },
25028         .field_info_spec = {
25029                 .description = "l3.ieh_1frag",
25030                 .field_bit_size = 1,
25031                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25032                 }
25033         },
25034         {
25035         .field_info_mask = {
25036                 .description = "l3.df",
25037                 .field_bit_size = 1,
25038                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25039                 },
25040         .field_info_spec = {
25041                 .description = "l3.df",
25042                 .field_bit_size = 1,
25043                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25044                 }
25045         },
25046         {
25047         .field_info_mask = {
25048                 .description = "l3.l3err.ipv4",
25049                 .field_bit_size = 4,
25050                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25051                 },
25052         .field_info_spec = {
25053                 .description = "l3.l3err.ipv4",
25054                 .field_bit_size = 4,
25055                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25056                 }
25057         },
25058         {
25059         .field_info_mask = {
25060                 .description = "l3.l3err.ipv6",
25061                 .field_bit_size = 4,
25062                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25063                 },
25064         .field_info_spec = {
25065                 .description = "l3.l3err.ipv6",
25066                 .field_bit_size = 4,
25067                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25068                 }
25069         },
25070         {
25071         .field_info_mask = {
25072                 .description = "l4.l4type",
25073                 .field_bit_size = 4,
25074                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25075                 },
25076         .field_info_spec = {
25077                 .description = "l4.l4type",
25078                 .field_bit_size = 4,
25079                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25080                 }
25081         },
25082         {
25083         .field_info_mask = {
25084                 .description = "l4.src",
25085                 .field_bit_size = 16,
25086                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25087                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25088                 .field_opr1 = {
25089                         0xff,
25090                         0xff}
25091                 },
25092         .field_info_spec = {
25093                 .description = "l4.src",
25094                 .field_bit_size = 16,
25095                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
25096                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25097                 .field_opr1 = {
25098                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
25099                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
25100                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
25101                 .field_opr2 = {
25102                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
25103                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
25104                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
25105                 }
25106         },
25107         {
25108         .field_info_mask = {
25109                 .description = "l4.dst",
25110                 .field_bit_size = 16,
25111                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25112                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25113                 .field_opr1 = {
25114                         0xff,
25115                         0xff}
25116                 },
25117         .field_info_spec = {
25118                 .description = "l4.dst",
25119                 .field_bit_size = 16,
25120                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
25121                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25122                 .field_opr1 = {
25123                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
25124                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
25125                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
25126                 .field_opr2 = {
25127                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
25128                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
25129                 .field_src3 = BNXT_ULP_FIELD_SRC_SKIP
25130                 }
25131         },
25132         {
25133         .field_info_mask = {
25134                 .description = "l4.flags",
25135                 .field_bit_size = 9,
25136                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25137                 },
25138         .field_info_spec = {
25139                 .description = "l4.flags",
25140                 .field_bit_size = 9,
25141                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25142                 }
25143         },
25144         {
25145         .field_info_mask = {
25146                 .description = "l4.seq",
25147                 .field_bit_size = 32,
25148                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25149                 },
25150         .field_info_spec = {
25151                 .description = "l4.seq",
25152                 .field_bit_size = 32,
25153                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25154                 }
25155         },
25156         {
25157         .field_info_mask = {
25158                 .description = "l4.ack",
25159                 .field_bit_size = 32,
25160                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25161                 },
25162         .field_info_spec = {
25163                 .description = "l4.ack",
25164                 .field_bit_size = 32,
25165                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25166                 }
25167         },
25168         {
25169         .field_info_mask = {
25170                 .description = "l4.win",
25171                 .field_bit_size = 16,
25172                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25173                 },
25174         .field_info_spec = {
25175                 .description = "l4.win",
25176                 .field_bit_size = 16,
25177                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25178                 }
25179         },
25180         {
25181         .field_info_mask = {
25182                 .description = "l4.pa",
25183                 .field_bit_size = 1,
25184                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25185                 },
25186         .field_info_spec = {
25187                 .description = "l4.pa",
25188                 .field_bit_size = 1,
25189                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25190                 }
25191         },
25192         {
25193         .field_info_mask = {
25194                 .description = "l4.opt",
25195                 .field_bit_size = 1,
25196                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25197                 },
25198         .field_info_spec = {
25199                 .description = "l4.opt",
25200                 .field_bit_size = 1,
25201                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25202                 }
25203         },
25204         {
25205         .field_info_mask = {
25206                 .description = "l4.tcpts",
25207                 .field_bit_size = 1,
25208                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25209                 },
25210         .field_info_spec = {
25211                 .description = "l4.tcpts",
25212                 .field_bit_size = 1,
25213                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25214                 }
25215         },
25216         {
25217         .field_info_mask = {
25218                 .description = "l4.tsval",
25219                 .field_bit_size = 32,
25220                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25221                 },
25222         .field_info_spec = {
25223                 .description = "l4.tsval",
25224                 .field_bit_size = 32,
25225                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25226                 }
25227         },
25228         {
25229         .field_info_mask = {
25230                 .description = "l4.txecr",
25231                 .field_bit_size = 32,
25232                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25233                 },
25234         .field_info_spec = {
25235                 .description = "l4.txecr",
25236                 .field_bit_size = 32,
25237                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25238                 }
25239         },
25240         {
25241         .field_info_mask = {
25242                 .description = "l4.err",
25243                 .field_bit_size = 4,
25244                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25245                 },
25246         .field_info_spec = {
25247                 .description = "l4.err",
25248                 .field_bit_size = 4,
25249                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
25250                 }
25251         },
25252         /* class_tid: 3, , table: profile_tcam_cache.rd */
25253         {
25254         .field_info_mask = {
25255                 .description = "recycle_cnt",
25256                 .field_bit_size = 2,
25257                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25258                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25259                 },
25260         .field_info_spec = {
25261                 .description = "recycle_cnt",
25262                 .field_bit_size = 2,
25263                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25264                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25265                 }
25266         },
25267         {
25268         .field_info_mask = {
25269                 .description = "prof_func_id",
25270                 .field_bit_size = 7,
25271                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25272                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25273                 .field_opr1 = {
25274                         0xff}
25275                 },
25276         .field_info_spec = {
25277                 .description = "prof_func_id",
25278                 .field_bit_size = 7,
25279                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25280                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
25281                 .field_opr1 = {
25282                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
25283                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
25284                 }
25285         },
25286         {
25287         .field_info_mask = {
25288                 .description = "hdr_sig_id",
25289                 .field_bit_size = 5,
25290                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25291                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25292                 .field_opr1 = {
25293                         0xff}
25294                 },
25295         .field_info_spec = {
25296                 .description = "hdr_sig_id",
25297                 .field_bit_size = 5,
25298                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25299                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25300                 .field_opr1 = {
25301                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
25302                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
25303                 }
25304         },
25305         /* class_tid: 3, , table: profile_tcam.l3_l4.ip */
25306         {
25307         .field_info_mask = {
25308                 .description = "l4_hdr_is_udp_tcp",
25309                 .field_bit_size = 1,
25310                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25311                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25312                 },
25313         .field_info_spec = {
25314                 .description = "l4_hdr_is_udp_tcp",
25315                 .field_bit_size = 1,
25316                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25317                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25318                 }
25319         },
25320         {
25321         .field_info_mask = {
25322                 .description = "l4_hdr_type",
25323                 .field_bit_size = 4,
25324                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
25325                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25326                 .field_opr1 = {
25327                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
25328                 BNXT_ULP_CF_IDX_O_L4 & 0xff},
25329                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
25330                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
25331                 },
25332         .field_info_spec = {
25333                 .description = "l4_hdr_type",
25334                 .field_bit_size = 4,
25335                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
25336                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
25337                 .field_opr1 = {
25338                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 56) & 0xff,
25339                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 48) & 0xff,
25340                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 40) & 0xff,
25341                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 32) & 0xff,
25342                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 24) & 0xff,
25343                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 16) & 0xff,
25344                 ((uint64_t)BNXT_ULP_HDR_BIT_O_TCP >> 8) & 0xff,
25345                 (uint64_t)BNXT_ULP_HDR_BIT_O_TCP & 0xff},
25346                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
25347                 .field_opr2 = {
25348                         ULP_THOR_SYM_L4_HDR_TYPE_TCP},
25349                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
25350                 .field_opr3 = {
25351                 ULP_THOR_SYM_L4_HDR_TYPE_UDP}
25352                 }
25353         },
25354         {
25355         .field_info_mask = {
25356                 .description = "l4_hdr_error",
25357                 .field_bit_size = 1,
25358                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25359                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25360                 .field_opr1 = {
25361                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
25362                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
25363                 },
25364         .field_info_spec = {
25365                 .description = "l4_hdr_error",
25366                 .field_bit_size = 1,
25367                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25368                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25369                 }
25370         },
25371         {
25372         .field_info_mask = {
25373                 .description = "l4_hdr_valid",
25374                 .field_bit_size = 1,
25375                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25376                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25377                 .field_opr1 = {
25378                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
25379                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
25380                 },
25381         .field_info_spec = {
25382                 .description = "l4_hdr_valid",
25383                 .field_bit_size = 1,
25384                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25385                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
25386                 .field_opr1 = {
25387                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
25388                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
25389                 }
25390         },
25391         {
25392         .field_info_mask = {
25393                 .description = "ieh",
25394                 .field_bit_size = 8,
25395                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25396                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25397                 },
25398         .field_info_spec = {
25399                 .description = "ieh",
25400                 .field_bit_size = 8,
25401                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25402                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25403                 }
25404         },
25405         {
25406         .field_info_mask = {
25407                 .description = "l3_ipv6_cmp_dst",
25408                 .field_bit_size = 1,
25409                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25410                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25411                 },
25412         .field_info_spec = {
25413                 .description = "l3_ipv6_cmp_dst",
25414                 .field_bit_size = 1,
25415                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25416                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25417                 }
25418         },
25419         {
25420         .field_info_mask = {
25421                 .description = "l3_ipv6_cmp_src",
25422                 .field_bit_size = 1,
25423                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25424                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25425                 },
25426         .field_info_spec = {
25427                 .description = "l3_ipv6_cmp_src",
25428                 .field_bit_size = 1,
25429                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25430                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25431                 }
25432         },
25433         {
25434         .field_info_mask = {
25435                 .description = "l3_hdr_isIP",
25436                 .field_bit_size = 1,
25437                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25438                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25439                 },
25440         .field_info_spec = {
25441                 .description = "l3_hdr_isIP",
25442                 .field_bit_size = 1,
25443                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25444                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25445                 }
25446         },
25447         {
25448         .field_info_mask = {
25449                 .description = "l3_hdr_type",
25450                 .field_bit_size = 4,
25451                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25452                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25453                 .field_opr1 = {
25454                         0xff}
25455                 },
25456         .field_info_spec = {
25457                 .description = "l3_hdr_type",
25458                 .field_bit_size = 4,
25459                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
25460                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
25461                 .field_opr1 = {
25462                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 56) & 0xff,
25463                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 48) & 0xff,
25464                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 40) & 0xff,
25465                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 32) & 0xff,
25466                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 24) & 0xff,
25467                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 16) & 0xff,
25468                 ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 >> 8) & 0xff,
25469                 (uint64_t)BNXT_ULP_HDR_BIT_O_IPV4 & 0xff},
25470                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
25471                 .field_opr2 = {
25472                         ULP_THOR_SYM_L3_HDR_TYPE_IPV4},
25473                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
25474                 .field_opr3 = {
25475                 ULP_THOR_SYM_L3_HDR_TYPE_IPV6}
25476                 }
25477         },
25478         {
25479         .field_info_mask = {
25480                 .description = "l3_hdr_error",
25481                 .field_bit_size = 1,
25482                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25483                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25484                 .field_opr1 = {
25485                         0xff}
25486                 },
25487         .field_info_spec = {
25488                 .description = "l3_hdr_error",
25489                 .field_bit_size = 1,
25490                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25491                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25492                 }
25493         },
25494         {
25495         .field_info_mask = {
25496                 .description = "l3_hdr_valid",
25497                 .field_bit_size = 1,
25498                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25499                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25500                 .field_opr1 = {
25501                         0xff}
25502                 },
25503         .field_info_spec = {
25504                 .description = "l3_hdr_valid",
25505                 .field_bit_size = 1,
25506                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25507                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
25508                 .field_opr1 = {
25509                 ULP_THOR_SYM_L3_HDR_VALID_YES}
25510                 }
25511         },
25512         {
25513         .field_info_mask = {
25514                 .description = "l2_two_vtags",
25515                 .field_bit_size = 1,
25516                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25517                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25518                 },
25519         .field_info_spec = {
25520                 .description = "l2_two_vtags",
25521                 .field_bit_size = 1,
25522                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25523                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25524                 }
25525         },
25526         {
25527         .field_info_mask = {
25528                 .description = "l2_vtag_present",
25529                 .field_bit_size = 1,
25530                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25531                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25532                 .field_opr1 = {
25533                         0xff}
25534                 },
25535         .field_info_spec = {
25536                 .description = "l2_vtag_present",
25537                 .field_bit_size = 1,
25538                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
25539                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
25540                 .field_opr1 = {
25541                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
25542                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
25543                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
25544                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
25545                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
25546                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
25547                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
25548                 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
25549                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
25550                 .field_opr2 = {
25551                         ULP_THOR_SYM_L2_VTAG_PRESENT_YES},
25552                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
25553                 .field_opr3 = {
25554                 ULP_THOR_SYM_L2_VTAG_PRESENT_NO}
25555                 }
25556         },
25557         {
25558         .field_info_mask = {
25559                 .description = "l2_uc_mc_bc",
25560                 .field_bit_size = 2,
25561                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25562                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25563                 .field_opr1 = {
25564                         0xff}
25565                 },
25566         .field_info_spec = {
25567                 .description = "l2_uc_mc_bc",
25568                 .field_bit_size = 2,
25569                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25570                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25571                 }
25572         },
25573         {
25574         .field_info_mask = {
25575                 .description = "l2_hdr_type",
25576                 .field_bit_size = 2,
25577                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25578                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25579                 .field_opr1 = {
25580                         0xff}
25581                 },
25582         .field_info_spec = {
25583                 .description = "l2_hdr_type",
25584                 .field_bit_size = 2,
25585                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25586                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25587                 }
25588         },
25589         {
25590         .field_info_mask = {
25591                 .description = "l2_hdr_error",
25592                 .field_bit_size = 1,
25593                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25594                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25595                 .field_opr1 = {
25596                         0xff}
25597                 },
25598         .field_info_spec = {
25599                 .description = "l2_hdr_error",
25600                 .field_bit_size = 1,
25601                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25602                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25603                 }
25604         },
25605         {
25606         .field_info_mask = {
25607                 .description = "l2_hdr_valid",
25608                 .field_bit_size = 1,
25609                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25610                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25611                 .field_opr1 = {
25612                         0xff}
25613                 },
25614         .field_info_spec = {
25615                 .description = "l2_hdr_valid",
25616                 .field_bit_size = 1,
25617                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25618                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
25619                 .field_opr1 = {
25620                 ULP_THOR_SYM_L2_HDR_VALID_YES}
25621                 }
25622         },
25623         {
25624         .field_info_mask = {
25625                 .description = "tun_hdr_flags",
25626                 .field_bit_size = 3,
25627                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25628                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25629                 },
25630         .field_info_spec = {
25631                 .description = "tun_hdr_flags",
25632                 .field_bit_size = 3,
25633                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25634                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25635                 }
25636         },
25637         {
25638         .field_info_mask = {
25639                 .description = "tun_hdr_type",
25640                 .field_bit_size = 4,
25641                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25642                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25643                 },
25644         .field_info_spec = {
25645                 .description = "tun_hdr_type",
25646                 .field_bit_size = 4,
25647                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25648                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25649                 }
25650         },
25651         {
25652         .field_info_mask = {
25653                 .description = "tun_hdr_err",
25654                 .field_bit_size = 1,
25655                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25656                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25657                 },
25658         .field_info_spec = {
25659                 .description = "tun_hdr_err",
25660                 .field_bit_size = 1,
25661                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25662                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25663                 }
25664         },
25665         {
25666         .field_info_mask = {
25667                 .description = "tun_hdr_valid",
25668                 .field_bit_size = 1,
25669                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25670                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25671                 .field_opr1 = {
25672                         0xff}
25673                 },
25674         .field_info_spec = {
25675                 .description = "tun_hdr_valid",
25676                 .field_bit_size = 1,
25677                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25678                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25679                 }
25680         },
25681         {
25682         .field_info_mask = {
25683                 .description = "tl4_hdr_is_udp_tcp",
25684                 .field_bit_size = 1,
25685                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25686                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25687                 },
25688         .field_info_spec = {
25689                 .description = "tl4_hdr_is_udp_tcp",
25690                 .field_bit_size = 1,
25691                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25692                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25693                 }
25694         },
25695         {
25696         .field_info_mask = {
25697                 .description = "tl4_hdr_type",
25698                 .field_bit_size = 4,
25699                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25700                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25701                 },
25702         .field_info_spec = {
25703                 .description = "tl4_hdr_type",
25704                 .field_bit_size = 4,
25705                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25706                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25707                 }
25708         },
25709         {
25710         .field_info_mask = {
25711                 .description = "tl4_hdr_error",
25712                 .field_bit_size = 1,
25713                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25714                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25715                 },
25716         .field_info_spec = {
25717                 .description = "tl4_hdr_error",
25718                 .field_bit_size = 1,
25719                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25720                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25721                 }
25722         },
25723         {
25724         .field_info_mask = {
25725                 .description = "tl4_hdr_valid",
25726                 .field_bit_size = 1,
25727                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25728                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25729                 .field_opr1 = {
25730                         0xff}
25731                 },
25732         .field_info_spec = {
25733                 .description = "tl4_hdr_valid",
25734                 .field_bit_size = 1,
25735                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25736                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25737                 }
25738         },
25739         {
25740         .field_info_mask = {
25741                 .description = "tl3_ipv6_cmp_dst",
25742                 .field_bit_size = 1,
25743                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25744                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25745                 },
25746         .field_info_spec = {
25747                 .description = "tl3_ipv6_cmp_dst",
25748                 .field_bit_size = 1,
25749                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25750                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25751                 }
25752         },
25753         {
25754         .field_info_mask = {
25755                 .description = "tl3_ipv6_cmp_src",
25756                 .field_bit_size = 1,
25757                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25758                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25759                 },
25760         .field_info_spec = {
25761                 .description = "tl3_ipv6_cmp_src",
25762                 .field_bit_size = 1,
25763                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25764                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25765                 }
25766         },
25767         {
25768         .field_info_mask = {
25769                 .description = "tl3_hdr_isIP",
25770                 .field_bit_size = 1,
25771                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25772                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25773                 },
25774         .field_info_spec = {
25775                 .description = "tl3_hdr_isIP",
25776                 .field_bit_size = 1,
25777                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25778                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25779                 }
25780         },
25781         {
25782         .field_info_mask = {
25783                 .description = "tl3_hdr_type",
25784                 .field_bit_size = 4,
25785                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25786                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25787                 },
25788         .field_info_spec = {
25789                 .description = "tl3_hdr_type",
25790                 .field_bit_size = 4,
25791                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25792                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25793                 }
25794         },
25795         {
25796         .field_info_mask = {
25797                 .description = "tl3_hdr_error",
25798                 .field_bit_size = 1,
25799                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25800                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25801                 },
25802         .field_info_spec = {
25803                 .description = "tl3_hdr_error",
25804                 .field_bit_size = 1,
25805                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25806                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25807                 }
25808         },
25809         {
25810         .field_info_mask = {
25811                 .description = "tl3_hdr_valid",
25812                 .field_bit_size = 1,
25813                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25814                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25815                 .field_opr1 = {
25816                         0xff}
25817                 },
25818         .field_info_spec = {
25819                 .description = "tl3_hdr_valid",
25820                 .field_bit_size = 1,
25821                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25822                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25823                 }
25824         },
25825         {
25826         .field_info_mask = {
25827                 .description = "tl2_two_vtags",
25828                 .field_bit_size = 1,
25829                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25830                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25831                 },
25832         .field_info_spec = {
25833                 .description = "tl2_two_vtags",
25834                 .field_bit_size = 1,
25835                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25836                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25837                 }
25838         },
25839         {
25840         .field_info_mask = {
25841                 .description = "tl2_vtag_present",
25842                 .field_bit_size = 1,
25843                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25844                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25845                 },
25846         .field_info_spec = {
25847                 .description = "tl2_vtag_present",
25848                 .field_bit_size = 1,
25849                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25850                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25851                 }
25852         },
25853         {
25854         .field_info_mask = {
25855                 .description = "tl2_uc_mc_bc",
25856                 .field_bit_size = 2,
25857                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25858                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25859                 },
25860         .field_info_spec = {
25861                 .description = "tl2_uc_mc_bc",
25862                 .field_bit_size = 2,
25863                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25864                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25865                 }
25866         },
25867         {
25868         .field_info_mask = {
25869                 .description = "tl2_hdr_type",
25870                 .field_bit_size = 2,
25871                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25872                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25873                 },
25874         .field_info_spec = {
25875                 .description = "tl2_hdr_type",
25876                 .field_bit_size = 2,
25877                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25878                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25879                 }
25880         },
25881         {
25882         .field_info_mask = {
25883                 .description = "tl2_hdr_valid",
25884                 .field_bit_size = 1,
25885                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25886                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25887                 .field_opr1 = {
25888                         0xff}
25889                 },
25890         .field_info_spec = {
25891                 .description = "tl2_hdr_valid",
25892                 .field_bit_size = 1,
25893                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25894                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25895                 }
25896         },
25897         {
25898         .field_info_mask = {
25899                 .description = "hrec_next",
25900                 .field_bit_size = 1,
25901                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25902                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25903                 },
25904         .field_info_spec = {
25905                 .description = "hrec_next",
25906                 .field_bit_size = 1,
25907                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25908                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25909                 }
25910         },
25911         {
25912         .field_info_mask = {
25913                 .description = "prof_func_id",
25914                 .field_bit_size = 7,
25915                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25916                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
25917                 .field_opr1 = {
25918                         0xff}
25919                 },
25920         .field_info_spec = {
25921                 .description = "prof_func_id",
25922                 .field_bit_size = 7,
25923                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25924                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
25925                 .field_opr1 = {
25926                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
25927                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
25928                 }
25929         },
25930         {
25931         .field_info_mask = {
25932                 .description = "agg_error",
25933                 .field_bit_size = 1,
25934                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25935                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25936                 },
25937         .field_info_spec = {
25938                 .description = "agg_error",
25939                 .field_bit_size = 1,
25940                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25941                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25942                 }
25943         },
25944         {
25945         .field_info_mask = {
25946                 .description = "metadata",
25947                 .field_bit_size = 16,
25948                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25949                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25950                 },
25951         .field_info_spec = {
25952                 .description = "metadata",
25953                 .field_bit_size = 16,
25954                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25955                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25956                 }
25957         },
25958         {
25959         .field_info_mask = {
25960                 .description = "pkt_type_0",
25961                 .field_bit_size = 2,
25962                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25963                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25964                 },
25965         .field_info_spec = {
25966                 .description = "pkt_type_0",
25967                 .field_bit_size = 2,
25968                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25969                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25970                 }
25971         },
25972         {
25973         .field_info_mask = {
25974                 .description = "pkt_type_1",
25975                 .field_bit_size = 2,
25976                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25977                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25978                 },
25979         .field_info_spec = {
25980                 .description = "pkt_type_1",
25981                 .field_bit_size = 2,
25982                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25983                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
25984                 }
25985         },
25986         {
25987         .field_info_mask = {
25988                 .description = "valid",
25989                 .field_bit_size = 1,
25990                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25991                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
25992                 .field_opr1 = {
25993                 1}
25994                 },
25995         .field_info_spec = {
25996                 .description = "valid",
25997                 .field_bit_size = 1,
25998                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
25999                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
26000                 .field_opr1 = {
26001                 1}
26002                 }
26003         },
26004         /* class_tid: 3, , table: profile_tcam.l3_l4.nonip */
26005         {
26006         .field_info_mask = {
26007                 .description = "l4_hdr_is_udp_tcp",
26008                 .field_bit_size = 1,
26009                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26010                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26011                 },
26012         .field_info_spec = {
26013                 .description = "l4_hdr_is_udp_tcp",
26014                 .field_bit_size = 1,
26015                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26016                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26017                 }
26018         },
26019         {
26020         .field_info_mask = {
26021                 .description = "l4_hdr_type",
26022                 .field_bit_size = 4,
26023                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26024                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26025                 },
26026         .field_info_spec = {
26027                 .description = "l4_hdr_type",
26028                 .field_bit_size = 4,
26029                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26030                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26031                 }
26032         },
26033         {
26034         .field_info_mask = {
26035                 .description = "l4_hdr_error",
26036                 .field_bit_size = 1,
26037                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26038                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
26039                 .field_opr1 = {
26040                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
26041                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
26042                 },
26043         .field_info_spec = {
26044                 .description = "l4_hdr_error",
26045                 .field_bit_size = 1,
26046                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26047                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26048                 }
26049         },
26050         {
26051         .field_info_mask = {
26052                 .description = "l4_hdr_valid",
26053                 .field_bit_size = 1,
26054                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26055                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
26056                 .field_opr1 = {
26057                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
26058                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
26059                 },
26060         .field_info_spec = {
26061                 .description = "l4_hdr_valid",
26062                 .field_bit_size = 1,
26063                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26064                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
26065                 .field_opr1 = {
26066                 (BNXT_ULP_CF_IDX_O_L4 >> 8) & 0xff,
26067                 BNXT_ULP_CF_IDX_O_L4 & 0xff}
26068                 }
26069         },
26070         {
26071         .field_info_mask = {
26072                 .description = "ieh",
26073                 .field_bit_size = 8,
26074                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26075                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26076                 },
26077         .field_info_spec = {
26078                 .description = "ieh",
26079                 .field_bit_size = 8,
26080                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26081                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26082                 }
26083         },
26084         {
26085         .field_info_mask = {
26086                 .description = "l3_ipv6_cmp_dst",
26087                 .field_bit_size = 1,
26088                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26089                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26090                 },
26091         .field_info_spec = {
26092                 .description = "l3_ipv6_cmp_dst",
26093                 .field_bit_size = 1,
26094                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26095                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26096                 }
26097         },
26098         {
26099         .field_info_mask = {
26100                 .description = "l3_ipv6_cmp_src",
26101                 .field_bit_size = 1,
26102                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26103                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26104                 },
26105         .field_info_spec = {
26106                 .description = "l3_ipv6_cmp_src",
26107                 .field_bit_size = 1,
26108                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26109                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26110                 }
26111         },
26112         {
26113         .field_info_mask = {
26114                 .description = "l3_hdr_isIP",
26115                 .field_bit_size = 1,
26116                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26117                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26118                 },
26119         .field_info_spec = {
26120                 .description = "l3_hdr_isIP",
26121                 .field_bit_size = 1,
26122                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26123                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26124                 }
26125         },
26126         {
26127         .field_info_mask = {
26128                 .description = "l3_hdr_type",
26129                 .field_bit_size = 4,
26130                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26131                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26132                 },
26133         .field_info_spec = {
26134                 .description = "l3_hdr_type",
26135                 .field_bit_size = 4,
26136                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26137                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26138                 }
26139         },
26140         {
26141         .field_info_mask = {
26142                 .description = "l3_hdr_error",
26143                 .field_bit_size = 1,
26144                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26145                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26146                 .field_opr1 = {
26147                         0xff}
26148                 },
26149         .field_info_spec = {
26150                 .description = "l3_hdr_error",
26151                 .field_bit_size = 1,
26152                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26153                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26154                 }
26155         },
26156         {
26157         .field_info_mask = {
26158                 .description = "l3_hdr_valid",
26159                 .field_bit_size = 1,
26160                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26161                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26162                 .field_opr1 = {
26163                         0xff}
26164                 },
26165         .field_info_spec = {
26166                 .description = "l3_hdr_valid",
26167                 .field_bit_size = 1,
26168                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26169                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
26170                 .field_opr1 = {
26171                 ULP_THOR_SYM_L3_HDR_VALID_YES}
26172                 }
26173         },
26174         {
26175         .field_info_mask = {
26176                 .description = "l2_two_vtags",
26177                 .field_bit_size = 1,
26178                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26179                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26180                 },
26181         .field_info_spec = {
26182                 .description = "l2_two_vtags",
26183                 .field_bit_size = 1,
26184                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26185                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26186                 }
26187         },
26188         {
26189         .field_info_mask = {
26190                 .description = "l2_vtag_present",
26191                 .field_bit_size = 1,
26192                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26193                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26194                 .field_opr1 = {
26195                         0xff}
26196                 },
26197         .field_info_spec = {
26198                 .description = "l2_vtag_present",
26199                 .field_bit_size = 1,
26200                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
26201                 .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
26202                 .field_opr1 = {
26203                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
26204                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
26205                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
26206                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
26207                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
26208                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
26209                 ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
26210                 (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
26211                 .field_src2 = BNXT_ULP_FIELD_SRC_CONST,
26212                 .field_opr2 = {
26213                         ULP_THOR_SYM_L2_VTAG_PRESENT_YES},
26214                 .field_src3 = BNXT_ULP_FIELD_SRC_CONST,
26215                 .field_opr3 = {
26216                 ULP_THOR_SYM_L2_VTAG_PRESENT_NO}
26217                 }
26218         },
26219         {
26220         .field_info_mask = {
26221                 .description = "l2_uc_mc_bc",
26222                 .field_bit_size = 2,
26223                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26224                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26225                 .field_opr1 = {
26226                         0xff}
26227                 },
26228         .field_info_spec = {
26229                 .description = "l2_uc_mc_bc",
26230                 .field_bit_size = 2,
26231                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26232                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26233                 }
26234         },
26235         {
26236         .field_info_mask = {
26237                 .description = "l2_hdr_type",
26238                 .field_bit_size = 2,
26239                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26240                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26241                 .field_opr1 = {
26242                         0xff}
26243                 },
26244         .field_info_spec = {
26245                 .description = "l2_hdr_type",
26246                 .field_bit_size = 2,
26247                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26248                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26249                 }
26250         },
26251         {
26252         .field_info_mask = {
26253                 .description = "l2_hdr_error",
26254                 .field_bit_size = 1,
26255                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26256                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26257                 .field_opr1 = {
26258                         0xff}
26259                 },
26260         .field_info_spec = {
26261                 .description = "l2_hdr_error",
26262                 .field_bit_size = 1,
26263                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26264                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26265                 }
26266         },
26267         {
26268         .field_info_mask = {
26269                 .description = "l2_hdr_valid",
26270                 .field_bit_size = 1,
26271                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26272                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26273                 .field_opr1 = {
26274                         0xff}
26275                 },
26276         .field_info_spec = {
26277                 .description = "l2_hdr_valid",
26278                 .field_bit_size = 1,
26279                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26280                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
26281                 .field_opr1 = {
26282                 ULP_THOR_SYM_L2_HDR_VALID_YES}
26283                 }
26284         },
26285         {
26286         .field_info_mask = {
26287                 .description = "tun_hdr_flags",
26288                 .field_bit_size = 3,
26289                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26290                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26291                 },
26292         .field_info_spec = {
26293                 .description = "tun_hdr_flags",
26294                 .field_bit_size = 3,
26295                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26296                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26297                 }
26298         },
26299         {
26300         .field_info_mask = {
26301                 .description = "tun_hdr_type",
26302                 .field_bit_size = 4,
26303                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26304                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26305                 },
26306         .field_info_spec = {
26307                 .description = "tun_hdr_type",
26308                 .field_bit_size = 4,
26309                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26310                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26311                 }
26312         },
26313         {
26314         .field_info_mask = {
26315                 .description = "tun_hdr_err",
26316                 .field_bit_size = 1,
26317                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26318                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26319                 },
26320         .field_info_spec = {
26321                 .description = "tun_hdr_err",
26322                 .field_bit_size = 1,
26323                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26324                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26325                 }
26326         },
26327         {
26328         .field_info_mask = {
26329                 .description = "tun_hdr_valid",
26330                 .field_bit_size = 1,
26331                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26332                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26333                 .field_opr1 = {
26334                         0xff}
26335                 },
26336         .field_info_spec = {
26337                 .description = "tun_hdr_valid",
26338                 .field_bit_size = 1,
26339                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26340                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26341                 }
26342         },
26343         {
26344         .field_info_mask = {
26345                 .description = "tl4_hdr_is_udp_tcp",
26346                 .field_bit_size = 1,
26347                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26348                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26349                 },
26350         .field_info_spec = {
26351                 .description = "tl4_hdr_is_udp_tcp",
26352                 .field_bit_size = 1,
26353                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26354                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26355                 }
26356         },
26357         {
26358         .field_info_mask = {
26359                 .description = "tl4_hdr_type",
26360                 .field_bit_size = 4,
26361                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26362                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26363                 },
26364         .field_info_spec = {
26365                 .description = "tl4_hdr_type",
26366                 .field_bit_size = 4,
26367                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26368                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26369                 }
26370         },
26371         {
26372         .field_info_mask = {
26373                 .description = "tl4_hdr_error",
26374                 .field_bit_size = 1,
26375                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26376                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26377                 },
26378         .field_info_spec = {
26379                 .description = "tl4_hdr_error",
26380                 .field_bit_size = 1,
26381                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26382                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26383                 }
26384         },
26385         {
26386         .field_info_mask = {
26387                 .description = "tl4_hdr_valid",
26388                 .field_bit_size = 1,
26389                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26390                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26391                 .field_opr1 = {
26392                         0xff}
26393                 },
26394         .field_info_spec = {
26395                 .description = "tl4_hdr_valid",
26396                 .field_bit_size = 1,
26397                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26398                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26399                 }
26400         },
26401         {
26402         .field_info_mask = {
26403                 .description = "tl3_ipv6_cmp_dst",
26404                 .field_bit_size = 1,
26405                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26406                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26407                 },
26408         .field_info_spec = {
26409                 .description = "tl3_ipv6_cmp_dst",
26410                 .field_bit_size = 1,
26411                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26412                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26413                 }
26414         },
26415         {
26416         .field_info_mask = {
26417                 .description = "tl3_ipv6_cmp_src",
26418                 .field_bit_size = 1,
26419                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26420                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26421                 },
26422         .field_info_spec = {
26423                 .description = "tl3_ipv6_cmp_src",
26424                 .field_bit_size = 1,
26425                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26426                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26427                 }
26428         },
26429         {
26430         .field_info_mask = {
26431                 .description = "tl3_hdr_isIP",
26432                 .field_bit_size = 1,
26433                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26434                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26435                 },
26436         .field_info_spec = {
26437                 .description = "tl3_hdr_isIP",
26438                 .field_bit_size = 1,
26439                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26440                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26441                 }
26442         },
26443         {
26444         .field_info_mask = {
26445                 .description = "tl3_hdr_type",
26446                 .field_bit_size = 4,
26447                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26448                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26449                 },
26450         .field_info_spec = {
26451                 .description = "tl3_hdr_type",
26452                 .field_bit_size = 4,
26453                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26454                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26455                 }
26456         },
26457         {
26458         .field_info_mask = {
26459                 .description = "tl3_hdr_error",
26460                 .field_bit_size = 1,
26461                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26462                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26463                 },
26464         .field_info_spec = {
26465                 .description = "tl3_hdr_error",
26466                 .field_bit_size = 1,
26467                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26468                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26469                 }
26470         },
26471         {
26472         .field_info_mask = {
26473                 .description = "tl3_hdr_valid",
26474                 .field_bit_size = 1,
26475                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26476                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26477                 .field_opr1 = {
26478                         0xff}
26479                 },
26480         .field_info_spec = {
26481                 .description = "tl3_hdr_valid",
26482                 .field_bit_size = 1,
26483                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26484                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26485                 }
26486         },
26487         {
26488         .field_info_mask = {
26489                 .description = "tl2_two_vtags",
26490                 .field_bit_size = 1,
26491                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26492                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26493                 },
26494         .field_info_spec = {
26495                 .description = "tl2_two_vtags",
26496                 .field_bit_size = 1,
26497                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26498                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26499                 }
26500         },
26501         {
26502         .field_info_mask = {
26503                 .description = "tl2_vtag_present",
26504                 .field_bit_size = 1,
26505                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26506                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26507                 },
26508         .field_info_spec = {
26509                 .description = "tl2_vtag_present",
26510                 .field_bit_size = 1,
26511                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26512                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26513                 }
26514         },
26515         {
26516         .field_info_mask = {
26517                 .description = "tl2_uc_mc_bc",
26518                 .field_bit_size = 2,
26519                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26520                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26521                 },
26522         .field_info_spec = {
26523                 .description = "tl2_uc_mc_bc",
26524                 .field_bit_size = 2,
26525                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26526                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26527                 }
26528         },
26529         {
26530         .field_info_mask = {
26531                 .description = "tl2_hdr_type",
26532                 .field_bit_size = 2,
26533                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26534                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26535                 },
26536         .field_info_spec = {
26537                 .description = "tl2_hdr_type",
26538                 .field_bit_size = 2,
26539                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26540                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26541                 }
26542         },
26543         {
26544         .field_info_mask = {
26545                 .description = "tl2_hdr_valid",
26546                 .field_bit_size = 1,
26547                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26548                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26549                 .field_opr1 = {
26550                         0xff}
26551                 },
26552         .field_info_spec = {
26553                 .description = "tl2_hdr_valid",
26554                 .field_bit_size = 1,
26555                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26556                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26557                 }
26558         },
26559         {
26560         .field_info_mask = {
26561                 .description = "hrec_next",
26562                 .field_bit_size = 1,
26563                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26564                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26565                 },
26566         .field_info_spec = {
26567                 .description = "hrec_next",
26568                 .field_bit_size = 1,
26569                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26570                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26571                 }
26572         },
26573         {
26574         .field_info_mask = {
26575                 .description = "prof_func_id",
26576                 .field_bit_size = 7,
26577                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26578                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26579                 .field_opr1 = {
26580                         0xff}
26581                 },
26582         .field_info_spec = {
26583                 .description = "prof_func_id",
26584                 .field_bit_size = 7,
26585                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26586                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
26587                 .field_opr1 = {
26588                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
26589                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
26590                 }
26591         },
26592         {
26593         .field_info_mask = {
26594                 .description = "agg_error",
26595                 .field_bit_size = 1,
26596                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26597                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26598                 },
26599         .field_info_spec = {
26600                 .description = "agg_error",
26601                 .field_bit_size = 1,
26602                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26603                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26604                 }
26605         },
26606         {
26607         .field_info_mask = {
26608                 .description = "metadata",
26609                 .field_bit_size = 16,
26610                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26611                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26612                 },
26613         .field_info_spec = {
26614                 .description = "metadata",
26615                 .field_bit_size = 16,
26616                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26617                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26618                 }
26619         },
26620         {
26621         .field_info_mask = {
26622                 .description = "pkt_type_0",
26623                 .field_bit_size = 2,
26624                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26625                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26626                 },
26627         .field_info_spec = {
26628                 .description = "pkt_type_0",
26629                 .field_bit_size = 2,
26630                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26631                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26632                 }
26633         },
26634         {
26635         .field_info_mask = {
26636                 .description = "pkt_type_1",
26637                 .field_bit_size = 2,
26638                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26639                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26640                 },
26641         .field_info_spec = {
26642                 .description = "pkt_type_1",
26643                 .field_bit_size = 2,
26644                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26645                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26646                 }
26647         },
26648         {
26649         .field_info_mask = {
26650                 .description = "valid",
26651                 .field_bit_size = 1,
26652                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26653                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
26654                 .field_opr1 = {
26655                 1}
26656                 },
26657         .field_info_spec = {
26658                 .description = "valid",
26659                 .field_bit_size = 1,
26660                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26661                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
26662                 .field_opr1 = {
26663                 1}
26664                 }
26665         },
26666         /* class_tid: 3, , table: profile_tcam_cache.wr */
26667         {
26668         .field_info_mask = {
26669                 .description = "recycle_cnt",
26670                 .field_bit_size = 2,
26671                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26672                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26673                 },
26674         .field_info_spec = {
26675                 .description = "recycle_cnt",
26676                 .field_bit_size = 2,
26677                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26678                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
26679                 }
26680         },
26681         {
26682         .field_info_mask = {
26683                 .description = "prof_func_id",
26684                 .field_bit_size = 7,
26685                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26686                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26687                 .field_opr1 = {
26688                         0xff}
26689                 },
26690         .field_info_spec = {
26691                 .description = "prof_func_id",
26692                 .field_bit_size = 7,
26693                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26694                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
26695                 .field_opr1 = {
26696                 (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
26697                 BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
26698                 }
26699         },
26700         {
26701         .field_info_mask = {
26702                 .description = "hdr_sig_id",
26703                 .field_bit_size = 5,
26704                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26705                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26706                 .field_opr1 = {
26707                         0xff}
26708                 },
26709         .field_info_spec = {
26710                 .description = "hdr_sig_id",
26711                 .field_bit_size = 5,
26712                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26713                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
26714                 .field_opr1 = {
26715                 (BNXT_ULP_CF_IDX_HDR_SIG_ID >> 8) & 0xff,
26716                 BNXT_ULP_CF_IDX_HDR_SIG_ID & 0xff}
26717                 }
26718         },
26719         /* class_tid: 3, , table: wm.l3_l4.ipv4 */
26720         {
26721         .field_info_mask = {
26722                 .description = "wc_profile_id",
26723                 .field_bit_size = 8,
26724                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26725                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26726                 .field_opr1 = {
26727                         0xff}
26728                 },
26729         .field_info_spec = {
26730                 .description = "wc_profile_id",
26731                 .field_bit_size = 8,
26732                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26733                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
26734                 .field_opr1 = {
26735                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
26736                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
26737                 }
26738         },
26739         {
26740         .field_info_mask = {
26741                 .description = "l2_cntxt_id",
26742                 .field_bit_size = 10,
26743                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26744                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
26745                 .field_opr1 = {
26746                         0xff,
26747                         0xff}
26748                 },
26749         .field_info_spec = {
26750                 .description = "l2_cntxt_id",
26751                 .field_bit_size = 10,
26752                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
26753                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
26754                 .field_opr1 = {
26755                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
26756                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
26757                 }
26758         },
26759         {
26760         .field_info_mask = {
26761                 .description = "parif",
26762                 .field_bit_size = 4,
26763                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26764                 },
26765         .field_info_spec = {
26766                 .description = "parif",
26767                 .field_bit_size = 4,
26768                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26769                 }
26770         },
26771         {
26772         .field_info_mask = {
26773                 .description = "spif",
26774                 .field_bit_size = 2,
26775                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26776                 },
26777         .field_info_spec = {
26778                 .description = "spif",
26779                 .field_bit_size = 2,
26780                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26781                 }
26782         },
26783         {
26784         .field_info_mask = {
26785                 .description = "svif",
26786                 .field_bit_size = 11,
26787                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26788                 },
26789         .field_info_spec = {
26790                 .description = "svif",
26791                 .field_bit_size = 11,
26792                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26793                 }
26794         },
26795         {
26796         .field_info_mask = {
26797                 .description = "lcos",
26798                 .field_bit_size = 3,
26799                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26800                 },
26801         .field_info_spec = {
26802                 .description = "lcos",
26803                 .field_bit_size = 3,
26804                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26805                 }
26806         },
26807         {
26808         .field_info_mask = {
26809                 .description = "meta",
26810                 .field_bit_size = 16,
26811                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26812                 },
26813         .field_info_spec = {
26814                 .description = "meta",
26815                 .field_bit_size = 16,
26816                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26817                 }
26818         },
26819         {
26820         .field_info_mask = {
26821                 .description = "rcyc_cnt",
26822                 .field_bit_size = 2,
26823                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26824                 },
26825         .field_info_spec = {
26826                 .description = "rcyc_cnt",
26827                 .field_bit_size = 2,
26828                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26829                 }
26830         },
26831         {
26832         .field_info_mask = {
26833                 .description = "loopback",
26834                 .field_bit_size = 1,
26835                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26836                 },
26837         .field_info_spec = {
26838                 .description = "loopback",
26839                 .field_bit_size = 1,
26840                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26841                 }
26842         },
26843         {
26844         .field_info_mask = {
26845                 .description = "tl2_l2type",
26846                 .field_bit_size = 2,
26847                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26848                 },
26849         .field_info_spec = {
26850                 .description = "tl2_l2type",
26851                 .field_bit_size = 2,
26852                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26853                 }
26854         },
26855         {
26856         .field_info_mask = {
26857                 .description = "tl2_dmac",
26858                 .field_bit_size = 48,
26859                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26860                 },
26861         .field_info_spec = {
26862                 .description = "tl2_dmac",
26863                 .field_bit_size = 48,
26864                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26865                 }
26866         },
26867         {
26868         .field_info_mask = {
26869                 .description = "tl2_smac",
26870                 .field_bit_size = 48,
26871                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26872                 },
26873         .field_info_spec = {
26874                 .description = "tl2_smac",
26875                 .field_bit_size = 48,
26876                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26877                 }
26878         },
26879         {
26880         .field_info_mask = {
26881                 .description = "tl2_dt",
26882                 .field_bit_size = 2,
26883                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26884                 },
26885         .field_info_spec = {
26886                 .description = "tl2_dt",
26887                 .field_bit_size = 2,
26888                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26889                 }
26890         },
26891         {
26892         .field_info_mask = {
26893                 .description = "tl2_sa",
26894                 .field_bit_size = 1,
26895                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26896                 },
26897         .field_info_spec = {
26898                 .description = "tl2_sa",
26899                 .field_bit_size = 1,
26900                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26901                 }
26902         },
26903         {
26904         .field_info_mask = {
26905                 .description = "tl2_nvt",
26906                 .field_bit_size = 2,
26907                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26908                 },
26909         .field_info_spec = {
26910                 .description = "tl2_nvt",
26911                 .field_bit_size = 2,
26912                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26913                 }
26914         },
26915         {
26916         .field_info_mask = {
26917                 .description = "tl2_ovp",
26918                 .field_bit_size = 3,
26919                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26920                 },
26921         .field_info_spec = {
26922                 .description = "tl2_ovp",
26923                 .field_bit_size = 3,
26924                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26925                 }
26926         },
26927         {
26928         .field_info_mask = {
26929                 .description = "tl2_ovd",
26930                 .field_bit_size = 1,
26931                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26932                 },
26933         .field_info_spec = {
26934                 .description = "tl2_ovd",
26935                 .field_bit_size = 1,
26936                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26937                 }
26938         },
26939         {
26940         .field_info_mask = {
26941                 .description = "tl2_ovv",
26942                 .field_bit_size = 12,
26943                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26944                 },
26945         .field_info_spec = {
26946                 .description = "tl2_ovv",
26947                 .field_bit_size = 12,
26948                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26949                 }
26950         },
26951         {
26952         .field_info_mask = {
26953                 .description = "tl2_ovt",
26954                 .field_bit_size = 3,
26955                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26956                 },
26957         .field_info_spec = {
26958                 .description = "tl2_ovt",
26959                 .field_bit_size = 3,
26960                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26961                 }
26962         },
26963         {
26964         .field_info_mask = {
26965                 .description = "tl2_ivp",
26966                 .field_bit_size = 3,
26967                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26968                 },
26969         .field_info_spec = {
26970                 .description = "tl2_ivp",
26971                 .field_bit_size = 3,
26972                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26973                 }
26974         },
26975         {
26976         .field_info_mask = {
26977                 .description = "tl2_ivd",
26978                 .field_bit_size = 1,
26979                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26980                 },
26981         .field_info_spec = {
26982                 .description = "tl2_ivd",
26983                 .field_bit_size = 1,
26984                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26985                 }
26986         },
26987         {
26988         .field_info_mask = {
26989                 .description = "tl2_ivv",
26990                 .field_bit_size = 12,
26991                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26992                 },
26993         .field_info_spec = {
26994                 .description = "tl2_ivv",
26995                 .field_bit_size = 12,
26996                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
26997                 }
26998         },
26999         {
27000         .field_info_mask = {
27001                 .description = "tl2_ivt",
27002                 .field_bit_size = 3,
27003                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27004                 },
27005         .field_info_spec = {
27006                 .description = "tl2_ivt",
27007                 .field_bit_size = 3,
27008                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27009                 }
27010         },
27011         {
27012         .field_info_mask = {
27013                 .description = "tl2_etype",
27014                 .field_bit_size = 16,
27015                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27016                 },
27017         .field_info_spec = {
27018                 .description = "tl2_etype",
27019                 .field_bit_size = 16,
27020                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27021                 }
27022         },
27023         {
27024         .field_info_mask = {
27025                 .description = "tl3.l3type",
27026                 .field_bit_size = 4,
27027                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27028                 },
27029         .field_info_spec = {
27030                 .description = "tl3.l3type",
27031                 .field_bit_size = 4,
27032                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27033                 }
27034         },
27035         {
27036         .field_info_mask = {
27037                 .description = "tl3.sip.ipv4",
27038                 .field_bit_size = 32,
27039                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27040                 },
27041         .field_info_spec = {
27042                 .description = "tl3.sip.ipv4",
27043                 .field_bit_size = 32,
27044                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27045                 }
27046         },
27047         {
27048         .field_info_mask = {
27049                 .description = "tl3.sip.ipv6",
27050                 .field_bit_size = 128,
27051                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27052                 },
27053         .field_info_spec = {
27054                 .description = "tl3.sip.ipv6",
27055                 .field_bit_size = 128,
27056                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27057                 }
27058         },
27059         {
27060         .field_info_mask = {
27061                 .description = "tl3.sip_selcmp.ipv6",
27062                 .field_bit_size = 72,
27063                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27064                 },
27065         .field_info_spec = {
27066                 .description = "tl3.sip_selcmp.ipv6",
27067                 .field_bit_size = 72,
27068                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27069                 }
27070         },
27071         {
27072         .field_info_mask = {
27073                 .description = "tl3.dip.ipv4",
27074                 .field_bit_size = 32,
27075                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27076                 },
27077         .field_info_spec = {
27078                 .description = "tl3.dip.ipv4",
27079                 .field_bit_size = 32,
27080                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27081                 }
27082         },
27083         {
27084         .field_info_mask = {
27085                 .description = "tl3.dip.ipv6",
27086                 .field_bit_size = 128,
27087                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27088                 },
27089         .field_info_spec = {
27090                 .description = "tl3.dip.ipv6",
27091                 .field_bit_size = 128,
27092                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27093                 }
27094         },
27095         {
27096         .field_info_mask = {
27097                 .description = "tl3.dip_selcmp.ipv6",
27098                 .field_bit_size = 72,
27099                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27100                 },
27101         .field_info_spec = {
27102                 .description = "tl3.dip_selcmp.ipv6",
27103                 .field_bit_size = 72,
27104                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27105                 }
27106         },
27107         {
27108         .field_info_mask = {
27109                 .description = "tl3.ttl",
27110                 .field_bit_size = 8,
27111                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27112                 },
27113         .field_info_spec = {
27114                 .description = "tl3.ttl",
27115                 .field_bit_size = 8,
27116                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27117                 }
27118         },
27119         {
27120         .field_info_mask = {
27121                 .description = "tl3.prot",
27122                 .field_bit_size = 8,
27123                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27124                 },
27125         .field_info_spec = {
27126                 .description = "tl3.prot",
27127                 .field_bit_size = 8,
27128                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27129                 }
27130         },
27131         {
27132         .field_info_mask = {
27133                 .description = "tl3.fid.ipv4",
27134                 .field_bit_size = 16,
27135                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27136                 },
27137         .field_info_spec = {
27138                 .description = "tl3.fid.ipv4",
27139                 .field_bit_size = 16,
27140                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27141                 }
27142         },
27143         {
27144         .field_info_mask = {
27145                 .description = "tl3.fid.ipv6",
27146                 .field_bit_size = 20,
27147                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27148                 },
27149         .field_info_spec = {
27150                 .description = "tl3.fid.ipv6",
27151                 .field_bit_size = 20,
27152                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27153                 }
27154         },
27155         {
27156         .field_info_mask = {
27157                 .description = "tl3.qos",
27158                 .field_bit_size = 8,
27159                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27160                 },
27161         .field_info_spec = {
27162                 .description = "tl3.qos",
27163                 .field_bit_size = 8,
27164                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27165                 }
27166         },
27167         {
27168         .field_info_mask = {
27169                 .description = "tl3.ieh_nonext",
27170                 .field_bit_size = 1,
27171                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27172                 },
27173         .field_info_spec = {
27174                 .description = "tl3.ieh_nonext",
27175                 .field_bit_size = 1,
27176                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27177                 }
27178         },
27179         {
27180         .field_info_mask = {
27181                 .description = "tl3.ieh_esp",
27182                 .field_bit_size = 1,
27183                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27184                 },
27185         .field_info_spec = {
27186                 .description = "tl3.ieh_esp",
27187                 .field_bit_size = 1,
27188                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27189                 }
27190         },
27191         {
27192         .field_info_mask = {
27193                 .description = "tl3.ieh_auth",
27194                 .field_bit_size = 1,
27195                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27196                 },
27197         .field_info_spec = {
27198                 .description = "tl3.ieh_auth",
27199                 .field_bit_size = 1,
27200                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27201                 }
27202         },
27203         {
27204         .field_info_mask = {
27205                 .description = "tl3.ieh_dest",
27206                 .field_bit_size = 1,
27207                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27208                 },
27209         .field_info_spec = {
27210                 .description = "tl3.ieh_dest",
27211                 .field_bit_size = 1,
27212                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27213                 }
27214         },
27215         {
27216         .field_info_mask = {
27217                 .description = "tl3.ieh_frag",
27218                 .field_bit_size = 1,
27219                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27220                 },
27221         .field_info_spec = {
27222                 .description = "tl3.ieh_frag",
27223                 .field_bit_size = 1,
27224                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27225                 }
27226         },
27227         {
27228         .field_info_mask = {
27229                 .description = "tl3.ieh_rthdr",
27230                 .field_bit_size = 1,
27231                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27232                 },
27233         .field_info_spec = {
27234                 .description = "tl3.ieh_rthdr",
27235                 .field_bit_size = 1,
27236                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27237                 }
27238         },
27239         {
27240         .field_info_mask = {
27241                 .description = "tl3.ieh_hop",
27242                 .field_bit_size = 1,
27243                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27244                 },
27245         .field_info_spec = {
27246                 .description = "tl3.ieh_hop",
27247                 .field_bit_size = 1,
27248                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27249                 }
27250         },
27251         {
27252         .field_info_mask = {
27253                 .description = "tl3.ieh_1frag",
27254                 .field_bit_size = 1,
27255                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27256                 },
27257         .field_info_spec = {
27258                 .description = "tl3.ieh_1frag",
27259                 .field_bit_size = 1,
27260                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27261                 }
27262         },
27263         {
27264         .field_info_mask = {
27265                 .description = "tl3.df",
27266                 .field_bit_size = 1,
27267                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27268                 },
27269         .field_info_spec = {
27270                 .description = "tl3.df",
27271                 .field_bit_size = 1,
27272                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27273                 }
27274         },
27275         {
27276         .field_info_mask = {
27277                 .description = "tl3.l3err",
27278                 .field_bit_size = 4,
27279                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27280                 },
27281         .field_info_spec = {
27282                 .description = "tl3.l3err",
27283                 .field_bit_size = 4,
27284                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27285                 }
27286         },
27287         {
27288         .field_info_mask = {
27289                 .description = "tl4.l4type",
27290                 .field_bit_size = 4,
27291                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27292                 },
27293         .field_info_spec = {
27294                 .description = "tl4.l4type",
27295                 .field_bit_size = 4,
27296                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27297                 }
27298         },
27299         {
27300         .field_info_mask = {
27301                 .description = "tl4.src",
27302                 .field_bit_size = 16,
27303                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27304                 },
27305         .field_info_spec = {
27306                 .description = "tl4.src",
27307                 .field_bit_size = 16,
27308                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27309                 }
27310         },
27311         {
27312         .field_info_mask = {
27313                 .description = "tl4.dst",
27314                 .field_bit_size = 16,
27315                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27316                 },
27317         .field_info_spec = {
27318                 .description = "tl4.dst",
27319                 .field_bit_size = 16,
27320                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27321                 }
27322         },
27323         {
27324         .field_info_mask = {
27325                 .description = "tl4.flags",
27326                 .field_bit_size = 9,
27327                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27328                 },
27329         .field_info_spec = {
27330                 .description = "tl4.flags",
27331                 .field_bit_size = 9,
27332                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27333                 }
27334         },
27335         {
27336         .field_info_mask = {
27337                 .description = "tl4.seq",
27338                 .field_bit_size = 32,
27339                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27340                 },
27341         .field_info_spec = {
27342                 .description = "tl4.seq",
27343                 .field_bit_size = 32,
27344                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27345                 }
27346         },
27347         {
27348         .field_info_mask = {
27349                 .description = "tl4.pa",
27350                 .field_bit_size = 1,
27351                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27352                 },
27353         .field_info_spec = {
27354                 .description = "tl4.pa",
27355                 .field_bit_size = 1,
27356                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27357                 }
27358         },
27359         {
27360         .field_info_mask = {
27361                 .description = "tl4.opt",
27362                 .field_bit_size = 1,
27363                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27364                 },
27365         .field_info_spec = {
27366                 .description = "tl4.opt",
27367                 .field_bit_size = 1,
27368                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27369                 }
27370         },
27371         {
27372         .field_info_mask = {
27373                 .description = "tl4.tcpts",
27374                 .field_bit_size = 1,
27375                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27376                 },
27377         .field_info_spec = {
27378                 .description = "tl4.tcpts",
27379                 .field_bit_size = 1,
27380                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27381                 }
27382         },
27383         {
27384         .field_info_mask = {
27385                 .description = "tl4.err",
27386                 .field_bit_size = 4,
27387                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27388                 },
27389         .field_info_spec = {
27390                 .description = "tl4.err",
27391                 .field_bit_size = 4,
27392                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27393                 }
27394         },
27395         {
27396         .field_info_mask = {
27397                 .description = "tuntype",
27398                 .field_bit_size = 4,
27399                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27400                 },
27401         .field_info_spec = {
27402                 .description = "tuntype",
27403                 .field_bit_size = 4,
27404                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27405                 }
27406         },
27407         {
27408         .field_info_mask = {
27409                 .description = "tflags",
27410                 .field_bit_size = 3,
27411                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27412                 },
27413         .field_info_spec = {
27414                 .description = "tflags",
27415                 .field_bit_size = 3,
27416                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27417                 }
27418         },
27419         {
27420         .field_info_mask = {
27421                 .description = "tids",
27422                 .field_bit_size = 24,
27423                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27424                 },
27425         .field_info_spec = {
27426                 .description = "tids",
27427                 .field_bit_size = 24,
27428                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27429                 }
27430         },
27431         {
27432         .field_info_mask = {
27433                 .description = "tid",
27434                 .field_bit_size = 32,
27435                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27436                 },
27437         .field_info_spec = {
27438                 .description = "tid",
27439                 .field_bit_size = 32,
27440                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27441                 }
27442         },
27443         {
27444         .field_info_mask = {
27445                 .description = "tctxts",
27446                 .field_bit_size = 24,
27447                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27448                 },
27449         .field_info_spec = {
27450                 .description = "tctxts",
27451                 .field_bit_size = 24,
27452                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27453                 }
27454         },
27455         {
27456         .field_info_mask = {
27457                 .description = "tctxt",
27458                 .field_bit_size = 32,
27459                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27460                 },
27461         .field_info_spec = {
27462                 .description = "tctxt",
27463                 .field_bit_size = 32,
27464                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27465                 }
27466         },
27467         {
27468         .field_info_mask = {
27469                 .description = "tqos",
27470                 .field_bit_size = 3,
27471                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27472                 },
27473         .field_info_spec = {
27474                 .description = "tqos",
27475                 .field_bit_size = 3,
27476                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27477                 }
27478         },
27479         {
27480         .field_info_mask = {
27481                 .description = "terr",
27482                 .field_bit_size = 4,
27483                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27484                 },
27485         .field_info_spec = {
27486                 .description = "terr",
27487                 .field_bit_size = 4,
27488                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27489                 }
27490         },
27491         {
27492         .field_info_mask = {
27493                 .description = "l2_l2type",
27494                 .field_bit_size = 2,
27495                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27496                 },
27497         .field_info_spec = {
27498                 .description = "l2_l2type",
27499                 .field_bit_size = 2,
27500                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27501                 }
27502         },
27503         {
27504         .field_info_mask = {
27505                 .description = "l2_dmac",
27506                 .field_bit_size = 48,
27507                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27508                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
27509                 .field_opr1 = {
27510                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
27511                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
27512                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
27513                 .field_opr2 = {
27514                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
27515                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
27516                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27517                 },
27518         .field_info_spec = {
27519                 .description = "l2_dmac",
27520                 .field_bit_size = 48,
27521                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27522                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
27523                 .field_opr1 = {
27524                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
27525                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
27526                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
27527                 .field_opr2 = {
27528                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
27529                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
27530                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27531                 }
27532         },
27533         {
27534         .field_info_mask = {
27535                 .description = "l2_smac",
27536                 .field_bit_size = 48,
27537                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27538                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
27539                 .field_opr1 = {
27540                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
27541                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
27542                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
27543                 .field_opr2 = {
27544                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
27545                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
27546                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27547                 },
27548         .field_info_spec = {
27549                 .description = "l2_smac",
27550                 .field_bit_size = 48,
27551                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27552                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
27553                 .field_opr1 = {
27554                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
27555                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
27556                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
27557                 .field_opr2 = {
27558                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
27559                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
27560                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27561                 }
27562         },
27563         {
27564         .field_info_mask = {
27565                 .description = "l2_dt",
27566                 .field_bit_size = 2,
27567                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27568                 },
27569         .field_info_spec = {
27570                 .description = "l2_dt",
27571                 .field_bit_size = 2,
27572                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27573                 }
27574         },
27575         {
27576         .field_info_mask = {
27577                 .description = "l2_sa",
27578                 .field_bit_size = 1,
27579                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27580                 },
27581         .field_info_spec = {
27582                 .description = "l2_sa",
27583                 .field_bit_size = 1,
27584                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27585                 }
27586         },
27587         {
27588         .field_info_mask = {
27589                 .description = "l2_nvt",
27590                 .field_bit_size = 2,
27591                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27592                 },
27593         .field_info_spec = {
27594                 .description = "l2_nvt",
27595                 .field_bit_size = 2,
27596                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27597                 }
27598         },
27599         {
27600         .field_info_mask = {
27601                 .description = "l2_ovp",
27602                 .field_bit_size = 3,
27603                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27604                 },
27605         .field_info_spec = {
27606                 .description = "l2_ovp",
27607                 .field_bit_size = 3,
27608                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27609                 }
27610         },
27611         {
27612         .field_info_mask = {
27613                 .description = "l2_ovd",
27614                 .field_bit_size = 1,
27615                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27616                 },
27617         .field_info_spec = {
27618                 .description = "l2_ovd",
27619                 .field_bit_size = 1,
27620                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27621                 }
27622         },
27623         {
27624         .field_info_mask = {
27625                 .description = "l2_ovv",
27626                 .field_bit_size = 12,
27627                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27628                 },
27629         .field_info_spec = {
27630                 .description = "l2_ovv",
27631                 .field_bit_size = 12,
27632                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27633                 }
27634         },
27635         {
27636         .field_info_mask = {
27637                 .description = "l2_ovt",
27638                 .field_bit_size = 3,
27639                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27640                 },
27641         .field_info_spec = {
27642                 .description = "l2_ovt",
27643                 .field_bit_size = 3,
27644                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27645                 }
27646         },
27647         {
27648         .field_info_mask = {
27649                 .description = "l2_ivp",
27650                 .field_bit_size = 3,
27651                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27652                 },
27653         .field_info_spec = {
27654                 .description = "l2_ivp",
27655                 .field_bit_size = 3,
27656                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27657                 }
27658         },
27659         {
27660         .field_info_mask = {
27661                 .description = "l2_ivd",
27662                 .field_bit_size = 1,
27663                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27664                 },
27665         .field_info_spec = {
27666                 .description = "l2_ivd",
27667                 .field_bit_size = 1,
27668                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27669                 }
27670         },
27671         {
27672         .field_info_mask = {
27673                 .description = "l2_ivv",
27674                 .field_bit_size = 12,
27675                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27676                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
27677                 .field_opr1 = {
27678                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
27679                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
27680                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
27681                 .field_opr2 = {
27682                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
27683                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
27684                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27685                 },
27686         .field_info_spec = {
27687                 .description = "l2_ivv",
27688                 .field_bit_size = 12,
27689                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27690                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
27691                 .field_opr1 = {
27692                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
27693                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
27694                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
27695                 .field_opr2 = {
27696                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
27697                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
27698                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27699                 }
27700         },
27701         {
27702         .field_info_mask = {
27703                 .description = "l2_ivt",
27704                 .field_bit_size = 3,
27705                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27706                 },
27707         .field_info_spec = {
27708                 .description = "l2_ivt",
27709                 .field_bit_size = 3,
27710                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27711                 }
27712         },
27713         {
27714         .field_info_mask = {
27715                 .description = "l2_etype",
27716                 .field_bit_size = 16,
27717                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27718                 },
27719         .field_info_spec = {
27720                 .description = "l2_etype",
27721                 .field_bit_size = 16,
27722                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27723                 }
27724         },
27725         {
27726         .field_info_mask = {
27727                 .description = "l3.l3type",
27728                 .field_bit_size = 4,
27729                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27730                 },
27731         .field_info_spec = {
27732                 .description = "l3.l3type",
27733                 .field_bit_size = 4,
27734                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27735                 }
27736         },
27737         {
27738         .field_info_mask = {
27739                 .description = "l3.sip.ipv4",
27740                 .field_bit_size = 32,
27741                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
27742                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
27743                 .field_opr1 = {
27744                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
27745                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
27746                 },
27747         .field_info_spec = {
27748                 .description = "l3.sip.ipv4",
27749                 .field_bit_size = 32,
27750                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
27751                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
27752                 .field_opr1 = {
27753                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
27754                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
27755                 }
27756         },
27757         {
27758         .field_info_mask = {
27759                 .description = "l3.sip.ipv6",
27760                 .field_bit_size = 128,
27761                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27762                 },
27763         .field_info_spec = {
27764                 .description = "l3.sip.ipv6",
27765                 .field_bit_size = 128,
27766                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27767                 }
27768         },
27769         {
27770         .field_info_mask = {
27771                 .description = "l3.sip_selcmp.ipv6",
27772                 .field_bit_size = 72,
27773                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27774                 },
27775         .field_info_spec = {
27776                 .description = "l3.sip_selcmp.ipv6",
27777                 .field_bit_size = 72,
27778                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27779                 }
27780         },
27781         {
27782         .field_info_mask = {
27783                 .description = "l3.dip.ipv4",
27784                 .field_bit_size = 32,
27785                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
27786                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
27787                 .field_opr1 = {
27788                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
27789                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
27790                 },
27791         .field_info_spec = {
27792                 .description = "l3.dip.ipv4",
27793                 .field_bit_size = 32,
27794                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
27795                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
27796                 .field_opr1 = {
27797                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
27798                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
27799                 }
27800         },
27801         {
27802         .field_info_mask = {
27803                 .description = "l3.dip.ipv6",
27804                 .field_bit_size = 128,
27805                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27806                 },
27807         .field_info_spec = {
27808                 .description = "l3.dip.ipv6",
27809                 .field_bit_size = 128,
27810                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27811                 }
27812         },
27813         {
27814         .field_info_mask = {
27815                 .description = "l3.dip_selcmp.ipv6",
27816                 .field_bit_size = 72,
27817                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27818                 },
27819         .field_info_spec = {
27820                 .description = "l3.dip_selcmp.ipv6",
27821                 .field_bit_size = 72,
27822                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27823                 }
27824         },
27825         {
27826         .field_info_mask = {
27827                 .description = "l3.ttl",
27828                 .field_bit_size = 8,
27829                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27830                 },
27831         .field_info_spec = {
27832                 .description = "l3.ttl",
27833                 .field_bit_size = 8,
27834                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27835                 }
27836         },
27837         {
27838         .field_info_mask = {
27839                 .description = "l3.prot",
27840                 .field_bit_size = 8,
27841                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27842                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
27843                 .field_opr1 = {
27844                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
27845                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
27846                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
27847                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27848                 },
27849         .field_info_spec = {
27850                 .description = "l3.prot",
27851                 .field_bit_size = 8,
27852                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
27853                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
27854                 .field_opr1 = {
27855                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
27856                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
27857                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
27858                 .field_opr2 = {
27859                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
27860                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
27861                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
27862                 }
27863         },
27864         {
27865         .field_info_mask = {
27866                 .description = "l3.fid.ipv4",
27867                 .field_bit_size = 16,
27868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27869                 },
27870         .field_info_spec = {
27871                 .description = "l3.fid.ipv4",
27872                 .field_bit_size = 16,
27873                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27874                 }
27875         },
27876         {
27877         .field_info_mask = {
27878                 .description = "l3.fid.ipv6",
27879                 .field_bit_size = 20,
27880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27881                 },
27882         .field_info_spec = {
27883                 .description = "l3.fid.ipv6",
27884                 .field_bit_size = 20,
27885                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27886                 }
27887         },
27888         {
27889         .field_info_mask = {
27890                 .description = "l3.qos",
27891                 .field_bit_size = 8,
27892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27893                 },
27894         .field_info_spec = {
27895                 .description = "l3.qos",
27896                 .field_bit_size = 8,
27897                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27898                 }
27899         },
27900         {
27901         .field_info_mask = {
27902                 .description = "l3.ieh_nonext",
27903                 .field_bit_size = 1,
27904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27905                 },
27906         .field_info_spec = {
27907                 .description = "l3.ieh_nonext",
27908                 .field_bit_size = 1,
27909                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27910                 }
27911         },
27912         {
27913         .field_info_mask = {
27914                 .description = "l3.ieh_esp",
27915                 .field_bit_size = 1,
27916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27917                 },
27918         .field_info_spec = {
27919                 .description = "l3.ieh_esp",
27920                 .field_bit_size = 1,
27921                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27922                 }
27923         },
27924         {
27925         .field_info_mask = {
27926                 .description = "l3.ieh_auth",
27927                 .field_bit_size = 1,
27928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27929                 },
27930         .field_info_spec = {
27931                 .description = "l3.ieh_auth",
27932                 .field_bit_size = 1,
27933                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27934                 }
27935         },
27936         {
27937         .field_info_mask = {
27938                 .description = "l3.ieh_dest",
27939                 .field_bit_size = 1,
27940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27941                 },
27942         .field_info_spec = {
27943                 .description = "l3.ieh_dest",
27944                 .field_bit_size = 1,
27945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27946                 }
27947         },
27948         {
27949         .field_info_mask = {
27950                 .description = "l3.ieh_frag",
27951                 .field_bit_size = 1,
27952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27953                 },
27954         .field_info_spec = {
27955                 .description = "l3.ieh_frag",
27956                 .field_bit_size = 1,
27957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27958                 }
27959         },
27960         {
27961         .field_info_mask = {
27962                 .description = "l3.ieh_rthdr",
27963                 .field_bit_size = 1,
27964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27965                 },
27966         .field_info_spec = {
27967                 .description = "l3.ieh_rthdr",
27968                 .field_bit_size = 1,
27969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27970                 }
27971         },
27972         {
27973         .field_info_mask = {
27974                 .description = "l3.ieh_hop",
27975                 .field_bit_size = 1,
27976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27977                 },
27978         .field_info_spec = {
27979                 .description = "l3.ieh_hop",
27980                 .field_bit_size = 1,
27981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27982                 }
27983         },
27984         {
27985         .field_info_mask = {
27986                 .description = "l3.ieh_1frag",
27987                 .field_bit_size = 1,
27988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27989                 },
27990         .field_info_spec = {
27991                 .description = "l3.ieh_1frag",
27992                 .field_bit_size = 1,
27993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
27994                 }
27995         },
27996         {
27997         .field_info_mask = {
27998                 .description = "l3.df",
27999                 .field_bit_size = 1,
28000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28001                 },
28002         .field_info_spec = {
28003                 .description = "l3.df",
28004                 .field_bit_size = 1,
28005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28006                 }
28007         },
28008         {
28009         .field_info_mask = {
28010                 .description = "l3.l3err.ipv4",
28011                 .field_bit_size = 4,
28012                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28013                 },
28014         .field_info_spec = {
28015                 .description = "l3.l3err.ipv4",
28016                 .field_bit_size = 4,
28017                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28018                 }
28019         },
28020         {
28021         .field_info_mask = {
28022                 .description = "l3.l3err.ipv6",
28023                 .field_bit_size = 4,
28024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28025                 },
28026         .field_info_spec = {
28027                 .description = "l3.l3err.ipv6",
28028                 .field_bit_size = 4,
28029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28030                 }
28031         },
28032         {
28033         .field_info_mask = {
28034                 .description = "l4.l4type",
28035                 .field_bit_size = 4,
28036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28037                 },
28038         .field_info_spec = {
28039                 .description = "l4.l4type",
28040                 .field_bit_size = 4,
28041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28042                 }
28043         },
28044         {
28045         .field_info_mask = {
28046                 .description = "l4.src",
28047                 .field_bit_size = 16,
28048                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
28049                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
28050                 .field_opr1 = {
28051                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
28052                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
28053                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
28054                 .field_opr2 = {
28055                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK >> 8) & 0xff,
28056                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT_MASK & 0xff},
28057                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
28058                 },
28059         .field_info_spec = {
28060                 .description = "l4.src",
28061                 .field_bit_size = 16,
28062                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
28063                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
28064                 .field_opr1 = {
28065                 (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
28066                 BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff},
28067                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
28068                 .field_opr2 = {
28069                         (BNXT_ULP_CF_IDX_O_L4_SRC_PORT >> 8) & 0xff,
28070                         BNXT_ULP_CF_IDX_O_L4_SRC_PORT & 0xff},
28071                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
28072                 }
28073         },
28074         {
28075         .field_info_mask = {
28076                 .description = "l4.dst",
28077                 .field_bit_size = 16,
28078                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
28079                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
28080                 .field_opr1 = {
28081                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
28082                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
28083                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
28084                 .field_opr2 = {
28085                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK >> 8) & 0xff,
28086                         BNXT_ULP_CF_IDX_O_L4_DST_PORT_MASK & 0xff},
28087                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
28088                 },
28089         .field_info_spec = {
28090                 .description = "l4.dst",
28091                 .field_bit_size = 16,
28092                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
28093                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
28094                 .field_opr1 = {
28095                 (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
28096                 BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff},
28097                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
28098                 .field_opr2 = {
28099                         (BNXT_ULP_CF_IDX_O_L4_DST_PORT >> 8) & 0xff,
28100                         BNXT_ULP_CF_IDX_O_L4_DST_PORT & 0xff},
28101                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
28102                 }
28103         },
28104         {
28105         .field_info_mask = {
28106                 .description = "l4.flags",
28107                 .field_bit_size = 9,
28108                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28109                 },
28110         .field_info_spec = {
28111                 .description = "l4.flags",
28112                 .field_bit_size = 9,
28113                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28114                 }
28115         },
28116         {
28117         .field_info_mask = {
28118                 .description = "l4.seq",
28119                 .field_bit_size = 32,
28120                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28121                 },
28122         .field_info_spec = {
28123                 .description = "l4.seq",
28124                 .field_bit_size = 32,
28125                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28126                 }
28127         },
28128         {
28129         .field_info_mask = {
28130                 .description = "l4.ack",
28131                 .field_bit_size = 32,
28132                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28133                 },
28134         .field_info_spec = {
28135                 .description = "l4.ack",
28136                 .field_bit_size = 32,
28137                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28138                 }
28139         },
28140         {
28141         .field_info_mask = {
28142                 .description = "l4.win",
28143                 .field_bit_size = 16,
28144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28145                 },
28146         .field_info_spec = {
28147                 .description = "l4.win",
28148                 .field_bit_size = 16,
28149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28150                 }
28151         },
28152         {
28153         .field_info_mask = {
28154                 .description = "l4.pa",
28155                 .field_bit_size = 1,
28156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28157                 },
28158         .field_info_spec = {
28159                 .description = "l4.pa",
28160                 .field_bit_size = 1,
28161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28162                 }
28163         },
28164         {
28165         .field_info_mask = {
28166                 .description = "l4.opt",
28167                 .field_bit_size = 1,
28168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28169                 },
28170         .field_info_spec = {
28171                 .description = "l4.opt",
28172                 .field_bit_size = 1,
28173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28174                 }
28175         },
28176         {
28177         .field_info_mask = {
28178                 .description = "l4.tcpts",
28179                 .field_bit_size = 1,
28180                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28181                 },
28182         .field_info_spec = {
28183                 .description = "l4.tcpts",
28184                 .field_bit_size = 1,
28185                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28186                 }
28187         },
28188         {
28189         .field_info_mask = {
28190                 .description = "l4.tsval",
28191                 .field_bit_size = 32,
28192                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28193                 },
28194         .field_info_spec = {
28195                 .description = "l4.tsval",
28196                 .field_bit_size = 32,
28197                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28198                 }
28199         },
28200         {
28201         .field_info_mask = {
28202                 .description = "l4.txecr",
28203                 .field_bit_size = 32,
28204                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28205                 },
28206         .field_info_spec = {
28207                 .description = "l4.txecr",
28208                 .field_bit_size = 32,
28209                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28210                 }
28211         },
28212         {
28213         .field_info_mask = {
28214                 .description = "l4.err",
28215                 .field_bit_size = 4,
28216                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28217                 },
28218         .field_info_spec = {
28219                 .description = "l4.err",
28220                 .field_bit_size = 4,
28221                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28222                 }
28223         },
28224         /* class_tid: 3, , table: wm.l3.ipv4 */
28225         {
28226         .field_info_mask = {
28227                 .description = "wc_profile_id",
28228                 .field_bit_size = 8,
28229                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
28230                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
28231                 .field_opr1 = {
28232                         0xff}
28233                 },
28234         .field_info_spec = {
28235                 .description = "wc_profile_id",
28236                 .field_bit_size = 8,
28237                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
28238                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
28239                 .field_opr1 = {
28240                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
28241                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
28242                 }
28243         },
28244         {
28245         .field_info_mask = {
28246                 .description = "l2_cntxt_id",
28247                 .field_bit_size = 10,
28248                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
28249                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
28250                 .field_opr1 = {
28251                         0xff,
28252                         0xff}
28253                 },
28254         .field_info_spec = {
28255                 .description = "l2_cntxt_id",
28256                 .field_bit_size = 10,
28257                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
28258                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
28259                 .field_opr1 = {
28260                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
28261                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
28262                 }
28263         },
28264         {
28265         .field_info_mask = {
28266                 .description = "parif",
28267                 .field_bit_size = 4,
28268                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28269                 },
28270         .field_info_spec = {
28271                 .description = "parif",
28272                 .field_bit_size = 4,
28273                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28274                 }
28275         },
28276         {
28277         .field_info_mask = {
28278                 .description = "spif",
28279                 .field_bit_size = 2,
28280                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28281                 },
28282         .field_info_spec = {
28283                 .description = "spif",
28284                 .field_bit_size = 2,
28285                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28286                 }
28287         },
28288         {
28289         .field_info_mask = {
28290                 .description = "svif",
28291                 .field_bit_size = 11,
28292                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28293                 },
28294         .field_info_spec = {
28295                 .description = "svif",
28296                 .field_bit_size = 11,
28297                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28298                 }
28299         },
28300         {
28301         .field_info_mask = {
28302                 .description = "lcos",
28303                 .field_bit_size = 3,
28304                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28305                 },
28306         .field_info_spec = {
28307                 .description = "lcos",
28308                 .field_bit_size = 3,
28309                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28310                 }
28311         },
28312         {
28313         .field_info_mask = {
28314                 .description = "meta",
28315                 .field_bit_size = 16,
28316                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28317                 },
28318         .field_info_spec = {
28319                 .description = "meta",
28320                 .field_bit_size = 16,
28321                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28322                 }
28323         },
28324         {
28325         .field_info_mask = {
28326                 .description = "rcyc_cnt",
28327                 .field_bit_size = 2,
28328                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28329                 },
28330         .field_info_spec = {
28331                 .description = "rcyc_cnt",
28332                 .field_bit_size = 2,
28333                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28334                 }
28335         },
28336         {
28337         .field_info_mask = {
28338                 .description = "loopback",
28339                 .field_bit_size = 1,
28340                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28341                 },
28342         .field_info_spec = {
28343                 .description = "loopback",
28344                 .field_bit_size = 1,
28345                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28346                 }
28347         },
28348         {
28349         .field_info_mask = {
28350                 .description = "tl2_l2type",
28351                 .field_bit_size = 2,
28352                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28353                 },
28354         .field_info_spec = {
28355                 .description = "tl2_l2type",
28356                 .field_bit_size = 2,
28357                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28358                 }
28359         },
28360         {
28361         .field_info_mask = {
28362                 .description = "tl2_dmac",
28363                 .field_bit_size = 48,
28364                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28365                 },
28366         .field_info_spec = {
28367                 .description = "tl2_dmac",
28368                 .field_bit_size = 48,
28369                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28370                 }
28371         },
28372         {
28373         .field_info_mask = {
28374                 .description = "tl2_smac",
28375                 .field_bit_size = 48,
28376                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28377                 },
28378         .field_info_spec = {
28379                 .description = "tl2_smac",
28380                 .field_bit_size = 48,
28381                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28382                 }
28383         },
28384         {
28385         .field_info_mask = {
28386                 .description = "tl2_dt",
28387                 .field_bit_size = 2,
28388                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28389                 },
28390         .field_info_spec = {
28391                 .description = "tl2_dt",
28392                 .field_bit_size = 2,
28393                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28394                 }
28395         },
28396         {
28397         .field_info_mask = {
28398                 .description = "tl2_sa",
28399                 .field_bit_size = 1,
28400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28401                 },
28402         .field_info_spec = {
28403                 .description = "tl2_sa",
28404                 .field_bit_size = 1,
28405                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28406                 }
28407         },
28408         {
28409         .field_info_mask = {
28410                 .description = "tl2_nvt",
28411                 .field_bit_size = 2,
28412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28413                 },
28414         .field_info_spec = {
28415                 .description = "tl2_nvt",
28416                 .field_bit_size = 2,
28417                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28418                 }
28419         },
28420         {
28421         .field_info_mask = {
28422                 .description = "tl2_ovp",
28423                 .field_bit_size = 3,
28424                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28425                 },
28426         .field_info_spec = {
28427                 .description = "tl2_ovp",
28428                 .field_bit_size = 3,
28429                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28430                 }
28431         },
28432         {
28433         .field_info_mask = {
28434                 .description = "tl2_ovd",
28435                 .field_bit_size = 1,
28436                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28437                 },
28438         .field_info_spec = {
28439                 .description = "tl2_ovd",
28440                 .field_bit_size = 1,
28441                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28442                 }
28443         },
28444         {
28445         .field_info_mask = {
28446                 .description = "tl2_ovv",
28447                 .field_bit_size = 12,
28448                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28449                 },
28450         .field_info_spec = {
28451                 .description = "tl2_ovv",
28452                 .field_bit_size = 12,
28453                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28454                 }
28455         },
28456         {
28457         .field_info_mask = {
28458                 .description = "tl2_ovt",
28459                 .field_bit_size = 3,
28460                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28461                 },
28462         .field_info_spec = {
28463                 .description = "tl2_ovt",
28464                 .field_bit_size = 3,
28465                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28466                 }
28467         },
28468         {
28469         .field_info_mask = {
28470                 .description = "tl2_ivp",
28471                 .field_bit_size = 3,
28472                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28473                 },
28474         .field_info_spec = {
28475                 .description = "tl2_ivp",
28476                 .field_bit_size = 3,
28477                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28478                 }
28479         },
28480         {
28481         .field_info_mask = {
28482                 .description = "tl2_ivd",
28483                 .field_bit_size = 1,
28484                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28485                 },
28486         .field_info_spec = {
28487                 .description = "tl2_ivd",
28488                 .field_bit_size = 1,
28489                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28490                 }
28491         },
28492         {
28493         .field_info_mask = {
28494                 .description = "tl2_ivv",
28495                 .field_bit_size = 12,
28496                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28497                 },
28498         .field_info_spec = {
28499                 .description = "tl2_ivv",
28500                 .field_bit_size = 12,
28501                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28502                 }
28503         },
28504         {
28505         .field_info_mask = {
28506                 .description = "tl2_ivt",
28507                 .field_bit_size = 3,
28508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28509                 },
28510         .field_info_spec = {
28511                 .description = "tl2_ivt",
28512                 .field_bit_size = 3,
28513                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28514                 }
28515         },
28516         {
28517         .field_info_mask = {
28518                 .description = "tl2_etype",
28519                 .field_bit_size = 16,
28520                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28521                 },
28522         .field_info_spec = {
28523                 .description = "tl2_etype",
28524                 .field_bit_size = 16,
28525                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28526                 }
28527         },
28528         {
28529         .field_info_mask = {
28530                 .description = "tl3.l3type",
28531                 .field_bit_size = 4,
28532                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28533                 },
28534         .field_info_spec = {
28535                 .description = "tl3.l3type",
28536                 .field_bit_size = 4,
28537                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28538                 }
28539         },
28540         {
28541         .field_info_mask = {
28542                 .description = "tl3.sip.ipv4",
28543                 .field_bit_size = 32,
28544                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28545                 },
28546         .field_info_spec = {
28547                 .description = "tl3.sip.ipv4",
28548                 .field_bit_size = 32,
28549                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28550                 }
28551         },
28552         {
28553         .field_info_mask = {
28554                 .description = "tl3.sip.ipv6",
28555                 .field_bit_size = 128,
28556                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28557                 },
28558         .field_info_spec = {
28559                 .description = "tl3.sip.ipv6",
28560                 .field_bit_size = 128,
28561                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28562                 }
28563         },
28564         {
28565         .field_info_mask = {
28566                 .description = "tl3.sip_selcmp.ipv6",
28567                 .field_bit_size = 72,
28568                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28569                 },
28570         .field_info_spec = {
28571                 .description = "tl3.sip_selcmp.ipv6",
28572                 .field_bit_size = 72,
28573                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28574                 }
28575         },
28576         {
28577         .field_info_mask = {
28578                 .description = "tl3.dip.ipv4",
28579                 .field_bit_size = 32,
28580                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28581                 },
28582         .field_info_spec = {
28583                 .description = "tl3.dip.ipv4",
28584                 .field_bit_size = 32,
28585                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28586                 }
28587         },
28588         {
28589         .field_info_mask = {
28590                 .description = "tl3.dip.ipv6",
28591                 .field_bit_size = 128,
28592                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28593                 },
28594         .field_info_spec = {
28595                 .description = "tl3.dip.ipv6",
28596                 .field_bit_size = 128,
28597                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28598                 }
28599         },
28600         {
28601         .field_info_mask = {
28602                 .description = "tl3.dip_selcmp.ipv6",
28603                 .field_bit_size = 72,
28604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28605                 },
28606         .field_info_spec = {
28607                 .description = "tl3.dip_selcmp.ipv6",
28608                 .field_bit_size = 72,
28609                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28610                 }
28611         },
28612         {
28613         .field_info_mask = {
28614                 .description = "tl3.ttl",
28615                 .field_bit_size = 8,
28616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28617                 },
28618         .field_info_spec = {
28619                 .description = "tl3.ttl",
28620                 .field_bit_size = 8,
28621                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28622                 }
28623         },
28624         {
28625         .field_info_mask = {
28626                 .description = "tl3.prot",
28627                 .field_bit_size = 8,
28628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28629                 },
28630         .field_info_spec = {
28631                 .description = "tl3.prot",
28632                 .field_bit_size = 8,
28633                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28634                 }
28635         },
28636         {
28637         .field_info_mask = {
28638                 .description = "tl3.fid.ipv4",
28639                 .field_bit_size = 16,
28640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28641                 },
28642         .field_info_spec = {
28643                 .description = "tl3.fid.ipv4",
28644                 .field_bit_size = 16,
28645                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28646                 }
28647         },
28648         {
28649         .field_info_mask = {
28650                 .description = "tl3.fid.ipv6",
28651                 .field_bit_size = 20,
28652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28653                 },
28654         .field_info_spec = {
28655                 .description = "tl3.fid.ipv6",
28656                 .field_bit_size = 20,
28657                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28658                 }
28659         },
28660         {
28661         .field_info_mask = {
28662                 .description = "tl3.qos",
28663                 .field_bit_size = 8,
28664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28665                 },
28666         .field_info_spec = {
28667                 .description = "tl3.qos",
28668                 .field_bit_size = 8,
28669                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28670                 }
28671         },
28672         {
28673         .field_info_mask = {
28674                 .description = "tl3.ieh_nonext",
28675                 .field_bit_size = 1,
28676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28677                 },
28678         .field_info_spec = {
28679                 .description = "tl3.ieh_nonext",
28680                 .field_bit_size = 1,
28681                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28682                 }
28683         },
28684         {
28685         .field_info_mask = {
28686                 .description = "tl3.ieh_esp",
28687                 .field_bit_size = 1,
28688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28689                 },
28690         .field_info_spec = {
28691                 .description = "tl3.ieh_esp",
28692                 .field_bit_size = 1,
28693                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28694                 }
28695         },
28696         {
28697         .field_info_mask = {
28698                 .description = "tl3.ieh_auth",
28699                 .field_bit_size = 1,
28700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28701                 },
28702         .field_info_spec = {
28703                 .description = "tl3.ieh_auth",
28704                 .field_bit_size = 1,
28705                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28706                 }
28707         },
28708         {
28709         .field_info_mask = {
28710                 .description = "tl3.ieh_dest",
28711                 .field_bit_size = 1,
28712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28713                 },
28714         .field_info_spec = {
28715                 .description = "tl3.ieh_dest",
28716                 .field_bit_size = 1,
28717                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28718                 }
28719         },
28720         {
28721         .field_info_mask = {
28722                 .description = "tl3.ieh_frag",
28723                 .field_bit_size = 1,
28724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28725                 },
28726         .field_info_spec = {
28727                 .description = "tl3.ieh_frag",
28728                 .field_bit_size = 1,
28729                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28730                 }
28731         },
28732         {
28733         .field_info_mask = {
28734                 .description = "tl3.ieh_rthdr",
28735                 .field_bit_size = 1,
28736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28737                 },
28738         .field_info_spec = {
28739                 .description = "tl3.ieh_rthdr",
28740                 .field_bit_size = 1,
28741                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28742                 }
28743         },
28744         {
28745         .field_info_mask = {
28746                 .description = "tl3.ieh_hop",
28747                 .field_bit_size = 1,
28748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28749                 },
28750         .field_info_spec = {
28751                 .description = "tl3.ieh_hop",
28752                 .field_bit_size = 1,
28753                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28754                 }
28755         },
28756         {
28757         .field_info_mask = {
28758                 .description = "tl3.ieh_1frag",
28759                 .field_bit_size = 1,
28760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28761                 },
28762         .field_info_spec = {
28763                 .description = "tl3.ieh_1frag",
28764                 .field_bit_size = 1,
28765                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28766                 }
28767         },
28768         {
28769         .field_info_mask = {
28770                 .description = "tl3.df",
28771                 .field_bit_size = 1,
28772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28773                 },
28774         .field_info_spec = {
28775                 .description = "tl3.df",
28776                 .field_bit_size = 1,
28777                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28778                 }
28779         },
28780         {
28781         .field_info_mask = {
28782                 .description = "tl3.l3err",
28783                 .field_bit_size = 4,
28784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28785                 },
28786         .field_info_spec = {
28787                 .description = "tl3.l3err",
28788                 .field_bit_size = 4,
28789                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28790                 }
28791         },
28792         {
28793         .field_info_mask = {
28794                 .description = "tl4.l4type",
28795                 .field_bit_size = 4,
28796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28797                 },
28798         .field_info_spec = {
28799                 .description = "tl4.l4type",
28800                 .field_bit_size = 4,
28801                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28802                 }
28803         },
28804         {
28805         .field_info_mask = {
28806                 .description = "tl4.src",
28807                 .field_bit_size = 16,
28808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28809                 },
28810         .field_info_spec = {
28811                 .description = "tl4.src",
28812                 .field_bit_size = 16,
28813                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28814                 }
28815         },
28816         {
28817         .field_info_mask = {
28818                 .description = "tl4.dst",
28819                 .field_bit_size = 16,
28820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28821                 },
28822         .field_info_spec = {
28823                 .description = "tl4.dst",
28824                 .field_bit_size = 16,
28825                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28826                 }
28827         },
28828         {
28829         .field_info_mask = {
28830                 .description = "tl4.flags",
28831                 .field_bit_size = 9,
28832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28833                 },
28834         .field_info_spec = {
28835                 .description = "tl4.flags",
28836                 .field_bit_size = 9,
28837                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28838                 }
28839         },
28840         {
28841         .field_info_mask = {
28842                 .description = "tl4.seq",
28843                 .field_bit_size = 32,
28844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28845                 },
28846         .field_info_spec = {
28847                 .description = "tl4.seq",
28848                 .field_bit_size = 32,
28849                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28850                 }
28851         },
28852         {
28853         .field_info_mask = {
28854                 .description = "tl4.pa",
28855                 .field_bit_size = 1,
28856                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28857                 },
28858         .field_info_spec = {
28859                 .description = "tl4.pa",
28860                 .field_bit_size = 1,
28861                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28862                 }
28863         },
28864         {
28865         .field_info_mask = {
28866                 .description = "tl4.opt",
28867                 .field_bit_size = 1,
28868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28869                 },
28870         .field_info_spec = {
28871                 .description = "tl4.opt",
28872                 .field_bit_size = 1,
28873                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28874                 }
28875         },
28876         {
28877         .field_info_mask = {
28878                 .description = "tl4.tcpts",
28879                 .field_bit_size = 1,
28880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28881                 },
28882         .field_info_spec = {
28883                 .description = "tl4.tcpts",
28884                 .field_bit_size = 1,
28885                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28886                 }
28887         },
28888         {
28889         .field_info_mask = {
28890                 .description = "tl4.err",
28891                 .field_bit_size = 4,
28892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28893                 },
28894         .field_info_spec = {
28895                 .description = "tl4.err",
28896                 .field_bit_size = 4,
28897                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28898                 }
28899         },
28900         {
28901         .field_info_mask = {
28902                 .description = "tuntype",
28903                 .field_bit_size = 4,
28904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28905                 },
28906         .field_info_spec = {
28907                 .description = "tuntype",
28908                 .field_bit_size = 4,
28909                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28910                 }
28911         },
28912         {
28913         .field_info_mask = {
28914                 .description = "tflags",
28915                 .field_bit_size = 3,
28916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28917                 },
28918         .field_info_spec = {
28919                 .description = "tflags",
28920                 .field_bit_size = 3,
28921                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28922                 }
28923         },
28924         {
28925         .field_info_mask = {
28926                 .description = "tids",
28927                 .field_bit_size = 24,
28928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28929                 },
28930         .field_info_spec = {
28931                 .description = "tids",
28932                 .field_bit_size = 24,
28933                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28934                 }
28935         },
28936         {
28937         .field_info_mask = {
28938                 .description = "tid",
28939                 .field_bit_size = 32,
28940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28941                 },
28942         .field_info_spec = {
28943                 .description = "tid",
28944                 .field_bit_size = 32,
28945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28946                 }
28947         },
28948         {
28949         .field_info_mask = {
28950                 .description = "tctxts",
28951                 .field_bit_size = 24,
28952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28953                 },
28954         .field_info_spec = {
28955                 .description = "tctxts",
28956                 .field_bit_size = 24,
28957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28958                 }
28959         },
28960         {
28961         .field_info_mask = {
28962                 .description = "tctxt",
28963                 .field_bit_size = 32,
28964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28965                 },
28966         .field_info_spec = {
28967                 .description = "tctxt",
28968                 .field_bit_size = 32,
28969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28970                 }
28971         },
28972         {
28973         .field_info_mask = {
28974                 .description = "tqos",
28975                 .field_bit_size = 3,
28976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28977                 },
28978         .field_info_spec = {
28979                 .description = "tqos",
28980                 .field_bit_size = 3,
28981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28982                 }
28983         },
28984         {
28985         .field_info_mask = {
28986                 .description = "terr",
28987                 .field_bit_size = 4,
28988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28989                 },
28990         .field_info_spec = {
28991                 .description = "terr",
28992                 .field_bit_size = 4,
28993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
28994                 }
28995         },
28996         {
28997         .field_info_mask = {
28998                 .description = "l2_l2type",
28999                 .field_bit_size = 2,
29000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29001                 },
29002         .field_info_spec = {
29003                 .description = "l2_l2type",
29004                 .field_bit_size = 2,
29005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29006                 }
29007         },
29008         {
29009         .field_info_mask = {
29010                 .description = "l2_dmac",
29011                 .field_bit_size = 48,
29012                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29013                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
29014                 .field_opr1 = {
29015                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
29016                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
29017                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
29018                 .field_opr2 = {
29019                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
29020                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
29021                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29022                 },
29023         .field_info_spec = {
29024                 .description = "l2_dmac",
29025                 .field_bit_size = 48,
29026                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29027                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
29028                 .field_opr1 = {
29029                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
29030                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
29031                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
29032                 .field_opr2 = {
29033                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
29034                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
29035                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29036                 }
29037         },
29038         {
29039         .field_info_mask = {
29040                 .description = "l2_smac",
29041                 .field_bit_size = 48,
29042                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29043                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
29044                 .field_opr1 = {
29045                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
29046                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
29047                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
29048                 .field_opr2 = {
29049                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
29050                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
29051                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29052                 },
29053         .field_info_spec = {
29054                 .description = "l2_smac",
29055                 .field_bit_size = 48,
29056                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29057                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
29058                 .field_opr1 = {
29059                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
29060                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
29061                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
29062                 .field_opr2 = {
29063                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
29064                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
29065                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29066                 }
29067         },
29068         {
29069         .field_info_mask = {
29070                 .description = "l2_dt",
29071                 .field_bit_size = 2,
29072                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29073                 },
29074         .field_info_spec = {
29075                 .description = "l2_dt",
29076                 .field_bit_size = 2,
29077                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29078                 }
29079         },
29080         {
29081         .field_info_mask = {
29082                 .description = "l2_sa",
29083                 .field_bit_size = 1,
29084                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29085                 },
29086         .field_info_spec = {
29087                 .description = "l2_sa",
29088                 .field_bit_size = 1,
29089                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29090                 }
29091         },
29092         {
29093         .field_info_mask = {
29094                 .description = "l2_nvt",
29095                 .field_bit_size = 2,
29096                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29097                 },
29098         .field_info_spec = {
29099                 .description = "l2_nvt",
29100                 .field_bit_size = 2,
29101                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29102                 }
29103         },
29104         {
29105         .field_info_mask = {
29106                 .description = "l2_ovp",
29107                 .field_bit_size = 3,
29108                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29109                 },
29110         .field_info_spec = {
29111                 .description = "l2_ovp",
29112                 .field_bit_size = 3,
29113                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29114                 }
29115         },
29116         {
29117         .field_info_mask = {
29118                 .description = "l2_ovd",
29119                 .field_bit_size = 1,
29120                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29121                 },
29122         .field_info_spec = {
29123                 .description = "l2_ovd",
29124                 .field_bit_size = 1,
29125                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29126                 }
29127         },
29128         {
29129         .field_info_mask = {
29130                 .description = "l2_ovv",
29131                 .field_bit_size = 12,
29132                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29133                 },
29134         .field_info_spec = {
29135                 .description = "l2_ovv",
29136                 .field_bit_size = 12,
29137                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29138                 }
29139         },
29140         {
29141         .field_info_mask = {
29142                 .description = "l2_ovt",
29143                 .field_bit_size = 3,
29144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29145                 },
29146         .field_info_spec = {
29147                 .description = "l2_ovt",
29148                 .field_bit_size = 3,
29149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29150                 }
29151         },
29152         {
29153         .field_info_mask = {
29154                 .description = "l2_ivp",
29155                 .field_bit_size = 3,
29156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29157                 },
29158         .field_info_spec = {
29159                 .description = "l2_ivp",
29160                 .field_bit_size = 3,
29161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29162                 }
29163         },
29164         {
29165         .field_info_mask = {
29166                 .description = "l2_ivd",
29167                 .field_bit_size = 1,
29168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29169                 },
29170         .field_info_spec = {
29171                 .description = "l2_ivd",
29172                 .field_bit_size = 1,
29173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29174                 }
29175         },
29176         {
29177         .field_info_mask = {
29178                 .description = "l2_ivv",
29179                 .field_bit_size = 12,
29180                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29181                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
29182                 .field_opr1 = {
29183                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
29184                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
29185                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
29186                 .field_opr2 = {
29187                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
29188                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
29189                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29190                 },
29191         .field_info_spec = {
29192                 .description = "l2_ivv",
29193                 .field_bit_size = 12,
29194                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29195                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
29196                 .field_opr1 = {
29197                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
29198                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
29199                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
29200                 .field_opr2 = {
29201                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
29202                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
29203                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29204                 }
29205         },
29206         {
29207         .field_info_mask = {
29208                 .description = "l2_ivt",
29209                 .field_bit_size = 3,
29210                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29211                 },
29212         .field_info_spec = {
29213                 .description = "l2_ivt",
29214                 .field_bit_size = 3,
29215                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29216                 }
29217         },
29218         {
29219         .field_info_mask = {
29220                 .description = "l2_etype",
29221                 .field_bit_size = 16,
29222                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29223                 },
29224         .field_info_spec = {
29225                 .description = "l2_etype",
29226                 .field_bit_size = 16,
29227                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29228                 }
29229         },
29230         {
29231         .field_info_mask = {
29232                 .description = "l3.l3type",
29233                 .field_bit_size = 4,
29234                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29235                 },
29236         .field_info_spec = {
29237                 .description = "l3.l3type",
29238                 .field_bit_size = 4,
29239                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29240                 }
29241         },
29242         {
29243         .field_info_mask = {
29244                 .description = "l3.sip.ipv4",
29245                 .field_bit_size = 32,
29246                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29247                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
29248                 .field_opr1 = {
29249                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
29250                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
29251                 },
29252         .field_info_spec = {
29253                 .description = "l3.sip.ipv4",
29254                 .field_bit_size = 32,
29255                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29256                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
29257                 .field_opr1 = {
29258                 (BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR >> 8) & 0xff,
29259                 BNXT_ULP_GLB_HF_ID_O_IPV4_SRC_ADDR & 0xff}
29260                 }
29261         },
29262         {
29263         .field_info_mask = {
29264                 .description = "l3.sip.ipv6",
29265                 .field_bit_size = 128,
29266                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29267                 },
29268         .field_info_spec = {
29269                 .description = "l3.sip.ipv6",
29270                 .field_bit_size = 128,
29271                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29272                 }
29273         },
29274         {
29275         .field_info_mask = {
29276                 .description = "l3.sip_selcmp.ipv6",
29277                 .field_bit_size = 72,
29278                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29279                 },
29280         .field_info_spec = {
29281                 .description = "l3.sip_selcmp.ipv6",
29282                 .field_bit_size = 72,
29283                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29284                 }
29285         },
29286         {
29287         .field_info_mask = {
29288                 .description = "l3.dip.ipv4",
29289                 .field_bit_size = 32,
29290                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29291                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
29292                 .field_opr1 = {
29293                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
29294                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
29295                 },
29296         .field_info_spec = {
29297                 .description = "l3.dip.ipv4",
29298                 .field_bit_size = 32,
29299                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29300                 .field_src1 = BNXT_ULP_FIELD_SRC_HF,
29301                 .field_opr1 = {
29302                 (BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR >> 8) & 0xff,
29303                 BNXT_ULP_GLB_HF_ID_O_IPV4_DST_ADDR & 0xff}
29304                 }
29305         },
29306         {
29307         .field_info_mask = {
29308                 .description = "l3.dip.ipv6",
29309                 .field_bit_size = 128,
29310                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29311                 },
29312         .field_info_spec = {
29313                 .description = "l3.dip.ipv6",
29314                 .field_bit_size = 128,
29315                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29316                 }
29317         },
29318         {
29319         .field_info_mask = {
29320                 .description = "l3.dip_selcmp.ipv6",
29321                 .field_bit_size = 72,
29322                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29323                 },
29324         .field_info_spec = {
29325                 .description = "l3.dip_selcmp.ipv6",
29326                 .field_bit_size = 72,
29327                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29328                 }
29329         },
29330         {
29331         .field_info_mask = {
29332                 .description = "l3.ttl",
29333                 .field_bit_size = 8,
29334                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29335                 },
29336         .field_info_spec = {
29337                 .description = "l3.ttl",
29338                 .field_bit_size = 8,
29339                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29340                 }
29341         },
29342         {
29343         .field_info_mask = {
29344                 .description = "l3.prot",
29345                 .field_bit_size = 8,
29346                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29347                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
29348                 .field_opr1 = {
29349                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
29350                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
29351                 .field_src2 = BNXT_ULP_FIELD_SRC_ONES,
29352                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29353                 },
29354         .field_info_spec = {
29355                 .description = "l3.prot",
29356                 .field_bit_size = 8,
29357                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
29358                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
29359                 .field_opr1 = {
29360                 (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
29361                 BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff},
29362                 .field_src2 = BNXT_ULP_FIELD_SRC_CF,
29363                 .field_opr2 = {
29364                         (BNXT_ULP_CF_IDX_O_L3_PROTO_ID >> 8) & 0xff,
29365                         BNXT_ULP_CF_IDX_O_L3_PROTO_ID & 0xff},
29366                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
29367                 }
29368         },
29369         {
29370         .field_info_mask = {
29371                 .description = "l3.fid.ipv4",
29372                 .field_bit_size = 16,
29373                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29374                 },
29375         .field_info_spec = {
29376                 .description = "l3.fid.ipv4",
29377                 .field_bit_size = 16,
29378                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29379                 }
29380         },
29381         {
29382         .field_info_mask = {
29383                 .description = "l3.fid.ipv6",
29384                 .field_bit_size = 20,
29385                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29386                 },
29387         .field_info_spec = {
29388                 .description = "l3.fid.ipv6",
29389                 .field_bit_size = 20,
29390                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29391                 }
29392         },
29393         {
29394         .field_info_mask = {
29395                 .description = "l3.qos",
29396                 .field_bit_size = 8,
29397                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29398                 },
29399         .field_info_spec = {
29400                 .description = "l3.qos",
29401                 .field_bit_size = 8,
29402                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29403                 }
29404         },
29405         {
29406         .field_info_mask = {
29407                 .description = "l3.ieh_nonext",
29408                 .field_bit_size = 1,
29409                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29410                 },
29411         .field_info_spec = {
29412                 .description = "l3.ieh_nonext",
29413                 .field_bit_size = 1,
29414                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29415                 }
29416         },
29417         {
29418         .field_info_mask = {
29419                 .description = "l3.ieh_esp",
29420                 .field_bit_size = 1,
29421                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29422                 },
29423         .field_info_spec = {
29424                 .description = "l3.ieh_esp",
29425                 .field_bit_size = 1,
29426                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29427                 }
29428         },
29429         {
29430         .field_info_mask = {
29431                 .description = "l3.ieh_auth",
29432                 .field_bit_size = 1,
29433                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29434                 },
29435         .field_info_spec = {
29436                 .description = "l3.ieh_auth",
29437                 .field_bit_size = 1,
29438                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29439                 }
29440         },
29441         {
29442         .field_info_mask = {
29443                 .description = "l3.ieh_dest",
29444                 .field_bit_size = 1,
29445                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29446                 },
29447         .field_info_spec = {
29448                 .description = "l3.ieh_dest",
29449                 .field_bit_size = 1,
29450                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29451                 }
29452         },
29453         {
29454         .field_info_mask = {
29455                 .description = "l3.ieh_frag",
29456                 .field_bit_size = 1,
29457                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29458                 },
29459         .field_info_spec = {
29460                 .description = "l3.ieh_frag",
29461                 .field_bit_size = 1,
29462                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29463                 }
29464         },
29465         {
29466         .field_info_mask = {
29467                 .description = "l3.ieh_rthdr",
29468                 .field_bit_size = 1,
29469                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29470                 },
29471         .field_info_spec = {
29472                 .description = "l3.ieh_rthdr",
29473                 .field_bit_size = 1,
29474                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29475                 }
29476         },
29477         {
29478         .field_info_mask = {
29479                 .description = "l3.ieh_hop",
29480                 .field_bit_size = 1,
29481                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29482                 },
29483         .field_info_spec = {
29484                 .description = "l3.ieh_hop",
29485                 .field_bit_size = 1,
29486                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29487                 }
29488         },
29489         {
29490         .field_info_mask = {
29491                 .description = "l3.ieh_1frag",
29492                 .field_bit_size = 1,
29493                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29494                 },
29495         .field_info_spec = {
29496                 .description = "l3.ieh_1frag",
29497                 .field_bit_size = 1,
29498                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29499                 }
29500         },
29501         {
29502         .field_info_mask = {
29503                 .description = "l3.df",
29504                 .field_bit_size = 1,
29505                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29506                 },
29507         .field_info_spec = {
29508                 .description = "l3.df",
29509                 .field_bit_size = 1,
29510                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29511                 }
29512         },
29513         {
29514         .field_info_mask = {
29515                 .description = "l3.l3err.ipv4",
29516                 .field_bit_size = 4,
29517                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29518                 },
29519         .field_info_spec = {
29520                 .description = "l3.l3err.ipv4",
29521                 .field_bit_size = 4,
29522                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29523                 }
29524         },
29525         {
29526         .field_info_mask = {
29527                 .description = "l3.l3err.ipv6",
29528                 .field_bit_size = 4,
29529                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29530                 },
29531         .field_info_spec = {
29532                 .description = "l3.l3err.ipv6",
29533                 .field_bit_size = 4,
29534                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29535                 }
29536         },
29537         {
29538         .field_info_mask = {
29539                 .description = "l4.l4type",
29540                 .field_bit_size = 4,
29541                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29542                 },
29543         .field_info_spec = {
29544                 .description = "l4.l4type",
29545                 .field_bit_size = 4,
29546                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29547                 }
29548         },
29549         {
29550         .field_info_mask = {
29551                 .description = "l4.src",
29552                 .field_bit_size = 16,
29553                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29554                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
29555                 },
29556         .field_info_spec = {
29557                 .description = "l4.src",
29558                 .field_bit_size = 16,
29559                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29560                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
29561                 }
29562         },
29563         {
29564         .field_info_mask = {
29565                 .description = "l4.dst",
29566                 .field_bit_size = 16,
29567                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29568                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
29569                 },
29570         .field_info_spec = {
29571                 .description = "l4.dst",
29572                 .field_bit_size = 16,
29573                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29574                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
29575                 }
29576         },
29577         {
29578         .field_info_mask = {
29579                 .description = "l4.flags",
29580                 .field_bit_size = 9,
29581                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29582                 },
29583         .field_info_spec = {
29584                 .description = "l4.flags",
29585                 .field_bit_size = 9,
29586                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29587                 }
29588         },
29589         {
29590         .field_info_mask = {
29591                 .description = "l4.seq",
29592                 .field_bit_size = 32,
29593                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29594                 },
29595         .field_info_spec = {
29596                 .description = "l4.seq",
29597                 .field_bit_size = 32,
29598                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29599                 }
29600         },
29601         {
29602         .field_info_mask = {
29603                 .description = "l4.ack",
29604                 .field_bit_size = 32,
29605                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29606                 },
29607         .field_info_spec = {
29608                 .description = "l4.ack",
29609                 .field_bit_size = 32,
29610                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29611                 }
29612         },
29613         {
29614         .field_info_mask = {
29615                 .description = "l4.win",
29616                 .field_bit_size = 16,
29617                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29618                 },
29619         .field_info_spec = {
29620                 .description = "l4.win",
29621                 .field_bit_size = 16,
29622                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29623                 }
29624         },
29625         {
29626         .field_info_mask = {
29627                 .description = "l4.pa",
29628                 .field_bit_size = 1,
29629                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29630                 },
29631         .field_info_spec = {
29632                 .description = "l4.pa",
29633                 .field_bit_size = 1,
29634                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29635                 }
29636         },
29637         {
29638         .field_info_mask = {
29639                 .description = "l4.opt",
29640                 .field_bit_size = 1,
29641                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29642                 },
29643         .field_info_spec = {
29644                 .description = "l4.opt",
29645                 .field_bit_size = 1,
29646                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29647                 }
29648         },
29649         {
29650         .field_info_mask = {
29651                 .description = "l4.tcpts",
29652                 .field_bit_size = 1,
29653                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29654                 },
29655         .field_info_spec = {
29656                 .description = "l4.tcpts",
29657                 .field_bit_size = 1,
29658                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29659                 }
29660         },
29661         {
29662         .field_info_mask = {
29663                 .description = "l4.tsval",
29664                 .field_bit_size = 32,
29665                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29666                 },
29667         .field_info_spec = {
29668                 .description = "l4.tsval",
29669                 .field_bit_size = 32,
29670                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29671                 }
29672         },
29673         {
29674         .field_info_mask = {
29675                 .description = "l4.txecr",
29676                 .field_bit_size = 32,
29677                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29678                 },
29679         .field_info_spec = {
29680                 .description = "l4.txecr",
29681                 .field_bit_size = 32,
29682                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29683                 }
29684         },
29685         {
29686         .field_info_mask = {
29687                 .description = "l4.err",
29688                 .field_bit_size = 4,
29689                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29690                 },
29691         .field_info_spec = {
29692                 .description = "l4.err",
29693                 .field_bit_size = 4,
29694                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29695                 }
29696         },
29697         /* class_tid: 3, , table: wm.l2 */
29698         {
29699         .field_info_mask = {
29700                 .description = "wc_profile_id",
29701                 .field_bit_size = 8,
29702                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29703                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
29704                 .field_opr1 = {
29705                         0xff}
29706                 },
29707         .field_info_spec = {
29708                 .description = "wc_profile_id",
29709                 .field_bit_size = 8,
29710                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29711                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
29712                 .field_opr1 = {
29713                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
29714                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
29715                 }
29716         },
29717         {
29718         .field_info_mask = {
29719                 .description = "l2_cntxt_id",
29720                 .field_bit_size = 10,
29721                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29722                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
29723                 .field_opr1 = {
29724                         0xff,
29725                         0xff}
29726                 },
29727         .field_info_spec = {
29728                 .description = "l2_cntxt_id",
29729                 .field_bit_size = 10,
29730                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
29731                 .field_src1 = BNXT_ULP_FIELD_SRC_RF,
29732                 .field_opr1 = {
29733                 (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
29734                 BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
29735                 }
29736         },
29737         {
29738         .field_info_mask = {
29739                 .description = "parif",
29740                 .field_bit_size = 4,
29741                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29742                 },
29743         .field_info_spec = {
29744                 .description = "parif",
29745                 .field_bit_size = 4,
29746                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29747                 }
29748         },
29749         {
29750         .field_info_mask = {
29751                 .description = "spif",
29752                 .field_bit_size = 2,
29753                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29754                 },
29755         .field_info_spec = {
29756                 .description = "spif",
29757                 .field_bit_size = 2,
29758                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29759                 }
29760         },
29761         {
29762         .field_info_mask = {
29763                 .description = "svif",
29764                 .field_bit_size = 11,
29765                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29766                 },
29767         .field_info_spec = {
29768                 .description = "svif",
29769                 .field_bit_size = 11,
29770                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29771                 }
29772         },
29773         {
29774         .field_info_mask = {
29775                 .description = "lcos",
29776                 .field_bit_size = 3,
29777                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29778                 },
29779         .field_info_spec = {
29780                 .description = "lcos",
29781                 .field_bit_size = 3,
29782                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29783                 }
29784         },
29785         {
29786         .field_info_mask = {
29787                 .description = "meta",
29788                 .field_bit_size = 16,
29789                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29790                 },
29791         .field_info_spec = {
29792                 .description = "meta",
29793                 .field_bit_size = 16,
29794                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29795                 }
29796         },
29797         {
29798         .field_info_mask = {
29799                 .description = "rcyc_cnt",
29800                 .field_bit_size = 2,
29801                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29802                 },
29803         .field_info_spec = {
29804                 .description = "rcyc_cnt",
29805                 .field_bit_size = 2,
29806                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29807                 }
29808         },
29809         {
29810         .field_info_mask = {
29811                 .description = "loopback",
29812                 .field_bit_size = 1,
29813                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29814                 },
29815         .field_info_spec = {
29816                 .description = "loopback",
29817                 .field_bit_size = 1,
29818                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29819                 }
29820         },
29821         {
29822         .field_info_mask = {
29823                 .description = "tl2_l2type",
29824                 .field_bit_size = 2,
29825                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29826                 },
29827         .field_info_spec = {
29828                 .description = "tl2_l2type",
29829                 .field_bit_size = 2,
29830                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29831                 }
29832         },
29833         {
29834         .field_info_mask = {
29835                 .description = "tl2_dmac",
29836                 .field_bit_size = 48,
29837                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29838                 },
29839         .field_info_spec = {
29840                 .description = "tl2_dmac",
29841                 .field_bit_size = 48,
29842                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29843                 }
29844         },
29845         {
29846         .field_info_mask = {
29847                 .description = "tl2_smac",
29848                 .field_bit_size = 48,
29849                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29850                 },
29851         .field_info_spec = {
29852                 .description = "tl2_smac",
29853                 .field_bit_size = 48,
29854                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29855                 }
29856         },
29857         {
29858         .field_info_mask = {
29859                 .description = "tl2_dt",
29860                 .field_bit_size = 2,
29861                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29862                 },
29863         .field_info_spec = {
29864                 .description = "tl2_dt",
29865                 .field_bit_size = 2,
29866                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29867                 }
29868         },
29869         {
29870         .field_info_mask = {
29871                 .description = "tl2_sa",
29872                 .field_bit_size = 1,
29873                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29874                 },
29875         .field_info_spec = {
29876                 .description = "tl2_sa",
29877                 .field_bit_size = 1,
29878                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29879                 }
29880         },
29881         {
29882         .field_info_mask = {
29883                 .description = "tl2_nvt",
29884                 .field_bit_size = 2,
29885                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29886                 },
29887         .field_info_spec = {
29888                 .description = "tl2_nvt",
29889                 .field_bit_size = 2,
29890                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29891                 }
29892         },
29893         {
29894         .field_info_mask = {
29895                 .description = "tl2_ovp",
29896                 .field_bit_size = 3,
29897                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29898                 },
29899         .field_info_spec = {
29900                 .description = "tl2_ovp",
29901                 .field_bit_size = 3,
29902                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29903                 }
29904         },
29905         {
29906         .field_info_mask = {
29907                 .description = "tl2_ovd",
29908                 .field_bit_size = 1,
29909                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29910                 },
29911         .field_info_spec = {
29912                 .description = "tl2_ovd",
29913                 .field_bit_size = 1,
29914                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29915                 }
29916         },
29917         {
29918         .field_info_mask = {
29919                 .description = "tl2_ovv",
29920                 .field_bit_size = 12,
29921                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29922                 },
29923         .field_info_spec = {
29924                 .description = "tl2_ovv",
29925                 .field_bit_size = 12,
29926                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29927                 }
29928         },
29929         {
29930         .field_info_mask = {
29931                 .description = "tl2_ovt",
29932                 .field_bit_size = 3,
29933                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29934                 },
29935         .field_info_spec = {
29936                 .description = "tl2_ovt",
29937                 .field_bit_size = 3,
29938                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29939                 }
29940         },
29941         {
29942         .field_info_mask = {
29943                 .description = "tl2_ivp",
29944                 .field_bit_size = 3,
29945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29946                 },
29947         .field_info_spec = {
29948                 .description = "tl2_ivp",
29949                 .field_bit_size = 3,
29950                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29951                 }
29952         },
29953         {
29954         .field_info_mask = {
29955                 .description = "tl2_ivd",
29956                 .field_bit_size = 1,
29957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29958                 },
29959         .field_info_spec = {
29960                 .description = "tl2_ivd",
29961                 .field_bit_size = 1,
29962                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29963                 }
29964         },
29965         {
29966         .field_info_mask = {
29967                 .description = "tl2_ivv",
29968                 .field_bit_size = 12,
29969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29970                 },
29971         .field_info_spec = {
29972                 .description = "tl2_ivv",
29973                 .field_bit_size = 12,
29974                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29975                 }
29976         },
29977         {
29978         .field_info_mask = {
29979                 .description = "tl2_ivt",
29980                 .field_bit_size = 3,
29981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29982                 },
29983         .field_info_spec = {
29984                 .description = "tl2_ivt",
29985                 .field_bit_size = 3,
29986                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29987                 }
29988         },
29989         {
29990         .field_info_mask = {
29991                 .description = "tl2_etype",
29992                 .field_bit_size = 16,
29993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29994                 },
29995         .field_info_spec = {
29996                 .description = "tl2_etype",
29997                 .field_bit_size = 16,
29998                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
29999                 }
30000         },
30001         {
30002         .field_info_mask = {
30003                 .description = "tl3.l3type",
30004                 .field_bit_size = 4,
30005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30006                 },
30007         .field_info_spec = {
30008                 .description = "tl3.l3type",
30009                 .field_bit_size = 4,
30010                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30011                 }
30012         },
30013         {
30014         .field_info_mask = {
30015                 .description = "tl3.sip.ipv4",
30016                 .field_bit_size = 32,
30017                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30018                 },
30019         .field_info_spec = {
30020                 .description = "tl3.sip.ipv4",
30021                 .field_bit_size = 32,
30022                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30023                 }
30024         },
30025         {
30026         .field_info_mask = {
30027                 .description = "tl3.sip.ipv6",
30028                 .field_bit_size = 128,
30029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30030                 },
30031         .field_info_spec = {
30032                 .description = "tl3.sip.ipv6",
30033                 .field_bit_size = 128,
30034                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30035                 }
30036         },
30037         {
30038         .field_info_mask = {
30039                 .description = "tl3.sip_selcmp.ipv6",
30040                 .field_bit_size = 72,
30041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30042                 },
30043         .field_info_spec = {
30044                 .description = "tl3.sip_selcmp.ipv6",
30045                 .field_bit_size = 72,
30046                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30047                 }
30048         },
30049         {
30050         .field_info_mask = {
30051                 .description = "tl3.dip.ipv4",
30052                 .field_bit_size = 32,
30053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30054                 },
30055         .field_info_spec = {
30056                 .description = "tl3.dip.ipv4",
30057                 .field_bit_size = 32,
30058                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30059                 }
30060         },
30061         {
30062         .field_info_mask = {
30063                 .description = "tl3.dip.ipv6",
30064                 .field_bit_size = 128,
30065                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30066                 },
30067         .field_info_spec = {
30068                 .description = "tl3.dip.ipv6",
30069                 .field_bit_size = 128,
30070                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30071                 }
30072         },
30073         {
30074         .field_info_mask = {
30075                 .description = "tl3.dip_selcmp.ipv6",
30076                 .field_bit_size = 72,
30077                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30078                 },
30079         .field_info_spec = {
30080                 .description = "tl3.dip_selcmp.ipv6",
30081                 .field_bit_size = 72,
30082                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30083                 }
30084         },
30085         {
30086         .field_info_mask = {
30087                 .description = "tl3.ttl",
30088                 .field_bit_size = 8,
30089                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30090                 },
30091         .field_info_spec = {
30092                 .description = "tl3.ttl",
30093                 .field_bit_size = 8,
30094                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30095                 }
30096         },
30097         {
30098         .field_info_mask = {
30099                 .description = "tl3.prot",
30100                 .field_bit_size = 8,
30101                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30102                 },
30103         .field_info_spec = {
30104                 .description = "tl3.prot",
30105                 .field_bit_size = 8,
30106                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30107                 }
30108         },
30109         {
30110         .field_info_mask = {
30111                 .description = "tl3.fid.ipv4",
30112                 .field_bit_size = 16,
30113                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30114                 },
30115         .field_info_spec = {
30116                 .description = "tl3.fid.ipv4",
30117                 .field_bit_size = 16,
30118                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30119                 }
30120         },
30121         {
30122         .field_info_mask = {
30123                 .description = "tl3.fid.ipv6",
30124                 .field_bit_size = 20,
30125                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30126                 },
30127         .field_info_spec = {
30128                 .description = "tl3.fid.ipv6",
30129                 .field_bit_size = 20,
30130                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30131                 }
30132         },
30133         {
30134         .field_info_mask = {
30135                 .description = "tl3.qos",
30136                 .field_bit_size = 8,
30137                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30138                 },
30139         .field_info_spec = {
30140                 .description = "tl3.qos",
30141                 .field_bit_size = 8,
30142                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30143                 }
30144         },
30145         {
30146         .field_info_mask = {
30147                 .description = "tl3.ieh_nonext",
30148                 .field_bit_size = 1,
30149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30150                 },
30151         .field_info_spec = {
30152                 .description = "tl3.ieh_nonext",
30153                 .field_bit_size = 1,
30154                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30155                 }
30156         },
30157         {
30158         .field_info_mask = {
30159                 .description = "tl3.ieh_esp",
30160                 .field_bit_size = 1,
30161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30162                 },
30163         .field_info_spec = {
30164                 .description = "tl3.ieh_esp",
30165                 .field_bit_size = 1,
30166                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30167                 }
30168         },
30169         {
30170         .field_info_mask = {
30171                 .description = "tl3.ieh_auth",
30172                 .field_bit_size = 1,
30173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30174                 },
30175         .field_info_spec = {
30176                 .description = "tl3.ieh_auth",
30177                 .field_bit_size = 1,
30178                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30179                 }
30180         },
30181         {
30182         .field_info_mask = {
30183                 .description = "tl3.ieh_dest",
30184                 .field_bit_size = 1,
30185                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30186                 },
30187         .field_info_spec = {
30188                 .description = "tl3.ieh_dest",
30189                 .field_bit_size = 1,
30190                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30191                 }
30192         },
30193         {
30194         .field_info_mask = {
30195                 .description = "tl3.ieh_frag",
30196                 .field_bit_size = 1,
30197                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30198                 },
30199         .field_info_spec = {
30200                 .description = "tl3.ieh_frag",
30201                 .field_bit_size = 1,
30202                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30203                 }
30204         },
30205         {
30206         .field_info_mask = {
30207                 .description = "tl3.ieh_rthdr",
30208                 .field_bit_size = 1,
30209                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30210                 },
30211         .field_info_spec = {
30212                 .description = "tl3.ieh_rthdr",
30213                 .field_bit_size = 1,
30214                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30215                 }
30216         },
30217         {
30218         .field_info_mask = {
30219                 .description = "tl3.ieh_hop",
30220                 .field_bit_size = 1,
30221                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30222                 },
30223         .field_info_spec = {
30224                 .description = "tl3.ieh_hop",
30225                 .field_bit_size = 1,
30226                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30227                 }
30228         },
30229         {
30230         .field_info_mask = {
30231                 .description = "tl3.ieh_1frag",
30232                 .field_bit_size = 1,
30233                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30234                 },
30235         .field_info_spec = {
30236                 .description = "tl3.ieh_1frag",
30237                 .field_bit_size = 1,
30238                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30239                 }
30240         },
30241         {
30242         .field_info_mask = {
30243                 .description = "tl3.df",
30244                 .field_bit_size = 1,
30245                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30246                 },
30247         .field_info_spec = {
30248                 .description = "tl3.df",
30249                 .field_bit_size = 1,
30250                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30251                 }
30252         },
30253         {
30254         .field_info_mask = {
30255                 .description = "tl3.l3err",
30256                 .field_bit_size = 4,
30257                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30258                 },
30259         .field_info_spec = {
30260                 .description = "tl3.l3err",
30261                 .field_bit_size = 4,
30262                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30263                 }
30264         },
30265         {
30266         .field_info_mask = {
30267                 .description = "tl4.l4type",
30268                 .field_bit_size = 4,
30269                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30270                 },
30271         .field_info_spec = {
30272                 .description = "tl4.l4type",
30273                 .field_bit_size = 4,
30274                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30275                 }
30276         },
30277         {
30278         .field_info_mask = {
30279                 .description = "tl4.src",
30280                 .field_bit_size = 16,
30281                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30282                 },
30283         .field_info_spec = {
30284                 .description = "tl4.src",
30285                 .field_bit_size = 16,
30286                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30287                 }
30288         },
30289         {
30290         .field_info_mask = {
30291                 .description = "tl4.dst",
30292                 .field_bit_size = 16,
30293                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30294                 },
30295         .field_info_spec = {
30296                 .description = "tl4.dst",
30297                 .field_bit_size = 16,
30298                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30299                 }
30300         },
30301         {
30302         .field_info_mask = {
30303                 .description = "tl4.flags",
30304                 .field_bit_size = 9,
30305                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30306                 },
30307         .field_info_spec = {
30308                 .description = "tl4.flags",
30309                 .field_bit_size = 9,
30310                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30311                 }
30312         },
30313         {
30314         .field_info_mask = {
30315                 .description = "tl4.seq",
30316                 .field_bit_size = 32,
30317                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30318                 },
30319         .field_info_spec = {
30320                 .description = "tl4.seq",
30321                 .field_bit_size = 32,
30322                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30323                 }
30324         },
30325         {
30326         .field_info_mask = {
30327                 .description = "tl4.pa",
30328                 .field_bit_size = 1,
30329                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30330                 },
30331         .field_info_spec = {
30332                 .description = "tl4.pa",
30333                 .field_bit_size = 1,
30334                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30335                 }
30336         },
30337         {
30338         .field_info_mask = {
30339                 .description = "tl4.opt",
30340                 .field_bit_size = 1,
30341                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30342                 },
30343         .field_info_spec = {
30344                 .description = "tl4.opt",
30345                 .field_bit_size = 1,
30346                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30347                 }
30348         },
30349         {
30350         .field_info_mask = {
30351                 .description = "tl4.tcpts",
30352                 .field_bit_size = 1,
30353                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30354                 },
30355         .field_info_spec = {
30356                 .description = "tl4.tcpts",
30357                 .field_bit_size = 1,
30358                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30359                 }
30360         },
30361         {
30362         .field_info_mask = {
30363                 .description = "tl4.err",
30364                 .field_bit_size = 4,
30365                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30366                 },
30367         .field_info_spec = {
30368                 .description = "tl4.err",
30369                 .field_bit_size = 4,
30370                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30371                 }
30372         },
30373         {
30374         .field_info_mask = {
30375                 .description = "tuntype",
30376                 .field_bit_size = 4,
30377                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30378                 },
30379         .field_info_spec = {
30380                 .description = "tuntype",
30381                 .field_bit_size = 4,
30382                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30383                 }
30384         },
30385         {
30386         .field_info_mask = {
30387                 .description = "tflags",
30388                 .field_bit_size = 3,
30389                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30390                 },
30391         .field_info_spec = {
30392                 .description = "tflags",
30393                 .field_bit_size = 3,
30394                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30395                 }
30396         },
30397         {
30398         .field_info_mask = {
30399                 .description = "tids",
30400                 .field_bit_size = 24,
30401                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30402                 },
30403         .field_info_spec = {
30404                 .description = "tids",
30405                 .field_bit_size = 24,
30406                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30407                 }
30408         },
30409         {
30410         .field_info_mask = {
30411                 .description = "tid",
30412                 .field_bit_size = 32,
30413                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30414                 },
30415         .field_info_spec = {
30416                 .description = "tid",
30417                 .field_bit_size = 32,
30418                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30419                 }
30420         },
30421         {
30422         .field_info_mask = {
30423                 .description = "tctxts",
30424                 .field_bit_size = 24,
30425                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30426                 },
30427         .field_info_spec = {
30428                 .description = "tctxts",
30429                 .field_bit_size = 24,
30430                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30431                 }
30432         },
30433         {
30434         .field_info_mask = {
30435                 .description = "tctxt",
30436                 .field_bit_size = 32,
30437                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30438                 },
30439         .field_info_spec = {
30440                 .description = "tctxt",
30441                 .field_bit_size = 32,
30442                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30443                 }
30444         },
30445         {
30446         .field_info_mask = {
30447                 .description = "tqos",
30448                 .field_bit_size = 3,
30449                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30450                 },
30451         .field_info_spec = {
30452                 .description = "tqos",
30453                 .field_bit_size = 3,
30454                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30455                 }
30456         },
30457         {
30458         .field_info_mask = {
30459                 .description = "terr",
30460                 .field_bit_size = 4,
30461                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30462                 },
30463         .field_info_spec = {
30464                 .description = "terr",
30465                 .field_bit_size = 4,
30466                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30467                 }
30468         },
30469         {
30470         .field_info_mask = {
30471                 .description = "l2_l2type",
30472                 .field_bit_size = 2,
30473                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30474                 },
30475         .field_info_spec = {
30476                 .description = "l2_l2type",
30477                 .field_bit_size = 2,
30478                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30479                 }
30480         },
30481         {
30482         .field_info_mask = {
30483                 .description = "l2_dmac",
30484                 .field_bit_size = 48,
30485                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
30486                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
30487                 .field_opr1 = {
30488                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
30489                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
30490                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
30491                 .field_opr2 = {
30492                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
30493                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
30494                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
30495                 },
30496         .field_info_spec = {
30497                 .description = "l2_dmac",
30498                 .field_bit_size = 48,
30499                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
30500                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
30501                 .field_opr1 = {
30502                 (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
30503                 BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
30504                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
30505                 .field_opr2 = {
30506                         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
30507                         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
30508                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
30509                 }
30510         },
30511         {
30512         .field_info_mask = {
30513                 .description = "l2_smac",
30514                 .field_bit_size = 48,
30515                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
30516                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
30517                 .field_opr1 = {
30518                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
30519                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
30520                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
30521                 .field_opr2 = {
30522                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
30523                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
30524                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
30525                 },
30526         .field_info_spec = {
30527                 .description = "l2_smac",
30528                 .field_bit_size = 48,
30529                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
30530                 .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
30531                 .field_opr1 = {
30532                 (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
30533                 BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
30534                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
30535                 .field_opr2 = {
30536                         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
30537                         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff},
30538                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
30539                 }
30540         },
30541         {
30542         .field_info_mask = {
30543                 .description = "l2_dt",
30544                 .field_bit_size = 2,
30545                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30546                 },
30547         .field_info_spec = {
30548                 .description = "l2_dt",
30549                 .field_bit_size = 2,
30550                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30551                 }
30552         },
30553         {
30554         .field_info_mask = {
30555                 .description = "l2_sa",
30556                 .field_bit_size = 1,
30557                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30558                 },
30559         .field_info_spec = {
30560                 .description = "l2_sa",
30561                 .field_bit_size = 1,
30562                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30563                 }
30564         },
30565         {
30566         .field_info_mask = {
30567                 .description = "l2_nvt",
30568                 .field_bit_size = 2,
30569                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30570                 },
30571         .field_info_spec = {
30572                 .description = "l2_nvt",
30573                 .field_bit_size = 2,
30574                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30575                 }
30576         },
30577         {
30578         .field_info_mask = {
30579                 .description = "l2_ovp",
30580                 .field_bit_size = 3,
30581                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30582                 },
30583         .field_info_spec = {
30584                 .description = "l2_ovp",
30585                 .field_bit_size = 3,
30586                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30587                 }
30588         },
30589         {
30590         .field_info_mask = {
30591                 .description = "l2_ovd",
30592                 .field_bit_size = 1,
30593                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30594                 },
30595         .field_info_spec = {
30596                 .description = "l2_ovd",
30597                 .field_bit_size = 1,
30598                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30599                 }
30600         },
30601         {
30602         .field_info_mask = {
30603                 .description = "l2_ovv",
30604                 .field_bit_size = 12,
30605                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30606                 },
30607         .field_info_spec = {
30608                 .description = "l2_ovv",
30609                 .field_bit_size = 12,
30610                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30611                 }
30612         },
30613         {
30614         .field_info_mask = {
30615                 .description = "l2_ovt",
30616                 .field_bit_size = 3,
30617                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30618                 },
30619         .field_info_spec = {
30620                 .description = "l2_ovt",
30621                 .field_bit_size = 3,
30622                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30623                 }
30624         },
30625         {
30626         .field_info_mask = {
30627                 .description = "l2_ivp",
30628                 .field_bit_size = 3,
30629                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30630                 },
30631         .field_info_spec = {
30632                 .description = "l2_ivp",
30633                 .field_bit_size = 3,
30634                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30635                 }
30636         },
30637         {
30638         .field_info_mask = {
30639                 .description = "l2_ivd",
30640                 .field_bit_size = 1,
30641                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30642                 },
30643         .field_info_spec = {
30644                 .description = "l2_ivd",
30645                 .field_bit_size = 1,
30646                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30647                 }
30648         },
30649         {
30650         .field_info_mask = {
30651                 .description = "l2_ivv",
30652                 .field_bit_size = 12,
30653                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
30654                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
30655                 .field_opr1 = {
30656                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
30657                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
30658                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
30659                 .field_opr2 = {
30660                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
30661                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
30662                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
30663                 },
30664         .field_info_spec = {
30665                 .description = "l2_ivv",
30666                 .field_bit_size = 12,
30667                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
30668                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
30669                 .field_opr1 = {
30670                 (BNXT_ULP_CF_IDX_OO_VLAN_FB_VID >> 8) & 0xff,
30671                 BNXT_ULP_CF_IDX_OO_VLAN_FB_VID & 0xff},
30672                 .field_src2 = BNXT_ULP_FIELD_SRC_HF,
30673                 .field_opr2 = {
30674                         (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
30675                         BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
30676                 .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
30677                 }
30678         },
30679         {
30680         .field_info_mask = {
30681                 .description = "l2_ivt",
30682                 .field_bit_size = 3,
30683                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30684                 },
30685         .field_info_spec = {
30686                 .description = "l2_ivt",
30687                 .field_bit_size = 3,
30688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30689                 }
30690         },
30691         {
30692         .field_info_mask = {
30693                 .description = "l2_etype",
30694                 .field_bit_size = 16,
30695                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30696                 },
30697         .field_info_spec = {
30698                 .description = "l2_etype",
30699                 .field_bit_size = 16,
30700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30701                 }
30702         },
30703         {
30704         .field_info_mask = {
30705                 .description = "l3.l3type",
30706                 .field_bit_size = 4,
30707                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30708                 },
30709         .field_info_spec = {
30710                 .description = "l3.l3type",
30711                 .field_bit_size = 4,
30712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30713                 }
30714         },
30715         {
30716         .field_info_mask = {
30717                 .description = "l3.sip.ipv4",
30718                 .field_bit_size = 32,
30719                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
30720                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
30721                 },
30722         .field_info_spec = {
30723                 .description = "l3.sip.ipv4",
30724                 .field_bit_size = 32,
30725                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
30726                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
30727                 }
30728         },
30729         {
30730         .field_info_mask = {
30731                 .description = "l3.sip.ipv6",
30732                 .field_bit_size = 128,
30733                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30734                 },
30735         .field_info_spec = {
30736                 .description = "l3.sip.ipv6",
30737                 .field_bit_size = 128,
30738                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30739                 }
30740         },
30741         {
30742         .field_info_mask = {
30743                 .description = "l3.sip_selcmp.ipv6",
30744                 .field_bit_size = 72,
30745                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30746                 },
30747         .field_info_spec = {
30748                 .description = "l3.sip_selcmp.ipv6",
30749                 .field_bit_size = 72,
30750                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30751                 }
30752         },
30753         {
30754         .field_info_mask = {
30755                 .description = "l3.dip.ipv4",
30756                 .field_bit_size = 32,
30757                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
30758                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
30759                 },
30760         .field_info_spec = {
30761                 .description = "l3.dip.ipv4",
30762                 .field_bit_size = 32,
30763                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
30764                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
30765                 }
30766         },
30767         {
30768         .field_info_mask = {
30769                 .description = "l3.dip.ipv6",
30770                 .field_bit_size = 128,
30771                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30772                 },
30773         .field_info_spec = {
30774                 .description = "l3.dip.ipv6",
30775                 .field_bit_size = 128,
30776                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30777                 }
30778         },
30779         {
30780         .field_info_mask = {
30781                 .description = "l3.dip_selcmp.ipv6",
30782                 .field_bit_size = 72,
30783                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30784                 },
30785         .field_info_spec = {
30786                 .description = "l3.dip_selcmp.ipv6",
30787                 .field_bit_size = 72,
30788                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30789                 }
30790         },
30791         {
30792         .field_info_mask = {
30793                 .description = "l3.ttl",
30794                 .field_bit_size = 8,
30795                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30796                 },
30797         .field_info_spec = {
30798                 .description = "l3.ttl",
30799                 .field_bit_size = 8,
30800                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30801                 }
30802         },
30803         {
30804         .field_info_mask = {
30805                 .description = "l3.prot",
30806                 .field_bit_size = 8,
30807                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
30808                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
30809                 },
30810         .field_info_spec = {
30811                 .description = "l3.prot",
30812                 .field_bit_size = 8,
30813                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
30814                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
30815                 }
30816         },
30817         {
30818         .field_info_mask = {
30819                 .description = "l3.fid.ipv4",
30820                 .field_bit_size = 16,
30821                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30822                 },
30823         .field_info_spec = {
30824                 .description = "l3.fid.ipv4",
30825                 .field_bit_size = 16,
30826                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30827                 }
30828         },
30829         {
30830         .field_info_mask = {
30831                 .description = "l3.fid.ipv6",
30832                 .field_bit_size = 20,
30833                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30834                 },
30835         .field_info_spec = {
30836                 .description = "l3.fid.ipv6",
30837                 .field_bit_size = 20,
30838                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30839                 }
30840         },
30841         {
30842         .field_info_mask = {
30843                 .description = "l3.qos",
30844                 .field_bit_size = 8,
30845                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30846                 },
30847         .field_info_spec = {
30848                 .description = "l3.qos",
30849                 .field_bit_size = 8,
30850                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30851                 }
30852         },
30853         {
30854         .field_info_mask = {
30855                 .description = "l3.ieh_nonext",
30856                 .field_bit_size = 1,
30857                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30858                 },
30859         .field_info_spec = {
30860                 .description = "l3.ieh_nonext",
30861                 .field_bit_size = 1,
30862                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30863                 }
30864         },
30865         {
30866         .field_info_mask = {
30867                 .description = "l3.ieh_esp",
30868                 .field_bit_size = 1,
30869                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30870                 },
30871         .field_info_spec = {
30872                 .description = "l3.ieh_esp",
30873                 .field_bit_size = 1,
30874                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30875                 }
30876         },
30877         {
30878         .field_info_mask = {
30879                 .description = "l3.ieh_auth",
30880                 .field_bit_size = 1,
30881                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30882                 },
30883         .field_info_spec = {
30884                 .description = "l3.ieh_auth",
30885                 .field_bit_size = 1,
30886                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30887                 }
30888         },
30889         {
30890         .field_info_mask = {
30891                 .description = "l3.ieh_dest",
30892                 .field_bit_size = 1,
30893                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30894                 },
30895         .field_info_spec = {
30896                 .description = "l3.ieh_dest",
30897                 .field_bit_size = 1,
30898                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30899                 }
30900         },
30901         {
30902         .field_info_mask = {
30903                 .description = "l3.ieh_frag",
30904                 .field_bit_size = 1,
30905                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30906                 },
30907         .field_info_spec = {
30908                 .description = "l3.ieh_frag",
30909                 .field_bit_size = 1,
30910                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30911                 }
30912         },
30913         {
30914         .field_info_mask = {
30915                 .description = "l3.ieh_rthdr",
30916                 .field_bit_size = 1,
30917                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30918                 },
30919         .field_info_spec = {
30920                 .description = "l3.ieh_rthdr",
30921                 .field_bit_size = 1,
30922                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30923                 }
30924         },
30925         {
30926         .field_info_mask = {
30927                 .description = "l3.ieh_hop",
30928                 .field_bit_size = 1,
30929                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30930                 },
30931         .field_info_spec = {
30932                 .description = "l3.ieh_hop",
30933                 .field_bit_size = 1,
30934                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30935                 }
30936         },
30937         {
30938         .field_info_mask = {
30939                 .description = "l3.ieh_1frag",
30940                 .field_bit_size = 1,
30941                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30942                 },
30943         .field_info_spec = {
30944                 .description = "l3.ieh_1frag",
30945                 .field_bit_size = 1,
30946                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30947                 }
30948         },
30949         {
30950         .field_info_mask = {
30951                 .description = "l3.df",
30952                 .field_bit_size = 1,
30953                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30954                 },
30955         .field_info_spec = {
30956                 .description = "l3.df",
30957                 .field_bit_size = 1,
30958                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30959                 }
30960         },
30961         {
30962         .field_info_mask = {
30963                 .description = "l3.l3err.ipv4",
30964                 .field_bit_size = 4,
30965                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30966                 },
30967         .field_info_spec = {
30968                 .description = "l3.l3err.ipv4",
30969                 .field_bit_size = 4,
30970                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30971                 }
30972         },
30973         {
30974         .field_info_mask = {
30975                 .description = "l3.l3err.ipv6",
30976                 .field_bit_size = 4,
30977                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30978                 },
30979         .field_info_spec = {
30980                 .description = "l3.l3err.ipv6",
30981                 .field_bit_size = 4,
30982                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30983                 }
30984         },
30985         {
30986         .field_info_mask = {
30987                 .description = "l4.l4type",
30988                 .field_bit_size = 4,
30989                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30990                 },
30991         .field_info_spec = {
30992                 .description = "l4.l4type",
30993                 .field_bit_size = 4,
30994                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
30995                 }
30996         },
30997         {
30998         .field_info_mask = {
30999                 .description = "l4.src",
31000                 .field_bit_size = 16,
31001                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31002                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31003                 },
31004         .field_info_spec = {
31005                 .description = "l4.src",
31006                 .field_bit_size = 16,
31007                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31008                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31009                 }
31010         },
31011         {
31012         .field_info_mask = {
31013                 .description = "l4.dst",
31014                 .field_bit_size = 16,
31015                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31016                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31017                 },
31018         .field_info_spec = {
31019                 .description = "l4.dst",
31020                 .field_bit_size = 16,
31021                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31022                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31023                 }
31024         },
31025         {
31026         .field_info_mask = {
31027                 .description = "l4.flags",
31028                 .field_bit_size = 9,
31029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31030                 },
31031         .field_info_spec = {
31032                 .description = "l4.flags",
31033                 .field_bit_size = 9,
31034                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31035                 }
31036         },
31037         {
31038         .field_info_mask = {
31039                 .description = "l4.seq",
31040                 .field_bit_size = 32,
31041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31042                 },
31043         .field_info_spec = {
31044                 .description = "l4.seq",
31045                 .field_bit_size = 32,
31046                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31047                 }
31048         },
31049         {
31050         .field_info_mask = {
31051                 .description = "l4.ack",
31052                 .field_bit_size = 32,
31053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31054                 },
31055         .field_info_spec = {
31056                 .description = "l4.ack",
31057                 .field_bit_size = 32,
31058                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31059                 }
31060         },
31061         {
31062         .field_info_mask = {
31063                 .description = "l4.win",
31064                 .field_bit_size = 16,
31065                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31066                 },
31067         .field_info_spec = {
31068                 .description = "l4.win",
31069                 .field_bit_size = 16,
31070                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31071                 }
31072         },
31073         {
31074         .field_info_mask = {
31075                 .description = "l4.pa",
31076                 .field_bit_size = 1,
31077                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31078                 },
31079         .field_info_spec = {
31080                 .description = "l4.pa",
31081                 .field_bit_size = 1,
31082                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31083                 }
31084         },
31085         {
31086         .field_info_mask = {
31087                 .description = "l4.opt",
31088                 .field_bit_size = 1,
31089                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31090                 },
31091         .field_info_spec = {
31092                 .description = "l4.opt",
31093                 .field_bit_size = 1,
31094                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31095                 }
31096         },
31097         {
31098         .field_info_mask = {
31099                 .description = "l4.tcpts",
31100                 .field_bit_size = 1,
31101                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31102                 },
31103         .field_info_spec = {
31104                 .description = "l4.tcpts",
31105                 .field_bit_size = 1,
31106                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31107                 }
31108         },
31109         {
31110         .field_info_mask = {
31111                 .description = "l4.tsval",
31112                 .field_bit_size = 32,
31113                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31114                 },
31115         .field_info_spec = {
31116                 .description = "l4.tsval",
31117                 .field_bit_size = 32,
31118                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31119                 }
31120         },
31121         {
31122         .field_info_mask = {
31123                 .description = "l4.txecr",
31124                 .field_bit_size = 32,
31125                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31126                 },
31127         .field_info_spec = {
31128                 .description = "l4.txecr",
31129                 .field_bit_size = 32,
31130                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31131                 }
31132         },
31133         {
31134         .field_info_mask = {
31135                 .description = "l4.err",
31136                 .field_bit_size = 4,
31137                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31138                 },
31139         .field_info_spec = {
31140                 .description = "l4.err",
31141                 .field_bit_size = 4,
31142                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
31143                 }
31144         },
31145         /* class_tid: 4, , table: port_table.ing_wr_0 */
31146         {
31147         .field_info_mask = {
31148                 .description = "dev.port_id",
31149                 .field_bit_size = 10,
31150                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31151                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31152                 .field_opr1 = {
31153                         0xff,
31154                         0xff}
31155                 },
31156         .field_info_spec = {
31157                 .description = "dev.port_id",
31158                 .field_bit_size = 10,
31159                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31160                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31161                 .field_opr1 = {
31162                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
31163                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
31164                 }
31165         },
31166         /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_rd */
31167         {
31168         .field_info_mask = {
31169                 .description = "svif",
31170                 .field_bit_size = 8,
31171                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31172                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31173                 .field_opr1 = {
31174                         0xff}
31175                 },
31176         .field_info_spec = {
31177                 .description = "svif",
31178                 .field_bit_size = 8,
31179                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31180                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31181                 .field_opr1 = {
31182                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
31183                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
31184                 }
31185         },
31186         /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
31187         {
31188         .field_info_mask = {
31189                 .description = "etype",
31190                 .field_bit_size = 16,
31191                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31192                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31193                 },
31194         .field_info_spec = {
31195                 .description = "etype",
31196                 .field_bit_size = 16,
31197                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31198                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31199                 }
31200         },
31201         {
31202         .field_info_mask = {
31203                 .description = "l2_ivlan_tpid_sel",
31204                 .field_bit_size = 3,
31205                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31206                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31207                 },
31208         .field_info_spec = {
31209                 .description = "l2_ivlan_tpid_sel",
31210                 .field_bit_size = 3,
31211                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31212                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31213                 }
31214         },
31215         {
31216         .field_info_mask = {
31217                 .description = "l2_ivlan_vid",
31218                 .field_bit_size = 12,
31219                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31220                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31221                 },
31222         .field_info_spec = {
31223                 .description = "l2_ivlan_vid",
31224                 .field_bit_size = 12,
31225                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31226                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31227                 }
31228         },
31229         {
31230         .field_info_mask = {
31231                 .description = "l2_ovlan_tpid_sel",
31232                 .field_bit_size = 3,
31233                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31234                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31235                 },
31236         .field_info_spec = {
31237                 .description = "l2_ovlan_tpid_sel",
31238                 .field_bit_size = 3,
31239                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31240                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31241                 }
31242         },
31243         {
31244         .field_info_mask = {
31245                 .description = "l2_ovlan_vid",
31246                 .field_bit_size = 12,
31247                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31248                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31249                 },
31250         .field_info_spec = {
31251                 .description = "l2_ovlan_vid",
31252                 .field_bit_size = 12,
31253                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31254                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31255                 }
31256         },
31257         {
31258         .field_info_mask = {
31259                 .description = "two_vtags",
31260                 .field_bit_size = 1,
31261                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31262                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31263                 },
31264         .field_info_spec = {
31265                 .description = "two_vtags",
31266                 .field_bit_size = 1,
31267                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31268                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31269                 }
31270         },
31271         {
31272         .field_info_mask = {
31273                 .description = "vtag_present",
31274                 .field_bit_size = 1,
31275                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31276                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31277                 },
31278         .field_info_spec = {
31279                 .description = "vtag_present",
31280                 .field_bit_size = 1,
31281                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31282                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31283                 }
31284         },
31285         {
31286         .field_info_mask = {
31287                 .description = "mac1_addr",
31288                 .field_bit_size = 48,
31289                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31290                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31291                 },
31292         .field_info_spec = {
31293                 .description = "mac1_addr",
31294                 .field_bit_size = 48,
31295                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31296                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31297                 }
31298         },
31299         {
31300         .field_info_mask = {
31301                 .description = "mac0_addr",
31302                 .field_bit_size = 48,
31303                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31304                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31305                 },
31306         .field_info_spec = {
31307                 .description = "mac0_addr",
31308                 .field_bit_size = 48,
31309                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31310                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31311                 }
31312         },
31313         {
31314         .field_info_mask = {
31315                 .description = "tunnel_id",
31316                 .field_bit_size = 24,
31317                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31318                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31319                 },
31320         .field_info_spec = {
31321                 .description = "tunnel_id",
31322                 .field_bit_size = 24,
31323                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31324                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31325                 }
31326         },
31327         {
31328         .field_info_mask = {
31329                 .description = "tun_hdr_type",
31330                 .field_bit_size = 4,
31331                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31332                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31333                 },
31334         .field_info_spec = {
31335                 .description = "tun_hdr_type",
31336                 .field_bit_size = 4,
31337                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31338                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31339                 }
31340         },
31341         {
31342         .field_info_mask = {
31343                 .description = "llc",
31344                 .field_bit_size = 1,
31345                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31346                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31347                 },
31348         .field_info_spec = {
31349                 .description = "llc",
31350                 .field_bit_size = 1,
31351                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31352                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31353                 }
31354         },
31355         {
31356         .field_info_mask = {
31357                 .description = "roce",
31358                 .field_bit_size = 1,
31359                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31360                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31361                 },
31362         .field_info_spec = {
31363                 .description = "roce",
31364                 .field_bit_size = 1,
31365                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31366                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31367                 }
31368         },
31369         {
31370         .field_info_mask = {
31371                 .description = "metadata",
31372                 .field_bit_size = 16,
31373                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31374                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31375                 },
31376         .field_info_spec = {
31377                 .description = "metadata",
31378                 .field_bit_size = 16,
31379                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31380                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31381                 }
31382         },
31383         {
31384         .field_info_mask = {
31385                 .description = "svif",
31386                 .field_bit_size = 11,
31387                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31388                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31389                 .field_opr1 = {
31390                         0xff,
31391                         0xff}
31392                 },
31393         .field_info_spec = {
31394                 .description = "svif",
31395                 .field_bit_size = 11,
31396                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31397                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31398                 .field_opr1 = {
31399                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
31400                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
31401                 }
31402         },
31403         {
31404         .field_info_mask = {
31405                 .description = "parif",
31406                 .field_bit_size = 4,
31407                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31408                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31409                 },
31410         .field_info_spec = {
31411                 .description = "parif",
31412                 .field_bit_size = 4,
31413                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31414                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31415                 }
31416         },
31417         {
31418         .field_info_mask = {
31419                 .description = "spif",
31420                 .field_bit_size = 2,
31421                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31422                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31423                 },
31424         .field_info_spec = {
31425                 .description = "spif",
31426                 .field_bit_size = 2,
31427                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31428                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31429                 }
31430         },
31431         {
31432         .field_info_mask = {
31433                 .description = "loopback",
31434                 .field_bit_size = 1,
31435                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31436                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31437                 },
31438         .field_info_spec = {
31439                 .description = "loopback",
31440                 .field_bit_size = 1,
31441                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31442                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31443                 }
31444         },
31445         {
31446         .field_info_mask = {
31447                 .description = "recycle_cnt",
31448                 .field_bit_size = 2,
31449                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31450                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31451                 },
31452         .field_info_spec = {
31453                 .description = "recycle_cnt",
31454                 .field_bit_size = 2,
31455                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31456                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31457                 }
31458         },
31459         {
31460         .field_info_mask = {
31461                 .description = "mpass_cnt",
31462                 .field_bit_size = 2,
31463                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31464                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31465                 },
31466         .field_info_spec = {
31467                 .description = "mpass_cnt",
31468                 .field_bit_size = 2,
31469                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31470                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31471                 }
31472         },
31473         {
31474         .field_info_mask = {
31475                 .description = "valid",
31476                 .field_bit_size = 1,
31477                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31478                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
31479                 .field_opr1 = {
31480                 1}
31481                 },
31482         .field_info_spec = {
31483                 .description = "valid",
31484                 .field_bit_size = 1,
31485                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31486                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
31487                 .field_opr1 = {
31488                 1}
31489                 }
31490         },
31491         /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_wr */
31492         {
31493         .field_info_mask = {
31494                 .description = "svif",
31495                 .field_bit_size = 8,
31496                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31497                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31498                 .field_opr1 = {
31499                         0xff}
31500                 },
31501         .field_info_spec = {
31502                 .description = "svif",
31503                 .field_bit_size = 8,
31504                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31505                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31506                 .field_opr1 = {
31507                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
31508                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff}
31509                 }
31510         },
31511         /* class_tid: 4, , table: port_table.egr_wr_0 */
31512         {
31513         .field_info_mask = {
31514                 .description = "dev.port_id",
31515                 .field_bit_size = 10,
31516                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31517                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31518                 .field_opr1 = {
31519                         0xff,
31520                         0xff}
31521                 },
31522         .field_info_spec = {
31523                 .description = "dev.port_id",
31524                 .field_bit_size = 10,
31525                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31526                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31527                 .field_opr1 = {
31528                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
31529                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
31530                 }
31531         },
31532         /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_rd_vfr */
31533         {
31534         .field_info_mask = {
31535                 .description = "svif",
31536                 .field_bit_size = 8,
31537                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31538                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31539                 .field_opr1 = {
31540                         0xff}
31541                 },
31542         .field_info_spec = {
31543                 .description = "svif",
31544                 .field_bit_size = 8,
31545                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31546                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31547                 .field_opr1 = {
31548                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
31549                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
31550                 }
31551         },
31552         /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
31553         {
31554         .field_info_mask = {
31555                 .description = "svif",
31556                 .field_bit_size = 8,
31557                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31558                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31559                 .field_opr1 = {
31560                         0xff}
31561                 },
31562         .field_info_spec = {
31563                 .description = "svif",
31564                 .field_bit_size = 8,
31565                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31566                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31567                 .field_opr1 = {
31568                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
31569                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
31570                 }
31571         },
31572         /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_rd */
31573         {
31574         .field_info_mask = {
31575                 .description = "svif",
31576                 .field_bit_size = 8,
31577                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31578                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31579                 .field_opr1 = {
31580                         0xff}
31581                 },
31582         .field_info_spec = {
31583                 .description = "svif",
31584                 .field_bit_size = 8,
31585                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31586                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31587                 .field_opr1 = {
31588                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
31589                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
31590                 }
31591         },
31592         /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
31593         {
31594         .field_info_mask = {
31595                 .description = "etype",
31596                 .field_bit_size = 16,
31597                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31598                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31599                 },
31600         .field_info_spec = {
31601                 .description = "etype",
31602                 .field_bit_size = 16,
31603                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31604                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31605                 }
31606         },
31607         {
31608         .field_info_mask = {
31609                 .description = "l2_ivlan_tpid_sel",
31610                 .field_bit_size = 3,
31611                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31612                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31613                 },
31614         .field_info_spec = {
31615                 .description = "l2_ivlan_tpid_sel",
31616                 .field_bit_size = 3,
31617                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31618                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31619                 }
31620         },
31621         {
31622         .field_info_mask = {
31623                 .description = "l2_ivlan_vid",
31624                 .field_bit_size = 12,
31625                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31626                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31627                 },
31628         .field_info_spec = {
31629                 .description = "l2_ivlan_vid",
31630                 .field_bit_size = 12,
31631                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31632                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31633                 }
31634         },
31635         {
31636         .field_info_mask = {
31637                 .description = "l2_ovlan_tpid_sel",
31638                 .field_bit_size = 3,
31639                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31640                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31641                 },
31642         .field_info_spec = {
31643                 .description = "l2_ovlan_tpid_sel",
31644                 .field_bit_size = 3,
31645                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31646                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31647                 }
31648         },
31649         {
31650         .field_info_mask = {
31651                 .description = "l2_ovlan_vid",
31652                 .field_bit_size = 12,
31653                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31654                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31655                 },
31656         .field_info_spec = {
31657                 .description = "l2_ovlan_vid",
31658                 .field_bit_size = 12,
31659                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31660                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31661                 }
31662         },
31663         {
31664         .field_info_mask = {
31665                 .description = "two_vtags",
31666                 .field_bit_size = 1,
31667                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31668                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31669                 },
31670         .field_info_spec = {
31671                 .description = "two_vtags",
31672                 .field_bit_size = 1,
31673                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31674                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31675                 }
31676         },
31677         {
31678         .field_info_mask = {
31679                 .description = "vtag_present",
31680                 .field_bit_size = 1,
31681                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31682                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31683                 },
31684         .field_info_spec = {
31685                 .description = "vtag_present",
31686                 .field_bit_size = 1,
31687                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31688                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31689                 }
31690         },
31691         {
31692         .field_info_mask = {
31693                 .description = "mac1_addr",
31694                 .field_bit_size = 48,
31695                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31696                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31697                 },
31698         .field_info_spec = {
31699                 .description = "mac1_addr",
31700                 .field_bit_size = 48,
31701                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31702                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31703                 }
31704         },
31705         {
31706         .field_info_mask = {
31707                 .description = "mac0_addr",
31708                 .field_bit_size = 48,
31709                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31710                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31711                 },
31712         .field_info_spec = {
31713                 .description = "mac0_addr",
31714                 .field_bit_size = 48,
31715                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31716                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31717                 }
31718         },
31719         {
31720         .field_info_mask = {
31721                 .description = "tunnel_id",
31722                 .field_bit_size = 24,
31723                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31724                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31725                 },
31726         .field_info_spec = {
31727                 .description = "tunnel_id",
31728                 .field_bit_size = 24,
31729                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31730                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31731                 }
31732         },
31733         {
31734         .field_info_mask = {
31735                 .description = "tun_hdr_type",
31736                 .field_bit_size = 4,
31737                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31738                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31739                 },
31740         .field_info_spec = {
31741                 .description = "tun_hdr_type",
31742                 .field_bit_size = 4,
31743                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31744                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31745                 }
31746         },
31747         {
31748         .field_info_mask = {
31749                 .description = "llc",
31750                 .field_bit_size = 1,
31751                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31752                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31753                 },
31754         .field_info_spec = {
31755                 .description = "llc",
31756                 .field_bit_size = 1,
31757                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31758                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31759                 }
31760         },
31761         {
31762         .field_info_mask = {
31763                 .description = "roce",
31764                 .field_bit_size = 1,
31765                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31766                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31767                 },
31768         .field_info_spec = {
31769                 .description = "roce",
31770                 .field_bit_size = 1,
31771                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31772                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31773                 }
31774         },
31775         {
31776         .field_info_mask = {
31777                 .description = "metadata",
31778                 .field_bit_size = 16,
31779                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31780                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31781                 },
31782         .field_info_spec = {
31783                 .description = "metadata",
31784                 .field_bit_size = 16,
31785                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31786                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31787                 }
31788         },
31789         {
31790         .field_info_mask = {
31791                 .description = "svif",
31792                 .field_bit_size = 11,
31793                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31794                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31795                 .field_opr1 = {
31796                         0xff,
31797                         0xff}
31798                 },
31799         .field_info_spec = {
31800                 .description = "svif",
31801                 .field_bit_size = 11,
31802                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31803                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31804                 .field_opr1 = {
31805                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
31806                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
31807                 }
31808         },
31809         {
31810         .field_info_mask = {
31811                 .description = "parif",
31812                 .field_bit_size = 4,
31813                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31814                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31815                 },
31816         .field_info_spec = {
31817                 .description = "parif",
31818                 .field_bit_size = 4,
31819                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31820                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31821                 }
31822         },
31823         {
31824         .field_info_mask = {
31825                 .description = "spif",
31826                 .field_bit_size = 2,
31827                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31828                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31829                 },
31830         .field_info_spec = {
31831                 .description = "spif",
31832                 .field_bit_size = 2,
31833                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31834                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31835                 }
31836         },
31837         {
31838         .field_info_mask = {
31839                 .description = "loopback",
31840                 .field_bit_size = 1,
31841                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31842                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31843                 },
31844         .field_info_spec = {
31845                 .description = "loopback",
31846                 .field_bit_size = 1,
31847                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31848                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31849                 }
31850         },
31851         {
31852         .field_info_mask = {
31853                 .description = "recycle_cnt",
31854                 .field_bit_size = 2,
31855                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31856                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31857                 },
31858         .field_info_spec = {
31859                 .description = "recycle_cnt",
31860                 .field_bit_size = 2,
31861                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31862                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31863                 }
31864         },
31865         {
31866         .field_info_mask = {
31867                 .description = "mpass_cnt",
31868                 .field_bit_size = 2,
31869                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31870                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31871                 },
31872         .field_info_spec = {
31873                 .description = "mpass_cnt",
31874                 .field_bit_size = 2,
31875                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31876                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31877                 }
31878         },
31879         {
31880         .field_info_mask = {
31881                 .description = "valid",
31882                 .field_bit_size = 1,
31883                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31884                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
31885                 .field_opr1 = {
31886                 1}
31887                 },
31888         .field_info_spec = {
31889                 .description = "valid",
31890                 .field_bit_size = 1,
31891                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31892                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
31893                 .field_opr1 = {
31894                 1}
31895                 }
31896         },
31897         /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr */
31898         {
31899         .field_info_mask = {
31900                 .description = "svif",
31901                 .field_bit_size = 8,
31902                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31903                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31904                 .field_opr1 = {
31905                         0xff}
31906                 },
31907         .field_info_spec = {
31908                 .description = "svif",
31909                 .field_bit_size = 8,
31910                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31911                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31912                 .field_opr1 = {
31913                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
31914                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
31915                 }
31916         },
31917         /* class_tid: 5, , table: port_table.egr_wr */
31918         {
31919         .field_info_mask = {
31920                 .description = "dev.port_id",
31921                 .field_bit_size = 10,
31922                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31923                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31924                 .field_opr1 = {
31925                         0xff,
31926                         0xff}
31927                 },
31928         .field_info_spec = {
31929                 .description = "dev.port_id",
31930                 .field_bit_size = 10,
31931                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31932                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31933                 .field_opr1 = {
31934                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
31935                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
31936                 }
31937         },
31938         /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_rd_egr */
31939         {
31940         .field_info_mask = {
31941                 .description = "svif",
31942                 .field_bit_size = 8,
31943                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31944                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
31945                 .field_opr1 = {
31946                         0xff}
31947                 },
31948         .field_info_spec = {
31949                 .description = "svif",
31950                 .field_bit_size = 8,
31951                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31952                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
31953                 .field_opr1 = {
31954                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
31955                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
31956                 }
31957         },
31958         /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
31959         {
31960         .field_info_mask = {
31961                 .description = "etype",
31962                 .field_bit_size = 16,
31963                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31964                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31965                 },
31966         .field_info_spec = {
31967                 .description = "etype",
31968                 .field_bit_size = 16,
31969                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31970                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31971                 }
31972         },
31973         {
31974         .field_info_mask = {
31975                 .description = "l2_ivlan_tpid_sel",
31976                 .field_bit_size = 3,
31977                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31978                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31979                 },
31980         .field_info_spec = {
31981                 .description = "l2_ivlan_tpid_sel",
31982                 .field_bit_size = 3,
31983                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31984                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31985                 }
31986         },
31987         {
31988         .field_info_mask = {
31989                 .description = "l2_ivlan_vid",
31990                 .field_bit_size = 12,
31991                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31992                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31993                 },
31994         .field_info_spec = {
31995                 .description = "l2_ivlan_vid",
31996                 .field_bit_size = 12,
31997                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
31998                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
31999                 }
32000         },
32001         {
32002         .field_info_mask = {
32003                 .description = "l2_ovlan_tpid_sel",
32004                 .field_bit_size = 3,
32005                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32006                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32007                 },
32008         .field_info_spec = {
32009                 .description = "l2_ovlan_tpid_sel",
32010                 .field_bit_size = 3,
32011                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32012                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32013                 }
32014         },
32015         {
32016         .field_info_mask = {
32017                 .description = "l2_ovlan_vid",
32018                 .field_bit_size = 12,
32019                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32020                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32021                 },
32022         .field_info_spec = {
32023                 .description = "l2_ovlan_vid",
32024                 .field_bit_size = 12,
32025                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32026                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32027                 }
32028         },
32029         {
32030         .field_info_mask = {
32031                 .description = "two_vtags",
32032                 .field_bit_size = 1,
32033                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32034                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32035                 },
32036         .field_info_spec = {
32037                 .description = "two_vtags",
32038                 .field_bit_size = 1,
32039                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32040                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32041                 }
32042         },
32043         {
32044         .field_info_mask = {
32045                 .description = "vtag_present",
32046                 .field_bit_size = 1,
32047                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32048                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32049                 },
32050         .field_info_spec = {
32051                 .description = "vtag_present",
32052                 .field_bit_size = 1,
32053                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32054                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32055                 }
32056         },
32057         {
32058         .field_info_mask = {
32059                 .description = "mac1_addr",
32060                 .field_bit_size = 48,
32061                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32062                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32063                 },
32064         .field_info_spec = {
32065                 .description = "mac1_addr",
32066                 .field_bit_size = 48,
32067                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32068                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32069                 }
32070         },
32071         {
32072         .field_info_mask = {
32073                 .description = "mac0_addr",
32074                 .field_bit_size = 48,
32075                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32076                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32077                 },
32078         .field_info_spec = {
32079                 .description = "mac0_addr",
32080                 .field_bit_size = 48,
32081                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32082                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32083                 }
32084         },
32085         {
32086         .field_info_mask = {
32087                 .description = "tunnel_id",
32088                 .field_bit_size = 24,
32089                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32090                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32091                 },
32092         .field_info_spec = {
32093                 .description = "tunnel_id",
32094                 .field_bit_size = 24,
32095                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32096                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32097                 }
32098         },
32099         {
32100         .field_info_mask = {
32101                 .description = "tun_hdr_type",
32102                 .field_bit_size = 4,
32103                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32104                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32105                 },
32106         .field_info_spec = {
32107                 .description = "tun_hdr_type",
32108                 .field_bit_size = 4,
32109                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32110                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32111                 }
32112         },
32113         {
32114         .field_info_mask = {
32115                 .description = "llc",
32116                 .field_bit_size = 1,
32117                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32118                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32119                 },
32120         .field_info_spec = {
32121                 .description = "llc",
32122                 .field_bit_size = 1,
32123                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32124                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32125                 }
32126         },
32127         {
32128         .field_info_mask = {
32129                 .description = "roce",
32130                 .field_bit_size = 1,
32131                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32132                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32133                 },
32134         .field_info_spec = {
32135                 .description = "roce",
32136                 .field_bit_size = 1,
32137                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32138                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32139                 }
32140         },
32141         {
32142         .field_info_mask = {
32143                 .description = "metadata",
32144                 .field_bit_size = 16,
32145                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32146                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32147                 },
32148         .field_info_spec = {
32149                 .description = "metadata",
32150                 .field_bit_size = 16,
32151                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32152                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32153                 }
32154         },
32155         {
32156         .field_info_mask = {
32157                 .description = "svif",
32158                 .field_bit_size = 11,
32159                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32160                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32161                 .field_opr1 = {
32162                         0xff,
32163                         0xff}
32164                 },
32165         .field_info_spec = {
32166                 .description = "svif",
32167                 .field_bit_size = 11,
32168                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32169                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
32170                 .field_opr1 = {
32171                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
32172                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
32173                 }
32174         },
32175         {
32176         .field_info_mask = {
32177                 .description = "parif",
32178                 .field_bit_size = 4,
32179                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32180                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32181                 },
32182         .field_info_spec = {
32183                 .description = "parif",
32184                 .field_bit_size = 4,
32185                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32186                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32187                 }
32188         },
32189         {
32190         .field_info_mask = {
32191                 .description = "spif",
32192                 .field_bit_size = 2,
32193                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32194                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32195                 },
32196         .field_info_spec = {
32197                 .description = "spif",
32198                 .field_bit_size = 2,
32199                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32200                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32201                 }
32202         },
32203         {
32204         .field_info_mask = {
32205                 .description = "loopback",
32206                 .field_bit_size = 1,
32207                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32208                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32209                 },
32210         .field_info_spec = {
32211                 .description = "loopback",
32212                 .field_bit_size = 1,
32213                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32214                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32215                 }
32216         },
32217         {
32218         .field_info_mask = {
32219                 .description = "recycle_cnt",
32220                 .field_bit_size = 2,
32221                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32222                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32223                 },
32224         .field_info_spec = {
32225                 .description = "recycle_cnt",
32226                 .field_bit_size = 2,
32227                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32228                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32229                 }
32230         },
32231         {
32232         .field_info_mask = {
32233                 .description = "mpass_cnt",
32234                 .field_bit_size = 2,
32235                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32236                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32237                 },
32238         .field_info_spec = {
32239                 .description = "mpass_cnt",
32240                 .field_bit_size = 2,
32241                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32242                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32243                 }
32244         },
32245         {
32246         .field_info_mask = {
32247                 .description = "valid",
32248                 .field_bit_size = 1,
32249                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32250                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
32251                 .field_opr1 = {
32252                 1}
32253                 },
32254         .field_info_spec = {
32255                 .description = "valid",
32256                 .field_bit_size = 1,
32257                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32258                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
32259                 .field_opr1 = {
32260                 1}
32261                 }
32262         },
32263         /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_egr_wr */
32264         {
32265         .field_info_mask = {
32266                 .description = "svif",
32267                 .field_bit_size = 8,
32268                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32269                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32270                 .field_opr1 = {
32271                         0xff}
32272                 },
32273         .field_info_spec = {
32274                 .description = "svif",
32275                 .field_bit_size = 8,
32276                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32277                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
32278                 .field_opr1 = {
32279                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
32280                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff}
32281                 }
32282         },
32283         /* class_tid: 5, , table: l2_cntxt_tcam_cache.rd_egr0 */
32284         {
32285         .field_info_mask = {
32286                 .description = "svif",
32287                 .field_bit_size = 8,
32288                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32289                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32290                 .field_opr1 = {
32291                         0xff}
32292                 },
32293         .field_info_spec = {
32294                 .description = "svif",
32295                 .field_bit_size = 8,
32296                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32297                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
32298                 .field_opr1 = {
32299                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
32300                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
32301                 }
32302         },
32303         /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
32304         {
32305         .field_info_mask = {
32306                 .description = "svif",
32307                 .field_bit_size = 8,
32308                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32309                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32310                 .field_opr1 = {
32311                         0xff}
32312                 },
32313         .field_info_spec = {
32314                 .description = "svif",
32315                 .field_bit_size = 8,
32316                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32317                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
32318                 .field_opr1 = {
32319                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
32320                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
32321                 }
32322         },
32323         /* class_tid: 5, , table: l2_cntxt_tcam_cache.ing_rd_vfr */
32324         {
32325         .field_info_mask = {
32326                 .description = "svif",
32327                 .field_bit_size = 8,
32328                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32329                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32330                 .field_opr1 = {
32331                         0xff}
32332                 },
32333         .field_info_spec = {
32334                 .description = "svif",
32335                 .field_bit_size = 8,
32336                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32337                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
32338                 .field_opr1 = {
32339                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
32340                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
32341                 }
32342         },
32343         /* class_tid: 5, , table: l2_cntxt_tcam.vfr_ing0 */
32344         {
32345         .field_info_mask = {
32346                 .description = "etype",
32347                 .field_bit_size = 16,
32348                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32349                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32350                 },
32351         .field_info_spec = {
32352                 .description = "etype",
32353                 .field_bit_size = 16,
32354                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32355                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32356                 }
32357         },
32358         {
32359         .field_info_mask = {
32360                 .description = "l2_ivlan_tpid_sel",
32361                 .field_bit_size = 3,
32362                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32363                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32364                 },
32365         .field_info_spec = {
32366                 .description = "l2_ivlan_tpid_sel",
32367                 .field_bit_size = 3,
32368                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32369                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32370                 }
32371         },
32372         {
32373         .field_info_mask = {
32374                 .description = "l2_ivlan_vid",
32375                 .field_bit_size = 12,
32376                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32377                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32378                 },
32379         .field_info_spec = {
32380                 .description = "l2_ivlan_vid",
32381                 .field_bit_size = 12,
32382                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32383                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32384                 }
32385         },
32386         {
32387         .field_info_mask = {
32388                 .description = "l2_ovlan_tpid_sel",
32389                 .field_bit_size = 3,
32390                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32391                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32392                 },
32393         .field_info_spec = {
32394                 .description = "l2_ovlan_tpid_sel",
32395                 .field_bit_size = 3,
32396                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32397                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32398                 }
32399         },
32400         {
32401         .field_info_mask = {
32402                 .description = "l2_ovlan_vid",
32403                 .field_bit_size = 12,
32404                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32405                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32406                 },
32407         .field_info_spec = {
32408                 .description = "l2_ovlan_vid",
32409                 .field_bit_size = 12,
32410                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32411                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32412                 }
32413         },
32414         {
32415         .field_info_mask = {
32416                 .description = "two_vtags",
32417                 .field_bit_size = 1,
32418                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32419                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32420                 },
32421         .field_info_spec = {
32422                 .description = "two_vtags",
32423                 .field_bit_size = 1,
32424                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32425                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32426                 }
32427         },
32428         {
32429         .field_info_mask = {
32430                 .description = "vtag_present",
32431                 .field_bit_size = 1,
32432                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32433                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32434                 },
32435         .field_info_spec = {
32436                 .description = "vtag_present",
32437                 .field_bit_size = 1,
32438                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32439                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32440                 }
32441         },
32442         {
32443         .field_info_mask = {
32444                 .description = "mac1_addr",
32445                 .field_bit_size = 48,
32446                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32447                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32448                 },
32449         .field_info_spec = {
32450                 .description = "mac1_addr",
32451                 .field_bit_size = 48,
32452                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32453                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32454                 }
32455         },
32456         {
32457         .field_info_mask = {
32458                 .description = "mac0_addr",
32459                 .field_bit_size = 48,
32460                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32461                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32462                 },
32463         .field_info_spec = {
32464                 .description = "mac0_addr",
32465                 .field_bit_size = 48,
32466                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32467                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32468                 }
32469         },
32470         {
32471         .field_info_mask = {
32472                 .description = "tunnel_id",
32473                 .field_bit_size = 24,
32474                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32475                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32476                 },
32477         .field_info_spec = {
32478                 .description = "tunnel_id",
32479                 .field_bit_size = 24,
32480                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32481                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32482                 }
32483         },
32484         {
32485         .field_info_mask = {
32486                 .description = "tun_hdr_type",
32487                 .field_bit_size = 4,
32488                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32489                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32490                 },
32491         .field_info_spec = {
32492                 .description = "tun_hdr_type",
32493                 .field_bit_size = 4,
32494                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32495                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32496                 }
32497         },
32498         {
32499         .field_info_mask = {
32500                 .description = "llc",
32501                 .field_bit_size = 1,
32502                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32503                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32504                 },
32505         .field_info_spec = {
32506                 .description = "llc",
32507                 .field_bit_size = 1,
32508                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32509                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32510                 }
32511         },
32512         {
32513         .field_info_mask = {
32514                 .description = "roce",
32515                 .field_bit_size = 1,
32516                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32517                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32518                 },
32519         .field_info_spec = {
32520                 .description = "roce",
32521                 .field_bit_size = 1,
32522                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32523                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32524                 }
32525         },
32526         {
32527         .field_info_mask = {
32528                 .description = "metadata",
32529                 .field_bit_size = 16,
32530                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32531                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32532                 },
32533         .field_info_spec = {
32534                 .description = "metadata",
32535                 .field_bit_size = 16,
32536                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32537                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32538                 }
32539         },
32540         {
32541         .field_info_mask = {
32542                 .description = "svif",
32543                 .field_bit_size = 11,
32544                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32545                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32546                 .field_opr1 = {
32547                         0xff,
32548                         0xff}
32549                 },
32550         .field_info_spec = {
32551                 .description = "svif",
32552                 .field_bit_size = 11,
32553                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32554                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
32555                 .field_opr1 = {
32556                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
32557                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
32558                 }
32559         },
32560         {
32561         .field_info_mask = {
32562                 .description = "parif",
32563                 .field_bit_size = 4,
32564                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32565                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32566                 },
32567         .field_info_spec = {
32568                 .description = "parif",
32569                 .field_bit_size = 4,
32570                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32571                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32572                 }
32573         },
32574         {
32575         .field_info_mask = {
32576                 .description = "spif",
32577                 .field_bit_size = 2,
32578                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32579                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32580                 },
32581         .field_info_spec = {
32582                 .description = "spif",
32583                 .field_bit_size = 2,
32584                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32585                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32586                 }
32587         },
32588         {
32589         .field_info_mask = {
32590                 .description = "loopback",
32591                 .field_bit_size = 1,
32592                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32593                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
32594                 .field_opr1 = {
32595                         0xff}
32596                 },
32597         .field_info_spec = {
32598                 .description = "loopback",
32599                 .field_bit_size = 1,
32600                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32601                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
32602                 .field_opr1 = {
32603                 1}
32604                 }
32605         },
32606         {
32607         .field_info_mask = {
32608                 .description = "recycle_cnt",
32609                 .field_bit_size = 2,
32610                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32611                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32612                 },
32613         .field_info_spec = {
32614                 .description = "recycle_cnt",
32615                 .field_bit_size = 2,
32616                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32617                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32618                 }
32619         },
32620         {
32621         .field_info_mask = {
32622                 .description = "mpass_cnt",
32623                 .field_bit_size = 2,
32624                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32625                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32626                 },
32627         .field_info_spec = {
32628                 .description = "mpass_cnt",
32629                 .field_bit_size = 2,
32630                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32631                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32632                 }
32633         },
32634         {
32635         .field_info_mask = {
32636                 .description = "valid",
32637                 .field_bit_size = 1,
32638                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32639                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
32640                 .field_opr1 = {
32641                 1}
32642                 },
32643         .field_info_spec = {
32644                 .description = "valid",
32645                 .field_bit_size = 1,
32646                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32647                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
32648                 .field_opr1 = {
32649                 1}
32650                 }
32651         },
32652         /* class_tid: 5, , table: profile_tcam.vfr_ing0 */
32653         {
32654         .field_info_mask = {
32655                 .description = "l4_hdr_is_udp_tcp",
32656                 .field_bit_size = 1,
32657                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32658                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32659                 },
32660         .field_info_spec = {
32661                 .description = "l4_hdr_is_udp_tcp",
32662                 .field_bit_size = 1,
32663                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32664                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32665                 }
32666         },
32667         {
32668         .field_info_mask = {
32669                 .description = "l4_hdr_type",
32670                 .field_bit_size = 4,
32671                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32672                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32673                 },
32674         .field_info_spec = {
32675                 .description = "l4_hdr_type",
32676                 .field_bit_size = 4,
32677                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32678                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32679                 }
32680         },
32681         {
32682         .field_info_mask = {
32683                 .description = "l4_hdr_error",
32684                 .field_bit_size = 1,
32685                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32686                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32687                 },
32688         .field_info_spec = {
32689                 .description = "l4_hdr_error",
32690                 .field_bit_size = 1,
32691                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32692                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32693                 }
32694         },
32695         {
32696         .field_info_mask = {
32697                 .description = "l4_hdr_valid",
32698                 .field_bit_size = 1,
32699                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32700                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32701                 },
32702         .field_info_spec = {
32703                 .description = "l4_hdr_valid",
32704                 .field_bit_size = 1,
32705                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32706                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32707                 }
32708         },
32709         {
32710         .field_info_mask = {
32711                 .description = "ieh",
32712                 .field_bit_size = 8,
32713                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32714                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32715                 },
32716         .field_info_spec = {
32717                 .description = "ieh",
32718                 .field_bit_size = 8,
32719                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32720                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32721                 }
32722         },
32723         {
32724         .field_info_mask = {
32725                 .description = "l3_ipv6_cmp_dst",
32726                 .field_bit_size = 1,
32727                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32728                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32729                 },
32730         .field_info_spec = {
32731                 .description = "l3_ipv6_cmp_dst",
32732                 .field_bit_size = 1,
32733                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32734                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32735                 }
32736         },
32737         {
32738         .field_info_mask = {
32739                 .description = "l3_ipv6_cmp_src",
32740                 .field_bit_size = 1,
32741                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32742                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32743                 },
32744         .field_info_spec = {
32745                 .description = "l3_ipv6_cmp_src",
32746                 .field_bit_size = 1,
32747                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32748                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32749                 }
32750         },
32751         {
32752         .field_info_mask = {
32753                 .description = "l3_hdr_isIP",
32754                 .field_bit_size = 1,
32755                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32756                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32757                 },
32758         .field_info_spec = {
32759                 .description = "l3_hdr_isIP",
32760                 .field_bit_size = 1,
32761                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32762                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32763                 }
32764         },
32765         {
32766         .field_info_mask = {
32767                 .description = "l3_hdr_type",
32768                 .field_bit_size = 4,
32769                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32770                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32771                 },
32772         .field_info_spec = {
32773                 .description = "l3_hdr_type",
32774                 .field_bit_size = 4,
32775                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32776                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32777                 }
32778         },
32779         {
32780         .field_info_mask = {
32781                 .description = "l3_hdr_error",
32782                 .field_bit_size = 1,
32783                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32784                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32785                 },
32786         .field_info_spec = {
32787                 .description = "l3_hdr_error",
32788                 .field_bit_size = 1,
32789                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32790                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32791                 }
32792         },
32793         {
32794         .field_info_mask = {
32795                 .description = "l3_hdr_valid",
32796                 .field_bit_size = 1,
32797                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32798                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32799                 },
32800         .field_info_spec = {
32801                 .description = "l3_hdr_valid",
32802                 .field_bit_size = 1,
32803                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32804                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32805                 }
32806         },
32807         {
32808         .field_info_mask = {
32809                 .description = "l2_two_vtags",
32810                 .field_bit_size = 1,
32811                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32812                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32813                 },
32814         .field_info_spec = {
32815                 .description = "l2_two_vtags",
32816                 .field_bit_size = 1,
32817                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32818                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32819                 }
32820         },
32821         {
32822         .field_info_mask = {
32823                 .description = "l2_vtag_present",
32824                 .field_bit_size = 1,
32825                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32826                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32827                 },
32828         .field_info_spec = {
32829                 .description = "l2_vtag_present",
32830                 .field_bit_size = 1,
32831                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32832                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32833                 }
32834         },
32835         {
32836         .field_info_mask = {
32837                 .description = "l2_uc_mc_bc",
32838                 .field_bit_size = 2,
32839                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32840                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32841                 },
32842         .field_info_spec = {
32843                 .description = "l2_uc_mc_bc",
32844                 .field_bit_size = 2,
32845                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32846                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32847                 }
32848         },
32849         {
32850         .field_info_mask = {
32851                 .description = "l2_hdr_type",
32852                 .field_bit_size = 2,
32853                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32854                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32855                 },
32856         .field_info_spec = {
32857                 .description = "l2_hdr_type",
32858                 .field_bit_size = 2,
32859                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32860                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32861                 }
32862         },
32863         {
32864         .field_info_mask = {
32865                 .description = "l2_hdr_error",
32866                 .field_bit_size = 1,
32867                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32868                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32869                 },
32870         .field_info_spec = {
32871                 .description = "l2_hdr_error",
32872                 .field_bit_size = 1,
32873                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32874                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32875                 }
32876         },
32877         {
32878         .field_info_mask = {
32879                 .description = "l2_hdr_valid",
32880                 .field_bit_size = 1,
32881                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32882                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32883                 },
32884         .field_info_spec = {
32885                 .description = "l2_hdr_valid",
32886                 .field_bit_size = 1,
32887                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32888                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32889                 }
32890         },
32891         {
32892         .field_info_mask = {
32893                 .description = "tun_hdr_flags",
32894                 .field_bit_size = 3,
32895                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32896                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32897                 },
32898         .field_info_spec = {
32899                 .description = "tun_hdr_flags",
32900                 .field_bit_size = 3,
32901                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32902                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32903                 }
32904         },
32905         {
32906         .field_info_mask = {
32907                 .description = "tun_hdr_type",
32908                 .field_bit_size = 4,
32909                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32910                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32911                 },
32912         .field_info_spec = {
32913                 .description = "tun_hdr_type",
32914                 .field_bit_size = 4,
32915                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32916                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32917                 }
32918         },
32919         {
32920         .field_info_mask = {
32921                 .description = "tun_hdr_err",
32922                 .field_bit_size = 1,
32923                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32924                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32925                 },
32926         .field_info_spec = {
32927                 .description = "tun_hdr_err",
32928                 .field_bit_size = 1,
32929                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32930                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32931                 }
32932         },
32933         {
32934         .field_info_mask = {
32935                 .description = "tun_hdr_valid",
32936                 .field_bit_size = 1,
32937                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32938                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32939                 },
32940         .field_info_spec = {
32941                 .description = "tun_hdr_valid",
32942                 .field_bit_size = 1,
32943                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32944                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32945                 }
32946         },
32947         {
32948         .field_info_mask = {
32949                 .description = "tl4_hdr_is_udp_tcp",
32950                 .field_bit_size = 1,
32951                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32952                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32953                 },
32954         .field_info_spec = {
32955                 .description = "tl4_hdr_is_udp_tcp",
32956                 .field_bit_size = 1,
32957                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32958                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32959                 }
32960         },
32961         {
32962         .field_info_mask = {
32963                 .description = "tl4_hdr_type",
32964                 .field_bit_size = 4,
32965                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32966                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32967                 },
32968         .field_info_spec = {
32969                 .description = "tl4_hdr_type",
32970                 .field_bit_size = 4,
32971                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32972                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32973                 }
32974         },
32975         {
32976         .field_info_mask = {
32977                 .description = "tl4_hdr_error",
32978                 .field_bit_size = 1,
32979                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32980                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32981                 },
32982         .field_info_spec = {
32983                 .description = "tl4_hdr_error",
32984                 .field_bit_size = 1,
32985                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32986                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32987                 }
32988         },
32989         {
32990         .field_info_mask = {
32991                 .description = "tl4_hdr_valid",
32992                 .field_bit_size = 1,
32993                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
32994                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
32995                 },
32996         .field_info_spec = {
32997                 .description = "tl4_hdr_valid",
32998                 .field_bit_size = 1,
32999                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33000                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33001                 }
33002         },
33003         {
33004         .field_info_mask = {
33005                 .description = "tl3_ipv6_cmp_dst",
33006                 .field_bit_size = 1,
33007                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33008                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33009                 },
33010         .field_info_spec = {
33011                 .description = "tl3_ipv6_cmp_dst",
33012                 .field_bit_size = 1,
33013                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33014                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33015                 }
33016         },
33017         {
33018         .field_info_mask = {
33019                 .description = "tl3_ipv6_cmp_src",
33020                 .field_bit_size = 1,
33021                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33022                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33023                 },
33024         .field_info_spec = {
33025                 .description = "tl3_ipv6_cmp_src",
33026                 .field_bit_size = 1,
33027                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33028                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33029                 }
33030         },
33031         {
33032         .field_info_mask = {
33033                 .description = "tl3_hdr_isIP",
33034                 .field_bit_size = 1,
33035                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33036                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33037                 },
33038         .field_info_spec = {
33039                 .description = "tl3_hdr_isIP",
33040                 .field_bit_size = 1,
33041                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33042                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33043                 }
33044         },
33045         {
33046         .field_info_mask = {
33047                 .description = "tl3_hdr_type",
33048                 .field_bit_size = 4,
33049                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33050                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33051                 },
33052         .field_info_spec = {
33053                 .description = "tl3_hdr_type",
33054                 .field_bit_size = 4,
33055                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33056                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33057                 }
33058         },
33059         {
33060         .field_info_mask = {
33061                 .description = "tl3_hdr_error",
33062                 .field_bit_size = 1,
33063                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33064                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33065                 },
33066         .field_info_spec = {
33067                 .description = "tl3_hdr_error",
33068                 .field_bit_size = 1,
33069                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33070                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33071                 }
33072         },
33073         {
33074         .field_info_mask = {
33075                 .description = "tl3_hdr_valid",
33076                 .field_bit_size = 1,
33077                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33078                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33079                 },
33080         .field_info_spec = {
33081                 .description = "tl3_hdr_valid",
33082                 .field_bit_size = 1,
33083                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33084                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33085                 }
33086         },
33087         {
33088         .field_info_mask = {
33089                 .description = "tl2_two_vtags",
33090                 .field_bit_size = 1,
33091                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33092                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33093                 },
33094         .field_info_spec = {
33095                 .description = "tl2_two_vtags",
33096                 .field_bit_size = 1,
33097                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33098                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33099                 }
33100         },
33101         {
33102         .field_info_mask = {
33103                 .description = "tl2_vtag_present",
33104                 .field_bit_size = 1,
33105                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33106                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33107                 },
33108         .field_info_spec = {
33109                 .description = "tl2_vtag_present",
33110                 .field_bit_size = 1,
33111                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33112                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33113                 }
33114         },
33115         {
33116         .field_info_mask = {
33117                 .description = "tl2_uc_mc_bc",
33118                 .field_bit_size = 2,
33119                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33120                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33121                 },
33122         .field_info_spec = {
33123                 .description = "tl2_uc_mc_bc",
33124                 .field_bit_size = 2,
33125                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33126                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33127                 }
33128         },
33129         {
33130         .field_info_mask = {
33131                 .description = "tl2_hdr_type",
33132                 .field_bit_size = 2,
33133                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33134                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33135                 },
33136         .field_info_spec = {
33137                 .description = "tl2_hdr_type",
33138                 .field_bit_size = 2,
33139                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33140                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33141                 }
33142         },
33143         {
33144         .field_info_mask = {
33145                 .description = "tl2_hdr_valid",
33146                 .field_bit_size = 1,
33147                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33148                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33149                 },
33150         .field_info_spec = {
33151                 .description = "tl2_hdr_valid",
33152                 .field_bit_size = 1,
33153                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33154                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33155                 }
33156         },
33157         {
33158         .field_info_mask = {
33159                 .description = "hrec_next",
33160                 .field_bit_size = 1,
33161                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33162                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33163                 },
33164         .field_info_spec = {
33165                 .description = "hrec_next",
33166                 .field_bit_size = 1,
33167                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33168                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33169                 }
33170         },
33171         {
33172         .field_info_mask = {
33173                 .description = "prof_func_id",
33174                 .field_bit_size = 7,
33175                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33176                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
33177                 .field_opr1 = {
33178                         0xff}
33179                 },
33180         .field_info_spec = {
33181                 .description = "prof_func_id",
33182                 .field_bit_size = 7,
33183                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33184                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
33185                 .field_opr1 = {
33186                 (BNXT_ULP_GLB_RF_IDX_GLB_VFR_PROF_FUNC_0 >> 8) & 0xff,
33187                 BNXT_ULP_GLB_RF_IDX_GLB_VFR_PROF_FUNC_0 & 0xff}
33188                 }
33189         },
33190         {
33191         .field_info_mask = {
33192                 .description = "agg_error",
33193                 .field_bit_size = 1,
33194                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33195                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33196                 },
33197         .field_info_spec = {
33198                 .description = "agg_error",
33199                 .field_bit_size = 1,
33200                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33201                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33202                 }
33203         },
33204         {
33205         .field_info_mask = {
33206                 .description = "metadata",
33207                 .field_bit_size = 16,
33208                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33209                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33210                 },
33211         .field_info_spec = {
33212                 .description = "metadata",
33213                 .field_bit_size = 16,
33214                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33215                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33216                 }
33217         },
33218         {
33219         .field_info_mask = {
33220                 .description = "pkt_type_0",
33221                 .field_bit_size = 2,
33222                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33223                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33224                 },
33225         .field_info_spec = {
33226                 .description = "pkt_type_0",
33227                 .field_bit_size = 2,
33228                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33229                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33230                 }
33231         },
33232         {
33233         .field_info_mask = {
33234                 .description = "pkt_type_1",
33235                 .field_bit_size = 2,
33236                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33237                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33238                 },
33239         .field_info_spec = {
33240                 .description = "pkt_type_1",
33241                 .field_bit_size = 2,
33242                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33243                 .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
33244                 }
33245         },
33246         {
33247         .field_info_mask = {
33248                 .description = "valid",
33249                 .field_bit_size = 1,
33250                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33251                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
33252                 .field_opr1 = {
33253                 1}
33254                 },
33255         .field_info_spec = {
33256                 .description = "valid",
33257                 .field_bit_size = 1,
33258                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33259                 .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
33260                 .field_opr1 = {
33261                 1}
33262                 }
33263         },
33264         /* class_tid: 5, , table: l2_cntxt_tcam_cache.ing_wr_vfr */
33265         {
33266         .field_info_mask = {
33267                 .description = "svif",
33268                 .field_bit_size = 8,
33269                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33270                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
33271                 .field_opr1 = {
33272                         0xff}
33273                 },
33274         .field_info_spec = {
33275                 .description = "svif",
33276                 .field_bit_size = 8,
33277                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33278                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
33279                 .field_opr1 = {
33280                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
33281                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff}
33282                 }
33283         },
33284         /* class_tid: 5, , table: em.vfr.0 */
33285         {
33286         .field_info_mask = {
33287                 .description = "em_profile_id",
33288                 .field_bit_size = 8,
33289                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33290                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
33291                 .field_opr1 = {
33292                         0xff}
33293                 },
33294         .field_info_spec = {
33295                 .description = "em_profile_id",
33296                 .field_bit_size = 8,
33297                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33298                 .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
33299                 .field_opr1 = {
33300                 (BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_PROF_ID_0 >> 8) & 0xff,
33301                 BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_PROF_ID_0 & 0xff}
33302                 }
33303         },
33304         {
33305         .field_info_mask = {
33306                 .description = "l2_cntxt_id",
33307                 .field_bit_size = 10,
33308                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33309                 },
33310         .field_info_spec = {
33311                 .description = "l2_cntxt_id",
33312                 .field_bit_size = 10,
33313                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33314                 }
33315         },
33316         {
33317         .field_info_mask = {
33318                 .description = "parif",
33319                 .field_bit_size = 4,
33320                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33321                 },
33322         .field_info_spec = {
33323                 .description = "parif",
33324                 .field_bit_size = 4,
33325                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33326                 }
33327         },
33328         {
33329         .field_info_mask = {
33330                 .description = "spif",
33331                 .field_bit_size = 2,
33332                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33333                 },
33334         .field_info_spec = {
33335                 .description = "spif",
33336                 .field_bit_size = 2,
33337                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33338                 }
33339         },
33340         {
33341         .field_info_mask = {
33342                 .description = "svif",
33343                 .field_bit_size = 11,
33344                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33345                 },
33346         .field_info_spec = {
33347                 .description = "svif",
33348                 .field_bit_size = 11,
33349                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33350                 }
33351         },
33352         {
33353         .field_info_mask = {
33354                 .description = "lcos",
33355                 .field_bit_size = 3,
33356                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33357                 },
33358         .field_info_spec = {
33359                 .description = "lcos",
33360                 .field_bit_size = 3,
33361                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33362                 }
33363         },
33364         {
33365         .field_info_mask = {
33366                 .description = "meta",
33367                 .field_bit_size = 16,
33368                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33369                 .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
33370                 .field_opr1 = {
33371                         0xff,
33372                         0xff}
33373                 },
33374         .field_info_spec = {
33375                 .description = "meta",
33376                 .field_bit_size = 16,
33377                 .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
33378                 .field_src1 = BNXT_ULP_FIELD_SRC_CF,
33379                 .field_opr1 = {
33380                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
33381                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
33382                 }
33383         },
33384         {
33385         .field_info_mask = {
33386                 .description = "rcyc_cnt",
33387                 .field_bit_size = 2,
33388                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33389                 },
33390         .field_info_spec = {
33391                 .description = "rcyc_cnt",
33392                 .field_bit_size = 2,
33393                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33394                 }
33395         },
33396         {
33397         .field_info_mask = {
33398                 .description = "loopback",
33399                 .field_bit_size = 1,
33400                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33401                 },
33402         .field_info_spec = {
33403                 .description = "loopback",
33404                 .field_bit_size = 1,
33405                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33406                 }
33407         },
33408         {
33409         .field_info_mask = {
33410                 .description = "tl2_l2type",
33411                 .field_bit_size = 2,
33412                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33413                 },
33414         .field_info_spec = {
33415                 .description = "tl2_l2type",
33416                 .field_bit_size = 2,
33417                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33418                 }
33419         },
33420         {
33421         .field_info_mask = {
33422                 .description = "tl2_dmac",
33423                 .field_bit_size = 48,
33424                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33425                 },
33426         .field_info_spec = {
33427                 .description = "tl2_dmac",
33428                 .field_bit_size = 48,
33429                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33430                 }
33431         },
33432         {
33433         .field_info_mask = {
33434                 .description = "tl2_smac",
33435                 .field_bit_size = 48,
33436                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33437                 },
33438         .field_info_spec = {
33439                 .description = "tl2_smac",
33440                 .field_bit_size = 48,
33441                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33442                 }
33443         },
33444         {
33445         .field_info_mask = {
33446                 .description = "tl2_dt",
33447                 .field_bit_size = 2,
33448                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33449                 },
33450         .field_info_spec = {
33451                 .description = "tl2_dt",
33452                 .field_bit_size = 2,
33453                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33454                 }
33455         },
33456         {
33457         .field_info_mask = {
33458                 .description = "tl2_sa",
33459                 .field_bit_size = 1,
33460                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33461                 },
33462         .field_info_spec = {
33463                 .description = "tl2_sa",
33464                 .field_bit_size = 1,
33465                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33466                 }
33467         },
33468         {
33469         .field_info_mask = {
33470                 .description = "tl2_nvt",
33471                 .field_bit_size = 2,
33472                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33473                 },
33474         .field_info_spec = {
33475                 .description = "tl2_nvt",
33476                 .field_bit_size = 2,
33477                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33478                 }
33479         },
33480         {
33481         .field_info_mask = {
33482                 .description = "tl2_ovp",
33483                 .field_bit_size = 3,
33484                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33485                 },
33486         .field_info_spec = {
33487                 .description = "tl2_ovp",
33488                 .field_bit_size = 3,
33489                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33490                 }
33491         },
33492         {
33493         .field_info_mask = {
33494                 .description = "tl2_ovd",
33495                 .field_bit_size = 1,
33496                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33497                 },
33498         .field_info_spec = {
33499                 .description = "tl2_ovd",
33500                 .field_bit_size = 1,
33501                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33502                 }
33503         },
33504         {
33505         .field_info_mask = {
33506                 .description = "tl2_ovv",
33507                 .field_bit_size = 12,
33508                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33509                 },
33510         .field_info_spec = {
33511                 .description = "tl2_ovv",
33512                 .field_bit_size = 12,
33513                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33514                 }
33515         },
33516         {
33517         .field_info_mask = {
33518                 .description = "tl2_ovt",
33519                 .field_bit_size = 3,
33520                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33521                 },
33522         .field_info_spec = {
33523                 .description = "tl2_ovt",
33524                 .field_bit_size = 3,
33525                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33526                 }
33527         },
33528         {
33529         .field_info_mask = {
33530                 .description = "tl2_ivp",
33531                 .field_bit_size = 3,
33532                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33533                 },
33534         .field_info_spec = {
33535                 .description = "tl2_ivp",
33536                 .field_bit_size = 3,
33537                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33538                 }
33539         },
33540         {
33541         .field_info_mask = {
33542                 .description = "tl2_ivd",
33543                 .field_bit_size = 1,
33544                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33545                 },
33546         .field_info_spec = {
33547                 .description = "tl2_ivd",
33548                 .field_bit_size = 1,
33549                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33550                 }
33551         },
33552         {
33553         .field_info_mask = {
33554                 .description = "tl2_ivv",
33555                 .field_bit_size = 12,
33556                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33557                 },
33558         .field_info_spec = {
33559                 .description = "tl2_ivv",
33560                 .field_bit_size = 12,
33561                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33562                 }
33563         },
33564         {
33565         .field_info_mask = {
33566                 .description = "tl2_ivt",
33567                 .field_bit_size = 3,
33568                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33569                 },
33570         .field_info_spec = {
33571                 .description = "tl2_ivt",
33572                 .field_bit_size = 3,
33573                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33574                 }
33575         },
33576         {
33577         .field_info_mask = {
33578                 .description = "tl2_etype",
33579                 .field_bit_size = 16,
33580                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33581                 },
33582         .field_info_spec = {
33583                 .description = "tl2_etype",
33584                 .field_bit_size = 16,
33585                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33586                 }
33587         },
33588         {
33589         .field_info_mask = {
33590                 .description = "tl3.l3type",
33591                 .field_bit_size = 4,
33592                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33593                 },
33594         .field_info_spec = {
33595                 .description = "tl3.l3type",
33596                 .field_bit_size = 4,
33597                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33598                 }
33599         },
33600         {
33601         .field_info_mask = {
33602                 .description = "tl3.sip.ipv4",
33603                 .field_bit_size = 32,
33604                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33605                 },
33606         .field_info_spec = {
33607                 .description = "tl3.sip.ipv4",
33608                 .field_bit_size = 32,
33609                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33610                 }
33611         },
33612         {
33613         .field_info_mask = {
33614                 .description = "tl3.sip.ipv6",
33615                 .field_bit_size = 128,
33616                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33617                 },
33618         .field_info_spec = {
33619                 .description = "tl3.sip.ipv6",
33620                 .field_bit_size = 128,
33621                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33622                 }
33623         },
33624         {
33625         .field_info_mask = {
33626                 .description = "tl3.sip_selcmp.ipv6",
33627                 .field_bit_size = 72,
33628                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33629                 },
33630         .field_info_spec = {
33631                 .description = "tl3.sip_selcmp.ipv6",
33632                 .field_bit_size = 72,
33633                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33634                 }
33635         },
33636         {
33637         .field_info_mask = {
33638                 .description = "tl3.dip.ipv4",
33639                 .field_bit_size = 32,
33640                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33641                 },
33642         .field_info_spec = {
33643                 .description = "tl3.dip.ipv4",
33644                 .field_bit_size = 32,
33645                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33646                 }
33647         },
33648         {
33649         .field_info_mask = {
33650                 .description = "tl3.dip.ipv6",
33651                 .field_bit_size = 128,
33652                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33653                 },
33654         .field_info_spec = {
33655                 .description = "tl3.dip.ipv6",
33656                 .field_bit_size = 128,
33657                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33658                 }
33659         },
33660         {
33661         .field_info_mask = {
33662                 .description = "tl3.dip_selcmp.ipv6",
33663                 .field_bit_size = 72,
33664                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33665                 },
33666         .field_info_spec = {
33667                 .description = "tl3.dip_selcmp.ipv6",
33668                 .field_bit_size = 72,
33669                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33670                 }
33671         },
33672         {
33673         .field_info_mask = {
33674                 .description = "tl3.ttl",
33675                 .field_bit_size = 8,
33676                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33677                 },
33678         .field_info_spec = {
33679                 .description = "tl3.ttl",
33680                 .field_bit_size = 8,
33681                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33682                 }
33683         },
33684         {
33685         .field_info_mask = {
33686                 .description = "tl3.prot",
33687                 .field_bit_size = 8,
33688                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33689                 },
33690         .field_info_spec = {
33691                 .description = "tl3.prot",
33692                 .field_bit_size = 8,
33693                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33694                 }
33695         },
33696         {
33697         .field_info_mask = {
33698                 .description = "tl3.fid.ipv4",
33699                 .field_bit_size = 16,
33700                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33701                 },
33702         .field_info_spec = {
33703                 .description = "tl3.fid.ipv4",
33704                 .field_bit_size = 16,
33705                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33706                 }
33707         },
33708         {
33709         .field_info_mask = {
33710                 .description = "tl3.fid.ipv6",
33711                 .field_bit_size = 20,
33712                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33713                 },
33714         .field_info_spec = {
33715                 .description = "tl3.fid.ipv6",
33716                 .field_bit_size = 20,
33717                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33718                 }
33719         },
33720         {
33721         .field_info_mask = {
33722                 .description = "tl3.qos",
33723                 .field_bit_size = 8,
33724                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33725                 },
33726         .field_info_spec = {
33727                 .description = "tl3.qos",
33728                 .field_bit_size = 8,
33729                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33730                 }
33731         },
33732         {
33733         .field_info_mask = {
33734                 .description = "tl3.ieh_nonext",
33735                 .field_bit_size = 1,
33736                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33737                 },
33738         .field_info_spec = {
33739                 .description = "tl3.ieh_nonext",
33740                 .field_bit_size = 1,
33741                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33742                 }
33743         },
33744         {
33745         .field_info_mask = {
33746                 .description = "tl3.ieh_esp",
33747                 .field_bit_size = 1,
33748                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33749                 },
33750         .field_info_spec = {
33751                 .description = "tl3.ieh_esp",
33752                 .field_bit_size = 1,
33753                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33754                 }
33755         },
33756         {
33757         .field_info_mask = {
33758                 .description = "tl3.ieh_auth",
33759                 .field_bit_size = 1,
33760                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33761                 },
33762         .field_info_spec = {
33763                 .description = "tl3.ieh_auth",
33764                 .field_bit_size = 1,
33765                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33766                 }
33767         },
33768         {
33769         .field_info_mask = {
33770                 .description = "tl3.ieh_dest",
33771                 .field_bit_size = 1,
33772                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33773                 },
33774         .field_info_spec = {
33775                 .description = "tl3.ieh_dest",
33776                 .field_bit_size = 1,
33777                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33778                 }
33779         },
33780         {
33781         .field_info_mask = {
33782                 .description = "tl3.ieh_frag",
33783                 .field_bit_size = 1,
33784                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33785                 },
33786         .field_info_spec = {
33787                 .description = "tl3.ieh_frag",
33788                 .field_bit_size = 1,
33789                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33790                 }
33791         },
33792         {
33793         .field_info_mask = {
33794                 .description = "tl3.ieh_rthdr",
33795                 .field_bit_size = 1,
33796                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33797                 },
33798         .field_info_spec = {
33799                 .description = "tl3.ieh_rthdr",
33800                 .field_bit_size = 1,
33801                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33802                 }
33803         },
33804         {
33805         .field_info_mask = {
33806                 .description = "tl3.ieh_hop",
33807                 .field_bit_size = 1,
33808                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33809                 },
33810         .field_info_spec = {
33811                 .description = "tl3.ieh_hop",
33812                 .field_bit_size = 1,
33813                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33814                 }
33815         },
33816         {
33817         .field_info_mask = {
33818                 .description = "tl3.ieh_1frag",
33819                 .field_bit_size = 1,
33820                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33821                 },
33822         .field_info_spec = {
33823                 .description = "tl3.ieh_1frag",
33824                 .field_bit_size = 1,
33825                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33826                 }
33827         },
33828         {
33829         .field_info_mask = {
33830                 .description = "tl3.df",
33831                 .field_bit_size = 1,
33832                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33833                 },
33834         .field_info_spec = {
33835                 .description = "tl3.df",
33836                 .field_bit_size = 1,
33837                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33838                 }
33839         },
33840         {
33841         .field_info_mask = {
33842                 .description = "tl3.l3err",
33843                 .field_bit_size = 4,
33844                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33845                 },
33846         .field_info_spec = {
33847                 .description = "tl3.l3err",
33848                 .field_bit_size = 4,
33849                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33850                 }
33851         },
33852         {
33853         .field_info_mask = {
33854                 .description = "tl4.l4type",
33855                 .field_bit_size = 4,
33856                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33857                 },
33858         .field_info_spec = {
33859                 .description = "tl4.l4type",
33860                 .field_bit_size = 4,
33861                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33862                 }
33863         },
33864         {
33865         .field_info_mask = {
33866                 .description = "tl4.src",
33867                 .field_bit_size = 16,
33868                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33869                 },
33870         .field_info_spec = {
33871                 .description = "tl4.src",
33872                 .field_bit_size = 16,
33873                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33874                 }
33875         },
33876         {
33877         .field_info_mask = {
33878                 .description = "tl4.dst",
33879                 .field_bit_size = 16,
33880                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33881                 },
33882         .field_info_spec = {
33883                 .description = "tl4.dst",
33884                 .field_bit_size = 16,
33885                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33886                 }
33887         },
33888         {
33889         .field_info_mask = {
33890                 .description = "tl4.flags",
33891                 .field_bit_size = 9,
33892                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33893                 },
33894         .field_info_spec = {
33895                 .description = "tl4.flags",
33896                 .field_bit_size = 9,
33897                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33898                 }
33899         },
33900         {
33901         .field_info_mask = {
33902                 .description = "tl4.seq",
33903                 .field_bit_size = 32,
33904                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33905                 },
33906         .field_info_spec = {
33907                 .description = "tl4.seq",
33908                 .field_bit_size = 32,
33909                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33910                 }
33911         },
33912         {
33913         .field_info_mask = {
33914                 .description = "tl4.pa",
33915                 .field_bit_size = 1,
33916                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33917                 },
33918         .field_info_spec = {
33919                 .description = "tl4.pa",
33920                 .field_bit_size = 1,
33921                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33922                 }
33923         },
33924         {
33925         .field_info_mask = {
33926                 .description = "tl4.opt",
33927                 .field_bit_size = 1,
33928                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33929                 },
33930         .field_info_spec = {
33931                 .description = "tl4.opt",
33932                 .field_bit_size = 1,
33933                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33934                 }
33935         },
33936         {
33937         .field_info_mask = {
33938                 .description = "tl4.tcpts",
33939                 .field_bit_size = 1,
33940                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33941                 },
33942         .field_info_spec = {
33943                 .description = "tl4.tcpts",
33944                 .field_bit_size = 1,
33945                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33946                 }
33947         },
33948         {
33949         .field_info_mask = {
33950                 .description = "tl4.err",
33951                 .field_bit_size = 4,
33952                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33953                 },
33954         .field_info_spec = {
33955                 .description = "tl4.err",
33956                 .field_bit_size = 4,
33957                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33958                 }
33959         },
33960         {
33961         .field_info_mask = {
33962                 .description = "tuntype",
33963                 .field_bit_size = 4,
33964                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33965                 },
33966         .field_info_spec = {
33967                 .description = "tuntype",
33968                 .field_bit_size = 4,
33969                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33970                 }
33971         },
33972         {
33973         .field_info_mask = {
33974                 .description = "tflags",
33975                 .field_bit_size = 3,
33976                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33977                 },
33978         .field_info_spec = {
33979                 .description = "tflags",
33980                 .field_bit_size = 3,
33981                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33982                 }
33983         },
33984         {
33985         .field_info_mask = {
33986                 .description = "tids",
33987                 .field_bit_size = 24,
33988                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33989                 },
33990         .field_info_spec = {
33991                 .description = "tids",
33992                 .field_bit_size = 24,
33993                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
33994                 }
33995         },
33996         {
33997         .field_info_mask = {
33998                 .description = "tid",
33999                 .field_bit_size = 32,
34000                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34001                 },
34002         .field_info_spec = {
34003                 .description = "tid",
34004                 .field_bit_size = 32,
34005                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34006                 }
34007         },
34008         {
34009         .field_info_mask = {
34010                 .description = "tctxts",
34011                 .field_bit_size = 24,
34012                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34013                 },
34014         .field_info_spec = {
34015                 .description = "tctxts",
34016                 .field_bit_size = 24,
34017                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34018                 }
34019         },
34020         {
34021         .field_info_mask = {
34022                 .description = "tctxt",
34023                 .field_bit_size = 32,
34024                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34025                 },
34026         .field_info_spec = {
34027                 .description = "tctxt",
34028                 .field_bit_size = 32,
34029                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34030                 }
34031         },
34032         {
34033         .field_info_mask = {
34034                 .description = "tqos",
34035                 .field_bit_size = 3,
34036                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34037                 },
34038         .field_info_spec = {
34039                 .description = "tqos",
34040                 .field_bit_size = 3,
34041                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34042                 }
34043         },
34044         {
34045         .field_info_mask = {
34046                 .description = "terr",
34047                 .field_bit_size = 4,
34048                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34049                 },
34050         .field_info_spec = {
34051                 .description = "terr",
34052                 .field_bit_size = 4,
34053                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34054                 }
34055         },
34056         {
34057         .field_info_mask = {
34058                 .description = "l2_l2type",
34059                 .field_bit_size = 2,
34060                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34061                 },
34062         .field_info_spec = {
34063                 .description = "l2_l2type",
34064                 .field_bit_size = 2,
34065                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34066                 }
34067         },
34068         {
34069         .field_info_mask = {
34070                 .description = "l2_dmac",
34071                 .field_bit_size = 48,
34072                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34073                 },
34074         .field_info_spec = {
34075                 .description = "l2_dmac",
34076                 .field_bit_size = 48,
34077                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34078                 }
34079         },
34080         {
34081         .field_info_mask = {
34082                 .description = "l2_smac",
34083                 .field_bit_size = 48,
34084                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34085                 },
34086         .field_info_spec = {
34087                 .description = "l2_smac",
34088                 .field_bit_size = 48,
34089                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34090                 }
34091         },
34092         {
34093         .field_info_mask = {
34094                 .description = "l2_dt",
34095                 .field_bit_size = 2,
34096                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34097                 },
34098         .field_info_spec = {
34099                 .description = "l2_dt",
34100                 .field_bit_size = 2,
34101                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34102                 }
34103         },
34104         {
34105         .field_info_mask = {
34106                 .description = "l2_sa",
34107                 .field_bit_size = 1,
34108                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34109                 },
34110         .field_info_spec = {
34111                 .description = "l2_sa",
34112                 .field_bit_size = 1,
34113                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34114                 }
34115         },
34116         {
34117         .field_info_mask = {
34118                 .description = "l2_nvt",
34119                 .field_bit_size = 2,
34120                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34121                 },
34122         .field_info_spec = {
34123                 .description = "l2_nvt",
34124                 .field_bit_size = 2,
34125                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34126                 }
34127         },
34128         {
34129         .field_info_mask = {
34130                 .description = "l2_ovp",
34131                 .field_bit_size = 3,
34132                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34133                 },
34134         .field_info_spec = {
34135                 .description = "l2_ovp",
34136                 .field_bit_size = 3,
34137                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34138                 }
34139         },
34140         {
34141         .field_info_mask = {
34142                 .description = "l2_ovd",
34143                 .field_bit_size = 1,
34144                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34145                 },
34146         .field_info_spec = {
34147                 .description = "l2_ovd",
34148                 .field_bit_size = 1,
34149                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34150                 }
34151         },
34152         {
34153         .field_info_mask = {
34154                 .description = "l2_ovv",
34155                 .field_bit_size = 12,
34156                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34157                 },
34158         .field_info_spec = {
34159                 .description = "l2_ovv",
34160                 .field_bit_size = 12,
34161                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34162                 }
34163         },
34164         {
34165         .field_info_mask = {
34166                 .description = "l2_ovt",
34167                 .field_bit_size = 3,
34168                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34169                 },
34170         .field_info_spec = {
34171                 .description = "l2_ovt",
34172                 .field_bit_size = 3,
34173                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34174                 }
34175         },
34176         {
34177         .field_info_mask = {
34178                 .description = "l2_ivp",
34179                 .field_bit_size = 3,
34180                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34181                 },
34182         .field_info_spec = {
34183                 .description = "l2_ivp",
34184                 .field_bit_size = 3,
34185                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34186                 }
34187         },
34188         {
34189         .field_info_mask = {
34190                 .description = "l2_ivd",
34191                 .field_bit_size = 1,
34192                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34193                 },
34194         .field_info_spec = {
34195                 .description = "l2_ivd",
34196                 .field_bit_size = 1,
34197                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34198                 }
34199         },
34200         {
34201         .field_info_mask = {
34202                 .description = "l2_ivv",
34203                 .field_bit_size = 12,
34204                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34205                 },
34206         .field_info_spec = {
34207                 .description = "l2_ivv",
34208                 .field_bit_size = 12,
34209                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34210                 }
34211         },
34212         {
34213         .field_info_mask = {
34214                 .description = "l2_ivt",
34215                 .field_bit_size = 3,
34216                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34217                 },
34218         .field_info_spec = {
34219                 .description = "l2_ivt",
34220                 .field_bit_size = 3,
34221                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34222                 }
34223         },
34224         {
34225         .field_info_mask = {
34226                 .description = "l2_etype",
34227                 .field_bit_size = 16,
34228                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34229                 },
34230         .field_info_spec = {
34231                 .description = "l2_etype",
34232                 .field_bit_size = 16,
34233                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34234                 }
34235         },
34236         {
34237         .field_info_mask = {
34238                 .description = "l3.l3type",
34239                 .field_bit_size = 4,
34240                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34241                 },
34242         .field_info_spec = {
34243                 .description = "l3.l3type",
34244                 .field_bit_size = 4,
34245                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34246                 }
34247         },
34248         {
34249         .field_info_mask = {
34250                 .description = "l3.sip.ipv4",
34251                 .field_bit_size = 32,
34252                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34253                 },
34254         .field_info_spec = {
34255                 .description = "l3.sip.ipv4",
34256                 .field_bit_size = 32,
34257                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34258                 }
34259         },
34260         {
34261         .field_info_mask = {
34262                 .description = "l3.sip.ipv6",
34263                 .field_bit_size = 128,
34264                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34265                 },
34266         .field_info_spec = {
34267                 .description = "l3.sip.ipv6",
34268                 .field_bit_size = 128,
34269                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34270                 }
34271         },
34272         {
34273         .field_info_mask = {
34274                 .description = "l3.sip_selcmp.ipv6",
34275                 .field_bit_size = 72,
34276                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34277                 },
34278         .field_info_spec = {
34279                 .description = "l3.sip_selcmp.ipv6",
34280                 .field_bit_size = 72,
34281                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34282                 }
34283         },
34284         {
34285         .field_info_mask = {
34286                 .description = "l3.dip.ipv4",
34287                 .field_bit_size = 32,
34288                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34289                 },
34290         .field_info_spec = {
34291                 .description = "l3.dip.ipv4",
34292                 .field_bit_size = 32,
34293                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34294                 }
34295         },
34296         {
34297         .field_info_mask = {
34298                 .description = "l3.dip.ipv6",
34299                 .field_bit_size = 128,
34300                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34301                 },
34302         .field_info_spec = {
34303                 .description = "l3.dip.ipv6",
34304                 .field_bit_size = 128,
34305                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34306                 }
34307         },
34308         {
34309         .field_info_mask = {
34310                 .description = "l3.dip_selcmp.ipv6",
34311                 .field_bit_size = 72,
34312                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34313                 },
34314         .field_info_spec = {
34315                 .description = "l3.dip_selcmp.ipv6",
34316                 .field_bit_size = 72,
34317                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34318                 }
34319         },
34320         {
34321         .field_info_mask = {
34322                 .description = "l3.ttl",
34323                 .field_bit_size = 8,
34324                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34325                 },
34326         .field_info_spec = {
34327                 .description = "l3.ttl",
34328                 .field_bit_size = 8,
34329                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34330                 }
34331         },
34332         {
34333         .field_info_mask = {
34334                 .description = "l3.prot",
34335                 .field_bit_size = 8,
34336                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34337                 },
34338         .field_info_spec = {
34339                 .description = "l3.prot",
34340                 .field_bit_size = 8,
34341                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34342                 }
34343         },
34344         {
34345         .field_info_mask = {
34346                 .description = "l3.fid.ipv4",
34347                 .field_bit_size = 16,
34348                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34349                 },
34350         .field_info_spec = {
34351                 .description = "l3.fid.ipv4",
34352                 .field_bit_size = 16,
34353                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34354                 }
34355         },
34356         {
34357         .field_info_mask = {
34358                 .description = "l3.fid.ipv6",
34359                 .field_bit_size = 20,
34360                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34361                 },
34362         .field_info_spec = {
34363                 .description = "l3.fid.ipv6",
34364                 .field_bit_size = 20,
34365                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34366                 }
34367         },
34368         {
34369         .field_info_mask = {
34370                 .description = "l3.qos",
34371                 .field_bit_size = 8,
34372                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34373                 },
34374         .field_info_spec = {
34375                 .description = "l3.qos",
34376                 .field_bit_size = 8,
34377                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34378                 }
34379         },
34380         {
34381         .field_info_mask = {
34382                 .description = "l3.ieh_nonext",
34383                 .field_bit_size = 1,
34384                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34385                 },
34386         .field_info_spec = {
34387                 .description = "l3.ieh_nonext",
34388                 .field_bit_size = 1,
34389                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34390                 }
34391         },
34392         {
34393         .field_info_mask = {
34394                 .description = "l3.ieh_esp",
34395                 .field_bit_size = 1,
34396                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34397                 },
34398         .field_info_spec = {
34399                 .description = "l3.ieh_esp",
34400                 .field_bit_size = 1,
34401                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34402                 }
34403         },
34404         {
34405         .field_info_mask = {
34406                 .description = "l3.ieh_auth",
34407                 .field_bit_size = 1,
34408                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34409                 },
34410         .field_info_spec = {
34411                 .description = "l3.ieh_auth",
34412                 .field_bit_size = 1,
34413                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34414                 }
34415         },
34416         {
34417         .field_info_mask = {
34418                 .description = "l3.ieh_dest",
34419                 .field_bit_size = 1,
34420                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34421                 },
34422         .field_info_spec = {
34423                 .description = "l3.ieh_dest",
34424                 .field_bit_size = 1,
34425                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34426                 }
34427         },
34428         {
34429         .field_info_mask = {
34430                 .description = "l3.ieh_frag",
34431                 .field_bit_size = 1,
34432                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34433                 },
34434         .field_info_spec = {
34435                 .description = "l3.ieh_frag",
34436                 .field_bit_size = 1,
34437                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34438                 }
34439         },
34440         {
34441         .field_info_mask = {
34442                 .description = "l3.ieh_rthdr",
34443                 .field_bit_size = 1,
34444                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34445                 },
34446         .field_info_spec = {
34447                 .description = "l3.ieh_rthdr",
34448                 .field_bit_size = 1,
34449                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34450                 }
34451         },
34452         {
34453         .field_info_mask = {
34454                 .description = "l3.ieh_hop",
34455                 .field_bit_size = 1,
34456                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34457                 },
34458         .field_info_spec = {
34459                 .description = "l3.ieh_hop",
34460                 .field_bit_size = 1,
34461                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34462                 }
34463         },
34464         {
34465         .field_info_mask = {
34466                 .description = "l3.ieh_1frag",
34467                 .field_bit_size = 1,
34468                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34469                 },
34470         .field_info_spec = {
34471                 .description = "l3.ieh_1frag",
34472                 .field_bit_size = 1,
34473                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34474                 }
34475         },
34476         {
34477         .field_info_mask = {
34478                 .description = "l3.df",
34479                 .field_bit_size = 1,
34480                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34481                 },
34482         .field_info_spec = {
34483                 .description = "l3.df",
34484                 .field_bit_size = 1,
34485                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34486                 }
34487         },
34488         {
34489         .field_info_mask = {
34490                 .description = "l3.l3err.ipv4",
34491                 .field_bit_size = 4,
34492                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34493                 },
34494         .field_info_spec = {
34495                 .description = "l3.l3err.ipv4",
34496                 .field_bit_size = 4,
34497                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34498                 }
34499         },
34500         {
34501         .field_info_mask = {
34502                 .description = "l3.l3err.ipv6",
34503                 .field_bit_size = 4,
34504                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34505                 },
34506         .field_info_spec = {
34507                 .description = "l3.l3err.ipv6",
34508                 .field_bit_size = 4,
34509                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34510                 }
34511         },
34512         {
34513         .field_info_mask = {
34514                 .description = "l4.l4type",
34515                 .field_bit_size = 4,
34516                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34517                 },
34518         .field_info_spec = {
34519                 .description = "l4.l4type",
34520                 .field_bit_size = 4,
34521                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34522                 }
34523         },
34524         {
34525         .field_info_mask = {
34526                 .description = "l4.src",
34527                 .field_bit_size = 16,
34528                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34529                 },
34530         .field_info_spec = {
34531                 .description = "l4.src",
34532                 .field_bit_size = 16,
34533                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34534                 }
34535         },
34536         {
34537         .field_info_mask = {
34538                 .description = "l4.dst",
34539                 .field_bit_size = 16,
34540                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34541                 },
34542         .field_info_spec = {
34543                 .description = "l4.dst",
34544                 .field_bit_size = 16,
34545                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34546                 }
34547         },
34548         {
34549         .field_info_mask = {
34550                 .description = "l4.flags",
34551                 .field_bit_size = 9,
34552                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34553                 },
34554         .field_info_spec = {
34555                 .description = "l4.flags",
34556                 .field_bit_size = 9,
34557                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34558                 }
34559         },
34560         {
34561         .field_info_mask = {
34562                 .description = "l4.seq",
34563                 .field_bit_size = 32,
34564                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34565                 },
34566         .field_info_spec = {
34567                 .description = "l4.seq",
34568                 .field_bit_size = 32,
34569                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34570                 }
34571         },
34572         {
34573         .field_info_mask = {
34574                 .description = "l4.ack",
34575                 .field_bit_size = 32,
34576                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34577                 },
34578         .field_info_spec = {
34579                 .description = "l4.ack",
34580                 .field_bit_size = 32,
34581                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34582                 }
34583         },
34584         {
34585         .field_info_mask = {
34586                 .description = "l4.win",
34587                 .field_bit_size = 16,
34588                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34589                 },
34590         .field_info_spec = {
34591                 .description = "l4.win",
34592                 .field_bit_size = 16,
34593                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34594                 }
34595         },
34596         {
34597         .field_info_mask = {
34598                 .description = "l4.pa",
34599                 .field_bit_size = 1,
34600                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34601                 },
34602         .field_info_spec = {
34603                 .description = "l4.pa",
34604                 .field_bit_size = 1,
34605                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34606                 }
34607         },
34608         {
34609         .field_info_mask = {
34610                 .description = "l4.opt",
34611                 .field_bit_size = 1,
34612                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34613                 },
34614         .field_info_spec = {
34615                 .description = "l4.opt",
34616                 .field_bit_size = 1,
34617                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34618                 }
34619         },
34620         {
34621         .field_info_mask = {
34622                 .description = "l4.tcpts",
34623                 .field_bit_size = 1,
34624                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34625                 },
34626         .field_info_spec = {
34627                 .description = "l4.tcpts",
34628                 .field_bit_size = 1,
34629                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34630                 }
34631         },
34632         {
34633         .field_info_mask = {
34634                 .description = "l4.tsval",
34635                 .field_bit_size = 32,
34636                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34637                 },
34638         .field_info_spec = {
34639                 .description = "l4.tsval",
34640                 .field_bit_size = 32,
34641                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34642                 }
34643         },
34644         {
34645         .field_info_mask = {
34646                 .description = "l4.txecr",
34647                 .field_bit_size = 32,
34648                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34649                 },
34650         .field_info_spec = {
34651                 .description = "l4.txecr",
34652                 .field_bit_size = 32,
34653                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34654                 }
34655         },
34656         {
34657         .field_info_mask = {
34658                 .description = "l4.err",
34659                 .field_bit_size = 4,
34660                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34661                 },
34662         .field_info_spec = {
34663                 .description = "l4.err",
34664                 .field_bit_size = 4,
34665                 .field_opc = BNXT_ULP_FIELD_OPC_SKIP
34666                 }
34667         }
34668 };
34669
34670 struct bnxt_ulp_mapper_field_info ulp_thor_class_result_field_list[] = {
34671         /* class_tid: 1, , table: l2_cntxt_tcam.0 */
34672         {
34673         .description = "prof_func_id",
34674         .field_bit_size = 7,
34675         .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
34676         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
34677         .field_opr1 = {
34678         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
34679         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff},
34680         .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
34681         .field_opr2 = {
34682                 (BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID >> 8) & 0xff,
34683                 BNXT_ULP_GLB_RF_IDX_L2_PROF_FUNC_ID & 0xff},
34684         .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
34685         .field_opr3 = {
34686         (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
34687         BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
34688         },
34689         {
34690         .description = "ctxt_meta_prof",
34691         .field_bit_size = 3,
34692         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34693         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34694         },
34695         {
34696         .description = "def_ctxt_data",
34697         .field_bit_size = 16,
34698         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34699         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
34700         .field_opr1 = {
34701         (BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR >> 8) & 0xff,
34702         BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR & 0xff}
34703         },
34704         {
34705         .description = "ctxt_opcode",
34706         .field_bit_size = 3,
34707         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34708         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
34709         .field_opr1 = {
34710         ULP_THOR_SYM_CTXT_OPCODE_NORMAL_FLOW}
34711         },
34712         {
34713         .description = "l2_cntxt_id",
34714         .field_bit_size = 10,
34715         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34716         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
34717         .field_opr1 = {
34718         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
34719         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
34720         },
34721         {
34722         .description = "parif",
34723         .field_bit_size = 4,
34724         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34725         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
34726         .field_opr1 = {
34727         (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
34728         BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
34729         },
34730         /* class_tid: 1, , table: mac_addr_cache.wr */
34731         {
34732         .description = "rid",
34733         .field_bit_size = 32,
34734         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34735         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
34736         .field_opr1 = {
34737         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
34738         BNXT_ULP_RF_IDX_RID & 0xff}
34739         },
34740         {
34741         .description = "l2_cntxt_tcam_index",
34742         .field_bit_size = 10,
34743         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34744         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34745         },
34746         {
34747         .description = "l2_cntxt_id",
34748         .field_bit_size = 10,
34749         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34750         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
34751         .field_opr1 = {
34752         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
34753         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
34754         },
34755         {
34756         .description = "src_property_ptr",
34757         .field_bit_size = 10,
34758         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34759         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34760         },
34761         /* class_tid: 1, , table: fkb_select.l2_l3_l4_v6_em */
34762         {
34763         .description = "l2_cntxt_id.en",
34764         .field_bit_size = 1,
34765         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34766         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
34767         .field_opr1 = {
34768         1}
34769         },
34770         {
34771         .description = "parif.en",
34772         .field_bit_size = 1,
34773         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34774         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34775         },
34776         {
34777         .description = "spif.en",
34778         .field_bit_size = 1,
34779         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34780         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34781         },
34782         {
34783         .description = "svif.en",
34784         .field_bit_size = 1,
34785         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34786         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34787         },
34788         {
34789         .description = "lcos.en",
34790         .field_bit_size = 1,
34791         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34792         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34793         },
34794         {
34795         .description = "meta.en",
34796         .field_bit_size = 1,
34797         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34798         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34799         },
34800         {
34801         .description = "rcyc_cnt.en",
34802         .field_bit_size = 1,
34803         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34804         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34805         },
34806         {
34807         .description = "loopback.en",
34808         .field_bit_size = 1,
34809         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34810         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34811         },
34812         {
34813         .description = "tl2_l2type.en",
34814         .field_bit_size = 1,
34815         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34816         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34817         },
34818         {
34819         .description = "tl2_dmac.en",
34820         .field_bit_size = 1,
34821         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34822         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34823         },
34824         {
34825         .description = "tl2_smac.en",
34826         .field_bit_size = 1,
34827         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34828         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34829         },
34830         {
34831         .description = "tl2_dt.en",
34832         .field_bit_size = 1,
34833         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34834         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34835         },
34836         {
34837         .description = "tl2_sa.en",
34838         .field_bit_size = 1,
34839         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34840         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34841         },
34842         {
34843         .description = "tl2_nvt.en",
34844         .field_bit_size = 1,
34845         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34846         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34847         },
34848         {
34849         .description = "tl2_ovp.en",
34850         .field_bit_size = 1,
34851         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34852         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34853         },
34854         {
34855         .description = "tl2_ovd.en",
34856         .field_bit_size = 1,
34857         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34858         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34859         },
34860         {
34861         .description = "tl2_ovv.en",
34862         .field_bit_size = 1,
34863         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34864         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34865         },
34866         {
34867         .description = "tl2_ovt.en",
34868         .field_bit_size = 1,
34869         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34870         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34871         },
34872         {
34873         .description = "tl2_ivp.en",
34874         .field_bit_size = 1,
34875         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34876         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34877         },
34878         {
34879         .description = "tl2_ivd.en",
34880         .field_bit_size = 1,
34881         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34882         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34883         },
34884         {
34885         .description = "tl2_ivv.en",
34886         .field_bit_size = 1,
34887         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34888         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34889         },
34890         {
34891         .description = "tl2_ivt.en",
34892         .field_bit_size = 1,
34893         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34894         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34895         },
34896         {
34897         .description = "tl2_etype.en",
34898         .field_bit_size = 1,
34899         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34900         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34901         },
34902         {
34903         .description = "tl3_l3type.en",
34904         .field_bit_size = 1,
34905         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34906         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34907         },
34908         {
34909         .description = "tl3_sip.en",
34910         .field_bit_size = 1,
34911         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34912         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34913         },
34914         {
34915         .description = "tl3_sip_selcmp.en",
34916         .field_bit_size = 1,
34917         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34918         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34919         },
34920         {
34921         .description = "tl3_dip.en",
34922         .field_bit_size = 1,
34923         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34924         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34925         },
34926         {
34927         .description = "tl3_dip_selcmp.en",
34928         .field_bit_size = 1,
34929         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34930         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34931         },
34932         {
34933         .description = "tl3_ttl.en",
34934         .field_bit_size = 1,
34935         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34936         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34937         },
34938         {
34939         .description = "tl3_prot.en",
34940         .field_bit_size = 1,
34941         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34942         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34943         },
34944         {
34945         .description = "tl3_fid.en",
34946         .field_bit_size = 1,
34947         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34948         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34949         },
34950         {
34951         .description = "tl3_qos.en",
34952         .field_bit_size = 1,
34953         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34954         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34955         },
34956         {
34957         .description = "tl3_ieh_nonext.en",
34958         .field_bit_size = 1,
34959         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34960         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34961         },
34962         {
34963         .description = "tl3_ieh_esp.en",
34964         .field_bit_size = 1,
34965         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34966         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34967         },
34968         {
34969         .description = "tl3_ieh_auth.en",
34970         .field_bit_size = 1,
34971         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34972         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34973         },
34974         {
34975         .description = "tl3_ieh_dest.en",
34976         .field_bit_size = 1,
34977         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34978         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34979         },
34980         {
34981         .description = "tl3_ieh_frag.en",
34982         .field_bit_size = 1,
34983         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34984         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34985         },
34986         {
34987         .description = "tl3_ieh_rthdr.en",
34988         .field_bit_size = 1,
34989         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34990         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34991         },
34992         {
34993         .description = "tl3_ieh_hop.en",
34994         .field_bit_size = 1,
34995         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
34996         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
34997         },
34998         {
34999         .description = "tl3_ieh_1frag.en",
35000         .field_bit_size = 1,
35001         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35002         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35003         },
35004         {
35005         .description = "tl3_df.en",
35006         .field_bit_size = 1,
35007         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35008         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35009         },
35010         {
35011         .description = "tl3_l3err.en",
35012         .field_bit_size = 1,
35013         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35014         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35015         },
35016         {
35017         .description = "tl4_l4type.en",
35018         .field_bit_size = 1,
35019         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35020         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35021         },
35022         {
35023         .description = "tl4_src.en",
35024         .field_bit_size = 1,
35025         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35026         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35027         },
35028         {
35029         .description = "tl4_dst.en",
35030         .field_bit_size = 1,
35031         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35032         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35033         },
35034         {
35035         .description = "tl4_flags.en",
35036         .field_bit_size = 1,
35037         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35038         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35039         },
35040         {
35041         .description = "tl4_seq.en",
35042         .field_bit_size = 1,
35043         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35044         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35045         },
35046         {
35047         .description = "tl4_pa.en",
35048         .field_bit_size = 1,
35049         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35050         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35051         },
35052         {
35053         .description = "tl4_opt.en",
35054         .field_bit_size = 1,
35055         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35056         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35057         },
35058         {
35059         .description = "tl4_tcpts.en",
35060         .field_bit_size = 1,
35061         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35062         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35063         },
35064         {
35065         .description = "tl4_err.en",
35066         .field_bit_size = 1,
35067         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35068         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35069         },
35070         {
35071         .description = "tuntype.en",
35072         .field_bit_size = 1,
35073         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35074         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35075         },
35076         {
35077         .description = "tflags.en",
35078         .field_bit_size = 1,
35079         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35080         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35081         },
35082         {
35083         .description = "tids.en",
35084         .field_bit_size = 1,
35085         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35086         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35087         },
35088         {
35089         .description = "tid.en",
35090         .field_bit_size = 1,
35091         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35092         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35093         },
35094         {
35095         .description = "tctxts.en",
35096         .field_bit_size = 1,
35097         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35098         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35099         },
35100         {
35101         .description = "tctxt.en",
35102         .field_bit_size = 1,
35103         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35104         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35105         },
35106         {
35107         .description = "tqos.en",
35108         .field_bit_size = 1,
35109         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35110         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35111         },
35112         {
35113         .description = "terr.en",
35114         .field_bit_size = 1,
35115         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35116         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35117         },
35118         {
35119         .description = "l2_l2type.en",
35120         .field_bit_size = 1,
35121         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35122         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35123         },
35124         {
35125         .description = "l2_dmac.en",
35126         .field_bit_size = 1,
35127         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35128         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35129         },
35130         {
35131         .description = "l2_smac.en",
35132         .field_bit_size = 1,
35133         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35134         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
35135         .field_opr1 = {
35136         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
35137         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
35138         },
35139         {
35140         .description = "l2_dt.en",
35141         .field_bit_size = 1,
35142         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35143         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35144         },
35145         {
35146         .description = "l2_sa.en",
35147         .field_bit_size = 1,
35148         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35149         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35150         },
35151         {
35152         .description = "l2_nvt.en",
35153         .field_bit_size = 1,
35154         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35155         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35156         },
35157         {
35158         .description = "l2_ovp.en",
35159         .field_bit_size = 1,
35160         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35161         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35162         },
35163         {
35164         .description = "l2_ovd.en",
35165         .field_bit_size = 1,
35166         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35167         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35168         },
35169         {
35170         .description = "l2_ovv.en",
35171         .field_bit_size = 1,
35172         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35173         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35174         },
35175         {
35176         .description = "l2_ovt.en",
35177         .field_bit_size = 1,
35178         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35179         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35180         },
35181         {
35182         .description = "l2_ivp.en",
35183         .field_bit_size = 1,
35184         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35185         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35186         },
35187         {
35188         .description = "l2_ivd.en",
35189         .field_bit_size = 1,
35190         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35191         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35192         },
35193         {
35194         .description = "l2_ivv.en",
35195         .field_bit_size = 1,
35196         .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
35197         .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
35198         .field_opr1 = {
35199         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
35200         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
35201         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
35202         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
35203         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
35204         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
35205         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
35206         (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
35207         .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
35208         .field_opr2 = {
35209                 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
35210                 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
35211         .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
35212         },
35213         {
35214         .description = "l2_ivt.en",
35215         .field_bit_size = 1,
35216         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35217         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35218         },
35219         {
35220         .description = "l2_etype.en",
35221         .field_bit_size = 1,
35222         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35223         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35224         },
35225         {
35226         .description = "l3_l3type.en",
35227         .field_bit_size = 1,
35228         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35229         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35230         },
35231         {
35232         .description = "l3_sip.en",
35233         .field_bit_size = 1,
35234         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35235         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
35236         .field_opr1 = {
35237         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
35238         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
35239         },
35240         {
35241         .description = "l3_sip_selcmp.en",
35242         .field_bit_size = 1,
35243         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35244         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35245         },
35246         {
35247         .description = "l3_dip.en",
35248         .field_bit_size = 1,
35249         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35250         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
35251         .field_opr1 = {
35252         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
35253         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
35254         },
35255         {
35256         .description = "l3_dip_selcmp.en",
35257         .field_bit_size = 1,
35258         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35259         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35260         },
35261         {
35262         .description = "l3_ttl.en",
35263         .field_bit_size = 1,
35264         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35265         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35266         },
35267         {
35268         .description = "l3_prot.en",
35269         .field_bit_size = 1,
35270         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35271         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
35272         .field_opr1 = {
35273         (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
35274         BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}
35275         },
35276         {
35277         .description = "l3_fid.en",
35278         .field_bit_size = 1,
35279         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35280         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35281         },
35282         {
35283         .description = "l3_qos.en",
35284         .field_bit_size = 1,
35285         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35286         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35287         },
35288         {
35289         .description = "l3_ieh_nonext.en",
35290         .field_bit_size = 1,
35291         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35292         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35293         },
35294         {
35295         .description = "l3_ieh_esp.en",
35296         .field_bit_size = 1,
35297         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35298         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35299         },
35300         {
35301         .description = "l3_ieh_auth.en",
35302         .field_bit_size = 1,
35303         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35304         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35305         },
35306         {
35307         .description = "l3_ieh_dest.en",
35308         .field_bit_size = 1,
35309         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35310         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35311         },
35312         {
35313         .description = "l3_ieh_frag.en",
35314         .field_bit_size = 1,
35315         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35316         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35317         },
35318         {
35319         .description = "l3_ieh_rthdr.en",
35320         .field_bit_size = 1,
35321         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35322         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35323         },
35324         {
35325         .description = "l3_ieh_hop.en",
35326         .field_bit_size = 1,
35327         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35328         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35329         },
35330         {
35331         .description = "l3_ieh_1frag.en",
35332         .field_bit_size = 1,
35333         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35334         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35335         },
35336         {
35337         .description = "l3_df.en",
35338         .field_bit_size = 1,
35339         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35340         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35341         },
35342         {
35343         .description = "l3_l3err.en",
35344         .field_bit_size = 1,
35345         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35346         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35347         },
35348         {
35349         .description = "l4_l4type.en",
35350         .field_bit_size = 1,
35351         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35352         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35353         },
35354         {
35355         .description = "l4_src.en",
35356         .field_bit_size = 1,
35357         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35358         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
35359         .field_opr1 = {
35360         (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
35361         BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}
35362         },
35363         {
35364         .description = "l4_dst.en",
35365         .field_bit_size = 1,
35366         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35367         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
35368         .field_opr1 = {
35369         (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
35370         BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}
35371         },
35372         {
35373         .description = "l4_flags.en",
35374         .field_bit_size = 1,
35375         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35376         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35377         },
35378         {
35379         .description = "l4_seq.en",
35380         .field_bit_size = 1,
35381         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35382         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35383         },
35384         {
35385         .description = "l4_ack.en",
35386         .field_bit_size = 1,
35387         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35388         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35389         },
35390         {
35391         .description = "l4_win.en",
35392         .field_bit_size = 1,
35393         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35394         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35395         },
35396         {
35397         .description = "l4_pa.en",
35398         .field_bit_size = 1,
35399         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35400         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35401         },
35402         {
35403         .description = "l4_opt.en",
35404         .field_bit_size = 1,
35405         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35406         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35407         },
35408         {
35409         .description = "l4_tcpts.en",
35410         .field_bit_size = 1,
35411         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35412         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35413         },
35414         {
35415         .description = "l4_tsval.en",
35416         .field_bit_size = 1,
35417         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35418         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35419         },
35420         {
35421         .description = "l4_txecr.en",
35422         .field_bit_size = 1,
35423         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35424         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35425         },
35426         {
35427         .description = "l4_err.en",
35428         .field_bit_size = 1,
35429         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35430         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35431         },
35432         /* class_tid: 1, , table: profile_tcam.l2_l3_l4_v6_em */
35433         {
35434         .description = "wc_key_id",
35435         .field_bit_size = 6,
35436         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35437         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35438         },
35439         {
35440         .description = "wc_profile_id",
35441         .field_bit_size = 8,
35442         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35443         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35444         },
35445         {
35446         .description = "wc_search_en",
35447         .field_bit_size = 1,
35448         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35449         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35450         },
35451         {
35452         .description = "em_key_type",
35453         .field_bit_size = 2,
35454         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35455         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35456         },
35457         {
35458         .description = "em_key_id",
35459         .field_bit_size = 6,
35460         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35461         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35462         .field_opr1 = {
35463         (BNXT_ULP_RF_IDX_EM_KEY_ID_0 >> 8) & 0xff,
35464         BNXT_ULP_RF_IDX_EM_KEY_ID_0 & 0xff}
35465         },
35466         {
35467         .description = "em_profile_id",
35468         .field_bit_size = 8,
35469         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35470         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35471         .field_opr1 = {
35472         (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
35473         BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
35474         },
35475         {
35476         .description = "em_search_en",
35477         .field_bit_size = 1,
35478         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35479         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
35480         .field_opr1 = {
35481         1}
35482         },
35483         {
35484         .description = "pl_byp_lkup_en",
35485         .field_bit_size = 1,
35486         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35487         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35488         },
35489         /* class_tid: 1, , table: profile_tcam_cache.l2_l3_l4_v6_wr */
35490         {
35491         .description = "rid",
35492         .field_bit_size = 32,
35493         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35494         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35495         .field_opr1 = {
35496         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
35497         BNXT_ULP_RF_IDX_RID & 0xff}
35498         },
35499         {
35500         .description = "profile_tcam_index",
35501         .field_bit_size = 10,
35502         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35503         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35504         .field_opr1 = {
35505         (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
35506         BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
35507         },
35508         {
35509         .description = "em_profile_id",
35510         .field_bit_size = 8,
35511         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35512         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35513         .field_opr1 = {
35514         (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
35515         BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
35516         },
35517         {
35518         .description = "em_key_id",
35519         .field_bit_size = 8,
35520         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35521         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35522         .field_opr1 = {
35523         (BNXT_ULP_RF_IDX_EM_KEY_ID_0 >> 8) & 0xff,
35524         BNXT_ULP_RF_IDX_EM_KEY_ID_0 & 0xff}
35525         },
35526         {
35527         .description = "wc_profile_id",
35528         .field_bit_size = 8,
35529         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35530         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35531         },
35532         {
35533         .description = "wc_key_id",
35534         .field_bit_size = 8,
35535         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35536         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35537         },
35538         {
35539         .description = "flow_sig_id",
35540         .field_bit_size = 64,
35541         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35542         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
35543         .field_opr1 = {
35544         (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
35545         BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
35546         },
35547         /* class_tid: 1, , table: em.l2_l3_l4_v6.0 */
35548         {
35549         .description = "valid",
35550         .field_bit_size = 1,
35551         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35552         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
35553         .field_opr1 = {
35554         1}
35555         },
35556         {
35557         .description = "strength",
35558         .field_bit_size = 2,
35559         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35560         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
35561         .field_opr1 = {
35562         3}
35563         },
35564         {
35565         .description = "data",
35566         .field_bit_size = 16,
35567         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35568         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
35569         .field_opr1 = {
35570         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
35571         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
35572         },
35573         {
35574         .description = "opcode",
35575         .field_bit_size = 3,
35576         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35577         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35578         },
35579         {
35580         .description = "meta_prof",
35581         .field_bit_size = 3,
35582         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35583         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35584         },
35585         {
35586         .description = "ctxt_data",
35587         .field_bit_size = 14,
35588         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35589         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35590         },
35591         /* class_tid: 1, , table: fkb_select.l3_l4_wm */
35592         {
35593         .description = "l2_cntxt_id.en",
35594         .field_bit_size = 1,
35595         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35596         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
35597         .field_opr1 = {
35598         1}
35599         },
35600         {
35601         .description = "parif.en",
35602         .field_bit_size = 1,
35603         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35604         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35605         },
35606         {
35607         .description = "spif.en",
35608         .field_bit_size = 1,
35609         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35610         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35611         },
35612         {
35613         .description = "svif.en",
35614         .field_bit_size = 1,
35615         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35616         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35617         },
35618         {
35619         .description = "lcos.en",
35620         .field_bit_size = 1,
35621         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35622         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35623         },
35624         {
35625         .description = "meta.en",
35626         .field_bit_size = 1,
35627         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35628         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35629         },
35630         {
35631         .description = "rcyc_cnt.en",
35632         .field_bit_size = 1,
35633         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35634         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35635         },
35636         {
35637         .description = "loopback.en",
35638         .field_bit_size = 1,
35639         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35640         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35641         },
35642         {
35643         .description = "tl2_l2type.en",
35644         .field_bit_size = 1,
35645         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35646         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35647         },
35648         {
35649         .description = "tl2_dmac.en",
35650         .field_bit_size = 1,
35651         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35652         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35653         },
35654         {
35655         .description = "tl2_smac.en",
35656         .field_bit_size = 1,
35657         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35658         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35659         },
35660         {
35661         .description = "tl2_dt.en",
35662         .field_bit_size = 1,
35663         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35664         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35665         },
35666         {
35667         .description = "tl2_sa.en",
35668         .field_bit_size = 1,
35669         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35670         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35671         },
35672         {
35673         .description = "tl2_nvt.en",
35674         .field_bit_size = 1,
35675         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35676         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35677         },
35678         {
35679         .description = "tl2_ovp.en",
35680         .field_bit_size = 1,
35681         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35682         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35683         },
35684         {
35685         .description = "tl2_ovd.en",
35686         .field_bit_size = 1,
35687         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35688         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35689         },
35690         {
35691         .description = "tl2_ovv.en",
35692         .field_bit_size = 1,
35693         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35694         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35695         },
35696         {
35697         .description = "tl2_ovt.en",
35698         .field_bit_size = 1,
35699         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35700         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35701         },
35702         {
35703         .description = "tl2_ivp.en",
35704         .field_bit_size = 1,
35705         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35706         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35707         },
35708         {
35709         .description = "tl2_ivd.en",
35710         .field_bit_size = 1,
35711         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35712         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35713         },
35714         {
35715         .description = "tl2_ivv.en",
35716         .field_bit_size = 1,
35717         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35718         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35719         },
35720         {
35721         .description = "tl2_ivt.en",
35722         .field_bit_size = 1,
35723         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35724         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35725         },
35726         {
35727         .description = "tl2_etype.en",
35728         .field_bit_size = 1,
35729         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35730         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35731         },
35732         {
35733         .description = "tl3_l3type.en",
35734         .field_bit_size = 1,
35735         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35736         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35737         },
35738         {
35739         .description = "tl3_sip.en",
35740         .field_bit_size = 1,
35741         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35742         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35743         },
35744         {
35745         .description = "tl3_sip_selcmp.en",
35746         .field_bit_size = 1,
35747         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35748         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35749         },
35750         {
35751         .description = "tl3_dip.en",
35752         .field_bit_size = 1,
35753         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35754         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35755         },
35756         {
35757         .description = "tl3_dip_selcmp.en",
35758         .field_bit_size = 1,
35759         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35760         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35761         },
35762         {
35763         .description = "tl3_ttl.en",
35764         .field_bit_size = 1,
35765         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35766         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35767         },
35768         {
35769         .description = "tl3_prot.en",
35770         .field_bit_size = 1,
35771         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35772         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35773         },
35774         {
35775         .description = "tl3_fid.en",
35776         .field_bit_size = 1,
35777         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35778         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35779         },
35780         {
35781         .description = "tl3_qos.en",
35782         .field_bit_size = 1,
35783         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35784         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35785         },
35786         {
35787         .description = "tl3_ieh_nonext.en",
35788         .field_bit_size = 1,
35789         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35790         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35791         },
35792         {
35793         .description = "tl3_ieh_esp.en",
35794         .field_bit_size = 1,
35795         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35796         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35797         },
35798         {
35799         .description = "tl3_ieh_auth.en",
35800         .field_bit_size = 1,
35801         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35802         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35803         },
35804         {
35805         .description = "tl3_ieh_dest.en",
35806         .field_bit_size = 1,
35807         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35808         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35809         },
35810         {
35811         .description = "tl3_ieh_frag.en",
35812         .field_bit_size = 1,
35813         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35814         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35815         },
35816         {
35817         .description = "tl3_ieh_rthdr.en",
35818         .field_bit_size = 1,
35819         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35820         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35821         },
35822         {
35823         .description = "tl3_ieh_hop.en",
35824         .field_bit_size = 1,
35825         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35826         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35827         },
35828         {
35829         .description = "tl3_ieh_1frag.en",
35830         .field_bit_size = 1,
35831         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35832         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35833         },
35834         {
35835         .description = "tl3_df.en",
35836         .field_bit_size = 1,
35837         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35838         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35839         },
35840         {
35841         .description = "tl3_l3err.en",
35842         .field_bit_size = 1,
35843         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35844         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35845         },
35846         {
35847         .description = "tl4_l4type.en",
35848         .field_bit_size = 1,
35849         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35850         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35851         },
35852         {
35853         .description = "tl4_src.en",
35854         .field_bit_size = 1,
35855         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35856         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35857         },
35858         {
35859         .description = "tl4_dst.en",
35860         .field_bit_size = 1,
35861         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35862         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35863         },
35864         {
35865         .description = "tl4_flags.en",
35866         .field_bit_size = 1,
35867         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35868         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35869         },
35870         {
35871         .description = "tl4_seq.en",
35872         .field_bit_size = 1,
35873         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35874         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35875         },
35876         {
35877         .description = "tl4_pa.en",
35878         .field_bit_size = 1,
35879         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35880         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35881         },
35882         {
35883         .description = "tl4_opt.en",
35884         .field_bit_size = 1,
35885         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35886         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35887         },
35888         {
35889         .description = "tl4_tcpts.en",
35890         .field_bit_size = 1,
35891         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35892         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35893         },
35894         {
35895         .description = "tl4_err.en",
35896         .field_bit_size = 1,
35897         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35898         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35899         },
35900         {
35901         .description = "tuntype.en",
35902         .field_bit_size = 1,
35903         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35904         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35905         },
35906         {
35907         .description = "tflags.en",
35908         .field_bit_size = 1,
35909         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35910         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35911         },
35912         {
35913         .description = "tids.en",
35914         .field_bit_size = 1,
35915         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35916         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35917         },
35918         {
35919         .description = "tid.en",
35920         .field_bit_size = 1,
35921         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35922         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35923         },
35924         {
35925         .description = "tctxts.en",
35926         .field_bit_size = 1,
35927         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35928         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35929         },
35930         {
35931         .description = "tctxt.en",
35932         .field_bit_size = 1,
35933         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35934         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35935         },
35936         {
35937         .description = "tqos.en",
35938         .field_bit_size = 1,
35939         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35940         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35941         },
35942         {
35943         .description = "terr.en",
35944         .field_bit_size = 1,
35945         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35946         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35947         },
35948         {
35949         .description = "l2_l2type.en",
35950         .field_bit_size = 1,
35951         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35952         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35953         },
35954         {
35955         .description = "l2_dmac.en",
35956         .field_bit_size = 1,
35957         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35958         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35959         },
35960         {
35961         .description = "l2_smac.en",
35962         .field_bit_size = 1,
35963         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35964         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
35965         .field_opr1 = {
35966         1}
35967         },
35968         {
35969         .description = "l2_dt.en",
35970         .field_bit_size = 1,
35971         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35972         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35973         },
35974         {
35975         .description = "l2_sa.en",
35976         .field_bit_size = 1,
35977         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35978         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35979         },
35980         {
35981         .description = "l2_nvt.en",
35982         .field_bit_size = 1,
35983         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35984         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35985         },
35986         {
35987         .description = "l2_ovp.en",
35988         .field_bit_size = 1,
35989         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35990         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35991         },
35992         {
35993         .description = "l2_ovd.en",
35994         .field_bit_size = 1,
35995         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
35996         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
35997         },
35998         {
35999         .description = "l2_ovv.en",
36000         .field_bit_size = 1,
36001         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36002         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36003         },
36004         {
36005         .description = "l2_ovt.en",
36006         .field_bit_size = 1,
36007         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36008         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36009         },
36010         {
36011         .description = "l2_ivp.en",
36012         .field_bit_size = 1,
36013         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36014         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36015         },
36016         {
36017         .description = "l2_ivd.en",
36018         .field_bit_size = 1,
36019         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36020         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36021         },
36022         {
36023         .description = "l2_ivv.en",
36024         .field_bit_size = 1,
36025         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36026         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36027         .field_opr1 = {
36028         1}
36029         },
36030         {
36031         .description = "l2_ivt.en",
36032         .field_bit_size = 1,
36033         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36034         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36035         },
36036         {
36037         .description = "l2_etype.en",
36038         .field_bit_size = 1,
36039         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36040         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36041         },
36042         {
36043         .description = "l3_l3type.en",
36044         .field_bit_size = 1,
36045         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36046         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36047         },
36048         {
36049         .description = "l3_sip.en",
36050         .field_bit_size = 1,
36051         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36052         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36053         .field_opr1 = {
36054         1}
36055         },
36056         {
36057         .description = "l3_sip_selcmp.en",
36058         .field_bit_size = 1,
36059         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36060         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36061         },
36062         {
36063         .description = "l3_dip.en",
36064         .field_bit_size = 1,
36065         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36066         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36067         .field_opr1 = {
36068         1}
36069         },
36070         {
36071         .description = "l3_dip_selcmp.en",
36072         .field_bit_size = 1,
36073         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36074         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36075         },
36076         {
36077         .description = "l3_ttl.en",
36078         .field_bit_size = 1,
36079         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36080         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36081         },
36082         {
36083         .description = "l3_prot.en",
36084         .field_bit_size = 1,
36085         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36086         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36087         .field_opr1 = {
36088         1}
36089         },
36090         {
36091         .description = "l3_fid.en",
36092         .field_bit_size = 1,
36093         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36094         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36095         },
36096         {
36097         .description = "l3_qos.en",
36098         .field_bit_size = 1,
36099         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36100         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36101         },
36102         {
36103         .description = "l3_ieh_nonext.en",
36104         .field_bit_size = 1,
36105         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36106         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36107         },
36108         {
36109         .description = "l3_ieh_esp.en",
36110         .field_bit_size = 1,
36111         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36112         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36113         },
36114         {
36115         .description = "l3_ieh_auth.en",
36116         .field_bit_size = 1,
36117         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36118         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36119         },
36120         {
36121         .description = "l3_ieh_dest.en",
36122         .field_bit_size = 1,
36123         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36124         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36125         },
36126         {
36127         .description = "l3_ieh_frag.en",
36128         .field_bit_size = 1,
36129         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36130         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36131         },
36132         {
36133         .description = "l3_ieh_rthdr.en",
36134         .field_bit_size = 1,
36135         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36136         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36137         },
36138         {
36139         .description = "l3_ieh_hop.en",
36140         .field_bit_size = 1,
36141         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36142         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36143         },
36144         {
36145         .description = "l3_ieh_1frag.en",
36146         .field_bit_size = 1,
36147         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36148         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36149         },
36150         {
36151         .description = "l3_df.en",
36152         .field_bit_size = 1,
36153         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36154         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36155         },
36156         {
36157         .description = "l3_l3err.en",
36158         .field_bit_size = 1,
36159         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36160         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36161         },
36162         {
36163         .description = "l4_l4type.en",
36164         .field_bit_size = 1,
36165         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36166         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36167         },
36168         {
36169         .description = "l4_src.en",
36170         .field_bit_size = 1,
36171         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36172         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36173         .field_opr1 = {
36174         1}
36175         },
36176         {
36177         .description = "l4_dst.en",
36178         .field_bit_size = 1,
36179         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36180         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36181         .field_opr1 = {
36182         1}
36183         },
36184         {
36185         .description = "l4_flags.en",
36186         .field_bit_size = 1,
36187         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36188         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36189         },
36190         {
36191         .description = "l4_seq.en",
36192         .field_bit_size = 1,
36193         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36194         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36195         },
36196         {
36197         .description = "l4_ack.en",
36198         .field_bit_size = 1,
36199         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36200         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36201         },
36202         {
36203         .description = "l4_win.en",
36204         .field_bit_size = 1,
36205         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36206         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36207         },
36208         {
36209         .description = "l4_pa.en",
36210         .field_bit_size = 1,
36211         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36212         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36213         },
36214         {
36215         .description = "l4_opt.en",
36216         .field_bit_size = 1,
36217         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36218         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36219         },
36220         {
36221         .description = "l4_tcpts.en",
36222         .field_bit_size = 1,
36223         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36224         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36225         },
36226         {
36227         .description = "l4_tsval.en",
36228         .field_bit_size = 1,
36229         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36230         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36231         },
36232         {
36233         .description = "l4_txecr.en",
36234         .field_bit_size = 1,
36235         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36236         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36237         },
36238         {
36239         .description = "l4_err.en",
36240         .field_bit_size = 1,
36241         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36242         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36243         },
36244         /* class_tid: 1, , table: fkb_select.l3_l4_wm_vxlan */
36245         {
36246         .description = "l2_cntxt_id.en",
36247         .field_bit_size = 1,
36248         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36249         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36250         .field_opr1 = {
36251         1}
36252         },
36253         {
36254         .description = "parif.en",
36255         .field_bit_size = 1,
36256         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36257         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36258         },
36259         {
36260         .description = "spif.en",
36261         .field_bit_size = 1,
36262         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36263         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36264         },
36265         {
36266         .description = "svif.en",
36267         .field_bit_size = 1,
36268         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36269         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36270         },
36271         {
36272         .description = "lcos.en",
36273         .field_bit_size = 1,
36274         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36275         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36276         },
36277         {
36278         .description = "meta.en",
36279         .field_bit_size = 1,
36280         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36281         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36282         },
36283         {
36284         .description = "rcyc_cnt.en",
36285         .field_bit_size = 1,
36286         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36287         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36288         },
36289         {
36290         .description = "loopback.en",
36291         .field_bit_size = 1,
36292         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36293         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36294         },
36295         {
36296         .description = "tl2_l2type.en",
36297         .field_bit_size = 1,
36298         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36299         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36300         },
36301         {
36302         .description = "tl2_dmac.en",
36303         .field_bit_size = 1,
36304         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36305         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36306         },
36307         {
36308         .description = "tl2_smac.en",
36309         .field_bit_size = 1,
36310         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36311         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36312         },
36313         {
36314         .description = "tl2_dt.en",
36315         .field_bit_size = 1,
36316         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36317         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36318         },
36319         {
36320         .description = "tl2_sa.en",
36321         .field_bit_size = 1,
36322         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36323         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36324         },
36325         {
36326         .description = "tl2_nvt.en",
36327         .field_bit_size = 1,
36328         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36329         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36330         },
36331         {
36332         .description = "tl2_ovp.en",
36333         .field_bit_size = 1,
36334         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36335         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36336         },
36337         {
36338         .description = "tl2_ovd.en",
36339         .field_bit_size = 1,
36340         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36341         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36342         },
36343         {
36344         .description = "tl2_ovv.en",
36345         .field_bit_size = 1,
36346         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36347         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36348         },
36349         {
36350         .description = "tl2_ovt.en",
36351         .field_bit_size = 1,
36352         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36353         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36354         },
36355         {
36356         .description = "tl2_ivp.en",
36357         .field_bit_size = 1,
36358         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36359         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36360         },
36361         {
36362         .description = "tl2_ivd.en",
36363         .field_bit_size = 1,
36364         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36365         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36366         },
36367         {
36368         .description = "tl2_ivv.en",
36369         .field_bit_size = 1,
36370         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36371         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36372         .field_opr1 = {
36373         1}
36374         },
36375         {
36376         .description = "tl2_ivt.en",
36377         .field_bit_size = 1,
36378         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36379         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36380         },
36381         {
36382         .description = "tl2_etype.en",
36383         .field_bit_size = 1,
36384         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36385         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36386         },
36387         {
36388         .description = "tl3_l3type.en",
36389         .field_bit_size = 1,
36390         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36391         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36392         },
36393         {
36394         .description = "tl3_sip.en",
36395         .field_bit_size = 1,
36396         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36397         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36398         .field_opr1 = {
36399         1}
36400         },
36401         {
36402         .description = "tl3_sip_selcmp.en",
36403         .field_bit_size = 1,
36404         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36405         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36406         },
36407         {
36408         .description = "tl3_dip.en",
36409         .field_bit_size = 1,
36410         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36411         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36412         .field_opr1 = {
36413         1}
36414         },
36415         {
36416         .description = "tl3_dip_selcmp.en",
36417         .field_bit_size = 1,
36418         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36419         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36420         },
36421         {
36422         .description = "tl3_ttl.en",
36423         .field_bit_size = 1,
36424         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36425         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36426         },
36427         {
36428         .description = "tl3_prot.en",
36429         .field_bit_size = 1,
36430         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36431         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36432         .field_opr1 = {
36433         1}
36434         },
36435         {
36436         .description = "tl3_fid.en",
36437         .field_bit_size = 1,
36438         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36439         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36440         },
36441         {
36442         .description = "tl3_qos.en",
36443         .field_bit_size = 1,
36444         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36445         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36446         },
36447         {
36448         .description = "tl3_ieh_nonext.en",
36449         .field_bit_size = 1,
36450         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36451         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36452         },
36453         {
36454         .description = "tl3_ieh_esp.en",
36455         .field_bit_size = 1,
36456         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36457         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36458         },
36459         {
36460         .description = "tl3_ieh_auth.en",
36461         .field_bit_size = 1,
36462         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36463         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36464         },
36465         {
36466         .description = "tl3_ieh_dest.en",
36467         .field_bit_size = 1,
36468         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36469         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36470         },
36471         {
36472         .description = "tl3_ieh_frag.en",
36473         .field_bit_size = 1,
36474         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36475         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36476         },
36477         {
36478         .description = "tl3_ieh_rthdr.en",
36479         .field_bit_size = 1,
36480         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36481         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36482         },
36483         {
36484         .description = "tl3_ieh_hop.en",
36485         .field_bit_size = 1,
36486         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36487         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36488         },
36489         {
36490         .description = "tl3_ieh_1frag.en",
36491         .field_bit_size = 1,
36492         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36493         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36494         },
36495         {
36496         .description = "tl3_df.en",
36497         .field_bit_size = 1,
36498         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36499         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36500         },
36501         {
36502         .description = "tl3_l3err.en",
36503         .field_bit_size = 1,
36504         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36505         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36506         },
36507         {
36508         .description = "tl4_l4type.en",
36509         .field_bit_size = 1,
36510         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36511         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36512         },
36513         {
36514         .description = "tl4_src.en",
36515         .field_bit_size = 1,
36516         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36517         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36518         .field_opr1 = {
36519         1}
36520         },
36521         {
36522         .description = "tl4_dst.en",
36523         .field_bit_size = 1,
36524         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36525         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36526         .field_opr1 = {
36527         1}
36528         },
36529         {
36530         .description = "tl4_flags.en",
36531         .field_bit_size = 1,
36532         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36533         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36534         },
36535         {
36536         .description = "tl4_seq.en",
36537         .field_bit_size = 1,
36538         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36539         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36540         },
36541         {
36542         .description = "tl4_pa.en",
36543         .field_bit_size = 1,
36544         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36545         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36546         },
36547         {
36548         .description = "tl4_opt.en",
36549         .field_bit_size = 1,
36550         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36551         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36552         },
36553         {
36554         .description = "tl4_tcpts.en",
36555         .field_bit_size = 1,
36556         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36557         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36558         },
36559         {
36560         .description = "tl4_err.en",
36561         .field_bit_size = 1,
36562         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36563         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36564         },
36565         {
36566         .description = "tuntype.en",
36567         .field_bit_size = 1,
36568         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36569         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36570         },
36571         {
36572         .description = "tflags.en",
36573         .field_bit_size = 1,
36574         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36575         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36576         },
36577         {
36578         .description = "tids.en",
36579         .field_bit_size = 1,
36580         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36581         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36582         },
36583         {
36584         .description = "tid.en",
36585         .field_bit_size = 1,
36586         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36587         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36588         },
36589         {
36590         .description = "tctxts.en",
36591         .field_bit_size = 1,
36592         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36593         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36594         },
36595         {
36596         .description = "tctxt.en",
36597         .field_bit_size = 1,
36598         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36599         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36600         },
36601         {
36602         .description = "tqos.en",
36603         .field_bit_size = 1,
36604         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36605         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36606         },
36607         {
36608         .description = "terr.en",
36609         .field_bit_size = 1,
36610         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36611         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36612         },
36613         {
36614         .description = "l2_l2type.en",
36615         .field_bit_size = 1,
36616         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36617         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36618         },
36619         {
36620         .description = "l2_dmac.en",
36621         .field_bit_size = 1,
36622         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36623         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36624         },
36625         {
36626         .description = "l2_smac.en",
36627         .field_bit_size = 1,
36628         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36629         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36630         .field_opr1 = {
36631         1}
36632         },
36633         {
36634         .description = "l2_dt.en",
36635         .field_bit_size = 1,
36636         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36637         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36638         },
36639         {
36640         .description = "l2_sa.en",
36641         .field_bit_size = 1,
36642         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36643         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36644         },
36645         {
36646         .description = "l2_nvt.en",
36647         .field_bit_size = 1,
36648         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36649         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36650         },
36651         {
36652         .description = "l2_ovp.en",
36653         .field_bit_size = 1,
36654         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36655         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36656         },
36657         {
36658         .description = "l2_ovd.en",
36659         .field_bit_size = 1,
36660         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36661         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36662         },
36663         {
36664         .description = "l2_ovv.en",
36665         .field_bit_size = 1,
36666         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36667         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36668         },
36669         {
36670         .description = "l2_ovt.en",
36671         .field_bit_size = 1,
36672         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36673         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36674         },
36675         {
36676         .description = "l2_ivp.en",
36677         .field_bit_size = 1,
36678         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36679         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36680         },
36681         {
36682         .description = "l2_ivd.en",
36683         .field_bit_size = 1,
36684         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36685         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36686         },
36687         {
36688         .description = "l2_ivv.en",
36689         .field_bit_size = 1,
36690         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36691         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36692         },
36693         {
36694         .description = "l2_ivt.en",
36695         .field_bit_size = 1,
36696         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36697         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36698         },
36699         {
36700         .description = "l2_etype.en",
36701         .field_bit_size = 1,
36702         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36703         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36704         },
36705         {
36706         .description = "l3_l3type.en",
36707         .field_bit_size = 1,
36708         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36709         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36710         },
36711         {
36712         .description = "l3_sip.en",
36713         .field_bit_size = 1,
36714         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36715         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36716         },
36717         {
36718         .description = "l3_sip_selcmp.en",
36719         .field_bit_size = 1,
36720         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36721         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36722         },
36723         {
36724         .description = "l3_dip.en",
36725         .field_bit_size = 1,
36726         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36727         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36728         },
36729         {
36730         .description = "l3_dip_selcmp.en",
36731         .field_bit_size = 1,
36732         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36733         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36734         },
36735         {
36736         .description = "l3_ttl.en",
36737         .field_bit_size = 1,
36738         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36739         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36740         },
36741         {
36742         .description = "l3_prot.en",
36743         .field_bit_size = 1,
36744         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36745         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36746         },
36747         {
36748         .description = "l3_fid.en",
36749         .field_bit_size = 1,
36750         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36751         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36752         },
36753         {
36754         .description = "l3_qos.en",
36755         .field_bit_size = 1,
36756         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36757         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36758         },
36759         {
36760         .description = "l3_ieh_nonext.en",
36761         .field_bit_size = 1,
36762         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36763         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36764         },
36765         {
36766         .description = "l3_ieh_esp.en",
36767         .field_bit_size = 1,
36768         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36769         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36770         },
36771         {
36772         .description = "l3_ieh_auth.en",
36773         .field_bit_size = 1,
36774         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36775         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36776         },
36777         {
36778         .description = "l3_ieh_dest.en",
36779         .field_bit_size = 1,
36780         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36781         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36782         },
36783         {
36784         .description = "l3_ieh_frag.en",
36785         .field_bit_size = 1,
36786         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36787         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36788         },
36789         {
36790         .description = "l3_ieh_rthdr.en",
36791         .field_bit_size = 1,
36792         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36793         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36794         },
36795         {
36796         .description = "l3_ieh_hop.en",
36797         .field_bit_size = 1,
36798         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36799         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36800         },
36801         {
36802         .description = "l3_ieh_1frag.en",
36803         .field_bit_size = 1,
36804         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36805         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36806         },
36807         {
36808         .description = "l3_df.en",
36809         .field_bit_size = 1,
36810         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36811         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36812         },
36813         {
36814         .description = "l3_l3err.en",
36815         .field_bit_size = 1,
36816         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36817         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36818         },
36819         {
36820         .description = "l4_l4type.en",
36821         .field_bit_size = 1,
36822         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36823         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36824         },
36825         {
36826         .description = "l4_src.en",
36827         .field_bit_size = 1,
36828         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36829         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36830         },
36831         {
36832         .description = "l4_dst.en",
36833         .field_bit_size = 1,
36834         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36835         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36836         },
36837         {
36838         .description = "l4_flags.en",
36839         .field_bit_size = 1,
36840         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36841         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36842         },
36843         {
36844         .description = "l4_seq.en",
36845         .field_bit_size = 1,
36846         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36847         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36848         },
36849         {
36850         .description = "l4_ack.en",
36851         .field_bit_size = 1,
36852         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36853         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36854         },
36855         {
36856         .description = "l4_win.en",
36857         .field_bit_size = 1,
36858         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36859         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36860         },
36861         {
36862         .description = "l4_pa.en",
36863         .field_bit_size = 1,
36864         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36865         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36866         },
36867         {
36868         .description = "l4_opt.en",
36869         .field_bit_size = 1,
36870         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36871         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36872         },
36873         {
36874         .description = "l4_tcpts.en",
36875         .field_bit_size = 1,
36876         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36877         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36878         },
36879         {
36880         .description = "l4_tsval.en",
36881         .field_bit_size = 1,
36882         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36883         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36884         },
36885         {
36886         .description = "l4_txecr.en",
36887         .field_bit_size = 1,
36888         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36889         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36890         },
36891         {
36892         .description = "l4_err.en",
36893         .field_bit_size = 1,
36894         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36895         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36896         },
36897         /* class_tid: 1, , table: profile_tcam.l3_l4.ip */
36898         {
36899         .description = "wc_key_id",
36900         .field_bit_size = 6,
36901         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36902         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
36903         .field_opr1 = {
36904         (BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0 >> 8) & 0xff,
36905         BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_0 & 0xff}
36906         },
36907         {
36908         .description = "wc_profile_id",
36909         .field_bit_size = 8,
36910         .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
36911         .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
36912         .field_opr1 = {
36913         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
36914         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
36915         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
36916         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
36917         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
36918         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
36919         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
36920         (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
36921         .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
36922         .field_opr2 = {
36923                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
36924                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff},
36925         .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
36926         .field_opr3 = {
36927         (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 >> 8) & 0xff,
36928         BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_0 & 0xff}
36929         },
36930         {
36931         .description = "wc_search_en",
36932         .field_bit_size = 1,
36933         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36934         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
36935         .field_opr1 = {
36936         1}
36937         },
36938         {
36939         .description = "em_key_type",
36940         .field_bit_size = 2,
36941         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36942         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36943         },
36944         {
36945         .description = "em_key_id",
36946         .field_bit_size = 6,
36947         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36948         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36949         },
36950         {
36951         .description = "em_profile_id",
36952         .field_bit_size = 8,
36953         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36954         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36955         },
36956         {
36957         .description = "em_search_en",
36958         .field_bit_size = 1,
36959         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36960         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36961         },
36962         {
36963         .description = "pl_byp_lkup_en",
36964         .field_bit_size = 1,
36965         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36966         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
36967         },
36968         /* class_tid: 1, , table: profile_tcam.l3_l4.vxlan */
36969         {
36970         .description = "wc_key_id",
36971         .field_bit_size = 6,
36972         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
36973         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
36974         .field_opr1 = {
36975         (BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_2 >> 8) & 0xff,
36976         BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_2 & 0xff}
36977         },
36978         {
36979         .description = "wc_profile_id",
36980         .field_bit_size = 8,
36981         .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
36982         .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
36983         .field_opr1 = {
36984         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
36985         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
36986         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
36987         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
36988         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
36989         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
36990         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
36991         (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
36992         .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
36993         .field_opr2 = {
36994                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 >> 8) & 0xff,
36995                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_3 & 0xff},
36996         .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
36997         .field_opr3 = {
36998         (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2 >> 8) & 0xff,
36999         BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_2 & 0xff}
37000         },
37001         {
37002         .description = "wc_search_en",
37003         .field_bit_size = 1,
37004         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37005         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37006         .field_opr1 = {
37007         1}
37008         },
37009         {
37010         .description = "em_key_type",
37011         .field_bit_size = 2,
37012         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37013         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37014         },
37015         {
37016         .description = "em_key_id",
37017         .field_bit_size = 6,
37018         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37019         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37020         },
37021         {
37022         .description = "em_profile_id",
37023         .field_bit_size = 8,
37024         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37025         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37026         },
37027         {
37028         .description = "em_search_en",
37029         .field_bit_size = 1,
37030         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37031         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37032         },
37033         {
37034         .description = "pl_byp_lkup_en",
37035         .field_bit_size = 1,
37036         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37037         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37038         },
37039         /* class_tid: 1, , table: profile_tcam_cache.wr */
37040         {
37041         .description = "rid",
37042         .field_bit_size = 32,
37043         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37044         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37045         .field_opr1 = {
37046         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
37047         BNXT_ULP_RF_IDX_RID & 0xff}
37048         },
37049         {
37050         .description = "profile_tcam_index",
37051         .field_bit_size = 10,
37052         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37053         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37054         .field_opr1 = {
37055         (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
37056         BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
37057         },
37058         {
37059         .description = "em_profile_id",
37060         .field_bit_size = 8,
37061         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37062         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37063         },
37064         {
37065         .description = "em_key_id",
37066         .field_bit_size = 8,
37067         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37068         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37069         },
37070         {
37071         .description = "wc_profile_id",
37072         .field_bit_size = 8,
37073         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37074         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37075         },
37076         {
37077         .description = "wc_key_id",
37078         .field_bit_size = 8,
37079         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37080         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37081         },
37082         {
37083         .description = "flow_sig_id",
37084         .field_bit_size = 64,
37085         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37086         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
37087         .field_opr1 = {
37088         (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
37089         BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
37090         },
37091         /* class_tid: 1, , table: wm.l3_l4.ipv4 */
37092         {
37093         .description = "ctxt_data",
37094         .field_bit_size = 14,
37095         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37096         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37097         },
37098         {
37099         .description = "meta_prof",
37100         .field_bit_size = 3,
37101         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37102         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37103         },
37104         {
37105         .description = "opcode",
37106         .field_bit_size = 3,
37107         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37108         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37109         },
37110         {
37111         .description = "data",
37112         .field_bit_size = 16,
37113         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37114         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37115         .field_opr1 = {
37116         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37117         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37118         },
37119         {
37120         .description = "strength",
37121         .field_bit_size = 2,
37122         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37123         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37124         .field_opr1 = {
37125         1}
37126         },
37127         /* class_tid: 1, , table: wm.l3_l4.ipv6 */
37128         {
37129         .description = "ctxt_data",
37130         .field_bit_size = 14,
37131         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37132         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37133         },
37134         {
37135         .description = "meta_prof",
37136         .field_bit_size = 3,
37137         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37138         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37139         },
37140         {
37141         .description = "opcode",
37142         .field_bit_size = 3,
37143         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37144         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37145         },
37146         {
37147         .description = "data",
37148         .field_bit_size = 16,
37149         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37150         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37151         .field_opr1 = {
37152         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37153         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37154         },
37155         {
37156         .description = "strength",
37157         .field_bit_size = 2,
37158         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37159         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37160         .field_opr1 = {
37161         1}
37162         },
37163         /* class_tid: 1, , table: wm.l3.ipv4 */
37164         {
37165         .description = "ctxt_data",
37166         .field_bit_size = 14,
37167         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37168         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37169         },
37170         {
37171         .description = "meta_prof",
37172         .field_bit_size = 3,
37173         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37174         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37175         },
37176         {
37177         .description = "opcode",
37178         .field_bit_size = 3,
37179         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37180         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37181         },
37182         {
37183         .description = "data",
37184         .field_bit_size = 16,
37185         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37186         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37187         .field_opr1 = {
37188         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37189         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37190         },
37191         {
37192         .description = "strength",
37193         .field_bit_size = 2,
37194         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37195         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37196         .field_opr1 = {
37197         1}
37198         },
37199         /* class_tid: 1, , table: wm.l3.ipv6 */
37200         {
37201         .description = "ctxt_data",
37202         .field_bit_size = 14,
37203         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37204         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37205         },
37206         {
37207         .description = "meta_prof",
37208         .field_bit_size = 3,
37209         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37210         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37211         },
37212         {
37213         .description = "opcode",
37214         .field_bit_size = 3,
37215         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37216         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37217         },
37218         {
37219         .description = "data",
37220         .field_bit_size = 16,
37221         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37222         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37223         .field_opr1 = {
37224         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37225         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37226         },
37227         {
37228         .description = "strength",
37229         .field_bit_size = 2,
37230         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37231         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37232         .field_opr1 = {
37233         1}
37234         },
37235         /* class_tid: 1, , table: wm.l2 */
37236         {
37237         .description = "ctxt_data",
37238         .field_bit_size = 14,
37239         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37240         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37241         },
37242         {
37243         .description = "meta_prof",
37244         .field_bit_size = 3,
37245         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37246         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37247         },
37248         {
37249         .description = "opcode",
37250         .field_bit_size = 3,
37251         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37252         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37253         },
37254         {
37255         .description = "data",
37256         .field_bit_size = 16,
37257         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37258         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37259         .field_opr1 = {
37260         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37261         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37262         },
37263         {
37264         .description = "strength",
37265         .field_bit_size = 2,
37266         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37267         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37268         .field_opr1 = {
37269         1}
37270         },
37271         /* class_tid: 1, , table: wm.l3_l4.vxlan.ipv4 */
37272         {
37273         .description = "ctxt_data",
37274         .field_bit_size = 14,
37275         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37276         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37277         },
37278         {
37279         .description = "meta_prof",
37280         .field_bit_size = 3,
37281         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37282         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37283         },
37284         {
37285         .description = "opcode",
37286         .field_bit_size = 3,
37287         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37288         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37289         },
37290         {
37291         .description = "data",
37292         .field_bit_size = 16,
37293         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37294         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37295         .field_opr1 = {
37296         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37297         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37298         },
37299         {
37300         .description = "strength",
37301         .field_bit_size = 2,
37302         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37303         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37304         .field_opr1 = {
37305         1}
37306         },
37307         /* class_tid: 1, , table: wm.l3_l4.vxlan.ipv6 */
37308         {
37309         .description = "ctxt_data",
37310         .field_bit_size = 14,
37311         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37312         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37313         },
37314         {
37315         .description = "meta_prof",
37316         .field_bit_size = 3,
37317         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37318         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37319         },
37320         {
37321         .description = "opcode",
37322         .field_bit_size = 3,
37323         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37324         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37325         },
37326         {
37327         .description = "data",
37328         .field_bit_size = 16,
37329         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37330         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37331         .field_opr1 = {
37332         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
37333         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
37334         },
37335         {
37336         .description = "strength",
37337         .field_bit_size = 2,
37338         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37339         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37340         .field_opr1 = {
37341         1}
37342         },
37343         /* class_tid: 2, , table: l2_cntxt_tcam.1 */
37344         {
37345         .description = "prof_func_id",
37346         .field_bit_size = 7,
37347         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37348         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37349         },
37350         {
37351         .description = "ctxt_meta_prof",
37352         .field_bit_size = 3,
37353         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37354         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37355         },
37356         {
37357         .description = "def_ctxt_data",
37358         .field_bit_size = 16,
37359         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37360         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37361         },
37362         {
37363         .description = "ctxt_opcode",
37364         .field_bit_size = 3,
37365         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37366         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37367         },
37368         {
37369         .description = "l2_cntxt_id",
37370         .field_bit_size = 10,
37371         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37372         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37373         },
37374         {
37375         .description = "parif",
37376         .field_bit_size = 4,
37377         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37378         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37379         },
37380         /* class_tid: 2, , table: tunnel_cache.wr */
37381         {
37382         .description = "rid",
37383         .field_bit_size = 32,
37384         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37385         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37386         .field_opr1 = {
37387         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
37388         BNXT_ULP_RF_IDX_RID & 0xff}
37389         },
37390         {
37391         .description = "l2_cntxt_tcam_index",
37392         .field_bit_size = 10,
37393         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37394         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37395         },
37396         {
37397         .description = "l2_cntxt_id",
37398         .field_bit_size = 10,
37399         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37400         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37401         .field_opr1 = {
37402         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
37403         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
37404         },
37405         /* class_tid: 2, , table: l2_cntxt_tcam.0 */
37406         {
37407         .description = "prof_func_id",
37408         .field_bit_size = 7,
37409         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37410         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
37411         .field_opr1 = {
37412         (BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
37413         BNXT_ULP_GLB_RF_IDX_VXLAN_PROF_FUNC_ID & 0xff}
37414         },
37415         {
37416         .description = "ctxt_meta_prof",
37417         .field_bit_size = 3,
37418         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37419         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37420         },
37421         {
37422         .description = "def_ctxt_data",
37423         .field_bit_size = 16,
37424         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37425         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37426         .field_opr1 = {
37427         (BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR >> 8) & 0xff,
37428         BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR & 0xff}
37429         },
37430         {
37431         .description = "ctxt_opcode",
37432         .field_bit_size = 3,
37433         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37434         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37435         .field_opr1 = {
37436         ULP_THOR_SYM_CTXT_OPCODE_NORMAL_FLOW}
37437         },
37438         {
37439         .description = "l2_cntxt_id",
37440         .field_bit_size = 10,
37441         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37442         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37443         .field_opr1 = {
37444         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
37445         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
37446         },
37447         {
37448         .description = "parif",
37449         .field_bit_size = 4,
37450         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37451         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
37452         .field_opr1 = {
37453         (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
37454         BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
37455         },
37456         /* class_tid: 2, , table: mac_addr_cache.wr */
37457         {
37458         .description = "rid",
37459         .field_bit_size = 32,
37460         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37461         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37462         .field_opr1 = {
37463         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
37464         BNXT_ULP_RF_IDX_RID & 0xff}
37465         },
37466         {
37467         .description = "l2_cntxt_tcam_index",
37468         .field_bit_size = 10,
37469         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37470         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37471         },
37472         {
37473         .description = "l2_cntxt_id",
37474         .field_bit_size = 10,
37475         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37476         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
37477         .field_opr1 = {
37478         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
37479         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
37480         },
37481         {
37482         .description = "src_property_ptr",
37483         .field_bit_size = 10,
37484         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37485         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37486         },
37487         /* class_tid: 2, , table: fkb_select.f2_l2_l3_l4_v6_em */
37488         {
37489         .description = "l2_cntxt_id.en",
37490         .field_bit_size = 1,
37491         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37492         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37493         .field_opr1 = {
37494         1}
37495         },
37496         {
37497         .description = "parif.en",
37498         .field_bit_size = 1,
37499         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37500         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37501         },
37502         {
37503         .description = "spif.en",
37504         .field_bit_size = 1,
37505         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37506         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37507         },
37508         {
37509         .description = "svif.en",
37510         .field_bit_size = 1,
37511         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37512         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37513         },
37514         {
37515         .description = "lcos.en",
37516         .field_bit_size = 1,
37517         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37518         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37519         },
37520         {
37521         .description = "meta.en",
37522         .field_bit_size = 1,
37523         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37524         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37525         },
37526         {
37527         .description = "rcyc_cnt.en",
37528         .field_bit_size = 1,
37529         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37530         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37531         },
37532         {
37533         .description = "loopback.en",
37534         .field_bit_size = 1,
37535         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37536         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37537         },
37538         {
37539         .description = "tl2_l2type.en",
37540         .field_bit_size = 1,
37541         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37542         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37543         },
37544         {
37545         .description = "tl2_dmac.en",
37546         .field_bit_size = 1,
37547         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37548         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37549         },
37550         {
37551         .description = "tl2_smac.en",
37552         .field_bit_size = 1,
37553         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37554         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37555         },
37556         {
37557         .description = "tl2_dt.en",
37558         .field_bit_size = 1,
37559         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37560         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37561         },
37562         {
37563         .description = "tl2_sa.en",
37564         .field_bit_size = 1,
37565         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37566         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37567         },
37568         {
37569         .description = "tl2_nvt.en",
37570         .field_bit_size = 1,
37571         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37572         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37573         },
37574         {
37575         .description = "tl2_ovp.en",
37576         .field_bit_size = 1,
37577         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37578         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37579         },
37580         {
37581         .description = "tl2_ovd.en",
37582         .field_bit_size = 1,
37583         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37584         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37585         },
37586         {
37587         .description = "tl2_ovv.en",
37588         .field_bit_size = 1,
37589         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37590         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37591         },
37592         {
37593         .description = "tl2_ovt.en",
37594         .field_bit_size = 1,
37595         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37596         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37597         },
37598         {
37599         .description = "tl2_ivp.en",
37600         .field_bit_size = 1,
37601         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37602         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37603         },
37604         {
37605         .description = "tl2_ivd.en",
37606         .field_bit_size = 1,
37607         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37608         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37609         },
37610         {
37611         .description = "tl2_ivv.en",
37612         .field_bit_size = 1,
37613         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37614         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37615         },
37616         {
37617         .description = "tl2_ivt.en",
37618         .field_bit_size = 1,
37619         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37620         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37621         },
37622         {
37623         .description = "tl2_etype.en",
37624         .field_bit_size = 1,
37625         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37626         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37627         },
37628         {
37629         .description = "tl3_l3type.en",
37630         .field_bit_size = 1,
37631         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37632         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37633         },
37634         {
37635         .description = "tl3_sip.en",
37636         .field_bit_size = 1,
37637         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37638         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37639         },
37640         {
37641         .description = "tl3_sip_selcmp.en",
37642         .field_bit_size = 1,
37643         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37644         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37645         },
37646         {
37647         .description = "tl3_dip.en",
37648         .field_bit_size = 1,
37649         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37650         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37651         },
37652         {
37653         .description = "tl3_dip_selcmp.en",
37654         .field_bit_size = 1,
37655         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37656         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37657         },
37658         {
37659         .description = "tl3_ttl.en",
37660         .field_bit_size = 1,
37661         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37662         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37663         },
37664         {
37665         .description = "tl3_prot.en",
37666         .field_bit_size = 1,
37667         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37668         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37669         },
37670         {
37671         .description = "tl3_fid.en",
37672         .field_bit_size = 1,
37673         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37674         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37675         },
37676         {
37677         .description = "tl3_qos.en",
37678         .field_bit_size = 1,
37679         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37680         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37681         },
37682         {
37683         .description = "tl3_ieh_nonext.en",
37684         .field_bit_size = 1,
37685         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37686         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37687         },
37688         {
37689         .description = "tl3_ieh_esp.en",
37690         .field_bit_size = 1,
37691         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37692         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37693         },
37694         {
37695         .description = "tl3_ieh_auth.en",
37696         .field_bit_size = 1,
37697         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37698         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37699         },
37700         {
37701         .description = "tl3_ieh_dest.en",
37702         .field_bit_size = 1,
37703         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37704         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37705         },
37706         {
37707         .description = "tl3_ieh_frag.en",
37708         .field_bit_size = 1,
37709         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37710         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37711         },
37712         {
37713         .description = "tl3_ieh_rthdr.en",
37714         .field_bit_size = 1,
37715         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37716         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37717         },
37718         {
37719         .description = "tl3_ieh_hop.en",
37720         .field_bit_size = 1,
37721         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37722         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37723         },
37724         {
37725         .description = "tl3_ieh_1frag.en",
37726         .field_bit_size = 1,
37727         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37728         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37729         },
37730         {
37731         .description = "tl3_df.en",
37732         .field_bit_size = 1,
37733         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37734         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37735         },
37736         {
37737         .description = "tl3_l3err.en",
37738         .field_bit_size = 1,
37739         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37740         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37741         },
37742         {
37743         .description = "tl4_l4type.en",
37744         .field_bit_size = 1,
37745         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37746         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37747         },
37748         {
37749         .description = "tl4_src.en",
37750         .field_bit_size = 1,
37751         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37752         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37753         },
37754         {
37755         .description = "tl4_dst.en",
37756         .field_bit_size = 1,
37757         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37758         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37759         },
37760         {
37761         .description = "tl4_flags.en",
37762         .field_bit_size = 1,
37763         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37764         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37765         },
37766         {
37767         .description = "tl4_seq.en",
37768         .field_bit_size = 1,
37769         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37770         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37771         },
37772         {
37773         .description = "tl4_pa.en",
37774         .field_bit_size = 1,
37775         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37776         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37777         },
37778         {
37779         .description = "tl4_opt.en",
37780         .field_bit_size = 1,
37781         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37782         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37783         },
37784         {
37785         .description = "tl4_tcpts.en",
37786         .field_bit_size = 1,
37787         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37788         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37789         },
37790         {
37791         .description = "tl4_err.en",
37792         .field_bit_size = 1,
37793         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37794         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37795         },
37796         {
37797         .description = "tuntype.en",
37798         .field_bit_size = 1,
37799         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37800         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37801         },
37802         {
37803         .description = "tflags.en",
37804         .field_bit_size = 1,
37805         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37806         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37807         },
37808         {
37809         .description = "tids.en",
37810         .field_bit_size = 1,
37811         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37812         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
37813         .field_opr1 = {
37814         (BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI >> 8) & 0xff,
37815         BNXT_ULP_GLB_HF_ID_T_VXLAN_VNI & 0xff}
37816         },
37817         {
37818         .description = "tid.en",
37819         .field_bit_size = 1,
37820         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37821         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37822         },
37823         {
37824         .description = "tctxts.en",
37825         .field_bit_size = 1,
37826         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37827         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37828         },
37829         {
37830         .description = "tctxt.en",
37831         .field_bit_size = 1,
37832         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37833         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37834         },
37835         {
37836         .description = "tqos.en",
37837         .field_bit_size = 1,
37838         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37839         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37840         },
37841         {
37842         .description = "terr.en",
37843         .field_bit_size = 1,
37844         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37845         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37846         },
37847         {
37848         .description = "l2_l2type.en",
37849         .field_bit_size = 1,
37850         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37851         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37852         },
37853         {
37854         .description = "l2_dmac.en",
37855         .field_bit_size = 1,
37856         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37857         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
37858         .field_opr1 = {
37859         1}
37860         },
37861         {
37862         .description = "l2_smac.en",
37863         .field_bit_size = 1,
37864         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37865         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
37866         .field_opr1 = {
37867         (BNXT_ULP_GLB_HF_ID_I_ETH_SMAC >> 8) & 0xff,
37868         BNXT_ULP_GLB_HF_ID_I_ETH_SMAC & 0xff}
37869         },
37870         {
37871         .description = "l2_dt.en",
37872         .field_bit_size = 1,
37873         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37874         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37875         },
37876         {
37877         .description = "l2_sa.en",
37878         .field_bit_size = 1,
37879         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37880         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37881         },
37882         {
37883         .description = "l2_nvt.en",
37884         .field_bit_size = 1,
37885         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37886         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37887         },
37888         {
37889         .description = "l2_ovp.en",
37890         .field_bit_size = 1,
37891         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37892         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37893         },
37894         {
37895         .description = "l2_ovd.en",
37896         .field_bit_size = 1,
37897         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37898         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37899         },
37900         {
37901         .description = "l2_ovv.en",
37902         .field_bit_size = 1,
37903         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37904         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37905         },
37906         {
37907         .description = "l2_ovt.en",
37908         .field_bit_size = 1,
37909         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37910         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37911         },
37912         {
37913         .description = "l2_ivp.en",
37914         .field_bit_size = 1,
37915         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37916         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37917         },
37918         {
37919         .description = "l2_ivd.en",
37920         .field_bit_size = 1,
37921         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37922         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37923         },
37924         {
37925         .description = "l2_ivv.en",
37926         .field_bit_size = 1,
37927         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37928         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37929         },
37930         {
37931         .description = "l2_ivt.en",
37932         .field_bit_size = 1,
37933         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37934         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37935         },
37936         {
37937         .description = "l2_etype.en",
37938         .field_bit_size = 1,
37939         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37940         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37941         },
37942         {
37943         .description = "l3_l3type.en",
37944         .field_bit_size = 1,
37945         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37946         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37947         },
37948         {
37949         .description = "l3_sip.en",
37950         .field_bit_size = 1,
37951         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37952         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
37953         .field_opr1 = {
37954         (BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR >> 8) & 0xff,
37955         BNXT_ULP_GLB_HF_ID_I_IPV6_SRC_ADDR & 0xff}
37956         },
37957         {
37958         .description = "l3_sip_selcmp.en",
37959         .field_bit_size = 1,
37960         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37961         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37962         },
37963         {
37964         .description = "l3_dip.en",
37965         .field_bit_size = 1,
37966         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37967         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
37968         .field_opr1 = {
37969         (BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR >> 8) & 0xff,
37970         BNXT_ULP_GLB_HF_ID_I_IPV6_DST_ADDR & 0xff}
37971         },
37972         {
37973         .description = "l3_dip_selcmp.en",
37974         .field_bit_size = 1,
37975         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37976         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37977         },
37978         {
37979         .description = "l3_ttl.en",
37980         .field_bit_size = 1,
37981         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37982         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37983         },
37984         {
37985         .description = "l3_prot.en",
37986         .field_bit_size = 1,
37987         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37988         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
37989         .field_opr1 = {
37990         (BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID >> 8) & 0xff,
37991         BNXT_ULP_CF_IDX_I_L3_FB_PROTO_ID & 0xff}
37992         },
37993         {
37994         .description = "l3_fid.en",
37995         .field_bit_size = 1,
37996         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
37997         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
37998         },
37999         {
38000         .description = "l3_qos.en",
38001         .field_bit_size = 1,
38002         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38003         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38004         },
38005         {
38006         .description = "l3_ieh_nonext.en",
38007         .field_bit_size = 1,
38008         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38009         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38010         },
38011         {
38012         .description = "l3_ieh_esp.en",
38013         .field_bit_size = 1,
38014         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38015         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38016         },
38017         {
38018         .description = "l3_ieh_auth.en",
38019         .field_bit_size = 1,
38020         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38021         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38022         },
38023         {
38024         .description = "l3_ieh_dest.en",
38025         .field_bit_size = 1,
38026         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38027         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38028         },
38029         {
38030         .description = "l3_ieh_frag.en",
38031         .field_bit_size = 1,
38032         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38033         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38034         },
38035         {
38036         .description = "l3_ieh_rthdr.en",
38037         .field_bit_size = 1,
38038         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38039         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38040         },
38041         {
38042         .description = "l3_ieh_hop.en",
38043         .field_bit_size = 1,
38044         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38045         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38046         },
38047         {
38048         .description = "l3_ieh_1frag.en",
38049         .field_bit_size = 1,
38050         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38051         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38052         },
38053         {
38054         .description = "l3_df.en",
38055         .field_bit_size = 1,
38056         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38057         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38058         },
38059         {
38060         .description = "l3_l3err.en",
38061         .field_bit_size = 1,
38062         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38063         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38064         },
38065         {
38066         .description = "l4_l4type.en",
38067         .field_bit_size = 1,
38068         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38069         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38070         },
38071         {
38072         .description = "l4_src.en",
38073         .field_bit_size = 1,
38074         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38075         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
38076         .field_opr1 = {
38077         (BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT >> 8) & 0xff,
38078         BNXT_ULP_CF_IDX_I_L4_FB_SRC_PORT & 0xff}
38079         },
38080         {
38081         .description = "l4_dst.en",
38082         .field_bit_size = 1,
38083         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38084         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
38085         .field_opr1 = {
38086         (BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT >> 8) & 0xff,
38087         BNXT_ULP_CF_IDX_I_L4_FB_DST_PORT & 0xff}
38088         },
38089         {
38090         .description = "l4_flags.en",
38091         .field_bit_size = 1,
38092         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38093         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38094         },
38095         {
38096         .description = "l4_seq.en",
38097         .field_bit_size = 1,
38098         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38099         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38100         },
38101         {
38102         .description = "l4_ack.en",
38103         .field_bit_size = 1,
38104         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38105         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38106         },
38107         {
38108         .description = "l4_win.en",
38109         .field_bit_size = 1,
38110         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38111         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38112         },
38113         {
38114         .description = "l4_pa.en",
38115         .field_bit_size = 1,
38116         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38117         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38118         },
38119         {
38120         .description = "l4_opt.en",
38121         .field_bit_size = 1,
38122         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38123         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38124         },
38125         {
38126         .description = "l4_tcpts.en",
38127         .field_bit_size = 1,
38128         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38129         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38130         },
38131         {
38132         .description = "l4_tsval.en",
38133         .field_bit_size = 1,
38134         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38135         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38136         },
38137         {
38138         .description = "l4_txecr.en",
38139         .field_bit_size = 1,
38140         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38141         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38142         },
38143         {
38144         .description = "l4_err.en",
38145         .field_bit_size = 1,
38146         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38147         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38148         },
38149         /* class_tid: 2, , table: profile_tcam.f2_l2_l3_l4_v6_em */
38150         {
38151         .description = "wc_key_id",
38152         .field_bit_size = 6,
38153         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38154         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38155         },
38156         {
38157         .description = "wc_profile_id",
38158         .field_bit_size = 8,
38159         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38160         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38161         },
38162         {
38163         .description = "wc_search_en",
38164         .field_bit_size = 1,
38165         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38166         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38167         },
38168         {
38169         .description = "em_key_type",
38170         .field_bit_size = 2,
38171         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38172         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38173         },
38174         {
38175         .description = "em_key_id",
38176         .field_bit_size = 6,
38177         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38178         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38179         .field_opr1 = {
38180         (BNXT_ULP_RF_IDX_EM_KEY_ID_0 >> 8) & 0xff,
38181         BNXT_ULP_RF_IDX_EM_KEY_ID_0 & 0xff}
38182         },
38183         {
38184         .description = "em_profile_id",
38185         .field_bit_size = 8,
38186         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38187         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38188         .field_opr1 = {
38189         (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
38190         BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
38191         },
38192         {
38193         .description = "em_search_en",
38194         .field_bit_size = 1,
38195         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38196         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38197         .field_opr1 = {
38198         1}
38199         },
38200         {
38201         .description = "pl_byp_lkup_en",
38202         .field_bit_size = 1,
38203         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38204         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38205         },
38206         /* class_tid: 2, , table: profile_tcam_cache.f2_l2_l3_l4_v6_wr */
38207         {
38208         .description = "rid",
38209         .field_bit_size = 32,
38210         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38211         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38212         .field_opr1 = {
38213         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
38214         BNXT_ULP_RF_IDX_RID & 0xff}
38215         },
38216         {
38217         .description = "profile_tcam_index",
38218         .field_bit_size = 10,
38219         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38220         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38221         .field_opr1 = {
38222         (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
38223         BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
38224         },
38225         {
38226         .description = "em_profile_id",
38227         .field_bit_size = 8,
38228         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38229         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38230         .field_opr1 = {
38231         (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
38232         BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
38233         },
38234         {
38235         .description = "em_key_id",
38236         .field_bit_size = 8,
38237         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38238         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38239         .field_opr1 = {
38240         (BNXT_ULP_RF_IDX_EM_KEY_ID_0 >> 8) & 0xff,
38241         BNXT_ULP_RF_IDX_EM_KEY_ID_0 & 0xff}
38242         },
38243         {
38244         .description = "wc_profile_id",
38245         .field_bit_size = 8,
38246         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38247         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38248         },
38249         {
38250         .description = "wc_key_id",
38251         .field_bit_size = 8,
38252         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38253         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38254         },
38255         {
38256         .description = "flow_sig_id",
38257         .field_bit_size = 64,
38258         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38259         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
38260         .field_opr1 = {
38261         (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
38262         BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
38263         },
38264         /* class_tid: 2, , table: em.f2_l2_l3_l4_v6.0 */
38265         {
38266         .description = "valid",
38267         .field_bit_size = 1,
38268         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38269         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38270         .field_opr1 = {
38271         1}
38272         },
38273         {
38274         .description = "strength",
38275         .field_bit_size = 2,
38276         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38277         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38278         .field_opr1 = {
38279         3}
38280         },
38281         {
38282         .description = "data",
38283         .field_bit_size = 16,
38284         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38285         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
38286         .field_opr1 = {
38287         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
38288         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
38289         },
38290         {
38291         .description = "opcode",
38292         .field_bit_size = 3,
38293         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38294         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38295         },
38296         {
38297         .description = "meta_prof",
38298         .field_bit_size = 3,
38299         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38300         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38301         },
38302         {
38303         .description = "ctxt_data",
38304         .field_bit_size = 14,
38305         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38306         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38307         },
38308         /* class_tid: 2, , table: fkb_select.f2_wm */
38309         {
38310         .description = "l2_cntxt_id.en",
38311         .field_bit_size = 1,
38312         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38313         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38314         .field_opr1 = {
38315         1}
38316         },
38317         {
38318         .description = "parif.en",
38319         .field_bit_size = 1,
38320         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38321         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38322         },
38323         {
38324         .description = "spif.en",
38325         .field_bit_size = 1,
38326         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38327         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38328         },
38329         {
38330         .description = "svif.en",
38331         .field_bit_size = 1,
38332         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38333         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38334         },
38335         {
38336         .description = "lcos.en",
38337         .field_bit_size = 1,
38338         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38339         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38340         },
38341         {
38342         .description = "meta.en",
38343         .field_bit_size = 1,
38344         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38345         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38346         },
38347         {
38348         .description = "rcyc_cnt.en",
38349         .field_bit_size = 1,
38350         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38351         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38352         },
38353         {
38354         .description = "loopback.en",
38355         .field_bit_size = 1,
38356         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38357         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38358         },
38359         {
38360         .description = "tl2_l2type.en",
38361         .field_bit_size = 1,
38362         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38363         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38364         },
38365         {
38366         .description = "tl2_dmac.en",
38367         .field_bit_size = 1,
38368         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38369         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38370         },
38371         {
38372         .description = "tl2_smac.en",
38373         .field_bit_size = 1,
38374         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38375         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38376         },
38377         {
38378         .description = "tl2_dt.en",
38379         .field_bit_size = 1,
38380         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38381         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38382         },
38383         {
38384         .description = "tl2_sa.en",
38385         .field_bit_size = 1,
38386         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38387         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38388         },
38389         {
38390         .description = "tl2_nvt.en",
38391         .field_bit_size = 1,
38392         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38393         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38394         },
38395         {
38396         .description = "tl2_ovp.en",
38397         .field_bit_size = 1,
38398         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38399         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38400         },
38401         {
38402         .description = "tl2_ovd.en",
38403         .field_bit_size = 1,
38404         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38405         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38406         },
38407         {
38408         .description = "tl2_ovv.en",
38409         .field_bit_size = 1,
38410         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38411         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38412         },
38413         {
38414         .description = "tl2_ovt.en",
38415         .field_bit_size = 1,
38416         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38417         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38418         },
38419         {
38420         .description = "tl2_ivp.en",
38421         .field_bit_size = 1,
38422         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38423         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38424         },
38425         {
38426         .description = "tl2_ivd.en",
38427         .field_bit_size = 1,
38428         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38429         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38430         },
38431         {
38432         .description = "tl2_ivv.en",
38433         .field_bit_size = 1,
38434         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38435         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38436         },
38437         {
38438         .description = "tl2_ivt.en",
38439         .field_bit_size = 1,
38440         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38441         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38442         },
38443         {
38444         .description = "tl2_etype.en",
38445         .field_bit_size = 1,
38446         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38447         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38448         },
38449         {
38450         .description = "tl3_l3type.en",
38451         .field_bit_size = 1,
38452         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38453         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38454         },
38455         {
38456         .description = "tl3_sip.en",
38457         .field_bit_size = 1,
38458         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38459         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38460         },
38461         {
38462         .description = "tl3_sip_selcmp.en",
38463         .field_bit_size = 1,
38464         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38465         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38466         },
38467         {
38468         .description = "tl3_dip.en",
38469         .field_bit_size = 1,
38470         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38471         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38472         },
38473         {
38474         .description = "tl3_dip_selcmp.en",
38475         .field_bit_size = 1,
38476         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38477         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38478         },
38479         {
38480         .description = "tl3_ttl.en",
38481         .field_bit_size = 1,
38482         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38483         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38484         },
38485         {
38486         .description = "tl3_prot.en",
38487         .field_bit_size = 1,
38488         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38489         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38490         },
38491         {
38492         .description = "tl3_fid.en",
38493         .field_bit_size = 1,
38494         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38495         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38496         },
38497         {
38498         .description = "tl3_qos.en",
38499         .field_bit_size = 1,
38500         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38501         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38502         },
38503         {
38504         .description = "tl3_ieh_nonext.en",
38505         .field_bit_size = 1,
38506         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38507         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38508         },
38509         {
38510         .description = "tl3_ieh_esp.en",
38511         .field_bit_size = 1,
38512         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38513         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38514         },
38515         {
38516         .description = "tl3_ieh_auth.en",
38517         .field_bit_size = 1,
38518         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38519         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38520         },
38521         {
38522         .description = "tl3_ieh_dest.en",
38523         .field_bit_size = 1,
38524         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38525         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38526         },
38527         {
38528         .description = "tl3_ieh_frag.en",
38529         .field_bit_size = 1,
38530         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38531         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38532         },
38533         {
38534         .description = "tl3_ieh_rthdr.en",
38535         .field_bit_size = 1,
38536         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38537         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38538         },
38539         {
38540         .description = "tl3_ieh_hop.en",
38541         .field_bit_size = 1,
38542         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38543         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38544         },
38545         {
38546         .description = "tl3_ieh_1frag.en",
38547         .field_bit_size = 1,
38548         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38549         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38550         },
38551         {
38552         .description = "tl3_df.en",
38553         .field_bit_size = 1,
38554         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38555         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38556         },
38557         {
38558         .description = "tl3_l3err.en",
38559         .field_bit_size = 1,
38560         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38561         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38562         },
38563         {
38564         .description = "tl4_l4type.en",
38565         .field_bit_size = 1,
38566         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38567         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38568         },
38569         {
38570         .description = "tl4_src.en",
38571         .field_bit_size = 1,
38572         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38573         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38574         },
38575         {
38576         .description = "tl4_dst.en",
38577         .field_bit_size = 1,
38578         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38579         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38580         },
38581         {
38582         .description = "tl4_flags.en",
38583         .field_bit_size = 1,
38584         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38585         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38586         },
38587         {
38588         .description = "tl4_seq.en",
38589         .field_bit_size = 1,
38590         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38591         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38592         },
38593         {
38594         .description = "tl4_pa.en",
38595         .field_bit_size = 1,
38596         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38597         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38598         },
38599         {
38600         .description = "tl4_opt.en",
38601         .field_bit_size = 1,
38602         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38603         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38604         },
38605         {
38606         .description = "tl4_tcpts.en",
38607         .field_bit_size = 1,
38608         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38609         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38610         },
38611         {
38612         .description = "tl4_err.en",
38613         .field_bit_size = 1,
38614         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38615         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38616         },
38617         {
38618         .description = "tuntype.en",
38619         .field_bit_size = 1,
38620         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38621         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38622         },
38623         {
38624         .description = "tflags.en",
38625         .field_bit_size = 1,
38626         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38627         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38628         },
38629         {
38630         .description = "tids.en",
38631         .field_bit_size = 1,
38632         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38633         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38634         .field_opr1 = {
38635         1}
38636         },
38637         {
38638         .description = "tid.en",
38639         .field_bit_size = 1,
38640         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38641         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38642         },
38643         {
38644         .description = "tctxts.en",
38645         .field_bit_size = 1,
38646         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38647         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38648         },
38649         {
38650         .description = "tctxt.en",
38651         .field_bit_size = 1,
38652         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38653         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38654         },
38655         {
38656         .description = "tqos.en",
38657         .field_bit_size = 1,
38658         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38659         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38660         },
38661         {
38662         .description = "terr.en",
38663         .field_bit_size = 1,
38664         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38665         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38666         },
38667         {
38668         .description = "l2_l2type.en",
38669         .field_bit_size = 1,
38670         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38671         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38672         },
38673         {
38674         .description = "l2_dmac.en",
38675         .field_bit_size = 1,
38676         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38677         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38678         .field_opr1 = {
38679         1}
38680         },
38681         {
38682         .description = "l2_smac.en",
38683         .field_bit_size = 1,
38684         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38685         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38686         .field_opr1 = {
38687         1}
38688         },
38689         {
38690         .description = "l2_dt.en",
38691         .field_bit_size = 1,
38692         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38693         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38694         },
38695         {
38696         .description = "l2_sa.en",
38697         .field_bit_size = 1,
38698         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38699         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38700         },
38701         {
38702         .description = "l2_nvt.en",
38703         .field_bit_size = 1,
38704         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38705         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38706         },
38707         {
38708         .description = "l2_ovp.en",
38709         .field_bit_size = 1,
38710         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38711         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38712         },
38713         {
38714         .description = "l2_ovd.en",
38715         .field_bit_size = 1,
38716         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38717         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38718         },
38719         {
38720         .description = "l2_ovv.en",
38721         .field_bit_size = 1,
38722         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38723         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38724         },
38725         {
38726         .description = "l2_ovt.en",
38727         .field_bit_size = 1,
38728         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38729         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38730         },
38731         {
38732         .description = "l2_ivp.en",
38733         .field_bit_size = 1,
38734         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38735         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38736         },
38737         {
38738         .description = "l2_ivd.en",
38739         .field_bit_size = 1,
38740         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38741         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38742         },
38743         {
38744         .description = "l2_ivv.en",
38745         .field_bit_size = 1,
38746         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38747         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38748         },
38749         {
38750         .description = "l2_ivt.en",
38751         .field_bit_size = 1,
38752         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38753         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38754         },
38755         {
38756         .description = "l2_etype.en",
38757         .field_bit_size = 1,
38758         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38759         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38760         },
38761         {
38762         .description = "l3_l3type.en",
38763         .field_bit_size = 1,
38764         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38765         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38766         },
38767         {
38768         .description = "l3_sip.en",
38769         .field_bit_size = 1,
38770         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38771         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38772         .field_opr1 = {
38773         1}
38774         },
38775         {
38776         .description = "l3_sip_selcmp.en",
38777         .field_bit_size = 1,
38778         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38779         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38780         },
38781         {
38782         .description = "l3_dip.en",
38783         .field_bit_size = 1,
38784         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38785         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38786         .field_opr1 = {
38787         1}
38788         },
38789         {
38790         .description = "l3_dip_selcmp.en",
38791         .field_bit_size = 1,
38792         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38793         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38794         },
38795         {
38796         .description = "l3_ttl.en",
38797         .field_bit_size = 1,
38798         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38799         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38800         },
38801         {
38802         .description = "l3_prot.en",
38803         .field_bit_size = 1,
38804         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38805         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38806         .field_opr1 = {
38807         1}
38808         },
38809         {
38810         .description = "l3_fid.en",
38811         .field_bit_size = 1,
38812         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38813         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38814         },
38815         {
38816         .description = "l3_qos.en",
38817         .field_bit_size = 1,
38818         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38819         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38820         },
38821         {
38822         .description = "l3_ieh_nonext.en",
38823         .field_bit_size = 1,
38824         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38825         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38826         },
38827         {
38828         .description = "l3_ieh_esp.en",
38829         .field_bit_size = 1,
38830         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38831         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38832         },
38833         {
38834         .description = "l3_ieh_auth.en",
38835         .field_bit_size = 1,
38836         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38837         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38838         },
38839         {
38840         .description = "l3_ieh_dest.en",
38841         .field_bit_size = 1,
38842         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38843         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38844         },
38845         {
38846         .description = "l3_ieh_frag.en",
38847         .field_bit_size = 1,
38848         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38849         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38850         },
38851         {
38852         .description = "l3_ieh_rthdr.en",
38853         .field_bit_size = 1,
38854         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38855         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38856         },
38857         {
38858         .description = "l3_ieh_hop.en",
38859         .field_bit_size = 1,
38860         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38861         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38862         },
38863         {
38864         .description = "l3_ieh_1frag.en",
38865         .field_bit_size = 1,
38866         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38867         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38868         },
38869         {
38870         .description = "l3_df.en",
38871         .field_bit_size = 1,
38872         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38873         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38874         },
38875         {
38876         .description = "l3_l3err.en",
38877         .field_bit_size = 1,
38878         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38879         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38880         },
38881         {
38882         .description = "l4_l4type.en",
38883         .field_bit_size = 1,
38884         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38885         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38886         },
38887         {
38888         .description = "l4_src.en",
38889         .field_bit_size = 1,
38890         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38891         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38892         .field_opr1 = {
38893         1}
38894         },
38895         {
38896         .description = "l4_dst.en",
38897         .field_bit_size = 1,
38898         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38899         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
38900         .field_opr1 = {
38901         1}
38902         },
38903         {
38904         .description = "l4_flags.en",
38905         .field_bit_size = 1,
38906         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38907         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38908         },
38909         {
38910         .description = "l4_seq.en",
38911         .field_bit_size = 1,
38912         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38913         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38914         },
38915         {
38916         .description = "l4_ack.en",
38917         .field_bit_size = 1,
38918         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38919         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38920         },
38921         {
38922         .description = "l4_win.en",
38923         .field_bit_size = 1,
38924         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38925         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38926         },
38927         {
38928         .description = "l4_pa.en",
38929         .field_bit_size = 1,
38930         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38931         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38932         },
38933         {
38934         .description = "l4_opt.en",
38935         .field_bit_size = 1,
38936         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38937         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38938         },
38939         {
38940         .description = "l4_tcpts.en",
38941         .field_bit_size = 1,
38942         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38943         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38944         },
38945         {
38946         .description = "l4_tsval.en",
38947         .field_bit_size = 1,
38948         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38949         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38950         },
38951         {
38952         .description = "l4_txecr.en",
38953         .field_bit_size = 1,
38954         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38955         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38956         },
38957         {
38958         .description = "l4_err.en",
38959         .field_bit_size = 1,
38960         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38961         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
38962         },
38963         /* class_tid: 2, , table: profile_tcam.f2 */
38964         {
38965         .description = "wc_key_id",
38966         .field_bit_size = 6,
38967         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
38968         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
38969         .field_opr1 = {
38970         (BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_4 >> 8) & 0xff,
38971         BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_4 & 0xff}
38972         },
38973         {
38974         .description = "wc_profile_id",
38975         .field_bit_size = 8,
38976         .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
38977         .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
38978         .field_opr1 = {
38979         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 56) & 0xff,
38980         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 48) & 0xff,
38981         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 40) & 0xff,
38982         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 32) & 0xff,
38983         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 24) & 0xff,
38984         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 16) & 0xff,
38985         ((uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 >> 8) & 0xff,
38986         (uint64_t)BNXT_ULP_HDR_BIT_O_IPV6 & 0xff},
38987         .field_src2 = BNXT_ULP_FIELD_SRC_GLB_RF,
38988         .field_opr2 = {
38989                 (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5 >> 8) & 0xff,
38990                 BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_5 & 0xff},
38991         .field_src3 = BNXT_ULP_FIELD_SRC_GLB_RF,
38992         .field_opr3 = {
38993         (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4 >> 8) & 0xff,
38994         BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_4 & 0xff}
38995         },
38996         {
38997         .description = "wc_search_en",
38998         .field_bit_size = 1,
38999         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39000         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39001         .field_opr1 = {
39002         1}
39003         },
39004         {
39005         .description = "em_key_type",
39006         .field_bit_size = 2,
39007         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39008         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39009         },
39010         {
39011         .description = "em_key_id",
39012         .field_bit_size = 6,
39013         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39014         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39015         },
39016         {
39017         .description = "em_profile_id",
39018         .field_bit_size = 8,
39019         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39020         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39021         },
39022         {
39023         .description = "em_search_en",
39024         .field_bit_size = 1,
39025         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39026         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39027         },
39028         {
39029         .description = "pl_byp_lkup_en",
39030         .field_bit_size = 1,
39031         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39032         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39033         },
39034         /* class_tid: 2, , table: profile_tcam_cache.f2_wr */
39035         {
39036         .description = "rid",
39037         .field_bit_size = 32,
39038         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39039         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39040         .field_opr1 = {
39041         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
39042         BNXT_ULP_RF_IDX_RID & 0xff}
39043         },
39044         {
39045         .description = "profile_tcam_index",
39046         .field_bit_size = 10,
39047         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39048         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39049         .field_opr1 = {
39050         (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
39051         BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
39052         },
39053         {
39054         .description = "em_profile_id",
39055         .field_bit_size = 8,
39056         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39057         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39058         },
39059         {
39060         .description = "em_key_id",
39061         .field_bit_size = 8,
39062         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39063         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39064         },
39065         {
39066         .description = "wc_profile_id",
39067         .field_bit_size = 8,
39068         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39069         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39070         },
39071         {
39072         .description = "wc_key_id",
39073         .field_bit_size = 8,
39074         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39075         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39076         },
39077         {
39078         .description = "flow_sig_id",
39079         .field_bit_size = 64,
39080         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39081         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
39082         .field_opr1 = {
39083         (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
39084         BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
39085         },
39086         /* class_tid: 2, , table: wm.l3_l4.ipv4 */
39087         {
39088         .description = "ctxt_data",
39089         .field_bit_size = 14,
39090         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39091         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39092         },
39093         {
39094         .description = "meta_prof",
39095         .field_bit_size = 3,
39096         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39097         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39098         },
39099         {
39100         .description = "opcode",
39101         .field_bit_size = 3,
39102         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39103         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39104         },
39105         {
39106         .description = "data",
39107         .field_bit_size = 16,
39108         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39109         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39110         .field_opr1 = {
39111         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
39112         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
39113         },
39114         {
39115         .description = "strength",
39116         .field_bit_size = 2,
39117         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39118         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39119         .field_opr1 = {
39120         1}
39121         },
39122         /* class_tid: 3, , table: fkb_select.l2_l3_l4_v6_em */
39123         {
39124         .description = "l2_cntxt_id.en",
39125         .field_bit_size = 1,
39126         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39127         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39128         .field_opr1 = {
39129         1}
39130         },
39131         {
39132         .description = "parif.en",
39133         .field_bit_size = 1,
39134         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39135         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39136         },
39137         {
39138         .description = "spif.en",
39139         .field_bit_size = 1,
39140         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39141         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39142         },
39143         {
39144         .description = "svif.en",
39145         .field_bit_size = 1,
39146         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39147         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39148         },
39149         {
39150         .description = "lcos.en",
39151         .field_bit_size = 1,
39152         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39153         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39154         },
39155         {
39156         .description = "meta.en",
39157         .field_bit_size = 1,
39158         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39159         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39160         },
39161         {
39162         .description = "rcyc_cnt.en",
39163         .field_bit_size = 1,
39164         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39165         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39166         },
39167         {
39168         .description = "loopback.en",
39169         .field_bit_size = 1,
39170         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39171         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39172         },
39173         {
39174         .description = "tl2_l2type.en",
39175         .field_bit_size = 1,
39176         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39177         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39178         },
39179         {
39180         .description = "tl2_dmac.en",
39181         .field_bit_size = 1,
39182         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39183         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39184         },
39185         {
39186         .description = "tl2_smac.en",
39187         .field_bit_size = 1,
39188         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39189         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39190         },
39191         {
39192         .description = "tl2_dt.en",
39193         .field_bit_size = 1,
39194         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39195         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39196         },
39197         {
39198         .description = "tl2_sa.en",
39199         .field_bit_size = 1,
39200         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39201         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39202         },
39203         {
39204         .description = "tl2_nvt.en",
39205         .field_bit_size = 1,
39206         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39207         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39208         },
39209         {
39210         .description = "tl2_ovp.en",
39211         .field_bit_size = 1,
39212         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39213         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39214         },
39215         {
39216         .description = "tl2_ovd.en",
39217         .field_bit_size = 1,
39218         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39219         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39220         },
39221         {
39222         .description = "tl2_ovv.en",
39223         .field_bit_size = 1,
39224         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39225         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39226         },
39227         {
39228         .description = "tl2_ovt.en",
39229         .field_bit_size = 1,
39230         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39231         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39232         },
39233         {
39234         .description = "tl2_ivp.en",
39235         .field_bit_size = 1,
39236         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39237         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39238         },
39239         {
39240         .description = "tl2_ivd.en",
39241         .field_bit_size = 1,
39242         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39243         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39244         },
39245         {
39246         .description = "tl2_ivv.en",
39247         .field_bit_size = 1,
39248         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39249         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39250         },
39251         {
39252         .description = "tl2_ivt.en",
39253         .field_bit_size = 1,
39254         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39255         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39256         },
39257         {
39258         .description = "tl2_etype.en",
39259         .field_bit_size = 1,
39260         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39261         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39262         },
39263         {
39264         .description = "tl3_l3type.en",
39265         .field_bit_size = 1,
39266         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39267         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39268         },
39269         {
39270         .description = "tl3_sip.en",
39271         .field_bit_size = 1,
39272         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39273         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39274         },
39275         {
39276         .description = "tl3_sip_selcmp.en",
39277         .field_bit_size = 1,
39278         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39279         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39280         },
39281         {
39282         .description = "tl3_dip.en",
39283         .field_bit_size = 1,
39284         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39285         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39286         },
39287         {
39288         .description = "tl3_dip_selcmp.en",
39289         .field_bit_size = 1,
39290         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39291         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39292         },
39293         {
39294         .description = "tl3_ttl.en",
39295         .field_bit_size = 1,
39296         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39297         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39298         },
39299         {
39300         .description = "tl3_prot.en",
39301         .field_bit_size = 1,
39302         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39303         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39304         },
39305         {
39306         .description = "tl3_fid.en",
39307         .field_bit_size = 1,
39308         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39309         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39310         },
39311         {
39312         .description = "tl3_qos.en",
39313         .field_bit_size = 1,
39314         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39315         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39316         },
39317         {
39318         .description = "tl3_ieh_nonext.en",
39319         .field_bit_size = 1,
39320         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39321         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39322         },
39323         {
39324         .description = "tl3_ieh_esp.en",
39325         .field_bit_size = 1,
39326         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39327         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39328         },
39329         {
39330         .description = "tl3_ieh_auth.en",
39331         .field_bit_size = 1,
39332         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39333         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39334         },
39335         {
39336         .description = "tl3_ieh_dest.en",
39337         .field_bit_size = 1,
39338         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39339         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39340         },
39341         {
39342         .description = "tl3_ieh_frag.en",
39343         .field_bit_size = 1,
39344         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39345         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39346         },
39347         {
39348         .description = "tl3_ieh_rthdr.en",
39349         .field_bit_size = 1,
39350         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39351         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39352         },
39353         {
39354         .description = "tl3_ieh_hop.en",
39355         .field_bit_size = 1,
39356         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39357         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39358         },
39359         {
39360         .description = "tl3_ieh_1frag.en",
39361         .field_bit_size = 1,
39362         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39363         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39364         },
39365         {
39366         .description = "tl3_df.en",
39367         .field_bit_size = 1,
39368         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39369         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39370         },
39371         {
39372         .description = "tl3_l3err.en",
39373         .field_bit_size = 1,
39374         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39375         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39376         },
39377         {
39378         .description = "tl4_l4type.en",
39379         .field_bit_size = 1,
39380         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39381         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39382         },
39383         {
39384         .description = "tl4_src.en",
39385         .field_bit_size = 1,
39386         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39387         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39388         },
39389         {
39390         .description = "tl4_dst.en",
39391         .field_bit_size = 1,
39392         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39393         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39394         },
39395         {
39396         .description = "tl4_flags.en",
39397         .field_bit_size = 1,
39398         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39399         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39400         },
39401         {
39402         .description = "tl4_seq.en",
39403         .field_bit_size = 1,
39404         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39405         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39406         },
39407         {
39408         .description = "tl4_pa.en",
39409         .field_bit_size = 1,
39410         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39411         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39412         },
39413         {
39414         .description = "tl4_opt.en",
39415         .field_bit_size = 1,
39416         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39417         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39418         },
39419         {
39420         .description = "tl4_tcpts.en",
39421         .field_bit_size = 1,
39422         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39423         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39424         },
39425         {
39426         .description = "tl4_err.en",
39427         .field_bit_size = 1,
39428         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39429         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39430         },
39431         {
39432         .description = "tuntype.en",
39433         .field_bit_size = 1,
39434         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39435         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39436         },
39437         {
39438         .description = "tflags.en",
39439         .field_bit_size = 1,
39440         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39441         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39442         },
39443         {
39444         .description = "tids.en",
39445         .field_bit_size = 1,
39446         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39447         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39448         },
39449         {
39450         .description = "tid.en",
39451         .field_bit_size = 1,
39452         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39453         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39454         },
39455         {
39456         .description = "tctxts.en",
39457         .field_bit_size = 1,
39458         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39459         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39460         },
39461         {
39462         .description = "tctxt.en",
39463         .field_bit_size = 1,
39464         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39465         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39466         },
39467         {
39468         .description = "tqos.en",
39469         .field_bit_size = 1,
39470         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39471         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39472         },
39473         {
39474         .description = "terr.en",
39475         .field_bit_size = 1,
39476         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39477         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39478         },
39479         {
39480         .description = "l2_l2type.en",
39481         .field_bit_size = 1,
39482         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39483         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39484         },
39485         {
39486         .description = "l2_dmac.en",
39487         .field_bit_size = 1,
39488         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39489         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
39490         .field_opr1 = {
39491         (BNXT_ULP_GLB_HF_ID_O_ETH_DMAC >> 8) & 0xff,
39492         BNXT_ULP_GLB_HF_ID_O_ETH_DMAC & 0xff}
39493         },
39494         {
39495         .description = "l2_smac.en",
39496         .field_bit_size = 1,
39497         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39498         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
39499         .field_opr1 = {
39500         (BNXT_ULP_GLB_HF_ID_O_ETH_SMAC >> 8) & 0xff,
39501         BNXT_ULP_GLB_HF_ID_O_ETH_SMAC & 0xff}
39502         },
39503         {
39504         .description = "l2_dt.en",
39505         .field_bit_size = 1,
39506         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39507         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39508         },
39509         {
39510         .description = "l2_sa.en",
39511         .field_bit_size = 1,
39512         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39513         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39514         },
39515         {
39516         .description = "l2_nvt.en",
39517         .field_bit_size = 1,
39518         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39519         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39520         },
39521         {
39522         .description = "l2_ovp.en",
39523         .field_bit_size = 1,
39524         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39525         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39526         },
39527         {
39528         .description = "l2_ovd.en",
39529         .field_bit_size = 1,
39530         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39531         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39532         },
39533         {
39534         .description = "l2_ovv.en",
39535         .field_bit_size = 1,
39536         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39537         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39538         },
39539         {
39540         .description = "l2_ovt.en",
39541         .field_bit_size = 1,
39542         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39543         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39544         },
39545         {
39546         .description = "l2_ivp.en",
39547         .field_bit_size = 1,
39548         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39549         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39550         },
39551         {
39552         .description = "l2_ivd.en",
39553         .field_bit_size = 1,
39554         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39555         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39556         },
39557         {
39558         .description = "l2_ivv.en",
39559         .field_bit_size = 1,
39560         .field_opc = BNXT_ULP_FIELD_OPC_SRC1_THEN_SRC2_ELSE_SRC3,
39561         .field_src1 = BNXT_ULP_FIELD_SRC_HDR_BIT,
39562         .field_opr1 = {
39563         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 56) & 0xff,
39564         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 48) & 0xff,
39565         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 40) & 0xff,
39566         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 32) & 0xff,
39567         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 24) & 0xff,
39568         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 16) & 0xff,
39569         ((uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN >> 8) & 0xff,
39570         (uint64_t)BNXT_ULP_HDR_BIT_OO_VLAN & 0xff},
39571         .field_src2 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
39572         .field_opr2 = {
39573                 (BNXT_ULP_GLB_HF_ID_OO_VLAN_VID >> 8) & 0xff,
39574                 BNXT_ULP_GLB_HF_ID_OO_VLAN_VID & 0xff},
39575         .field_src3 = BNXT_ULP_FIELD_SRC_ZERO
39576         },
39577         {
39578         .description = "l2_ivt.en",
39579         .field_bit_size = 1,
39580         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39581         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39582         },
39583         {
39584         .description = "l2_etype.en",
39585         .field_bit_size = 1,
39586         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39587         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39588         },
39589         {
39590         .description = "l3_l3type.en",
39591         .field_bit_size = 1,
39592         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39593         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39594         },
39595         {
39596         .description = "l3_sip.en",
39597         .field_bit_size = 1,
39598         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39599         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
39600         .field_opr1 = {
39601         (BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR >> 8) & 0xff,
39602         BNXT_ULP_GLB_HF_ID_O_IPV6_SRC_ADDR & 0xff}
39603         },
39604         {
39605         .description = "l3_sip_selcmp.en",
39606         .field_bit_size = 1,
39607         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39608         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39609         },
39610         {
39611         .description = "l3_dip.en",
39612         .field_bit_size = 1,
39613         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39614         .field_src1 = BNXT_ULP_FIELD_SRC_FIELD_BIT,
39615         .field_opr1 = {
39616         (BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR >> 8) & 0xff,
39617         BNXT_ULP_GLB_HF_ID_O_IPV6_DST_ADDR & 0xff}
39618         },
39619         {
39620         .description = "l3_dip_selcmp.en",
39621         .field_bit_size = 1,
39622         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39623         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39624         },
39625         {
39626         .description = "l3_ttl.en",
39627         .field_bit_size = 1,
39628         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39629         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39630         },
39631         {
39632         .description = "l3_prot.en",
39633         .field_bit_size = 1,
39634         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39635         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
39636         .field_opr1 = {
39637         (BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID >> 8) & 0xff,
39638         BNXT_ULP_CF_IDX_O_L3_FB_PROTO_ID & 0xff}
39639         },
39640         {
39641         .description = "l3_fid.en",
39642         .field_bit_size = 1,
39643         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39644         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39645         },
39646         {
39647         .description = "l3_qos.en",
39648         .field_bit_size = 1,
39649         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39650         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39651         },
39652         {
39653         .description = "l3_ieh_nonext.en",
39654         .field_bit_size = 1,
39655         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39656         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39657         },
39658         {
39659         .description = "l3_ieh_esp.en",
39660         .field_bit_size = 1,
39661         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39662         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39663         },
39664         {
39665         .description = "l3_ieh_auth.en",
39666         .field_bit_size = 1,
39667         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39668         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39669         },
39670         {
39671         .description = "l3_ieh_dest.en",
39672         .field_bit_size = 1,
39673         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39674         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39675         },
39676         {
39677         .description = "l3_ieh_frag.en",
39678         .field_bit_size = 1,
39679         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39680         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39681         },
39682         {
39683         .description = "l3_ieh_rthdr.en",
39684         .field_bit_size = 1,
39685         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39686         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39687         },
39688         {
39689         .description = "l3_ieh_hop.en",
39690         .field_bit_size = 1,
39691         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39692         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39693         },
39694         {
39695         .description = "l3_ieh_1frag.en",
39696         .field_bit_size = 1,
39697         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39698         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39699         },
39700         {
39701         .description = "l3_df.en",
39702         .field_bit_size = 1,
39703         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39704         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39705         },
39706         {
39707         .description = "l3_l3err.en",
39708         .field_bit_size = 1,
39709         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39710         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39711         },
39712         {
39713         .description = "l4_l4type.en",
39714         .field_bit_size = 1,
39715         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39716         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39717         },
39718         {
39719         .description = "l4_src.en",
39720         .field_bit_size = 1,
39721         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39722         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
39723         .field_opr1 = {
39724         (BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT >> 8) & 0xff,
39725         BNXT_ULP_CF_IDX_O_L4_FB_SRC_PORT & 0xff}
39726         },
39727         {
39728         .description = "l4_dst.en",
39729         .field_bit_size = 1,
39730         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39731         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
39732         .field_opr1 = {
39733         (BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT >> 8) & 0xff,
39734         BNXT_ULP_CF_IDX_O_L4_FB_DST_PORT & 0xff}
39735         },
39736         {
39737         .description = "l4_flags.en",
39738         .field_bit_size = 1,
39739         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39740         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39741         },
39742         {
39743         .description = "l4_seq.en",
39744         .field_bit_size = 1,
39745         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39746         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39747         },
39748         {
39749         .description = "l4_ack.en",
39750         .field_bit_size = 1,
39751         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39752         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39753         },
39754         {
39755         .description = "l4_win.en",
39756         .field_bit_size = 1,
39757         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39758         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39759         },
39760         {
39761         .description = "l4_pa.en",
39762         .field_bit_size = 1,
39763         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39764         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39765         },
39766         {
39767         .description = "l4_opt.en",
39768         .field_bit_size = 1,
39769         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39770         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39771         },
39772         {
39773         .description = "l4_tcpts.en",
39774         .field_bit_size = 1,
39775         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39776         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39777         },
39778         {
39779         .description = "l4_tsval.en",
39780         .field_bit_size = 1,
39781         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39782         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39783         },
39784         {
39785         .description = "l4_txecr.en",
39786         .field_bit_size = 1,
39787         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39788         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39789         },
39790         {
39791         .description = "l4_err.en",
39792         .field_bit_size = 1,
39793         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39794         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39795         },
39796         /* class_tid: 3, , table: profile_tcam.l2_l3_l4_v6_em */
39797         {
39798         .description = "wc_key_id",
39799         .field_bit_size = 6,
39800         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39801         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39802         },
39803         {
39804         .description = "wc_profile_id",
39805         .field_bit_size = 8,
39806         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39807         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39808         },
39809         {
39810         .description = "wc_search_en",
39811         .field_bit_size = 1,
39812         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39813         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39814         },
39815         {
39816         .description = "em_key_type",
39817         .field_bit_size = 2,
39818         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39819         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39820         },
39821         {
39822         .description = "em_key_id",
39823         .field_bit_size = 6,
39824         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39825         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39826         .field_opr1 = {
39827         (BNXT_ULP_RF_IDX_EM_KEY_ID_0 >> 8) & 0xff,
39828         BNXT_ULP_RF_IDX_EM_KEY_ID_0 & 0xff}
39829         },
39830         {
39831         .description = "em_profile_id",
39832         .field_bit_size = 8,
39833         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39834         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39835         .field_opr1 = {
39836         (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
39837         BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
39838         },
39839         {
39840         .description = "em_search_en",
39841         .field_bit_size = 1,
39842         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39843         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39844         .field_opr1 = {
39845         1}
39846         },
39847         {
39848         .description = "pl_byp_lkup_en",
39849         .field_bit_size = 1,
39850         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39851         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39852         },
39853         /* class_tid: 3, , table: profile_tcam_cache.l2_l3_l4_v6_wr */
39854         {
39855         .description = "rid",
39856         .field_bit_size = 32,
39857         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39858         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39859         .field_opr1 = {
39860         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
39861         BNXT_ULP_RF_IDX_RID & 0xff}
39862         },
39863         {
39864         .description = "profile_tcam_index",
39865         .field_bit_size = 10,
39866         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39867         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39868         .field_opr1 = {
39869         (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
39870         BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
39871         },
39872         {
39873         .description = "em_profile_id",
39874         .field_bit_size = 8,
39875         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39876         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39877         .field_opr1 = {
39878         (BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 >> 8) & 0xff,
39879         BNXT_ULP_RF_IDX_EM_PROFILE_ID_0 & 0xff}
39880         },
39881         {
39882         .description = "em_key_id",
39883         .field_bit_size = 8,
39884         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39885         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39886         .field_opr1 = {
39887         (BNXT_ULP_RF_IDX_EM_KEY_ID_0 >> 8) & 0xff,
39888         BNXT_ULP_RF_IDX_EM_KEY_ID_0 & 0xff}
39889         },
39890         {
39891         .description = "wc_profile_id",
39892         .field_bit_size = 8,
39893         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39894         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39895         },
39896         {
39897         .description = "wc_key_id",
39898         .field_bit_size = 8,
39899         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39900         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39901         },
39902         {
39903         .description = "flow_sig_id",
39904         .field_bit_size = 64,
39905         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39906         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
39907         .field_opr1 = {
39908         (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
39909         BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
39910         },
39911         /* class_tid: 3, , table: em.l2_l3_l4_v6.0 */
39912         {
39913         .description = "valid",
39914         .field_bit_size = 1,
39915         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39916         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39917         .field_opr1 = {
39918         1}
39919         },
39920         {
39921         .description = "strength",
39922         .field_bit_size = 2,
39923         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39924         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39925         .field_opr1 = {
39926         3}
39927         },
39928         {
39929         .description = "data",
39930         .field_bit_size = 16,
39931         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39932         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
39933         .field_opr1 = {
39934         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
39935         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
39936         },
39937         {
39938         .description = "opcode",
39939         .field_bit_size = 3,
39940         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39941         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39942         },
39943         {
39944         .description = "meta_prof",
39945         .field_bit_size = 3,
39946         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39947         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39948         },
39949         {
39950         .description = "ctxt_data",
39951         .field_bit_size = 14,
39952         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39953         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39954         },
39955         /* class_tid: 3, , table: fkb_select.l3_l4_wc */
39956         {
39957         .description = "l2_cntxt_id.en",
39958         .field_bit_size = 1,
39959         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39960         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
39961         .field_opr1 = {
39962         1}
39963         },
39964         {
39965         .description = "parif.en",
39966         .field_bit_size = 1,
39967         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39968         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39969         },
39970         {
39971         .description = "spif.en",
39972         .field_bit_size = 1,
39973         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39974         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39975         },
39976         {
39977         .description = "svif.en",
39978         .field_bit_size = 1,
39979         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39980         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39981         },
39982         {
39983         .description = "lcos.en",
39984         .field_bit_size = 1,
39985         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39986         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39987         },
39988         {
39989         .description = "meta.en",
39990         .field_bit_size = 1,
39991         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39992         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39993         },
39994         {
39995         .description = "rcyc_cnt.en",
39996         .field_bit_size = 1,
39997         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
39998         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
39999         },
40000         {
40001         .description = "loopback.en",
40002         .field_bit_size = 1,
40003         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40004         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40005         },
40006         {
40007         .description = "tl2_l2type.en",
40008         .field_bit_size = 1,
40009         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40010         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40011         },
40012         {
40013         .description = "tl2_dmac.en",
40014         .field_bit_size = 1,
40015         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40016         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40017         },
40018         {
40019         .description = "tl2_smac.en",
40020         .field_bit_size = 1,
40021         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40022         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40023         },
40024         {
40025         .description = "tl2_dt.en",
40026         .field_bit_size = 1,
40027         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40028         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40029         },
40030         {
40031         .description = "tl2_sa.en",
40032         .field_bit_size = 1,
40033         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40034         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40035         },
40036         {
40037         .description = "tl2_nvt.en",
40038         .field_bit_size = 1,
40039         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40040         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40041         },
40042         {
40043         .description = "tl2_ovp.en",
40044         .field_bit_size = 1,
40045         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40046         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40047         },
40048         {
40049         .description = "tl2_ovd.en",
40050         .field_bit_size = 1,
40051         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40052         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40053         },
40054         {
40055         .description = "tl2_ovv.en",
40056         .field_bit_size = 1,
40057         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40058         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40059         },
40060         {
40061         .description = "tl2_ovt.en",
40062         .field_bit_size = 1,
40063         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40064         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40065         },
40066         {
40067         .description = "tl2_ivp.en",
40068         .field_bit_size = 1,
40069         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40070         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40071         },
40072         {
40073         .description = "tl2_ivd.en",
40074         .field_bit_size = 1,
40075         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40076         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40077         },
40078         {
40079         .description = "tl2_ivv.en",
40080         .field_bit_size = 1,
40081         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40082         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40083         },
40084         {
40085         .description = "tl2_ivt.en",
40086         .field_bit_size = 1,
40087         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40088         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40089         },
40090         {
40091         .description = "tl2_etype.en",
40092         .field_bit_size = 1,
40093         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40094         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40095         },
40096         {
40097         .description = "tl3_l3type.en",
40098         .field_bit_size = 1,
40099         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40100         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40101         },
40102         {
40103         .description = "tl3_sip.en",
40104         .field_bit_size = 1,
40105         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40106         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40107         },
40108         {
40109         .description = "tl3_sip_selcmp.en",
40110         .field_bit_size = 1,
40111         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40112         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40113         },
40114         {
40115         .description = "tl3_dip.en",
40116         .field_bit_size = 1,
40117         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40118         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40119         },
40120         {
40121         .description = "tl3_dip_selcmp.en",
40122         .field_bit_size = 1,
40123         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40124         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40125         },
40126         {
40127         .description = "tl3_ttl.en",
40128         .field_bit_size = 1,
40129         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40130         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40131         },
40132         {
40133         .description = "tl3_prot.en",
40134         .field_bit_size = 1,
40135         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40136         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40137         },
40138         {
40139         .description = "tl3_fid.en",
40140         .field_bit_size = 1,
40141         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40142         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40143         },
40144         {
40145         .description = "tl3_qos.en",
40146         .field_bit_size = 1,
40147         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40148         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40149         },
40150         {
40151         .description = "tl3_ieh_nonext.en",
40152         .field_bit_size = 1,
40153         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40154         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40155         },
40156         {
40157         .description = "tl3_ieh_esp.en",
40158         .field_bit_size = 1,
40159         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40160         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40161         },
40162         {
40163         .description = "tl3_ieh_auth.en",
40164         .field_bit_size = 1,
40165         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40166         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40167         },
40168         {
40169         .description = "tl3_ieh_dest.en",
40170         .field_bit_size = 1,
40171         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40172         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40173         },
40174         {
40175         .description = "tl3_ieh_frag.en",
40176         .field_bit_size = 1,
40177         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40178         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40179         },
40180         {
40181         .description = "tl3_ieh_rthdr.en",
40182         .field_bit_size = 1,
40183         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40184         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40185         },
40186         {
40187         .description = "tl3_ieh_hop.en",
40188         .field_bit_size = 1,
40189         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40190         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40191         },
40192         {
40193         .description = "tl3_ieh_1frag.en",
40194         .field_bit_size = 1,
40195         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40196         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40197         },
40198         {
40199         .description = "tl3_df.en",
40200         .field_bit_size = 1,
40201         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40202         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40203         },
40204         {
40205         .description = "tl3_l3err.en",
40206         .field_bit_size = 1,
40207         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40208         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40209         },
40210         {
40211         .description = "tl4_l4type.en",
40212         .field_bit_size = 1,
40213         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40214         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40215         },
40216         {
40217         .description = "tl4_src.en",
40218         .field_bit_size = 1,
40219         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40220         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40221         },
40222         {
40223         .description = "tl4_dst.en",
40224         .field_bit_size = 1,
40225         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40226         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40227         },
40228         {
40229         .description = "tl4_flags.en",
40230         .field_bit_size = 1,
40231         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40232         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40233         },
40234         {
40235         .description = "tl4_seq.en",
40236         .field_bit_size = 1,
40237         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40238         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40239         },
40240         {
40241         .description = "tl4_pa.en",
40242         .field_bit_size = 1,
40243         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40244         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40245         },
40246         {
40247         .description = "tl4_opt.en",
40248         .field_bit_size = 1,
40249         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40250         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40251         },
40252         {
40253         .description = "tl4_tcpts.en",
40254         .field_bit_size = 1,
40255         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40256         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40257         },
40258         {
40259         .description = "tl4_err.en",
40260         .field_bit_size = 1,
40261         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40262         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40263         },
40264         {
40265         .description = "tuntype.en",
40266         .field_bit_size = 1,
40267         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40268         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40269         },
40270         {
40271         .description = "tflags.en",
40272         .field_bit_size = 1,
40273         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40274         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40275         },
40276         {
40277         .description = "tids.en",
40278         .field_bit_size = 1,
40279         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40280         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40281         },
40282         {
40283         .description = "tid.en",
40284         .field_bit_size = 1,
40285         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40286         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40287         },
40288         {
40289         .description = "tctxts.en",
40290         .field_bit_size = 1,
40291         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40292         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40293         },
40294         {
40295         .description = "tctxt.en",
40296         .field_bit_size = 1,
40297         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40298         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40299         },
40300         {
40301         .description = "tqos.en",
40302         .field_bit_size = 1,
40303         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40304         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40305         },
40306         {
40307         .description = "terr.en",
40308         .field_bit_size = 1,
40309         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40310         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40311         },
40312         {
40313         .description = "l2_l2type.en",
40314         .field_bit_size = 1,
40315         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40316         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40317         },
40318         {
40319         .description = "l2_dmac.en",
40320         .field_bit_size = 1,
40321         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40322         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40323         .field_opr1 = {
40324         1}
40325         },
40326         {
40327         .description = "l2_smac.en",
40328         .field_bit_size = 1,
40329         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40330         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40331         .field_opr1 = {
40332         1}
40333         },
40334         {
40335         .description = "l2_dt.en",
40336         .field_bit_size = 1,
40337         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40338         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40339         },
40340         {
40341         .description = "l2_sa.en",
40342         .field_bit_size = 1,
40343         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40344         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40345         },
40346         {
40347         .description = "l2_nvt.en",
40348         .field_bit_size = 1,
40349         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40350         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40351         },
40352         {
40353         .description = "l2_ovp.en",
40354         .field_bit_size = 1,
40355         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40356         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40357         },
40358         {
40359         .description = "l2_ovd.en",
40360         .field_bit_size = 1,
40361         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40362         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40363         },
40364         {
40365         .description = "l2_ovv.en",
40366         .field_bit_size = 1,
40367         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40368         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40369         },
40370         {
40371         .description = "l2_ovt.en",
40372         .field_bit_size = 1,
40373         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40374         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40375         },
40376         {
40377         .description = "l2_ivp.en",
40378         .field_bit_size = 1,
40379         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40380         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40381         },
40382         {
40383         .description = "l2_ivd.en",
40384         .field_bit_size = 1,
40385         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40386         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40387         },
40388         {
40389         .description = "l2_ivv.en",
40390         .field_bit_size = 1,
40391         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40392         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40393         .field_opr1 = {
40394         1}
40395         },
40396         {
40397         .description = "l2_ivt.en",
40398         .field_bit_size = 1,
40399         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40400         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40401         },
40402         {
40403         .description = "l2_etype.en",
40404         .field_bit_size = 1,
40405         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40406         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40407         },
40408         {
40409         .description = "l3_l3type.en",
40410         .field_bit_size = 1,
40411         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40412         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40413         },
40414         {
40415         .description = "l3_sip.en",
40416         .field_bit_size = 1,
40417         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40418         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40419         .field_opr1 = {
40420         1}
40421         },
40422         {
40423         .description = "l3_sip_selcmp.en",
40424         .field_bit_size = 1,
40425         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40426         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40427         },
40428         {
40429         .description = "l3_dip.en",
40430         .field_bit_size = 1,
40431         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40432         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40433         .field_opr1 = {
40434         1}
40435         },
40436         {
40437         .description = "l3_dip_selcmp.en",
40438         .field_bit_size = 1,
40439         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40440         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40441         },
40442         {
40443         .description = "l3_ttl.en",
40444         .field_bit_size = 1,
40445         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40446         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40447         },
40448         {
40449         .description = "l3_prot.en",
40450         .field_bit_size = 1,
40451         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40452         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40453         .field_opr1 = {
40454         1}
40455         },
40456         {
40457         .description = "l3_fid.en",
40458         .field_bit_size = 1,
40459         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40460         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40461         },
40462         {
40463         .description = "l3_qos.en",
40464         .field_bit_size = 1,
40465         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40466         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40467         },
40468         {
40469         .description = "l3_ieh_nonext.en",
40470         .field_bit_size = 1,
40471         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40472         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40473         },
40474         {
40475         .description = "l3_ieh_esp.en",
40476         .field_bit_size = 1,
40477         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40478         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40479         },
40480         {
40481         .description = "l3_ieh_auth.en",
40482         .field_bit_size = 1,
40483         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40484         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40485         },
40486         {
40487         .description = "l3_ieh_dest.en",
40488         .field_bit_size = 1,
40489         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40490         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40491         },
40492         {
40493         .description = "l3_ieh_frag.en",
40494         .field_bit_size = 1,
40495         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40496         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40497         },
40498         {
40499         .description = "l3_ieh_rthdr.en",
40500         .field_bit_size = 1,
40501         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40502         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40503         },
40504         {
40505         .description = "l3_ieh_hop.en",
40506         .field_bit_size = 1,
40507         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40508         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40509         },
40510         {
40511         .description = "l3_ieh_1frag.en",
40512         .field_bit_size = 1,
40513         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40514         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40515         },
40516         {
40517         .description = "l3_df.en",
40518         .field_bit_size = 1,
40519         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40520         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40521         },
40522         {
40523         .description = "l3_l3err.en",
40524         .field_bit_size = 1,
40525         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40526         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40527         },
40528         {
40529         .description = "l4_l4type.en",
40530         .field_bit_size = 1,
40531         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40532         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40533         },
40534         {
40535         .description = "l4_src.en",
40536         .field_bit_size = 1,
40537         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40538         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40539         .field_opr1 = {
40540         1}
40541         },
40542         {
40543         .description = "l4_dst.en",
40544         .field_bit_size = 1,
40545         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40546         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40547         .field_opr1 = {
40548         1}
40549         },
40550         {
40551         .description = "l4_flags.en",
40552         .field_bit_size = 1,
40553         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40554         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40555         },
40556         {
40557         .description = "l4_seq.en",
40558         .field_bit_size = 1,
40559         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40560         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40561         },
40562         {
40563         .description = "l4_ack.en",
40564         .field_bit_size = 1,
40565         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40566         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40567         },
40568         {
40569         .description = "l4_win.en",
40570         .field_bit_size = 1,
40571         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40572         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40573         },
40574         {
40575         .description = "l4_pa.en",
40576         .field_bit_size = 1,
40577         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40578         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40579         },
40580         {
40581         .description = "l4_opt.en",
40582         .field_bit_size = 1,
40583         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40584         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40585         },
40586         {
40587         .description = "l4_tcpts.en",
40588         .field_bit_size = 1,
40589         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40590         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40591         },
40592         {
40593         .description = "l4_tsval.en",
40594         .field_bit_size = 1,
40595         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40596         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40597         },
40598         {
40599         .description = "l4_txecr.en",
40600         .field_bit_size = 1,
40601         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40602         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40603         },
40604         {
40605         .description = "l4_err.en",
40606         .field_bit_size = 1,
40607         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40608         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40609         },
40610         /* class_tid: 3, , table: profile_tcam.l3_l4.ip */
40611         {
40612         .description = "wc_key_id",
40613         .field_bit_size = 6,
40614         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40615         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
40616         .field_opr1 = {
40617         (BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1 >> 8) & 0xff,
40618         BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1 & 0xff}
40619         },
40620         {
40621         .description = "wc_profile_id",
40622         .field_bit_size = 8,
40623         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40624         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
40625         .field_opr1 = {
40626         (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
40627         BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
40628         },
40629         {
40630         .description = "wc_search_en",
40631         .field_bit_size = 1,
40632         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40633         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40634         .field_opr1 = {
40635         1}
40636         },
40637         {
40638         .description = "em_key_type",
40639         .field_bit_size = 2,
40640         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40641         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40642         },
40643         {
40644         .description = "em_key_id",
40645         .field_bit_size = 6,
40646         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40647         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40648         },
40649         {
40650         .description = "em_profile_id",
40651         .field_bit_size = 8,
40652         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40653         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40654         },
40655         {
40656         .description = "em_search_en",
40657         .field_bit_size = 1,
40658         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40659         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40660         },
40661         {
40662         .description = "pl_byp_lkup_en",
40663         .field_bit_size = 1,
40664         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40665         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40666         },
40667         /* class_tid: 3, , table: profile_tcam.l3_l4.nonip */
40668         {
40669         .description = "wc_key_id",
40670         .field_bit_size = 6,
40671         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40672         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
40673         .field_opr1 = {
40674         (BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1 >> 8) & 0xff,
40675         BNXT_ULP_GLB_RF_IDX_GLB_WC_KEY_ID_1 & 0xff}
40676         },
40677         {
40678         .description = "wc_profile_id",
40679         .field_bit_size = 8,
40680         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40681         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
40682         .field_opr1 = {
40683         (BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 >> 8) & 0xff,
40684         BNXT_ULP_GLB_RF_IDX_GLB_WC_PROFILE_ID_1 & 0xff}
40685         },
40686         {
40687         .description = "wc_search_en",
40688         .field_bit_size = 1,
40689         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40690         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40691         .field_opr1 = {
40692         1}
40693         },
40694         {
40695         .description = "em_key_type",
40696         .field_bit_size = 2,
40697         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40698         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40699         },
40700         {
40701         .description = "em_key_id",
40702         .field_bit_size = 6,
40703         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40704         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40705         },
40706         {
40707         .description = "em_profile_id",
40708         .field_bit_size = 8,
40709         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40710         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40711         },
40712         {
40713         .description = "em_search_en",
40714         .field_bit_size = 1,
40715         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40716         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40717         },
40718         {
40719         .description = "pl_byp_lkup_en",
40720         .field_bit_size = 1,
40721         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40722         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40723         },
40724         /* class_tid: 3, , table: profile_tcam_cache.wr */
40725         {
40726         .description = "rid",
40727         .field_bit_size = 32,
40728         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40729         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
40730         .field_opr1 = {
40731         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
40732         BNXT_ULP_RF_IDX_RID & 0xff}
40733         },
40734         {
40735         .description = "profile_tcam_index",
40736         .field_bit_size = 10,
40737         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40738         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
40739         .field_opr1 = {
40740         (BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 >> 8) & 0xff,
40741         BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0 & 0xff}
40742         },
40743         {
40744         .description = "em_profile_id",
40745         .field_bit_size = 8,
40746         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40747         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40748         },
40749         {
40750         .description = "em_key_id",
40751         .field_bit_size = 8,
40752         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40753         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40754         },
40755         {
40756         .description = "wc_profile_id",
40757         .field_bit_size = 8,
40758         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40759         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40760         },
40761         {
40762         .description = "wc_key_id",
40763         .field_bit_size = 8,
40764         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40765         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40766         },
40767         {
40768         .description = "flow_sig_id",
40769         .field_bit_size = 64,
40770         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40771         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
40772         .field_opr1 = {
40773         (BNXT_ULP_CF_IDX_FLOW_SIG_ID >> 8) & 0xff,
40774         BNXT_ULP_CF_IDX_FLOW_SIG_ID & 0xff}
40775         },
40776         /* class_tid: 3, , table: wm.l3_l4.ipv4 */
40777         {
40778         .description = "ctxt_data",
40779         .field_bit_size = 14,
40780         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40781         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40782         },
40783         {
40784         .description = "meta_prof",
40785         .field_bit_size = 3,
40786         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40787         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40788         },
40789         {
40790         .description = "opcode",
40791         .field_bit_size = 3,
40792         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40793         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40794         },
40795         {
40796         .description = "data",
40797         .field_bit_size = 16,
40798         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40799         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
40800         .field_opr1 = {
40801         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
40802         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
40803         },
40804         {
40805         .description = "strength",
40806         .field_bit_size = 2,
40807         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40808         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40809         .field_opr1 = {
40810         1}
40811         },
40812         /* class_tid: 3, , table: wm.l3.ipv4 */
40813         {
40814         .description = "ctxt_data",
40815         .field_bit_size = 14,
40816         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40817         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40818         },
40819         {
40820         .description = "meta_prof",
40821         .field_bit_size = 3,
40822         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40823         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40824         },
40825         {
40826         .description = "opcode",
40827         .field_bit_size = 3,
40828         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40829         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40830         },
40831         {
40832         .description = "data",
40833         .field_bit_size = 16,
40834         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40835         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
40836         .field_opr1 = {
40837         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
40838         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
40839         },
40840         {
40841         .description = "strength",
40842         .field_bit_size = 2,
40843         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40844         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40845         .field_opr1 = {
40846         1}
40847         },
40848         /* class_tid: 3, , table: wm.l2 */
40849         {
40850         .description = "ctxt_data",
40851         .field_bit_size = 14,
40852         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40853         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40854         },
40855         {
40856         .description = "meta_prof",
40857         .field_bit_size = 3,
40858         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40859         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40860         },
40861         {
40862         .description = "opcode",
40863         .field_bit_size = 3,
40864         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40865         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40866         },
40867         {
40868         .description = "data",
40869         .field_bit_size = 16,
40870         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40871         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
40872         .field_opr1 = {
40873         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
40874         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
40875         },
40876         {
40877         .description = "strength",
40878         .field_bit_size = 2,
40879         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40880         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40881         .field_opr1 = {
40882         1}
40883         },
40884         /* class_tid: 4, , table: int_full_act_record.0 */
40885         {
40886         .description = "sp_rec_ptr",
40887         .field_bit_size = 16,
40888         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40889         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40890         },
40891         {
40892         .description = "encap_ptr",
40893         .field_bit_size = 16,
40894         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40895         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40896         },
40897         {
40898         .description = "mod_rec_ptr",
40899         .field_bit_size = 16,
40900         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40901         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40902         },
40903         {
40904         .description = "rsvd1",
40905         .field_bit_size = 16,
40906         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40907         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40908         },
40909         {
40910         .description = "rsvd0",
40911         .field_bit_size = 8,
40912         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40913         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40914         },
40915         {
40916         .description = "decap_func",
40917         .field_bit_size = 5,
40918         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40919         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40920         },
40921         {
40922         .description = "meter",
40923         .field_bit_size = 10,
40924         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40925         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40926         },
40927         {
40928         .description = "stats_op",
40929         .field_bit_size = 1,
40930         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40931         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40932         .field_opr1 = {
40933         1}
40934         },
40935         {
40936         .description = "stats_ptr",
40937         .field_bit_size = 16,
40938         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40939         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40940         },
40941         {
40942         .description = "vnic_or_vport",
40943         .field_bit_size = 11,
40944         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40945         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
40946         .field_opr1 = {
40947         (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
40948         BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff}
40949         },
40950         {
40951         .description = "use_default",
40952         .field_bit_size = 1,
40953         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40954         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40955         },
40956         {
40957         .description = "mirror",
40958         .field_bit_size = 4,
40959         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40960         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40961         },
40962         {
40963         .description = "cond_copy",
40964         .field_bit_size = 1,
40965         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40966         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40967         },
40968         {
40969         .description = "vlan_del_rpt",
40970         .field_bit_size = 2,
40971         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40972         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40973         },
40974         {
40975         .description = "drop",
40976         .field_bit_size = 1,
40977         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40978         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40979         },
40980         {
40981         .description = "hit",
40982         .field_bit_size = 1,
40983         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40984         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
40985         },
40986         {
40987         .description = "type",
40988         .field_bit_size = 3,
40989         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40990         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
40991         .field_opr1 = {
40992         1}
40993         },
40994         /* class_tid: 4, , table: port_table.ing_wr_0 */
40995         {
40996         .description = "rid",
40997         .field_bit_size = 32,
40998         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
40999         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41000         },
41001         {
41002         .description = "drv_func.mac",
41003         .field_bit_size = 48,
41004         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41005         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41006         },
41007         {
41008         .description = "drv_func.parent.mac",
41009         .field_bit_size = 48,
41010         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41011         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41012         },
41013         {
41014         .description = "phy_port",
41015         .field_bit_size = 8,
41016         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41017         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41018         },
41019         {
41020         .description = "default_arec_ptr",
41021         .field_bit_size = 16,
41022         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41023         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41024         .field_opr1 = {
41025         (BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR >> 8) & 0xff,
41026         BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR & 0xff}
41027         },
41028         /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
41029         {
41030         .description = "prof_func_id",
41031         .field_bit_size = 7,
41032         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41033         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41034         .field_opr1 = {
41035         (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
41036         BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
41037         },
41038         {
41039         .description = "ctxt_meta_prof",
41040         .field_bit_size = 3,
41041         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41042         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41043         },
41044         {
41045         .description = "def_ctxt_data",
41046         .field_bit_size = 16,
41047         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41048         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41049         .field_opr1 = {
41050         (BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR >> 8) & 0xff,
41051         BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR & 0xff}
41052         },
41053         {
41054         .description = "ctxt_opcode",
41055         .field_bit_size = 3,
41056         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41057         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41058         .field_opr1 = {
41059         ULP_THOR_SYM_CTXT_OPCODE_NORMAL_FLOW}
41060         },
41061         {
41062         .description = "l2_cntxt_id",
41063         .field_bit_size = 10,
41064         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41065         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41066         .field_opr1 = {
41067         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
41068         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
41069         },
41070         {
41071         .description = "parif",
41072         .field_bit_size = 4,
41073         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41074         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
41075         .field_opr1 = {
41076         (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
41077         BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff}
41078         },
41079         /* class_tid: 4, , table: l2_cntxt_tcam_cache.ing_wr */
41080         {
41081         .description = "rid",
41082         .field_bit_size = 32,
41083         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41084         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41085         .field_opr1 = {
41086         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
41087         BNXT_ULP_RF_IDX_RID & 0xff}
41088         },
41089         {
41090         .description = "l2_cntxt_tcam_index",
41091         .field_bit_size = 10,
41092         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41093         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41094         .field_opr1 = {
41095         (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
41096         BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
41097         },
41098         {
41099         .description = "l2_cntxt_id",
41100         .field_bit_size = 10,
41101         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41102         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41103         .field_opr1 = {
41104         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
41105         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
41106         },
41107         {
41108         .description = "src_property_ptr",
41109         .field_bit_size = 10,
41110         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41111         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41112         },
41113         /* class_tid: 4, , table: parif_def_arec_ptr.ing_0 */
41114         {
41115         .description = "act_rec_ptr",
41116         .field_bit_size = 32,
41117         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41118         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41119         .field_opr1 = {
41120         (BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR >> 8) & 0xff,
41121         BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR & 0xff}
41122         },
41123         /* class_tid: 4, , table: parif_def_err_arec_ptr.ing_0 */
41124         {
41125         .description = "act_rec_ptr",
41126         .field_bit_size = 32,
41127         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41128         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41129         .field_opr1 = {
41130         (BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR >> 8) & 0xff,
41131         BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR & 0xff}
41132         },
41133         /* class_tid: 4, , table: int_full_act_record.egr_0 */
41134         {
41135         .description = "sp_rec_ptr",
41136         .field_bit_size = 16,
41137         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41138         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41139         },
41140         {
41141         .description = "encap_ptr",
41142         .field_bit_size = 16,
41143         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41144         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41145         },
41146         {
41147         .description = "mod_rec_ptr",
41148         .field_bit_size = 16,
41149         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41150         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41151         },
41152         {
41153         .description = "rsvd1",
41154         .field_bit_size = 16,
41155         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41156         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41157         },
41158         {
41159         .description = "rsvd0",
41160         .field_bit_size = 8,
41161         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41162         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41163         },
41164         {
41165         .description = "decap_func",
41166         .field_bit_size = 5,
41167         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41168         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41169         },
41170         {
41171         .description = "meter",
41172         .field_bit_size = 10,
41173         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41174         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41175         },
41176         {
41177         .description = "stats_op",
41178         .field_bit_size = 1,
41179         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41180         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41181         .field_opr1 = {
41182         1}
41183         },
41184         {
41185         .description = "stats_ptr",
41186         .field_bit_size = 16,
41187         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41188         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41189         },
41190         {
41191         .description = "vnic_or_vport",
41192         .field_bit_size = 11,
41193         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41194         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
41195         .field_opr1 = {
41196         (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
41197         BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff}
41198         },
41199         {
41200         .description = "use_default",
41201         .field_bit_size = 1,
41202         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41203         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41204         },
41205         {
41206         .description = "mirror",
41207         .field_bit_size = 4,
41208         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41209         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41210         },
41211         {
41212         .description = "cond_copy",
41213         .field_bit_size = 1,
41214         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41215         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41216         },
41217         {
41218         .description = "vlan_del_rpt",
41219         .field_bit_size = 2,
41220         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41221         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41222         },
41223         {
41224         .description = "drop",
41225         .field_bit_size = 1,
41226         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41227         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41228         },
41229         {
41230         .description = "hit",
41231         .field_bit_size = 1,
41232         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41233         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41234         },
41235         {
41236         .description = "type",
41237         .field_bit_size = 3,
41238         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41239         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41240         .field_opr1 = {
41241         1}
41242         },
41243         /* class_tid: 4, , table: port_table.egr_wr_0 */
41244         {
41245         .description = "rid",
41246         .field_bit_size = 32,
41247         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41248         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41249         },
41250         {
41251         .description = "drv_func.mac",
41252         .field_bit_size = 48,
41253         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41254         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41255         },
41256         {
41257         .description = "drv_func.parent.mac",
41258         .field_bit_size = 48,
41259         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41260         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41261         },
41262         {
41263         .description = "phy_port",
41264         .field_bit_size = 8,
41265         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41266         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41267         },
41268         {
41269         .description = "default_arec_ptr",
41270         .field_bit_size = 16,
41271         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41272         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41273         .field_opr1 = {
41274         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
41275         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
41276         },
41277         /* class_tid: 4, , table: ilt_tbl.egr_vfr */
41278         {
41279         .description = "ilt_destination",
41280         .field_bit_size = 16,
41281         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41282         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41283         },
41284         {
41285         .description = "act_rec_ptr",
41286         .field_bit_size = 16,
41287         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41288         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41289         },
41290         {
41291         .description = "fwd_op",
41292         .field_bit_size = 2,
41293         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41294         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41295         .field_opr1 = {
41296         ULP_THOR_SYM_FWD_OP_BYPASS_LKUP}
41297         },
41298         {
41299         .description = "en_ilt_dest",
41300         .field_bit_size = 1,
41301         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41302         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41303         },
41304         {
41305         .description = "en_bd_action",
41306         .field_bit_size = 1,
41307         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41308         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41309         .field_opr1 = {
41310         1}
41311         },
41312         {
41313         .description = "en_bd_meta",
41314         .field_bit_size = 1,
41315         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41316         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41317         },
41318         {
41319         .description = "parif",
41320         .field_bit_size = 4,
41321         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41322         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
41323         .field_opr1 = {
41324         (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
41325         BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
41326         },
41327         {
41328         .description = "reserved",
41329         .field_bit_size = 23,
41330         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41331         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41332         },
41333         /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr_vfr */
41334         {
41335         .description = "rid",
41336         .field_bit_size = 32,
41337         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41338         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41339         .field_opr1 = {
41340         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
41341         BNXT_ULP_RF_IDX_RID & 0xff}
41342         },
41343         {
41344         .description = "l2_cntxt_tcam_index",
41345         .field_bit_size = 10,
41346         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41347         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41348         },
41349         {
41350         .description = "l2_cntxt_id",
41351         .field_bit_size = 10,
41352         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41353         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41354         },
41355         {
41356         .description = "src_property_ptr",
41357         .field_bit_size = 10,
41358         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41359         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41360         },
41361         /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
41362         {
41363         .description = "prof_func_id",
41364         .field_bit_size = 7,
41365         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41366         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41367         .field_opr1 = {
41368         (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
41369         BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
41370         },
41371         {
41372         .description = "ctxt_meta_prof",
41373         .field_bit_size = 3,
41374         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41375         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41376         },
41377         {
41378         .description = "def_ctxt_data",
41379         .field_bit_size = 16,
41380         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41381         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41382         .field_opr1 = {
41383         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
41384         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
41385         },
41386         {
41387         .description = "ctxt_opcode",
41388         .field_bit_size = 3,
41389         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41390         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41391         .field_opr1 = {
41392         ULP_THOR_SYM_CTXT_OPCODE_NORMAL_FLOW}
41393         },
41394         {
41395         .description = "l2_cntxt_id",
41396         .field_bit_size = 10,
41397         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41398         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41399         .field_opr1 = {
41400         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
41401         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
41402         },
41403         {
41404         .description = "parif",
41405         .field_bit_size = 4,
41406         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41407         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
41408         .field_opr1 = {
41409         (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
41410         BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
41411         },
41412         /* class_tid: 4, , table: l2_cntxt_tcam_cache.egr_wr */
41413         {
41414         .description = "rid",
41415         .field_bit_size = 32,
41416         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41417         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41418         .field_opr1 = {
41419         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
41420         BNXT_ULP_RF_IDX_RID & 0xff}
41421         },
41422         {
41423         .description = "l2_cntxt_tcam_index",
41424         .field_bit_size = 10,
41425         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41426         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41427         .field_opr1 = {
41428         (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
41429         BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
41430         },
41431         {
41432         .description = "l2_cntxt_id",
41433         .field_bit_size = 10,
41434         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41435         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41436         .field_opr1 = {
41437         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
41438         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
41439         },
41440         {
41441         .description = "src_property_ptr",
41442         .field_bit_size = 10,
41443         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41444         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41445         },
41446         /* class_tid: 4, , table: parif_def_arec_ptr.egr_0 */
41447         {
41448         .description = "act_rec_ptr",
41449         .field_bit_size = 32,
41450         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41451         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41452         .field_opr1 = {
41453         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
41454         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
41455         },
41456         /* class_tid: 4, , table: parif_def_err_arec_ptr.egr_0 */
41457         {
41458         .description = "act_rec_ptr",
41459         .field_bit_size = 32,
41460         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41461         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41462         .field_opr1 = {
41463         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
41464         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
41465         },
41466         /* class_tid: 5, , table: int_full_act_record.loopback */
41467         {
41468         .description = "sp_rec_ptr",
41469         .field_bit_size = 16,
41470         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41471         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41472         },
41473         {
41474         .description = "encap_ptr",
41475         .field_bit_size = 16,
41476         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41477         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41478         },
41479         {
41480         .description = "mod_rec_ptr",
41481         .field_bit_size = 16,
41482         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41483         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41484         },
41485         {
41486         .description = "rsvd1",
41487         .field_bit_size = 16,
41488         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41489         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41490         },
41491         {
41492         .description = "rsvd0",
41493         .field_bit_size = 8,
41494         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41495         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41496         },
41497         {
41498         .description = "decap_func",
41499         .field_bit_size = 5,
41500         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41501         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41502         },
41503         {
41504         .description = "meter",
41505         .field_bit_size = 10,
41506         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41507         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41508         },
41509         {
41510         .description = "stats_op",
41511         .field_bit_size = 1,
41512         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41513         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41514         .field_opr1 = {
41515         1}
41516         },
41517         {
41518         .description = "stats_ptr",
41519         .field_bit_size = 16,
41520         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41521         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41522         },
41523         {
41524         .description = "vnic_or_vport",
41525         .field_bit_size = 11,
41526         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41527         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41528         .field_opr1 = {
41529         (ULP_THOR_SYM_LOOPBACK_PORT >> 8) & 0xff,
41530         ULP_THOR_SYM_LOOPBACK_PORT & 0xff}
41531         },
41532         {
41533         .description = "use_default",
41534         .field_bit_size = 1,
41535         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41536         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41537         },
41538         {
41539         .description = "mirror",
41540         .field_bit_size = 4,
41541         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41542         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41543         },
41544         {
41545         .description = "cond_copy",
41546         .field_bit_size = 1,
41547         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41548         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41549         },
41550         {
41551         .description = "vlan_del_rpt",
41552         .field_bit_size = 2,
41553         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41554         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41555         },
41556         {
41557         .description = "drop",
41558         .field_bit_size = 1,
41559         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41560         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41561         },
41562         {
41563         .description = "hit",
41564         .field_bit_size = 1,
41565         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41566         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41567         },
41568         {
41569         .description = "type",
41570         .field_bit_size = 3,
41571         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41572         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41573         .field_opr1 = {
41574         1}
41575         },
41576         /* class_tid: 5, , table: port_table.egr_wr */
41577         {
41578         .description = "rid",
41579         .field_bit_size = 32,
41580         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41581         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41582         },
41583         {
41584         .description = "drv_func.mac",
41585         .field_bit_size = 48,
41586         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41587         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41588         },
41589         {
41590         .description = "drv_func.parent.mac",
41591         .field_bit_size = 48,
41592         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41593         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41594         .field_opr1 = {
41595         (BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC >> 8) & 0xff,
41596         BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC & 0xff}
41597         },
41598         {
41599         .description = "phy_port",
41600         .field_bit_size = 8,
41601         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41602         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41603         },
41604         {
41605         .description = "default_arec_ptr",
41606         .field_bit_size = 16,
41607         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41608         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41609         .field_opr1 = {
41610         (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
41611         BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
41612         },
41613         /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
41614         {
41615         .description = "prof_func_id",
41616         .field_bit_size = 7,
41617         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41618         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41619         .field_opr1 = {
41620         (BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID >> 8) & 0xff,
41621         BNXT_ULP_GLB_RF_IDX_GLB_PROF_FUNC_ID & 0xff}
41622         },
41623         {
41624         .description = "ctxt_meta_prof",
41625         .field_bit_size = 3,
41626         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41627         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41628         },
41629         {
41630         .description = "def_ctxt_data",
41631         .field_bit_size = 16,
41632         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41633         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41634         .field_opr1 = {
41635         (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
41636         BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
41637         },
41638         {
41639         .description = "ctxt_opcode",
41640         .field_bit_size = 3,
41641         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41642         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41643         .field_opr1 = {
41644         ULP_THOR_SYM_CTXT_OPCODE_NORMAL_FLOW}
41645         },
41646         {
41647         .description = "l2_cntxt_id",
41648         .field_bit_size = 10,
41649         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41650         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41651         .field_opr1 = {
41652         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
41653         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
41654         },
41655         {
41656         .description = "parif",
41657         .field_bit_size = 4,
41658         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41659         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41660         .field_opr1 = {
41661         ULP_THOR_SYM_LOOPBACK_PARIF}
41662         },
41663         /* class_tid: 5, , table: l2_cntxt_tcam_cache.vf_egr_wr */
41664         {
41665         .description = "rid",
41666         .field_bit_size = 32,
41667         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41668         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41669         .field_opr1 = {
41670         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
41671         BNXT_ULP_RF_IDX_RID & 0xff}
41672         },
41673         {
41674         .description = "l2_cntxt_tcam_index",
41675         .field_bit_size = 10,
41676         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41677         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41678         .field_opr1 = {
41679         (BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 >> 8) & 0xff,
41680         BNXT_ULP_RF_IDX_L2_CNTXT_TCAM_INDEX_0 & 0xff}
41681         },
41682         {
41683         .description = "l2_cntxt_id",
41684         .field_bit_size = 10,
41685         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41686         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41687         .field_opr1 = {
41688         (BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 >> 8) & 0xff,
41689         BNXT_ULP_RF_IDX_L2_CNTXT_ID_0 & 0xff}
41690         },
41691         {
41692         .description = "src_property_ptr",
41693         .field_bit_size = 10,
41694         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41695         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41696         },
41697         /* class_tid: 5, , table: parif_def_arec_ptr.vf_egr */
41698         {
41699         .description = "act_rec_ptr",
41700         .field_bit_size = 32,
41701         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41702         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41703         .field_opr1 = {
41704         (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
41705         BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
41706         },
41707         /* class_tid: 5, , table: parif_def_err_arec_ptr.vf_egr */
41708         {
41709         .description = "act_rec_ptr",
41710         .field_bit_size = 32,
41711         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41712         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
41713         .field_opr1 = {
41714         (BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR >> 8) & 0xff,
41715         BNXT_ULP_GLB_RF_IDX_GLB_LB_AREC_PTR & 0xff}
41716         },
41717         /* class_tid: 5, , table: int_full_act_record.vf_ing */
41718         {
41719         .description = "sp_rec_ptr",
41720         .field_bit_size = 16,
41721         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41722         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41723         },
41724         {
41725         .description = "encap_ptr",
41726         .field_bit_size = 16,
41727         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41728         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41729         },
41730         {
41731         .description = "mod_rec_ptr",
41732         .field_bit_size = 16,
41733         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41734         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41735         },
41736         {
41737         .description = "rsvd1",
41738         .field_bit_size = 16,
41739         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41740         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41741         },
41742         {
41743         .description = "rsvd0",
41744         .field_bit_size = 8,
41745         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41746         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41747         },
41748         {
41749         .description = "decap_func",
41750         .field_bit_size = 5,
41751         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41752         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41753         },
41754         {
41755         .description = "meter",
41756         .field_bit_size = 10,
41757         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41758         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41759         },
41760         {
41761         .description = "stats_op",
41762         .field_bit_size = 1,
41763         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41764         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41765         .field_opr1 = {
41766         1}
41767         },
41768         {
41769         .description = "stats_ptr",
41770         .field_bit_size = 16,
41771         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41772         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41773         },
41774         {
41775         .description = "vnic_or_vport",
41776         .field_bit_size = 11,
41777         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41778         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
41779         .field_opr1 = {
41780         (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
41781         BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff}
41782         },
41783         {
41784         .description = "use_default",
41785         .field_bit_size = 1,
41786         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41787         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41788         },
41789         {
41790         .description = "mirror",
41791         .field_bit_size = 4,
41792         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41793         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41794         },
41795         {
41796         .description = "cond_copy",
41797         .field_bit_size = 1,
41798         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41799         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41800         },
41801         {
41802         .description = "vlan_del_rpt",
41803         .field_bit_size = 2,
41804         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41805         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41806         },
41807         {
41808         .description = "drop",
41809         .field_bit_size = 1,
41810         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41811         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41812         },
41813         {
41814         .description = "hit",
41815         .field_bit_size = 1,
41816         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41817         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41818         },
41819         {
41820         .description = "type",
41821         .field_bit_size = 3,
41822         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41823         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41824         .field_opr1 = {
41825         1}
41826         },
41827         /* class_tid: 5, , table: ilt_tbl.vf_ing */
41828         {
41829         .description = "ilt_destination",
41830         .field_bit_size = 16,
41831         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41832         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41833         },
41834         {
41835         .description = "act_rec_ptr",
41836         .field_bit_size = 16,
41837         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41838         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41839         .field_opr1 = {
41840         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
41841         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
41842         },
41843         {
41844         .description = "fwd_op",
41845         .field_bit_size = 2,
41846         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41847         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41848         .field_opr1 = {
41849         ULP_THOR_SYM_FWD_OP_BYPASS_LKUP}
41850         },
41851         {
41852         .description = "en_ilt_dest",
41853         .field_bit_size = 1,
41854         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41855         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41856         },
41857         {
41858         .description = "en_bd_action",
41859         .field_bit_size = 1,
41860         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41861         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41862         },
41863         {
41864         .description = "en_bd_meta",
41865         .field_bit_size = 1,
41866         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41867         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41868         },
41869         {
41870         .description = "parif",
41871         .field_bit_size = 4,
41872         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41873         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41874         },
41875         {
41876         .description = "reserved",
41877         .field_bit_size = 23,
41878         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41879         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41880         },
41881         /* class_tid: 5, , table: ilt_tbl.vfr_egr */
41882         {
41883         .description = "ilt_destination",
41884         .field_bit_size = 16,
41885         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41886         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41887         },
41888         {
41889         .description = "act_rec_ptr",
41890         .field_bit_size = 16,
41891         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41892         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41893         },
41894         {
41895         .description = "fwd_op",
41896         .field_bit_size = 2,
41897         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41898         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41899         .field_opr1 = {
41900         ULP_THOR_SYM_FWD_OP_BYPASS_LKUP}
41901         },
41902         {
41903         .description = "en_ilt_dest",
41904         .field_bit_size = 1,
41905         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41906         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41907         },
41908         {
41909         .description = "en_bd_action",
41910         .field_bit_size = 1,
41911         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41912         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41913         .field_opr1 = {
41914         1}
41915         },
41916         {
41917         .description = "en_bd_meta",
41918         .field_bit_size = 1,
41919         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41920         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41921         },
41922         {
41923         .description = "parif",
41924         .field_bit_size = 4,
41925         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41926         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
41927         .field_opr1 = {
41928         (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
41929         BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
41930         },
41931         {
41932         .description = "reserved",
41933         .field_bit_size = 23,
41934         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41935         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41936         },
41937         /* class_tid: 5, , table: l2_cntxt_tcam_cache.vfr_wr_egr0 */
41938         {
41939         .description = "rid",
41940         .field_bit_size = 32,
41941         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41942         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
41943         .field_opr1 = {
41944         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
41945         BNXT_ULP_RF_IDX_RID & 0xff}
41946         },
41947         {
41948         .description = "l2_cntxt_tcam_index",
41949         .field_bit_size = 10,
41950         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41951         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41952         },
41953         {
41954         .description = "l2_cntxt_id",
41955         .field_bit_size = 10,
41956         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41957         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41958         },
41959         {
41960         .description = "src_property_ptr",
41961         .field_bit_size = 10,
41962         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41963         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41964         },
41965         /* class_tid: 5, , table: metadata_record.vfr_egr */
41966         {
41967         .description = "prof_meta_mask",
41968         .field_bit_size = 16,
41969         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41970         .field_src1 = BNXT_ULP_FIELD_SRC_ONES,
41971         .field_opr1 = {
41972                 0xff,
41973                 0xff}
41974         },
41975         /* class_tid: 5, , table: mod_record.vfr_egr */
41976         {
41977         .description = "metadata_en",
41978         .field_bit_size = 1,
41979         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41980         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
41981         .field_opr1 = {
41982         1}
41983         },
41984         {
41985         .description = "rem_ovlan",
41986         .field_bit_size = 1,
41987         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41988         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41989         },
41990         {
41991         .description = "rem_ivlan",
41992         .field_bit_size = 1,
41993         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
41994         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
41995         },
41996         {
41997         .description = "rep_add_ivlan",
41998         .field_bit_size = 1,
41999         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42000         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42001         },
42002         {
42003         .description = "rep_add_ovlan",
42004         .field_bit_size = 1,
42005         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42006         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42007         },
42008         {
42009         .description = "ttl_update",
42010         .field_bit_size = 1,
42011         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42012         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42013         },
42014         {
42015         .description = "tun_md_en",
42016         .field_bit_size = 1,
42017         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42018         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42019         },
42020         {
42021         .description = "reserved_en",
42022         .field_bit_size = 1,
42023         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42024         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42025         },
42026         {
42027         .description = "l2_dmac_en",
42028         .field_bit_size = 1,
42029         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42030         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42031         },
42032         {
42033         .description = "l2_smac_en",
42034         .field_bit_size = 1,
42035         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42036         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42037         },
42038         {
42039         .description = "l3_sip_ipv6_en",
42040         .field_bit_size = 1,
42041         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42042         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42043         },
42044         {
42045         .description = "l3_dip_ipv6_en",
42046         .field_bit_size = 1,
42047         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42048         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42049         },
42050         {
42051         .description = "l3_sip_ipv4_en",
42052         .field_bit_size = 1,
42053         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42054         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42055         },
42056         {
42057         .description = "l3_dip_ipv4_en",
42058         .field_bit_size = 1,
42059         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42060         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42061         },
42062         {
42063         .description = "l4_sport_en",
42064         .field_bit_size = 1,
42065         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42066         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42067         },
42068         {
42069         .description = "l4_dport_en",
42070         .field_bit_size = 1,
42071         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42072         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42073         },
42074         {
42075         .description = "metadata_data",
42076         .field_bit_size = 16,
42077         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42078         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
42079         .field_opr1 = {
42080         (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
42081         BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff}
42082         },
42083         {
42084         .description = "metadata_rsvd",
42085         .field_bit_size = 10,
42086         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42087         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42088         },
42089         {
42090         .description = "metadata_op",
42091         .field_bit_size = 2,
42092         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42093         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42094         },
42095         {
42096         .description = "metadata_prof",
42097         .field_bit_size = 4,
42098         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42099         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
42100         .field_opr1 = {
42101         (BNXT_ULP_GLB_RF_IDX_GLB_METADATA_PROF_0 >> 8) & 0xff,
42102         BNXT_ULP_GLB_RF_IDX_GLB_METADATA_PROF_0 & 0xff}
42103         },
42104         {
42105         .description = "ivlan_tpid",
42106         .field_bit_size = 16,
42107         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42108         },
42109         {
42110         .description = "ivlan_pri",
42111         .field_bit_size = 3,
42112         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42113         },
42114         {
42115         .description = "ivlan_de",
42116         .field_bit_size = 1,
42117         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42118         },
42119         {
42120         .description = "ivlan_vid",
42121         .field_bit_size = 12,
42122         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42123         },
42124         {
42125         .description = "ovlan_tpid",
42126         .field_bit_size = 16,
42127         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42128         },
42129         {
42130         .description = "ovlan_pri",
42131         .field_bit_size = 3,
42132         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42133         },
42134         {
42135         .description = "ovlan_de",
42136         .field_bit_size = 1,
42137         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42138         },
42139         {
42140         .description = "ovlan_vid",
42141         .field_bit_size = 12,
42142         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42143         },
42144         {
42145         .description = "alt_pfid",
42146         .field_bit_size = 4,
42147         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42148         },
42149         {
42150         .description = "alt_vid",
42151         .field_bit_size = 12,
42152         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42153         },
42154         {
42155         .description = "ttl_rsvd",
42156         .field_bit_size = 12,
42157         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42158         },
42159         {
42160         .description = "ttl_tl3_dec",
42161         .field_bit_size = 1,
42162         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42163         },
42164         {
42165         .description = "ttl_il3_dec",
42166         .field_bit_size = 1,
42167         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42168         },
42169         {
42170         .description = "ttl_tl3_rdir",
42171         .field_bit_size = 1,
42172         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42173         },
42174         {
42175         .description = "ttl_il3_rdir",
42176         .field_bit_size = 1,
42177         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42178         },
42179         {
42180         .description = "tun_new_prot",
42181         .field_bit_size = 16,
42182         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42183         },
42184         {
42185         .description = "tun_ex_prot",
42186         .field_bit_size = 16,
42187         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42188         },
42189         {
42190         .description = "tun_mv",
42191         .field_bit_size = 16,
42192         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42193         },
42194         {
42195         .description = "reserved",
42196         .field_bit_size = 0,
42197         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42198         },
42199         {
42200         .description = "l2_dmac",
42201         .field_bit_size = 48,
42202         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42203         },
42204         {
42205         .description = "l2_smac",
42206         .field_bit_size = 48,
42207         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42208         },
42209         {
42210         .description = "l3_sip_ipv6",
42211         .field_bit_size = 128,
42212         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42213         },
42214         {
42215         .description = "l3_dip_ipv6",
42216         .field_bit_size = 128,
42217         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42218         },
42219         {
42220         .description = "l3_sip_ipv4",
42221         .field_bit_size = 32,
42222         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42223         },
42224         {
42225         .description = "l3_dip_ipv4",
42226         .field_bit_size = 32,
42227         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42228         },
42229         {
42230         .description = "l4_sport",
42231         .field_bit_size = 16,
42232         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42233         },
42234         {
42235         .description = "l4_dport",
42236         .field_bit_size = 16,
42237         .field_opc = BNXT_ULP_FIELD_OPC_SKIP
42238         },
42239         /* class_tid: 5, , table: int_full_act_record.vfr_egr */
42240         {
42241         .description = "sp_rec_ptr",
42242         .field_bit_size = 16,
42243         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42244         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42245         },
42246         {
42247         .description = "encap_ptr",
42248         .field_bit_size = 16,
42249         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42250         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42251         },
42252         {
42253         .description = "mod_rec_ptr",
42254         .field_bit_size = 16,
42255         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42256         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
42257         .field_opr1 = {
42258         (BNXT_ULP_RF_IDX_MODIFY_PTR >> 8) & 0xff,
42259         BNXT_ULP_RF_IDX_MODIFY_PTR & 0xff}
42260         },
42261         {
42262         .description = "rsvd1",
42263         .field_bit_size = 16,
42264         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42265         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42266         },
42267         {
42268         .description = "rsvd0",
42269         .field_bit_size = 8,
42270         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42271         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42272         },
42273         {
42274         .description = "decap_func",
42275         .field_bit_size = 5,
42276         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42277         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42278         },
42279         {
42280         .description = "meter",
42281         .field_bit_size = 10,
42282         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42283         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42284         },
42285         {
42286         .description = "stats_op",
42287         .field_bit_size = 1,
42288         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42289         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
42290         .field_opr1 = {
42291         1}
42292         },
42293         {
42294         .description = "stats_ptr",
42295         .field_bit_size = 16,
42296         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42297         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42298         },
42299         {
42300         .description = "vnic_or_vport",
42301         .field_bit_size = 11,
42302         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42303         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
42304         .field_opr1 = {
42305         (ULP_THOR_SYM_LOOPBACK_PORT >> 8) & 0xff,
42306         ULP_THOR_SYM_LOOPBACK_PORT & 0xff}
42307         },
42308         {
42309         .description = "use_default",
42310         .field_bit_size = 1,
42311         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42312         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42313         },
42314         {
42315         .description = "mirror",
42316         .field_bit_size = 4,
42317         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42318         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42319         },
42320         {
42321         .description = "cond_copy",
42322         .field_bit_size = 1,
42323         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42324         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42325         },
42326         {
42327         .description = "vlan_del_rpt",
42328         .field_bit_size = 2,
42329         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42330         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42331         },
42332         {
42333         .description = "drop",
42334         .field_bit_size = 1,
42335         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42336         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42337         },
42338         {
42339         .description = "hit",
42340         .field_bit_size = 1,
42341         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42342         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42343         },
42344         {
42345         .description = "type",
42346         .field_bit_size = 3,
42347         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42348         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
42349         .field_opr1 = {
42350         1}
42351         },
42352         /* class_tid: 5, , table: l2_cntxt_tcam.vfr_ing0 */
42353         {
42354         .description = "prof_func_id",
42355         .field_bit_size = 7,
42356         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42357         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
42358         .field_opr1 = {
42359         (BNXT_ULP_GLB_RF_IDX_GLB_VFR_PROF_FUNC_0 >> 8) & 0xff,
42360         BNXT_ULP_GLB_RF_IDX_GLB_VFR_PROF_FUNC_0 & 0xff}
42361         },
42362         {
42363         .description = "ctxt_meta_prof",
42364         .field_bit_size = 3,
42365         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42366         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42367         },
42368         {
42369         .description = "def_ctxt_data",
42370         .field_bit_size = 16,
42371         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42372         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42373         },
42374         {
42375         .description = "ctxt_opcode",
42376         .field_bit_size = 3,
42377         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42378         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
42379         .field_opr1 = {
42380         ULP_THOR_SYM_CTXT_OPCODE_NORMAL_FLOW}
42381         },
42382         {
42383         .description = "l2_cntxt_id",
42384         .field_bit_size = 10,
42385         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42386         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42387         },
42388         {
42389         .description = "parif",
42390         .field_bit_size = 4,
42391         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42392         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
42393         .field_opr1 = {
42394         (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
42395         BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff}
42396         },
42397         /* class_tid: 5, , table: fkb_select.vfr_em */
42398         {
42399         .description = "l2_cntxt_id.en",
42400         .field_bit_size = 1,
42401         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42402         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42403         },
42404         {
42405         .description = "parif.en",
42406         .field_bit_size = 1,
42407         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42408         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42409         },
42410         {
42411         .description = "spif.en",
42412         .field_bit_size = 1,
42413         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42414         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42415         },
42416         {
42417         .description = "svif.en",
42418         .field_bit_size = 1,
42419         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42420         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42421         },
42422         {
42423         .description = "lcos.en",
42424         .field_bit_size = 1,
42425         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42426         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42427         },
42428         {
42429         .description = "meta.en",
42430         .field_bit_size = 1,
42431         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42432         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
42433         .field_opr1 = {
42434         1}
42435         },
42436         {
42437         .description = "rcyc_cnt.en",
42438         .field_bit_size = 1,
42439         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42440         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42441         },
42442         {
42443         .description = "loopback.en",
42444         .field_bit_size = 1,
42445         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42446         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42447         },
42448         {
42449         .description = "tl2_l2type.en",
42450         .field_bit_size = 1,
42451         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42452         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42453         },
42454         {
42455         .description = "tl2_dmac.en",
42456         .field_bit_size = 1,
42457         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42458         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42459         },
42460         {
42461         .description = "tl2_smac.en",
42462         .field_bit_size = 1,
42463         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42464         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42465         },
42466         {
42467         .description = "tl2_dt.en",
42468         .field_bit_size = 1,
42469         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42470         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42471         },
42472         {
42473         .description = "tl2_sa.en",
42474         .field_bit_size = 1,
42475         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42476         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42477         },
42478         {
42479         .description = "tl2_nvt.en",
42480         .field_bit_size = 1,
42481         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42482         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42483         },
42484         {
42485         .description = "tl2_ovp.en",
42486         .field_bit_size = 1,
42487         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42488         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42489         },
42490         {
42491         .description = "tl2_ovd.en",
42492         .field_bit_size = 1,
42493         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42494         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42495         },
42496         {
42497         .description = "tl2_ovv.en",
42498         .field_bit_size = 1,
42499         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42500         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42501         },
42502         {
42503         .description = "tl2_ovt.en",
42504         .field_bit_size = 1,
42505         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42506         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42507         },
42508         {
42509         .description = "tl2_ivp.en",
42510         .field_bit_size = 1,
42511         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42512         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42513         },
42514         {
42515         .description = "tl2_ivd.en",
42516         .field_bit_size = 1,
42517         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42518         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42519         },
42520         {
42521         .description = "tl2_ivv.en",
42522         .field_bit_size = 1,
42523         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42524         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42525         },
42526         {
42527         .description = "tl2_ivt.en",
42528         .field_bit_size = 1,
42529         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42530         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42531         },
42532         {
42533         .description = "tl2_etype.en",
42534         .field_bit_size = 1,
42535         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42536         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42537         },
42538         {
42539         .description = "tl3_l3type.en",
42540         .field_bit_size = 1,
42541         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42542         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42543         },
42544         {
42545         .description = "tl3_sip.en",
42546         .field_bit_size = 1,
42547         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42548         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42549         },
42550         {
42551         .description = "tl3_sip_selcmp.en",
42552         .field_bit_size = 1,
42553         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42554         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42555         },
42556         {
42557         .description = "tl3_dip.en",
42558         .field_bit_size = 1,
42559         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42560         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42561         },
42562         {
42563         .description = "tl3_dip_selcmp.en",
42564         .field_bit_size = 1,
42565         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42566         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42567         },
42568         {
42569         .description = "tl3_ttl.en",
42570         .field_bit_size = 1,
42571         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42572         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42573         },
42574         {
42575         .description = "tl3_prot.en",
42576         .field_bit_size = 1,
42577         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42578         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42579         },
42580         {
42581         .description = "tl3_fid.en",
42582         .field_bit_size = 1,
42583         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42584         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42585         },
42586         {
42587         .description = "tl3_qos.en",
42588         .field_bit_size = 1,
42589         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42590         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42591         },
42592         {
42593         .description = "tl3_ieh_nonext.en",
42594         .field_bit_size = 1,
42595         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42596         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42597         },
42598         {
42599         .description = "tl3_ieh_esp.en",
42600         .field_bit_size = 1,
42601         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42602         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42603         },
42604         {
42605         .description = "tl3_ieh_auth.en",
42606         .field_bit_size = 1,
42607         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42608         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42609         },
42610         {
42611         .description = "tl3_ieh_dest.en",
42612         .field_bit_size = 1,
42613         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42614         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42615         },
42616         {
42617         .description = "tl3_ieh_frag.en",
42618         .field_bit_size = 1,
42619         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42620         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42621         },
42622         {
42623         .description = "tl3_ieh_rthdr.en",
42624         .field_bit_size = 1,
42625         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42626         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42627         },
42628         {
42629         .description = "tl3_ieh_hop.en",
42630         .field_bit_size = 1,
42631         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42632         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42633         },
42634         {
42635         .description = "tl3_ieh_1frag.en",
42636         .field_bit_size = 1,
42637         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42638         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42639         },
42640         {
42641         .description = "tl3_df.en",
42642         .field_bit_size = 1,
42643         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42644         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42645         },
42646         {
42647         .description = "tl3_l3err.en",
42648         .field_bit_size = 1,
42649         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42650         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42651         },
42652         {
42653         .description = "tl4_l4type.en",
42654         .field_bit_size = 1,
42655         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42656         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42657         },
42658         {
42659         .description = "tl4_src.en",
42660         .field_bit_size = 1,
42661         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42662         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42663         },
42664         {
42665         .description = "tl4_dst.en",
42666         .field_bit_size = 1,
42667         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42668         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42669         },
42670         {
42671         .description = "tl4_flags.en",
42672         .field_bit_size = 1,
42673         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42674         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42675         },
42676         {
42677         .description = "tl4_seq.en",
42678         .field_bit_size = 1,
42679         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42680         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42681         },
42682         {
42683         .description = "tl4_pa.en",
42684         .field_bit_size = 1,
42685         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42686         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42687         },
42688         {
42689         .description = "tl4_opt.en",
42690         .field_bit_size = 1,
42691         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42692         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42693         },
42694         {
42695         .description = "tl4_tcpts.en",
42696         .field_bit_size = 1,
42697         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42698         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42699         },
42700         {
42701         .description = "tl4_err.en",
42702         .field_bit_size = 1,
42703         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42704         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42705         },
42706         {
42707         .description = "tuntype.en",
42708         .field_bit_size = 1,
42709         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42710         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42711         },
42712         {
42713         .description = "tflags.en",
42714         .field_bit_size = 1,
42715         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42716         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42717         },
42718         {
42719         .description = "tids.en",
42720         .field_bit_size = 1,
42721         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42722         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42723         },
42724         {
42725         .description = "tid.en",
42726         .field_bit_size = 1,
42727         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42728         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42729         },
42730         {
42731         .description = "tctxts.en",
42732         .field_bit_size = 1,
42733         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42734         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42735         },
42736         {
42737         .description = "tctxt.en",
42738         .field_bit_size = 1,
42739         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42740         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42741         },
42742         {
42743         .description = "tqos.en",
42744         .field_bit_size = 1,
42745         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42746         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42747         },
42748         {
42749         .description = "terr.en",
42750         .field_bit_size = 1,
42751         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42752         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42753         },
42754         {
42755         .description = "l2_l2type.en",
42756         .field_bit_size = 1,
42757         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42758         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42759         },
42760         {
42761         .description = "l2_dmac.en",
42762         .field_bit_size = 1,
42763         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42764         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42765         },
42766         {
42767         .description = "l2_smac.en",
42768         .field_bit_size = 1,
42769         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42770         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42771         },
42772         {
42773         .description = "l2_dt.en",
42774         .field_bit_size = 1,
42775         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42776         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42777         },
42778         {
42779         .description = "l2_sa.en",
42780         .field_bit_size = 1,
42781         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42782         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42783         },
42784         {
42785         .description = "l2_nvt.en",
42786         .field_bit_size = 1,
42787         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42788         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42789         },
42790         {
42791         .description = "l2_ovp.en",
42792         .field_bit_size = 1,
42793         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42794         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42795         },
42796         {
42797         .description = "l2_ovd.en",
42798         .field_bit_size = 1,
42799         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42800         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42801         },
42802         {
42803         .description = "l2_ovv.en",
42804         .field_bit_size = 1,
42805         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42806         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42807         },
42808         {
42809         .description = "l2_ovt.en",
42810         .field_bit_size = 1,
42811         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42812         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42813         },
42814         {
42815         .description = "l2_ivp.en",
42816         .field_bit_size = 1,
42817         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42818         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42819         },
42820         {
42821         .description = "l2_ivd.en",
42822         .field_bit_size = 1,
42823         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42824         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42825         },
42826         {
42827         .description = "l2_ivv.en",
42828         .field_bit_size = 1,
42829         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42830         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42831         },
42832         {
42833         .description = "l2_ivt.en",
42834         .field_bit_size = 1,
42835         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42836         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42837         },
42838         {
42839         .description = "l2_etype.en",
42840         .field_bit_size = 1,
42841         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42842         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42843         },
42844         {
42845         .description = "l3_l3type.en",
42846         .field_bit_size = 1,
42847         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42848         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42849         },
42850         {
42851         .description = "l3_sip.en",
42852         .field_bit_size = 1,
42853         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42854         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42855         },
42856         {
42857         .description = "l3_sip_selcmp.en",
42858         .field_bit_size = 1,
42859         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42860         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42861         },
42862         {
42863         .description = "l3_dip.en",
42864         .field_bit_size = 1,
42865         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42866         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42867         },
42868         {
42869         .description = "l3_dip_selcmp.en",
42870         .field_bit_size = 1,
42871         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42872         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42873         },
42874         {
42875         .description = "l3_ttl.en",
42876         .field_bit_size = 1,
42877         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42878         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42879         },
42880         {
42881         .description = "l3_prot.en",
42882         .field_bit_size = 1,
42883         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42884         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42885         },
42886         {
42887         .description = "l3_fid.en",
42888         .field_bit_size = 1,
42889         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42890         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42891         },
42892         {
42893         .description = "l3_qos.en",
42894         .field_bit_size = 1,
42895         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42896         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42897         },
42898         {
42899         .description = "l3_ieh_nonext.en",
42900         .field_bit_size = 1,
42901         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42902         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42903         },
42904         {
42905         .description = "l3_ieh_esp.en",
42906         .field_bit_size = 1,
42907         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42908         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42909         },
42910         {
42911         .description = "l3_ieh_auth.en",
42912         .field_bit_size = 1,
42913         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42914         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42915         },
42916         {
42917         .description = "l3_ieh_dest.en",
42918         .field_bit_size = 1,
42919         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42920         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42921         },
42922         {
42923         .description = "l3_ieh_frag.en",
42924         .field_bit_size = 1,
42925         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42926         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42927         },
42928         {
42929         .description = "l3_ieh_rthdr.en",
42930         .field_bit_size = 1,
42931         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42932         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42933         },
42934         {
42935         .description = "l3_ieh_hop.en",
42936         .field_bit_size = 1,
42937         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42938         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42939         },
42940         {
42941         .description = "l3_ieh_1frag.en",
42942         .field_bit_size = 1,
42943         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42944         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42945         },
42946         {
42947         .description = "l3_df.en",
42948         .field_bit_size = 1,
42949         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42950         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42951         },
42952         {
42953         .description = "l3_l3err.en",
42954         .field_bit_size = 1,
42955         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42956         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42957         },
42958         {
42959         .description = "l4_l4type.en",
42960         .field_bit_size = 1,
42961         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42962         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42963         },
42964         {
42965         .description = "l4_src.en",
42966         .field_bit_size = 1,
42967         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42968         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42969         },
42970         {
42971         .description = "l4_dst.en",
42972         .field_bit_size = 1,
42973         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42974         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42975         },
42976         {
42977         .description = "l4_flags.en",
42978         .field_bit_size = 1,
42979         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42980         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42981         },
42982         {
42983         .description = "l4_seq.en",
42984         .field_bit_size = 1,
42985         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42986         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42987         },
42988         {
42989         .description = "l4_ack.en",
42990         .field_bit_size = 1,
42991         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42992         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42993         },
42994         {
42995         .description = "l4_win.en",
42996         .field_bit_size = 1,
42997         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
42998         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
42999         },
43000         {
43001         .description = "l4_pa.en",
43002         .field_bit_size = 1,
43003         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43004         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43005         },
43006         {
43007         .description = "l4_opt.en",
43008         .field_bit_size = 1,
43009         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43010         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43011         },
43012         {
43013         .description = "l4_tcpts.en",
43014         .field_bit_size = 1,
43015         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43016         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43017         },
43018         {
43019         .description = "l4_tsval.en",
43020         .field_bit_size = 1,
43021         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43022         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43023         },
43024         {
43025         .description = "l4_txecr.en",
43026         .field_bit_size = 1,
43027         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43028         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43029         },
43030         {
43031         .description = "l4_err.en",
43032         .field_bit_size = 1,
43033         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43034         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43035         },
43036         /* class_tid: 5, , table: profile_tcam.vfr_ing0 */
43037         {
43038         .description = "wc_key_id",
43039         .field_bit_size = 6,
43040         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43041         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43042         },
43043         {
43044         .description = "wc_profile_id",
43045         .field_bit_size = 8,
43046         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43047         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43048         },
43049         {
43050         .description = "wc_search_en",
43051         .field_bit_size = 1,
43052         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43053         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43054         },
43055         {
43056         .description = "em_key_type",
43057         .field_bit_size = 2,
43058         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43059         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43060         },
43061         {
43062         .description = "em_key_id",
43063         .field_bit_size = 6,
43064         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43065         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
43066         .field_opr1 = {
43067         (BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0 >> 8) & 0xff,
43068         BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_KEY_ID_0 & 0xff}
43069         },
43070         {
43071         .description = "em_profile_id",
43072         .field_bit_size = 8,
43073         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43074         .field_src1 = BNXT_ULP_FIELD_SRC_GLB_RF,
43075         .field_opr1 = {
43076         (BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_PROF_ID_0 >> 8) & 0xff,
43077         BNXT_ULP_GLB_RF_IDX_GLB_VFR_EM_PROF_ID_0 & 0xff}
43078         },
43079         {
43080         .description = "em_search_en",
43081         .field_bit_size = 1,
43082         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43083         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
43084         .field_opr1 = {
43085         1}
43086         },
43087         {
43088         .description = "pl_byp_lkup_en",
43089         .field_bit_size = 1,
43090         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43091         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43092         },
43093         /* class_tid: 5, , table: l2_cntxt_tcam_cache.ing_wr_vfr */
43094         {
43095         .description = "rid",
43096         .field_bit_size = 32,
43097         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43098         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
43099         .field_opr1 = {
43100         (BNXT_ULP_RF_IDX_RID >> 8) & 0xff,
43101         BNXT_ULP_RF_IDX_RID & 0xff}
43102         },
43103         {
43104         .description = "l2_cntxt_tcam_index",
43105         .field_bit_size = 10,
43106         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43107         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43108         },
43109         {
43110         .description = "l2_cntxt_id",
43111         .field_bit_size = 10,
43112         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43113         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43114         },
43115         {
43116         .description = "src_property_ptr",
43117         .field_bit_size = 10,
43118         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43119         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43120         },
43121         /* class_tid: 5, , table: int_full_act_record.vfr_ing0 */
43122         {
43123         .description = "sp_rec_ptr",
43124         .field_bit_size = 16,
43125         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43126         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43127         },
43128         {
43129         .description = "encap_ptr",
43130         .field_bit_size = 16,
43131         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43132         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43133         },
43134         {
43135         .description = "mod_rec_ptr",
43136         .field_bit_size = 16,
43137         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43138         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43139         },
43140         {
43141         .description = "rsvd1",
43142         .field_bit_size = 16,
43143         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43144         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43145         },
43146         {
43147         .description = "rsvd0",
43148         .field_bit_size = 8,
43149         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43150         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43151         },
43152         {
43153         .description = "decap_func",
43154         .field_bit_size = 5,
43155         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43156         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43157         },
43158         {
43159         .description = "meter",
43160         .field_bit_size = 10,
43161         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43162         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43163         },
43164         {
43165         .description = "stats_op",
43166         .field_bit_size = 1,
43167         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43168         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
43169         .field_opr1 = {
43170         1}
43171         },
43172         {
43173         .description = "stats_ptr",
43174         .field_bit_size = 16,
43175         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43176         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43177         },
43178         {
43179         .description = "vnic_or_vport",
43180         .field_bit_size = 11,
43181         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43182         .field_src1 = BNXT_ULP_FIELD_SRC_CF,
43183         .field_opr1 = {
43184         (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
43185         BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff}
43186         },
43187         {
43188         .description = "use_default",
43189         .field_bit_size = 1,
43190         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43191         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43192         },
43193         {
43194         .description = "mirror",
43195         .field_bit_size = 4,
43196         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43197         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43198         },
43199         {
43200         .description = "cond_copy",
43201         .field_bit_size = 1,
43202         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43203         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43204         },
43205         {
43206         .description = "vlan_del_rpt",
43207         .field_bit_size = 2,
43208         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43209         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43210         },
43211         {
43212         .description = "drop",
43213         .field_bit_size = 1,
43214         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43215         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43216         },
43217         {
43218         .description = "hit",
43219         .field_bit_size = 1,
43220         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43221         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43222         },
43223         {
43224         .description = "type",
43225         .field_bit_size = 3,
43226         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43227         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
43228         .field_opr1 = {
43229         1}
43230         },
43231         /* class_tid: 5, , table: em.vfr.0 */
43232         {
43233         .description = "valid",
43234         .field_bit_size = 1,
43235         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43236         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
43237         .field_opr1 = {
43238         1}
43239         },
43240         {
43241         .description = "strength",
43242         .field_bit_size = 2,
43243         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43244         .field_src1 = BNXT_ULP_FIELD_SRC_CONST,
43245         .field_opr1 = {
43246         3}
43247         },
43248         {
43249         .description = "data",
43250         .field_bit_size = 16,
43251         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43252         .field_src1 = BNXT_ULP_FIELD_SRC_RF,
43253         .field_opr1 = {
43254         (BNXT_ULP_RF_IDX_MAIN_ACTION_PTR >> 8) & 0xff,
43255         BNXT_ULP_RF_IDX_MAIN_ACTION_PTR & 0xff}
43256         },
43257         {
43258         .description = "opcode",
43259         .field_bit_size = 3,
43260         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43261         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43262         },
43263         {
43264         .description = "meta_prof",
43265         .field_bit_size = 3,
43266         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43267         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43268         },
43269         {
43270         .description = "ctxt_data",
43271         .field_bit_size = 14,
43272         .field_opc = BNXT_ULP_FIELD_OPC_SRC1,
43273         .field_src1 = BNXT_ULP_FIELD_SRC_ZERO
43274         }
43275 };
43276
43277 struct bnxt_ulp_mapper_ident_info ulp_thor_class_ident_list[] = {
43278         /* class_tid: 1, , table: port_table.rd */
43279         {
43280         .description = "default_arec_ptr",
43281         .regfile_idx = BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR,
43282         .ident_bit_size = 16,
43283         .ident_bit_pos = 136
43284         },
43285         {
43286         .description = "drv_func.parent.mac",
43287         .regfile_idx = BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC,
43288         .ident_bit_size = 48,
43289         .ident_bit_pos = 80
43290         },
43291         {
43292         .description = "phy_port",
43293         .regfile_idx = BNXT_ULP_RF_IDX_PHY_PORT,
43294         .ident_bit_size = 8,
43295         .ident_bit_pos = 128
43296         },
43297         /* class_tid: 1, , table: l2_cntxt_tcam_cache.rd */
43298         {
43299         .description = "l2_cntxt_id",
43300         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43301         .ident_bit_size = 10,
43302         .ident_bit_pos = 42
43303         },
43304         /* class_tid: 1, , table: mac_addr_cache.rd */
43305         {
43306         .description = "l2_cntxt_id",
43307         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43308         .ident_bit_size = 10,
43309         .ident_bit_pos = 42
43310         },
43311         /* class_tid: 1, , table: l2_cntxt_tcam.0 */
43312         {
43313         .description = "l2_cntxt_id",
43314         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43315         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
43316         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43317         .ident_bit_size = 10,
43318         .ident_bit_pos = 29
43319         },
43320         /* class_tid: 1, , table: profile_tcam_cache.ipv6_rd */
43321         {
43322         .description = "em_key_id",
43323         .regfile_idx = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
43324         .ident_bit_size = 8,
43325         .ident_bit_pos = 50
43326         },
43327         {
43328         .description = "em_profile_id",
43329         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43330         .ident_bit_size = 8,
43331         .ident_bit_pos = 42
43332         },
43333         {
43334         .description = "flow_sig_id",
43335         .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
43336         .ident_bit_size = 64,
43337         .ident_bit_pos = 74
43338         },
43339         {
43340         .description = "profile_tcam_index",
43341         .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
43342         .ident_bit_size = 10,
43343         .ident_bit_pos = 32
43344         },
43345         /* class_tid: 1, , table: profile_tcam.l2_l3_l4_v6_em */
43346         {
43347         .description = "em_profile_id",
43348         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43349         .ident_type = TF_IDENT_TYPE_EM_PROF,
43350         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43351         .ident_bit_size = 8,
43352         .ident_bit_pos = 23
43353         },
43354         /* class_tid: 1, , table: profile_tcam_cache.rd */
43355         {
43356         .description = "flow_sig_id",
43357         .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
43358         .ident_bit_size = 64,
43359         .ident_bit_pos = 74
43360         },
43361         {
43362         .description = "profile_tcam_index",
43363         .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
43364         .ident_bit_size = 10,
43365         .ident_bit_pos = 32
43366         },
43367         /* class_tid: 2, , table: port_table.rd */
43368         {
43369         .description = "default_arec_ptr",
43370         .regfile_idx = BNXT_ULP_RF_IDX_DEFAULT_AREC_PTR,
43371         .ident_bit_size = 16,
43372         .ident_bit_pos = 136
43373         },
43374         {
43375         .description = "drv_func.parent.mac",
43376         .regfile_idx = BNXT_ULP_RF_IDX_DRV_FUNC_PARENT_MAC,
43377         .ident_bit_size = 48,
43378         .ident_bit_pos = 80
43379         },
43380         {
43381         .description = "phy_port",
43382         .regfile_idx = BNXT_ULP_RF_IDX_PHY_PORT,
43383         .ident_bit_size = 8,
43384         .ident_bit_pos = 128
43385         },
43386         /* class_tid: 2, , table: tunnel_cache.rd */
43387         {
43388         .description = "l2_cntxt_id",
43389         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43390         .ident_bit_size = 10,
43391         .ident_bit_pos = 42
43392         },
43393         /* class_tid: 2, , table: l2_cntxt_tcam.1 */
43394         {
43395         .description = "l2_cntxt_id",
43396         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43397         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
43398         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43399         .ident_bit_size = 10,
43400         .ident_bit_pos = 29
43401         },
43402         /* class_tid: 2, , table: mac_addr_cache.rd */
43403         {
43404         .description = "l2_cntxt_id",
43405         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43406         .ident_bit_size = 10,
43407         .ident_bit_pos = 42
43408         },
43409         /* class_tid: 2, , table: profile_tcam_cache.f2_ipv6_rd */
43410         {
43411         .description = "em_key_id",
43412         .regfile_idx = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
43413         .ident_bit_size = 8,
43414         .ident_bit_pos = 50
43415         },
43416         {
43417         .description = "em_profile_id",
43418         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43419         .ident_bit_size = 8,
43420         .ident_bit_pos = 42
43421         },
43422         {
43423         .description = "flow_sig_id",
43424         .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
43425         .ident_bit_size = 64,
43426         .ident_bit_pos = 74
43427         },
43428         {
43429         .description = "profile_tcam_index",
43430         .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
43431         .ident_bit_size = 10,
43432         .ident_bit_pos = 32
43433         },
43434         /* class_tid: 2, , table: profile_tcam.f2_l2_l3_l4_v6_em */
43435         {
43436         .description = "em_profile_id",
43437         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43438         .ident_type = TF_IDENT_TYPE_EM_PROF,
43439         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43440         .ident_bit_size = 8,
43441         .ident_bit_pos = 23
43442         },
43443         /* class_tid: 2, , table: profile_tcam_cache.f2_rd */
43444         {
43445         .description = "em_profile_id",
43446         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43447         .ident_bit_size = 8,
43448         .ident_bit_pos = 42
43449         },
43450         {
43451         .description = "flow_sig_id",
43452         .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
43453         .ident_bit_size = 64,
43454         .ident_bit_pos = 74
43455         },
43456         {
43457         .description = "profile_tcam_index",
43458         .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
43459         .ident_bit_size = 10,
43460         .ident_bit_pos = 32
43461         },
43462         /* class_tid: 3, , table: l2_cntxt_tcam_cache.rd */
43463         {
43464         .description = "l2_cntxt_id",
43465         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43466         .ident_bit_size = 10,
43467         .ident_bit_pos = 42
43468         },
43469         /* class_tid: 3, , table: profile_tcam_cache.ipv6_rd */
43470         {
43471         .description = "em_key_id",
43472         .regfile_idx = BNXT_ULP_RF_IDX_EM_KEY_ID_0,
43473         .ident_bit_size = 8,
43474         .ident_bit_pos = 50
43475         },
43476         {
43477         .description = "em_profile_id",
43478         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43479         .ident_bit_size = 8,
43480         .ident_bit_pos = 42
43481         },
43482         {
43483         .description = "flow_sig_id",
43484         .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
43485         .ident_bit_size = 64,
43486         .ident_bit_pos = 74
43487         },
43488         {
43489         .description = "profile_tcam_index",
43490         .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
43491         .ident_bit_size = 10,
43492         .ident_bit_pos = 32
43493         },
43494         /* class_tid: 3, , table: profile_tcam.l2_l3_l4_v6_em */
43495         {
43496         .description = "em_profile_id",
43497         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43498         .ident_type = TF_IDENT_TYPE_EM_PROF,
43499         .regfile_idx = BNXT_ULP_RF_IDX_EM_PROFILE_ID_0,
43500         .ident_bit_size = 8,
43501         .ident_bit_pos = 23
43502         },
43503         /* class_tid: 3, , table: profile_tcam_cache.rd */
43504         {
43505         .description = "flow_sig_id",
43506         .regfile_idx = BNXT_ULP_RF_IDX_FLOW_SIG_ID,
43507         .ident_bit_size = 64,
43508         .ident_bit_pos = 74
43509         },
43510         {
43511         .description = "profile_tcam_index",
43512         .regfile_idx = BNXT_ULP_RF_IDX_PROFILE_TCAM_INDEX_0,
43513         .ident_bit_size = 10,
43514         .ident_bit_pos = 32
43515         },
43516         /* class_tid: 4, , table: l2_cntxt_tcam.ing_0 */
43517         {
43518         .description = "l2_cntxt_id_low",
43519         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43520         .ident_type = TF_IDENT_TYPE_L2_CTXT_LOW,
43521         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43522         .ident_bit_size = 10,
43523         .ident_bit_pos = 29
43524         },
43525         /* class_tid: 4, , table: l2_cntxt_tcam.egr_0 */
43526         {
43527         .description = "l2_cntxt_id_low",
43528         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43529         .ident_type = TF_IDENT_TYPE_L2_CTXT_LOW,
43530         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43531         .ident_bit_size = 10,
43532         .ident_bit_pos = 29
43533         },
43534         /* class_tid: 5, , table: l2_cntxt_tcam.vf_egr */
43535         {
43536         .description = "l2_cntxt_id_low",
43537         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
43538         .ident_type = TF_IDENT_TYPE_L2_CTXT_LOW,
43539         .regfile_idx = BNXT_ULP_RF_IDX_L2_CNTXT_ID_0,
43540         .ident_bit_size = 10,
43541         .ident_bit_pos = 29
43542         }
43543 };