53ba637d4ea53f5366554f75a8d4196f1d578a40
[dpdk.git] / drivers / net / bnxt / tf_ulp / ulp_template_db_stingray_class.c
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2014-2021 Broadcom
3  * All rights reserved.
4  */
5
6 /* date: Thu Oct 15 17:28:37 2020 */
7
8 #include "ulp_template_db_enum.h"
9 #include "ulp_template_db_field.h"
10 #include "ulp_template_struct.h"
11 #include "ulp_rte_parser.h"
12
13 /* Mapper templates for header class list */
14 struct bnxt_ulp_mapper_tmpl_info ulp_stingray_class_tmpl_list[] = {
15         /* default-vfr-[port_to_vs]:1 */
16         /* class_tid: 1, stingray, ingress */
17         [1] = {
18         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
19         .num_tbls = 6,
20         .start_tbl_idx = 0
21         },
22         /* default-vfr-[vs_to_port]:2 */
23         /* class_tid: 2, stingray, egress */
24         [2] = {
25         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
26         .num_tbls = 7,
27         .start_tbl_idx = 6
28         },
29         /* default-vfr-[vfrep_to_vf]:3 */
30         /* class_tid: 3, stingray, egress */
31         [3] = {
32         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
33         .num_tbls = 7,
34         .start_tbl_idx = 13
35         },
36         /* default-vfr-[vf_to_vfrep]:4 */
37         /* class_tid: 4, stingray, egress */
38         [4] = {
39         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
40         .num_tbls = 7,
41         .start_tbl_idx = 20
42         },
43         /* default-egr-[loopback_action_rec]:5 */
44         /* class_tid: 5, stingray, egress */
45         [5] = {
46         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
47         .num_tbls = 1,
48         .start_tbl_idx = 27
49         },
50         /* class-ing-em-[eth, (vlan), ipv4]-[smac, dmac, (vid)]:6 */
51         /* class_tid: 6, stingray, ingress */
52         [6] = {
53         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
54         .num_tbls = 5,
55         .start_tbl_idx = 28
56         },
57         /* class-ing-em-[eth, (vlan), ipv6]-[smac, dmac, (vid)]:7 */
58         /* class_tid: 7, stingray, ingress */
59         [7] = {
60         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
61         .num_tbls = 5,
62         .start_tbl_idx = 33
63         },
64         /* class-ing-em-[eth, ipv4, udp]-[sip, dip, sp, dp]:8 */
65         /* class_tid: 8, stingray, ingress */
66         [8] = {
67         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
68         .num_tbls = 6,
69         .start_tbl_idx = 38
70         },
71         /* class-ing-em-[eth, ipv4, tcp]-[sip, dip, sp, dp]:9 */
72         /* class_tid: 9, stingray, ingress */
73         [9] = {
74         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
75         .num_tbls = 6,
76         .start_tbl_idx = 44
77         },
78         /* class-ing-em-[eth,ipv6, udp]-[sip, dip, sp, dp]:10 */
79         /* class_tid: 10, stingray, ingress */
80         [10] = {
81         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
82         .num_tbls = 6,
83         .start_tbl_idx = 50
84         },
85         /* class-ing-em-[eth, ipv6, tcp]-[sip, dip, sp, dp]:11 */
86         /* class_tid: 11, stingray, ingress */
87         [11] = {
88         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
89         .num_tbls = 6,
90         .start_tbl_idx = 56
91         },
92         /* class-ing-em-[eth, (vlan), ipv4, udp]-[dmac, (vid), sip, dip, sp, dp]:12 */
93         /* class_tid: 12, stingray, ingress */
94         [12] = {
95         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
96         .num_tbls = 5,
97         .start_tbl_idx = 62
98         },
99         /* class-ing-em-[eth, (vlan), ipv4, tcp]-[dmac, (vid), sip, dip, sp, dp]:13 */
100         /* class_tid: 13, stingray, ingress */
101         [13] = {
102         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
103         .num_tbls = 5,
104         .start_tbl_idx = 67
105         },
106         /* class-ing-em-[eth, (vlan), ipv6, udp]-[dmac, (vid), sip, dip, sp, dp]:14 */
107         /* class_tid: 14, stingray, ingress */
108         [14] = {
109         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
110         .num_tbls = 5,
111         .start_tbl_idx = 72
112         },
113         /* class-ing-em-[eth, (vlan), ipv6, tcp]-[dmac, (vid), sip, dip, sp, dp]:15 */
114         /* class_tid: 15, stingray, ingress */
115         [15] = {
116         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
117         .num_tbls = 5,
118         .start_tbl_idx = 77
119         },
120         /* class-ing-em-[eth, (vlan), ipv4, udp, vxlan]-[dmac, (vid), dip, dp]:16 */
121         /* class_tid: 16, stingray, ingress */
122         [16] = {
123         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
124         .num_tbls = 5,
125         .start_tbl_idx = 82
126         },
127         /* class-ing-em-[eth, (vlan), ipv6, udp, vxlan]-[t_dmac, (vid), t_dip, t_dp]:17 */
128         /* class_tid: 17, stingray, ingress */
129         [17] = {
130         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
131         .num_tbls = 5,
132         .start_tbl_idx = 87
133         },
134         /* class-ing-em-f1-[eth, ipv4, udp, vxlan]-[t_dmac]:18 */
135         /* class_tid: 18, stingray, ingress */
136         [18] = {
137         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
138         .num_tbls = 5,
139         .start_tbl_idx = 92
140         },
141         /* class-ing-em-f2-[ipv4, udp, vxlan]-[vni, i_dmac]:19 */
142         /* class_tid: 19, stingray, ingress */
143         [19] = {
144         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
145         .num_tbls = 5,
146         .start_tbl_idx = 97
147         },
148         /* class-egr-em-[eth, ipv4, udp]-[sip, dip, sp, dp]:20 */
149         /* class_tid: 20, stingray, egress */
150         [20] = {
151         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
152         .num_tbls = 6,
153         .start_tbl_idx = 102
154         },
155         /* class-egr-em-[eth, ipv4, tcp]-[sip, dip, sp, dp]:21 */
156         /* class_tid: 21, stingray, egress */
157         [21] = {
158         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
159         .num_tbls = 6,
160         .start_tbl_idx = 108
161         },
162         /* class-egr-em-[eth-ipv6-udp]-[sip-dip-sp-dp]:22 */
163         /* class_tid: 22, stingray, egress */
164         [22] = {
165         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
166         .num_tbls = 6,
167         .start_tbl_idx = 114
168         },
169         /* class-egr-em-[eth, ipv6, tcp]-[sip, dip, sp, dp]:23 */
170         /* class_tid: 23, stingray, egress */
171         [23] = {
172         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
173         .num_tbls = 6,
174         .start_tbl_idx = 120
175         },
176         /* class-egr-em-[eth, (vlan), ipv4]-[smac, dmac, type]:24 */
177         /* class_tid: 24, stingray, egress */
178         [24] = {
179         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
180         .num_tbls = 5,
181         .start_tbl_idx = 126
182         },
183         /* class-egr-em-[eth, (vlan), ipv6]-[smac, dmac, type]:25 */
184         /* class_tid: 25, stingray, egress */
185         [25] = {
186         .device_name = BNXT_ULP_DEVICE_ID_STINGRAY,
187         .num_tbls = 5,
188         .start_tbl_idx = 131
189         }
190 };
191
192 struct bnxt_ulp_mapper_tbl_info ulp_stingray_class_tbl_list[] = {
193         { /* class_tid: 1, stingray, table: int_full_act_record_0 */
194         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
195         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
196         .resource_sub_type =
197                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
198         .direction = TF_DIR_RX,
199         .result_start_idx = 0,
200         .result_bit_size = 128,
201         .result_num_fields = 26,
202         .encap_num_fields = 0,
203         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
204         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
205         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
206         },
207         { /* class_tid: 1, stingray, table: l2_cntxt_cache_0 */
208         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
209         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
210         .resource_sub_type =
211                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
212         .direction = TF_DIR_RX,
213         .key_start_idx = 0,
214         .blob_key_bit_size = 12,
215         .key_bit_size = 12,
216         .key_num_fields = 1,
217         .result_start_idx = 26,
218         .result_bit_size = 10,
219         .result_num_fields = 1,
220         .encap_num_fields = 0,
221         .ident_start_idx = 0,
222         .ident_nums = 1
223         },
224         { /* class_tid: 1, stingray, table: l2_cntxt_tcam_0 */
225         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
226         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
227         .direction = TF_DIR_RX,
228         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
229         .pri_operand = 0,
230         .key_start_idx = 1,
231         .blob_key_bit_size = 171,
232         .key_bit_size = 171,
233         .key_num_fields = 13,
234         .result_start_idx = 27,
235         .result_bit_size = 64,
236         .result_num_fields = 13,
237         .encap_num_fields = 0,
238         .ident_start_idx = 1,
239         .ident_nums = 0,
240         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
241         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
242         },
243         { /* class_tid: 1, stingray, table: parif_def_lkup_arec_ptr_0 */
244         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
245         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
246         .direction = TF_DIR_RX,
247         .result_start_idx = 40,
248         .result_bit_size = 32,
249         .result_num_fields = 1,
250         .encap_num_fields = 0,
251         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
252         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
253         },
254         { /* class_tid: 1, stingray, table: parif_def_arec_ptr_0 */
255         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
256         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
257         .direction = TF_DIR_RX,
258         .result_start_idx = 41,
259         .result_bit_size = 32,
260         .result_num_fields = 1,
261         .encap_num_fields = 0,
262         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
263         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
264         },
265         { /* class_tid: 1, stingray, table: parif_def_err_arec_ptr_0 */
266         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
267         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
268         .direction = TF_DIR_RX,
269         .result_start_idx = 42,
270         .result_bit_size = 32,
271         .result_num_fields = 1,
272         .encap_num_fields = 0,
273         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
274         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
275         },
276         { /* class_tid: 2, stingray, table: int_full_act_record_0 */
277         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
278         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
279         .resource_sub_type =
280                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
281         .direction = TF_DIR_TX,
282         .result_start_idx = 43,
283         .result_bit_size = 128,
284         .result_num_fields = 26,
285         .encap_num_fields = 0,
286         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
287         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
288         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
289         },
290         { /* class_tid: 2, stingray, table: l2_cntxt_tcam_vfr_0 */
291         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
292         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
293         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_IS_SET,
294         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
295         .direction = TF_DIR_TX,
296         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
297         .pri_operand = 0,
298         .key_start_idx = 14,
299         .blob_key_bit_size = 171,
300         .key_bit_size = 171,
301         .key_num_fields = 13,
302         .result_start_idx = 69,
303         .result_bit_size = 64,
304         .result_num_fields = 13,
305         .encap_num_fields = 0,
306         .ident_start_idx = 1,
307         .ident_nums = 0,
308         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
309         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
310         },
311         { /* class_tid: 2, stingray, table: l2_cntxt_cache_0 */
312         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
313         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
314         .resource_sub_type =
315                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
316         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET,
317         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
318         .direction = TF_DIR_TX,
319         .key_start_idx = 27,
320         .blob_key_bit_size = 12,
321         .key_bit_size = 12,
322         .key_num_fields = 1,
323         .result_start_idx = 82,
324         .result_bit_size = 10,
325         .result_num_fields = 1,
326         .encap_num_fields = 0,
327         .ident_start_idx = 1,
328         .ident_nums = 1
329         },
330         { /* class_tid: 2, stingray, table: l2_cntxt_tcam_0 */
331         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
332         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
333         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET,
334         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
335         .direction = TF_DIR_TX,
336         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
337         .pri_operand = 0,
338         .key_start_idx = 28,
339         .blob_key_bit_size = 171,
340         .key_bit_size = 171,
341         .key_num_fields = 13,
342         .result_start_idx = 83,
343         .result_bit_size = 64,
344         .result_num_fields = 13,
345         .encap_num_fields = 0,
346         .ident_start_idx = 2,
347         .ident_nums = 0,
348         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
349         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
350         },
351         { /* class_tid: 2, stingray, table: parif_def_lkup_arec_ptr_0 */
352         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
353         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
354         .direction = TF_DIR_TX,
355         .result_start_idx = 96,
356         .result_bit_size = 32,
357         .result_num_fields = 1,
358         .encap_num_fields = 0,
359         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
360         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
361         },
362         { /* class_tid: 2, stingray, table: parif_def_arec_ptr_0 */
363         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
364         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
365         .direction = TF_DIR_TX,
366         .result_start_idx = 97,
367         .result_bit_size = 32,
368         .result_num_fields = 1,
369         .encap_num_fields = 0,
370         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
371         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
372         },
373         { /* class_tid: 2, stingray, table: parif_def_err_arec_ptr_0 */
374         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
375         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
376         .direction = TF_DIR_TX,
377         .result_start_idx = 98,
378         .result_bit_size = 32,
379         .result_num_fields = 1,
380         .encap_num_fields = 0,
381         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
382         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
383         },
384         { /* class_tid: 3, stingray, table: egr_int_vtag_encap_record_0 */
385         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
386         .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
387         .resource_sub_type =
388                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
389         .direction = TF_DIR_TX,
390         .result_start_idx = 99,
391         .result_bit_size = 0,
392         .result_num_fields = 0,
393         .encap_num_fields = 12,
394         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
395         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
396         .tbl_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0
397         },
398         { /* class_tid: 3, stingray, table: egr_int_full_act_record_0 */
399         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
400         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
401         .resource_sub_type =
402                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
403         .direction = TF_DIR_TX,
404         .result_start_idx = 111,
405         .result_bit_size = 128,
406         .result_num_fields = 26,
407         .encap_num_fields = 0,
408         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
409         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
410         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
411         },
412         { /* class_tid: 3, stingray, table: egr_l2_cntxt_cache_0 */
413         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
414         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
415         .resource_sub_type =
416                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
417         .direction = TF_DIR_TX,
418         .key_start_idx = 41,
419         .blob_key_bit_size = 12,
420         .key_bit_size = 12,
421         .key_num_fields = 1,
422         .result_start_idx = 137,
423         .result_bit_size = 0,
424         .result_num_fields = 0,
425         .encap_num_fields = 0,
426         .ident_start_idx = 2,
427         .ident_nums = 0
428         },
429         { /* class_tid: 3, stingray, table: egr_l2_cntxt_tcam_0 */
430         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
431         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
432         .direction = TF_DIR_TX,
433         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
434         .pri_operand = 0,
435         .key_start_idx = 42,
436         .blob_key_bit_size = 171,
437         .key_bit_size = 171,
438         .key_num_fields = 13,
439         .result_start_idx = 137,
440         .result_bit_size = 64,
441         .result_num_fields = 13,
442         .encap_num_fields = 0,
443         .ident_start_idx = 2,
444         .ident_nums = 0,
445         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
446         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
447         },
448         { /* class_tid: 3, stingray, table: ing_int_full_act_record_0 */
449         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
450         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
451         .resource_sub_type =
452                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
453         .direction = TF_DIR_RX,
454         .result_start_idx = 150,
455         .result_bit_size = 128,
456         .result_num_fields = 26,
457         .encap_num_fields = 0,
458         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
459         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
460         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
461         },
462         { /* class_tid: 3, stingray, table: ing_l2_cntxt_dtagged_0 */
463         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
464         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
465         .direction = TF_DIR_RX,
466         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
467         .pri_operand = 0,
468         .key_start_idx = 55,
469         .blob_key_bit_size = 171,
470         .key_bit_size = 171,
471         .key_num_fields = 13,
472         .result_start_idx = 176,
473         .result_bit_size = 64,
474         .result_num_fields = 13,
475         .encap_num_fields = 0,
476         .ident_start_idx = 2,
477         .ident_nums = 0,
478         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
479         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
480         },
481         { /* class_tid: 3, stingray, table: ing_l2_cntxt_stagged_0 */
482         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
483         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
484         .direction = TF_DIR_RX,
485         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
486         .pri_operand = 0,
487         .key_start_idx = 68,
488         .blob_key_bit_size = 171,
489         .key_bit_size = 171,
490         .key_num_fields = 13,
491         .result_start_idx = 189,
492         .result_bit_size = 64,
493         .result_num_fields = 13,
494         .encap_num_fields = 0,
495         .ident_start_idx = 2,
496         .ident_nums = 0,
497         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
498         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
499         },
500         { /* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */
501         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
502         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
503         .resource_sub_type =
504                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
505         .direction = TF_DIR_TX,
506         .key_start_idx = 81,
507         .blob_key_bit_size = 12,
508         .key_bit_size = 12,
509         .key_num_fields = 1,
510         .result_start_idx = 202,
511         .result_bit_size = 10,
512         .result_num_fields = 1,
513         .encap_num_fields = 0,
514         .ident_start_idx = 2,
515         .ident_nums = 1
516         },
517         { /* class_tid: 4, stingray, table: egr_l2_cntxt_tcam_0 */
518         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
519         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
520         .direction = TF_DIR_TX,
521         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
522         .pri_operand = 0,
523         .key_start_idx = 82,
524         .blob_key_bit_size = 171,
525         .key_bit_size = 171,
526         .key_num_fields = 13,
527         .result_start_idx = 203,
528         .result_bit_size = 64,
529         .result_num_fields = 13,
530         .encap_num_fields = 0,
531         .ident_start_idx = 3,
532         .ident_nums = 0,
533         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
534         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
535         },
536         { /* class_tid: 4, stingray, table: egr_parif_def_lkup_arec_ptr_0 */
537         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
538         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
539         .direction = TF_DIR_TX,
540         .result_start_idx = 216,
541         .result_bit_size = 32,
542         .result_num_fields = 1,
543         .encap_num_fields = 0,
544         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
545         .tbl_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
546         },
547         { /* class_tid: 4, stingray, table: egr_parif_def_arec_ptr_0 */
548         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
549         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
550         .direction = TF_DIR_TX,
551         .result_start_idx = 217,
552         .result_bit_size = 32,
553         .result_num_fields = 1,
554         .encap_num_fields = 0,
555         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
556         .tbl_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
557         },
558         { /* class_tid: 4, stingray, table: egr_parif_def_err_arec_ptr_0 */
559         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
560         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
561         .direction = TF_DIR_TX,
562         .result_start_idx = 218,
563         .result_bit_size = 32,
564         .result_num_fields = 1,
565         .encap_num_fields = 0,
566         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
567         .tbl_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
568         },
569         { /* class_tid: 4, stingray, table: ing_int_full_act_record_0 */
570         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
571         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
572         .resource_sub_type =
573                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
574         .direction = TF_DIR_RX,
575         .result_start_idx = 219,
576         .result_bit_size = 128,
577         .result_num_fields = 26,
578         .encap_num_fields = 0,
579         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG,
580         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
581         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
582         },
583         { /* class_tid: 4, stingray, table: ing_l2_cntxt_tcam_0 */
584         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
585         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
586         .direction = TF_DIR_RX,
587         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
588         .pri_operand = 0,
589         .key_start_idx = 95,
590         .blob_key_bit_size = 171,
591         .key_bit_size = 171,
592         .key_num_fields = 13,
593         .result_start_idx = 245,
594         .result_bit_size = 64,
595         .result_num_fields = 13,
596         .encap_num_fields = 0,
597         .ident_start_idx = 3,
598         .ident_nums = 0,
599         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
600         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
601         },
602         { /* class_tid: 5, stingray, table: int_full_act_record_0 */
603         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
604         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
605         .resource_sub_type =
606                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
607         .direction = TF_DIR_TX,
608         .result_start_idx = 258,
609         .result_bit_size = 128,
610         .result_num_fields = 26,
611         .encap_num_fields = 0,
612         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
613         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
614         .tbl_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR
615         },
616         { /* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */
617         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
618         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
619         .direction = TF_DIR_RX,
620         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
621         .pri_operand = 0,
622         .key_start_idx = 108,
623         .blob_key_bit_size = 171,
624         .key_bit_size = 171,
625         .key_num_fields = 13,
626         .result_start_idx = 284,
627         .result_bit_size = 64,
628         .result_num_fields = 13,
629         .encap_num_fields = 0,
630         .ident_start_idx = 3,
631         .ident_nums = 1,
632         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
633         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
634         },
635         { /* class_tid: 6, stingray, table: profile_tcam_cache_0 */
636         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
637         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
638         .resource_sub_type =
639                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
640         .direction = TF_DIR_RX,
641         .key_start_idx = 121,
642         .blob_key_bit_size = 16,
643         .key_bit_size = 16,
644         .key_num_fields = 3,
645         .result_start_idx = 297,
646         .result_bit_size = 10,
647         .result_num_fields = 1,
648         .encap_num_fields = 0,
649         .ident_start_idx = 4,
650         .ident_nums = 1
651         },
652         { /* class_tid: 6, stingray, table: profile_tcam_0 */
653         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
654         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
655         .direction = TF_DIR_RX,
656         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
657         .pri_operand = 1,
658         .key_start_idx = 124,
659         .blob_key_bit_size = 81,
660         .key_bit_size = 81,
661         .key_num_fields = 43,
662         .result_start_idx = 298,
663         .result_bit_size = 38,
664         .result_num_fields = 8,
665         .encap_num_fields = 0,
666         .ident_start_idx = 5,
667         .ident_nums = 0,
668         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
669         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
670         },
671         { /* class_tid: 6, stingray, table: ext_em_0 */
672         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
673         .resource_type = TF_MEM_EXTERNAL,
674         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
675         .direction = TF_DIR_RX,
676         .key_start_idx = 167,
677         .blob_key_bit_size = 448,
678         .key_bit_size = 448,
679         .key_num_fields = 11,
680         .result_start_idx = 306,
681         .result_bit_size = 64,
682         .result_num_fields = 9,
683         .encap_num_fields = 0,
684         .ident_start_idx = 5,
685         .ident_nums = 0,
686         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
687         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
688         },
689         { /* class_tid: 6, stingray, table: int_em_0 */
690         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
691         .resource_type = TF_MEM_INTERNAL,
692         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
693         .direction = TF_DIR_RX,
694         .key_start_idx = 178,
695         .blob_key_bit_size = 200,
696         .key_bit_size = 200,
697         .key_num_fields = 11,
698         .result_start_idx = 315,
699         .result_bit_size = 64,
700         .result_num_fields = 9,
701         .encap_num_fields = 0,
702         .ident_start_idx = 5,
703         .ident_nums = 0,
704         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
705         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
706         },
707         { /* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */
708         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
709         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
710         .direction = TF_DIR_RX,
711         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
712         .pri_operand = 0,
713         .key_start_idx = 189,
714         .blob_key_bit_size = 171,
715         .key_bit_size = 171,
716         .key_num_fields = 13,
717         .result_start_idx = 324,
718         .result_bit_size = 64,
719         .result_num_fields = 13,
720         .encap_num_fields = 0,
721         .ident_start_idx = 5,
722         .ident_nums = 1,
723         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
724         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
725         },
726         { /* class_tid: 7, stingray, table: profile_tcam_cache_0 */
727         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
728         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
729         .resource_sub_type =
730                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
731         .direction = TF_DIR_RX,
732         .key_start_idx = 202,
733         .blob_key_bit_size = 16,
734         .key_bit_size = 16,
735         .key_num_fields = 3,
736         .result_start_idx = 337,
737         .result_bit_size = 10,
738         .result_num_fields = 1,
739         .encap_num_fields = 0,
740         .ident_start_idx = 6,
741         .ident_nums = 1
742         },
743         { /* class_tid: 7, stingray, table: profile_tcam_0 */
744         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
745         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
746         .direction = TF_DIR_RX,
747         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
748         .pri_operand = 1,
749         .key_start_idx = 205,
750         .blob_key_bit_size = 81,
751         .key_bit_size = 81,
752         .key_num_fields = 43,
753         .result_start_idx = 338,
754         .result_bit_size = 38,
755         .result_num_fields = 8,
756         .encap_num_fields = 0,
757         .ident_start_idx = 7,
758         .ident_nums = 0,
759         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
760         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
761         },
762         { /* class_tid: 7, stingray, table: ext_em_0 */
763         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
764         .resource_type = TF_MEM_EXTERNAL,
765         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
766         .direction = TF_DIR_RX,
767         .key_start_idx = 248,
768         .blob_key_bit_size = 448,
769         .key_bit_size = 448,
770         .key_num_fields = 11,
771         .result_start_idx = 346,
772         .result_bit_size = 64,
773         .result_num_fields = 9,
774         .encap_num_fields = 0,
775         .ident_start_idx = 7,
776         .ident_nums = 0,
777         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
778         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
779         },
780         { /* class_tid: 7, stingray, table: int_em_0 */
781         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
782         .resource_type = TF_MEM_INTERNAL,
783         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
784         .direction = TF_DIR_RX,
785         .key_start_idx = 259,
786         .blob_key_bit_size = 200,
787         .key_bit_size = 200,
788         .key_num_fields = 11,
789         .result_start_idx = 355,
790         .result_bit_size = 64,
791         .result_num_fields = 9,
792         .encap_num_fields = 0,
793         .ident_start_idx = 7,
794         .ident_nums = 0,
795         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
796         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
797         },
798         { /* class_tid: 8, stingray, table: l2_cntxt_cache_0 */
799         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
800         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
801         .resource_sub_type =
802                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
803         .direction = TF_DIR_RX,
804         .key_start_idx = 270,
805         .blob_key_bit_size = 12,
806         .key_bit_size = 12,
807         .key_num_fields = 1,
808         .result_start_idx = 364,
809         .result_bit_size = 10,
810         .result_num_fields = 1,
811         .encap_num_fields = 0,
812         .ident_start_idx = 7,
813         .ident_nums = 1
814         },
815         { /* class_tid: 8, stingray, table: l2_cntxt_tcam_0 */
816         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
817         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
818         .direction = TF_DIR_RX,
819         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
820         .pri_operand = 0,
821         .key_start_idx = 271,
822         .blob_key_bit_size = 171,
823         .key_bit_size = 171,
824         .key_num_fields = 13,
825         .result_start_idx = 365,
826         .result_bit_size = 64,
827         .result_num_fields = 13,
828         .encap_num_fields = 0,
829         .ident_start_idx = 8,
830         .ident_nums = 0,
831         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
832         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
833         },
834         { /* class_tid: 8, stingray, table: profile_tcam_cache_0 */
835         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
836         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
837         .resource_sub_type =
838                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
839         .direction = TF_DIR_RX,
840         .key_start_idx = 284,
841         .blob_key_bit_size = 16,
842         .key_bit_size = 16,
843         .key_num_fields = 3,
844         .result_start_idx = 378,
845         .result_bit_size = 10,
846         .result_num_fields = 1,
847         .encap_num_fields = 0,
848         .ident_start_idx = 8,
849         .ident_nums = 1
850         },
851         { /* class_tid: 8, stingray, table: profile_tcam_0 */
852         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
853         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
854         .direction = TF_DIR_RX,
855         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
856         .pri_operand = 0,
857         .key_start_idx = 287,
858         .blob_key_bit_size = 81,
859         .key_bit_size = 81,
860         .key_num_fields = 43,
861         .result_start_idx = 379,
862         .result_bit_size = 38,
863         .result_num_fields = 8,
864         .encap_num_fields = 0,
865         .ident_start_idx = 9,
866         .ident_nums = 0,
867         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
868         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
869         },
870         { /* class_tid: 8, stingray, table: ext_em_0 */
871         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
872         .resource_type = TF_MEM_EXTERNAL,
873         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
874         .direction = TF_DIR_RX,
875         .key_start_idx = 330,
876         .blob_key_bit_size = 448,
877         .key_bit_size = 448,
878         .key_num_fields = 11,
879         .result_start_idx = 387,
880         .result_bit_size = 64,
881         .result_num_fields = 9,
882         .encap_num_fields = 0,
883         .ident_start_idx = 9,
884         .ident_nums = 0,
885         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
886         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
887         },
888         { /* class_tid: 8, stingray, table: int_em_0 */
889         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
890         .resource_type = TF_MEM_INTERNAL,
891         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
892         .direction = TF_DIR_RX,
893         .key_start_idx = 341,
894         .blob_key_bit_size = 200,
895         .key_bit_size = 200,
896         .key_num_fields = 11,
897         .result_start_idx = 396,
898         .result_bit_size = 64,
899         .result_num_fields = 9,
900         .encap_num_fields = 0,
901         .ident_start_idx = 9,
902         .ident_nums = 0,
903         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
904         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
905         },
906         { /* class_tid: 9, stingray, table: l2_cntxt_cache_0 */
907         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
908         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
909         .resource_sub_type =
910                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
911         .direction = TF_DIR_RX,
912         .key_start_idx = 352,
913         .blob_key_bit_size = 12,
914         .key_bit_size = 12,
915         .key_num_fields = 1,
916         .result_start_idx = 405,
917         .result_bit_size = 10,
918         .result_num_fields = 1,
919         .encap_num_fields = 0,
920         .ident_start_idx = 9,
921         .ident_nums = 1
922         },
923         { /* class_tid: 9, stingray, table: l2_cntxt_tcam_0 */
924         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
925         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
926         .direction = TF_DIR_RX,
927         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
928         .pri_operand = 0,
929         .key_start_idx = 353,
930         .blob_key_bit_size = 171,
931         .key_bit_size = 171,
932         .key_num_fields = 13,
933         .result_start_idx = 406,
934         .result_bit_size = 64,
935         .result_num_fields = 13,
936         .encap_num_fields = 0,
937         .ident_start_idx = 10,
938         .ident_nums = 0,
939         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
940         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
941         },
942         { /* class_tid: 9, stingray, table: profile_tcam_cache_0 */
943         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
944         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
945         .resource_sub_type =
946                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
947         .direction = TF_DIR_RX,
948         .key_start_idx = 366,
949         .blob_key_bit_size = 16,
950         .key_bit_size = 16,
951         .key_num_fields = 3,
952         .result_start_idx = 419,
953         .result_bit_size = 10,
954         .result_num_fields = 1,
955         .encap_num_fields = 0,
956         .ident_start_idx = 10,
957         .ident_nums = 1
958         },
959         { /* class_tid: 9, stingray, table: profile_tcam_0 */
960         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
961         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
962         .direction = TF_DIR_RX,
963         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
964         .pri_operand = 0,
965         .key_start_idx = 369,
966         .blob_key_bit_size = 81,
967         .key_bit_size = 81,
968         .key_num_fields = 43,
969         .result_start_idx = 420,
970         .result_bit_size = 38,
971         .result_num_fields = 8,
972         .encap_num_fields = 0,
973         .ident_start_idx = 11,
974         .ident_nums = 0,
975         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
976         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
977         },
978         { /* class_tid: 9, stingray, table: ext_em_0 */
979         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
980         .resource_type = TF_MEM_EXTERNAL,
981         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
982         .direction = TF_DIR_RX,
983         .key_start_idx = 412,
984         .blob_key_bit_size = 448,
985         .key_bit_size = 448,
986         .key_num_fields = 11,
987         .result_start_idx = 428,
988         .result_bit_size = 64,
989         .result_num_fields = 9,
990         .encap_num_fields = 0,
991         .ident_start_idx = 11,
992         .ident_nums = 0,
993         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
994         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
995         },
996         { /* class_tid: 9, stingray, table: int_em_0 */
997         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
998         .resource_type = TF_MEM_INTERNAL,
999         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1000         .direction = TF_DIR_RX,
1001         .key_start_idx = 423,
1002         .blob_key_bit_size = 200,
1003         .key_bit_size = 200,
1004         .key_num_fields = 11,
1005         .result_start_idx = 437,
1006         .result_bit_size = 64,
1007         .result_num_fields = 9,
1008         .encap_num_fields = 0,
1009         .ident_start_idx = 11,
1010         .ident_nums = 0,
1011         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1012         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1013         },
1014         { /* class_tid: 10, stingray, table: l2_cntxt_cache_0 */
1015         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1016         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1017         .resource_sub_type =
1018                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1019         .direction = TF_DIR_RX,
1020         .key_start_idx = 434,
1021         .blob_key_bit_size = 12,
1022         .key_bit_size = 12,
1023         .key_num_fields = 1,
1024         .result_start_idx = 446,
1025         .result_bit_size = 10,
1026         .result_num_fields = 1,
1027         .encap_num_fields = 0,
1028         .ident_start_idx = 11,
1029         .ident_nums = 1
1030         },
1031         { /* class_tid: 10, stingray, table: l2_cntxt_tcam_0 */
1032         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1033         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1034         .direction = TF_DIR_RX,
1035         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1036         .pri_operand = 0,
1037         .key_start_idx = 435,
1038         .blob_key_bit_size = 171,
1039         .key_bit_size = 171,
1040         .key_num_fields = 13,
1041         .result_start_idx = 447,
1042         .result_bit_size = 64,
1043         .result_num_fields = 13,
1044         .encap_num_fields = 0,
1045         .ident_start_idx = 12,
1046         .ident_nums = 0,
1047         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1048         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1049         },
1050         { /* class_tid: 10, stingray, table: profile_tcam_cache_0 */
1051         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1052         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1053         .resource_sub_type =
1054                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1055         .direction = TF_DIR_RX,
1056         .key_start_idx = 448,
1057         .blob_key_bit_size = 16,
1058         .key_bit_size = 16,
1059         .key_num_fields = 3,
1060         .result_start_idx = 460,
1061         .result_bit_size = 10,
1062         .result_num_fields = 1,
1063         .encap_num_fields = 0,
1064         .ident_start_idx = 12,
1065         .ident_nums = 1
1066         },
1067         { /* class_tid: 10, stingray, table: profile_tcam_0 */
1068         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1069         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1070         .direction = TF_DIR_RX,
1071         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1072         .pri_operand = 0,
1073         .key_start_idx = 451,
1074         .blob_key_bit_size = 81,
1075         .key_bit_size = 81,
1076         .key_num_fields = 43,
1077         .result_start_idx = 461,
1078         .result_bit_size = 38,
1079         .result_num_fields = 8,
1080         .encap_num_fields = 0,
1081         .ident_start_idx = 13,
1082         .ident_nums = 0,
1083         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1084         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1085         },
1086         { /* class_tid: 10, stingray, table: ext_em_0 */
1087         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1088         .resource_type = TF_MEM_EXTERNAL,
1089         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1090         .direction = TF_DIR_RX,
1091         .key_start_idx = 494,
1092         .blob_key_bit_size = 448,
1093         .key_bit_size = 448,
1094         .key_num_fields = 11,
1095         .result_start_idx = 469,
1096         .result_bit_size = 64,
1097         .result_num_fields = 9,
1098         .encap_num_fields = 0,
1099         .ident_start_idx = 13,
1100         .ident_nums = 0,
1101         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1102         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1103         },
1104         { /* class_tid: 10, stingray, table: int_em_0 */
1105         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1106         .resource_type = TF_MEM_INTERNAL,
1107         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1108         .direction = TF_DIR_RX,
1109         .key_start_idx = 505,
1110         .blob_key_bit_size = 392,
1111         .key_bit_size = 392,
1112         .key_num_fields = 11,
1113         .result_start_idx = 478,
1114         .result_bit_size = 64,
1115         .result_num_fields = 9,
1116         .encap_num_fields = 0,
1117         .ident_start_idx = 13,
1118         .ident_nums = 0,
1119         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1120         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1121         },
1122         { /* class_tid: 11, stingray, table: l2_cntxt_cache_0 */
1123         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1124         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1125         .resource_sub_type =
1126                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1127         .direction = TF_DIR_RX,
1128         .key_start_idx = 516,
1129         .blob_key_bit_size = 12,
1130         .key_bit_size = 12,
1131         .key_num_fields = 1,
1132         .result_start_idx = 487,
1133         .result_bit_size = 10,
1134         .result_num_fields = 1,
1135         .encap_num_fields = 0,
1136         .ident_start_idx = 13,
1137         .ident_nums = 1
1138         },
1139         { /* class_tid: 11, stingray, table: l2_cntxt_tcam_0 */
1140         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1141         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1142         .direction = TF_DIR_RX,
1143         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1144         .pri_operand = 0,
1145         .key_start_idx = 517,
1146         .blob_key_bit_size = 171,
1147         .key_bit_size = 171,
1148         .key_num_fields = 13,
1149         .result_start_idx = 488,
1150         .result_bit_size = 64,
1151         .result_num_fields = 13,
1152         .encap_num_fields = 0,
1153         .ident_start_idx = 14,
1154         .ident_nums = 0,
1155         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1156         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1157         },
1158         { /* class_tid: 11, stingray, table: profile_tcam_cache_0 */
1159         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1160         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1161         .resource_sub_type =
1162                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1163         .direction = TF_DIR_RX,
1164         .key_start_idx = 530,
1165         .blob_key_bit_size = 16,
1166         .key_bit_size = 16,
1167         .key_num_fields = 3,
1168         .result_start_idx = 501,
1169         .result_bit_size = 10,
1170         .result_num_fields = 1,
1171         .encap_num_fields = 0,
1172         .ident_start_idx = 14,
1173         .ident_nums = 1
1174         },
1175         { /* class_tid: 11, stingray, table: profile_tcam_0 */
1176         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1177         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1178         .direction = TF_DIR_RX,
1179         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1180         .pri_operand = 0,
1181         .key_start_idx = 533,
1182         .blob_key_bit_size = 81,
1183         .key_bit_size = 81,
1184         .key_num_fields = 43,
1185         .result_start_idx = 502,
1186         .result_bit_size = 38,
1187         .result_num_fields = 8,
1188         .encap_num_fields = 0,
1189         .ident_start_idx = 15,
1190         .ident_nums = 0,
1191         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1192         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1193         },
1194         { /* class_tid: 11, stingray, table: ext_em_0 */
1195         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1196         .resource_type = TF_MEM_EXTERNAL,
1197         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1198         .direction = TF_DIR_RX,
1199         .key_start_idx = 576,
1200         .blob_key_bit_size = 448,
1201         .key_bit_size = 448,
1202         .key_num_fields = 11,
1203         .result_start_idx = 510,
1204         .result_bit_size = 64,
1205         .result_num_fields = 9,
1206         .encap_num_fields = 0,
1207         .ident_start_idx = 15,
1208         .ident_nums = 0,
1209         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1210         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1211         },
1212         { /* class_tid: 11, stingray, table: int_em_0 */
1213         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1214         .resource_type = TF_MEM_INTERNAL,
1215         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1216         .direction = TF_DIR_RX,
1217         .key_start_idx = 587,
1218         .blob_key_bit_size = 392,
1219         .key_bit_size = 392,
1220         .key_num_fields = 11,
1221         .result_start_idx = 519,
1222         .result_bit_size = 64,
1223         .result_num_fields = 9,
1224         .encap_num_fields = 0,
1225         .ident_start_idx = 15,
1226         .ident_nums = 0,
1227         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1228         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1229         },
1230         { /* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */
1231         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1232         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1233         .direction = TF_DIR_RX,
1234         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1235         .pri_operand = 0,
1236         .key_start_idx = 598,
1237         .blob_key_bit_size = 171,
1238         .key_bit_size = 171,
1239         .key_num_fields = 13,
1240         .result_start_idx = 528,
1241         .result_bit_size = 64,
1242         .result_num_fields = 13,
1243         .encap_num_fields = 0,
1244         .ident_start_idx = 15,
1245         .ident_nums = 1,
1246         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1247         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1248         },
1249         { /* class_tid: 12, stingray, table: profile_tcam_cache_0 */
1250         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1251         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1252         .resource_sub_type =
1253                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1254         .direction = TF_DIR_RX,
1255         .key_start_idx = 611,
1256         .blob_key_bit_size = 16,
1257         .key_bit_size = 16,
1258         .key_num_fields = 3,
1259         .result_start_idx = 541,
1260         .result_bit_size = 10,
1261         .result_num_fields = 1,
1262         .encap_num_fields = 0,
1263         .ident_start_idx = 16,
1264         .ident_nums = 1
1265         },
1266         { /* class_tid: 12, stingray, table: profile_tcam_0 */
1267         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1268         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1269         .direction = TF_DIR_RX,
1270         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1271         .pri_operand = 0,
1272         .key_start_idx = 614,
1273         .blob_key_bit_size = 81,
1274         .key_bit_size = 81,
1275         .key_num_fields = 43,
1276         .result_start_idx = 542,
1277         .result_bit_size = 38,
1278         .result_num_fields = 8,
1279         .encap_num_fields = 0,
1280         .ident_start_idx = 17,
1281         .ident_nums = 0,
1282         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1283         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1284         },
1285         { /* class_tid: 12, stingray, table: ext_em_0 */
1286         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1287         .resource_type = TF_MEM_EXTERNAL,
1288         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1289         .direction = TF_DIR_RX,
1290         .key_start_idx = 657,
1291         .blob_key_bit_size = 448,
1292         .key_bit_size = 448,
1293         .key_num_fields = 11,
1294         .result_start_idx = 550,
1295         .result_bit_size = 64,
1296         .result_num_fields = 9,
1297         .encap_num_fields = 0,
1298         .ident_start_idx = 17,
1299         .ident_nums = 0,
1300         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1301         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1302         },
1303         { /* class_tid: 12, stingray, table: int_em_0 */
1304         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1305         .resource_type = TF_MEM_INTERNAL,
1306         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1307         .direction = TF_DIR_RX,
1308         .key_start_idx = 668,
1309         .blob_key_bit_size = 200,
1310         .key_bit_size = 200,
1311         .key_num_fields = 11,
1312         .result_start_idx = 559,
1313         .result_bit_size = 64,
1314         .result_num_fields = 9,
1315         .encap_num_fields = 0,
1316         .ident_start_idx = 17,
1317         .ident_nums = 0,
1318         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1319         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1320         },
1321         { /* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */
1322         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1323         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1324         .direction = TF_DIR_RX,
1325         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1326         .pri_operand = 0,
1327         .key_start_idx = 679,
1328         .blob_key_bit_size = 171,
1329         .key_bit_size = 171,
1330         .key_num_fields = 13,
1331         .result_start_idx = 568,
1332         .result_bit_size = 64,
1333         .result_num_fields = 13,
1334         .encap_num_fields = 0,
1335         .ident_start_idx = 17,
1336         .ident_nums = 1,
1337         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1338         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1339         },
1340         { /* class_tid: 13, stingray, table: profile_tcam_cache_0 */
1341         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1342         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1343         .resource_sub_type =
1344                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1345         .direction = TF_DIR_RX,
1346         .key_start_idx = 692,
1347         .blob_key_bit_size = 16,
1348         .key_bit_size = 16,
1349         .key_num_fields = 3,
1350         .result_start_idx = 581,
1351         .result_bit_size = 10,
1352         .result_num_fields = 1,
1353         .encap_num_fields = 0,
1354         .ident_start_idx = 18,
1355         .ident_nums = 1
1356         },
1357         { /* class_tid: 13, stingray, table: profile_tcam_0 */
1358         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1359         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1360         .direction = TF_DIR_RX,
1361         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1362         .pri_operand = 0,
1363         .key_start_idx = 695,
1364         .blob_key_bit_size = 81,
1365         .key_bit_size = 81,
1366         .key_num_fields = 43,
1367         .result_start_idx = 582,
1368         .result_bit_size = 38,
1369         .result_num_fields = 8,
1370         .encap_num_fields = 0,
1371         .ident_start_idx = 19,
1372         .ident_nums = 0,
1373         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1374         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1375         },
1376         { /* class_tid: 13, stingray, table: ext_em_0 */
1377         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1378         .resource_type = TF_MEM_EXTERNAL,
1379         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1380         .direction = TF_DIR_RX,
1381         .key_start_idx = 738,
1382         .blob_key_bit_size = 448,
1383         .key_bit_size = 448,
1384         .key_num_fields = 11,
1385         .result_start_idx = 590,
1386         .result_bit_size = 64,
1387         .result_num_fields = 9,
1388         .encap_num_fields = 0,
1389         .ident_start_idx = 19,
1390         .ident_nums = 0,
1391         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1392         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1393         },
1394         { /* class_tid: 13, stingray, table: int_em_0 */
1395         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1396         .resource_type = TF_MEM_INTERNAL,
1397         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1398         .direction = TF_DIR_RX,
1399         .key_start_idx = 749,
1400         .blob_key_bit_size = 200,
1401         .key_bit_size = 200,
1402         .key_num_fields = 11,
1403         .result_start_idx = 599,
1404         .result_bit_size = 64,
1405         .result_num_fields = 9,
1406         .encap_num_fields = 0,
1407         .ident_start_idx = 19,
1408         .ident_nums = 0,
1409         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1410         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1411         },
1412         { /* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */
1413         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1414         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1415         .direction = TF_DIR_RX,
1416         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1417         .pri_operand = 0,
1418         .key_start_idx = 760,
1419         .blob_key_bit_size = 171,
1420         .key_bit_size = 171,
1421         .key_num_fields = 13,
1422         .result_start_idx = 608,
1423         .result_bit_size = 64,
1424         .result_num_fields = 13,
1425         .encap_num_fields = 0,
1426         .ident_start_idx = 19,
1427         .ident_nums = 1,
1428         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1429         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1430         },
1431         { /* class_tid: 14, stingray, table: profile_tcam_cache_0 */
1432         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1433         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1434         .resource_sub_type =
1435                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1436         .direction = TF_DIR_RX,
1437         .key_start_idx = 773,
1438         .blob_key_bit_size = 16,
1439         .key_bit_size = 16,
1440         .key_num_fields = 3,
1441         .result_start_idx = 621,
1442         .result_bit_size = 10,
1443         .result_num_fields = 1,
1444         .encap_num_fields = 0,
1445         .ident_start_idx = 20,
1446         .ident_nums = 1
1447         },
1448         { /* class_tid: 14, stingray, table: profile_tcam_0 */
1449         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1450         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1451         .direction = TF_DIR_RX,
1452         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1453         .pri_operand = 0,
1454         .key_start_idx = 776,
1455         .blob_key_bit_size = 81,
1456         .key_bit_size = 81,
1457         .key_num_fields = 43,
1458         .result_start_idx = 622,
1459         .result_bit_size = 38,
1460         .result_num_fields = 8,
1461         .encap_num_fields = 0,
1462         .ident_start_idx = 21,
1463         .ident_nums = 0,
1464         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1465         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1466         },
1467         { /* class_tid: 14, stingray, table: ext_em_0 */
1468         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1469         .resource_type = TF_MEM_EXTERNAL,
1470         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1471         .direction = TF_DIR_RX,
1472         .key_start_idx = 819,
1473         .blob_key_bit_size = 448,
1474         .key_bit_size = 448,
1475         .key_num_fields = 11,
1476         .result_start_idx = 630,
1477         .result_bit_size = 64,
1478         .result_num_fields = 9,
1479         .encap_num_fields = 0,
1480         .ident_start_idx = 21,
1481         .ident_nums = 0,
1482         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1483         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1484         },
1485         { /* class_tid: 14, stingray, table: int_em_0 */
1486         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1487         .resource_type = TF_MEM_INTERNAL,
1488         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1489         .direction = TF_DIR_RX,
1490         .key_start_idx = 830,
1491         .blob_key_bit_size = 392,
1492         .key_bit_size = 392,
1493         .key_num_fields = 11,
1494         .result_start_idx = 639,
1495         .result_bit_size = 64,
1496         .result_num_fields = 9,
1497         .encap_num_fields = 0,
1498         .ident_start_idx = 21,
1499         .ident_nums = 0,
1500         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1501         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1502         },
1503         { /* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */
1504         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1505         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1506         .direction = TF_DIR_RX,
1507         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1508         .pri_operand = 0,
1509         .key_start_idx = 841,
1510         .blob_key_bit_size = 171,
1511         .key_bit_size = 171,
1512         .key_num_fields = 13,
1513         .result_start_idx = 648,
1514         .result_bit_size = 64,
1515         .result_num_fields = 13,
1516         .encap_num_fields = 0,
1517         .ident_start_idx = 21,
1518         .ident_nums = 1,
1519         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1520         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1521         },
1522         { /* class_tid: 15, stingray, table: profile_tcam_cache_0 */
1523         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1524         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1525         .resource_sub_type =
1526                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1527         .direction = TF_DIR_RX,
1528         .key_start_idx = 854,
1529         .blob_key_bit_size = 16,
1530         .key_bit_size = 16,
1531         .key_num_fields = 3,
1532         .result_start_idx = 661,
1533         .result_bit_size = 10,
1534         .result_num_fields = 1,
1535         .encap_num_fields = 0,
1536         .ident_start_idx = 22,
1537         .ident_nums = 1
1538         },
1539         { /* class_tid: 15, stingray, table: profile_tcam_0 */
1540         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1541         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1542         .direction = TF_DIR_RX,
1543         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1544         .pri_operand = 0,
1545         .key_start_idx = 857,
1546         .blob_key_bit_size = 81,
1547         .key_bit_size = 81,
1548         .key_num_fields = 43,
1549         .result_start_idx = 662,
1550         .result_bit_size = 38,
1551         .result_num_fields = 8,
1552         .encap_num_fields = 0,
1553         .ident_start_idx = 23,
1554         .ident_nums = 0,
1555         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1556         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1557         },
1558         { /* class_tid: 15, stingray, table: ext_em_0 */
1559         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1560         .resource_type = TF_MEM_EXTERNAL,
1561         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1562         .direction = TF_DIR_RX,
1563         .key_start_idx = 900,
1564         .blob_key_bit_size = 448,
1565         .key_bit_size = 448,
1566         .key_num_fields = 11,
1567         .result_start_idx = 670,
1568         .result_bit_size = 64,
1569         .result_num_fields = 9,
1570         .encap_num_fields = 0,
1571         .ident_start_idx = 23,
1572         .ident_nums = 0,
1573         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1574         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1575         },
1576         { /* class_tid: 15, stingray, table: int_em_0 */
1577         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1578         .resource_type = TF_MEM_INTERNAL,
1579         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1580         .direction = TF_DIR_RX,
1581         .key_start_idx = 911,
1582         .blob_key_bit_size = 392,
1583         .key_bit_size = 392,
1584         .key_num_fields = 11,
1585         .result_start_idx = 679,
1586         .result_bit_size = 64,
1587         .result_num_fields = 9,
1588         .encap_num_fields = 0,
1589         .ident_start_idx = 23,
1590         .ident_nums = 0,
1591         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1592         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1593         },
1594         { /* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */
1595         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1596         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1597         .direction = TF_DIR_RX,
1598         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1599         .pri_operand = 0,
1600         .key_start_idx = 922,
1601         .blob_key_bit_size = 171,
1602         .key_bit_size = 171,
1603         .key_num_fields = 13,
1604         .result_start_idx = 688,
1605         .result_bit_size = 64,
1606         .result_num_fields = 13,
1607         .encap_num_fields = 0,
1608         .ident_start_idx = 23,
1609         .ident_nums = 1,
1610         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1611         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1612         },
1613         { /* class_tid: 16, stingray, table: profile_tcam_cache_0 */
1614         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1615         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1616         .resource_sub_type =
1617                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1618         .direction = TF_DIR_RX,
1619         .key_start_idx = 935,
1620         .blob_key_bit_size = 16,
1621         .key_bit_size = 16,
1622         .key_num_fields = 3,
1623         .result_start_idx = 701,
1624         .result_bit_size = 10,
1625         .result_num_fields = 1,
1626         .encap_num_fields = 0,
1627         .ident_start_idx = 24,
1628         .ident_nums = 1
1629         },
1630         { /* class_tid: 16, stingray, table: profile_tcam_0 */
1631         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1632         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1633         .direction = TF_DIR_RX,
1634         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1635         .pri_operand = 0,
1636         .key_start_idx = 938,
1637         .blob_key_bit_size = 81,
1638         .key_bit_size = 81,
1639         .key_num_fields = 43,
1640         .result_start_idx = 702,
1641         .result_bit_size = 38,
1642         .result_num_fields = 8,
1643         .encap_num_fields = 0,
1644         .ident_start_idx = 25,
1645         .ident_nums = 0,
1646         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1647         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1648         },
1649         { /* class_tid: 16, stingray, table: ext_em_0 */
1650         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1651         .resource_type = TF_MEM_EXTERNAL,
1652         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1653         .direction = TF_DIR_RX,
1654         .key_start_idx = 981,
1655         .blob_key_bit_size = 448,
1656         .key_bit_size = 448,
1657         .key_num_fields = 11,
1658         .result_start_idx = 710,
1659         .result_bit_size = 64,
1660         .result_num_fields = 9,
1661         .encap_num_fields = 0,
1662         .ident_start_idx = 25,
1663         .ident_nums = 0,
1664         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1665         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1666         },
1667         { /* class_tid: 16, stingray, table: int_em_0 */
1668         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1669         .resource_type = TF_MEM_INTERNAL,
1670         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1671         .direction = TF_DIR_RX,
1672         .key_start_idx = 992,
1673         .blob_key_bit_size = 200,
1674         .key_bit_size = 200,
1675         .key_num_fields = 11,
1676         .result_start_idx = 719,
1677         .result_bit_size = 64,
1678         .result_num_fields = 9,
1679         .encap_num_fields = 0,
1680         .ident_start_idx = 25,
1681         .ident_nums = 0,
1682         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1683         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1684         },
1685         { /* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */
1686         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1687         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1688         .direction = TF_DIR_RX,
1689         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1690         .pri_operand = 0,
1691         .key_start_idx = 1003,
1692         .blob_key_bit_size = 171,
1693         .key_bit_size = 171,
1694         .key_num_fields = 13,
1695         .result_start_idx = 728,
1696         .result_bit_size = 64,
1697         .result_num_fields = 13,
1698         .encap_num_fields = 0,
1699         .ident_start_idx = 25,
1700         .ident_nums = 1,
1701         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1702         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1703         },
1704         { /* class_tid: 17, stingray, table: profile_tcam_cache_0 */
1705         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1706         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1707         .resource_sub_type =
1708                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1709         .direction = TF_DIR_RX,
1710         .key_start_idx = 1016,
1711         .blob_key_bit_size = 16,
1712         .key_bit_size = 16,
1713         .key_num_fields = 3,
1714         .result_start_idx = 741,
1715         .result_bit_size = 10,
1716         .result_num_fields = 1,
1717         .encap_num_fields = 0,
1718         .ident_start_idx = 26,
1719         .ident_nums = 1
1720         },
1721         { /* class_tid: 17, stingray, table: profile_tcam_0 */
1722         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1723         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1724         .direction = TF_DIR_RX,
1725         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1726         .pri_operand = 0,
1727         .key_start_idx = 1019,
1728         .blob_key_bit_size = 81,
1729         .key_bit_size = 81,
1730         .key_num_fields = 43,
1731         .result_start_idx = 742,
1732         .result_bit_size = 38,
1733         .result_num_fields = 8,
1734         .encap_num_fields = 0,
1735         .ident_start_idx = 27,
1736         .ident_nums = 0,
1737         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1738         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1739         },
1740         { /* class_tid: 17, stingray, table: ext_em_0 */
1741         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1742         .resource_type = TF_MEM_EXTERNAL,
1743         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1744         .direction = TF_DIR_RX,
1745         .key_start_idx = 1062,
1746         .blob_key_bit_size = 448,
1747         .key_bit_size = 448,
1748         .key_num_fields = 11,
1749         .result_start_idx = 750,
1750         .result_bit_size = 64,
1751         .result_num_fields = 9,
1752         .encap_num_fields = 0,
1753         .ident_start_idx = 27,
1754         .ident_nums = 0,
1755         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1756         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1757         },
1758         { /* class_tid: 17, stingray, table: int_em_0 */
1759         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1760         .resource_type = TF_MEM_INTERNAL,
1761         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1762         .direction = TF_DIR_RX,
1763         .key_start_idx = 1073,
1764         .blob_key_bit_size = 392,
1765         .key_bit_size = 392,
1766         .key_num_fields = 11,
1767         .result_start_idx = 759,
1768         .result_bit_size = 64,
1769         .result_num_fields = 9,
1770         .encap_num_fields = 0,
1771         .ident_start_idx = 27,
1772         .ident_nums = 0,
1773         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1774         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1775         },
1776         { /* class_tid: 18, stingray, table: int_flow_counter_tbl_0 */
1777         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1778         .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1779         .resource_sub_type =
1780                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT_ACC,
1781         .cond_opcode = BNXT_ULP_COND_OPC_ACTION_BIT_IS_SET,
1782         .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1783         .direction = TF_DIR_RX,
1784         .result_start_idx = 768,
1785         .result_bit_size = 64,
1786         .result_num_fields = 1,
1787         .encap_num_fields = 0,
1788         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1789         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1790         .tbl_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0
1791         },
1792         { /* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */
1793         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1794         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1795         .direction = TF_DIR_RX,
1796         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1797         .pri_operand = 0,
1798         .key_start_idx = 1084,
1799         .blob_key_bit_size = 171,
1800         .key_bit_size = 171,
1801         .key_num_fields = 13,
1802         .result_start_idx = 769,
1803         .result_bit_size = 64,
1804         .result_num_fields = 13,
1805         .encap_num_fields = 0,
1806         .ident_start_idx = 27,
1807         .ident_nums = 1,
1808         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1809         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1810         },
1811         { /* class_tid: 18, stingray, table: profile_tcam_cache_0 */
1812         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1813         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1814         .resource_sub_type =
1815                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1816         .direction = TF_DIR_RX,
1817         .key_start_idx = 1097,
1818         .blob_key_bit_size = 16,
1819         .key_bit_size = 16,
1820         .key_num_fields = 3,
1821         .result_start_idx = 782,
1822         .result_bit_size = 20,
1823         .result_num_fields = 2,
1824         .encap_num_fields = 0,
1825         .ident_start_idx = 28,
1826         .ident_nums = 2
1827         },
1828         { /* class_tid: 18, stingray, table: profile_tcam_0 */
1829         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1830         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1831         .direction = TF_DIR_RX,
1832         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1833         .pri_operand = 0,
1834         .key_start_idx = 1100,
1835         .blob_key_bit_size = 81,
1836         .key_bit_size = 81,
1837         .key_num_fields = 43,
1838         .result_start_idx = 784,
1839         .result_bit_size = 38,
1840         .result_num_fields = 8,
1841         .encap_num_fields = 0,
1842         .ident_start_idx = 30,
1843         .ident_nums = 0,
1844         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1845         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1846         },
1847         { /* class_tid: 18, stingray, table: wm_0 */
1848         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1849         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1850         .direction = TF_DIR_RX,
1851         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1852         .pri_operand = 0,
1853         .key_start_idx = 1143,
1854         .blob_key_bit_size = 192,
1855         .key_bit_size = 160,
1856         .key_num_fields = 5,
1857         .result_start_idx = 792,
1858         .result_bit_size = 19,
1859         .result_num_fields = 3,
1860         .encap_num_fields = 0,
1861         .ident_start_idx = 30,
1862         .ident_nums = 0,
1863         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1864         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1865         },
1866         { /* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */
1867         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1868         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1869         .direction = TF_DIR_RX,
1870         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1871         .pri_operand = 0,
1872         .key_start_idx = 1148,
1873         .blob_key_bit_size = 171,
1874         .key_bit_size = 171,
1875         .key_num_fields = 13,
1876         .result_start_idx = 795,
1877         .result_bit_size = 64,
1878         .result_num_fields = 13,
1879         .encap_num_fields = 0,
1880         .ident_start_idx = 30,
1881         .ident_nums = 1,
1882         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1883         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1884         },
1885         { /* class_tid: 19, stingray, table: profile_tcam_cache_0 */
1886         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1887         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1888         .resource_sub_type =
1889                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1890         .direction = TF_DIR_RX,
1891         .key_start_idx = 1161,
1892         .blob_key_bit_size = 16,
1893         .key_bit_size = 16,
1894         .key_num_fields = 3,
1895         .result_start_idx = 808,
1896         .result_bit_size = 20,
1897         .result_num_fields = 2,
1898         .encap_num_fields = 0,
1899         .ident_start_idx = 31,
1900         .ident_nums = 2
1901         },
1902         { /* class_tid: 19, stingray, table: profile_tcam_0 */
1903         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1904         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1905         .direction = TF_DIR_RX,
1906         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1907         .pri_operand = 0,
1908         .key_start_idx = 1164,
1909         .blob_key_bit_size = 81,
1910         .key_bit_size = 81,
1911         .key_num_fields = 43,
1912         .result_start_idx = 810,
1913         .result_bit_size = 38,
1914         .result_num_fields = 8,
1915         .encap_num_fields = 0,
1916         .ident_start_idx = 33,
1917         .ident_nums = 0,
1918         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1919         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1920         },
1921         { /* class_tid: 19, stingray, table: int_em_0 */
1922         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1923         .resource_type = TF_MEM_INTERNAL,
1924         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1925         .direction = TF_DIR_RX,
1926         .key_start_idx = 1207,
1927         .blob_key_bit_size = 112,
1928         .key_bit_size = 112,
1929         .key_num_fields = 8,
1930         .result_start_idx = 818,
1931         .result_bit_size = 64,
1932         .result_num_fields = 9,
1933         .encap_num_fields = 0,
1934         .ident_start_idx = 33,
1935         .ident_nums = 0,
1936         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1937         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1938         },
1939         { /* class_tid: 19, stingray, table: ext_em_0 */
1940         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1941         .resource_type = TF_MEM_EXTERNAL,
1942         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1943         .direction = TF_DIR_RX,
1944         .key_start_idx = 1215,
1945         .blob_key_bit_size = 448,
1946         .key_bit_size = 448,
1947         .key_num_fields = 8,
1948         .result_start_idx = 827,
1949         .result_bit_size = 64,
1950         .result_num_fields = 9,
1951         .encap_num_fields = 0,
1952         .ident_start_idx = 33,
1953         .ident_nums = 0,
1954         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1955         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1956         },
1957         { /* class_tid: 20, stingray, table: l2_cntxt_cache_0 */
1958         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1959         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1960         .resource_sub_type =
1961                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
1962         .direction = TF_DIR_TX,
1963         .key_start_idx = 1223,
1964         .blob_key_bit_size = 12,
1965         .key_bit_size = 12,
1966         .key_num_fields = 1,
1967         .result_start_idx = 836,
1968         .result_bit_size = 10,
1969         .result_num_fields = 1,
1970         .encap_num_fields = 0,
1971         .ident_start_idx = 33,
1972         .ident_nums = 1
1973         },
1974         { /* class_tid: 20, stingray, table: l2_cntxt_tcam_0 */
1975         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1976         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1977         .direction = TF_DIR_TX,
1978         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1979         .pri_operand = 0,
1980         .key_start_idx = 1224,
1981         .blob_key_bit_size = 171,
1982         .key_bit_size = 171,
1983         .key_num_fields = 13,
1984         .result_start_idx = 837,
1985         .result_bit_size = 64,
1986         .result_num_fields = 13,
1987         .encap_num_fields = 0,
1988         .ident_start_idx = 34,
1989         .ident_nums = 0,
1990         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1991         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1992         },
1993         { /* class_tid: 20, stingray, table: profile_tcam_cache_0 */
1994         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1995         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1996         .resource_sub_type =
1997                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1998         .direction = TF_DIR_TX,
1999         .key_start_idx = 1237,
2000         .blob_key_bit_size = 16,
2001         .key_bit_size = 16,
2002         .key_num_fields = 3,
2003         .result_start_idx = 850,
2004         .result_bit_size = 10,
2005         .result_num_fields = 1,
2006         .encap_num_fields = 0,
2007         .ident_start_idx = 34,
2008         .ident_nums = 1
2009         },
2010         { /* class_tid: 20, stingray, table: profile_tcam_0 */
2011         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2012         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2013         .direction = TF_DIR_TX,
2014         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2015         .pri_operand = 0,
2016         .key_start_idx = 1240,
2017         .blob_key_bit_size = 81,
2018         .key_bit_size = 81,
2019         .key_num_fields = 43,
2020         .result_start_idx = 851,
2021         .result_bit_size = 38,
2022         .result_num_fields = 8,
2023         .encap_num_fields = 0,
2024         .ident_start_idx = 35,
2025         .ident_nums = 0,
2026         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2027         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2028         },
2029         { /* class_tid: 20, stingray, table: ext_em_0 */
2030         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2031         .resource_type = TF_MEM_EXTERNAL,
2032         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2033         .direction = TF_DIR_TX,
2034         .key_start_idx = 1283,
2035         .blob_key_bit_size = 448,
2036         .key_bit_size = 448,
2037         .key_num_fields = 11,
2038         .result_start_idx = 859,
2039         .result_bit_size = 64,
2040         .result_num_fields = 9,
2041         .encap_num_fields = 0,
2042         .ident_start_idx = 35,
2043         .ident_nums = 0,
2044         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2045         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2046         },
2047         { /* class_tid: 20, stingray, table: int_em_0 */
2048         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2049         .resource_type = TF_MEM_INTERNAL,
2050         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2051         .direction = TF_DIR_TX,
2052         .key_start_idx = 1294,
2053         .blob_key_bit_size = 200,
2054         .key_bit_size = 200,
2055         .key_num_fields = 11,
2056         .result_start_idx = 868,
2057         .result_bit_size = 64,
2058         .result_num_fields = 9,
2059         .encap_num_fields = 0,
2060         .ident_start_idx = 35,
2061         .ident_nums = 0,
2062         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2063         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2064         },
2065         { /* class_tid: 21, stingray, table: l2_cntxt_cache_0 */
2066         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2067         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2068         .resource_sub_type =
2069                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2070         .direction = TF_DIR_TX,
2071         .key_start_idx = 1305,
2072         .blob_key_bit_size = 12,
2073         .key_bit_size = 12,
2074         .key_num_fields = 1,
2075         .result_start_idx = 877,
2076         .result_bit_size = 10,
2077         .result_num_fields = 1,
2078         .encap_num_fields = 0,
2079         .ident_start_idx = 35,
2080         .ident_nums = 1
2081         },
2082         { /* class_tid: 21, stingray, table: l2_cntxt_tcam_0 */
2083         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2084         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2085         .direction = TF_DIR_TX,
2086         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2087         .pri_operand = 0,
2088         .key_start_idx = 1306,
2089         .blob_key_bit_size = 171,
2090         .key_bit_size = 171,
2091         .key_num_fields = 13,
2092         .result_start_idx = 878,
2093         .result_bit_size = 64,
2094         .result_num_fields = 13,
2095         .encap_num_fields = 0,
2096         .ident_start_idx = 36,
2097         .ident_nums = 0,
2098         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2099         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2100         },
2101         { /* class_tid: 21, stingray, table: profile_tcam_cache_0 */
2102         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2103         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2104         .resource_sub_type =
2105                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2106         .direction = TF_DIR_TX,
2107         .key_start_idx = 1319,
2108         .blob_key_bit_size = 16,
2109         .key_bit_size = 16,
2110         .key_num_fields = 3,
2111         .result_start_idx = 891,
2112         .result_bit_size = 10,
2113         .result_num_fields = 1,
2114         .encap_num_fields = 0,
2115         .ident_start_idx = 36,
2116         .ident_nums = 1
2117         },
2118         { /* class_tid: 21, stingray, table: profile_tcam_0 */
2119         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2120         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2121         .direction = TF_DIR_TX,
2122         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2123         .pri_operand = 0,
2124         .key_start_idx = 1322,
2125         .blob_key_bit_size = 81,
2126         .key_bit_size = 81,
2127         .key_num_fields = 43,
2128         .result_start_idx = 892,
2129         .result_bit_size = 38,
2130         .result_num_fields = 8,
2131         .encap_num_fields = 0,
2132         .ident_start_idx = 37,
2133         .ident_nums = 0,
2134         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2135         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2136         },
2137         { /* class_tid: 21, stingray, table: ext_em_0 */
2138         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2139         .resource_type = TF_MEM_EXTERNAL,
2140         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2141         .direction = TF_DIR_TX,
2142         .key_start_idx = 1365,
2143         .blob_key_bit_size = 448,
2144         .key_bit_size = 448,
2145         .key_num_fields = 11,
2146         .result_start_idx = 900,
2147         .result_bit_size = 64,
2148         .result_num_fields = 9,
2149         .encap_num_fields = 0,
2150         .ident_start_idx = 37,
2151         .ident_nums = 0,
2152         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2153         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2154         },
2155         { /* class_tid: 21, stingray, table: int_em_0 */
2156         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2157         .resource_type = TF_MEM_INTERNAL,
2158         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2159         .direction = TF_DIR_TX,
2160         .key_start_idx = 1376,
2161         .blob_key_bit_size = 200,
2162         .key_bit_size = 200,
2163         .key_num_fields = 11,
2164         .result_start_idx = 909,
2165         .result_bit_size = 64,
2166         .result_num_fields = 9,
2167         .encap_num_fields = 0,
2168         .ident_start_idx = 37,
2169         .ident_nums = 0,
2170         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2171         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2172         },
2173         { /* class_tid: 22, stingray, table: l2_cntxt_cache_0 */
2174         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2175         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2176         .resource_sub_type =
2177                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2178         .direction = TF_DIR_TX,
2179         .key_start_idx = 1387,
2180         .blob_key_bit_size = 12,
2181         .key_bit_size = 12,
2182         .key_num_fields = 1,
2183         .result_start_idx = 918,
2184         .result_bit_size = 10,
2185         .result_num_fields = 1,
2186         .encap_num_fields = 0,
2187         .ident_start_idx = 37,
2188         .ident_nums = 1
2189         },
2190         { /* class_tid: 22, stingray, table: l2_cntxt_0 */
2191         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2192         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2193         .direction = TF_DIR_TX,
2194         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2195         .pri_operand = 0,
2196         .key_start_idx = 1388,
2197         .blob_key_bit_size = 171,
2198         .key_bit_size = 171,
2199         .key_num_fields = 13,
2200         .result_start_idx = 919,
2201         .result_bit_size = 64,
2202         .result_num_fields = 13,
2203         .encap_num_fields = 0,
2204         .ident_start_idx = 38,
2205         .ident_nums = 0,
2206         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2207         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2208         },
2209         { /* class_tid: 22, stingray, table: profile_tcam_cache_0 */
2210         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2211         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2212         .resource_sub_type =
2213                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2214         .direction = TF_DIR_TX,
2215         .key_start_idx = 1401,
2216         .blob_key_bit_size = 16,
2217         .key_bit_size = 16,
2218         .key_num_fields = 3,
2219         .result_start_idx = 932,
2220         .result_bit_size = 10,
2221         .result_num_fields = 1,
2222         .encap_num_fields = 0,
2223         .ident_start_idx = 38,
2224         .ident_nums = 1
2225         },
2226         { /* class_tid: 22, stingray, table: profile_tcam_0 */
2227         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2228         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2229         .direction = TF_DIR_TX,
2230         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2231         .pri_operand = 0,
2232         .key_start_idx = 1404,
2233         .blob_key_bit_size = 81,
2234         .key_bit_size = 81,
2235         .key_num_fields = 43,
2236         .result_start_idx = 933,
2237         .result_bit_size = 38,
2238         .result_num_fields = 8,
2239         .encap_num_fields = 0,
2240         .ident_start_idx = 39,
2241         .ident_nums = 0,
2242         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2243         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2244         },
2245         { /* class_tid: 22, stingray, table: ext_em_0 */
2246         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2247         .resource_type = TF_MEM_EXTERNAL,
2248         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2249         .direction = TF_DIR_TX,
2250         .key_start_idx = 1447,
2251         .blob_key_bit_size = 448,
2252         .key_bit_size = 448,
2253         .key_num_fields = 11,
2254         .result_start_idx = 941,
2255         .result_bit_size = 64,
2256         .result_num_fields = 9,
2257         .encap_num_fields = 0,
2258         .ident_start_idx = 39,
2259         .ident_nums = 0,
2260         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2261         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2262         },
2263         { /* class_tid: 22, stingray, table: int_em_0 */
2264         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2265         .resource_type = TF_MEM_INTERNAL,
2266         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2267         .direction = TF_DIR_TX,
2268         .key_start_idx = 1458,
2269         .blob_key_bit_size = 392,
2270         .key_bit_size = 392,
2271         .key_num_fields = 11,
2272         .result_start_idx = 950,
2273         .result_bit_size = 64,
2274         .result_num_fields = 9,
2275         .encap_num_fields = 0,
2276         .ident_start_idx = 39,
2277         .ident_nums = 0,
2278         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2279         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2280         },
2281         { /* class_tid: 23, stingray, table: l2_cntxt_cache_0 */
2282         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2283         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2284         .resource_sub_type =
2285                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_L2_CNTXT_TCAM,
2286         .direction = TF_DIR_TX,
2287         .key_start_idx = 1469,
2288         .blob_key_bit_size = 12,
2289         .key_bit_size = 12,
2290         .key_num_fields = 1,
2291         .result_start_idx = 959,
2292         .result_bit_size = 10,
2293         .result_num_fields = 1,
2294         .encap_num_fields = 0,
2295         .ident_start_idx = 39,
2296         .ident_nums = 1
2297         },
2298         { /* class_tid: 23, stingray, table: l2_cntxt_tcam_0 */
2299         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2300         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2301         .direction = TF_DIR_TX,
2302         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2303         .pri_operand = 0,
2304         .key_start_idx = 1470,
2305         .blob_key_bit_size = 171,
2306         .key_bit_size = 171,
2307         .key_num_fields = 13,
2308         .result_start_idx = 960,
2309         .result_bit_size = 64,
2310         .result_num_fields = 13,
2311         .encap_num_fields = 0,
2312         .ident_start_idx = 40,
2313         .ident_nums = 0,
2314         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2315         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2316         },
2317         { /* class_tid: 23, stingray, table: profile_tcam_cache_0 */
2318         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2319         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2320         .resource_sub_type =
2321                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2322         .direction = TF_DIR_TX,
2323         .key_start_idx = 1483,
2324         .blob_key_bit_size = 16,
2325         .key_bit_size = 16,
2326         .key_num_fields = 3,
2327         .result_start_idx = 973,
2328         .result_bit_size = 10,
2329         .result_num_fields = 1,
2330         .encap_num_fields = 0,
2331         .ident_start_idx = 40,
2332         .ident_nums = 1
2333         },
2334         { /* class_tid: 23, stingray, table: profile_tcam_0 */
2335         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2336         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2337         .direction = TF_DIR_TX,
2338         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2339         .pri_operand = 0,
2340         .key_start_idx = 1486,
2341         .blob_key_bit_size = 81,
2342         .key_bit_size = 81,
2343         .key_num_fields = 43,
2344         .result_start_idx = 974,
2345         .result_bit_size = 38,
2346         .result_num_fields = 8,
2347         .encap_num_fields = 0,
2348         .ident_start_idx = 41,
2349         .ident_nums = 0,
2350         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2351         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2352         },
2353         { /* class_tid: 23, stingray, table: ext_em_0 */
2354         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2355         .resource_type = TF_MEM_EXTERNAL,
2356         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2357         .direction = TF_DIR_TX,
2358         .key_start_idx = 1529,
2359         .blob_key_bit_size = 448,
2360         .key_bit_size = 448,
2361         .key_num_fields = 11,
2362         .result_start_idx = 982,
2363         .result_bit_size = 64,
2364         .result_num_fields = 9,
2365         .encap_num_fields = 0,
2366         .ident_start_idx = 41,
2367         .ident_nums = 0,
2368         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2369         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2370         },
2371         { /* class_tid: 23, stingray, table: int_em_0 */
2372         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2373         .resource_type = TF_MEM_INTERNAL,
2374         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2375         .direction = TF_DIR_TX,
2376         .key_start_idx = 1540,
2377         .blob_key_bit_size = 392,
2378         .key_bit_size = 392,
2379         .key_num_fields = 11,
2380         .result_start_idx = 991,
2381         .result_bit_size = 64,
2382         .result_num_fields = 9,
2383         .encap_num_fields = 0,
2384         .ident_start_idx = 41,
2385         .ident_nums = 0,
2386         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2387         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2388         },
2389         { /* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */
2390         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2391         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2392         .direction = TF_DIR_TX,
2393         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2394         .pri_operand = 0,
2395         .key_start_idx = 1551,
2396         .blob_key_bit_size = 171,
2397         .key_bit_size = 171,
2398         .key_num_fields = 13,
2399         .result_start_idx = 1000,
2400         .result_bit_size = 64,
2401         .result_num_fields = 13,
2402         .encap_num_fields = 0,
2403         .ident_start_idx = 41,
2404         .ident_nums = 1,
2405         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2406         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2407         },
2408         { /* class_tid: 24, stingray, table: profile_tcam_cache_0 */
2409         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2410         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2411         .resource_sub_type =
2412                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2413         .direction = TF_DIR_TX,
2414         .key_start_idx = 1564,
2415         .blob_key_bit_size = 16,
2416         .key_bit_size = 16,
2417         .key_num_fields = 3,
2418         .result_start_idx = 1013,
2419         .result_bit_size = 10,
2420         .result_num_fields = 1,
2421         .encap_num_fields = 0,
2422         .ident_start_idx = 42,
2423         .ident_nums = 1
2424         },
2425         { /* class_tid: 24, stingray, table: profile_tcam_0 */
2426         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2427         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2428         .direction = TF_DIR_TX,
2429         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2430         .pri_operand = 0,
2431         .key_start_idx = 1567,
2432         .blob_key_bit_size = 81,
2433         .key_bit_size = 81,
2434         .key_num_fields = 43,
2435         .result_start_idx = 1014,
2436         .result_bit_size = 38,
2437         .result_num_fields = 8,
2438         .encap_num_fields = 0,
2439         .ident_start_idx = 43,
2440         .ident_nums = 0,
2441         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2442         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2443         },
2444         { /* class_tid: 24, stingray, table: ext_em_0 */
2445         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2446         .resource_type = TF_MEM_EXTERNAL,
2447         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2448         .direction = TF_DIR_TX,
2449         .key_start_idx = 1610,
2450         .blob_key_bit_size = 448,
2451         .key_bit_size = 448,
2452         .key_num_fields = 7,
2453         .result_start_idx = 1022,
2454         .result_bit_size = 64,
2455         .result_num_fields = 9,
2456         .encap_num_fields = 0,
2457         .ident_start_idx = 43,
2458         .ident_nums = 0,
2459         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2460         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2461         },
2462         { /* class_tid: 24, stingray, table: int_em_0 */
2463         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2464         .resource_type = TF_MEM_INTERNAL,
2465         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2466         .direction = TF_DIR_TX,
2467         .key_start_idx = 1617,
2468         .blob_key_bit_size = 104,
2469         .key_bit_size = 104,
2470         .key_num_fields = 7,
2471         .result_start_idx = 1031,
2472         .result_bit_size = 64,
2473         .result_num_fields = 9,
2474         .encap_num_fields = 0,
2475         .ident_start_idx = 43,
2476         .ident_nums = 0,
2477         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2478         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2479         },
2480         { /* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */
2481         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2482         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2483         .direction = TF_DIR_TX,
2484         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2485         .pri_operand = 0,
2486         .key_start_idx = 1624,
2487         .blob_key_bit_size = 171,
2488         .key_bit_size = 171,
2489         .key_num_fields = 13,
2490         .result_start_idx = 1040,
2491         .result_bit_size = 64,
2492         .result_num_fields = 13,
2493         .encap_num_fields = 0,
2494         .ident_start_idx = 43,
2495         .ident_nums = 1,
2496         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2497         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2498         },
2499         { /* class_tid: 25, stingray, table: profile_tcam_cache_0 */
2500         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2501         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2502         .resource_sub_type =
2503                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2504         .direction = TF_DIR_TX,
2505         .key_start_idx = 1637,
2506         .blob_key_bit_size = 16,
2507         .key_bit_size = 16,
2508         .key_num_fields = 3,
2509         .result_start_idx = 1053,
2510         .result_bit_size = 10,
2511         .result_num_fields = 1,
2512         .encap_num_fields = 0,
2513         .ident_start_idx = 44,
2514         .ident_nums = 1
2515         },
2516         { /* class_tid: 25, stingray, table: profile_tcam_0 */
2517         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2518         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2519         .direction = TF_DIR_TX,
2520         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2521         .pri_operand = 0,
2522         .key_start_idx = 1640,
2523         .blob_key_bit_size = 81,
2524         .key_bit_size = 81,
2525         .key_num_fields = 43,
2526         .result_start_idx = 1054,
2527         .result_bit_size = 38,
2528         .result_num_fields = 8,
2529         .encap_num_fields = 0,
2530         .ident_start_idx = 45,
2531         .ident_nums = 0,
2532         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2533         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2534         },
2535         { /* class_tid: 25, stingray, table: ext_em_0 */
2536         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2537         .resource_type = TF_MEM_EXTERNAL,
2538         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2539         .direction = TF_DIR_TX,
2540         .key_start_idx = 1683,
2541         .blob_key_bit_size = 448,
2542         .key_bit_size = 448,
2543         .key_num_fields = 7,
2544         .result_start_idx = 1062,
2545         .result_bit_size = 64,
2546         .result_num_fields = 9,
2547         .encap_num_fields = 0,
2548         .ident_start_idx = 45,
2549         .ident_nums = 0,
2550         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2551         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2552         },
2553         { /* class_tid: 25, stingray, table: int_em_0 */
2554         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2555         .resource_type = TF_MEM_INTERNAL,
2556         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2557         .direction = TF_DIR_TX,
2558         .key_start_idx = 1690,
2559         .blob_key_bit_size = 104,
2560         .key_bit_size = 104,
2561         .key_num_fields = 7,
2562         .result_start_idx = 1071,
2563         .result_bit_size = 64,
2564         .result_num_fields = 9,
2565         .encap_num_fields = 0,
2566         .ident_start_idx = 45,
2567         .ident_nums = 0,
2568         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2569         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2570         }
2571 };
2572
2573 struct bnxt_ulp_mapper_key_field_info ulp_stingray_class_key_field_list[] = {
2574         /* class_tid: 1, stingray, table: l2_cntxt_cache_0 */
2575         {
2576         .description = "svif",
2577         .field_bit_size = 12,
2578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2580         .spec_operand = {
2581                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2582                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2583                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2585         },
2586         /* class_tid: 1, stingray, table: l2_cntxt_tcam_0 */
2587         {
2588         .description = "l2_ivlan_vid",
2589         .field_bit_size = 12,
2590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2591         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2592         },
2593         {
2594         .description = "l2_ovlan_vid",
2595         .field_bit_size = 12,
2596         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2597         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2598         },
2599         {
2600         .description = "mac0_l2_dst",
2601         .field_bit_size = 48,
2602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2604         },
2605         {
2606         .description = "svif",
2607         .field_bit_size = 12,
2608         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2609         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2610                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2612         .spec_operand = {
2613                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2614                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2617         },
2618         {
2619         .description = "tl2_ivlan_vid",
2620         .field_bit_size = 12,
2621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2623         },
2624         {
2625         .description = "tl2_ovlan_vid",
2626         .field_bit_size = 12,
2627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2629         },
2630         {
2631         .description = "mac1_tl2_dst",
2632         .field_bit_size = 48,
2633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2635         },
2636         {
2637         .description = "l2_num_vtags",
2638         .field_bit_size = 2,
2639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2641         },
2642         {
2643         .description = "tl2_num_vtags",
2644         .field_bit_size = 2,
2645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2647         },
2648         {
2649         .description = "tun_hdr_type",
2650         .field_bit_size = 4,
2651         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2653         },
2654         {
2655         .description = "key_type",
2656         .field_bit_size = 2,
2657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2659         },
2660         {
2661         .description = "sparif",
2662         .field_bit_size = 4,
2663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2665         },
2666         {
2667         .description = "valid",
2668         .field_bit_size = 1,
2669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2670         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2671                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2673         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2675         },
2676         /* class_tid: 2, stingray, table: l2_cntxt_tcam_vfr_0 */
2677         {
2678         .description = "l2_ivlan_vid",
2679         .field_bit_size = 12,
2680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2681         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2682         },
2683         {
2684         .description = "l2_ovlan_vid",
2685         .field_bit_size = 12,
2686         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2687         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2688         },
2689         {
2690         .description = "mac0_l2_addr",
2691         .field_bit_size = 48,
2692         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2694         },
2695         {
2696         .description = "svif",
2697         .field_bit_size = 12,
2698         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2699         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2700                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2702         .spec_operand = {
2703                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2704                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2706                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2707         },
2708         {
2709         .description = "tl2_ivlan_vid",
2710         .field_bit_size = 12,
2711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2713         },
2714         {
2715         .description = "tl2_ovlan_vid",
2716         .field_bit_size = 12,
2717         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2718         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2719         },
2720         {
2721         .description = "mac1_tl2_addr",
2722         .field_bit_size = 48,
2723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2725         },
2726         {
2727         .description = "l2_num_vtags",
2728         .field_bit_size = 2,
2729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2731         },
2732         {
2733         .description = "tl2_num_vtags",
2734         .field_bit_size = 2,
2735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2737         },
2738         {
2739         .description = "tun_hdr_type",
2740         .field_bit_size = 4,
2741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2743         },
2744         {
2745         .description = "key_type",
2746         .field_bit_size = 2,
2747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2749         },
2750         {
2751         .description = "sparif",
2752         .field_bit_size = 4,
2753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2755         },
2756         {
2757         .description = "valid",
2758         .field_bit_size = 1,
2759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2760         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2761                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2763         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2765         },
2766         /* class_tid: 2, stingray, table: l2_cntxt_cache_0 */
2767         {
2768         .description = "svif",
2769         .field_bit_size = 12,
2770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2771         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2772         .spec_operand = {
2773                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2774                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2777         },
2778         /* class_tid: 2, stingray, table: l2_cntxt_tcam_0 */
2779         {
2780         .description = "l2_ivlan_vid",
2781         .field_bit_size = 12,
2782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2784         },
2785         {
2786         .description = "l2_ovlan_vid",
2787         .field_bit_size = 12,
2788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2790         },
2791         {
2792         .description = "mac0_l2_addr",
2793         .field_bit_size = 48,
2794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2795         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2796         },
2797         {
2798         .description = "svif",
2799         .field_bit_size = 12,
2800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2801         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2802                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2804         .spec_operand = {
2805                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2806                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2809         },
2810         {
2811         .description = "tl2_ivlan_vid",
2812         .field_bit_size = 12,
2813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2815         },
2816         {
2817         .description = "tl2_ovlan_vid",
2818         .field_bit_size = 12,
2819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2821         },
2822         {
2823         .description = "mac1_tl2_addr",
2824         .field_bit_size = 48,
2825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2827         },
2828         {
2829         .description = "l2_num_vtags",
2830         .field_bit_size = 2,
2831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2833         },
2834         {
2835         .description = "tl2_num_vtags",
2836         .field_bit_size = 2,
2837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2839         },
2840         {
2841         .description = "tun_hdr_type",
2842         .field_bit_size = 4,
2843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2844         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2845         },
2846         {
2847         .description = "key_type",
2848         .field_bit_size = 2,
2849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2851         },
2852         {
2853         .description = "sparif",
2854         .field_bit_size = 4,
2855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2857         },
2858         {
2859         .description = "valid",
2860         .field_bit_size = 1,
2861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2862         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2863                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2865         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2867         },
2868         /* class_tid: 3, stingray, table: egr_l2_cntxt_cache_0 */
2869         {
2870         .description = "svif",
2871         .field_bit_size = 12,
2872         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2873         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2874         .spec_operand = {
2875                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2876                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2879         },
2880         /* class_tid: 3, stingray, table: egr_l2_cntxt_tcam_0 */
2881         {
2882         .description = "l2_ivlan_vid",
2883         .field_bit_size = 12,
2884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2886         },
2887         {
2888         .description = "l2_ovlan_vid",
2889         .field_bit_size = 12,
2890         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2891         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2892         },
2893         {
2894         .description = "mac0_l2_dst",
2895         .field_bit_size = 48,
2896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2898         },
2899         {
2900         .description = "svif",
2901         .field_bit_size = 12,
2902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2903         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2904                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2905         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2906         .spec_operand = {
2907                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2908                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2910                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2911         },
2912         {
2913         .description = "tl2_ivlan_vid",
2914         .field_bit_size = 12,
2915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2917         },
2918         {
2919         .description = "tl2_ovlan_vid",
2920         .field_bit_size = 12,
2921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2923         },
2924         {
2925         .description = "mac1_tl2_dst",
2926         .field_bit_size = 48,
2927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2929         },
2930         {
2931         .description = "l2_num_vtags",
2932         .field_bit_size = 2,
2933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2935         },
2936         {
2937         .description = "tl2_num_vtags",
2938         .field_bit_size = 2,
2939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2941         },
2942         {
2943         .description = "tun_hdr_type",
2944         .field_bit_size = 4,
2945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2947         },
2948         {
2949         .description = "key_type",
2950         .field_bit_size = 2,
2951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2953         },
2954         {
2955         .description = "sparif",
2956         .field_bit_size = 4,
2957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2958         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2959         },
2960         {
2961         .description = "valid",
2962         .field_bit_size = 1,
2963         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2964         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2965                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2966         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2967         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2969         },
2970         /* class_tid: 3, stingray, table: ing_l2_cntxt_dtagged_0 */
2971         {
2972         .description = "l2_ivlan_vid",
2973         .field_bit_size = 12,
2974         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2975         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2976         },
2977         {
2978         .description = "l2_ovlan_vid",
2979         .field_bit_size = 12,
2980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2981         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2982                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2983         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2984         .spec_operand = {
2985                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
2986                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
2987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2988                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2989         },
2990         {
2991         .description = "mac0_l2_dst",
2992         .field_bit_size = 48,
2993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2995         },
2996         {
2997         .description = "svif",
2998         .field_bit_size = 12,
2999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3000         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3001                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3003         .spec_operand = {
3004                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3005                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3007                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3008         },
3009         {
3010         .description = "tl2_ivlan_vid",
3011         .field_bit_size = 12,
3012         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3014         },
3015         {
3016         .description = "tl2_ovlan_vid",
3017         .field_bit_size = 12,
3018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3020         },
3021         {
3022         .description = "mac1_tl2_dst",
3023         .field_bit_size = 48,
3024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3026         },
3027         {
3028         .description = "l2_num_vtags",
3029         .field_bit_size = 2,
3030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3031         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3032                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3034         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
3035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3036         },
3037         {
3038         .description = "tl2_num_vtags",
3039         .field_bit_size = 2,
3040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3042         },
3043         {
3044         .description = "tun_hdr_type",
3045         .field_bit_size = 4,
3046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3047         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3048                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3050         .spec_operand = {
3051                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3054         },
3055         {
3056         .description = "key_type",
3057         .field_bit_size = 2,
3058         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3060         },
3061         {
3062         .description = "sparif",
3063         .field_bit_size = 4,
3064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3066         },
3067         {
3068         .description = "valid",
3069         .field_bit_size = 1,
3070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3071         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3072                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3074         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3076         },
3077         /* class_tid: 3, stingray, table: ing_l2_cntxt_stagged_0 */
3078         {
3079         .description = "l2_ivlan_vid",
3080         .field_bit_size = 12,
3081         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3082         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3083                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3085         .spec_operand = {
3086                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3087                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3090         },
3091         {
3092         .description = "l2_ovlan_vid",
3093         .field_bit_size = 12,
3094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3096         },
3097         {
3098         .description = "mac0_l2_dst",
3099         .field_bit_size = 48,
3100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3102         },
3103         {
3104         .description = "svif",
3105         .field_bit_size = 12,
3106         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3107         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3108                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3110         .spec_operand = {
3111                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3112                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3114                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3115         },
3116         {
3117         .description = "tl2_ivlan_vid",
3118         .field_bit_size = 12,
3119         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3120         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3121         },
3122         {
3123         .description = "tl2_ovlan_vid",
3124         .field_bit_size = 12,
3125         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3126         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3127         },
3128         {
3129         .description = "mac1_tl2_dst",
3130         .field_bit_size = 48,
3131         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3133         },
3134         {
3135         .description = "l2_num_vtags",
3136         .field_bit_size = 2,
3137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3138         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3139                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3140         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3141         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3143         },
3144         {
3145         .description = "tl2_num_vtags",
3146         .field_bit_size = 2,
3147         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3149         },
3150         {
3151         .description = "tun_hdr_type",
3152         .field_bit_size = 4,
3153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3154         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3155                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3156         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3157         .spec_operand = {
3158                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3160                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3161         },
3162         {
3163         .description = "key_type",
3164         .field_bit_size = 2,
3165         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3166         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3167         },
3168         {
3169         .description = "sparif",
3170         .field_bit_size = 4,
3171         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3172         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3173         },
3174         {
3175         .description = "valid",
3176         .field_bit_size = 1,
3177         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3178         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3179                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3181         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3183         },
3184         /* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */
3185         {
3186         .description = "svif",
3187         .field_bit_size = 12,
3188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3189         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3190         .spec_operand = {
3191                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3192                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3194                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3195         },
3196         /* class_tid: 4, stingray, table: egr_l2_cntxt_tcam_0 */
3197         {
3198         .description = "l2_ivlan_vid",
3199         .field_bit_size = 12,
3200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3202         },
3203         {
3204         .description = "l2_ovlan_vid",
3205         .field_bit_size = 12,
3206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3207         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3208         },
3209         {
3210         .description = "mac0_l2_dst",
3211         .field_bit_size = 48,
3212         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3213         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3214         },
3215         {
3216         .description = "svif",
3217         .field_bit_size = 12,
3218         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3219         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3220                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3222         .spec_operand = {
3223                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3224                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3227         },
3228         {
3229         .description = "tl2_ivlan_vid",
3230         .field_bit_size = 12,
3231         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3233         },
3234         {
3235         .description = "tl2_ovlan_vid",
3236         .field_bit_size = 12,
3237         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3238         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3239         },
3240         {
3241         .description = "mac1_tl2_dst",
3242         .field_bit_size = 48,
3243         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3245         },
3246         {
3247         .description = "l2_num_vtags",
3248         .field_bit_size = 2,
3249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3251         },
3252         {
3253         .description = "tl2_num_vtags",
3254         .field_bit_size = 2,
3255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3257         },
3258         {
3259         .description = "tun_hdr_type",
3260         .field_bit_size = 4,
3261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3263         },
3264         {
3265         .description = "key_type",
3266         .field_bit_size = 2,
3267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3269         },
3270         {
3271         .description = "sparif",
3272         .field_bit_size = 4,
3273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3274         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3275         },
3276         {
3277         .description = "valid",
3278         .field_bit_size = 1,
3279         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3280         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3281                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3283         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3284                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3285         },
3286         /* class_tid: 4, stingray, table: ing_l2_cntxt_tcam_0 */
3287         {
3288         .description = "l2_ivlan_vid",
3289         .field_bit_size = 12,
3290         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3291         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3292         },
3293         {
3294         .description = "l2_ovlan_vid",
3295         .field_bit_size = 12,
3296         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3297         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3298         },
3299         {
3300         .description = "mac0_l2_dst",
3301         .field_bit_size = 48,
3302         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3303         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3304         },
3305         {
3306         .description = "svif",
3307         .field_bit_size = 12,
3308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3309         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3310                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3312         .spec_operand = {
3313                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3314                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3317         },
3318         {
3319         .description = "tl2_ivlan_vid",
3320         .field_bit_size = 12,
3321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3323         },
3324         {
3325         .description = "tl2_ovlan_vid",
3326         .field_bit_size = 12,
3327         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3328         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3329         },
3330         {
3331         .description = "mac1_tl2_dst",
3332         .field_bit_size = 48,
3333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3335         },
3336         {
3337         .description = "l2_num_vtags",
3338         .field_bit_size = 2,
3339         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3341         },
3342         {
3343         .description = "tl2_num_vtags",
3344         .field_bit_size = 2,
3345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3346         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3347         },
3348         {
3349         .description = "tun_hdr_type",
3350         .field_bit_size = 4,
3351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3353         },
3354         {
3355         .description = "key_type",
3356         .field_bit_size = 2,
3357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3359         },
3360         {
3361         .description = "sparif",
3362         .field_bit_size = 4,
3363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3364         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3365         },
3366         {
3367         .description = "valid",
3368         .field_bit_size = 1,
3369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3370         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3371                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3373         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3375         },
3376         /* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */
3377         {
3378         .description = "l2_ivlan_vid",
3379         .field_bit_size = 12,
3380         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3381         .mask_operand = {
3382                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3383                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3384                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3385                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3387         .spec_operand = {
3388                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3389                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3392         },
3393         {
3394         .description = "l2_ovlan_vid",
3395         .field_bit_size = 12,
3396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3398         },
3399         {
3400         .description = "mac0_l2_addr",
3401         .field_bit_size = 48,
3402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3403         .mask_operand = {
3404                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3405                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3407                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3408         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3409         .spec_operand = {
3410                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3411                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3414         },
3415         {
3416         .description = "svif",
3417         .field_bit_size = 12,
3418         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3419         .mask_operand = {
3420                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3421                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3424         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3425         .spec_operand = {
3426                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3427                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3428                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3430         },
3431         {
3432         .description = "tl2_ivlan_vid",
3433         .field_bit_size = 12,
3434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3436         },
3437         {
3438         .description = "tl2_ovlan_vid",
3439         .field_bit_size = 12,
3440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3441         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3442         },
3443         {
3444         .description = "mac1_tl2_addr",
3445         .field_bit_size = 48,
3446         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3447         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3448         },
3449         {
3450         .description = "l2_num_vtags",
3451         .field_bit_size = 2,
3452         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3453         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3454                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3456         .spec_operand = {
3457                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
3458                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
3459                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3461         },
3462         {
3463         .description = "tl2_num_vtags",
3464         .field_bit_size = 2,
3465         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3466         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3467         },
3468         {
3469         .description = "tun_hdr_type",
3470         .field_bit_size = 4,
3471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3473         },
3474         {
3475         .description = "key_type",
3476         .field_bit_size = 2,
3477         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3478         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3479                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3480         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3481         },
3482         {
3483         .description = "sparif",
3484         .field_bit_size = 4,
3485         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3486         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3487         },
3488         {
3489         .description = "valid",
3490         .field_bit_size = 1,
3491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3492         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3493                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3495         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3497         },
3498         /* class_tid: 6, stingray, table: profile_tcam_cache_0 */
3499         {
3500         .description = "recycle",
3501         .field_bit_size = 1,
3502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3503         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3504         },
3505         {
3506         .description = "prof_func_id",
3507         .field_bit_size = 7,
3508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3510         .spec_operand = {
3511                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3512                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3515         },
3516         {
3517         .description = "class_tid",
3518         .field_bit_size = 8,
3519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3521         .spec_operand = {
3522                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
3523                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
3524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3525                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3526         },
3527         /* class_tid: 6, stingray, table: profile_tcam_0 */
3528         {
3529         .description = "l4_hdr_is_udp_tcp",
3530         .field_bit_size = 1,
3531         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3533         },
3534         {
3535         .description = "l4_hdr_type",
3536         .field_bit_size = 4,
3537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3538         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3539         },
3540         {
3541         .description = "l4_hdr_error",
3542         .field_bit_size = 1,
3543         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3545         },
3546         {
3547         .description = "l4_hdr_valid",
3548         .field_bit_size = 1,
3549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3551         },
3552         {
3553         .description = "l3_ipv6_cmp_dst",
3554         .field_bit_size = 1,
3555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3557         },
3558         {
3559         .description = "l3_ipv6_cmp_src",
3560         .field_bit_size = 1,
3561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3563         },
3564         {
3565         .description = "l3_hdr_isIP",
3566         .field_bit_size = 1,
3567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3569         },
3570         {
3571         .description = "l3_hdr_type",
3572         .field_bit_size = 4,
3573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3574         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3575                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3577         },
3578         {
3579         .description = "l3_hdr_error",
3580         .field_bit_size = 1,
3581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3582         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3583                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3584         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3585         },
3586         {
3587         .description = "l3_hdr_valid",
3588         .field_bit_size = 1,
3589         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3590         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3591                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3593         .spec_operand = {
3594                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
3595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3597         },
3598         {
3599         .description = "l2_two_vtags",
3600         .field_bit_size = 1,
3601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3603         },
3604         {
3605         .description = "l2_vtag_present",
3606         .field_bit_size = 1,
3607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3609         },
3610         {
3611         .description = "l2_uc_mc_bc",
3612         .field_bit_size = 2,
3613         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3614         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3615                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3617         },
3618         {
3619         .description = "l2_hdr_type",
3620         .field_bit_size = 2,
3621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3622         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3623                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3625         },
3626         {
3627         .description = "l2_hdr_error",
3628         .field_bit_size = 1,
3629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3630         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3631                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3633         },
3634         {
3635         .description = "l2_hdr_valid",
3636         .field_bit_size = 1,
3637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3638         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3639                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3641         .spec_operand = {
3642                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
3643                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3644                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3645         },
3646         {
3647         .description = "tun_hdr_flags",
3648         .field_bit_size = 3,
3649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3650         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3651         },
3652         {
3653         .description = "tun_hdr_type",
3654         .field_bit_size = 4,
3655         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3656         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3657         },
3658         {
3659         .description = "tun_hdr_error",
3660         .field_bit_size = 1,
3661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3663         },
3664         {
3665         .description = "tun_hdr_valid",
3666         .field_bit_size = 1,
3667         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3668         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3669                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3671         },
3672         {
3673         .description = "tl4_hdr_is_udp_tcp",
3674         .field_bit_size = 1,
3675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3677         },
3678         {
3679         .description = "tl4_hdr_type",
3680         .field_bit_size = 4,
3681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3683         },
3684         {
3685         .description = "tl4_hdr_error",
3686         .field_bit_size = 1,
3687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3688         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3689         },
3690         {
3691         .description = "tl4_hdr_valid",
3692         .field_bit_size = 1,
3693         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3694         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3695                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3697         },
3698         {
3699         .description = "tl3_ipv6_cmp_dst",
3700         .field_bit_size = 1,
3701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3703         },
3704         {
3705         .description = "tl3_ipv6_cmp_src",
3706         .field_bit_size = 1,
3707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3708         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3709         },
3710         {
3711         .description = "tl3_hdr_isIP",
3712         .field_bit_size = 1,
3713         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3714         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3715         },
3716         {
3717         .description = "tl3_hdr_type",
3718         .field_bit_size = 4,
3719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3720         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3721         },
3722         {
3723         .description = "tl3_hdr_error",
3724         .field_bit_size = 1,
3725         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3726         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3727         },
3728         {
3729         .description = "tl3_hdr_valid",
3730         .field_bit_size = 1,
3731         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3732         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3733                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3735         },
3736         {
3737         .description = "tl2_two_vtags",
3738         .field_bit_size = 1,
3739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3741         },
3742         {
3743         .description = "tl2_vtag_present",
3744         .field_bit_size = 1,
3745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3746         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3747         },
3748         {
3749         .description = "tl2_uc_mc_bc",
3750         .field_bit_size = 2,
3751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3753         },
3754         {
3755         .description = "tl2_hdr_type",
3756         .field_bit_size = 2,
3757         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3758         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3759         },
3760         {
3761         .description = "tl2_hdr_valid",
3762         .field_bit_size = 1,
3763         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3764         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3765                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3767         },
3768         {
3769         .description = "hrec_next",
3770         .field_bit_size = 1,
3771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3772         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3773         },
3774         {
3775         .description = "reserved",
3776         .field_bit_size = 9,
3777         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3778         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3779         },
3780         {
3781         .description = "prof_func_id",
3782         .field_bit_size = 7,
3783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3784         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3785                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3787         .spec_operand = {
3788                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3789                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3792         },
3793         {
3794         .description = "agg_error",
3795         .field_bit_size = 1,
3796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3798         },
3799         {
3800         .description = "recycle_cnt",
3801         .field_bit_size = 2,
3802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3803         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3804                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3806         },
3807         {
3808         .description = "pkt_type_0",
3809         .field_bit_size = 2,
3810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3812         },
3813         {
3814         .description = "pkt_type_1",
3815         .field_bit_size = 2,
3816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3817         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3818                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3820         },
3821         {
3822         .description = "valid",
3823         .field_bit_size = 1,
3824         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3825         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3826                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3827         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3828         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3829                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3830         },
3831         /* class_tid: 6, stingray, table: ext_em_0 */
3832         {
3833         .description = "spare",
3834         .field_bit_size = 251,
3835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3836         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3837         },
3838         {
3839         .description = "local_cos",
3840         .field_bit_size = 3,
3841         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3842         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3843         },
3844         {
3845         .description = "l4_dst_port",
3846         .field_bit_size = 16,
3847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3849         },
3850         {
3851         .description = "l4_src_port",
3852         .field_bit_size = 16,
3853         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3855         },
3856         {
3857         .description = "ip_proto",
3858         .field_bit_size = 8,
3859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3861         },
3862         {
3863         .description = "ipv4_dst_addr",
3864         .field_bit_size = 32,
3865         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3866         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3867         },
3868         {
3869         .description = "ipv4_src_addr",
3870         .field_bit_size = 32,
3871         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3873         },
3874         {
3875         .description = "l2_src_mac",
3876         .field_bit_size = 48,
3877         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3879         .spec_operand = {
3880                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
3881                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
3882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3884         },
3885         {
3886         .description = "tun_id",
3887         .field_bit_size = 24,
3888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3890         },
3891         {
3892         .description = "l2_cntxt_id",
3893         .field_bit_size = 10,
3894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3896         .spec_operand = {
3897                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
3898                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3901         },
3902         {
3903         .description = "em_profile_id",
3904         .field_bit_size = 8,
3905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3907         .spec_operand = {
3908                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
3909                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
3910                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3912         },
3913         /* class_tid: 6, stingray, table: int_em_0 */
3914         {
3915         .description = "spare",
3916         .field_bit_size = 3,
3917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3919         },
3920         {
3921         .description = "local_cos",
3922         .field_bit_size = 3,
3923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3925         },
3926         {
3927         .description = "l4_dst_port",
3928         .field_bit_size = 16,
3929         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3931         },
3932         {
3933         .description = "l4_src_port",
3934         .field_bit_size = 16,
3935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3937         },
3938         {
3939         .description = "ip_proto",
3940         .field_bit_size = 8,
3941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3943         },
3944         {
3945         .description = "ipv4_dst_addr",
3946         .field_bit_size = 32,
3947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3949         },
3950         {
3951         .description = "ipv4_src_addr",
3952         .field_bit_size = 32,
3953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3955         },
3956         {
3957         .description = "l2_src_mac",
3958         .field_bit_size = 48,
3959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3961         .spec_operand = {
3962                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
3963                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
3964                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3966         },
3967         {
3968         .description = "tun_id",
3969         .field_bit_size = 24,
3970         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3971         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3972         },
3973         {
3974         .description = "l2_cntxt_id",
3975         .field_bit_size = 10,
3976         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3977         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3978         .spec_operand = {
3979                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
3980                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3981                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3983         },
3984         {
3985         .description = "em_profile_id",
3986         .field_bit_size = 8,
3987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3989         .spec_operand = {
3990                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
3991                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
3992                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3994         },
3995         /* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */
3996         {
3997         .description = "l2_ivlan_vid",
3998         .field_bit_size = 12,
3999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4000         .mask_operand = {
4001                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4002                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4006         .spec_operand = {
4007                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4008                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4010                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4011         },
4012         {
4013         .description = "l2_ovlan_vid",
4014         .field_bit_size = 12,
4015         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4017         },
4018         {
4019         .description = "mac0_l2_addr",
4020         .field_bit_size = 48,
4021         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4022         .mask_operand = {
4023                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4024                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4026                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4028         .spec_operand = {
4029                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4030                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4033         },
4034         {
4035         .description = "svif",
4036         .field_bit_size = 12,
4037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4038         .mask_operand = {
4039                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4040                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4043         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4044         .spec_operand = {
4045                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4046                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4048                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4049         },
4050         {
4051         .description = "tl2_ivlan_vid",
4052         .field_bit_size = 12,
4053         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4054         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4055         },
4056         {
4057         .description = "tl2_ovlan_vid",
4058         .field_bit_size = 12,
4059         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4061         },
4062         {
4063         .description = "mac1_tl2_addr",
4064         .field_bit_size = 48,
4065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4067         },
4068         {
4069         .description = "l2_num_vtags",
4070         .field_bit_size = 2,
4071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4072         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4073                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4074         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4075         .spec_operand = {
4076                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
4077                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
4078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4080         },
4081         {
4082         .description = "tl2_num_vtags",
4083         .field_bit_size = 2,
4084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4086         },
4087         {
4088         .description = "tun_hdr_type",
4089         .field_bit_size = 4,
4090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4092         },
4093         {
4094         .description = "key_type",
4095         .field_bit_size = 2,
4096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4097         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4098                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4100         },
4101         {
4102         .description = "sparif",
4103         .field_bit_size = 4,
4104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4106         },
4107         {
4108         .description = "valid",
4109         .field_bit_size = 1,
4110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4111         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4112                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4114         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4115                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4116         },
4117         /* class_tid: 7, stingray, table: profile_tcam_cache_0 */
4118         {
4119         .description = "recycle",
4120         .field_bit_size = 1,
4121         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4122         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4123         },
4124         {
4125         .description = "prof_func_id",
4126         .field_bit_size = 7,
4127         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4128         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4129         .spec_operand = {
4130                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4131                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4132                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4134         },
4135         {
4136         .description = "class_tid",
4137         .field_bit_size = 8,
4138         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4140         .spec_operand = {
4141                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4142                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4145         },
4146         /* class_tid: 7, stingray, table: profile_tcam_0 */
4147         {
4148         .description = "l4_hdr_is_udp_tcp",
4149         .field_bit_size = 1,
4150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4152         },
4153         {
4154         .description = "l4_hdr_type",
4155         .field_bit_size = 4,
4156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4158         },
4159         {
4160         .description = "l4_hdr_error",
4161         .field_bit_size = 1,
4162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4164         },
4165         {
4166         .description = "l4_hdr_valid",
4167         .field_bit_size = 1,
4168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4170         },
4171         {
4172         .description = "l3_ipv6_cmp_dst",
4173         .field_bit_size = 1,
4174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4175         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4176         },
4177         {
4178         .description = "l3_ipv6_cmp_src",
4179         .field_bit_size = 1,
4180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4181         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4182         },
4183         {
4184         .description = "l3_hdr_isIP",
4185         .field_bit_size = 1,
4186         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4188         },
4189         {
4190         .description = "l3_hdr_type",
4191         .field_bit_size = 4,
4192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4193         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4194                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4196         .spec_operand = {
4197                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
4198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4200         },
4201         {
4202         .description = "l3_hdr_error",
4203         .field_bit_size = 1,
4204         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4205         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4206                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4207         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4208         },
4209         {
4210         .description = "l3_hdr_valid",
4211         .field_bit_size = 1,
4212         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4213         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4214                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4216         .spec_operand = {
4217                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4220         },
4221         {
4222         .description = "l2_two_vtags",
4223         .field_bit_size = 1,
4224         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4226         },
4227         {
4228         .description = "l2_vtag_present",
4229         .field_bit_size = 1,
4230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4232         },
4233         {
4234         .description = "l2_uc_mc_bc",
4235         .field_bit_size = 2,
4236         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4237         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4238                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4239         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4240         },
4241         {
4242         .description = "l2_hdr_type",
4243         .field_bit_size = 2,
4244         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4245         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4246                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4248         },
4249         {
4250         .description = "l2_hdr_error",
4251         .field_bit_size = 1,
4252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4253         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4254                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4256         },
4257         {
4258         .description = "l2_hdr_valid",
4259         .field_bit_size = 1,
4260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4261         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4262                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4264         .spec_operand = {
4265                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4267                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4268         },
4269         {
4270         .description = "tun_hdr_flags",
4271         .field_bit_size = 3,
4272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4274         },
4275         {
4276         .description = "tun_hdr_type",
4277         .field_bit_size = 4,
4278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4279         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4280         },
4281         {
4282         .description = "tun_hdr_error",
4283         .field_bit_size = 1,
4284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4286         },
4287         {
4288         .description = "tun_hdr_valid",
4289         .field_bit_size = 1,
4290         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4291         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4292                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4294         },
4295         {
4296         .description = "tl4_hdr_is_udp_tcp",
4297         .field_bit_size = 1,
4298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4300         },
4301         {
4302         .description = "tl4_hdr_type",
4303         .field_bit_size = 4,
4304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4306         },
4307         {
4308         .description = "tl4_hdr_error",
4309         .field_bit_size = 1,
4310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4312         },
4313         {
4314         .description = "tl4_hdr_valid",
4315         .field_bit_size = 1,
4316         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4317         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4318                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4320         },
4321         {
4322         .description = "tl3_ipv6_cmp_dst",
4323         .field_bit_size = 1,
4324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4326         },
4327         {
4328         .description = "tl3_ipv6_cmp_src",
4329         .field_bit_size = 1,
4330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4332         },
4333         {
4334         .description = "tl3_hdr_isIP",
4335         .field_bit_size = 1,
4336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4338         },
4339         {
4340         .description = "tl3_hdr_type",
4341         .field_bit_size = 4,
4342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4344         },
4345         {
4346         .description = "tl3_hdr_error",
4347         .field_bit_size = 1,
4348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4350         },
4351         {
4352         .description = "tl3_hdr_valid",
4353         .field_bit_size = 1,
4354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4355         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4356                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4358         },
4359         {
4360         .description = "tl2_two_vtags",
4361         .field_bit_size = 1,
4362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4363         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4364         },
4365         {
4366         .description = "tl2_vtag_present",
4367         .field_bit_size = 1,
4368         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4370         },
4371         {
4372         .description = "tl2_uc_mc_bc",
4373         .field_bit_size = 2,
4374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4376         },
4377         {
4378         .description = "tl2_hdr_type",
4379         .field_bit_size = 2,
4380         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4381         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4382         },
4383         {
4384         .description = "tl2_hdr_valid",
4385         .field_bit_size = 1,
4386         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4387         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4388                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4390         },
4391         {
4392         .description = "hrec_next",
4393         .field_bit_size = 1,
4394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4395         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4396         },
4397         {
4398         .description = "reserved",
4399         .field_bit_size = 9,
4400         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4401         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4402         },
4403         {
4404         .description = "prof_func_id",
4405         .field_bit_size = 7,
4406         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4407         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4408                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4410         .spec_operand = {
4411                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4412                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4415         },
4416         {
4417         .description = "agg_error",
4418         .field_bit_size = 1,
4419         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4420         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4421         },
4422         {
4423         .description = "recycle_cnt",
4424         .field_bit_size = 2,
4425         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4426         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4427                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4429         },
4430         {
4431         .description = "pkt_type_0",
4432         .field_bit_size = 2,
4433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4435         },
4436         {
4437         .description = "pkt_type_1",
4438         .field_bit_size = 2,
4439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4440         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4441                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4443         },
4444         {
4445         .description = "valid",
4446         .field_bit_size = 1,
4447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4448         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4449                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4450         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4451         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4452                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4453         },
4454         /* class_tid: 7, stingray, table: ext_em_0 */
4455         {
4456         .description = "spare",
4457         .field_bit_size = 251,
4458         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4459         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4460         },
4461         {
4462         .description = "local_cos",
4463         .field_bit_size = 3,
4464         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4465         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4466         },
4467         {
4468         .description = "l4_dst_port",
4469         .field_bit_size = 16,
4470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4472         },
4473         {
4474         .description = "l4_src_port",
4475         .field_bit_size = 16,
4476         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4477         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4478         },
4479         {
4480         .description = "ip_proto",
4481         .field_bit_size = 8,
4482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4483         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4484         },
4485         {
4486         .description = "ipv4_dst_addr",
4487         .field_bit_size = 32,
4488         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4490         },
4491         {
4492         .description = "ipv4_src_addr",
4493         .field_bit_size = 32,
4494         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4495         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4496         },
4497         {
4498         .description = "l2_src_mac",
4499         .field_bit_size = 48,
4500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4502         .spec_operand = {
4503                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4504                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4507         },
4508         {
4509         .description = "tun_id",
4510         .field_bit_size = 24,
4511         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4513         },
4514         {
4515         .description = "l2_cntxt_id",
4516         .field_bit_size = 10,
4517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4519         .spec_operand = {
4520                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4521                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4524         },
4525         {
4526         .description = "em_profile_id",
4527         .field_bit_size = 8,
4528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4530         .spec_operand = {
4531                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4532                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4534                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4535         },
4536         /* class_tid: 7, stingray, table: int_em_0 */
4537         {
4538         .description = "spare",
4539         .field_bit_size = 3,
4540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4542         },
4543         {
4544         .description = "local_cos",
4545         .field_bit_size = 3,
4546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4548         },
4549         {
4550         .description = "l4_dst_port",
4551         .field_bit_size = 16,
4552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4554         },
4555         {
4556         .description = "l4_src_port",
4557         .field_bit_size = 16,
4558         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4560         },
4561         {
4562         .description = "ip_proto",
4563         .field_bit_size = 8,
4564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4565         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4566         },
4567         {
4568         .description = "ipv4_dst_addr",
4569         .field_bit_size = 32,
4570         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4571         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4572         },
4573         {
4574         .description = "ipv4_src_addr",
4575         .field_bit_size = 32,
4576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4577         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4578         },
4579         {
4580         .description = "l2_src_mac",
4581         .field_bit_size = 48,
4582         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4584         .spec_operand = {
4585                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4586                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4588                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4589         },
4590         {
4591         .description = "tun_id",
4592         .field_bit_size = 24,
4593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4595         },
4596         {
4597         .description = "l2_cntxt_id",
4598         .field_bit_size = 10,
4599         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4600         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4601         .spec_operand = {
4602                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4603                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4605                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4606         },
4607         {
4608         .description = "em_profile_id",
4609         .field_bit_size = 8,
4610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4612         .spec_operand = {
4613                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4614                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4617         },
4618         /* class_tid: 8, stingray, table: l2_cntxt_cache_0 */
4619         {
4620         .description = "svif",
4621         .field_bit_size = 12,
4622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4623         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4624         .spec_operand = {
4625                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4626                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4629         },
4630         /* class_tid: 8, stingray, table: l2_cntxt_tcam_0 */
4631         {
4632         .description = "l2_ivlan_vid",
4633         .field_bit_size = 12,
4634         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4636         },
4637         {
4638         .description = "l2_ovlan_vid",
4639         .field_bit_size = 12,
4640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4642         },
4643         {
4644         .description = "mac0_l2_dst",
4645         .field_bit_size = 48,
4646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4648         },
4649         {
4650         .description = "svif",
4651         .field_bit_size = 12,
4652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4653         .mask_operand = {
4654                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4655                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4657                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4659         .spec_operand = {
4660                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4661                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4664         },
4665         {
4666         .description = "tl2_ivlan_vid",
4667         .field_bit_size = 12,
4668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4670         },
4671         {
4672         .description = "tl2_ovlan_vid",
4673         .field_bit_size = 12,
4674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4675         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4676         },
4677         {
4678         .description = "mac1_tl2_dst",
4679         .field_bit_size = 48,
4680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4681         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4682         },
4683         {
4684         .description = "l2_num_vtags",
4685         .field_bit_size = 2,
4686         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4687         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4688         },
4689         {
4690         .description = "tl2_num_vtags",
4691         .field_bit_size = 2,
4692         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4694         },
4695         {
4696         .description = "tun_hdr_type",
4697         .field_bit_size = 4,
4698         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4699         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4700         },
4701         {
4702         .description = "key_type",
4703         .field_bit_size = 2,
4704         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4706         },
4707         {
4708         .description = "sparif",
4709         .field_bit_size = 4,
4710         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4712         },
4713         {
4714         .description = "valid",
4715         .field_bit_size = 1,
4716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4717         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4718                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4719         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4720         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4721                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4722         },
4723         /* class_tid: 8, stingray, table: profile_tcam_cache_0 */
4724         {
4725         .description = "recycle",
4726         .field_bit_size = 1,
4727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4729         },
4730         {
4731         .description = "prof_func_id",
4732         .field_bit_size = 7,
4733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4735         .spec_operand = {
4736                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4737                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
4738                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4740         },
4741         {
4742         .description = "class_tid",
4743         .field_bit_size = 8,
4744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4746         .spec_operand = {
4747                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4748                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4750                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4751         },
4752         /* class_tid: 8, stingray, table: profile_tcam_0 */
4753         {
4754         .description = "l4_hdr_is_udp_tcp",
4755         .field_bit_size = 1,
4756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4757         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4758         },
4759         {
4760         .description = "l4_hdr_type",
4761         .field_bit_size = 4,
4762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4763         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4764                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4766         .spec_operand = {
4767                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
4768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4770         },
4771         {
4772         .description = "l4_hdr_error",
4773         .field_bit_size = 1,
4774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4775         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4776                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4777         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4778         },
4779         {
4780         .description = "l4_hdr_valid",
4781         .field_bit_size = 1,
4782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4783         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4784                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4786         .spec_operand = {
4787                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
4788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4789                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4790         },
4791         {
4792         .description = "l3_ipv6_cmp_dst",
4793         .field_bit_size = 1,
4794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4795         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4796         },
4797         {
4798         .description = "l3_ipv6_cmp_src",
4799         .field_bit_size = 1,
4800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4802         },
4803         {
4804         .description = "l3_hdr_isIP",
4805         .field_bit_size = 1,
4806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4808         },
4809         {
4810         .description = "l3_hdr_type",
4811         .field_bit_size = 4,
4812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4813         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4814                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4816         },
4817         {
4818         .description = "l3_hdr_error",
4819         .field_bit_size = 1,
4820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4821         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4822                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4824         },
4825         {
4826         .description = "l3_hdr_valid",
4827         .field_bit_size = 1,
4828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4829         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4830                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4831         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4832         .spec_operand = {
4833                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4835                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4836         },
4837         {
4838         .description = "l2_two_vtags",
4839         .field_bit_size = 1,
4840         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4842         },
4843         {
4844         .description = "l2_vtag_present",
4845         .field_bit_size = 1,
4846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4848         },
4849         {
4850         .description = "l2_uc_mc_bc",
4851         .field_bit_size = 2,
4852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4853         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4854                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4855         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4856         },
4857         {
4858         .description = "l2_hdr_type",
4859         .field_bit_size = 2,
4860         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4861         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4862                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4863         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4864         },
4865         {
4866         .description = "l2_hdr_error",
4867         .field_bit_size = 1,
4868         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4869         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4870                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4872         },
4873         {
4874         .description = "l2_hdr_valid",
4875         .field_bit_size = 1,
4876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4880         .spec_operand = {
4881                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4884         },
4885         {
4886         .description = "tun_hdr_flags",
4887         .field_bit_size = 3,
4888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4890         },
4891         {
4892         .description = "tun_hdr_type",
4893         .field_bit_size = 4,
4894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4896         },
4897         {
4898         .description = "tun_hdr_error",
4899         .field_bit_size = 1,
4900         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4901         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4902         },
4903         {
4904         .description = "tun_hdr_valid",
4905         .field_bit_size = 1,
4906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4907         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4908                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4910         },
4911         {
4912         .description = "tl4_hdr_is_udp_tcp",
4913         .field_bit_size = 1,
4914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4916         },
4917         {
4918         .description = "tl4_hdr_type",
4919         .field_bit_size = 4,
4920         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4921         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4922         },
4923         {
4924         .description = "tl4_hdr_error",
4925         .field_bit_size = 1,
4926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4928         },
4929         {
4930         .description = "tl4_hdr_valid",
4931         .field_bit_size = 1,
4932         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4933         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4934                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4936         },
4937         {
4938         .description = "tl3_ipv6_cmp_dst",
4939         .field_bit_size = 1,
4940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4942         },
4943         {
4944         .description = "tl3_ipv6_cmp_src",
4945         .field_bit_size = 1,
4946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4947         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4948         },
4949         {
4950         .description = "tl3_hdr_isIP",
4951         .field_bit_size = 1,
4952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4954         },
4955         {
4956         .description = "tl3_hdr_type",
4957         .field_bit_size = 4,
4958         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4960         },
4961         {
4962         .description = "tl3_hdr_error",
4963         .field_bit_size = 1,
4964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4966         },
4967         {
4968         .description = "tl3_hdr_valid",
4969         .field_bit_size = 1,
4970         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4971         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4972                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4974         },
4975         {
4976         .description = "tl2_two_vtags",
4977         .field_bit_size = 1,
4978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4980         },
4981         {
4982         .description = "tl2_vtag_present",
4983         .field_bit_size = 1,
4984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4986         },
4987         {
4988         .description = "tl2_uc_mc_bc",
4989         .field_bit_size = 2,
4990         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4992         },
4993         {
4994         .description = "tl2_hdr_type",
4995         .field_bit_size = 2,
4996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4997         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4998         },
4999         {
5000         .description = "tl2_hdr_valid",
5001         .field_bit_size = 1,
5002         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5003         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5004                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5005         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5006         },
5007         {
5008         .description = "hrec_next",
5009         .field_bit_size = 1,
5010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5012         },
5013         {
5014         .description = "reserved",
5015         .field_bit_size = 9,
5016         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5017         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5018         },
5019         {
5020         .description = "prof_func_id",
5021         .field_bit_size = 7,
5022         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5023         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5024                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5026         .spec_operand = {
5027                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5028                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5029                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5031         },
5032         {
5033         .description = "agg_error",
5034         .field_bit_size = 1,
5035         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5036         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5037         },
5038         {
5039         .description = "recycle_cnt",
5040         .field_bit_size = 2,
5041         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5042         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5043                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5044         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5045         },
5046         {
5047         .description = "pkt_type_0",
5048         .field_bit_size = 2,
5049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5050         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5051         },
5052         {
5053         .description = "pkt_type_1",
5054         .field_bit_size = 2,
5055         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5056         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5057                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5059         },
5060         {
5061         .description = "valid",
5062         .field_bit_size = 1,
5063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5064         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5065                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5067         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5068                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5069         },
5070         /* class_tid: 8, stingray, table: ext_em_0 */
5071         {
5072         .description = "spare",
5073         .field_bit_size = 251,
5074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5075         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5076         },
5077         {
5078         .description = "local_cos",
5079         .field_bit_size = 3,
5080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5082         },
5083         {
5084         .description = "l4_dst_port",
5085         .field_bit_size = 16,
5086         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5087         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5088         .spec_operand = {
5089                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5090                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5091                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5092                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5093         },
5094         {
5095         .description = "l4_src_port",
5096         .field_bit_size = 16,
5097         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5098         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5099         .spec_operand = {
5100                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5101                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5102                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5103                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5104         },
5105         {
5106         .description = "ip_proto",
5107         .field_bit_size = 8,
5108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5110         .spec_operand = {
5111                 BNXT_ULP_SYM_IP_PROTO_UDP,
5112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5114         },
5115         {
5116         .description = "ipv4_dst_addr",
5117         .field_bit_size = 32,
5118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5120         .spec_operand = {
5121                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5122                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5125         },
5126         {
5127         .description = "ipv4_src_addr",
5128         .field_bit_size = 32,
5129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5130         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5131         .spec_operand = {
5132                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5133                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5136         },
5137         {
5138         .description = "l2_src_mac",
5139         .field_bit_size = 48,
5140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5142         },
5143         {
5144         .description = "tun_id",
5145         .field_bit_size = 24,
5146         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5148         },
5149         {
5150         .description = "l2_cntxt_id",
5151         .field_bit_size = 10,
5152         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5153         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5154         .spec_operand = {
5155                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5156                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5158                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5159         },
5160         {
5161         .description = "em_profile_id",
5162         .field_bit_size = 8,
5163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5164         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5165         .spec_operand = {
5166                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5167                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5168                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5170         },
5171         /* class_tid: 8, stingray, table: int_em_0 */
5172         {
5173         .description = "spare",
5174         .field_bit_size = 3,
5175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5177         },
5178         {
5179         .description = "local_cos",
5180         .field_bit_size = 3,
5181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5183         },
5184         {
5185         .description = "l4_dst_port",
5186         .field_bit_size = 16,
5187         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5189         .spec_operand = {
5190                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5191                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5194         },
5195         {
5196         .description = "l4_src_port",
5197         .field_bit_size = 16,
5198         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5199         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5200         .spec_operand = {
5201                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5202                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5205         },
5206         {
5207         .description = "ip_proto",
5208         .field_bit_size = 8,
5209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5211         .spec_operand = {
5212                 BNXT_ULP_SYM_IP_PROTO_UDP,
5213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5215         },
5216         {
5217         .description = "ipv4_dst_addr",
5218         .field_bit_size = 32,
5219         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5220         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5221         .spec_operand = {
5222                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5223                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5226         },
5227         {
5228         .description = "ipv4_src_addr",
5229         .field_bit_size = 32,
5230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5232         .spec_operand = {
5233                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5234                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5235                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5237         },
5238         {
5239         .description = "l2_src_mac",
5240         .field_bit_size = 48,
5241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5243         },
5244         {
5245         .description = "tun_id",
5246         .field_bit_size = 24,
5247         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5249         },
5250         {
5251         .description = "l2_cntxt_id",
5252         .field_bit_size = 10,
5253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5254         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5255         .spec_operand = {
5256                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5257                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5260         },
5261         {
5262         .description = "em_profile_id",
5263         .field_bit_size = 8,
5264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5266         .spec_operand = {
5267                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5268                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5271         },
5272         /* class_tid: 9, stingray, table: l2_cntxt_cache_0 */
5273         {
5274         .description = "svif",
5275         .field_bit_size = 12,
5276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5277         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5278         .spec_operand = {
5279                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5280                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5283         },
5284         /* class_tid: 9, stingray, table: l2_cntxt_tcam_0 */
5285         {
5286         .description = "l2_ivlan_vid",
5287         .field_bit_size = 12,
5288         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5289         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5290         },
5291         {
5292         .description = "l2_ovlan_vid",
5293         .field_bit_size = 12,
5294         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5295         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5296         },
5297         {
5298         .description = "mac0_l2_dst",
5299         .field_bit_size = 48,
5300         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5302         },
5303         {
5304         .description = "svif",
5305         .field_bit_size = 12,
5306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5307         .mask_operand = {
5308                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5309                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5310                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5311                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
5312         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5313         .spec_operand = {
5314                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5315                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5318         },
5319         {
5320         .description = "tl2_ivlan_vid",
5321         .field_bit_size = 12,
5322         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5323         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5324         },
5325         {
5326         .description = "tl2_ovlan_vid",
5327         .field_bit_size = 12,
5328         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5329         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5330         },
5331         {
5332         .description = "mac1_tl2_dst",
5333         .field_bit_size = 48,
5334         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5335         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5336         },
5337         {
5338         .description = "l2_num_vtags",
5339         .field_bit_size = 2,
5340         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5342         },
5343         {
5344         .description = "tl2_num_vtags",
5345         .field_bit_size = 2,
5346         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5348         },
5349         {
5350         .description = "tun_hdr_type",
5351         .field_bit_size = 4,
5352         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5353         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5354         },
5355         {
5356         .description = "key_type",
5357         .field_bit_size = 2,
5358         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5359         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5360         },
5361         {
5362         .description = "sparif",
5363         .field_bit_size = 4,
5364         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5366         },
5367         {
5368         .description = "valid",
5369         .field_bit_size = 1,
5370         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5371         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5372                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5374         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5375                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5376         },
5377         /* class_tid: 9, stingray, table: profile_tcam_cache_0 */
5378         {
5379         .description = "recycle",
5380         .field_bit_size = 1,
5381         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5383         },
5384         {
5385         .description = "prof_func_id",
5386         .field_bit_size = 7,
5387         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5389         .spec_operand = {
5390                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5391                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5394         },
5395         {
5396         .description = "class_tid",
5397         .field_bit_size = 8,
5398         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5399         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5400         .spec_operand = {
5401                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
5402                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
5403                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5404                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5405         },
5406         /* class_tid: 9, stingray, table: profile_tcam_0 */
5407         {
5408         .description = "l4_hdr_is_udp_tcp",
5409         .field_bit_size = 1,
5410         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5412         },
5413         {
5414         .description = "l4_hdr_type",
5415         .field_bit_size = 4,
5416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5420         },
5421         {
5422         .description = "l4_hdr_error",
5423         .field_bit_size = 1,
5424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5425         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5426                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5428         },
5429         {
5430         .description = "l4_hdr_valid",
5431         .field_bit_size = 1,
5432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5433         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5434                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5436         .spec_operand = {
5437                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
5438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5440         },
5441         {
5442         .description = "l3_ipv6_cmp_dst",
5443         .field_bit_size = 1,
5444         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5446         },
5447         {
5448         .description = "l3_ipv6_cmp_src",
5449         .field_bit_size = 1,
5450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5452         },
5453         {
5454         .description = "l3_hdr_isIP",
5455         .field_bit_size = 1,
5456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5458         },
5459         {
5460         .description = "l3_hdr_type",
5461         .field_bit_size = 4,
5462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5463         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5464                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5465         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5466         },
5467         {
5468         .description = "l3_hdr_error",
5469         .field_bit_size = 1,
5470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5471         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5472                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5474         },
5475         {
5476         .description = "l3_hdr_valid",
5477         .field_bit_size = 1,
5478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5479         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5480                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5482         .spec_operand = {
5483                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
5484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5486         },
5487         {
5488         .description = "l2_two_vtags",
5489         .field_bit_size = 1,
5490         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5491         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5492         },
5493         {
5494         .description = "l2_vtag_present",
5495         .field_bit_size = 1,
5496         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5497         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5498         },
5499         {
5500         .description = "l2_uc_mc_bc",
5501         .field_bit_size = 2,
5502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5503         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5504                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5505         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5506         },
5507         {
5508         .description = "l2_hdr_type",
5509         .field_bit_size = 2,
5510         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5511         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5512                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5514         },
5515         {
5516         .description = "l2_hdr_error",
5517         .field_bit_size = 1,
5518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5519         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5520                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5521         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5522         },
5523         {
5524         .description = "l2_hdr_valid",
5525         .field_bit_size = 1,
5526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5527         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5528                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5530         .spec_operand = {
5531                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
5532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5534         },
5535         {
5536         .description = "tun_hdr_flags",
5537         .field_bit_size = 3,
5538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5539         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5540         },
5541         {
5542         .description = "tun_hdr_type",
5543         .field_bit_size = 4,
5544         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5545         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5546         },
5547         {
5548         .description = "tun_hdr_error",
5549         .field_bit_size = 1,
5550         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5551         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5552         },
5553         {
5554         .description = "tun_hdr_valid",
5555         .field_bit_size = 1,
5556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5557         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5558                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5560         },
5561         {
5562         .description = "tl4_hdr_is_udp_tcp",
5563         .field_bit_size = 1,
5564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5565         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5566         },
5567         {
5568         .description = "tl4_hdr_type",
5569         .field_bit_size = 4,
5570         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5571         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5572         },
5573         {
5574         .description = "tl4_hdr_error",
5575         .field_bit_size = 1,
5576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5577         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5578         },
5579         {
5580         .description = "tl4_hdr_valid",
5581         .field_bit_size = 1,
5582         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5583         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5584                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5586         },
5587         {
5588         .description = "tl3_ipv6_cmp_dst",
5589         .field_bit_size = 1,
5590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5591         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5592         },
5593         {
5594         .description = "tl3_ipv6_cmp_src",
5595         .field_bit_size = 1,
5596         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5597         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5598         },
5599         {
5600         .description = "tl3_hdr_isIP",
5601         .field_bit_size = 1,
5602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5604         },
5605         {
5606         .description = "tl3_hdr_type",
5607         .field_bit_size = 4,
5608         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5609         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5610         },
5611         {
5612         .description = "tl3_hdr_error",
5613         .field_bit_size = 1,
5614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5615         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5616         },
5617         {
5618         .description = "tl3_hdr_valid",
5619         .field_bit_size = 1,
5620         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5621         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5622                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5623         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5624         },
5625         {
5626         .description = "tl2_two_vtags",
5627         .field_bit_size = 1,
5628         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5629         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5630         },
5631         {
5632         .description = "tl2_vtag_present",
5633         .field_bit_size = 1,
5634         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5636         },
5637         {
5638         .description = "tl2_uc_mc_bc",
5639         .field_bit_size = 2,
5640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5642         },
5643         {
5644         .description = "tl2_hdr_type",
5645         .field_bit_size = 2,
5646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5648         },
5649         {
5650         .description = "tl2_hdr_valid",
5651         .field_bit_size = 1,
5652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5653         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5654                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5656         },
5657         {
5658         .description = "hrec_next",
5659         .field_bit_size = 1,
5660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5662         },
5663         {
5664         .description = "reserved",
5665         .field_bit_size = 9,
5666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5667         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5668         },
5669         {
5670         .description = "prof_func_id",
5671         .field_bit_size = 7,
5672         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5673         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5674                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5675         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5676         .spec_operand = {
5677                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5678                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5681         },
5682         {
5683         .description = "agg_error",
5684         .field_bit_size = 1,
5685         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5687         },
5688         {
5689         .description = "recycle_cnt",
5690         .field_bit_size = 2,
5691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5692         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5693                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5694         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5695         },
5696         {
5697         .description = "pkt_type_0",
5698         .field_bit_size = 2,
5699         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5700         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5701         },
5702         {
5703         .description = "pkt_type_1",
5704         .field_bit_size = 2,
5705         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5706         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5707                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5708         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5709         },
5710         {
5711         .description = "valid",
5712         .field_bit_size = 1,
5713         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5714         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5715                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5717         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5718                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5719         },
5720         /* class_tid: 9, stingray, table: ext_em_0 */
5721         {
5722         .description = "spare",
5723         .field_bit_size = 251,
5724         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5725         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5726         },
5727         {
5728         .description = "local_cos",
5729         .field_bit_size = 3,
5730         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5731         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5732         },
5733         {
5734         .description = "l4_dst_port",
5735         .field_bit_size = 16,
5736         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5737         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5738         .spec_operand = {
5739                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5740                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5741                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5742                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5743         },
5744         {
5745         .description = "l4_src_port",
5746         .field_bit_size = 16,
5747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5749         .spec_operand = {
5750                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5751                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5752                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5754         },
5755         {
5756         .description = "ip_proto",
5757         .field_bit_size = 8,
5758         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5760         .spec_operand = {
5761                 BNXT_ULP_SYM_IP_PROTO_TCP,
5762                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5764         },
5765         {
5766         .description = "ipv4_dst_addr",
5767         .field_bit_size = 32,
5768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5769         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5770         .spec_operand = {
5771                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5772                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5775         },
5776         {
5777         .description = "ipv4_src_addr",
5778         .field_bit_size = 32,
5779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5781         .spec_operand = {
5782                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5783                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5786         },
5787         {
5788         .description = "l2_src_mac",
5789         .field_bit_size = 48,
5790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5792         },
5793         {
5794         .description = "tun_id",
5795         .field_bit_size = 24,
5796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5798         },
5799         {
5800         .description = "l2_cntxt_id",
5801         .field_bit_size = 10,
5802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5804         .spec_operand = {
5805                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5806                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5809         },
5810         {
5811         .description = "em_profile_id",
5812         .field_bit_size = 8,
5813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5815         .spec_operand = {
5816                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5817                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5820         },
5821         /* class_tid: 9, stingray, table: int_em_0 */
5822         {
5823         .description = "spare",
5824         .field_bit_size = 3,
5825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5827         },
5828         {
5829         .description = "local_cos",
5830         .field_bit_size = 3,
5831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5833         },
5834         {
5835         .description = "l4_dst_port",
5836         .field_bit_size = 16,
5837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5839         .spec_operand = {
5840                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5841                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5844         },
5845         {
5846         .description = "l4_src_port",
5847         .field_bit_size = 16,
5848         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5850         .spec_operand = {
5851                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5852                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5854                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5855         },
5856         {
5857         .description = "ip_proto",
5858         .field_bit_size = 8,
5859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5861         .spec_operand = {
5862                 BNXT_ULP_SYM_IP_PROTO_TCP,
5863                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5865         },
5866         {
5867         .description = "ipv4_dst_addr",
5868         .field_bit_size = 32,
5869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5871         .spec_operand = {
5872                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5873                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5875                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5876         },
5877         {
5878         .description = "ipv4_src_addr",
5879         .field_bit_size = 32,
5880         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5881         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5882         .spec_operand = {
5883                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5884                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5887         },
5888         {
5889         .description = "l2_src_mac",
5890         .field_bit_size = 48,
5891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5893         },
5894         {
5895         .description = "tun_id",
5896         .field_bit_size = 24,
5897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5899         },
5900         {
5901         .description = "l2_cntxt_id",
5902         .field_bit_size = 10,
5903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5905         .spec_operand = {
5906                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5907                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5910         },
5911         {
5912         .description = "em_profile_id",
5913         .field_bit_size = 8,
5914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5916         .spec_operand = {
5917                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5918                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5921         },
5922         /* class_tid: 10, stingray, table: l2_cntxt_cache_0 */
5923         {
5924         .description = "svif",
5925         .field_bit_size = 12,
5926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5928         .spec_operand = {
5929                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5930                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5933         },
5934         /* class_tid: 10, stingray, table: l2_cntxt_tcam_0 */
5935         {
5936         .description = "l2_ivlan_vid",
5937         .field_bit_size = 12,
5938         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5939         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5940         },
5941         {
5942         .description = "l2_ovlan_vid",
5943         .field_bit_size = 12,
5944         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5945         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5946         },
5947         {
5948         .description = "mac0_l2_dst",
5949         .field_bit_size = 48,
5950         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5951         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5952         },
5953         {
5954         .description = "svif",
5955         .field_bit_size = 12,
5956         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5957         .mask_operand = {
5958                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5959                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5961                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
5962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5963         .spec_operand = {
5964                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
5965                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
5966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5968         },
5969         {
5970         .description = "tl2_ivlan_vid",
5971         .field_bit_size = 12,
5972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5974         },
5975         {
5976         .description = "tl2_ovlan_vid",
5977         .field_bit_size = 12,
5978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5980         },
5981         {
5982         .description = "mac1_tl2_dst",
5983         .field_bit_size = 48,
5984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5986         },
5987         {
5988         .description = "l2_num_vtags",
5989         .field_bit_size = 2,
5990         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5992         },
5993         {
5994         .description = "tl2_num_vtags",
5995         .field_bit_size = 2,
5996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5997         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5998         },
5999         {
6000         .description = "tun_hdr_type",
6001         .field_bit_size = 4,
6002         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6003         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6004         },
6005         {
6006         .description = "key_type",
6007         .field_bit_size = 2,
6008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6010         },
6011         {
6012         .description = "sparif",
6013         .field_bit_size = 4,
6014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6016         },
6017         {
6018         .description = "valid",
6019         .field_bit_size = 1,
6020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6021         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6022                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6023         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6024         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6026         },
6027         /* class_tid: 10, stingray, table: profile_tcam_cache_0 */
6028         {
6029         .description = "recycle",
6030         .field_bit_size = 1,
6031         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6032         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6033         },
6034         {
6035         .description = "prof_func_id",
6036         .field_bit_size = 7,
6037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6038         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6039         .spec_operand = {
6040                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6041                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6044         },
6045         {
6046         .description = "class_tid",
6047         .field_bit_size = 8,
6048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6050         .spec_operand = {
6051                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6052                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6055         },
6056         /* class_tid: 10, stingray, table: profile_tcam_0 */
6057         {
6058         .description = "l4_hdr_is_udp_tcp",
6059         .field_bit_size = 1,
6060         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6061         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6062         },
6063         {
6064         .description = "l4_hdr_type",
6065         .field_bit_size = 4,
6066         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6067         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6068                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6070         .spec_operand = {
6071                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
6072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6074         },
6075         {
6076         .description = "l4_hdr_error",
6077         .field_bit_size = 1,
6078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6079         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6080                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6082         },
6083         {
6084         .description = "l4_hdr_valid",
6085         .field_bit_size = 1,
6086         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6087         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6088                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6089         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6090         .spec_operand = {
6091                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6092                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6094         },
6095         {
6096         .description = "l3_ipv6_cmp_dst",
6097         .field_bit_size = 1,
6098         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6100         },
6101         {
6102         .description = "l3_ipv6_cmp_src",
6103         .field_bit_size = 1,
6104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6106         },
6107         {
6108         .description = "l3_hdr_isIP",
6109         .field_bit_size = 1,
6110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6111         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6112         },
6113         {
6114         .description = "l3_hdr_type",
6115         .field_bit_size = 4,
6116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6117         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6118                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6120         .spec_operand = {
6121                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6124         },
6125         {
6126         .description = "l3_hdr_error",
6127         .field_bit_size = 1,
6128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6129         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6130                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6132         },
6133         {
6134         .description = "l3_hdr_valid",
6135         .field_bit_size = 1,
6136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6137         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6138                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6140         .spec_operand = {
6141                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6142                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6144         },
6145         {
6146         .description = "l2_two_vtags",
6147         .field_bit_size = 1,
6148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6150         },
6151         {
6152         .description = "l2_vtag_present",
6153         .field_bit_size = 1,
6154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6156         },
6157         {
6158         .description = "l2_uc_mc_bc",
6159         .field_bit_size = 2,
6160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6161         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6162                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6164         },
6165         {
6166         .description = "l2_hdr_type",
6167         .field_bit_size = 2,
6168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6169         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6170                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6172         },
6173         {
6174         .description = "l2_hdr_error",
6175         .field_bit_size = 1,
6176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6177         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6178                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6180         },
6181         {
6182         .description = "l2_hdr_valid",
6183         .field_bit_size = 1,
6184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6185         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6186                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6188         .spec_operand = {
6189                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6192         },
6193         {
6194         .description = "tun_hdr_flags",
6195         .field_bit_size = 3,
6196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6197         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6198         },
6199         {
6200         .description = "tun_hdr_type",
6201         .field_bit_size = 4,
6202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6204         },
6205         {
6206         .description = "tun_hdr_error",
6207         .field_bit_size = 1,
6208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6210         },
6211         {
6212         .description = "tun_hdr_valid",
6213         .field_bit_size = 1,
6214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6215         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6216                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6218         },
6219         {
6220         .description = "tl4_hdr_is_udp_tcp",
6221         .field_bit_size = 1,
6222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6224         },
6225         {
6226         .description = "tl4_hdr_type",
6227         .field_bit_size = 4,
6228         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6230         },
6231         {
6232         .description = "tl4_hdr_error",
6233         .field_bit_size = 1,
6234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6236         },
6237         {
6238         .description = "tl4_hdr_valid",
6239         .field_bit_size = 1,
6240         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6241         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6242                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6244         },
6245         {
6246         .description = "tl3_ipv6_cmp_dst",
6247         .field_bit_size = 1,
6248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6250         },
6251         {
6252         .description = "tl3_ipv6_cmp_src",
6253         .field_bit_size = 1,
6254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6256         },
6257         {
6258         .description = "tl3_hdr_isIP",
6259         .field_bit_size = 1,
6260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6262         },
6263         {
6264         .description = "tl3_hdr_type",
6265         .field_bit_size = 4,
6266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6268         },
6269         {
6270         .description = "tl3_hdr_error",
6271         .field_bit_size = 1,
6272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6274         },
6275         {
6276         .description = "tl3_hdr_valid",
6277         .field_bit_size = 1,
6278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6279         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6280                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6282         },
6283         {
6284         .description = "tl2_two_vtags",
6285         .field_bit_size = 1,
6286         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6287         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6288         },
6289         {
6290         .description = "tl2_vtag_present",
6291         .field_bit_size = 1,
6292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6294         },
6295         {
6296         .description = "tl2_uc_mc_bc",
6297         .field_bit_size = 2,
6298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6300         },
6301         {
6302         .description = "tl2_hdr_type",
6303         .field_bit_size = 2,
6304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6306         },
6307         {
6308         .description = "tl2_hdr_valid",
6309         .field_bit_size = 1,
6310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6311         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6312                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6314         },
6315         {
6316         .description = "hrec_next",
6317         .field_bit_size = 1,
6318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6320         },
6321         {
6322         .description = "reserved",
6323         .field_bit_size = 9,
6324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6326         },
6327         {
6328         .description = "prof_func_id",
6329         .field_bit_size = 7,
6330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6331         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6332                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6334         .spec_operand = {
6335                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6336                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6337                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6339         },
6340         {
6341         .description = "agg_error",
6342         .field_bit_size = 1,
6343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6345         },
6346         {
6347         .description = "recycle_cnt",
6348         .field_bit_size = 2,
6349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6350         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6351                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6353         },
6354         {
6355         .description = "pkt_type_0",
6356         .field_bit_size = 2,
6357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6359         },
6360         {
6361         .description = "pkt_type_1",
6362         .field_bit_size = 2,
6363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6364         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6365                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6367         },
6368         {
6369         .description = "valid",
6370         .field_bit_size = 1,
6371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6372         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6373                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6374         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6375         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6376                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6377         },
6378         /* class_tid: 10, stingray, table: ext_em_0 */
6379         {
6380         .description = "spare",
6381         .field_bit_size = 59,
6382         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6383         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6384         },
6385         {
6386         .description = "local_cos",
6387         .field_bit_size = 3,
6388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6390         },
6391         {
6392         .description = "l4_dst_port",
6393         .field_bit_size = 16,
6394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6395         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6396         .spec_operand = {
6397                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6398                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6400                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6401         },
6402         {
6403         .description = "l4_src_port",
6404         .field_bit_size = 16,
6405         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6406         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6407         .spec_operand = {
6408                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6409                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6412         },
6413         {
6414         .description = "ip_proto",
6415         .field_bit_size = 8,
6416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6418         .spec_operand = {
6419                 BNXT_ULP_SYM_IP_PROTO_UDP,
6420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6422         },
6423         {
6424         .description = "ipv6_dst_addr",
6425         .field_bit_size = 128,
6426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6428         .spec_operand = {
6429                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6430                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6432                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6433         },
6434         {
6435         .description = "ipv6_src_addr",
6436         .field_bit_size = 128,
6437         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6438         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6439         .spec_operand = {
6440                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6441                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6442                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6443                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6444         },
6445         {
6446         .description = "l2_src_mac",
6447         .field_bit_size = 48,
6448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6450         },
6451         {
6452         .description = "tun_id",
6453         .field_bit_size = 24,
6454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6455         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6456         },
6457         {
6458         .description = "l2_cntxt_id",
6459         .field_bit_size = 10,
6460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6461         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6462         .spec_operand = {
6463                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6464                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6467         },
6468         {
6469         .description = "em_profile_id",
6470         .field_bit_size = 8,
6471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6473         .spec_operand = {
6474                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6475                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6478         },
6479         /* class_tid: 10, stingray, table: int_em_0 */
6480         {
6481         .description = "spare",
6482         .field_bit_size = 3,
6483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6484         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6485         },
6486         {
6487         .description = "local_cos",
6488         .field_bit_size = 3,
6489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6491         },
6492         {
6493         .description = "l4_dst_port",
6494         .field_bit_size = 16,
6495         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6497         .spec_operand = {
6498                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6499                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6502         },
6503         {
6504         .description = "l4_src_port",
6505         .field_bit_size = 16,
6506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6507         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6508         .spec_operand = {
6509                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6510                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6511                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6512                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6513         },
6514         {
6515         .description = "ip_proto",
6516         .field_bit_size = 8,
6517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6519         .spec_operand = {
6520                 BNXT_ULP_SYM_IP_PROTO_UDP,
6521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6523         },
6524         {
6525         .description = "ipv6_dst_addr",
6526         .field_bit_size = 128,
6527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6529         .spec_operand = {
6530                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6531                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6534         },
6535         {
6536         .description = "ipv6_src_addr",
6537         .field_bit_size = 128,
6538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6539         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6540         .spec_operand = {
6541                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6542                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6545         },
6546         {
6547         .description = "l2_src_mac",
6548         .field_bit_size = 48,
6549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6551         },
6552         {
6553         .description = "tun_id",
6554         .field_bit_size = 24,
6555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6557         },
6558         {
6559         .description = "l2_cntxt_id",
6560         .field_bit_size = 10,
6561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6563         .spec_operand = {
6564                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6565                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6568         },
6569         {
6570         .description = "em_profile_id",
6571         .field_bit_size = 8,
6572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6574         .spec_operand = {
6575                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6576                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6579         },
6580         /* class_tid: 11, stingray, table: l2_cntxt_cache_0 */
6581         {
6582         .description = "svif",
6583         .field_bit_size = 12,
6584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6586         .spec_operand = {
6587                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6588                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6591         },
6592         /* class_tid: 11, stingray, table: l2_cntxt_tcam_0 */
6593         {
6594         .description = "l2_ivlan_vid",
6595         .field_bit_size = 12,
6596         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6597         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6598         },
6599         {
6600         .description = "l2_ovlan_vid",
6601         .field_bit_size = 12,
6602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6604         },
6605         {
6606         .description = "mac0_l2_dst",
6607         .field_bit_size = 48,
6608         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6609         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6610         },
6611         {
6612         .description = "svif",
6613         .field_bit_size = 12,
6614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6615         .mask_operand = {
6616                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6617                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
6620         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6621         .spec_operand = {
6622                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6623                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6626         },
6627         {
6628         .description = "tl2_ivlan_vid",
6629         .field_bit_size = 12,
6630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6632         },
6633         {
6634         .description = "tl2_ovlan_vid",
6635         .field_bit_size = 12,
6636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6637         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6638         },
6639         {
6640         .description = "mac1_tl2_dst",
6641         .field_bit_size = 48,
6642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6644         },
6645         {
6646         .description = "l2_num_vtags",
6647         .field_bit_size = 2,
6648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6650         },
6651         {
6652         .description = "tl2_num_vtags",
6653         .field_bit_size = 2,
6654         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6656         },
6657         {
6658         .description = "tun_hdr_type",
6659         .field_bit_size = 4,
6660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6662         },
6663         {
6664         .description = "key_type",
6665         .field_bit_size = 2,
6666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6667         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6668         },
6669         {
6670         .description = "sparif",
6671         .field_bit_size = 4,
6672         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6673         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6674         },
6675         {
6676         .description = "valid",
6677         .field_bit_size = 1,
6678         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6679         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6680                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6681         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6682         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6684         },
6685         /* class_tid: 11, stingray, table: profile_tcam_cache_0 */
6686         {
6687         .description = "recycle",
6688         .field_bit_size = 1,
6689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6691         },
6692         {
6693         .description = "prof_func_id",
6694         .field_bit_size = 7,
6695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6697         .spec_operand = {
6698                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6699                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6702         },
6703         {
6704         .description = "class_tid",
6705         .field_bit_size = 8,
6706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6707         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6708         .spec_operand = {
6709                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6710                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6713         },
6714         /* class_tid: 11, stingray, table: profile_tcam_0 */
6715         {
6716         .description = "l4_hdr_is_udp_tcp",
6717         .field_bit_size = 1,
6718         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6719         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6720         },
6721         {
6722         .description = "l4_hdr_type",
6723         .field_bit_size = 4,
6724         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6725         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6726                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6728         },
6729         {
6730         .description = "l4_hdr_error",
6731         .field_bit_size = 1,
6732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6733         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6734                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6736         },
6737         {
6738         .description = "l4_hdr_valid",
6739         .field_bit_size = 1,
6740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6741         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6742                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6744         .spec_operand = {
6745                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6747                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6748         },
6749         {
6750         .description = "l3_ipv6_cmp_dst",
6751         .field_bit_size = 1,
6752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6754         },
6755         {
6756         .description = "l3_ipv6_cmp_src",
6757         .field_bit_size = 1,
6758         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6759         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6760         },
6761         {
6762         .description = "l3_hdr_isIP",
6763         .field_bit_size = 1,
6764         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6766         },
6767         {
6768         .description = "l3_hdr_type",
6769         .field_bit_size = 4,
6770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6771         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6772                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6773         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6774         .spec_operand = {
6775                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6777                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6778         },
6779         {
6780         .description = "l3_hdr_error",
6781         .field_bit_size = 1,
6782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6783         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6784                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6786         },
6787         {
6788         .description = "l3_hdr_valid",
6789         .field_bit_size = 1,
6790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6791         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6792                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6794         .spec_operand = {
6795                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6797                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6798         },
6799         {
6800         .description = "l2_two_vtags",
6801         .field_bit_size = 1,
6802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6804         },
6805         {
6806         .description = "l2_vtag_present",
6807         .field_bit_size = 1,
6808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6810         },
6811         {
6812         .description = "l2_uc_mc_bc",
6813         .field_bit_size = 2,
6814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6815         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6816                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6818         },
6819         {
6820         .description = "l2_hdr_type",
6821         .field_bit_size = 2,
6822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6823         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6824                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6825         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6826         },
6827         {
6828         .description = "l2_hdr_error",
6829         .field_bit_size = 1,
6830         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6831         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6832                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6834         },
6835         {
6836         .description = "l2_hdr_valid",
6837         .field_bit_size = 1,
6838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6839         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6840                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6842         .spec_operand = {
6843                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6846         },
6847         {
6848         .description = "tun_hdr_flags",
6849         .field_bit_size = 3,
6850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6852         },
6853         {
6854         .description = "tun_hdr_type",
6855         .field_bit_size = 4,
6856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6857         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6858         },
6859         {
6860         .description = "tun_hdr_error",
6861         .field_bit_size = 1,
6862         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6863         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6864         },
6865         {
6866         .description = "tun_hdr_valid",
6867         .field_bit_size = 1,
6868         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6869         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6870                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6872         },
6873         {
6874         .description = "tl4_hdr_is_udp_tcp",
6875         .field_bit_size = 1,
6876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6877         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6878         },
6879         {
6880         .description = "tl4_hdr_type",
6881         .field_bit_size = 4,
6882         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6883         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6884         },
6885         {
6886         .description = "tl4_hdr_error",
6887         .field_bit_size = 1,
6888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6890         },
6891         {
6892         .description = "tl4_hdr_valid",
6893         .field_bit_size = 1,
6894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6895         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6896                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6898         },
6899         {
6900         .description = "tl3_ipv6_cmp_dst",
6901         .field_bit_size = 1,
6902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6904         },
6905         {
6906         .description = "tl3_ipv6_cmp_src",
6907         .field_bit_size = 1,
6908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6910         },
6911         {
6912         .description = "tl3_hdr_isIP",
6913         .field_bit_size = 1,
6914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6916         },
6917         {
6918         .description = "tl3_hdr_type",
6919         .field_bit_size = 4,
6920         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6921         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6922         },
6923         {
6924         .description = "tl3_hdr_error",
6925         .field_bit_size = 1,
6926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6928         },
6929         {
6930         .description = "tl3_hdr_valid",
6931         .field_bit_size = 1,
6932         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6933         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6934                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6936         },
6937         {
6938         .description = "tl2_two_vtags",
6939         .field_bit_size = 1,
6940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6942         },
6943         {
6944         .description = "tl2_vtag_present",
6945         .field_bit_size = 1,
6946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6947         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6948         },
6949         {
6950         .description = "tl2_uc_mc_bc",
6951         .field_bit_size = 2,
6952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6954         },
6955         {
6956         .description = "tl2_hdr_type",
6957         .field_bit_size = 2,
6958         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6960         },
6961         {
6962         .description = "tl2_hdr_valid",
6963         .field_bit_size = 1,
6964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6965         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6966                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6967         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6968         },
6969         {
6970         .description = "hrec_next",
6971         .field_bit_size = 1,
6972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6974         },
6975         {
6976         .description = "reserved",
6977         .field_bit_size = 9,
6978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6980         },
6981         {
6982         .description = "prof_func_id",
6983         .field_bit_size = 7,
6984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6985         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6986                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6988         .spec_operand = {
6989                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6990                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6991                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6992                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6993         },
6994         {
6995         .description = "agg_error",
6996         .field_bit_size = 1,
6997         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6998         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6999         },
7000         {
7001         .description = "recycle_cnt",
7002         .field_bit_size = 2,
7003         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7004         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7005                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7007         },
7008         {
7009         .description = "pkt_type_0",
7010         .field_bit_size = 2,
7011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7012         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7013         },
7014         {
7015         .description = "pkt_type_1",
7016         .field_bit_size = 2,
7017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7018         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7019                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7021         },
7022         {
7023         .description = "valid",
7024         .field_bit_size = 1,
7025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7026         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7027                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7028         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7029         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7031         },
7032         /* class_tid: 11, stingray, table: ext_em_0 */
7033         {
7034         .description = "spare",
7035         .field_bit_size = 59,
7036         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7037         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7038         },
7039         {
7040         .description = "local_cos",
7041         .field_bit_size = 3,
7042         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7043         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7044         },
7045         {
7046         .description = "l4_dst_port",
7047         .field_bit_size = 16,
7048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7050         .spec_operand = {
7051                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7052                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7055         },
7056         {
7057         .description = "l4_src_port",
7058         .field_bit_size = 16,
7059         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7061         .spec_operand = {
7062                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7063                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7064                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7065                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7066         },
7067         {
7068         .description = "ip_proto",
7069         .field_bit_size = 8,
7070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7071         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7072         .spec_operand = {
7073                 BNXT_ULP_SYM_IP_PROTO_TCP,
7074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7076         },
7077         {
7078         .description = "ipv6_dst_addr",
7079         .field_bit_size = 128,
7080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7082         .spec_operand = {
7083                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7084                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7087         },
7088         {
7089         .description = "ipv6_src_addr",
7090         .field_bit_size = 128,
7091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7093         .spec_operand = {
7094                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7095                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7098         },
7099         {
7100         .description = "l2_src_mac",
7101         .field_bit_size = 48,
7102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7104         },
7105         {
7106         .description = "tun_id",
7107         .field_bit_size = 24,
7108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7110         },
7111         {
7112         .description = "l2_cntxt_id",
7113         .field_bit_size = 10,
7114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7116         .spec_operand = {
7117                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7118                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7120                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7121         },
7122         {
7123         .description = "em_profile_id",
7124         .field_bit_size = 8,
7125         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7126         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7127         .spec_operand = {
7128                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7129                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7130                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7132         },
7133         /* class_tid: 11, stingray, table: int_em_0 */
7134         {
7135         .description = "spare",
7136         .field_bit_size = 3,
7137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7138         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7139         },
7140         {
7141         .description = "local_cos",
7142         .field_bit_size = 3,
7143         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7144         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7145         },
7146         {
7147         .description = "l4_dst_port",
7148         .field_bit_size = 16,
7149         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7150         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7151         .spec_operand = {
7152                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7153                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7154                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7155                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7156         },
7157         {
7158         .description = "l4_src_port",
7159         .field_bit_size = 16,
7160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7161         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7162         .spec_operand = {
7163                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7164                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7167         },
7168         {
7169         .description = "ip_proto",
7170         .field_bit_size = 8,
7171         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7172         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7173         .spec_operand = {
7174                 BNXT_ULP_SYM_IP_PROTO_TCP,
7175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7177         },
7178         {
7179         .description = "ipv6_dst_addr",
7180         .field_bit_size = 128,
7181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7183         .spec_operand = {
7184                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7185                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7187                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7188         },
7189         {
7190         .description = "ipv6_src_addr",
7191         .field_bit_size = 128,
7192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7194         .spec_operand = {
7195                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7196                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7198                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7199         },
7200         {
7201         .description = "l2_src_mac",
7202         .field_bit_size = 48,
7203         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7204         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7205         },
7206         {
7207         .description = "tun_id",
7208         .field_bit_size = 24,
7209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7211         },
7212         {
7213         .description = "l2_cntxt_id",
7214         .field_bit_size = 10,
7215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7217         .spec_operand = {
7218                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7219                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7222         },
7223         {
7224         .description = "em_profile_id",
7225         .field_bit_size = 8,
7226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7227         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7228         .spec_operand = {
7229                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7230                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7233         },
7234         /* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */
7235         {
7236         .description = "l2_ivlan_vid",
7237         .field_bit_size = 12,
7238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7239         .mask_operand = {
7240                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7241                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7242                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7245         .spec_operand = {
7246                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7247                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7250         },
7251         {
7252         .description = "l2_ovlan_vid",
7253         .field_bit_size = 12,
7254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7256         },
7257         {
7258         .description = "mac0_l2_addr",
7259         .field_bit_size = 48,
7260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7261         .mask_operand = {
7262                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7263                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7266         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7267         .spec_operand = {
7268                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7269                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7271                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7272         },
7273         {
7274         .description = "svif",
7275         .field_bit_size = 12,
7276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7277         .mask_operand = {
7278                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7279                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7280                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7283         .spec_operand = {
7284                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7285                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7288         },
7289         {
7290         .description = "tl2_ivlan_vid",
7291         .field_bit_size = 12,
7292         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7294         },
7295         {
7296         .description = "tl2_ovlan_vid",
7297         .field_bit_size = 12,
7298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7300         },
7301         {
7302         .description = "mac1_tl2_addr",
7303         .field_bit_size = 48,
7304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7306         },
7307         {
7308         .description = "l2_num_vtags",
7309         .field_bit_size = 2,
7310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7311         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7312                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
7314         .spec_operand = {
7315                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
7316                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
7317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7319         },
7320         {
7321         .description = "tl2_num_vtags",
7322         .field_bit_size = 2,
7323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7325         },
7326         {
7327         .description = "tun_hdr_type",
7328         .field_bit_size = 4,
7329         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7330         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7331         },
7332         {
7333         .description = "key_type",
7334         .field_bit_size = 2,
7335         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7336         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7337                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7338         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7339         },
7340         {
7341         .description = "sparif",
7342         .field_bit_size = 4,
7343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7345         },
7346         {
7347         .description = "valid",
7348         .field_bit_size = 1,
7349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7350         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7351                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7353         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7355         },
7356         /* class_tid: 12, stingray, table: profile_tcam_cache_0 */
7357         {
7358         .description = "recycle",
7359         .field_bit_size = 1,
7360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7362         },
7363         {
7364         .description = "prof_func_id",
7365         .field_bit_size = 7,
7366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7368         .spec_operand = {
7369                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7370                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7373         },
7374         {
7375         .description = "class_tid",
7376         .field_bit_size = 8,
7377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7379         .spec_operand = {
7380                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
7381                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
7382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7384         },
7385         /* class_tid: 12, stingray, table: profile_tcam_0 */
7386         {
7387         .description = "l4_hdr_is_udp_tcp",
7388         .field_bit_size = 1,
7389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7391         },
7392         {
7393         .description = "l4_hdr_type",
7394         .field_bit_size = 4,
7395         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7396         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7397                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7399         .spec_operand = {
7400                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
7401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7403         },
7404         {
7405         .description = "l4_hdr_error",
7406         .field_bit_size = 1,
7407         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7408         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7409                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7410         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7411         },
7412         {
7413         .description = "l4_hdr_valid",
7414         .field_bit_size = 1,
7415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7416         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7417                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7419         .spec_operand = {
7420                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
7421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7423         },
7424         {
7425         .description = "l3_ipv6_cmp_dst",
7426         .field_bit_size = 1,
7427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7429         },
7430         {
7431         .description = "l3_ipv6_cmp_src",
7432         .field_bit_size = 1,
7433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7435         },
7436         {
7437         .description = "l3_hdr_isIP",
7438         .field_bit_size = 1,
7439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7441         },
7442         {
7443         .description = "l3_hdr_type",
7444         .field_bit_size = 4,
7445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7446         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7447                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7449         },
7450         {
7451         .description = "l3_hdr_error",
7452         .field_bit_size = 1,
7453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7454         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7455                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7456         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7457         },
7458         {
7459         .description = "l3_hdr_valid",
7460         .field_bit_size = 1,
7461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7462         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7463                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7465         .spec_operand = {
7466                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
7467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7469         },
7470         {
7471         .description = "l2_two_vtags",
7472         .field_bit_size = 1,
7473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7475         },
7476         {
7477         .description = "l2_vtag_present",
7478         .field_bit_size = 1,
7479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7480         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7481         },
7482         {
7483         .description = "l2_uc_mc_bc",
7484         .field_bit_size = 2,
7485         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7486         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7487                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7489         },
7490         {
7491         .description = "l2_hdr_type",
7492         .field_bit_size = 2,
7493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7494         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7495                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7497         },
7498         {
7499         .description = "l2_hdr_error",
7500         .field_bit_size = 1,
7501         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7502         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7503                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7505         },
7506         {
7507         .description = "l2_hdr_valid",
7508         .field_bit_size = 1,
7509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7510         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7511                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7513         .spec_operand = {
7514                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
7515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7516                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7517         },
7518         {
7519         .description = "tun_hdr_flags",
7520         .field_bit_size = 3,
7521         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7522         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7523         },
7524         {
7525         .description = "tun_hdr_type",
7526         .field_bit_size = 4,
7527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7529         },
7530         {
7531         .description = "tun_hdr_error",
7532         .field_bit_size = 1,
7533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7534         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7535         },
7536         {
7537         .description = "tun_hdr_valid",
7538         .field_bit_size = 1,
7539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7540         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7541                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7543         },
7544         {
7545         .description = "tl4_hdr_is_udp_tcp",
7546         .field_bit_size = 1,
7547         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7548         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7549         },
7550         {
7551         .description = "tl4_hdr_type",
7552         .field_bit_size = 4,
7553         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7555         },
7556         {
7557         .description = "tl4_hdr_error",
7558         .field_bit_size = 1,
7559         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7560         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7561         },
7562         {
7563         .description = "tl4_hdr_valid",
7564         .field_bit_size = 1,
7565         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7566         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7567                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7569         },
7570         {
7571         .description = "tl3_ipv6_cmp_dst",
7572         .field_bit_size = 1,
7573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7575         },
7576         {
7577         .description = "tl3_ipv6_cmp_src",
7578         .field_bit_size = 1,
7579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7581         },
7582         {
7583         .description = "tl3_hdr_isIP",
7584         .field_bit_size = 1,
7585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7587         },
7588         {
7589         .description = "tl3_hdr_type",
7590         .field_bit_size = 4,
7591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7593         },
7594         {
7595         .description = "tl3_hdr_error",
7596         .field_bit_size = 1,
7597         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7598         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7599         },
7600         {
7601         .description = "tl3_hdr_valid",
7602         .field_bit_size = 1,
7603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7604         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7605                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7606         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7607         },
7608         {
7609         .description = "tl2_two_vtags",
7610         .field_bit_size = 1,
7611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7613         },
7614         {
7615         .description = "tl2_vtag_present",
7616         .field_bit_size = 1,
7617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7619         },
7620         {
7621         .description = "tl2_uc_mc_bc",
7622         .field_bit_size = 2,
7623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7625         },
7626         {
7627         .description = "tl2_hdr_type",
7628         .field_bit_size = 2,
7629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7631         },
7632         {
7633         .description = "tl2_hdr_valid",
7634         .field_bit_size = 1,
7635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7636         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7637                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7639         },
7640         {
7641         .description = "hrec_next",
7642         .field_bit_size = 1,
7643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7644         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7645         },
7646         {
7647         .description = "reserved",
7648         .field_bit_size = 9,
7649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7650         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7651         },
7652         {
7653         .description = "prof_func_id",
7654         .field_bit_size = 7,
7655         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7656         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7657                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7659         .spec_operand = {
7660                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7661                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7664         },
7665         {
7666         .description = "agg_error",
7667         .field_bit_size = 1,
7668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7670         },
7671         {
7672         .description = "recycle_cnt",
7673         .field_bit_size = 2,
7674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7675         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7676                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7678         },
7679         {
7680         .description = "pkt_type_0",
7681         .field_bit_size = 2,
7682         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7683         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7684         },
7685         {
7686         .description = "pkt_type_1",
7687         .field_bit_size = 2,
7688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7689         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7690                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7692         },
7693         {
7694         .description = "valid",
7695         .field_bit_size = 1,
7696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7697         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7698                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7699         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7700         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7702         },
7703         /* class_tid: 12, stingray, table: ext_em_0 */
7704         {
7705         .description = "spare",
7706         .field_bit_size = 251,
7707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7708         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7709         },
7710         {
7711         .description = "local_cos",
7712         .field_bit_size = 3,
7713         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7714         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7715         },
7716         {
7717         .description = "l4_dst_port",
7718         .field_bit_size = 16,
7719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7720         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7721         .spec_operand = {
7722                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7723                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7724                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7726         },
7727         {
7728         .description = "l4_src_port",
7729         .field_bit_size = 16,
7730         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7731         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7732         .spec_operand = {
7733                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7734                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7737         },
7738         {
7739         .description = "ip_proto",
7740         .field_bit_size = 8,
7741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7743         .spec_operand = {
7744                 BNXT_ULP_SYM_IP_PROTO_UDP,
7745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7747         },
7748         {
7749         .description = "ipv4_dst_addr",
7750         .field_bit_size = 32,
7751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7753         .spec_operand = {
7754                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7755                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7757                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7758         },
7759         {
7760         .description = "ipv4_src_addr",
7761         .field_bit_size = 32,
7762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7764         .spec_operand = {
7765                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7766                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7769         },
7770         {
7771         .description = "l2_src_mac",
7772         .field_bit_size = 48,
7773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7775         },
7776         {
7777         .description = "tun_id",
7778         .field_bit_size = 24,
7779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7781         },
7782         {
7783         .description = "l2_cntxt_id",
7784         .field_bit_size = 10,
7785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7787         .spec_operand = {
7788                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7789                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7792         },
7793         {
7794         .description = "em_profile_id",
7795         .field_bit_size = 8,
7796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7798         .spec_operand = {
7799                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7800                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7803         },
7804         /* class_tid: 12, stingray, table: int_em_0 */
7805         {
7806         .description = "spare",
7807         .field_bit_size = 3,
7808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7810         },
7811         {
7812         .description = "local_cos",
7813         .field_bit_size = 3,
7814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7816         },
7817         {
7818         .description = "l4_dst_port",
7819         .field_bit_size = 16,
7820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7822         .spec_operand = {
7823                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7824                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7825                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7826                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7827         },
7828         {
7829         .description = "l4_src_port",
7830         .field_bit_size = 16,
7831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7833         .spec_operand = {
7834                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7835                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7836                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7837                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7838         },
7839         {
7840         .description = "ip_proto",
7841         .field_bit_size = 8,
7842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7843         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7844         .spec_operand = {
7845                 BNXT_ULP_SYM_IP_PROTO_UDP,
7846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7848         },
7849         {
7850         .description = "ipv4_dst_addr",
7851         .field_bit_size = 32,
7852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7854         .spec_operand = {
7855                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7856                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7859         },
7860         {
7861         .description = "ipv4_src_addr",
7862         .field_bit_size = 32,
7863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7865         .spec_operand = {
7866                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7867                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7870         },
7871         {
7872         .description = "l2_src_mac",
7873         .field_bit_size = 48,
7874         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7875         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7876         },
7877         {
7878         .description = "tun_id",
7879         .field_bit_size = 24,
7880         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7881         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7882         },
7883         {
7884         .description = "l2_cntxt_id",
7885         .field_bit_size = 10,
7886         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7887         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7888         .spec_operand = {
7889                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7890                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7892                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7893         },
7894         {
7895         .description = "em_profile_id",
7896         .field_bit_size = 8,
7897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7899         .spec_operand = {
7900                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7901                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7904         },
7905         /* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */
7906         {
7907         .description = "l2_ivlan_vid",
7908         .field_bit_size = 12,
7909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7910         .mask_operand = {
7911                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
7912                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
7913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7916         .spec_operand = {
7917                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
7918                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
7919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7921         },
7922         {
7923         .description = "l2_ovlan_vid",
7924         .field_bit_size = 12,
7925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7927         },
7928         {
7929         .description = "mac0_l2_addr",
7930         .field_bit_size = 48,
7931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7932         .mask_operand = {
7933                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
7934                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
7935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7937         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7938         .spec_operand = {
7939                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
7940                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
7941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7943         },
7944         {
7945         .description = "svif",
7946         .field_bit_size = 12,
7947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7948         .mask_operand = {
7949                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
7950                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
7951                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7952                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7954         .spec_operand = {
7955                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
7956                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
7957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7959         },
7960         {
7961         .description = "tl2_ivlan_vid",
7962         .field_bit_size = 12,
7963         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7964         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7965         },
7966         {
7967         .description = "tl2_ovlan_vid",
7968         .field_bit_size = 12,
7969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7971         },
7972         {
7973         .description = "mac1_tl2_addr",
7974         .field_bit_size = 48,
7975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7977         },
7978         {
7979         .description = "l2_num_vtags",
7980         .field_bit_size = 2,
7981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7982         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7983                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
7985         .spec_operand = {
7986                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
7987                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
7988                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7990         },
7991         {
7992         .description = "tl2_num_vtags",
7993         .field_bit_size = 2,
7994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7996         },
7997         {
7998         .description = "tun_hdr_type",
7999         .field_bit_size = 4,
8000         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8001         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8002         },
8003         {
8004         .description = "key_type",
8005         .field_bit_size = 2,
8006         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8007         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8008                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8010         },
8011         {
8012         .description = "sparif",
8013         .field_bit_size = 4,
8014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8016         },
8017         {
8018         .description = "valid",
8019         .field_bit_size = 1,
8020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8021         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8022                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8023         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8024         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8026         },
8027         /* class_tid: 13, stingray, table: profile_tcam_cache_0 */
8028         {
8029         .description = "recycle",
8030         .field_bit_size = 1,
8031         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8032         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8033         },
8034         {
8035         .description = "prof_func_id",
8036         .field_bit_size = 7,
8037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8038         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8039         .spec_operand = {
8040                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8041                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8044         },
8045         {
8046         .description = "class_tid",
8047         .field_bit_size = 8,
8048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8050         .spec_operand = {
8051                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8052                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8055         },
8056         /* class_tid: 13, stingray, table: profile_tcam_0 */
8057         {
8058         .description = "l4_hdr_is_udp_tcp",
8059         .field_bit_size = 1,
8060         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8061         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8062         },
8063         {
8064         .description = "l4_hdr_type",
8065         .field_bit_size = 4,
8066         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8067         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8068                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8070         },
8071         {
8072         .description = "l4_hdr_error",
8073         .field_bit_size = 1,
8074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8075         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8076                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8078         },
8079         {
8080         .description = "l4_hdr_valid",
8081         .field_bit_size = 1,
8082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8083         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8084                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8086         .spec_operand = {
8087                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8090         },
8091         {
8092         .description = "l3_ipv6_cmp_dst",
8093         .field_bit_size = 1,
8094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8096         },
8097         {
8098         .description = "l3_ipv6_cmp_src",
8099         .field_bit_size = 1,
8100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8102         },
8103         {
8104         .description = "l3_hdr_isIP",
8105         .field_bit_size = 1,
8106         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8107         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8108         },
8109         {
8110         .description = "l3_hdr_type",
8111         .field_bit_size = 4,
8112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8113         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8114                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8116         },
8117         {
8118         .description = "l3_hdr_error",
8119         .field_bit_size = 1,
8120         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8121         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8122                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8124         },
8125         {
8126         .description = "l3_hdr_valid",
8127         .field_bit_size = 1,
8128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8129         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8130                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8132         .spec_operand = {
8133                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8136         },
8137         {
8138         .description = "l2_two_vtags",
8139         .field_bit_size = 1,
8140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8142         },
8143         {
8144         .description = "l2_vtag_present",
8145         .field_bit_size = 1,
8146         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8148         },
8149         {
8150         .description = "l2_uc_mc_bc",
8151         .field_bit_size = 2,
8152         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8153         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8154                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8156         },
8157         {
8158         .description = "l2_hdr_type",
8159         .field_bit_size = 2,
8160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8161         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8162                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8164         },
8165         {
8166         .description = "l2_hdr_error",
8167         .field_bit_size = 1,
8168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8169         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8170                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8172         },
8173         {
8174         .description = "l2_hdr_valid",
8175         .field_bit_size = 1,
8176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8177         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8178                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8180         .spec_operand = {
8181                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8183                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8184         },
8185         {
8186         .description = "tun_hdr_flags",
8187         .field_bit_size = 3,
8188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8189         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8190         },
8191         {
8192         .description = "tun_hdr_type",
8193         .field_bit_size = 4,
8194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8196         },
8197         {
8198         .description = "tun_hdr_error",
8199         .field_bit_size = 1,
8200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8202         },
8203         {
8204         .description = "tun_hdr_valid",
8205         .field_bit_size = 1,
8206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8207         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8208                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8210         },
8211         {
8212         .description = "tl4_hdr_is_udp_tcp",
8213         .field_bit_size = 1,
8214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8216         },
8217         {
8218         .description = "tl4_hdr_type",
8219         .field_bit_size = 4,
8220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8222         },
8223         {
8224         .description = "tl4_hdr_error",
8225         .field_bit_size = 1,
8226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8227         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8228         },
8229         {
8230         .description = "tl4_hdr_valid",
8231         .field_bit_size = 1,
8232         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8233         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8234                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8236         },
8237         {
8238         .description = "tl3_ipv6_cmp_dst",
8239         .field_bit_size = 1,
8240         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8242         },
8243         {
8244         .description = "tl3_ipv6_cmp_src",
8245         .field_bit_size = 1,
8246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8248         },
8249         {
8250         .description = "tl3_hdr_isIP",
8251         .field_bit_size = 1,
8252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8254         },
8255         {
8256         .description = "tl3_hdr_type",
8257         .field_bit_size = 4,
8258         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8259         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8260         },
8261         {
8262         .description = "tl3_hdr_error",
8263         .field_bit_size = 1,
8264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8266         },
8267         {
8268         .description = "tl3_hdr_valid",
8269         .field_bit_size = 1,
8270         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8271         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8272                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8274         },
8275         {
8276         .description = "tl2_two_vtags",
8277         .field_bit_size = 1,
8278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8279         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8280         },
8281         {
8282         .description = "tl2_vtag_present",
8283         .field_bit_size = 1,
8284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8286         },
8287         {
8288         .description = "tl2_uc_mc_bc",
8289         .field_bit_size = 2,
8290         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8291         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8292         },
8293         {
8294         .description = "tl2_hdr_type",
8295         .field_bit_size = 2,
8296         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8297         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8298         },
8299         {
8300         .description = "tl2_hdr_valid",
8301         .field_bit_size = 1,
8302         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8303         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8304                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8305         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8306         },
8307         {
8308         .description = "hrec_next",
8309         .field_bit_size = 1,
8310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8312         },
8313         {
8314         .description = "reserved",
8315         .field_bit_size = 9,
8316         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8317         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8318         },
8319         {
8320         .description = "prof_func_id",
8321         .field_bit_size = 7,
8322         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8323         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8324                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8326         .spec_operand = {
8327                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8328                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8331         },
8332         {
8333         .description = "agg_error",
8334         .field_bit_size = 1,
8335         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8336         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8337         },
8338         {
8339         .description = "recycle_cnt",
8340         .field_bit_size = 2,
8341         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8342         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8343                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8345         },
8346         {
8347         .description = "pkt_type_0",
8348         .field_bit_size = 2,
8349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8350         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8351         },
8352         {
8353         .description = "pkt_type_1",
8354         .field_bit_size = 2,
8355         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8356         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8357                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8359         },
8360         {
8361         .description = "valid",
8362         .field_bit_size = 1,
8363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8364         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8365                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8367         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8368                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8369         },
8370         /* class_tid: 13, stingray, table: ext_em_0 */
8371         {
8372         .description = "spare",
8373         .field_bit_size = 251,
8374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8376         },
8377         {
8378         .description = "local_cos",
8379         .field_bit_size = 3,
8380         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8381         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8382         },
8383         {
8384         .description = "l4_dst_port",
8385         .field_bit_size = 16,
8386         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8387         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8388         .spec_operand = {
8389                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8390                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8393         },
8394         {
8395         .description = "l4_src_port",
8396         .field_bit_size = 16,
8397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8399         .spec_operand = {
8400                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8401                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8403                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8404         },
8405         {
8406         .description = "ip_proto",
8407         .field_bit_size = 8,
8408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8410         .spec_operand = {
8411                 BNXT_ULP_SYM_IP_PROTO_TCP,
8412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8414         },
8415         {
8416         .description = "ipv4_dst_addr",
8417         .field_bit_size = 32,
8418         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8420         .spec_operand = {
8421                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8422                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8425         },
8426         {
8427         .description = "ipv4_src_addr",
8428         .field_bit_size = 32,
8429         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8430         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8431         .spec_operand = {
8432                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8433                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8434                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8436         },
8437         {
8438         .description = "l2_src_mac",
8439         .field_bit_size = 48,
8440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8441         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8442         },
8443         {
8444         .description = "tun_id",
8445         .field_bit_size = 24,
8446         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8447         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8448         },
8449         {
8450         .description = "l2_cntxt_id",
8451         .field_bit_size = 10,
8452         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8453         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8454         .spec_operand = {
8455                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8456                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8458                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8459         },
8460         {
8461         .description = "em_profile_id",
8462         .field_bit_size = 8,
8463         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8465         .spec_operand = {
8466                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8467                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8470         },
8471         /* class_tid: 13, stingray, table: int_em_0 */
8472         {
8473         .description = "spare",
8474         .field_bit_size = 3,
8475         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8476         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8477         },
8478         {
8479         .description = "local_cos",
8480         .field_bit_size = 3,
8481         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8483         },
8484         {
8485         .description = "l4_dst_port",
8486         .field_bit_size = 16,
8487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8489         .spec_operand = {
8490                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8491                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8494         },
8495         {
8496         .description = "l4_src_port",
8497         .field_bit_size = 16,
8498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8499         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8500         .spec_operand = {
8501                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8502                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8505         },
8506         {
8507         .description = "ip_proto",
8508         .field_bit_size = 8,
8509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8510         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8511         .spec_operand = {
8512                 BNXT_ULP_SYM_IP_PROTO_TCP,
8513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8515         },
8516         {
8517         .description = "ipv4_dst_addr",
8518         .field_bit_size = 32,
8519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8521         .spec_operand = {
8522                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8523                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8525                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8526         },
8527         {
8528         .description = "ipv4_src_addr",
8529         .field_bit_size = 32,
8530         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8531         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8532         .spec_operand = {
8533                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8534                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8537         },
8538         {
8539         .description = "l2_src_mac",
8540         .field_bit_size = 48,
8541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8543         },
8544         {
8545         .description = "tun_id",
8546         .field_bit_size = 24,
8547         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8548         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8549         },
8550         {
8551         .description = "l2_cntxt_id",
8552         .field_bit_size = 10,
8553         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8555         .spec_operand = {
8556                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8557                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8559                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8560         },
8561         {
8562         .description = "em_profile_id",
8563         .field_bit_size = 8,
8564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8565         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8566         .spec_operand = {
8567                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8568                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8571         },
8572         /* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */
8573         {
8574         .description = "l2_ivlan_vid",
8575         .field_bit_size = 12,
8576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8577         .mask_operand = {
8578                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8579                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8580                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8583         .spec_operand = {
8584                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8585                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8588         },
8589         {
8590         .description = "l2_ovlan_vid",
8591         .field_bit_size = 12,
8592         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8594         },
8595         {
8596         .description = "mac0_l2_addr",
8597         .field_bit_size = 48,
8598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8599         .mask_operand = {
8600                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8601                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8602                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8603                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8605         .spec_operand = {
8606                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8607                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8609                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8610         },
8611         {
8612         .description = "svif",
8613         .field_bit_size = 12,
8614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8615         .mask_operand = {
8616                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8617                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8620         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8621         .spec_operand = {
8622                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8623                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8626         },
8627         {
8628         .description = "tl2_ivlan_vid",
8629         .field_bit_size = 12,
8630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8632         },
8633         {
8634         .description = "tl2_ovlan_vid",
8635         .field_bit_size = 12,
8636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8637         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8638         },
8639         {
8640         .description = "mac1_tl2_addr",
8641         .field_bit_size = 48,
8642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8644         },
8645         {
8646         .description = "l2_num_vtags",
8647         .field_bit_size = 2,
8648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8649         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8650                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
8652         .spec_operand = {
8653                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8654                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8657         },
8658         {
8659         .description = "tl2_num_vtags",
8660         .field_bit_size = 2,
8661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8663         },
8664         {
8665         .description = "tun_hdr_type",
8666         .field_bit_size = 4,
8667         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8668         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8669         },
8670         {
8671         .description = "key_type",
8672         .field_bit_size = 2,
8673         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8674         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8675                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8677         },
8678         {
8679         .description = "sparif",
8680         .field_bit_size = 4,
8681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8683         },
8684         {
8685         .description = "valid",
8686         .field_bit_size = 1,
8687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8688         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8689                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8691         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8692                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8693         },
8694         /* class_tid: 14, stingray, table: profile_tcam_cache_0 */
8695         {
8696         .description = "recycle",
8697         .field_bit_size = 1,
8698         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8699         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8700         },
8701         {
8702         .description = "prof_func_id",
8703         .field_bit_size = 7,
8704         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8706         .spec_operand = {
8707                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8708                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8711         },
8712         {
8713         .description = "class_tid",
8714         .field_bit_size = 8,
8715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8717         .spec_operand = {
8718                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8719                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8720                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8721                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8722         },
8723         /* class_tid: 14, stingray, table: profile_tcam_0 */
8724         {
8725         .description = "l4_hdr_is_udp_tcp",
8726         .field_bit_size = 1,
8727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8729         },
8730         {
8731         .description = "l4_hdr_type",
8732         .field_bit_size = 4,
8733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8734         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8735                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8737         .spec_operand = {
8738                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
8739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8741         },
8742         {
8743         .description = "l4_hdr_error",
8744         .field_bit_size = 1,
8745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8746         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8747                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8749         },
8750         {
8751         .description = "l4_hdr_valid",
8752         .field_bit_size = 1,
8753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8754         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8755                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8757         .spec_operand = {
8758                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8760                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8761         },
8762         {
8763         .description = "l3_ipv6_cmp_dst",
8764         .field_bit_size = 1,
8765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8767         },
8768         {
8769         .description = "l3_ipv6_cmp_src",
8770         .field_bit_size = 1,
8771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8772         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8773         },
8774         {
8775         .description = "l3_hdr_isIP",
8776         .field_bit_size = 1,
8777         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8778         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8779         },
8780         {
8781         .description = "l3_hdr_type",
8782         .field_bit_size = 4,
8783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8784         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8785                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8787         .spec_operand = {
8788                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
8789                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8791         },
8792         {
8793         .description = "l3_hdr_error",
8794         .field_bit_size = 1,
8795         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8796         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8797                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8799         },
8800         {
8801         .description = "l3_hdr_valid",
8802         .field_bit_size = 1,
8803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8804         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8805                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8807         .spec_operand = {
8808                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8811         },
8812         {
8813         .description = "l2_two_vtags",
8814         .field_bit_size = 1,
8815         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8816         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8817         },
8818         {
8819         .description = "l2_vtag_present",
8820         .field_bit_size = 1,
8821         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8822         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8823         },
8824         {
8825         .description = "l2_uc_mc_bc",
8826         .field_bit_size = 2,
8827         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8828         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8829                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8831         },
8832         {
8833         .description = "l2_hdr_type",
8834         .field_bit_size = 2,
8835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8836         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8837                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8839         },
8840         {
8841         .description = "l2_hdr_error",
8842         .field_bit_size = 1,
8843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8844         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8845                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8847         },
8848         {
8849         .description = "l2_hdr_valid",
8850         .field_bit_size = 1,
8851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8852         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8853                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8855         .spec_operand = {
8856                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8859         },
8860         {
8861         .description = "tun_hdr_flags",
8862         .field_bit_size = 3,
8863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8865         },
8866         {
8867         .description = "tun_hdr_type",
8868         .field_bit_size = 4,
8869         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8871         },
8872         {
8873         .description = "tun_hdr_error",
8874         .field_bit_size = 1,
8875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8877         },
8878         {
8879         .description = "tun_hdr_valid",
8880         .field_bit_size = 1,
8881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8882         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8883                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8885         },
8886         {
8887         .description = "tl4_hdr_is_udp_tcp",
8888         .field_bit_size = 1,
8889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8891         },
8892         {
8893         .description = "tl4_hdr_type",
8894         .field_bit_size = 4,
8895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8897         },
8898         {
8899         .description = "tl4_hdr_error",
8900         .field_bit_size = 1,
8901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8903         },
8904         {
8905         .description = "tl4_hdr_valid",
8906         .field_bit_size = 1,
8907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8908         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8909                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8911         },
8912         {
8913         .description = "tl3_ipv6_cmp_dst",
8914         .field_bit_size = 1,
8915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8917         },
8918         {
8919         .description = "tl3_ipv6_cmp_src",
8920         .field_bit_size = 1,
8921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8923         },
8924         {
8925         .description = "tl3_hdr_isIP",
8926         .field_bit_size = 1,
8927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8929         },
8930         {
8931         .description = "tl3_hdr_type",
8932         .field_bit_size = 4,
8933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8935         },
8936         {
8937         .description = "tl3_hdr_error",
8938         .field_bit_size = 1,
8939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8941         },
8942         {
8943         .description = "tl3_hdr_valid",
8944         .field_bit_size = 1,
8945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8946         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8947                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8949         },
8950         {
8951         .description = "tl2_two_vtags",
8952         .field_bit_size = 1,
8953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8955         },
8956         {
8957         .description = "tl2_vtag_present",
8958         .field_bit_size = 1,
8959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8961         },
8962         {
8963         .description = "tl2_uc_mc_bc",
8964         .field_bit_size = 2,
8965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8966         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8967         },
8968         {
8969         .description = "tl2_hdr_type",
8970         .field_bit_size = 2,
8971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8973         },
8974         {
8975         .description = "tl2_hdr_valid",
8976         .field_bit_size = 1,
8977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8978         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8979                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8981         },
8982         {
8983         .description = "hrec_next",
8984         .field_bit_size = 1,
8985         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8986         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8987         },
8988         {
8989         .description = "reserved",
8990         .field_bit_size = 9,
8991         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8993         },
8994         {
8995         .description = "prof_func_id",
8996         .field_bit_size = 7,
8997         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8998         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8999                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9001         .spec_operand = {
9002                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9003                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9006         },
9007         {
9008         .description = "agg_error",
9009         .field_bit_size = 1,
9010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9012         },
9013         {
9014         .description = "recycle_cnt",
9015         .field_bit_size = 2,
9016         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9017         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9018                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9020         },
9021         {
9022         .description = "pkt_type_0",
9023         .field_bit_size = 2,
9024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9026         },
9027         {
9028         .description = "pkt_type_1",
9029         .field_bit_size = 2,
9030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9031         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9032                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9034         },
9035         {
9036         .description = "valid",
9037         .field_bit_size = 1,
9038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9039         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9040                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9042         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9044         },
9045         /* class_tid: 14, stingray, table: ext_em_0 */
9046         {
9047         .description = "spare",
9048         .field_bit_size = 59,
9049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9050         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9051         },
9052         {
9053         .description = "local_cos",
9054         .field_bit_size = 3,
9055         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9056         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9057         },
9058         {
9059         .description = "l4_dst_port",
9060         .field_bit_size = 16,
9061         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9062         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9063         .spec_operand = {
9064                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9065                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9068         },
9069         {
9070         .description = "l4_src_port",
9071         .field_bit_size = 16,
9072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9074         .spec_operand = {
9075                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9076                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9079         },
9080         {
9081         .description = "ip_proto",
9082         .field_bit_size = 8,
9083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9085         .spec_operand = {
9086                 BNXT_ULP_SYM_IP_PROTO_UDP,
9087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9089         },
9090         {
9091         .description = "ipv6_dst_addr",
9092         .field_bit_size = 128,
9093         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9095         .spec_operand = {
9096                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9097                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9100         },
9101         {
9102         .description = "ipv6_src_addr",
9103         .field_bit_size = 128,
9104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9106         .spec_operand = {
9107                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9108                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9111         },
9112         {
9113         .description = "l2_src_mac",
9114         .field_bit_size = 48,
9115         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9116         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9117         },
9118         {
9119         .description = "tun_id",
9120         .field_bit_size = 24,
9121         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9122         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9123         },
9124         {
9125         .description = "l2_cntxt_id",
9126         .field_bit_size = 10,
9127         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9128         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9129         .spec_operand = {
9130                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9131                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9132                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9134         },
9135         {
9136         .description = "em_profile_id",
9137         .field_bit_size = 8,
9138         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9140         .spec_operand = {
9141                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9142                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9145         },
9146         /* class_tid: 14, stingray, table: int_em_0 */
9147         {
9148         .description = "spare",
9149         .field_bit_size = 3,
9150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9152         },
9153         {
9154         .description = "local_cos",
9155         .field_bit_size = 3,
9156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9158         },
9159         {
9160         .description = "l4_dst_port",
9161         .field_bit_size = 16,
9162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9164         .spec_operand = {
9165                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9166                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9168                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9169         },
9170         {
9171         .description = "l4_src_port",
9172         .field_bit_size = 16,
9173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9174         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9175         .spec_operand = {
9176                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9177                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9180         },
9181         {
9182         .description = "ip_proto",
9183         .field_bit_size = 8,
9184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9186         .spec_operand = {
9187                 BNXT_ULP_SYM_IP_PROTO_UDP,
9188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9190         },
9191         {
9192         .description = "ipv6_dst_addr",
9193         .field_bit_size = 128,
9194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9196         .spec_operand = {
9197                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9198                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9201         },
9202         {
9203         .description = "ipv6_src_addr",
9204         .field_bit_size = 128,
9205         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9206         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9207         .spec_operand = {
9208                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9209                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9210                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9212         },
9213         {
9214         .description = "l2_src_mac",
9215         .field_bit_size = 48,
9216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9218         },
9219         {
9220         .description = "tun_id",
9221         .field_bit_size = 24,
9222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9224         },
9225         {
9226         .description = "l2_cntxt_id",
9227         .field_bit_size = 10,
9228         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9230         .spec_operand = {
9231                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9232                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9235         },
9236         {
9237         .description = "em_profile_id",
9238         .field_bit_size = 8,
9239         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9241         .spec_operand = {
9242                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9243                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9246         },
9247         /* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */
9248         {
9249         .description = "l2_ivlan_vid",
9250         .field_bit_size = 12,
9251         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9252         .mask_operand = {
9253                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9254                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9256                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9258         .spec_operand = {
9259                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9260                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9263         },
9264         {
9265         .description = "l2_ovlan_vid",
9266         .field_bit_size = 12,
9267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9269         },
9270         {
9271         .description = "mac0_l2_addr",
9272         .field_bit_size = 48,
9273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9274         .mask_operand = {
9275                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9276                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9279         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9280         .spec_operand = {
9281                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9282                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9284                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9285         },
9286         {
9287         .description = "svif",
9288         .field_bit_size = 12,
9289         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9290         .mask_operand = {
9291                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9292                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9293                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9294                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9295         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9296         .spec_operand = {
9297                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9298                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9300                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9301         },
9302         {
9303         .description = "tl2_ivlan_vid",
9304         .field_bit_size = 12,
9305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9306         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9307         },
9308         {
9309         .description = "tl2_ovlan_vid",
9310         .field_bit_size = 12,
9311         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9312         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9313         },
9314         {
9315         .description = "mac1_tl2_addr",
9316         .field_bit_size = 48,
9317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9318         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9319         },
9320         {
9321         .description = "l2_num_vtags",
9322         .field_bit_size = 2,
9323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9324         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9325                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
9327         .spec_operand = {
9328                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
9329                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
9330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9332         },
9333         {
9334         .description = "tl2_num_vtags",
9335         .field_bit_size = 2,
9336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9338         },
9339         {
9340         .description = "tun_hdr_type",
9341         .field_bit_size = 4,
9342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9344         },
9345         {
9346         .description = "key_type",
9347         .field_bit_size = 2,
9348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9349         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9350                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9351         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9352         },
9353         {
9354         .description = "sparif",
9355         .field_bit_size = 4,
9356         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9358         },
9359         {
9360         .description = "valid",
9361         .field_bit_size = 1,
9362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9366         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9367                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9368         },
9369         /* class_tid: 15, stingray, table: profile_tcam_cache_0 */
9370         {
9371         .description = "recycle",
9372         .field_bit_size = 1,
9373         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9374         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9375         },
9376         {
9377         .description = "prof_func_id",
9378         .field_bit_size = 7,
9379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9381         .spec_operand = {
9382                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9383                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9384                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9385                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9386         },
9387         {
9388         .description = "class_tid",
9389         .field_bit_size = 8,
9390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9392         .spec_operand = {
9393                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
9394                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
9395                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9396                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9397         },
9398         /* class_tid: 15, stingray, table: profile_tcam_0 */
9399         {
9400         .description = "l4_hdr_is_udp_tcp",
9401         .field_bit_size = 1,
9402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9404         },
9405         {
9406         .description = "l4_hdr_type",
9407         .field_bit_size = 4,
9408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9409         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9410                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9412         },
9413         {
9414         .description = "l4_hdr_error",
9415         .field_bit_size = 1,
9416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9420         },
9421         {
9422         .description = "l4_hdr_valid",
9423         .field_bit_size = 1,
9424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9425         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9426                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9428         .spec_operand = {
9429                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
9430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9432         },
9433         {
9434         .description = "l3_ipv6_cmp_dst",
9435         .field_bit_size = 1,
9436         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9438         },
9439         {
9440         .description = "l3_ipv6_cmp_src",
9441         .field_bit_size = 1,
9442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9444         },
9445         {
9446         .description = "l3_hdr_isIP",
9447         .field_bit_size = 1,
9448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9450         },
9451         {
9452         .description = "l3_hdr_type",
9453         .field_bit_size = 4,
9454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9455         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9456                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9458         .spec_operand = {
9459                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
9460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9461                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9462         },
9463         {
9464         .description = "l3_hdr_error",
9465         .field_bit_size = 1,
9466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9467         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9468                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9469         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9470         },
9471         {
9472         .description = "l3_hdr_valid",
9473         .field_bit_size = 1,
9474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9475         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9476                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9477         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9478         .spec_operand = {
9479                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
9480                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9482         },
9483         {
9484         .description = "l2_two_vtags",
9485         .field_bit_size = 1,
9486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9487         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9488         },
9489         {
9490         .description = "l2_vtag_present",
9491         .field_bit_size = 1,
9492         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9493         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9494         },
9495         {
9496         .description = "l2_uc_mc_bc",
9497         .field_bit_size = 2,
9498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9499         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9500                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9502         },
9503         {
9504         .description = "l2_hdr_type",
9505         .field_bit_size = 2,
9506         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9507         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9508                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9510         },
9511         {
9512         .description = "l2_hdr_error",
9513         .field_bit_size = 1,
9514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9515         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9516                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9518         },
9519         {
9520         .description = "l2_hdr_valid",
9521         .field_bit_size = 1,
9522         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9523         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9524                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9525         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9526         .spec_operand = {
9527                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
9528                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9529                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9530         },
9531         {
9532         .description = "tun_hdr_flags",
9533         .field_bit_size = 3,
9534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9536         },
9537         {
9538         .description = "tun_hdr_type",
9539         .field_bit_size = 4,
9540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9542         },
9543         {
9544         .description = "tun_hdr_error",
9545         .field_bit_size = 1,
9546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9548         },
9549         {
9550         .description = "tun_hdr_valid",
9551         .field_bit_size = 1,
9552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9553         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9554                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9555         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9556         },
9557         {
9558         .description = "tl4_hdr_is_udp_tcp",
9559         .field_bit_size = 1,
9560         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9561         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9562         },
9563         {
9564         .description = "tl4_hdr_type",
9565         .field_bit_size = 4,
9566         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9568         },
9569         {
9570         .description = "tl4_hdr_error",
9571         .field_bit_size = 1,
9572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9574         },
9575         {
9576         .description = "tl4_hdr_valid",
9577         .field_bit_size = 1,
9578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9579         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9580                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9581         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9582         },
9583         {
9584         .description = "tl3_ipv6_cmp_dst",
9585         .field_bit_size = 1,
9586         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9587         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9588         },
9589         {
9590         .description = "tl3_ipv6_cmp_src",
9591         .field_bit_size = 1,
9592         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9594         },
9595         {
9596         .description = "tl3_hdr_isIP",
9597         .field_bit_size = 1,
9598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9600         },
9601         {
9602         .description = "tl3_hdr_type",
9603         .field_bit_size = 4,
9604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9606         },
9607         {
9608         .description = "tl3_hdr_error",
9609         .field_bit_size = 1,
9610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9612         },
9613         {
9614         .description = "tl3_hdr_valid",
9615         .field_bit_size = 1,
9616         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9617         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9618                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9620         },
9621         {
9622         .description = "tl2_two_vtags",
9623         .field_bit_size = 1,
9624         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9625         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9626         },
9627         {
9628         .description = "tl2_vtag_present",
9629         .field_bit_size = 1,
9630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9632         },
9633         {
9634         .description = "tl2_uc_mc_bc",
9635         .field_bit_size = 2,
9636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9637         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9638         },
9639         {
9640         .description = "tl2_hdr_type",
9641         .field_bit_size = 2,
9642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9644         },
9645         {
9646         .description = "tl2_hdr_valid",
9647         .field_bit_size = 1,
9648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9649         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9650                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9652         },
9653         {
9654         .description = "hrec_next",
9655         .field_bit_size = 1,
9656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9658         },
9659         {
9660         .description = "reserved",
9661         .field_bit_size = 9,
9662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9664         },
9665         {
9666         .description = "prof_func_id",
9667         .field_bit_size = 7,
9668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9669         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9670                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9671         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9672         .spec_operand = {
9673                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9674                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9675                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9676                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9677         },
9678         {
9679         .description = "agg_error",
9680         .field_bit_size = 1,
9681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9683         },
9684         {
9685         .description = "recycle_cnt",
9686         .field_bit_size = 2,
9687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9688         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9689                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9691         },
9692         {
9693         .description = "pkt_type_0",
9694         .field_bit_size = 2,
9695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9697         },
9698         {
9699         .description = "pkt_type_1",
9700         .field_bit_size = 2,
9701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9702         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9703                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9705         },
9706         {
9707         .description = "valid",
9708         .field_bit_size = 1,
9709         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9710         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9711                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9713         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9715         },
9716         /* class_tid: 15, stingray, table: ext_em_0 */
9717         {
9718         .description = "spare",
9719         .field_bit_size = 59,
9720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9722         },
9723         {
9724         .description = "local_cos",
9725         .field_bit_size = 3,
9726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9728         },
9729         {
9730         .description = "l4_dst_port",
9731         .field_bit_size = 16,
9732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9734         .spec_operand = {
9735                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9736                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9738                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9739         },
9740         {
9741         .description = "l4_src_port",
9742         .field_bit_size = 16,
9743         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9745         .spec_operand = {
9746                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9747                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9748                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9750         },
9751         {
9752         .description = "ip_proto",
9753         .field_bit_size = 8,
9754         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9755         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9756         .spec_operand = {
9757                 BNXT_ULP_SYM_IP_PROTO_TCP,
9758                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9760         },
9761         {
9762         .description = "ipv6_dst_addr",
9763         .field_bit_size = 128,
9764         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9766         .spec_operand = {
9767                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9768                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9770                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9771         },
9772         {
9773         .description = "ipv6_src_addr",
9774         .field_bit_size = 128,
9775         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9776         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9777         .spec_operand = {
9778                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9779                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9780                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9781                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9782         },
9783         {
9784         .description = "l2_src_mac",
9785         .field_bit_size = 48,
9786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9788         },
9789         {
9790         .description = "tun_id",
9791         .field_bit_size = 24,
9792         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9794         },
9795         {
9796         .description = "l2_cntxt_id",
9797         .field_bit_size = 10,
9798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9800         .spec_operand = {
9801                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9802                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9805         },
9806         {
9807         .description = "em_profile_id",
9808         .field_bit_size = 8,
9809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9811         .spec_operand = {
9812                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9813                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9816         },
9817         /* class_tid: 15, stingray, table: int_em_0 */
9818         {
9819         .description = "spare",
9820         .field_bit_size = 3,
9821         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9822         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9823         },
9824         {
9825         .description = "local_cos",
9826         .field_bit_size = 3,
9827         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9828         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9829         },
9830         {
9831         .description = "l4_dst_port",
9832         .field_bit_size = 16,
9833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9834         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9835         .spec_operand = {
9836                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9837                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9840         },
9841         {
9842         .description = "l4_src_port",
9843         .field_bit_size = 16,
9844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9846         .spec_operand = {
9847                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9848                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9851         },
9852         {
9853         .description = "ip_proto",
9854         .field_bit_size = 8,
9855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9857         .spec_operand = {
9858                 BNXT_ULP_SYM_IP_PROTO_TCP,
9859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9860                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9861         },
9862         {
9863         .description = "ipv6_dst_addr",
9864         .field_bit_size = 128,
9865         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9866         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9867         .spec_operand = {
9868                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9869                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9871                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9872         },
9873         {
9874         .description = "ipv6_src_addr",
9875         .field_bit_size = 128,
9876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9877         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9878         .spec_operand = {
9879                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9880                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9883         },
9884         {
9885         .description = "l2_src_mac",
9886         .field_bit_size = 48,
9887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9888         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9889         },
9890         {
9891         .description = "tun_id",
9892         .field_bit_size = 24,
9893         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9894         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9895         },
9896         {
9897         .description = "l2_cntxt_id",
9898         .field_bit_size = 10,
9899         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9900         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9901         .spec_operand = {
9902                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9903                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9905                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9906         },
9907         {
9908         .description = "em_profile_id",
9909         .field_bit_size = 8,
9910         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9911         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9912         .spec_operand = {
9913                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9914                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9916                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9917         },
9918         /* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */
9919         {
9920         .description = "l2_ivlan_vid",
9921         .field_bit_size = 12,
9922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9924         },
9925         {
9926         .description = "l2_ovlan_vid",
9927         .field_bit_size = 12,
9928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9930         },
9931         {
9932         .description = "mac0_l2_dst",
9933         .field_bit_size = 48,
9934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9935         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9936                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9937         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9938         .spec_operand = {
9939                 (BNXT_ULP_HF16_IDX_O_ETH_DMAC >> 8) & 0xff,
9940                 BNXT_ULP_HF16_IDX_O_ETH_DMAC & 0xff,
9941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9943         },
9944         {
9945         .description = "svif",
9946         .field_bit_size = 12,
9947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9948         .mask_operand = {
9949                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
9950                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
9951                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9952                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9954         .spec_operand = {
9955                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
9956                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
9957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9959         },
9960         {
9961         .description = "tl2_ivlan_vid",
9962         .field_bit_size = 12,
9963         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9964         .mask_operand = {
9965                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
9966                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
9967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9970         .spec_operand = {
9971                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
9972                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
9973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9975         },
9976         {
9977         .description = "tl2_ovlan_vid",
9978         .field_bit_size = 12,
9979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9981         },
9982         {
9983         .description = "mac1_tl2_dst",
9984         .field_bit_size = 48,
9985         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9986         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9987         },
9988         {
9989         .description = "l2_num_vtags",
9990         .field_bit_size = 2,
9991         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9993         },
9994         {
9995         .description = "tl2_num_vtags",
9996         .field_bit_size = 2,
9997         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9998         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9999                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10001         .spec_operand = {
10002                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10003                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10006         },
10007         {
10008         .description = "tun_hdr_type",
10009         .field_bit_size = 4,
10010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10011         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10012                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10014         },
10015         {
10016         .description = "key_type",
10017         .field_bit_size = 2,
10018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10020         },
10021         {
10022         .description = "sparif",
10023         .field_bit_size = 4,
10024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10026         },
10027         {
10028         .description = "valid",
10029         .field_bit_size = 1,
10030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10031         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10032                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10034         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10036         },
10037         /* class_tid: 16, stingray, table: profile_tcam_cache_0 */
10038         {
10039         .description = "recycle",
10040         .field_bit_size = 1,
10041         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10042         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10043         },
10044         {
10045         .description = "prof_func_id",
10046         .field_bit_size = 7,
10047         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10048         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10049         .spec_operand = {
10050                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10051                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10054         },
10055         {
10056         .description = "class_tid",
10057         .field_bit_size = 8,
10058         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10060         .spec_operand = {
10061                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10062                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10064                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10065         },
10066         /* class_tid: 16, stingray, table: profile_tcam_0 */
10067         {
10068         .description = "l4_hdr_is_udp_tcp",
10069         .field_bit_size = 1,
10070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10071         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10072         },
10073         {
10074         .description = "l4_hdr_type",
10075         .field_bit_size = 4,
10076         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10078         },
10079         {
10080         .description = "l4_hdr_error",
10081         .field_bit_size = 1,
10082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10084         },
10085         {
10086         .description = "l4_hdr_valid",
10087         .field_bit_size = 1,
10088         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10089         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10090         },
10091         {
10092         .description = "l3_ipv6_cmp_dst",
10093         .field_bit_size = 1,
10094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10096         },
10097         {
10098         .description = "l3_ipv6_cmp_src",
10099         .field_bit_size = 1,
10100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10102         },
10103         {
10104         .description = "l3_hdr_isIP",
10105         .field_bit_size = 1,
10106         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10107         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10108         },
10109         {
10110         .description = "l3_hdr_type",
10111         .field_bit_size = 4,
10112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10114         },
10115         {
10116         .description = "l3_hdr_error",
10117         .field_bit_size = 1,
10118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10119         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10120         },
10121         {
10122         .description = "l3_hdr_valid",
10123         .field_bit_size = 1,
10124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10126         },
10127         {
10128         .description = "l2_two_vtags",
10129         .field_bit_size = 1,
10130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10132         },
10133         {
10134         .description = "l2_vtag_present",
10135         .field_bit_size = 1,
10136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10138         },
10139         {
10140         .description = "l2_uc_mc_bc",
10141         .field_bit_size = 2,
10142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10144         },
10145         {
10146         .description = "l2_hdr_type",
10147         .field_bit_size = 2,
10148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10150         },
10151         {
10152         .description = "l2_hdr_error",
10153         .field_bit_size = 1,
10154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10156         },
10157         {
10158         .description = "l2_hdr_valid",
10159         .field_bit_size = 1,
10160         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10161         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10162         },
10163         {
10164         .description = "tun_hdr_flags",
10165         .field_bit_size = 3,
10166         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10167         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10168         },
10169         {
10170         .description = "tun_hdr_type",
10171         .field_bit_size = 4,
10172         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10173         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10174                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10175         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10176         },
10177         {
10178         .description = "tun_hdr_error",
10179         .field_bit_size = 1,
10180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10181         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10182                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10184         },
10185         {
10186         .description = "tun_hdr_valid",
10187         .field_bit_size = 1,
10188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10189         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10190                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10191         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10192         .spec_operand = {
10193                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10194                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10196         },
10197         {
10198         .description = "tl4_hdr_is_udp_tcp",
10199         .field_bit_size = 1,
10200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10202         },
10203         {
10204         .description = "tl4_hdr_type",
10205         .field_bit_size = 4,
10206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10207         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10208                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10210         .spec_operand = {
10211                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10214         },
10215         {
10216         .description = "tl4_hdr_error",
10217         .field_bit_size = 1,
10218         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10219         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10220                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10222         },
10223         {
10224         .description = "tl4_hdr_valid",
10225         .field_bit_size = 1,
10226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10227         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10228                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10229         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10230         .spec_operand = {
10231                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10234         },
10235         {
10236         .description = "tl3_ipv6_cmp_dst",
10237         .field_bit_size = 1,
10238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10239         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10240         },
10241         {
10242         .description = "tl3_ipv6_cmp_src",
10243         .field_bit_size = 1,
10244         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10245         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10246         },
10247         {
10248         .description = "tl3_hdr_isIP",
10249         .field_bit_size = 1,
10250         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10251         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10252         },
10253         {
10254         .description = "tl3_hdr_type",
10255         .field_bit_size = 4,
10256         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10257         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10258                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10259         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10260         },
10261         {
10262         .description = "tl3_hdr_error",
10263         .field_bit_size = 1,
10264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10265         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10266                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10268         },
10269         {
10270         .description = "tl3_hdr_valid",
10271         .field_bit_size = 1,
10272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10273         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10274                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10276         .spec_operand = {
10277                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
10278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10280         },
10281         {
10282         .description = "tl2_two_vtags",
10283         .field_bit_size = 1,
10284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10286         },
10287         {
10288         .description = "tl2_vtag_present",
10289         .field_bit_size = 1,
10290         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10291         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10292         },
10293         {
10294         .description = "tl2_uc_mc_bc",
10295         .field_bit_size = 2,
10296         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10297         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10298                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10300         },
10301         {
10302         .description = "tl2_hdr_type",
10303         .field_bit_size = 2,
10304         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10305         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10306                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10308         },
10309         {
10310         .description = "tl2_hdr_valid",
10311         .field_bit_size = 1,
10312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10313         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10314                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10315         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10316         .spec_operand = {
10317                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
10318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10320         },
10321         {
10322         .description = "hrec_next",
10323         .field_bit_size = 1,
10324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10326         },
10327         {
10328         .description = "reserved",
10329         .field_bit_size = 9,
10330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10332         },
10333         {
10334         .description = "prof_func_id",
10335         .field_bit_size = 7,
10336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10337         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10338                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10339         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10340         .spec_operand = {
10341                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10342                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10343                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10344                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10345         },
10346         {
10347         .description = "agg_error",
10348         .field_bit_size = 1,
10349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10350         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10351         },
10352         {
10353         .description = "recycle_cnt",
10354         .field_bit_size = 2,
10355         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10356         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10357                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10359         },
10360         {
10361         .description = "pkt_type_0",
10362         .field_bit_size = 2,
10363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10364         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10365         },
10366         {
10367         .description = "pkt_type_1",
10368         .field_bit_size = 2,
10369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10370         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10371                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10373         },
10374         {
10375         .description = "valid",
10376         .field_bit_size = 1,
10377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10378         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10379                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10381         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10383         },
10384         /* class_tid: 16, stingray, table: ext_em_0 */
10385         {
10386         .description = "spare",
10387         .field_bit_size = 251,
10388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10390         },
10391         {
10392         .description = "local_cos",
10393         .field_bit_size = 3,
10394         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10395         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10396         },
10397         {
10398         .description = "t_l4_dst_port",
10399         .field_bit_size = 16,
10400         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10401         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10402         },
10403         {
10404         .description = "t_l4_src_port",
10405         .field_bit_size = 16,
10406         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10407         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10408         },
10409         {
10410         .description = "t_ip_proto",
10411         .field_bit_size = 8,
10412         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10413         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10414         .spec_operand = {
10415                 BNXT_ULP_SYM_IP_PROTO_UDP,
10416                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10417                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10418         },
10419         {
10420         .description = "t_ipv4_dst_addr",
10421         .field_bit_size = 32,
10422         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10423         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10424         .spec_operand = {
10425                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10426                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10427                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10428                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10429         },
10430         {
10431         .description = "t_ipv4_src_addr",
10432         .field_bit_size = 32,
10433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10435         },
10436         {
10437         .description = "t_l2_src_mac",
10438         .field_bit_size = 48,
10439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10441         },
10442         {
10443         .description = "tun_id",
10444         .field_bit_size = 24,
10445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10446         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10447         },
10448         {
10449         .description = "l2_cntxt_id",
10450         .field_bit_size = 10,
10451         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10452         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10453         .spec_operand = {
10454                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10455                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10458         },
10459         {
10460         .description = "em_profile_id",
10461         .field_bit_size = 8,
10462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10464         .spec_operand = {
10465                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10466                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10469         },
10470         /* class_tid: 16, stingray, table: int_em_0 */
10471         {
10472         .description = "spare",
10473         .field_bit_size = 3,
10474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10475         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10476         },
10477         {
10478         .description = "local_cos",
10479         .field_bit_size = 3,
10480         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10482         },
10483         {
10484         .description = "t_l4_dst_port",
10485         .field_bit_size = 16,
10486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10487         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10488         },
10489         {
10490         .description = "t_l4_src_port",
10491         .field_bit_size = 16,
10492         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10493         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10494         },
10495         {
10496         .description = "t_ip_proto",
10497         .field_bit_size = 8,
10498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10499         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10500         .spec_operand = {
10501                 BNXT_ULP_SYM_IP_PROTO_UDP,
10502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10504         },
10505         {
10506         .description = "t_ipv4_dst_addr",
10507         .field_bit_size = 32,
10508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10510         .spec_operand = {
10511                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10512                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10515         },
10516         {
10517         .description = "t_ipv4_src_addr",
10518         .field_bit_size = 32,
10519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10521         },
10522         {
10523         .description = "t_l2_src_mac",
10524         .field_bit_size = 48,
10525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10526         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10527         },
10528         {
10529         .description = "tun_id",
10530         .field_bit_size = 24,
10531         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10533         },
10534         {
10535         .description = "l2_cntxt_id",
10536         .field_bit_size = 10,
10537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10538         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10539         .spec_operand = {
10540                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10541                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10544         },
10545         {
10546         .description = "em_profile_id",
10547         .field_bit_size = 8,
10548         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10550         .spec_operand = {
10551                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10552                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10553                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10555         },
10556         /* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */
10557         {
10558         .description = "l2_ivlan_vid",
10559         .field_bit_size = 12,
10560         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10561         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10562         },
10563         {
10564         .description = "l2_ovlan_vid",
10565         .field_bit_size = 12,
10566         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10568         },
10569         {
10570         .description = "mac0_l2_dst",
10571         .field_bit_size = 48,
10572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10573         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10574                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10576         .spec_operand = {
10577                 (BNXT_ULP_HF17_IDX_O_ETH_DMAC >> 8) & 0xff,
10578                 BNXT_ULP_HF17_IDX_O_ETH_DMAC & 0xff,
10579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10580                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10581         },
10582         {
10583         .description = "svif",
10584         .field_bit_size = 12,
10585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10586         .mask_operand = {
10587                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10588                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10591         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10592         .spec_operand = {
10593                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10594                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10597         },
10598         {
10599         .description = "tl2_ivlan_vid",
10600         .field_bit_size = 12,
10601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10602         .mask_operand = {
10603                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10604                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10605                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10607         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10608         .spec_operand = {
10609                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10610                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10611                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10613         },
10614         {
10615         .description = "tl2_ovlan_vid",
10616         .field_bit_size = 12,
10617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10619         },
10620         {
10621         .description = "mac1_tl2_dst",
10622         .field_bit_size = 48,
10623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10625         },
10626         {
10627         .description = "l2_num_vtags",
10628         .field_bit_size = 2,
10629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10631         },
10632         {
10633         .description = "tl2_num_vtags",
10634         .field_bit_size = 2,
10635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10636         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10637                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10639         .spec_operand = {
10640                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10641                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10642                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10643                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10644         },
10645         {
10646         .description = "tun_hdr_type",
10647         .field_bit_size = 4,
10648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10649         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10650                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10652         },
10653         {
10654         .description = "key_type",
10655         .field_bit_size = 2,
10656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10658         },
10659         {
10660         .description = "sparif",
10661         .field_bit_size = 4,
10662         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10664         },
10665         {
10666         .description = "valid",
10667         .field_bit_size = 1,
10668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10669         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10670                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10671         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10672         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10674         },
10675         /* class_tid: 17, stingray, table: profile_tcam_cache_0 */
10676         {
10677         .description = "recycle",
10678         .field_bit_size = 1,
10679         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10680         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10681         },
10682         {
10683         .description = "prof_func_id",
10684         .field_bit_size = 7,
10685         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10687         .spec_operand = {
10688                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10689                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10692         },
10693         {
10694         .description = "class_tid",
10695         .field_bit_size = 8,
10696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10698         .spec_operand = {
10699                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10700                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10703         },
10704         /* class_tid: 17, stingray, table: profile_tcam_0 */
10705         {
10706         .description = "l4_hdr_is_udp_tcp",
10707         .field_bit_size = 1,
10708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10710         },
10711         {
10712         .description = "l4_hdr_type",
10713         .field_bit_size = 4,
10714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10716         },
10717         {
10718         .description = "l4_hdr_error",
10719         .field_bit_size = 1,
10720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10722         },
10723         {
10724         .description = "l4_hdr_valid",
10725         .field_bit_size = 1,
10726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10728         },
10729         {
10730         .description = "l3_ipv6_cmp_dst",
10731         .field_bit_size = 1,
10732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10734         },
10735         {
10736         .description = "l3_ipv6_cmp_src",
10737         .field_bit_size = 1,
10738         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10739         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10740         },
10741         {
10742         .description = "l3_hdr_isIP",
10743         .field_bit_size = 1,
10744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10746         },
10747         {
10748         .description = "l3_hdr_type",
10749         .field_bit_size = 4,
10750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10752         },
10753         {
10754         .description = "l3_hdr_error",
10755         .field_bit_size = 1,
10756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10757         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10758         },
10759         {
10760         .description = "l3_hdr_valid",
10761         .field_bit_size = 1,
10762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10764         },
10765         {
10766         .description = "l2_two_vtags",
10767         .field_bit_size = 1,
10768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10769         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10770         },
10771         {
10772         .description = "l2_vtag_present",
10773         .field_bit_size = 1,
10774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10776         },
10777         {
10778         .description = "l2_uc_mc_bc",
10779         .field_bit_size = 2,
10780         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10781         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10782         },
10783         {
10784         .description = "l2_hdr_type",
10785         .field_bit_size = 2,
10786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10788         },
10789         {
10790         .description = "l2_hdr_error",
10791         .field_bit_size = 1,
10792         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10794         },
10795         {
10796         .description = "l2_hdr_valid",
10797         .field_bit_size = 1,
10798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10800         },
10801         {
10802         .description = "tun_hdr_flags",
10803         .field_bit_size = 3,
10804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10806         },
10807         {
10808         .description = "tun_hdr_type",
10809         .field_bit_size = 4,
10810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10811         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10812                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10814         },
10815         {
10816         .description = "tun_hdr_error",
10817         .field_bit_size = 1,
10818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10819         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10820                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10822         },
10823         {
10824         .description = "tun_hdr_valid",
10825         .field_bit_size = 1,
10826         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10827         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10828                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10830         .spec_operand = {
10831                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10834         },
10835         {
10836         .description = "tl4_hdr_is_udp_tcp",
10837         .field_bit_size = 1,
10838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10840         },
10841         {
10842         .description = "tl4_hdr_type",
10843         .field_bit_size = 4,
10844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10845         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10846                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10848         .spec_operand = {
10849                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10852         },
10853         {
10854         .description = "tl4_hdr_error",
10855         .field_bit_size = 1,
10856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10857         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10858                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10860         },
10861         {
10862         .description = "tl4_hdr_valid",
10863         .field_bit_size = 1,
10864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10865         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10866                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10867         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10868         .spec_operand = {
10869                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10871                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10872         },
10873         {
10874         .description = "tl3_ipv6_cmp_dst",
10875         .field_bit_size = 1,
10876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10877         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10878         },
10879         {
10880         .description = "tl3_ipv6_cmp_src",
10881         .field_bit_size = 1,
10882         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10883         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10884         },
10885         {
10886         .description = "tl3_hdr_isIP",
10887         .field_bit_size = 1,
10888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10889         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10890         },
10891         {
10892         .description = "tl3_hdr_type",
10893         .field_bit_size = 4,
10894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10895         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10896                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10898         .spec_operand = {
10899                 BNXT_ULP_SYM_TL3_HDR_TYPE_IPV6,
10900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10902         },
10903         {
10904         .description = "tl3_hdr_error",
10905         .field_bit_size = 1,
10906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10907         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10908                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10910         },
10911         {
10912         .description = "tl3_hdr_valid",
10913         .field_bit_size = 1,
10914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10915         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10916                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10918         .spec_operand = {
10919                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
10920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10922         },
10923         {
10924         .description = "tl2_two_vtags",
10925         .field_bit_size = 1,
10926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10928         },
10929         {
10930         .description = "tl2_vtag_present",
10931         .field_bit_size = 1,
10932         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10933         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10934         },
10935         {
10936         .description = "tl2_uc_mc_bc",
10937         .field_bit_size = 2,
10938         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10939         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10940                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10942         },
10943         {
10944         .description = "tl2_hdr_type",
10945         .field_bit_size = 2,
10946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10947         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10948                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10950         },
10951         {
10952         .description = "tl2_hdr_valid",
10953         .field_bit_size = 1,
10954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10955         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10956                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10957         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10958         .spec_operand = {
10959                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
10960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10961                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10962         },
10963         {
10964         .description = "hrec_next",
10965         .field_bit_size = 1,
10966         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10967         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10968         },
10969         {
10970         .description = "reserved",
10971         .field_bit_size = 9,
10972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10974         },
10975         {
10976         .description = "prof_func_id",
10977         .field_bit_size = 7,
10978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10979         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10980                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10982         .spec_operand = {
10983                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10984                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10986                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10987         },
10988         {
10989         .description = "agg_error",
10990         .field_bit_size = 1,
10991         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10993         },
10994         {
10995         .description = "recycle_cnt",
10996         .field_bit_size = 2,
10997         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10998         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10999                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11001         },
11002         {
11003         .description = "pkt_type_0",
11004         .field_bit_size = 2,
11005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11006         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11007         },
11008         {
11009         .description = "pkt_type_1",
11010         .field_bit_size = 2,
11011         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11012         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11013                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11015         },
11016         {
11017         .description = "valid",
11018         .field_bit_size = 1,
11019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11020         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11021                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11022         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11023         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11025         },
11026         /* class_tid: 17, stingray, table: ext_em_0 */
11027         {
11028         .description = "spare",
11029         .field_bit_size = 59,
11030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11031         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11032         },
11033         {
11034         .description = "local_cos",
11035         .field_bit_size = 3,
11036         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11037         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11038         },
11039         {
11040         .description = "l4_dst_port",
11041         .field_bit_size = 16,
11042         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11043         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11044         },
11045         {
11046         .description = "l4_src_port",
11047         .field_bit_size = 16,
11048         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11049         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11050         },
11051         {
11052         .description = "ip_proto",
11053         .field_bit_size = 8,
11054         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11056         .spec_operand = {
11057                 BNXT_ULP_SYM_IP_PROTO_UDP,
11058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11060         },
11061         {
11062         .description = "ipv6_dst_addr",
11063         .field_bit_size = 128,
11064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11066         .spec_operand = {
11067                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11068                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11070                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11071         },
11072         {
11073         .description = "ipv6_src_addr",
11074         .field_bit_size = 128,
11075         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11076         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11077         },
11078         {
11079         .description = "l2_src_mac",
11080         .field_bit_size = 48,
11081         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11082         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11083         },
11084         {
11085         .description = "tun_id",
11086         .field_bit_size = 24,
11087         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11088         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11089         },
11090         {
11091         .description = "l2_cntxt_id",
11092         .field_bit_size = 10,
11093         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11095         .spec_operand = {
11096                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11097                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11100         },
11101         {
11102         .description = "em_profile_id",
11103         .field_bit_size = 8,
11104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11106         .spec_operand = {
11107                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11108                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11111         },
11112         /* class_tid: 17, stingray, table: int_em_0 */
11113         {
11114         .description = "spare",
11115         .field_bit_size = 3,
11116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11118         },
11119         {
11120         .description = "local_cos",
11121         .field_bit_size = 3,
11122         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11124         },
11125         {
11126         .description = "l4_dst_port",
11127         .field_bit_size = 16,
11128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11129         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11130         },
11131         {
11132         .description = "l4_src_port",
11133         .field_bit_size = 16,
11134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11135         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11136         },
11137         {
11138         .description = "ip_proto",
11139         .field_bit_size = 8,
11140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11142         .spec_operand = {
11143                 BNXT_ULP_SYM_IP_PROTO_UDP,
11144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11146         },
11147         {
11148         .description = "ipv6_dst_addr",
11149         .field_bit_size = 128,
11150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11152         .spec_operand = {
11153                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11154                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11155                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11157         },
11158         {
11159         .description = "ipv6_src_addr",
11160         .field_bit_size = 128,
11161         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11163         },
11164         {
11165         .description = "l2_src_mac",
11166         .field_bit_size = 48,
11167         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11168         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11169         },
11170         {
11171         .description = "tun_id",
11172         .field_bit_size = 24,
11173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11174         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11175         },
11176         {
11177         .description = "l2_cntxt_id",
11178         .field_bit_size = 10,
11179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11181         .spec_operand = {
11182                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11183                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11184                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11186         },
11187         {
11188         .description = "em_profile_id",
11189         .field_bit_size = 8,
11190         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11191         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11192         .spec_operand = {
11193                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11194                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11197         },
11198         /* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */
11199         {
11200         .description = "l2_ivlan_vid",
11201         .field_bit_size = 12,
11202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11204         },
11205         {
11206         .description = "l2_ovlan_vid",
11207         .field_bit_size = 12,
11208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11210         },
11211         {
11212         .description = "mac0_l2_dst",
11213         .field_bit_size = 48,
11214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11215         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11216                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11218         .spec_operand = {
11219                 (BNXT_ULP_HF18_IDX_O_ETH_DMAC >> 8) & 0xff,
11220                 BNXT_ULP_HF18_IDX_O_ETH_DMAC & 0xff,
11221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11223         },
11224         {
11225         .description = "svif",
11226         .field_bit_size = 12,
11227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11228         .mask_operand = {
11229                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11230                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11234         .spec_operand = {
11235                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11236                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11239         },
11240         {
11241         .description = "tl2_ivlan_vid",
11242         .field_bit_size = 12,
11243         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11245         },
11246         {
11247         .description = "tl2_ovlan_vid",
11248         .field_bit_size = 12,
11249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11251         },
11252         {
11253         .description = "mac1_tl2_dst",
11254         .field_bit_size = 48,
11255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11257         },
11258         {
11259         .description = "l2_num_vtags",
11260         .field_bit_size = 2,
11261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11263         },
11264         {
11265         .description = "tl2_num_vtags",
11266         .field_bit_size = 2,
11267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11268         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11269                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11270         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11271         },
11272         {
11273         .description = "tun_hdr_type",
11274         .field_bit_size = 4,
11275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11276         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11277                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11278         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11279         },
11280         {
11281         .description = "key_type",
11282         .field_bit_size = 2,
11283         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11284         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11285         },
11286         {
11287         .description = "sparif",
11288         .field_bit_size = 4,
11289         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11290         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11291         },
11292         {
11293         .description = "valid",
11294         .field_bit_size = 1,
11295         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11296         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11297                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11299         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11300                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11301         },
11302         /* class_tid: 18, stingray, table: profile_tcam_cache_0 */
11303         {
11304         .description = "recycle",
11305         .field_bit_size = 1,
11306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11308         },
11309         {
11310         .description = "prof_func_id",
11311         .field_bit_size = 7,
11312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11314         .spec_operand = {
11315                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11316                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11319         },
11320         {
11321         .description = "class_tid",
11322         .field_bit_size = 8,
11323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11325         },
11326         /* class_tid: 18, stingray, table: profile_tcam_0 */
11327         {
11328         .description = "l4_hdr_is_udp_tcp",
11329         .field_bit_size = 1,
11330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11332         },
11333         {
11334         .description = "l4_hdr_type",
11335         .field_bit_size = 4,
11336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11338         },
11339         {
11340         .description = "l4_hdr_error",
11341         .field_bit_size = 1,
11342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11344         },
11345         {
11346         .description = "l4_hdr_valid",
11347         .field_bit_size = 1,
11348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11350         },
11351         {
11352         .description = "l3_ipv6_cmp_dst",
11353         .field_bit_size = 1,
11354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11356         },
11357         {
11358         .description = "l3_ipv6_cmp_src",
11359         .field_bit_size = 1,
11360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11362         },
11363         {
11364         .description = "l3_hdr_isIP",
11365         .field_bit_size = 1,
11366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11368         },
11369         {
11370         .description = "l3_hdr_type",
11371         .field_bit_size = 4,
11372         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11374         },
11375         {
11376         .description = "l3_hdr_error",
11377         .field_bit_size = 1,
11378         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11379         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11380         },
11381         {
11382         .description = "l3_hdr_valid",
11383         .field_bit_size = 1,
11384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11385         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11386         },
11387         {
11388         .description = "l2_two_vtags",
11389         .field_bit_size = 1,
11390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11392         },
11393         {
11394         .description = "l2_vtag_present",
11395         .field_bit_size = 1,
11396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11398         },
11399         {
11400         .description = "l2_uc_mc_bc",
11401         .field_bit_size = 2,
11402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11404         },
11405         {
11406         .description = "l2_hdr_type",
11407         .field_bit_size = 2,
11408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11410         },
11411         {
11412         .description = "l2_hdr_error",
11413         .field_bit_size = 1,
11414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11416         },
11417         {
11418         .description = "l2_hdr_valid",
11419         .field_bit_size = 1,
11420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11422         },
11423         {
11424         .description = "tun_hdr_flags",
11425         .field_bit_size = 3,
11426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11428         },
11429         {
11430         .description = "tun_hdr_type",
11431         .field_bit_size = 4,
11432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11433         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11434                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11435         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11436         },
11437         {
11438         .description = "tun_hdr_error",
11439         .field_bit_size = 1,
11440         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11441         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11442                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11444         },
11445         {
11446         .description = "tun_hdr_valid",
11447         .field_bit_size = 1,
11448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11449         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11450                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11452         .spec_operand = {
11453                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
11454                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11456         },
11457         {
11458         .description = "tl4_hdr_is_udp_tcp",
11459         .field_bit_size = 1,
11460         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11461         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11462         },
11463         {
11464         .description = "tl4_hdr_type",
11465         .field_bit_size = 4,
11466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11467         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11468                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11469         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11470         .spec_operand = {
11471                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
11472                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11473                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11474         },
11475         {
11476         .description = "tl4_hdr_error",
11477         .field_bit_size = 1,
11478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11479         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11480                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11482         },
11483         {
11484         .description = "tl4_hdr_valid",
11485         .field_bit_size = 1,
11486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11487         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11488                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11489         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11490         .spec_operand = {
11491                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
11492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11494         },
11495         {
11496         .description = "tl3_ipv6_cmp_dst",
11497         .field_bit_size = 1,
11498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11499         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11500         },
11501         {
11502         .description = "tl3_ipv6_cmp_src",
11503         .field_bit_size = 1,
11504         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11505         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11506         },
11507         {
11508         .description = "tl3_hdr_isIP",
11509         .field_bit_size = 1,
11510         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11511         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11512         },
11513         {
11514         .description = "tl3_hdr_type",
11515         .field_bit_size = 4,
11516         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11517         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11518                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11519         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11520         },
11521         {
11522         .description = "tl3_hdr_error",
11523         .field_bit_size = 1,
11524         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11525         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11526                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11528         },
11529         {
11530         .description = "tl3_hdr_valid",
11531         .field_bit_size = 1,
11532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11533         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11534                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11536         .spec_operand = {
11537                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
11538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11540         },
11541         {
11542         .description = "tl2_two_vtags",
11543         .field_bit_size = 1,
11544         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11545         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11546         },
11547         {
11548         .description = "tl2_vtag_present",
11549         .field_bit_size = 1,
11550         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11551         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11552         },
11553         {
11554         .description = "tl2_uc_mc_bc",
11555         .field_bit_size = 2,
11556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11557         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11558                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11560         },
11561         {
11562         .description = "tl2_hdr_type",
11563         .field_bit_size = 2,
11564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11565         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11566                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11568         },
11569         {
11570         .description = "tl2_hdr_valid",
11571         .field_bit_size = 1,
11572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11573         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11574                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11576         .spec_operand = {
11577                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
11578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11580         },
11581         {
11582         .description = "hrec_next",
11583         .field_bit_size = 1,
11584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11585         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11586         },
11587         {
11588         .description = "reserved",
11589         .field_bit_size = 9,
11590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11591         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11592         },
11593         {
11594         .description = "prof_func_id",
11595         .field_bit_size = 7,
11596         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11597         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11598                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11600         .spec_operand = {
11601                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11602                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11603                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11605         },
11606         {
11607         .description = "agg_error",
11608         .field_bit_size = 1,
11609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11611         },
11612         {
11613         .description = "recycle_cnt",
11614         .field_bit_size = 2,
11615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11616         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11617                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11619         },
11620         {
11621         .description = "pkt_type_0",
11622         .field_bit_size = 2,
11623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11625         },
11626         {
11627         .description = "pkt_type_1",
11628         .field_bit_size = 2,
11629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11630         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11631                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11633         },
11634         {
11635         .description = "valid",
11636         .field_bit_size = 1,
11637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11638         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11639                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11641         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11642                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11643         },
11644         /* class_tid: 18, stingray, table: wm_0 */
11645         {
11646         .description = "wc_profile_id",
11647         .field_bit_size = 8,
11648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11649         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11650                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11652         .spec_operand = {
11653                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
11654                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
11655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11657         },
11658         {
11659         .description = "spare",
11660         .field_bit_size = 10,
11661         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11663         },
11664         {
11665         .description = "l2_cntxt_id",
11666         .field_bit_size = 10,
11667         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11668         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11669                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11671         .spec_operand = {
11672                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11673                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11675                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11676         },
11677         {
11678         .description = "tun_type",
11679         .field_bit_size = 4,
11680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11681         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11682                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11683         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11684         },
11685         {
11686         .description = "others",
11687         .field_bit_size = 128,
11688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11690         },
11691         /* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */
11692         {
11693         .description = "l2_ivlan_vid",
11694         .field_bit_size = 12,
11695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11697         },
11698         {
11699         .description = "l2_ovlan_vid",
11700         .field_bit_size = 12,
11701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11703         },
11704         {
11705         .description = "mac0_l2_dst",
11706         .field_bit_size = 48,
11707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11708         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11709                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11710         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11711         .spec_operand = {
11712                 (BNXT_ULP_HF19_IDX_O_ETH_DMAC >> 8) & 0xff,
11713                 BNXT_ULP_HF19_IDX_O_ETH_DMAC & 0xff,
11714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11716         },
11717         {
11718         .description = "svif",
11719         .field_bit_size = 12,
11720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11721         .mask_operand = {
11722                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11723                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11724                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11726         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11727         .spec_operand = {
11728                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11729                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11730                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11731                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11732         },
11733         {
11734         .description = "sparif",
11735         .field_bit_size = 4,
11736         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11737         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11738         },
11739         {
11740         .description = "tl2_ivlan_vid",
11741         .field_bit_size = 12,
11742         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11744         },
11745         {
11746         .description = "tl2_ovlan_vid",
11747         .field_bit_size = 12,
11748         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11749         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11750         },
11751         {
11752         .description = "mac1_tl2_dst",
11753         .field_bit_size = 48,
11754         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11755         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11756         },
11757         {
11758         .description = "l2_num_vtags",
11759         .field_bit_size = 2,
11760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11761         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11762         },
11763         {
11764         .description = "tl2_num_vtags",
11765         .field_bit_size = 2,
11766         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11767         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11768                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11769         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11770         },
11771         {
11772         .description = "tun_hdr_type",
11773         .field_bit_size = 4,
11774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11775         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11776                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11777         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11778         },
11779         {
11780         .description = "key_type",
11781         .field_bit_size = 2,
11782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11784         },
11785         {
11786         .description = "valid",
11787         .field_bit_size = 1,
11788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11789         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11790                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11792         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11794         },
11795         /* class_tid: 19, stingray, table: profile_tcam_cache_0 */
11796         {
11797         .description = "recycle",
11798         .field_bit_size = 1,
11799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11800         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11801         },
11802         {
11803         .description = "prof_func_id",
11804         .field_bit_size = 7,
11805         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11807         .spec_operand = {
11808                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11809                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11811                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11812         },
11813         {
11814         .description = "class_tid",
11815         .field_bit_size = 8,
11816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11818         },
11819         /* class_tid: 19, stingray, table: profile_tcam_0 */
11820         {
11821         .description = "l4_hdr_is_udp_tcp",
11822         .field_bit_size = 1,
11823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11825         },
11826         {
11827         .description = "l4_hdr_type",
11828         .field_bit_size = 4,
11829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11831         },
11832         {
11833         .description = "l4_hdr_error",
11834         .field_bit_size = 1,
11835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11836         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11837         },
11838         {
11839         .description = "l4_hdr_valid",
11840         .field_bit_size = 1,
11841         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11842         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11843         },
11844         {
11845         .description = "l3_ipv6_cmp_dst",
11846         .field_bit_size = 1,
11847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11849         },
11850         {
11851         .description = "l3_ipv6_cmp_src",
11852         .field_bit_size = 1,
11853         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11855         },
11856         {
11857         .description = "l3_hdr_isIP",
11858         .field_bit_size = 1,
11859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11861         },
11862         {
11863         .description = "l3_hdr_type",
11864         .field_bit_size = 4,
11865         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11866         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11867         },
11868         {
11869         .description = "l3_hdr_error",
11870         .field_bit_size = 1,
11871         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11873         },
11874         {
11875         .description = "l3_hdr_valid",
11876         .field_bit_size = 1,
11877         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11879         },
11880         {
11881         .description = "l2_two_vtags",
11882         .field_bit_size = 1,
11883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11885         },
11886         {
11887         .description = "l2_vtag_present",
11888         .field_bit_size = 1,
11889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11891         },
11892         {
11893         .description = "l2_uc_mc_bc",
11894         .field_bit_size = 2,
11895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11897         },
11898         {
11899         .description = "l2_hdr_type",
11900         .field_bit_size = 2,
11901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11903         },
11904         {
11905         .description = "l2_hdr_error",
11906         .field_bit_size = 1,
11907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11909         },
11910         {
11911         .description = "l2_hdr_valid",
11912         .field_bit_size = 1,
11913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11915         },
11916         {
11917         .description = "tun_hdr_flags",
11918         .field_bit_size = 3,
11919         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11920         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11921         },
11922         {
11923         .description = "tun_hdr_type",
11924         .field_bit_size = 4,
11925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11926         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11927                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11929         },
11930         {
11931         .description = "tun_hdr_error",
11932         .field_bit_size = 1,
11933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11934         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11935                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11937         },
11938         {
11939         .description = "tun_hdr_valid",
11940         .field_bit_size = 1,
11941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11942         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11943                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11945         .spec_operand = {
11946                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
11947                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11948                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11949         },
11950         {
11951         .description = "tl4_hdr_is_udp_tcp",
11952         .field_bit_size = 1,
11953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11955         },
11956         {
11957         .description = "tl4_hdr_type",
11958         .field_bit_size = 4,
11959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11960         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11961                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11962         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11963         .spec_operand = {
11964                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
11965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11967         },
11968         {
11969         .description = "tl4_hdr_error",
11970         .field_bit_size = 1,
11971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11972         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11973                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11974         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11975         },
11976         {
11977         .description = "tl4_hdr_valid",
11978         .field_bit_size = 1,
11979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11980         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11981                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11983         .spec_operand = {
11984                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
11985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11986                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11987         },
11988         {
11989         .description = "tl3_ipv6_cmp_dst",
11990         .field_bit_size = 1,
11991         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11992         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11993         },
11994         {
11995         .description = "tl3_ipv6_cmp_src",
11996         .field_bit_size = 1,
11997         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11998         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11999         },
12000         {
12001         .description = "tl3_hdr_isIP",
12002         .field_bit_size = 1,
12003         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12004         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12005         },
12006         {
12007         .description = "tl3_hdr_type",
12008         .field_bit_size = 4,
12009         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12010         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12011                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12012         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12013         },
12014         {
12015         .description = "tl3_hdr_error",
12016         .field_bit_size = 1,
12017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12018         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12019                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12021         },
12022         {
12023         .description = "tl3_hdr_valid",
12024         .field_bit_size = 1,
12025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12026         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12027                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12028         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12029         .spec_operand = {
12030                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
12031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12033         },
12034         {
12035         .description = "tl2_two_vtags",
12036         .field_bit_size = 1,
12037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12038         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12039         },
12040         {
12041         .description = "tl2_vtag_present",
12042         .field_bit_size = 1,
12043         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12044         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12045         },
12046         {
12047         .description = "tl2_uc_mc_bc",
12048         .field_bit_size = 2,
12049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12050         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12051                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12053         },
12054         {
12055         .description = "tl2_hdr_type",
12056         .field_bit_size = 2,
12057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12058         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12059                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12061         },
12062         {
12063         .description = "tl2_hdr_valid",
12064         .field_bit_size = 1,
12065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12066         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12067                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12069         .spec_operand = {
12070                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
12071                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12073         },
12074         {
12075         .description = "hrec_next",
12076         .field_bit_size = 1,
12077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12079         },
12080         {
12081         .description = "reserved",
12082         .field_bit_size = 9,
12083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12085         },
12086         {
12087         .description = "prof_func_id",
12088         .field_bit_size = 7,
12089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12090         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12091                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12092         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12093         .spec_operand = {
12094                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
12095                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
12096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12098         },
12099         {
12100         .description = "agg_error",
12101         .field_bit_size = 1,
12102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12104         },
12105         {
12106         .description = "recycle_cnt",
12107         .field_bit_size = 2,
12108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12109         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12110                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12111         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12112         },
12113         {
12114         .description = "pkt_type_0",
12115         .field_bit_size = 2,
12116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12118         },
12119         {
12120         .description = "pkt_type_1",
12121         .field_bit_size = 2,
12122         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12123         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12124                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12126         },
12127         {
12128         .description = "valid",
12129         .field_bit_size = 1,
12130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12131         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12132                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12133         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12134         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12136         },
12137         /* class_tid: 19, stingray, table: int_em_0 */
12138         {
12139         .description = "spare",
12140         .field_bit_size = 3,
12141         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12142         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12143         },
12144         {
12145         .description = "l2_inner_vid",
12146         .field_bit_size = 12,
12147         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12149         },
12150         {
12151         .description = "l2_dst_mac",
12152         .field_bit_size = 48,
12153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12155         .spec_operand = {
12156                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12157                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12158                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12160         },
12161         {
12162         .description = "tun_id",
12163         .field_bit_size = 24,
12164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12166         .spec_operand = {
12167                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12168                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12170                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12171         },
12172         {
12173         .description = "tun_flags",
12174         .field_bit_size = 3,
12175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12177         },
12178         {
12179         .description = "tun_type",
12180         .field_bit_size = 4,
12181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12183         },
12184         {
12185         .description = "l2_cntxt_id",
12186         .field_bit_size = 10,
12187         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12189         .spec_operand = {
12190                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12191                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12193                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12194         },
12195         {
12196         .description = "em_profile_id",
12197         .field_bit_size = 8,
12198         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12199         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12200         .spec_operand = {
12201                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12202                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12205         },
12206         /* class_tid: 19, stingray, table: ext_em_0 */
12207         {
12208         .description = "spare",
12209         .field_bit_size = 339,
12210         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12211         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12212         },
12213         {
12214         .description = "l2_inner_vid",
12215         .field_bit_size = 12,
12216         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12218         },
12219         {
12220         .description = "l2_dst_mac",
12221         .field_bit_size = 48,
12222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12224         .spec_operand = {
12225                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12226                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12229         },
12230         {
12231         .description = "tun_id",
12232         .field_bit_size = 24,
12233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12235         .spec_operand = {
12236                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12237                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12240         },
12241         {
12242         .description = "tun_flags",
12243         .field_bit_size = 3,
12244         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12245         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12246         },
12247         {
12248         .description = "tun_type",
12249         .field_bit_size = 4,
12250         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12251         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12252         },
12253         {
12254         .description = "l2_cntxt_id",
12255         .field_bit_size = 10,
12256         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12258         .spec_operand = {
12259                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12260                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12263         },
12264         {
12265         .description = "em_profile_id",
12266         .field_bit_size = 8,
12267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12269         .spec_operand = {
12270                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12271                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12274         },
12275         /* class_tid: 20, stingray, table: l2_cntxt_cache_0 */
12276         {
12277         .description = "svif",
12278         .field_bit_size = 12,
12279         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12280         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12281         .spec_operand = {
12282                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12283                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12284                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12286         },
12287         /* class_tid: 20, stingray, table: l2_cntxt_tcam_0 */
12288         {
12289         .description = "l2_ivlan_vid",
12290         .field_bit_size = 12,
12291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12293         },
12294         {
12295         .description = "l2_ovlan_vid",
12296         .field_bit_size = 12,
12297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12299         },
12300         {
12301         .description = "mac0_l2_dst",
12302         .field_bit_size = 48,
12303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12305         },
12306         {
12307         .description = "svif",
12308         .field_bit_size = 12,
12309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12310         .mask_operand = {
12311                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12312                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12313                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12314                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
12315         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12316         .spec_operand = {
12317                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12318                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12320                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12321         },
12322         {
12323         .description = "tl2_ivlan_vid",
12324         .field_bit_size = 12,
12325         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12327         },
12328         {
12329         .description = "tl2_ovlan_vid",
12330         .field_bit_size = 12,
12331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12333         },
12334         {
12335         .description = "mac1_tl2_dst",
12336         .field_bit_size = 48,
12337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12338         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12339         },
12340         {
12341         .description = "l2_num_vtags",
12342         .field_bit_size = 2,
12343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12345         },
12346         {
12347         .description = "tl2_num_vtags",
12348         .field_bit_size = 2,
12349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12350         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12351         },
12352         {
12353         .description = "tun_hdr_type",
12354         .field_bit_size = 4,
12355         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12356         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12357                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12359         .spec_operand = {
12360                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
12361                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12363         },
12364         {
12365         .description = "key_type",
12366         .field_bit_size = 2,
12367         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12368         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12369         },
12370         {
12371         .description = "sparif",
12372         .field_bit_size = 4,
12373         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12374         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12375         },
12376         {
12377         .description = "valid",
12378         .field_bit_size = 1,
12379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12380         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12381                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12383         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12384                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12385         },
12386         /* class_tid: 20, stingray, table: profile_tcam_cache_0 */
12387         {
12388         .description = "recycle",
12389         .field_bit_size = 1,
12390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12392         },
12393         {
12394         .description = "prof_func_id",
12395         .field_bit_size = 7,
12396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12398         .spec_operand = {
12399                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12400                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12403         },
12404         {
12405         .description = "class_tid",
12406         .field_bit_size = 8,
12407         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12408         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12409         .spec_operand = {
12410                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
12411                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
12412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12414         },
12415         /* class_tid: 20, stingray, table: profile_tcam_0 */
12416         {
12417         .description = "l4_hdr_is_udp_tcp",
12418         .field_bit_size = 1,
12419         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12420         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12421         },
12422         {
12423         .description = "l4_hdr_type",
12424         .field_bit_size = 4,
12425         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12426         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12427                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12429         .spec_operand = {
12430                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
12431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12432                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12433         },
12434         {
12435         .description = "l4_hdr_error",
12436         .field_bit_size = 1,
12437         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12438         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12439                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12441         },
12442         {
12443         .description = "l4_hdr_valid",
12444         .field_bit_size = 1,
12445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12446         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12447                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12449         .spec_operand = {
12450                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
12451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12452                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12453         },
12454         {
12455         .description = "l3_ipv6_cmp_dst",
12456         .field_bit_size = 1,
12457         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12458         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12459         },
12460         {
12461         .description = "l3_ipv6_cmp_src",
12462         .field_bit_size = 1,
12463         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12465         },
12466         {
12467         .description = "l3_hdr_isIP",
12468         .field_bit_size = 1,
12469         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12470         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12471         },
12472         {
12473         .description = "l3_hdr_type",
12474         .field_bit_size = 4,
12475         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12476         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12477                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12478         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12479         },
12480         {
12481         .description = "l3_hdr_error",
12482         .field_bit_size = 1,
12483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12484         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12485                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12486         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12487         },
12488         {
12489         .description = "l3_hdr_valid",
12490         .field_bit_size = 1,
12491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12492         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12493                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12495         .spec_operand = {
12496                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
12497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12498                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12499         },
12500         {
12501         .description = "l2_two_vtags",
12502         .field_bit_size = 1,
12503         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12505         },
12506         {
12507         .description = "l2_vtag_present",
12508         .field_bit_size = 1,
12509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12510         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12511         },
12512         {
12513         .description = "l2_uc_mc_bc",
12514         .field_bit_size = 2,
12515         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12516         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12517         },
12518         {
12519         .description = "l2_hdr_type",
12520         .field_bit_size = 2,
12521         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12522         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12523                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12524         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12525         },
12526         {
12527         .description = "l2_hdr_error",
12528         .field_bit_size = 1,
12529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12530         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12531                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12532         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12533         },
12534         {
12535         .description = "l2_hdr_valid",
12536         .field_bit_size = 1,
12537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12538         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12539                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12541         .spec_operand = {
12542                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
12543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12545         },
12546         {
12547         .description = "tun_hdr_flags",
12548         .field_bit_size = 3,
12549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12551         },
12552         {
12553         .description = "tun_hdr_type",
12554         .field_bit_size = 4,
12555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12557         },
12558         {
12559         .description = "tun_hdr_error",
12560         .field_bit_size = 1,
12561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12563         },
12564         {
12565         .description = "tun_hdr_valid",
12566         .field_bit_size = 1,
12567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12569         },
12570         {
12571         .description = "tl4_hdr_is_udp_tcp",
12572         .field_bit_size = 1,
12573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12575         },
12576         {
12577         .description = "tl4_hdr_type",
12578         .field_bit_size = 4,
12579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12581         },
12582         {
12583         .description = "tl4_hdr_error",
12584         .field_bit_size = 1,
12585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12587         },
12588         {
12589         .description = "tl4_hdr_valid",
12590         .field_bit_size = 1,
12591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12593         },
12594         {
12595         .description = "tl3_ipv6_cmp_dst",
12596         .field_bit_size = 1,
12597         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12598         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12599         },
12600         {
12601         .description = "tl3_ipv6_cmp_src",
12602         .field_bit_size = 1,
12603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12605         },
12606         {
12607         .description = "tl3_hdr_isIP",
12608         .field_bit_size = 1,
12609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12611         },
12612         {
12613         .description = "tl3_hdr_type",
12614         .field_bit_size = 4,
12615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12616         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12617         },
12618         {
12619         .description = "tl3_hdr_error",
12620         .field_bit_size = 1,
12621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12623         },
12624         {
12625         .description = "tl3_hdr_valid",
12626         .field_bit_size = 1,
12627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12629         },
12630         {
12631         .description = "tl2_two_vtags",
12632         .field_bit_size = 1,
12633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12635         },
12636         {
12637         .description = "tl2_vtag_present",
12638         .field_bit_size = 1,
12639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12641         },
12642         {
12643         .description = "tl2_uc_mc_bc",
12644         .field_bit_size = 2,
12645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12647         },
12648         {
12649         .description = "tl2_hdr_type",
12650         .field_bit_size = 2,
12651         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12653         },
12654         {
12655         .description = "tl2_hdr_valid",
12656         .field_bit_size = 1,
12657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12659         },
12660         {
12661         .description = "hrec_next",
12662         .field_bit_size = 1,
12663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12665         },
12666         {
12667         .description = "reserved",
12668         .field_bit_size = 9,
12669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12671         },
12672         {
12673         .description = "prof_func_id",
12674         .field_bit_size = 7,
12675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12676         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12677                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12679         .spec_operand = {
12680                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12681                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12684         },
12685         {
12686         .description = "agg_error",
12687         .field_bit_size = 1,
12688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12690         },
12691         {
12692         .description = "recycle_cnt",
12693         .field_bit_size = 2,
12694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12695         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12696                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12698         },
12699         {
12700         .description = "pkt_type_0",
12701         .field_bit_size = 2,
12702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12703         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12704         },
12705         {
12706         .description = "pkt_type_1",
12707         .field_bit_size = 2,
12708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12709         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12710                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12712         },
12713         {
12714         .description = "valid",
12715         .field_bit_size = 1,
12716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12717         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12718                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12719         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12720         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12721                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12722         },
12723         /* class_tid: 20, stingray, table: ext_em_0 */
12724         {
12725         .description = "spare",
12726         .field_bit_size = 251,
12727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12729         },
12730         {
12731         .description = "local_cos",
12732         .field_bit_size = 3,
12733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12735         },
12736         {
12737         .description = "l4_dst_port",
12738         .field_bit_size = 16,
12739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12741         .spec_operand = {
12742                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12743                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12744                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12746         },
12747         {
12748         .description = "l4_src_port",
12749         .field_bit_size = 16,
12750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12752         .spec_operand = {
12753                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12754                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12757         },
12758         {
12759         .description = "ip_proto",
12760         .field_bit_size = 8,
12761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12763         .spec_operand = {
12764                 BNXT_ULP_SYM_IP_PROTO_UDP,
12765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12767         },
12768         {
12769         .description = "ipv4_dst_addr",
12770         .field_bit_size = 32,
12771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12772         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12773         .spec_operand = {
12774                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12775                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12777                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12778         },
12779         {
12780         .description = "ipv4_src_addr",
12781         .field_bit_size = 32,
12782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12784         .spec_operand = {
12785                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12786                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12787                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12789         },
12790         {
12791         .description = "l2_src_mac",
12792         .field_bit_size = 48,
12793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12795         },
12796         {
12797         .description = "tun_id",
12798         .field_bit_size = 24,
12799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12800         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12801         },
12802         {
12803         .description = "l2_cntxt_id",
12804         .field_bit_size = 10,
12805         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12806         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12807         .spec_operand = {
12808                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12809                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12810                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12811                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12812         },
12813         {
12814         .description = "em_profile_id",
12815         .field_bit_size = 8,
12816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12818         .spec_operand = {
12819                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12820                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12821                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12822                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12823         },
12824         /* class_tid: 20, stingray, table: int_em_0 */
12825         {
12826         .description = "spare",
12827         .field_bit_size = 3,
12828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12830         },
12831         {
12832         .description = "local_cos",
12833         .field_bit_size = 3,
12834         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12835         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12836         },
12837         {
12838         .description = "l4_dst_port",
12839         .field_bit_size = 16,
12840         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12842         .spec_operand = {
12843                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12844                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12847         },
12848         {
12849         .description = "l4_src_port",
12850         .field_bit_size = 16,
12851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12853         .spec_operand = {
12854                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12855                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12858         },
12859         {
12860         .description = "ip_proto",
12861         .field_bit_size = 8,
12862         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12863         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12864         .spec_operand = {
12865                 BNXT_ULP_SYM_IP_PROTO_UDP,
12866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12867                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12868         },
12869         {
12870         .description = "ipv4_dst_addr",
12871         .field_bit_size = 32,
12872         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12873         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12874         .spec_operand = {
12875                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12876                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12879         },
12880         {
12881         .description = "ipv4_src_addr",
12882         .field_bit_size = 32,
12883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12885         .spec_operand = {
12886                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12887                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12888                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12890         },
12891         {
12892         .description = "l2_src_mac",
12893         .field_bit_size = 48,
12894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12896         },
12897         {
12898         .description = "tun_id",
12899         .field_bit_size = 24,
12900         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12901         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12902         },
12903         {
12904         .description = "l2_cntxt_id",
12905         .field_bit_size = 10,
12906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12907         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12908         .spec_operand = {
12909                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12910                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12913         },
12914         {
12915         .description = "em_profile_id",
12916         .field_bit_size = 8,
12917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12919         .spec_operand = {
12920                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12921                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12924         },
12925         /* class_tid: 21, stingray, table: l2_cntxt_cache_0 */
12926         {
12927         .description = "svif",
12928         .field_bit_size = 12,
12929         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12930         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12931         .spec_operand = {
12932                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12933                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12934                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12936         },
12937         /* class_tid: 21, stingray, table: l2_cntxt_tcam_0 */
12938         {
12939         .description = "l2_ivlan_vid",
12940         .field_bit_size = 12,
12941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12943         },
12944         {
12945         .description = "l2_ovlan_vid",
12946         .field_bit_size = 12,
12947         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12949         },
12950         {
12951         .description = "mac0_l2_dst",
12952         .field_bit_size = 48,
12953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12955         },
12956         {
12957         .description = "svif",
12958         .field_bit_size = 12,
12959         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12960         .mask_operand = {
12961                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12962                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12964                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
12965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12966         .spec_operand = {
12967                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
12968                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
12969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12971         },
12972         {
12973         .description = "tl2_ivlan_vid",
12974         .field_bit_size = 12,
12975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12977         },
12978         {
12979         .description = "tl2_ovlan_vid",
12980         .field_bit_size = 12,
12981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12983         },
12984         {
12985         .description = "mac1_tl2_dst",
12986         .field_bit_size = 48,
12987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12989         },
12990         {
12991         .description = "l2_num_vtags",
12992         .field_bit_size = 2,
12993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12995         },
12996         {
12997         .description = "tl2_num_vtags",
12998         .field_bit_size = 2,
12999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13001         },
13002         {
13003         .description = "tun_hdr_type",
13004         .field_bit_size = 4,
13005         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13006         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13007                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13009         .spec_operand = {
13010                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13013         },
13014         {
13015         .description = "key_type",
13016         .field_bit_size = 2,
13017         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13018         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13019         },
13020         {
13021         .description = "sparif",
13022         .field_bit_size = 4,
13023         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13024         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13025         },
13026         {
13027         .description = "valid",
13028         .field_bit_size = 1,
13029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13030         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13031                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13032         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13033         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13035         },
13036         /* class_tid: 21, stingray, table: profile_tcam_cache_0 */
13037         {
13038         .description = "recycle",
13039         .field_bit_size = 1,
13040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13042         },
13043         {
13044         .description = "prof_func_id",
13045         .field_bit_size = 7,
13046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13048         .spec_operand = {
13049                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13050                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13053         },
13054         {
13055         .description = "class_tid",
13056         .field_bit_size = 8,
13057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13059         .spec_operand = {
13060                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13061                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13064         },
13065         /* class_tid: 21, stingray, table: profile_tcam_0 */
13066         {
13067         .description = "l4_hdr_is_udp_tcp",
13068         .field_bit_size = 1,
13069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13071         },
13072         {
13073         .description = "l4_hdr_type",
13074         .field_bit_size = 4,
13075         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13076         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13077                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13079         },
13080         {
13081         .description = "l4_hdr_error",
13082         .field_bit_size = 1,
13083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13084         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13085                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13086         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13087         },
13088         {
13089         .description = "l4_hdr_valid",
13090         .field_bit_size = 1,
13091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13092         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13093                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13095         .spec_operand = {
13096                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13099         },
13100         {
13101         .description = "l3_ipv6_cmp_dst",
13102         .field_bit_size = 1,
13103         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13104         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13105         },
13106         {
13107         .description = "l3_ipv6_cmp_src",
13108         .field_bit_size = 1,
13109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13110         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13111         },
13112         {
13113         .description = "l3_hdr_isIP",
13114         .field_bit_size = 1,
13115         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13116         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13117         },
13118         {
13119         .description = "l3_hdr_type",
13120         .field_bit_size = 4,
13121         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13122         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13123                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13124         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13125         },
13126         {
13127         .description = "l3_hdr_error",
13128         .field_bit_size = 1,
13129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13130         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13131                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13133         },
13134         {
13135         .description = "l3_hdr_valid",
13136         .field_bit_size = 1,
13137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13138         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13139                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13140         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13141         .spec_operand = {
13142                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13145         },
13146         {
13147         .description = "l2_two_vtags",
13148         .field_bit_size = 1,
13149         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13150         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13151         },
13152         {
13153         .description = "l2_vtag_present",
13154         .field_bit_size = 1,
13155         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13156         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13157         },
13158         {
13159         .description = "l2_uc_mc_bc",
13160         .field_bit_size = 2,
13161         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13163         },
13164         {
13165         .description = "l2_hdr_type",
13166         .field_bit_size = 2,
13167         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13168         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13169                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13171         },
13172         {
13173         .description = "l2_hdr_error",
13174         .field_bit_size = 1,
13175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13176         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13177                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13178         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13179         },
13180         {
13181         .description = "l2_hdr_valid",
13182         .field_bit_size = 1,
13183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13184         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13185                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13186         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13187         .spec_operand = {
13188                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
13189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13191         },
13192         {
13193         .description = "tun_hdr_flags",
13194         .field_bit_size = 3,
13195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13196         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13197         },
13198         {
13199         .description = "tun_hdr_type",
13200         .field_bit_size = 4,
13201         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13202         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13203         },
13204         {
13205         .description = "tun_hdr_error",
13206         .field_bit_size = 1,
13207         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13208         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13209         },
13210         {
13211         .description = "tun_hdr_valid",
13212         .field_bit_size = 1,
13213         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13214         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13215         },
13216         {
13217         .description = "tl4_hdr_is_udp_tcp",
13218         .field_bit_size = 1,
13219         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13220         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13221         },
13222         {
13223         .description = "tl4_hdr_type",
13224         .field_bit_size = 4,
13225         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13226         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13227         },
13228         {
13229         .description = "tl4_hdr_error",
13230         .field_bit_size = 1,
13231         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13233         },
13234         {
13235         .description = "tl4_hdr_valid",
13236         .field_bit_size = 1,
13237         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13238         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13239         },
13240         {
13241         .description = "tl3_ipv6_cmp_dst",
13242         .field_bit_size = 1,
13243         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13245         },
13246         {
13247         .description = "tl3_ipv6_cmp_src",
13248         .field_bit_size = 1,
13249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13251         },
13252         {
13253         .description = "tl3_hdr_isIP",
13254         .field_bit_size = 1,
13255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13257         },
13258         {
13259         .description = "tl3_hdr_type",
13260         .field_bit_size = 4,
13261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13263         },
13264         {
13265         .description = "tl3_hdr_error",
13266         .field_bit_size = 1,
13267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13269         },
13270         {
13271         .description = "tl3_hdr_valid",
13272         .field_bit_size = 1,
13273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13274         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13275         },
13276         {
13277         .description = "tl2_two_vtags",
13278         .field_bit_size = 1,
13279         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13280         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13281         },
13282         {
13283         .description = "tl2_vtag_present",
13284         .field_bit_size = 1,
13285         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13286         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13287         },
13288         {
13289         .description = "tl2_uc_mc_bc",
13290         .field_bit_size = 2,
13291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13293         },
13294         {
13295         .description = "tl2_hdr_type",
13296         .field_bit_size = 2,
13297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13298         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13299         },
13300         {
13301         .description = "tl2_hdr_valid",
13302         .field_bit_size = 1,
13303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13305         },
13306         {
13307         .description = "hrec_next",
13308         .field_bit_size = 1,
13309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13311         },
13312         {
13313         .description = "reserved",
13314         .field_bit_size = 9,
13315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13317         },
13318         {
13319         .description = "prof_func_id",
13320         .field_bit_size = 7,
13321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13322         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13323                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13325         .spec_operand = {
13326                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13327                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13330         },
13331         {
13332         .description = "agg_error",
13333         .field_bit_size = 1,
13334         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13335         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13336         },
13337         {
13338         .description = "recycle_cnt",
13339         .field_bit_size = 2,
13340         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13341         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13342                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13344         },
13345         {
13346         .description = "pkt_type_0",
13347         .field_bit_size = 2,
13348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13350         },
13351         {
13352         .description = "pkt_type_1",
13353         .field_bit_size = 2,
13354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13355         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13356                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13357         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13358         },
13359         {
13360         .description = "valid",
13361         .field_bit_size = 1,
13362         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13363         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13364                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13365         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13366         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13367                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13368         },
13369         /* class_tid: 21, stingray, table: ext_em_0 */
13370         {
13371         .description = "spare",
13372         .field_bit_size = 251,
13373         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13374         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13375         },
13376         {
13377         .description = "local_cos",
13378         .field_bit_size = 3,
13379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13381         },
13382         {
13383         .description = "l4_dst_port",
13384         .field_bit_size = 16,
13385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13387         .spec_operand = {
13388                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13389                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13392         },
13393         {
13394         .description = "l4_src_port",
13395         .field_bit_size = 16,
13396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13398         .spec_operand = {
13399                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13400                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13401                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13403         },
13404         {
13405         .description = "ip_proto",
13406         .field_bit_size = 8,
13407         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13408         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13409         .spec_operand = {
13410                 BNXT_ULP_SYM_IP_PROTO_TCP,
13411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13413         },
13414         {
13415         .description = "ipv4_dst_addr",
13416         .field_bit_size = 32,
13417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13419         .spec_operand = {
13420                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13421                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13424         },
13425         {
13426         .description = "ipv4_src_addr",
13427         .field_bit_size = 32,
13428         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13430         .spec_operand = {
13431                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13432                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13433                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13434                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13435         },
13436         {
13437         .description = "l2_src_mac",
13438         .field_bit_size = 48,
13439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13441         },
13442         {
13443         .description = "tun_id",
13444         .field_bit_size = 24,
13445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13446         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13447         },
13448         {
13449         .description = "l2_cntxt_id",
13450         .field_bit_size = 10,
13451         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13452         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13453         .spec_operand = {
13454                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13455                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13458         },
13459         {
13460         .description = "em_profile_id",
13461         .field_bit_size = 8,
13462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13464         .spec_operand = {
13465                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13466                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13469         },
13470         /* class_tid: 21, stingray, table: int_em_0 */
13471         {
13472         .description = "spare",
13473         .field_bit_size = 3,
13474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13475         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13476         },
13477         {
13478         .description = "local_cos",
13479         .field_bit_size = 3,
13480         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13482         },
13483         {
13484         .description = "l4_dst_port",
13485         .field_bit_size = 16,
13486         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13487         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13488         .spec_operand = {
13489                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13490                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13491                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13493         },
13494         {
13495         .description = "l4_src_port",
13496         .field_bit_size = 16,
13497         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13498         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13499         .spec_operand = {
13500                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13501                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13504         },
13505         {
13506         .description = "ip_proto",
13507         .field_bit_size = 8,
13508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13510         .spec_operand = {
13511                 BNXT_ULP_SYM_IP_PROTO_TCP,
13512                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13514         },
13515         {
13516         .description = "ipv4_dst_addr",
13517         .field_bit_size = 32,
13518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13519         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13520         .spec_operand = {
13521                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13522                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13525         },
13526         {
13527         .description = "ipv4_src_addr",
13528         .field_bit_size = 32,
13529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13530         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13531         .spec_operand = {
13532                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13533                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13534                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13536         },
13537         {
13538         .description = "l2_src_mac",
13539         .field_bit_size = 48,
13540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13542         },
13543         {
13544         .description = "tun_id",
13545         .field_bit_size = 24,
13546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13548         },
13549         {
13550         .description = "l2_cntxt_id",
13551         .field_bit_size = 10,
13552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13554         .spec_operand = {
13555                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13556                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13559         },
13560         {
13561         .description = "em_profile_id",
13562         .field_bit_size = 8,
13563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13565         .spec_operand = {
13566                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13567                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13568                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13570         },
13571         /* class_tid: 22, stingray, table: l2_cntxt_cache_0 */
13572         {
13573         .description = "svif",
13574         .field_bit_size = 12,
13575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13577         .spec_operand = {
13578                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13579                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13580                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13582         },
13583         /* class_tid: 22, stingray, table: l2_cntxt_0 */
13584         {
13585         .description = "l2_ivlan_vid",
13586         .field_bit_size = 12,
13587         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13588         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13589         },
13590         {
13591         .description = "l2_ovlan_vid",
13592         .field_bit_size = 12,
13593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13595         },
13596         {
13597         .description = "mac0_l2_dst",
13598         .field_bit_size = 48,
13599         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13600         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13601         },
13602         {
13603         .description = "svif",
13604         .field_bit_size = 12,
13605         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13606         .mask_operand = {
13607                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13608                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13609                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13610                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
13611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13612         .spec_operand = {
13613                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13614                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13617         },
13618         {
13619         .description = "tl2_ivlan_vid",
13620         .field_bit_size = 12,
13621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13623         },
13624         {
13625         .description = "tl2_ovlan_vid",
13626         .field_bit_size = 12,
13627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13629         },
13630         {
13631         .description = "mac1_tl2_dst",
13632         .field_bit_size = 48,
13633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13635         },
13636         {
13637         .description = "l2_num_vtags",
13638         .field_bit_size = 2,
13639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13641         },
13642         {
13643         .description = "tl2_num_vtags",
13644         .field_bit_size = 2,
13645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13647         },
13648         {
13649         .description = "tun_hdr_type",
13650         .field_bit_size = 4,
13651         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13652         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13653                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13655         .spec_operand = {
13656                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13657                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13658                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13659         },
13660         {
13661         .description = "key_type",
13662         .field_bit_size = 2,
13663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13665         },
13666         {
13667         .description = "sparif",
13668         .field_bit_size = 4,
13669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13671         },
13672         {
13673         .description = "valid",
13674         .field_bit_size = 1,
13675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13676         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13677                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13679         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13681         },
13682         /* class_tid: 22, stingray, table: profile_tcam_cache_0 */
13683         {
13684         .description = "recycle",
13685         .field_bit_size = 1,
13686         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13687         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13688         },
13689         {
13690         .description = "prof_func_id",
13691         .field_bit_size = 7,
13692         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13694         .spec_operand = {
13695                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13696                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13698                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13699         },
13700         {
13701         .description = "class_tid",
13702         .field_bit_size = 8,
13703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13705         .spec_operand = {
13706                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13707                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13710         },
13711         /* class_tid: 22, stingray, table: profile_tcam_0 */
13712         {
13713         .description = "l4_hdr_is_udp_tcp",
13714         .field_bit_size = 1,
13715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13717         },
13718         {
13719         .description = "l4_hdr_type",
13720         .field_bit_size = 4,
13721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13722         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13723                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13725         .spec_operand = {
13726                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
13727                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13728                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13729         },
13730         {
13731         .description = "l4_hdr_error",
13732         .field_bit_size = 1,
13733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13734         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13735                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13737         },
13738         {
13739         .description = "l4_hdr_valid",
13740         .field_bit_size = 1,
13741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13742         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13743                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13745         .spec_operand = {
13746                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13747                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13748                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13749         },
13750         {
13751         .description = "l3_ipv6_cmp_dst",
13752         .field_bit_size = 1,
13753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13755         },
13756         {
13757         .description = "l3_ipv6_cmp_src",
13758         .field_bit_size = 1,
13759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13761         },
13762         {
13763         .description = "l3_hdr_isIP",
13764         .field_bit_size = 1,
13765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13767         },
13768         {
13769         .description = "l3_hdr_type",
13770         .field_bit_size = 4,
13771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13772         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13773                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13775         .spec_operand = {
13776                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
13777                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13779         },
13780         {
13781         .description = "l3_hdr_error",
13782         .field_bit_size = 1,
13783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13784         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13785                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13787         },
13788         {
13789         .description = "l3_hdr_valid",
13790         .field_bit_size = 1,
13791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13792         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13793                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13795         .spec_operand = {
13796                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13797                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13799         },
13800         {
13801         .description = "l2_two_vtags",
13802         .field_bit_size = 1,
13803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13804         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13805         },
13806         {
13807         .description = "l2_vtag_present",
13808         .field_bit_size = 1,
13809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13811         },
13812         {
13813         .description = "l2_uc_mc_bc",
13814         .field_bit_size = 2,
13815         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13816         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13817         },
13818         {
13819         .description = "l2_hdr_type",
13820         .field_bit_size = 2,
13821         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13822         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13823                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13825         },
13826         {
13827         .description = "l2_hdr_error",
13828         .field_bit_size = 1,
13829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13830         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13831                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13833         },
13834         {
13835         .description = "l2_hdr_valid",
13836         .field_bit_size = 1,
13837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13838         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13839                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13840         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13841         .spec_operand = {
13842                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
13843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13844                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13845         },
13846         {
13847         .description = "tun_hdr_flags",
13848         .field_bit_size = 3,
13849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13851         },
13852         {
13853         .description = "tun_hdr_type",
13854         .field_bit_size = 4,
13855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13857         },
13858         {
13859         .description = "tun_hdr_error",
13860         .field_bit_size = 1,
13861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13863         },
13864         {
13865         .description = "tun_hdr_valid",
13866         .field_bit_size = 1,
13867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13869         },
13870         {
13871         .description = "tl4_hdr_is_udp_tcp",
13872         .field_bit_size = 1,
13873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13874         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13875         },
13876         {
13877         .description = "tl4_hdr_type",
13878         .field_bit_size = 4,
13879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13881         },
13882         {
13883         .description = "tl4_hdr_error",
13884         .field_bit_size = 1,
13885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13887         },
13888         {
13889         .description = "tl4_hdr_valid",
13890         .field_bit_size = 1,
13891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13893         },
13894         {
13895         .description = "tl3_ipv6_cmp_dst",
13896         .field_bit_size = 1,
13897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13899         },
13900         {
13901         .description = "tl3_ipv6_cmp_src",
13902         .field_bit_size = 1,
13903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13905         },
13906         {
13907         .description = "tl3_hdr_isIP",
13908         .field_bit_size = 1,
13909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13911         },
13912         {
13913         .description = "tl3_hdr_type",
13914         .field_bit_size = 4,
13915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13917         },
13918         {
13919         .description = "tl3_hdr_error",
13920         .field_bit_size = 1,
13921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13923         },
13924         {
13925         .description = "tl3_hdr_valid",
13926         .field_bit_size = 1,
13927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13929         },
13930         {
13931         .description = "tl2_two_vtags",
13932         .field_bit_size = 1,
13933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13935         },
13936         {
13937         .description = "tl2_vtag_present",
13938         .field_bit_size = 1,
13939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13941         },
13942         {
13943         .description = "tl2_uc_mc_bc",
13944         .field_bit_size = 2,
13945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13947         },
13948         {
13949         .description = "tl2_hdr_type",
13950         .field_bit_size = 2,
13951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13953         },
13954         {
13955         .description = "tl2_hdr_valid",
13956         .field_bit_size = 1,
13957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13958         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13959         },
13960         {
13961         .description = "hrec_next",
13962         .field_bit_size = 1,
13963         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13964         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13965         },
13966         {
13967         .description = "reserved",
13968         .field_bit_size = 9,
13969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13971         },
13972         {
13973         .description = "prof_func_id",
13974         .field_bit_size = 7,
13975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13976         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13977                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13979         .spec_operand = {
13980                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13981                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13984         },
13985         {
13986         .description = "agg_error",
13987         .field_bit_size = 1,
13988         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13990         },
13991         {
13992         .description = "recycle_cnt",
13993         .field_bit_size = 2,
13994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13995         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13996                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13997         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13998         },
13999         {
14000         .description = "pkt_type_0",
14001         .field_bit_size = 2,
14002         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14003         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14004         },
14005         {
14006         .description = "pkt_type_1",
14007         .field_bit_size = 2,
14008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14009         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14010                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14012         },
14013         {
14014         .description = "valid",
14015         .field_bit_size = 1,
14016         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14017         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14018                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14020         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14022         },
14023         /* class_tid: 22, stingray, table: ext_em_0 */
14024         {
14025         .description = "spare",
14026         .field_bit_size = 59,
14027         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14028         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14029         },
14030         {
14031         .description = "local_cos",
14032         .field_bit_size = 3,
14033         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14034         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14035         },
14036         {
14037         .description = "l4_dst_port",
14038         .field_bit_size = 16,
14039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14041         .spec_operand = {
14042                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14043                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14044                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14045                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14046         },
14047         {
14048         .description = "l4_src_port",
14049         .field_bit_size = 16,
14050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14052         .spec_operand = {
14053                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14054                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14055                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14056                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14057         },
14058         {
14059         .description = "ip_proto",
14060         .field_bit_size = 8,
14061         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14062         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14063         .spec_operand = {
14064                 BNXT_ULP_SYM_IP_PROTO_UDP,
14065                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14067         },
14068         {
14069         .description = "ipv6_dst_addr",
14070         .field_bit_size = 128,
14071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14072         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14073         .spec_operand = {
14074                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14075                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14078         },
14079         {
14080         .description = "ipv6_src_addr",
14081         .field_bit_size = 128,
14082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14084         .spec_operand = {
14085                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14086                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14089         },
14090         {
14091         .description = "l2_src_mac",
14092         .field_bit_size = 48,
14093         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14095         },
14096         {
14097         .description = "tun_id",
14098         .field_bit_size = 24,
14099         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14100         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14101         },
14102         {
14103         .description = "l2_cntxt_id",
14104         .field_bit_size = 10,
14105         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14106         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14107         .spec_operand = {
14108                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14109                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14112         },
14113         {
14114         .description = "em_profile_id",
14115         .field_bit_size = 8,
14116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14118         .spec_operand = {
14119                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14120                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14123         },
14124         /* class_tid: 22, stingray, table: int_em_0 */
14125         {
14126         .description = "spare",
14127         .field_bit_size = 3,
14128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14129         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14130         },
14131         {
14132         .description = "local_cos",
14133         .field_bit_size = 3,
14134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14135         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14136         },
14137         {
14138         .description = "l4_dst_port",
14139         .field_bit_size = 16,
14140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14142         .spec_operand = {
14143                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14144                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14147         },
14148         {
14149         .description = "l4_src_port",
14150         .field_bit_size = 16,
14151         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14152         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14153         .spec_operand = {
14154                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14155                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14158         },
14159         {
14160         .description = "ip_proto",
14161         .field_bit_size = 8,
14162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14164         .spec_operand = {
14165                 BNXT_ULP_SYM_IP_PROTO_UDP,
14166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14168         },
14169         {
14170         .description = "ipv6_dst_addr",
14171         .field_bit_size = 128,
14172         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14173         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14174         .spec_operand = {
14175                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14176                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14179         },
14180         {
14181         .description = "ipv6_src_addr",
14182         .field_bit_size = 128,
14183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14184         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14185         .spec_operand = {
14186                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14187                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14190         },
14191         {
14192         .description = "l2_src_mac",
14193         .field_bit_size = 48,
14194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14196         },
14197         {
14198         .description = "tun_id",
14199         .field_bit_size = 24,
14200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14201         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14202         },
14203         {
14204         .description = "l2_cntxt_id",
14205         .field_bit_size = 10,
14206         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14207         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14208         .spec_operand = {
14209                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14210                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14213         },
14214         {
14215         .description = "em_profile_id",
14216         .field_bit_size = 8,
14217         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14218         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14219         .spec_operand = {
14220                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14221                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14223                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14224         },
14225         /* class_tid: 23, stingray, table: l2_cntxt_cache_0 */
14226         {
14227         .description = "svif",
14228         .field_bit_size = 12,
14229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14230         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14231         .spec_operand = {
14232                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14233                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14235                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14236         },
14237         /* class_tid: 23, stingray, table: l2_cntxt_tcam_0 */
14238         {
14239         .description = "l2_ivlan_vid",
14240         .field_bit_size = 12,
14241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14243         },
14244         {
14245         .description = "l2_ovlan_vid",
14246         .field_bit_size = 12,
14247         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14249         },
14250         {
14251         .description = "mac0_l2_dst",
14252         .field_bit_size = 48,
14253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14254         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14255         },
14256         {
14257         .description = "svif",
14258         .field_bit_size = 12,
14259         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14260         .mask_operand = {
14261                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14262                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14263                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14266         .spec_operand = {
14267                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14268                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14271         },
14272         {
14273         .description = "tl2_ivlan_vid",
14274         .field_bit_size = 12,
14275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14277         },
14278         {
14279         .description = "tl2_ovlan_vid",
14280         .field_bit_size = 12,
14281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14283         },
14284         {
14285         .description = "mac1_tl2_dst",
14286         .field_bit_size = 48,
14287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14289         },
14290         {
14291         .description = "l2_num_vtags",
14292         .field_bit_size = 2,
14293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14295         },
14296         {
14297         .description = "tl2_num_vtags",
14298         .field_bit_size = 2,
14299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14300         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14301         },
14302         {
14303         .description = "tun_hdr_type",
14304         .field_bit_size = 4,
14305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14306         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14307                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14309         .spec_operand = {
14310                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
14311                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14312                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14313         },
14314         {
14315         .description = "key_type",
14316         .field_bit_size = 2,
14317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14318         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14319         },
14320         {
14321         .description = "sparif",
14322         .field_bit_size = 4,
14323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14325         },
14326         {
14327         .description = "valid",
14328         .field_bit_size = 1,
14329         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14330         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14331                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14333         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14334                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14335         },
14336         /* class_tid: 23, stingray, table: profile_tcam_cache_0 */
14337         {
14338         .description = "recycle",
14339         .field_bit_size = 1,
14340         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14342         },
14343         {
14344         .description = "prof_func_id",
14345         .field_bit_size = 7,
14346         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14348         .spec_operand = {
14349                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14350                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14351                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14352                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14353         },
14354         {
14355         .description = "class_tid",
14356         .field_bit_size = 8,
14357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14359         .spec_operand = {
14360                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
14361                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
14362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14363                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14364         },
14365         /* class_tid: 23, stingray, table: profile_tcam_0 */
14366         {
14367         .description = "l4_hdr_is_udp_tcp",
14368         .field_bit_size = 1,
14369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14370         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14371         },
14372         {
14373         .description = "l4_hdr_type",
14374         .field_bit_size = 4,
14375         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14376         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14377                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14379         },
14380         {
14381         .description = "l4_hdr_error",
14382         .field_bit_size = 1,
14383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14384         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14385                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14387         },
14388         {
14389         .description = "l4_hdr_valid",
14390         .field_bit_size = 1,
14391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14392         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14393                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14394         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14395         .spec_operand = {
14396                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
14397                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14399         },
14400         {
14401         .description = "l3_ipv6_cmp_dst",
14402         .field_bit_size = 1,
14403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14405         },
14406         {
14407         .description = "l3_ipv6_cmp_src",
14408         .field_bit_size = 1,
14409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14410         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14411         },
14412         {
14413         .description = "l3_hdr_isIP",
14414         .field_bit_size = 1,
14415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14416         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14417         },
14418         {
14419         .description = "l3_hdr_type",
14420         .field_bit_size = 4,
14421         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14422         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14423                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14424         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14425         .spec_operand = {
14426                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
14427                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14428                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14429         },
14430         {
14431         .description = "l3_hdr_error",
14432         .field_bit_size = 1,
14433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14434         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14435                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14437         },
14438         {
14439         .description = "l3_hdr_valid",
14440         .field_bit_size = 1,
14441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14442         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14443                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14444         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14445         .spec_operand = {
14446                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
14447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14448                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14449         },
14450         {
14451         .description = "l2_two_vtags",
14452         .field_bit_size = 1,
14453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14454         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14455         },
14456         {
14457         .description = "l2_vtag_present",
14458         .field_bit_size = 1,
14459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14461         },
14462         {
14463         .description = "l2_uc_mc_bc",
14464         .field_bit_size = 2,
14465         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14466         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14467         },
14468         {
14469         .description = "l2_hdr_type",
14470         .field_bit_size = 2,
14471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14472         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14473                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14475         },
14476         {
14477         .description = "l2_hdr_error",
14478         .field_bit_size = 1,
14479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14480         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14481                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14483         },
14484         {
14485         .description = "l2_hdr_valid",
14486         .field_bit_size = 1,
14487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14488         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14489                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14491         .spec_operand = {
14492                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
14493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14494                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14495         },
14496         {
14497         .description = "tun_hdr_flags",
14498         .field_bit_size = 3,
14499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14500         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14501         },
14502         {
14503         .description = "tun_hdr_type",
14504         .field_bit_size = 4,
14505         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14507         },
14508         {
14509         .description = "tun_hdr_error",
14510         .field_bit_size = 1,
14511         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14513         },
14514         {
14515         .description = "tun_hdr_valid",
14516         .field_bit_size = 1,
14517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14519         },
14520         {
14521         .description = "tl4_hdr_is_udp_tcp",
14522         .field_bit_size = 1,
14523         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14524         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14525         },
14526         {
14527         .description = "tl4_hdr_type",
14528         .field_bit_size = 4,
14529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14530         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14531         },
14532         {
14533         .description = "tl4_hdr_error",
14534         .field_bit_size = 1,
14535         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14537         },
14538         {
14539         .description = "tl4_hdr_valid",
14540         .field_bit_size = 1,
14541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14543         },
14544         {
14545         .description = "tl3_ipv6_cmp_dst",
14546         .field_bit_size = 1,
14547         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14548         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14549         },
14550         {
14551         .description = "tl3_ipv6_cmp_src",
14552         .field_bit_size = 1,
14553         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14555         },
14556         {
14557         .description = "tl3_hdr_isIP",
14558         .field_bit_size = 1,
14559         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14560         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14561         },
14562         {
14563         .description = "tl3_hdr_type",
14564         .field_bit_size = 4,
14565         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14566         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14567         },
14568         {
14569         .description = "tl3_hdr_error",
14570         .field_bit_size = 1,
14571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14573         },
14574         {
14575         .description = "tl3_hdr_valid",
14576         .field_bit_size = 1,
14577         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14578         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14579         },
14580         {
14581         .description = "tl2_two_vtags",
14582         .field_bit_size = 1,
14583         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14584         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14585         },
14586         {
14587         .description = "tl2_vtag_present",
14588         .field_bit_size = 1,
14589         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14590         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14591         },
14592         {
14593         .description = "tl2_uc_mc_bc",
14594         .field_bit_size = 2,
14595         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14596         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14597         },
14598         {
14599         .description = "tl2_hdr_type",
14600         .field_bit_size = 2,
14601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14603         },
14604         {
14605         .description = "tl2_hdr_valid",
14606         .field_bit_size = 1,
14607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14608         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14609         },
14610         {
14611         .description = "hrec_next",
14612         .field_bit_size = 1,
14613         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14614         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14615         },
14616         {
14617         .description = "reserved",
14618         .field_bit_size = 9,
14619         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14620         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14621         },
14622         {
14623         .description = "prof_func_id",
14624         .field_bit_size = 7,
14625         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14626         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14627                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14629         .spec_operand = {
14630                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14631                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14633                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14634         },
14635         {
14636         .description = "agg_error",
14637         .field_bit_size = 1,
14638         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14639         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14640         },
14641         {
14642         .description = "recycle_cnt",
14643         .field_bit_size = 2,
14644         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14645         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14646                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14648         },
14649         {
14650         .description = "pkt_type_0",
14651         .field_bit_size = 2,
14652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14653         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14654         },
14655         {
14656         .description = "pkt_type_1",
14657         .field_bit_size = 2,
14658         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14659         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14660                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14662         },
14663         {
14664         .description = "valid",
14665         .field_bit_size = 1,
14666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14667         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14668                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14670         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14672         },
14673         /* class_tid: 23, stingray, table: ext_em_0 */
14674         {
14675         .description = "spare",
14676         .field_bit_size = 59,
14677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14679         },
14680         {
14681         .description = "local_cos",
14682         .field_bit_size = 3,
14683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14685         },
14686         {
14687         .description = "l4_dst_port",
14688         .field_bit_size = 16,
14689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14691         .spec_operand = {
14692                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14693                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14694                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14695                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14696         },
14697         {
14698         .description = "l4_src_port",
14699         .field_bit_size = 16,
14700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14702         .spec_operand = {
14703                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14704                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14706                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14707         },
14708         {
14709         .description = "ip_proto",
14710         .field_bit_size = 8,
14711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14712         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14713         .spec_operand = {
14714                 BNXT_ULP_SYM_IP_PROTO_TCP,
14715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14717         },
14718         {
14719         .description = "ipv6_dst_addr",
14720         .field_bit_size = 128,
14721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14723         .spec_operand = {
14724                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14725                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14727                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14728         },
14729         {
14730         .description = "ipv6_src_addr",
14731         .field_bit_size = 128,
14732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14734         .spec_operand = {
14735                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14736                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14738                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14739         },
14740         {
14741         .description = "l2_src_mac",
14742         .field_bit_size = 48,
14743         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14745         },
14746         {
14747         .description = "tun_id",
14748         .field_bit_size = 24,
14749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14751         },
14752         {
14753         .description = "l2_cntxt_id",
14754         .field_bit_size = 10,
14755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14757         .spec_operand = {
14758                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14759                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14760                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14761                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14762         },
14763         {
14764         .description = "em_profile_id",
14765         .field_bit_size = 8,
14766         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14767         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14768         .spec_operand = {
14769                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14770                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14771                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14772                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14773         },
14774         /* class_tid: 23, stingray, table: int_em_0 */
14775         {
14776         .description = "spare",
14777         .field_bit_size = 3,
14778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14779         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14780         },
14781         {
14782         .description = "local_cos",
14783         .field_bit_size = 3,
14784         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14786         },
14787         {
14788         .description = "l4_dst_port",
14789         .field_bit_size = 16,
14790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14792         .spec_operand = {
14793                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14794                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14797         },
14798         {
14799         .description = "l4_src_port",
14800         .field_bit_size = 16,
14801         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14803         .spec_operand = {
14804                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14805                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14806                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14808         },
14809         {
14810         .description = "ip_proto",
14811         .field_bit_size = 8,
14812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14814         .spec_operand = {
14815                 BNXT_ULP_SYM_IP_PROTO_TCP,
14816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14818         },
14819         {
14820         .description = "ipv6_dst_addr",
14821         .field_bit_size = 128,
14822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14824         .spec_operand = {
14825                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14826                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14828                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14829         },
14830         {
14831         .description = "ipv6_src_addr",
14832         .field_bit_size = 128,
14833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14834         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14835         .spec_operand = {
14836                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14837                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14840         },
14841         {
14842         .description = "l2_src_mac",
14843         .field_bit_size = 48,
14844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14846         },
14847         {
14848         .description = "tun_id",
14849         .field_bit_size = 24,
14850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14852         },
14853         {
14854         .description = "l2_cntxt_id",
14855         .field_bit_size = 10,
14856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14857         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14858         .spec_operand = {
14859                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14860                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14863         },
14864         {
14865         .description = "em_profile_id",
14866         .field_bit_size = 8,
14867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14869         .spec_operand = {
14870                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14871                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14872                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14874         },
14875         /* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */
14876         {
14877         .description = "l2_ivlan_vid",
14878         .field_bit_size = 12,
14879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14880         .mask_operand = {
14881                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14882                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14886         .spec_operand = {
14887                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14888                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14891         },
14892         {
14893         .description = "l2_ovlan_vid",
14894         .field_bit_size = 12,
14895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14897         },
14898         {
14899         .description = "mac0_l2_addr",
14900         .field_bit_size = 48,
14901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14902         .mask_operand = {
14903                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14904                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14905                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14906                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14907         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14908         .spec_operand = {
14909                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14910                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14913         },
14914         {
14915         .description = "svif",
14916         .field_bit_size = 12,
14917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14918         .mask_operand = {
14919                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
14920                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
14921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14924         .spec_operand = {
14925                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
14926                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
14927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14929         },
14930         {
14931         .description = "tl2_ivlan_vid",
14932         .field_bit_size = 12,
14933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14935         },
14936         {
14937         .description = "tl2_ovlan_vid",
14938         .field_bit_size = 12,
14939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14941         },
14942         {
14943         .description = "mac1_l2_addr",
14944         .field_bit_size = 48,
14945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14947         },
14948         {
14949         .description = "l2_num_vtags",
14950         .field_bit_size = 2,
14951         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14952         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14953                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14954         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
14955         .spec_operand = {
14956                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
14957                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
14958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14960         },
14961         {
14962         .description = "tl2_num_vtags",
14963         .field_bit_size = 2,
14964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14966         },
14967         {
14968         .description = "tun_hdr_type",
14969         .field_bit_size = 4,
14970         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14971         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14972                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14974         .spec_operand = {
14975                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
14976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14978         },
14979         {
14980         .description = "key_type",
14981         .field_bit_size = 2,
14982         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14983         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14984                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14986         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
14987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14988         },
14989         {
14990         .description = "sparif",
14991         .field_bit_size = 4,
14992         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14993         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14994         },
14995         {
14996         .description = "valid",
14997         .field_bit_size = 1,
14998         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14999         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15000                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15001         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15002         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15004         },
15005         /* class_tid: 24, stingray, table: profile_tcam_cache_0 */
15006         {
15007         .description = "recycle",
15008         .field_bit_size = 1,
15009         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15011         },
15012         {
15013         .description = "prof_func_id",
15014         .field_bit_size = 7,
15015         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15017         .spec_operand = {
15018                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15019                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15022         },
15023         {
15024         .description = "class_tid",
15025         .field_bit_size = 8,
15026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15028         .spec_operand = {
15029                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15030                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15033         },
15034         /* class_tid: 24, stingray, table: profile_tcam_0 */
15035         {
15036         .description = "l4_hdr_is_udp_tcp",
15037         .field_bit_size = 1,
15038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15040         },
15041         {
15042         .description = "l4_hdr_type",
15043         .field_bit_size = 4,
15044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15046         },
15047         {
15048         .description = "l4_hdr_error",
15049         .field_bit_size = 1,
15050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15052         },
15053         {
15054         .description = "l4_hdr_valid",
15055         .field_bit_size = 1,
15056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15058         },
15059         {
15060         .description = "l3_ipv6_cmp_dst",
15061         .field_bit_size = 1,
15062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15064         },
15065         {
15066         .description = "l3_ipv6_cmp_src",
15067         .field_bit_size = 1,
15068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15070         },
15071         {
15072         .description = "l3_hdr_isIP",
15073         .field_bit_size = 1,
15074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15075         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15076         },
15077         {
15078         .description = "l3_hdr_type",
15079         .field_bit_size = 4,
15080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15081         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15082                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15084         },
15085         {
15086         .description = "l3_hdr_error",
15087         .field_bit_size = 1,
15088         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15089         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15090                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15092         },
15093         {
15094         .description = "l3_hdr_valid",
15095         .field_bit_size = 1,
15096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15097         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15098                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15100         .spec_operand = {
15101                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15102                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15103                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15104         },
15105         {
15106         .description = "l2_two_vtags",
15107         .field_bit_size = 1,
15108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15110         },
15111         {
15112         .description = "l2_vtag_present",
15113         .field_bit_size = 1,
15114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15116         },
15117         {
15118         .description = "l2_uc_mc_bc",
15119         .field_bit_size = 2,
15120         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15121         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15122                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15124         },
15125         {
15126         .description = "l2_hdr_type",
15127         .field_bit_size = 2,
15128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15129         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15130                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15132         },
15133         {
15134         .description = "l2_hdr_error",
15135         .field_bit_size = 1,
15136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15137         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15138                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15139         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15140         },
15141         {
15142         .description = "l2_hdr_valid",
15143         .field_bit_size = 1,
15144         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15145         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15146                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15148         .spec_operand = {
15149                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15152         },
15153         {
15154         .description = "tun_hdr_flags",
15155         .field_bit_size = 3,
15156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15157         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15158         },
15159         {
15160         .description = "tun_hdr_type",
15161         .field_bit_size = 4,
15162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15164         },
15165         {
15166         .description = "tun_hdr_error",
15167         .field_bit_size = 1,
15168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15170         },
15171         {
15172         .description = "tun_hdr_valid",
15173         .field_bit_size = 1,
15174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15175         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15176                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15178         },
15179         {
15180         .description = "tl4_hdr_is_udp_tcp",
15181         .field_bit_size = 1,
15182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15183         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15184         },
15185         {
15186         .description = "tl4_hdr_type",
15187         .field_bit_size = 4,
15188         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15189         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15190         },
15191         {
15192         .description = "tl4_hdr_error",
15193         .field_bit_size = 1,
15194         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15195         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15196         },
15197         {
15198         .description = "tl4_hdr_valid",
15199         .field_bit_size = 1,
15200         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15201         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15202                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15204         },
15205         {
15206         .description = "tl3_ipv6_cmp_dst",
15207         .field_bit_size = 1,
15208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15210         },
15211         {
15212         .description = "tl3_ipv6_cmp_src",
15213         .field_bit_size = 1,
15214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15216         },
15217         {
15218         .description = "tl3_hdr_isIP",
15219         .field_bit_size = 1,
15220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15222         },
15223         {
15224         .description = "tl3_hdr_type",
15225         .field_bit_size = 4,
15226         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15227         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15228         },
15229         {
15230         .description = "tl3_hdr_error",
15231         .field_bit_size = 1,
15232         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15234         },
15235         {
15236         .description = "tl3_hdr_valid",
15237         .field_bit_size = 1,
15238         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15239         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15240                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15242         },
15243         {
15244         .description = "tl2_two_vtags",
15245         .field_bit_size = 1,
15246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15248         },
15249         {
15250         .description = "tl2_vtag_present",
15251         .field_bit_size = 1,
15252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15253         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15254         },
15255         {
15256         .description = "tl2_uc_mc_bc",
15257         .field_bit_size = 2,
15258         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15259         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15260         },
15261         {
15262         .description = "tl2_hdr_type",
15263         .field_bit_size = 2,
15264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15266         },
15267         {
15268         .description = "tl2_hdr_valid",
15269         .field_bit_size = 1,
15270         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15271         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15272                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15274         },
15275         {
15276         .description = "hrec_next",
15277         .field_bit_size = 1,
15278         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15279         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15280         },
15281         {
15282         .description = "reserved",
15283         .field_bit_size = 9,
15284         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15285         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15286         },
15287         {
15288         .description = "prof_func_id",
15289         .field_bit_size = 7,
15290         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15291         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15292                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15293         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15294         .spec_operand = {
15295                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15296                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15299         },
15300         {
15301         .description = "agg_error",
15302         .field_bit_size = 1,
15303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15305         },
15306         {
15307         .description = "recycle_cnt",
15308         .field_bit_size = 2,
15309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15310         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15311                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15312         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15313         },
15314         {
15315         .description = "pkt_type_0",
15316         .field_bit_size = 2,
15317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15318         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15319         },
15320         {
15321         .description = "pkt_type_1",
15322         .field_bit_size = 2,
15323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15324         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15325                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15327         },
15328         {
15329         .description = "valid",
15330         .field_bit_size = 1,
15331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15332         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15333                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15335         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15336                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15337         },
15338         /* class_tid: 24, stingray, table: ext_em_0 */
15339         {
15340         .description = "spare",
15341         .field_bit_size = 351,
15342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15344         },
15345         {
15346         .description = "local_cos",
15347         .field_bit_size = 3,
15348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15350         },
15351         {
15352         .description = "l2_eth_type",
15353         .field_bit_size = 16,
15354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15356         },
15357         {
15358         .description = "l2_inner_vid",
15359         .field_bit_size = 12,
15360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15362         },
15363         {
15364         .description = "l2_dmac",
15365         .field_bit_size = 48,
15366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15368         .spec_operand = {
15369                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15370                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15373         },
15374         {
15375         .description = "l2_cntxt_id",
15376         .field_bit_size = 10,
15377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15379         .spec_operand = {
15380                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15381                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15384         },
15385         {
15386         .description = "em_profile_id",
15387         .field_bit_size = 8,
15388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15389         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15390         .spec_operand = {
15391                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15392                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15394                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15395         },
15396         /* class_tid: 24, stingray, table: int_em_0 */
15397         {
15398         .description = "spare",
15399         .field_bit_size = 7,
15400         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15401         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15402         },
15403         {
15404         .description = "local_cos",
15405         .field_bit_size = 3,
15406         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15407         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15408         },
15409         {
15410         .description = "l2_eth_type",
15411         .field_bit_size = 16,
15412         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15413         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15414         },
15415         {
15416         .description = "l2_inner_vid",
15417         .field_bit_size = 12,
15418         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15420         },
15421         {
15422         .description = "l2_dmac",
15423         .field_bit_size = 48,
15424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15425         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15426         .spec_operand = {
15427                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15428                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15431         },
15432         {
15433         .description = "l2_cntxt_id",
15434         .field_bit_size = 10,
15435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15437         .spec_operand = {
15438                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15439                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15441                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15442         },
15443         {
15444         .description = "em_profile_id",
15445         .field_bit_size = 8,
15446         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15447         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15448         .spec_operand = {
15449                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15450                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15452                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15453         },
15454         /* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */
15455         {
15456         .description = "l2_ivlan_vid",
15457         .field_bit_size = 12,
15458         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15459         .mask_operand = {
15460                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15461                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15462                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15464         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15465         .spec_operand = {
15466                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15467                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15470         },
15471         {
15472         .description = "l2_ovlan_vid",
15473         .field_bit_size = 12,
15474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15475         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15476         },
15477         {
15478         .description = "mac0_l2_addr",
15479         .field_bit_size = 48,
15480         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15481         .mask_operand = {
15482                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15483                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15486         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15487         .spec_operand = {
15488                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15489                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15490                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15491                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15492         },
15493         {
15494         .description = "svif",
15495         .field_bit_size = 12,
15496         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15497         .mask_operand = {
15498                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15499                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15503         .spec_operand = {
15504                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15505                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15507                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15508         },
15509         {
15510         .description = "tl2_ivlan_vid",
15511         .field_bit_size = 12,
15512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15514         },
15515         {
15516         .description = "tl2_ovlan_vid",
15517         .field_bit_size = 12,
15518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15519         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15520         },
15521         {
15522         .description = "mac1_l2_addr",
15523         .field_bit_size = 48,
15524         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15525         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15526         },
15527         {
15528         .description = "l2_num_vtags",
15529         .field_bit_size = 2,
15530         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15531         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15532                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
15534         .spec_operand = {
15535                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
15536                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
15537                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15539         },
15540         {
15541         .description = "tl2_num_vtags",
15542         .field_bit_size = 2,
15543         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15545         },
15546         {
15547         .description = "tun_hdr_type",
15548         .field_bit_size = 4,
15549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15550         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15551                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15552         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15553         .spec_operand = {
15554                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
15555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15557         },
15558         {
15559         .description = "key_type",
15560         .field_bit_size = 2,
15561         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15562         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15563                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15565         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15567         },
15568         {
15569         .description = "sparif",
15570         .field_bit_size = 4,
15571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15572         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15573         },
15574         {
15575         .description = "valid",
15576         .field_bit_size = 1,
15577         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15578         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15579                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15581         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15583         },
15584         /* class_tid: 25, stingray, table: profile_tcam_cache_0 */
15585         {
15586         .description = "recycle",
15587         .field_bit_size = 1,
15588         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15589         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15590         },
15591         {
15592         .description = "prof_func_id",
15593         .field_bit_size = 7,
15594         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15595         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15596         .spec_operand = {
15597                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15598                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15600                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15601         },
15602         {
15603         .description = "class_tid",
15604         .field_bit_size = 8,
15605         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15606         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15607         .spec_operand = {
15608                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15609                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15610                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15611                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15612         },
15613         /* class_tid: 25, stingray, table: profile_tcam_0 */
15614         {
15615         .description = "l4_hdr_is_udp_tcp",
15616         .field_bit_size = 1,
15617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15619         },
15620         {
15621         .description = "l4_hdr_type",
15622         .field_bit_size = 4,
15623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15625         },
15626         {
15627         .description = "l4_hdr_error",
15628         .field_bit_size = 1,
15629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15630         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15631         },
15632         {
15633         .description = "l4_hdr_valid",
15634         .field_bit_size = 1,
15635         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15636         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15637         },
15638         {
15639         .description = "l3_ipv6_cmp_dst",
15640         .field_bit_size = 1,
15641         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15642         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15643         },
15644         {
15645         .description = "l3_ipv6_cmp_src",
15646         .field_bit_size = 1,
15647         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15649         },
15650         {
15651         .description = "l3_hdr_isIP",
15652         .field_bit_size = 1,
15653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15655         },
15656         {
15657         .description = "l3_hdr_type",
15658         .field_bit_size = 4,
15659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15660         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15661                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15662         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15663         .spec_operand = {
15664                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
15665                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15666                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15667         },
15668         {
15669         .description = "l3_hdr_error",
15670         .field_bit_size = 1,
15671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15672         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15673                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15674         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15675         },
15676         {
15677         .description = "l3_hdr_valid",
15678         .field_bit_size = 1,
15679         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15680         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15681                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15683         .spec_operand = {
15684                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15685                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15686                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15687         },
15688         {
15689         .description = "l2_two_vtags",
15690         .field_bit_size = 1,
15691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15692         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15693         },
15694         {
15695         .description = "l2_vtag_present",
15696         .field_bit_size = 1,
15697         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15699         },
15700         {
15701         .description = "l2_uc_mc_bc",
15702         .field_bit_size = 2,
15703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15704         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15705                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15707         },
15708         {
15709         .description = "l2_hdr_type",
15710         .field_bit_size = 2,
15711         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15712         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15713                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15714         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15715         },
15716         {
15717         .description = "l2_hdr_error",
15718         .field_bit_size = 1,
15719         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15720         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15721                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15723         },
15724         {
15725         .description = "l2_hdr_valid",
15726         .field_bit_size = 1,
15727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15728         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15729                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15731         .spec_operand = {
15732                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15735         },
15736         {
15737         .description = "tun_hdr_flags",
15738         .field_bit_size = 3,
15739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15741         },
15742         {
15743         .description = "tun_hdr_type",
15744         .field_bit_size = 4,
15745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15746         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15747         },
15748         {
15749         .description = "tun_hdr_error",
15750         .field_bit_size = 1,
15751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15752         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15753         },
15754         {
15755         .description = "tun_hdr_valid",
15756         .field_bit_size = 1,
15757         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15758         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15759                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15761         },
15762         {
15763         .description = "tl4_hdr_is_udp_tcp",
15764         .field_bit_size = 1,
15765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15767         },
15768         {
15769         .description = "tl4_hdr_type",
15770         .field_bit_size = 4,
15771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15772         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15773         },
15774         {
15775         .description = "tl4_hdr_error",
15776         .field_bit_size = 1,
15777         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15778         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15779         },
15780         {
15781         .description = "tl4_hdr_valid",
15782         .field_bit_size = 1,
15783         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15784         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15785                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15787         },
15788         {
15789         .description = "tl3_ipv6_cmp_dst",
15790         .field_bit_size = 1,
15791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15792         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15793         },
15794         {
15795         .description = "tl3_ipv6_cmp_src",
15796         .field_bit_size = 1,
15797         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15799         },
15800         {
15801         .description = "tl3_hdr_isIP",
15802         .field_bit_size = 1,
15803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15804         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15805         },
15806         {
15807         .description = "tl3_hdr_type",
15808         .field_bit_size = 4,
15809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15810         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15811         },
15812         {
15813         .description = "tl3_hdr_error",
15814         .field_bit_size = 1,
15815         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15816         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15817         },
15818         {
15819         .description = "tl3_hdr_valid",
15820         .field_bit_size = 1,
15821         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15822         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15823                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15825         },
15826         {
15827         .description = "tl2_two_vtags",
15828         .field_bit_size = 1,
15829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15831         },
15832         {
15833         .description = "tl2_vtag_present",
15834         .field_bit_size = 1,
15835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15836         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15837         },
15838         {
15839         .description = "tl2_uc_mc_bc",
15840         .field_bit_size = 2,
15841         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15842         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15843         },
15844         {
15845         .description = "tl2_hdr_type",
15846         .field_bit_size = 2,
15847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15849         },
15850         {
15851         .description = "tl2_hdr_valid",
15852         .field_bit_size = 1,
15853         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15854         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15855                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15857         },
15858         {
15859         .description = "hrec_next",
15860         .field_bit_size = 1,
15861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15863         },
15864         {
15865         .description = "reserved",
15866         .field_bit_size = 9,
15867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15869         },
15870         {
15871         .description = "prof_func_id",
15872         .field_bit_size = 7,
15873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15874         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15875                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15877         .spec_operand = {
15878                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15879                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15880                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15882         },
15883         {
15884         .description = "agg_error",
15885         .field_bit_size = 1,
15886         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15887         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15888         },
15889         {
15890         .description = "recycle_cnt",
15891         .field_bit_size = 2,
15892         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15893         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15894                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15896         },
15897         {
15898         .description = "pkt_type_0",
15899         .field_bit_size = 2,
15900         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15901         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15902         },
15903         {
15904         .description = "pkt_type_1",
15905         .field_bit_size = 2,
15906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15907         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15908                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15910         },
15911         {
15912         .description = "valid",
15913         .field_bit_size = 1,
15914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15915         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15916                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15918         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15920         },
15921         /* class_tid: 25, stingray, table: ext_em_0 */
15922         {
15923         .description = "spare",
15924         .field_bit_size = 351,
15925         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15927         },
15928         {
15929         .description = "local_cos",
15930         .field_bit_size = 3,
15931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15932         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15933         },
15934         {
15935         .description = "l2_eth_type",
15936         .field_bit_size = 16,
15937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15939         },
15940         {
15941         .description = "l2_inner_vid",
15942         .field_bit_size = 12,
15943         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15945         },
15946         {
15947         .description = "l2_dmac",
15948         .field_bit_size = 48,
15949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15951         .spec_operand = {
15952                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
15953                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
15954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15956         },
15957         {
15958         .description = "l2_cntxt_id",
15959         .field_bit_size = 10,
15960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15962         .spec_operand = {
15963                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15964                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15967         },
15968         {
15969         .description = "em_profile_id",
15970         .field_bit_size = 8,
15971         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15973         .spec_operand = {
15974                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15975                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15978         },
15979         /* class_tid: 25, stingray, table: int_em_0 */
15980         {
15981         .description = "spare",
15982         .field_bit_size = 7,
15983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15985         },
15986         {
15987         .description = "local_cos",
15988         .field_bit_size = 3,
15989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15991         },
15992         {
15993         .description = "l2_eth_type",
15994         .field_bit_size = 16,
15995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15996         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15997         },
15998         {
15999         .description = "l2_inner_vid",
16000         .field_bit_size = 12,
16001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16003         },
16004         {
16005         .description = "l2_dmac",
16006         .field_bit_size = 48,
16007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
16009         .spec_operand = {
16010                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
16011                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
16012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16014         },
16015         {
16016         .description = "l2_cntxt_id",
16017         .field_bit_size = 10,
16018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16020         .spec_operand = {
16021                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16022                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16025         },
16026         {
16027         .description = "em_profile_id",
16028         .field_bit_size = 8,
16029         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16031         .spec_operand = {
16032                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
16033                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
16034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16036         }
16037 };
16038
16039 struct bnxt_ulp_mapper_result_field_info ulp_stingray_class_result_field_list[] = {
16040         /* class_tid: 1, stingray, table: int_full_act_record_0 */
16041         {
16042         .description = "flow_cntr_ptr",
16043         .field_bit_size = 14,
16044         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16045         },
16046         {
16047         .description = "age_enable",
16048         .field_bit_size = 1,
16049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16050         },
16051         {
16052         .description = "agg_cntr_en",
16053         .field_bit_size = 1,
16054         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16055         },
16056         {
16057         .description = "rate_cntr_en",
16058         .field_bit_size = 1,
16059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16060         },
16061         {
16062         .description = "flow_cntr_en",
16063         .field_bit_size = 1,
16064         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16065         },
16066         {
16067         .description = "tcpflags_key",
16068         .field_bit_size = 8,
16069         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16070         },
16071         {
16072         .description = "tcpflags_mir",
16073         .field_bit_size = 1,
16074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16075         },
16076         {
16077         .description = "tcpflags_match",
16078         .field_bit_size = 1,
16079         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16080         },
16081         {
16082         .description = "encap_ptr",
16083         .field_bit_size = 11,
16084         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16085         },
16086         {
16087         .description = "dst_ip_ptr",
16088         .field_bit_size = 10,
16089         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16090         },
16091         {
16092         .description = "tcp_dst_port",
16093         .field_bit_size = 16,
16094         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16095         },
16096         {
16097         .description = "src_ip_ptr",
16098         .field_bit_size = 10,
16099         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16100         },
16101         {
16102         .description = "tcp_src_port",
16103         .field_bit_size = 16,
16104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16105         },
16106         {
16107         .description = "meter_id",
16108         .field_bit_size = 10,
16109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16110         },
16111         {
16112         .description = "l3_rdir",
16113         .field_bit_size = 1,
16114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16115         },
16116         {
16117         .description = "tl3_rdir",
16118         .field_bit_size = 1,
16119         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16120         },
16121         {
16122         .description = "l3_ttl_dec",
16123         .field_bit_size = 1,
16124         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16125         },
16126         {
16127         .description = "tl3_ttl_dec",
16128         .field_bit_size = 1,
16129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16130         },
16131         {
16132         .description = "decap_func",
16133         .field_bit_size = 4,
16134         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16135         },
16136         {
16137         .description = "vnic_or_vport",
16138         .field_bit_size = 12,
16139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16140         .result_operand = {
16141                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
16142                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
16143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16145         },
16146         {
16147         .description = "pop_vlan",
16148         .field_bit_size = 1,
16149         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16150         },
16151         {
16152         .description = "meter",
16153         .field_bit_size = 1,
16154         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16155         },
16156         {
16157         .description = "mirror",
16158         .field_bit_size = 2,
16159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16160         },
16161         {
16162         .description = "drop",
16163         .field_bit_size = 1,
16164         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16165         },
16166         {
16167         .description = "hit",
16168         .field_bit_size = 1,
16169         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16170         },
16171         {
16172         .description = "type",
16173         .field_bit_size = 1,
16174         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16175         },
16176         /* class_tid: 1, stingray, table: l2_cntxt_cache_0 */
16177         {
16178         .description = "l2_cntxt_id",
16179         .field_bit_size = 10,
16180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16181         .result_operand = {
16182                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16183                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16184                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16186         },
16187         /* class_tid: 1, stingray, table: l2_cntxt_tcam_0 */
16188         {
16189         .description = "l2_cntxt_id",
16190         .field_bit_size = 10,
16191         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16192         .result_operand = {
16193                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16194                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16197         },
16198         {
16199         .description = "prof_func_id",
16200         .field_bit_size = 7,
16201         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16202         .result_operand = {
16203                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16204                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16207         },
16208         {
16209         .description = "l2_byp_lkup_en",
16210         .field_bit_size = 1,
16211         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16212         },
16213         {
16214         .description = "parif",
16215         .field_bit_size = 4,
16216         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16217         .result_operand = {
16218                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
16219                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
16220                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16222         },
16223         {
16224         .description = "allowed_pri",
16225         .field_bit_size = 8,
16226         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16227         },
16228         {
16229         .description = "default_pri",
16230         .field_bit_size = 3,
16231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16232         },
16233         {
16234         .description = "allowed_tpid",
16235         .field_bit_size = 6,
16236         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16237         },
16238         {
16239         .description = "default_tpid",
16240         .field_bit_size = 3,
16241         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16242         },
16243         {
16244         .description = "bd_act_en",
16245         .field_bit_size = 1,
16246         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16247         },
16248         {
16249         .description = "sp_rec_ptr",
16250         .field_bit_size = 16,
16251         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16252         },
16253         {
16254         .description = "byp_sp_lkup",
16255         .field_bit_size = 1,
16256         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16257         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16259         },
16260         {
16261         .description = "pri_anti_spoof_ctl",
16262         .field_bit_size = 2,
16263         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16264         },
16265         {
16266         .description = "tpid_anti_spoof_ctl",
16267         .field_bit_size = 2,
16268         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16269         },
16270         /* class_tid: 1, stingray, table: parif_def_lkup_arec_ptr_0 */
16271         {
16272         .description = "act_rec_ptr",
16273         .field_bit_size = 32,
16274         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16275         .result_operand = {
16276                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16277                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16280         },
16281         /* class_tid: 1, stingray, table: parif_def_arec_ptr_0 */
16282         {
16283         .description = "act_rec_ptr",
16284         .field_bit_size = 32,
16285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16286         .result_operand = {
16287                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16288                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16291         },
16292         /* class_tid: 1, stingray, table: parif_def_err_arec_ptr_0 */
16293         {
16294         .description = "act_rec_ptr",
16295         .field_bit_size = 32,
16296         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16297         .result_operand = {
16298                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16299                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16300                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16301                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16302         },
16303         /* class_tid: 2, stingray, table: int_full_act_record_0 */
16304         {
16305         .description = "flow_cntr_ptr",
16306         .field_bit_size = 14,
16307         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16308         },
16309         {
16310         .description = "age_enable",
16311         .field_bit_size = 1,
16312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16313         },
16314         {
16315         .description = "agg_cntr_en",
16316         .field_bit_size = 1,
16317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16318         },
16319         {
16320         .description = "rate_cntr_en",
16321         .field_bit_size = 1,
16322         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16323         },
16324         {
16325         .description = "flow_cntr_en",
16326         .field_bit_size = 1,
16327         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16328         },
16329         {
16330         .description = "tcpflags_key",
16331         .field_bit_size = 8,
16332         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16333         },
16334         {
16335         .description = "tcpflags_mir",
16336         .field_bit_size = 1,
16337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16338         },
16339         {
16340         .description = "tcpflags_match",
16341         .field_bit_size = 1,
16342         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16343         },
16344         {
16345         .description = "encap_ptr",
16346         .field_bit_size = 11,
16347         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16348         },
16349         {
16350         .description = "dst_ip_ptr",
16351         .field_bit_size = 10,
16352         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16353         },
16354         {
16355         .description = "tcp_dst_port",
16356         .field_bit_size = 16,
16357         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16358         },
16359         {
16360         .description = "src_ip_ptr",
16361         .field_bit_size = 10,
16362         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16363         },
16364         {
16365         .description = "tcp_src_port",
16366         .field_bit_size = 16,
16367         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16368         },
16369         {
16370         .description = "meter_id",
16371         .field_bit_size = 10,
16372         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16373         },
16374         {
16375         .description = "l3_rdir",
16376         .field_bit_size = 1,
16377         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16378         },
16379         {
16380         .description = "tl3_rdir",
16381         .field_bit_size = 1,
16382         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16383         },
16384         {
16385         .description = "l3_ttl_dec",
16386         .field_bit_size = 1,
16387         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16388         },
16389         {
16390         .description = "tl3_ttl_dec",
16391         .field_bit_size = 1,
16392         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16393         },
16394         {
16395         .description = "decap_func",
16396         .field_bit_size = 4,
16397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16398         },
16399         {
16400         .description = "vnic_or_vport",
16401         .field_bit_size = 12,
16402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16403         .result_operand = {
16404                 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
16405                 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff,
16406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16407                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16408         },
16409         {
16410         .description = "pop_vlan",
16411         .field_bit_size = 1,
16412         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16413         },
16414         {
16415         .description = "meter",
16416         .field_bit_size = 1,
16417         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16418         },
16419         {
16420         .description = "mirror",
16421         .field_bit_size = 2,
16422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16423         },
16424         {
16425         .description = "drop",
16426         .field_bit_size = 1,
16427         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16428         },
16429         {
16430         .description = "hit",
16431         .field_bit_size = 1,
16432         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16433         },
16434         {
16435         .description = "type",
16436         .field_bit_size = 1,
16437         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16438         },
16439         /* class_tid: 2, stingray, table: l2_cntxt_tcam_vfr_0 */
16440         {
16441         .description = "act_record_ptr",
16442         .field_bit_size = 16,
16443         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16444         },
16445         {
16446         .description = "reserved",
16447         .field_bit_size = 1,
16448         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16449         },
16450         {
16451         .description = "l2_byp_lkup_en",
16452         .field_bit_size = 1,
16453         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16454         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16456         },
16457         {
16458         .description = "parif",
16459         .field_bit_size = 4,
16460         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16461         .result_operand = {
16462                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16463                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16466         },
16467         {
16468         .description = "allowed_pri",
16469         .field_bit_size = 8,
16470         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16471         },
16472         {
16473         .description = "default_pri",
16474         .field_bit_size = 3,
16475         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16476         },
16477         {
16478         .description = "allowed_tpid",
16479         .field_bit_size = 6,
16480         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16481         },
16482         {
16483         .description = "default_tpid",
16484         .field_bit_size = 3,
16485         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16486         },
16487         {
16488         .description = "bd_act_en",
16489         .field_bit_size = 1,
16490         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16491         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16493         },
16494         {
16495         .description = "sp_rec_ptr",
16496         .field_bit_size = 16,
16497         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16498         },
16499         {
16500         .description = "byp_sp_lkup",
16501         .field_bit_size = 1,
16502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16503         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16505         },
16506         {
16507         .description = "pri_anti_spoof_ctl",
16508         .field_bit_size = 2,
16509         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16510         },
16511         {
16512         .description = "tpid_anti_spoof_ctl",
16513         .field_bit_size = 2,
16514         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16515         },
16516         /* class_tid: 2, stingray, table: l2_cntxt_cache_0 */
16517         {
16518         .description = "l2_cntxt_id",
16519         .field_bit_size = 10,
16520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16521         .result_operand = {
16522                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16523                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16525                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16526         },
16527         /* class_tid: 2, stingray, table: l2_cntxt_tcam_0 */
16528         {
16529         .description = "l2_cntxt_id",
16530         .field_bit_size = 10,
16531         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16532         .result_operand = {
16533                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16534                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16537         },
16538         {
16539         .description = "prof_func_id",
16540         .field_bit_size = 7,
16541         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16542         .result_operand = {
16543                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16544                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16546                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16547         },
16548         {
16549         .description = "l2_byp_lkup_en",
16550         .field_bit_size = 1,
16551         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16552         },
16553         {
16554         .description = "parif",
16555         .field_bit_size = 4,
16556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16557         .result_operand = {
16558                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16559                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16562         },
16563         {
16564         .description = "allowed_pri",
16565         .field_bit_size = 8,
16566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16567         },
16568         {
16569         .description = "default_pri",
16570         .field_bit_size = 3,
16571         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16572         },
16573         {
16574         .description = "allowed_tpid",
16575         .field_bit_size = 6,
16576         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16577         },
16578         {
16579         .description = "default_tpid",
16580         .field_bit_size = 3,
16581         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16582         },
16583         {
16584         .description = "bd_act_en",
16585         .field_bit_size = 1,
16586         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16587         },
16588         {
16589         .description = "sp_rec_ptr",
16590         .field_bit_size = 16,
16591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16592         },
16593         {
16594         .description = "byp_sp_lkup",
16595         .field_bit_size = 1,
16596         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16597         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16599         },
16600         {
16601         .description = "pri_anti_spoof_ctl",
16602         .field_bit_size = 2,
16603         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16604         },
16605         {
16606         .description = "tpid_anti_spoof_ctl",
16607         .field_bit_size = 2,
16608         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16609         },
16610         /* class_tid: 2, stingray, table: parif_def_lkup_arec_ptr_0 */
16611         {
16612         .description = "act_rec_ptr",
16613         .field_bit_size = 32,
16614         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16615         .result_operand = {
16616                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16617                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16620         },
16621         /* class_tid: 2, stingray, table: parif_def_arec_ptr_0 */
16622         {
16623         .description = "act_rec_ptr",
16624         .field_bit_size = 32,
16625         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16626         .result_operand = {
16627                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16628                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16629                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16631         },
16632         /* class_tid: 2, stingray, table: parif_def_err_arec_ptr_0 */
16633         {
16634         .description = "act_rec_ptr",
16635         .field_bit_size = 32,
16636         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16637         .result_operand = {
16638                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16639                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16640                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16641                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16642         },
16643         /* class_tid: 3, stingray, table: egr_int_vtag_encap_record_0 */
16644         {
16645         .description = "ecv_tun_type",
16646         .field_bit_size = 3,
16647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16648         },
16649         {
16650         .description = "ecv_l4_type",
16651         .field_bit_size = 3,
16652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16653         },
16654         {
16655         .description = "ecv_l3_type",
16656         .field_bit_size = 3,
16657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16658         },
16659         {
16660         .description = "ecv_l2_en",
16661         .field_bit_size = 1,
16662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16663         },
16664         {
16665         .description = "ecv_vtag_type",
16666         .field_bit_size = 4,
16667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16668         .result_operand = {
16669                 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
16670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16672         },
16673         {
16674         .description = "ecv_custom_en",
16675         .field_bit_size = 1,
16676         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16677         },
16678         {
16679         .description = "ecv_valid",
16680         .field_bit_size = 1,
16681         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16682         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16684         },
16685         {
16686         .description = "vtag_tpid",
16687         .field_bit_size = 16,
16688         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16689         .result_operand = {0x81, 0x00}
16690         },
16691         {
16692         .description = "vtag_vid",
16693         .field_bit_size = 12,
16694         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16695         .result_operand = {
16696                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
16697                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
16698                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16699                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16700         },
16701         {
16702         .description = "vtag_de",
16703         .field_bit_size = 1,
16704         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16705         },
16706         {
16707         .description = "vtag_pcp",
16708         .field_bit_size = 3,
16709         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16710         },
16711         {
16712         .description = "spare",
16713         .field_bit_size = 16,
16714         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16715         },
16716         /* class_tid: 3, stingray, table: egr_int_full_act_record_0 */
16717         {
16718         .description = "flow_cntr_ptr",
16719         .field_bit_size = 14,
16720         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16721         },
16722         {
16723         .description = "age_enable",
16724         .field_bit_size = 1,
16725         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16726         },
16727         {
16728         .description = "agg_cntr_en",
16729         .field_bit_size = 1,
16730         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16731         },
16732         {
16733         .description = "rate_cntr_en",
16734         .field_bit_size = 1,
16735         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16736         },
16737         {
16738         .description = "flow_cntr_en",
16739         .field_bit_size = 1,
16740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16741         },
16742         {
16743         .description = "tcpflags_key",
16744         .field_bit_size = 8,
16745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16746         },
16747         {
16748         .description = "tcpflags_mir",
16749         .field_bit_size = 1,
16750         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16751         },
16752         {
16753         .description = "tcpflags_match",
16754         .field_bit_size = 1,
16755         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16756         },
16757         {
16758         .description = "encap_ptr",
16759         .field_bit_size = 11,
16760         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16761         .result_operand = {
16762                 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
16763                 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
16764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16766         },
16767         {
16768         .description = "dst_ip_ptr",
16769         .field_bit_size = 10,
16770         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16771         },
16772         {
16773         .description = "tcp_dst_port",
16774         .field_bit_size = 16,
16775         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16776         },
16777         {
16778         .description = "src_ip_ptr",
16779         .field_bit_size = 10,
16780         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16781         },
16782         {
16783         .description = "tcp_src_port",
16784         .field_bit_size = 16,
16785         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16786         },
16787         {
16788         .description = "meter_id",
16789         .field_bit_size = 10,
16790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16791         },
16792         {
16793         .description = "l3_rdir",
16794         .field_bit_size = 1,
16795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16796         },
16797         {
16798         .description = "tl3_rdir",
16799         .field_bit_size = 1,
16800         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16801         },
16802         {
16803         .description = "l3_ttl_dec",
16804         .field_bit_size = 1,
16805         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16806         },
16807         {
16808         .description = "tl3_ttl_dec",
16809         .field_bit_size = 1,
16810         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16811         },
16812         {
16813         .description = "decap_func",
16814         .field_bit_size = 4,
16815         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16816         },
16817         {
16818         .description = "vnic_or_vport",
16819         .field_bit_size = 12,
16820         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16821         .result_operand = {
16822                 (BNXT_ULP_SYM_STINGRAY_LOOPBACK_PORT >> 8) & 0xff,
16823                 BNXT_ULP_SYM_STINGRAY_LOOPBACK_PORT & 0xff,
16824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16825                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16826         },
16827         {
16828         .description = "pop_vlan",
16829         .field_bit_size = 1,
16830         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16831         },
16832         {
16833         .description = "meter",
16834         .field_bit_size = 1,
16835         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16836         },
16837         {
16838         .description = "mirror",
16839         .field_bit_size = 2,
16840         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16841         },
16842         {
16843         .description = "drop",
16844         .field_bit_size = 1,
16845         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16846         },
16847         {
16848         .description = "hit",
16849         .field_bit_size = 1,
16850         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16851         },
16852         {
16853         .description = "type",
16854         .field_bit_size = 1,
16855         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16856         },
16857         /* class_tid: 3, stingray, table: egr_l2_cntxt_cache_0 */
16858         /* class_tid: 3, stingray, table: egr_l2_cntxt_tcam_0 */
16859         {
16860         .description = "act_record_ptr",
16861         .field_bit_size = 16,
16862         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16863         },
16864         {
16865         .description = "reserved",
16866         .field_bit_size = 1,
16867         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16868         },
16869         {
16870         .description = "l2_byp_lkup_en",
16871         .field_bit_size = 1,
16872         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16873         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16875         },
16876         {
16877         .description = "parif",
16878         .field_bit_size = 4,
16879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16880         },
16881         {
16882         .description = "allowed_pri",
16883         .field_bit_size = 8,
16884         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16885         },
16886         {
16887         .description = "default_pri",
16888         .field_bit_size = 3,
16889         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16890         },
16891         {
16892         .description = "allowed_tpid",
16893         .field_bit_size = 6,
16894         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16895         },
16896         {
16897         .description = "default_tpid",
16898         .field_bit_size = 3,
16899         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16900         },
16901         {
16902         .description = "bd_act_en",
16903         .field_bit_size = 1,
16904         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16905         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16906                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16907         },
16908         {
16909         .description = "sp_rec_ptr",
16910         .field_bit_size = 16,
16911         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16912         },
16913         {
16914         .description = "byp_sp_lkup",
16915         .field_bit_size = 1,
16916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16917         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16919         },
16920         {
16921         .description = "pri_anti_spoof_ctl",
16922         .field_bit_size = 2,
16923         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16924         },
16925         {
16926         .description = "tpid_anti_spoof_ctl",
16927         .field_bit_size = 2,
16928         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16929         },
16930         /* class_tid: 3, stingray, table: ing_int_full_act_record_0 */
16931         {
16932         .description = "flow_cntr_ptr",
16933         .field_bit_size = 14,
16934         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16935         },
16936         {
16937         .description = "age_enable",
16938         .field_bit_size = 1,
16939         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16940         },
16941         {
16942         .description = "agg_cntr_en",
16943         .field_bit_size = 1,
16944         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16945         },
16946         {
16947         .description = "rate_cntr_en",
16948         .field_bit_size = 1,
16949         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16950         },
16951         {
16952         .description = "flow_cntr_en",
16953         .field_bit_size = 1,
16954         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16955         },
16956         {
16957         .description = "tcpflags_key",
16958         .field_bit_size = 8,
16959         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16960         },
16961         {
16962         .description = "tcpflags_mir",
16963         .field_bit_size = 1,
16964         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16965         },
16966         {
16967         .description = "tcpflags_match",
16968         .field_bit_size = 1,
16969         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16970         },
16971         {
16972         .description = "encap_ptr",
16973         .field_bit_size = 11,
16974         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16975         },
16976         {
16977         .description = "dst_ip_ptr",
16978         .field_bit_size = 10,
16979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16980         },
16981         {
16982         .description = "tcp_dst_port",
16983         .field_bit_size = 16,
16984         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16985         },
16986         {
16987         .description = "src_ip_ptr",
16988         .field_bit_size = 10,
16989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16990         },
16991         {
16992         .description = "tcp_src_port",
16993         .field_bit_size = 16,
16994         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16995         },
16996         {
16997         .description = "meter_id",
16998         .field_bit_size = 10,
16999         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17000         },
17001         {
17002         .description = "l3_rdir",
17003         .field_bit_size = 1,
17004         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17005         },
17006         {
17007         .description = "tl3_rdir",
17008         .field_bit_size = 1,
17009         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17010         },
17011         {
17012         .description = "l3_ttl_dec",
17013         .field_bit_size = 1,
17014         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17015         },
17016         {
17017         .description = "tl3_ttl_dec",
17018         .field_bit_size = 1,
17019         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17020         },
17021         {
17022         .description = "decap_func",
17023         .field_bit_size = 4,
17024         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17025         },
17026         {
17027         .description = "vnic_or_vport",
17028         .field_bit_size = 12,
17029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17030         .result_operand = {
17031                 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
17032                 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff,
17033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17035         },
17036         {
17037         .description = "pop_vlan",
17038         .field_bit_size = 1,
17039         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17040         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17042         },
17043         {
17044         .description = "meter",
17045         .field_bit_size = 1,
17046         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17047         },
17048         {
17049         .description = "mirror",
17050         .field_bit_size = 2,
17051         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17052         },
17053         {
17054         .description = "drop",
17055         .field_bit_size = 1,
17056         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17057         },
17058         {
17059         .description = "hit",
17060         .field_bit_size = 1,
17061         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17062         },
17063         {
17064         .description = "type",
17065         .field_bit_size = 1,
17066         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17067         },
17068         /* class_tid: 3, stingray, table: ing_l2_cntxt_dtagged_0 */
17069         {
17070         .description = "act_record_ptr",
17071         .field_bit_size = 16,
17072         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17073         .result_operand = {
17074                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17075                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17078         },
17079         {
17080         .description = "reserved",
17081         .field_bit_size = 1,
17082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17083         },
17084         {
17085         .description = "l2_byp_lkup_en",
17086         .field_bit_size = 1,
17087         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17088         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17089                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17090         },
17091         {
17092         .description = "parif",
17093         .field_bit_size = 4,
17094         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17095         },
17096         {
17097         .description = "allowed_pri",
17098         .field_bit_size = 8,
17099         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17100         },
17101         {
17102         .description = "default_pri",
17103         .field_bit_size = 3,
17104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17105         },
17106         {
17107         .description = "allowed_tpid",
17108         .field_bit_size = 6,
17109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17110         },
17111         {
17112         .description = "default_tpid",
17113         .field_bit_size = 3,
17114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17115         },
17116         {
17117         .description = "bd_act_en",
17118         .field_bit_size = 1,
17119         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17120         },
17121         {
17122         .description = "sp_rec_ptr",
17123         .field_bit_size = 16,
17124         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17125         },
17126         {
17127         .description = "byp_sp_lkup",
17128         .field_bit_size = 1,
17129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17130         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17131                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17132         },
17133         {
17134         .description = "pri_anti_spoof_ctl",
17135         .field_bit_size = 2,
17136         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17137         },
17138         {
17139         .description = "tpid_anti_spoof_ctl",
17140         .field_bit_size = 2,
17141         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17142         },
17143         /* class_tid: 3, stingray, table: ing_l2_cntxt_stagged_0 */
17144         {
17145         .description = "act_record_ptr",
17146         .field_bit_size = 16,
17147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17148         .result_operand = {
17149                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17150                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17153         },
17154         {
17155         .description = "reserved",
17156         .field_bit_size = 1,
17157         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17158         },
17159         {
17160         .description = "l2_byp_lkup_en",
17161         .field_bit_size = 1,
17162         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17163         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17165         },
17166         {
17167         .description = "parif",
17168         .field_bit_size = 4,
17169         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17170         },
17171         {
17172         .description = "allowed_pri",
17173         .field_bit_size = 8,
17174         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17175         },
17176         {
17177         .description = "default_pri",
17178         .field_bit_size = 3,
17179         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17180         },
17181         {
17182         .description = "allowed_tpid",
17183         .field_bit_size = 6,
17184         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17185         },
17186         {
17187         .description = "default_tpid",
17188         .field_bit_size = 3,
17189         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17190         },
17191         {
17192         .description = "bd_act_en",
17193         .field_bit_size = 1,
17194         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17195         },
17196         {
17197         .description = "sp_rec_ptr",
17198         .field_bit_size = 16,
17199         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17200         },
17201         {
17202         .description = "byp_sp_lkup",
17203         .field_bit_size = 1,
17204         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17205         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17207         },
17208         {
17209         .description = "pri_anti_spoof_ctl",
17210         .field_bit_size = 2,
17211         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17212         },
17213         {
17214         .description = "tpid_anti_spoof_ctl",
17215         .field_bit_size = 2,
17216         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17217         },
17218         /* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */
17219         {
17220         .description = "l2_cntxt_id",
17221         .field_bit_size = 10,
17222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17223         .result_operand = {
17224                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17225                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17228         },
17229         /* class_tid: 4, stingray, table: egr_l2_cntxt_tcam_0 */
17230         {
17231         .description = "l2_cntxt_id",
17232         .field_bit_size = 10,
17233         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17234         .result_operand = {
17235                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17236                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17239         },
17240         {
17241         .description = "prof_func_id",
17242         .field_bit_size = 7,
17243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17244         .result_operand = {
17245                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
17246                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
17247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17249         },
17250         {
17251         .description = "l2_byp_lkup_en",
17252         .field_bit_size = 1,
17253         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17254         },
17255         {
17256         .description = "parif",
17257         .field_bit_size = 4,
17258         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17259         .result_operand = {
17260                 BNXT_ULP_SYM_VF_FUNC_PARIF,
17261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17263         },
17264         {
17265         .description = "allowed_pri",
17266         .field_bit_size = 8,
17267         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17268         },
17269         {
17270         .description = "default_pri",
17271         .field_bit_size = 3,
17272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17273         },
17274         {
17275         .description = "allowed_tpid",
17276         .field_bit_size = 6,
17277         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17278         },
17279         {
17280         .description = "default_tpid",
17281         .field_bit_size = 3,
17282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17283         },
17284         {
17285         .description = "bd_act_en",
17286         .field_bit_size = 1,
17287         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17288         },
17289         {
17290         .description = "sp_rec_ptr",
17291         .field_bit_size = 16,
17292         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17293         },
17294         {
17295         .description = "byp_sp_lkup",
17296         .field_bit_size = 1,
17297         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17298         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17300         },
17301         {
17302         .description = "pri_anti_spoof_ctl",
17303         .field_bit_size = 2,
17304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17305         },
17306         {
17307         .description = "tpid_anti_spoof_ctl",
17308         .field_bit_size = 2,
17309         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17310         },
17311         /* class_tid: 4, stingray, table: egr_parif_def_lkup_arec_ptr_0 */
17312         {
17313         .description = "act_rec_ptr",
17314         .field_bit_size = 32,
17315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17316         .result_operand = {
17317                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17318                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17320                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17321         },
17322         /* class_tid: 4, stingray, table: egr_parif_def_arec_ptr_0 */
17323         {
17324         .description = "act_rec_ptr",
17325         .field_bit_size = 32,
17326         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17327         .result_operand = {
17328                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17329                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17332         },
17333         /* class_tid: 4, stingray, table: egr_parif_def_err_arec_ptr_0 */
17334         {
17335         .description = "act_rec_ptr",
17336         .field_bit_size = 32,
17337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17338         .result_operand = {
17339                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17340                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17341                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17342                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17343         },
17344         /* class_tid: 4, stingray, table: ing_int_full_act_record_0 */
17345         {
17346         .description = "flow_cntr_ptr",
17347         .field_bit_size = 14,
17348         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17349         },
17350         {
17351         .description = "age_enable",
17352         .field_bit_size = 1,
17353         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17354         },
17355         {
17356         .description = "agg_cntr_en",
17357         .field_bit_size = 1,
17358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17359         },
17360         {
17361         .description = "rate_cntr_en",
17362         .field_bit_size = 1,
17363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17364         },
17365         {
17366         .description = "flow_cntr_en",
17367         .field_bit_size = 1,
17368         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17369         },
17370         {
17371         .description = "tcpflags_key",
17372         .field_bit_size = 8,
17373         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17374         },
17375         {
17376         .description = "tcpflags_mir",
17377         .field_bit_size = 1,
17378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17379         },
17380         {
17381         .description = "tcpflags_match",
17382         .field_bit_size = 1,
17383         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17384         },
17385         {
17386         .description = "encap_ptr",
17387         .field_bit_size = 11,
17388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17389         },
17390         {
17391         .description = "dst_ip_ptr",
17392         .field_bit_size = 10,
17393         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17394         },
17395         {
17396         .description = "tcp_dst_port",
17397         .field_bit_size = 16,
17398         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17399         },
17400         {
17401         .description = "src_ip_ptr",
17402         .field_bit_size = 10,
17403         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17404         },
17405         {
17406         .description = "tcp_src_port",
17407         .field_bit_size = 16,
17408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17409         },
17410         {
17411         .description = "meter_id",
17412         .field_bit_size = 10,
17413         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17414         },
17415         {
17416         .description = "l3_rdir",
17417         .field_bit_size = 1,
17418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17419         },
17420         {
17421         .description = "tl3_rdir",
17422         .field_bit_size = 1,
17423         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17424         },
17425         {
17426         .description = "l3_ttl_dec",
17427         .field_bit_size = 1,
17428         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17429         },
17430         {
17431         .description = "tl3_ttl_dec",
17432         .field_bit_size = 1,
17433         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17434         },
17435         {
17436         .description = "decap_func",
17437         .field_bit_size = 4,
17438         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17439         },
17440         {
17441         .description = "vnic_or_vport",
17442         .field_bit_size = 12,
17443         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17444         .result_operand = {
17445                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
17446                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
17447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17448                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17449         },
17450         {
17451         .description = "pop_vlan",
17452         .field_bit_size = 1,
17453         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17454         },
17455         {
17456         .description = "meter",
17457         .field_bit_size = 1,
17458         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17459         },
17460         {
17461         .description = "mirror",
17462         .field_bit_size = 2,
17463         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17464         },
17465         {
17466         .description = "drop",
17467         .field_bit_size = 1,
17468         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17469         },
17470         {
17471         .description = "hit",
17472         .field_bit_size = 1,
17473         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17474         },
17475         {
17476         .description = "type",
17477         .field_bit_size = 1,
17478         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17479         },
17480         /* class_tid: 4, stingray, table: ing_l2_cntxt_tcam_0 */
17481         {
17482         .description = "act_record_ptr",
17483         .field_bit_size = 16,
17484         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17485         .result_operand = {
17486                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17487                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17490         },
17491         {
17492         .description = "reserved",
17493         .field_bit_size = 1,
17494         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17495         },
17496         {
17497         .description = "l2_byp_lkup_en",
17498         .field_bit_size = 1,
17499         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17500         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17501                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17502         },
17503         {
17504         .description = "parif",
17505         .field_bit_size = 4,
17506         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17507         },
17508         {
17509         .description = "allowed_pri",
17510         .field_bit_size = 8,
17511         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17512         },
17513         {
17514         .description = "default_pri",
17515         .field_bit_size = 3,
17516         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17517         },
17518         {
17519         .description = "allowed_tpid",
17520         .field_bit_size = 6,
17521         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17522         },
17523         {
17524         .description = "default_tpid",
17525         .field_bit_size = 3,
17526         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17527         },
17528         {
17529         .description = "bd_act_en",
17530         .field_bit_size = 1,
17531         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17532         },
17533         {
17534         .description = "sp_rec_ptr",
17535         .field_bit_size = 16,
17536         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17537         },
17538         {
17539         .description = "byp_sp_lkup",
17540         .field_bit_size = 1,
17541         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17542         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17544         },
17545         {
17546         .description = "pri_anti_spoof_ctl",
17547         .field_bit_size = 2,
17548         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17549         },
17550         {
17551         .description = "tpid_anti_spoof_ctl",
17552         .field_bit_size = 2,
17553         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17554         },
17555         /* class_tid: 5, stingray, table: int_full_act_record_0 */
17556         {
17557         .description = "flow_cntr_ptr",
17558         .field_bit_size = 14,
17559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17560         },
17561         {
17562         .description = "age_enable",
17563         .field_bit_size = 1,
17564         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17565         },
17566         {
17567         .description = "agg_cntr_en",
17568         .field_bit_size = 1,
17569         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17570         },
17571         {
17572         .description = "rate_cntr_en",
17573         .field_bit_size = 1,
17574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17575         },
17576         {
17577         .description = "flow_cntr_en",
17578         .field_bit_size = 1,
17579         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17580         },
17581         {
17582         .description = "tcpflags_key",
17583         .field_bit_size = 8,
17584         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17585         },
17586         {
17587         .description = "tcpflags_mir",
17588         .field_bit_size = 1,
17589         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17590         },
17591         {
17592         .description = "tcpflags_match",
17593         .field_bit_size = 1,
17594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17595         },
17596         {
17597         .description = "encap_ptr",
17598         .field_bit_size = 11,
17599         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17600         },
17601         {
17602         .description = "dst_ip_ptr",
17603         .field_bit_size = 10,
17604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17605         },
17606         {
17607         .description = "tcp_dst_port",
17608         .field_bit_size = 16,
17609         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17610         },
17611         {
17612         .description = "src_ip_ptr",
17613         .field_bit_size = 10,
17614         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17615         },
17616         {
17617         .description = "tcp_src_port",
17618         .field_bit_size = 16,
17619         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17620         },
17621         {
17622         .description = "meter_id",
17623         .field_bit_size = 10,
17624         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17625         },
17626         {
17627         .description = "l3_rdir",
17628         .field_bit_size = 1,
17629         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17630         },
17631         {
17632         .description = "tl3_rdir",
17633         .field_bit_size = 1,
17634         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17635         },
17636         {
17637         .description = "l3_ttl_dec",
17638         .field_bit_size = 1,
17639         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17640         },
17641         {
17642         .description = "tl3_ttl_dec",
17643         .field_bit_size = 1,
17644         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17645         },
17646         {
17647         .description = "decap_func",
17648         .field_bit_size = 4,
17649         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17650         },
17651         {
17652         .description = "vnic_or_vport",
17653         .field_bit_size = 12,
17654         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17655         .result_operand = {
17656                 (BNXT_ULP_SYM_STINGRAY_LOOPBACK_PORT >> 8) & 0xff,
17657                 BNXT_ULP_SYM_STINGRAY_LOOPBACK_PORT & 0xff,
17658                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17659                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17660         },
17661         {
17662         .description = "pop_vlan",
17663         .field_bit_size = 1,
17664         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17665         },
17666         {
17667         .description = "meter",
17668         .field_bit_size = 1,
17669         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17670         },
17671         {
17672         .description = "mirror",
17673         .field_bit_size = 2,
17674         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17675         },
17676         {
17677         .description = "drop",
17678         .field_bit_size = 1,
17679         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17680         },
17681         {
17682         .description = "hit",
17683         .field_bit_size = 1,
17684         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17685         },
17686         {
17687         .description = "type",
17688         .field_bit_size = 1,
17689         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17690         },
17691         /* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */
17692         {
17693         .description = "l2_cntxt_id",
17694         .field_bit_size = 10,
17695         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17696         .result_operand = {
17697                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17698                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17699                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17700                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17701         },
17702         {
17703         .description = "prof_func_id",
17704         .field_bit_size = 7,
17705         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17706         .result_operand = {
17707                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
17708                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
17709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17711         },
17712         {
17713         .description = "l2_byp_lkup_en",
17714         .field_bit_size = 1,
17715         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17716         },
17717         {
17718         .description = "parif",
17719         .field_bit_size = 4,
17720         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17721         .result_operand = {
17722                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
17723                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
17724                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17726         },
17727         {
17728         .description = "allowed_pri",
17729         .field_bit_size = 8,
17730         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17731         },
17732         {
17733         .description = "default_pri",
17734         .field_bit_size = 3,
17735         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17736         },
17737         {
17738         .description = "allowed_tpid",
17739         .field_bit_size = 6,
17740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17741         },
17742         {
17743         .description = "default_tpid",
17744         .field_bit_size = 3,
17745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17746         },
17747         {
17748         .description = "bd_act_en",
17749         .field_bit_size = 1,
17750         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17751         },
17752         {
17753         .description = "sp_rec_ptr",
17754         .field_bit_size = 16,
17755         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17756         },
17757         {
17758         .description = "byp_sp_lkup",
17759         .field_bit_size = 1,
17760         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17761         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17762                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17763         },
17764         {
17765         .description = "pri_anti_spoof_ctl",
17766         .field_bit_size = 2,
17767         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17768         },
17769         {
17770         .description = "tpid_anti_spoof_ctl",
17771         .field_bit_size = 2,
17772         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17773         },
17774         /* class_tid: 6, stingray, table: profile_tcam_cache_0 */
17775         {
17776         .description = "em_profile_id",
17777         .field_bit_size = 10,
17778         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17779         .result_operand = {
17780                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17781                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17782                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17783                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17784         },
17785         /* class_tid: 6, stingray, table: profile_tcam_0 */
17786         {
17787         .description = "wc_key_id",
17788         .field_bit_size = 4,
17789         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17790         },
17791         {
17792         .description = "wc_profile_id",
17793         .field_bit_size = 8,
17794         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17795         },
17796         {
17797         .description = "wc_search_en",
17798         .field_bit_size = 1,
17799         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17800         },
17801         {
17802         .description = "em_key_mask",
17803         .field_bit_size = 10,
17804         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17805         .result_operand = {
17806                 (0x0005 >> 8) & 0xff,
17807                 0x0005 & 0xff,
17808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17810         },
17811         {
17812         .description = "em_key_id",
17813         .field_bit_size = 5,
17814         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17815         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
17816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17817         },
17818         {
17819         .description = "em_profile_id",
17820         .field_bit_size = 8,
17821         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17822         .result_operand = {
17823                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17824                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17825                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17826                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17827         },
17828         {
17829         .description = "em_search_en",
17830         .field_bit_size = 1,
17831         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17832         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17834         },
17835         {
17836         .description = "pl_byp_lkup_en",
17837         .field_bit_size = 1,
17838         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17839         },
17840         /* class_tid: 6, stingray, table: ext_em_0 */
17841         {
17842         .description = "act_rec_ptr",
17843         .field_bit_size = 33,
17844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17845         .result_operand = {
17846                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17847                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17850         },
17851         {
17852         .description = "ext_flow_ctr",
17853         .field_bit_size = 1,
17854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17855         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17857         },
17858         {
17859         .description = "act_rec_int",
17860         .field_bit_size = 1,
17861         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17862         },
17863         {
17864         .description = "act_rec_size",
17865         .field_bit_size = 5,
17866         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17867         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17869         },
17870         {
17871         .description = "key_size",
17872         .field_bit_size = 9,
17873         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17874         .result_operand = {
17875                 (0x00c5 >> 8) & 0xff,
17876                 0x00c5 & 0xff,
17877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17879         },
17880         {
17881         .description = "reserved",
17882         .field_bit_size = 11,
17883         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17884         },
17885         {
17886         .description = "strength",
17887         .field_bit_size = 2,
17888         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17889         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
17890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17891         },
17892         {
17893         .description = "l1_cacheable",
17894         .field_bit_size = 1,
17895         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17896         },
17897         {
17898         .description = "valid",
17899         .field_bit_size = 1,
17900         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17901         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17903         },
17904         /* class_tid: 6, stingray, table: int_em_0 */
17905         {
17906         .description = "act_rec_ptr",
17907         .field_bit_size = 33,
17908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17909         .result_operand = {
17910                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17911                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17914         },
17915         {
17916         .description = "ext_flow_ctr",
17917         .field_bit_size = 1,
17918         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17919         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17921         },
17922         {
17923         .description = "act_rec_int",
17924         .field_bit_size = 1,
17925         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17926         },
17927         {
17928         .description = "act_rec_size",
17929         .field_bit_size = 5,
17930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17931         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17933         },
17934         {
17935         .description = "key_size",
17936         .field_bit_size = 9,
17937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17938         .result_operand = {
17939                 (0x00c5 >> 8) & 0xff,
17940                 0x00c5 & 0xff,
17941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17943         },
17944         {
17945         .description = "reserved",
17946         .field_bit_size = 11,
17947         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17948         },
17949         {
17950         .description = "strength",
17951         .field_bit_size = 2,
17952         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17953         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
17954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17955         },
17956         {
17957         .description = "l1_cacheable",
17958         .field_bit_size = 1,
17959         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17960         },
17961         {
17962         .description = "valid",
17963         .field_bit_size = 1,
17964         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17965         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17967         },
17968         /* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */
17969         {
17970         .description = "l2_cntxt_id",
17971         .field_bit_size = 10,
17972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17973         .result_operand = {
17974                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17975                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17978         },
17979         {
17980         .description = "prof_func_id",
17981         .field_bit_size = 7,
17982         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17983         .result_operand = {
17984                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
17985                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
17986                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17987                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17988         },
17989         {
17990         .description = "l2_byp_lkup_en",
17991         .field_bit_size = 1,
17992         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17993         },
17994         {
17995         .description = "parif",
17996         .field_bit_size = 4,
17997         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17998         .result_operand = {
17999                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18000                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18002                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18003         },
18004         {
18005         .description = "allowed_pri",
18006         .field_bit_size = 8,
18007         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18008         },
18009         {
18010         .description = "default_pri",
18011         .field_bit_size = 3,
18012         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18013         },
18014         {
18015         .description = "allowed_tpid",
18016         .field_bit_size = 6,
18017         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18018         },
18019         {
18020         .description = "default_tpid",
18021         .field_bit_size = 3,
18022         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18023         },
18024         {
18025         .description = "bd_act_en",
18026         .field_bit_size = 1,
18027         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18028         },
18029         {
18030         .description = "sp_rec_ptr",
18031         .field_bit_size = 16,
18032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18033         },
18034         {
18035         .description = "byp_sp_lkup",
18036         .field_bit_size = 1,
18037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18038         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18039                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18040         },
18041         {
18042         .description = "pri_anti_spoof_ctl",
18043         .field_bit_size = 2,
18044         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18045         },
18046         {
18047         .description = "tpid_anti_spoof_ctl",
18048         .field_bit_size = 2,
18049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18050         },
18051         /* class_tid: 7, stingray, table: profile_tcam_cache_0 */
18052         {
18053         .description = "em_profile_id",
18054         .field_bit_size = 10,
18055         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18056         .result_operand = {
18057                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18058                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18061         },
18062         /* class_tid: 7, stingray, table: profile_tcam_0 */
18063         {
18064         .description = "wc_key_id",
18065         .field_bit_size = 4,
18066         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18067         },
18068         {
18069         .description = "wc_profile_id",
18070         .field_bit_size = 8,
18071         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18072         },
18073         {
18074         .description = "wc_search_en",
18075         .field_bit_size = 1,
18076         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18077         },
18078         {
18079         .description = "em_key_mask",
18080         .field_bit_size = 10,
18081         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18082         .result_operand = {
18083                 (0x0005 >> 8) & 0xff,
18084                 0x0005 & 0xff,
18085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18087         },
18088         {
18089         .description = "em_key_id",
18090         .field_bit_size = 5,
18091         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18092         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18094         },
18095         {
18096         .description = "em_profile_id",
18097         .field_bit_size = 8,
18098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18099         .result_operand = {
18100                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18101                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18102                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18103                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18104         },
18105         {
18106         .description = "em_search_en",
18107         .field_bit_size = 1,
18108         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18109         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18111         },
18112         {
18113         .description = "pl_byp_lkup_en",
18114         .field_bit_size = 1,
18115         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18116         },
18117         /* class_tid: 7, stingray, table: ext_em_0 */
18118         {
18119         .description = "act_rec_ptr",
18120         .field_bit_size = 33,
18121         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18122         .result_operand = {
18123                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18124                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18127         },
18128         {
18129         .description = "ext_flow_ctr",
18130         .field_bit_size = 1,
18131         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18132         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18134         },
18135         {
18136         .description = "act_rec_int",
18137         .field_bit_size = 1,
18138         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18139         },
18140         {
18141         .description = "act_rec_size",
18142         .field_bit_size = 5,
18143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18144         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18146         },
18147         {
18148         .description = "key_size",
18149         .field_bit_size = 9,
18150         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18151         .result_operand = {
18152                 (0x00c5 >> 8) & 0xff,
18153                 0x00c5 & 0xff,
18154                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18155                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18156         },
18157         {
18158         .description = "reserved",
18159         .field_bit_size = 11,
18160         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18161         },
18162         {
18163         .description = "strength",
18164         .field_bit_size = 2,
18165         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18166         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18168         },
18169         {
18170         .description = "l1_cacheable",
18171         .field_bit_size = 1,
18172         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18173         },
18174         {
18175         .description = "valid",
18176         .field_bit_size = 1,
18177         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18178         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18180         },
18181         /* class_tid: 7, stingray, table: int_em_0 */
18182         {
18183         .description = "act_rec_ptr",
18184         .field_bit_size = 33,
18185         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18186         .result_operand = {
18187                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18188                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18191         },
18192         {
18193         .description = "ext_flow_ctr",
18194         .field_bit_size = 1,
18195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18196         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18197                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18198         },
18199         {
18200         .description = "act_rec_int",
18201         .field_bit_size = 1,
18202         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18203         },
18204         {
18205         .description = "act_rec_size",
18206         .field_bit_size = 5,
18207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18208         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18210         },
18211         {
18212         .description = "key_size",
18213         .field_bit_size = 9,
18214         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18215         .result_operand = {
18216                 (0x00c5 >> 8) & 0xff,
18217                 0x00c5 & 0xff,
18218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18220         },
18221         {
18222         .description = "reserved",
18223         .field_bit_size = 11,
18224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18225         },
18226         {
18227         .description = "strength",
18228         .field_bit_size = 2,
18229         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18230         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18232         },
18233         {
18234         .description = "l1_cacheable",
18235         .field_bit_size = 1,
18236         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18237         },
18238         {
18239         .description = "valid",
18240         .field_bit_size = 1,
18241         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18242         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18244         },
18245         /* class_tid: 8, stingray, table: l2_cntxt_cache_0 */
18246         {
18247         .description = "l2_cntxt_id",
18248         .field_bit_size = 10,
18249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18250         .result_operand = {
18251                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18252                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18255         },
18256         /* class_tid: 8, stingray, table: l2_cntxt_tcam_0 */
18257         {
18258         .description = "l2_cntxt_id",
18259         .field_bit_size = 10,
18260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18261         .result_operand = {
18262                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18263                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18266         },
18267         {
18268         .description = "prof_func_id",
18269         .field_bit_size = 7,
18270         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18271         .result_operand = {
18272                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18273                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18274                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18276         },
18277         {
18278         .description = "l2_byp_lkup_en",
18279         .field_bit_size = 1,
18280         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18281         },
18282         {
18283         .description = "parif",
18284         .field_bit_size = 4,
18285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18286         .result_operand = {
18287                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18288                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18291         },
18292         {
18293         .description = "allowed_pri",
18294         .field_bit_size = 8,
18295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18296         },
18297         {
18298         .description = "default_pri",
18299         .field_bit_size = 3,
18300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18301         },
18302         {
18303         .description = "allowed_tpid",
18304         .field_bit_size = 6,
18305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18306         },
18307         {
18308         .description = "default_tpid",
18309         .field_bit_size = 3,
18310         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18311         },
18312         {
18313         .description = "bd_act_en",
18314         .field_bit_size = 1,
18315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18316         },
18317         {
18318         .description = "sp_rec_ptr",
18319         .field_bit_size = 16,
18320         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18321         },
18322         {
18323         .description = "byp_sp_lkup",
18324         .field_bit_size = 1,
18325         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18326         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18328         },
18329         {
18330         .description = "pri_anti_spoof_ctl",
18331         .field_bit_size = 2,
18332         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18333         },
18334         {
18335         .description = "tpid_anti_spoof_ctl",
18336         .field_bit_size = 2,
18337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18338         },
18339         /* class_tid: 8, stingray, table: profile_tcam_cache_0 */
18340         {
18341         .description = "em_profile_id",
18342         .field_bit_size = 10,
18343         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18344         .result_operand = {
18345                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18346                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18348                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18349         },
18350         /* class_tid: 8, stingray, table: profile_tcam_0 */
18351         {
18352         .description = "wc_key_id",
18353         .field_bit_size = 4,
18354         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18355         },
18356         {
18357         .description = "wc_profile_id",
18358         .field_bit_size = 8,
18359         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18360         },
18361         {
18362         .description = "wc_search_en",
18363         .field_bit_size = 1,
18364         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18365         },
18366         {
18367         .description = "em_key_mask",
18368         .field_bit_size = 10,
18369         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18370         .result_operand = {
18371                 (0x00f9 >> 8) & 0xff,
18372                 0x00f9 & 0xff,
18373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18375         },
18376         {
18377         .description = "em_key_id",
18378         .field_bit_size = 5,
18379         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18380         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18381                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18382         },
18383         {
18384         .description = "em_profile_id",
18385         .field_bit_size = 8,
18386         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18387         .result_operand = {
18388                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18389                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18392         },
18393         {
18394         .description = "em_search_en",
18395         .field_bit_size = 1,
18396         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18397         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18398                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18399         },
18400         {
18401         .description = "pl_byp_lkup_en",
18402         .field_bit_size = 1,
18403         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18404         },
18405         /* class_tid: 8, stingray, table: ext_em_0 */
18406         {
18407         .description = "act_rec_ptr",
18408         .field_bit_size = 33,
18409         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18410         .result_operand = {
18411                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18412                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18415         },
18416         {
18417         .description = "ext_flow_ctr",
18418         .field_bit_size = 1,
18419         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18420         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18422         },
18423         {
18424         .description = "act_rec_int",
18425         .field_bit_size = 1,
18426         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18427         },
18428         {
18429         .description = "act_rec_size",
18430         .field_bit_size = 5,
18431         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18432         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18433                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18434         },
18435         {
18436         .description = "key_size",
18437         .field_bit_size = 9,
18438         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18439         .result_operand = {
18440                 (0x00c5 >> 8) & 0xff,
18441                 0x00c5 & 0xff,
18442                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18443                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18444         },
18445         {
18446         .description = "reserved",
18447         .field_bit_size = 11,
18448         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18449         },
18450         {
18451         .description = "strength",
18452         .field_bit_size = 2,
18453         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18454         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18456         },
18457         {
18458         .description = "l1_cacheable",
18459         .field_bit_size = 1,
18460         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18461         },
18462         {
18463         .description = "valid",
18464         .field_bit_size = 1,
18465         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18466         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18468         },
18469         /* class_tid: 8, stingray, table: int_em_0 */
18470         {
18471         .description = "act_rec_ptr",
18472         .field_bit_size = 33,
18473         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18474         .result_operand = {
18475                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18476                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18479         },
18480         {
18481         .description = "ext_flow_ctr",
18482         .field_bit_size = 1,
18483         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18484         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18486         },
18487         {
18488         .description = "act_rec_int",
18489         .field_bit_size = 1,
18490         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18491         },
18492         {
18493         .description = "act_rec_size",
18494         .field_bit_size = 5,
18495         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18496         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18498         },
18499         {
18500         .description = "key_size",
18501         .field_bit_size = 9,
18502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18503         .result_operand = {
18504                 (0x00c5 >> 8) & 0xff,
18505                 0x00c5 & 0xff,
18506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18507                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18508         },
18509         {
18510         .description = "reserved",
18511         .field_bit_size = 11,
18512         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18513         },
18514         {
18515         .description = "strength",
18516         .field_bit_size = 2,
18517         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18518         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18519                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18520         },
18521         {
18522         .description = "l1_cacheable",
18523         .field_bit_size = 1,
18524         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18525         },
18526         {
18527         .description = "valid",
18528         .field_bit_size = 1,
18529         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18530         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18532         },
18533         /* class_tid: 9, stingray, table: l2_cntxt_cache_0 */
18534         {
18535         .description = "l2_cntxt_id",
18536         .field_bit_size = 10,
18537         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18538         .result_operand = {
18539                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18540                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18543         },
18544         /* class_tid: 9, stingray, table: l2_cntxt_tcam_0 */
18545         {
18546         .description = "l2_cntxt_id",
18547         .field_bit_size = 10,
18548         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18549         .result_operand = {
18550                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18551                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18552                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18553                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18554         },
18555         {
18556         .description = "prof_func_id",
18557         .field_bit_size = 7,
18558         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18559         .result_operand = {
18560                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18561                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18563                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18564         },
18565         {
18566         .description = "l2_byp_lkup_en",
18567         .field_bit_size = 1,
18568         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18569         },
18570         {
18571         .description = "parif",
18572         .field_bit_size = 4,
18573         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18574         .result_operand = {
18575                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18576                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18579         },
18580         {
18581         .description = "allowed_pri",
18582         .field_bit_size = 8,
18583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18584         },
18585         {
18586         .description = "default_pri",
18587         .field_bit_size = 3,
18588         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18589         },
18590         {
18591         .description = "allowed_tpid",
18592         .field_bit_size = 6,
18593         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18594         },
18595         {
18596         .description = "default_tpid",
18597         .field_bit_size = 3,
18598         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18599         },
18600         {
18601         .description = "bd_act_en",
18602         .field_bit_size = 1,
18603         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18604         },
18605         {
18606         .description = "sp_rec_ptr",
18607         .field_bit_size = 16,
18608         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18609         },
18610         {
18611         .description = "byp_sp_lkup",
18612         .field_bit_size = 1,
18613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18614         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18616         },
18617         {
18618         .description = "pri_anti_spoof_ctl",
18619         .field_bit_size = 2,
18620         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18621         },
18622         {
18623         .description = "tpid_anti_spoof_ctl",
18624         .field_bit_size = 2,
18625         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18626         },
18627         /* class_tid: 9, stingray, table: profile_tcam_cache_0 */
18628         {
18629         .description = "em_profile_id",
18630         .field_bit_size = 10,
18631         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18632         .result_operand = {
18633                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18634                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18637         },
18638         /* class_tid: 9, stingray, table: profile_tcam_0 */
18639         {
18640         .description = "wc_key_id",
18641         .field_bit_size = 4,
18642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18643         },
18644         {
18645         .description = "wc_profile_id",
18646         .field_bit_size = 8,
18647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18648         },
18649         {
18650         .description = "wc_search_en",
18651         .field_bit_size = 1,
18652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18653         },
18654         {
18655         .description = "em_key_mask",
18656         .field_bit_size = 10,
18657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18658         .result_operand = {
18659                 (0x00f9 >> 8) & 0xff,
18660                 0x00f9 & 0xff,
18661                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18663         },
18664         {
18665         .description = "em_key_id",
18666         .field_bit_size = 5,
18667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18668         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18670         },
18671         {
18672         .description = "em_profile_id",
18673         .field_bit_size = 8,
18674         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18675         .result_operand = {
18676                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18677                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18678                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18680         },
18681         {
18682         .description = "em_search_en",
18683         .field_bit_size = 1,
18684         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18685         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18686                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18687         },
18688         {
18689         .description = "pl_byp_lkup_en",
18690         .field_bit_size = 1,
18691         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18692         },
18693         /* class_tid: 9, stingray, table: ext_em_0 */
18694         {
18695         .description = "act_rec_ptr",
18696         .field_bit_size = 33,
18697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18698         .result_operand = {
18699                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18700                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18703         },
18704         {
18705         .description = "ext_flow_ctr",
18706         .field_bit_size = 1,
18707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18708         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18710         },
18711         {
18712         .description = "act_rec_int",
18713         .field_bit_size = 1,
18714         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18715         },
18716         {
18717         .description = "act_rec_size",
18718         .field_bit_size = 5,
18719         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18720         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18721                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18722         },
18723         {
18724         .description = "key_size",
18725         .field_bit_size = 9,
18726         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18727         .result_operand = {
18728                 (0x00c5 >> 8) & 0xff,
18729                 0x00c5 & 0xff,
18730                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18731                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18732         },
18733         {
18734         .description = "reserved",
18735         .field_bit_size = 11,
18736         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18737         },
18738         {
18739         .description = "strength",
18740         .field_bit_size = 2,
18741         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18742         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18743                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18744         },
18745         {
18746         .description = "l1_cacheable",
18747         .field_bit_size = 1,
18748         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18749         },
18750         {
18751         .description = "valid",
18752         .field_bit_size = 1,
18753         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18754         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18756         },
18757         /* class_tid: 9, stingray, table: int_em_0 */
18758         {
18759         .description = "act_rec_ptr",
18760         .field_bit_size = 33,
18761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18762         .result_operand = {
18763                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18764                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18767         },
18768         {
18769         .description = "ext_flow_ctr",
18770         .field_bit_size = 1,
18771         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18772         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18774         },
18775         {
18776         .description = "act_rec_int",
18777         .field_bit_size = 1,
18778         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18779         },
18780         {
18781         .description = "act_rec_size",
18782         .field_bit_size = 5,
18783         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18784         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18786         },
18787         {
18788         .description = "key_size",
18789         .field_bit_size = 9,
18790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18791         .result_operand = {
18792                 (0x00c5 >> 8) & 0xff,
18793                 0x00c5 & 0xff,
18794                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18796         },
18797         {
18798         .description = "reserved",
18799         .field_bit_size = 11,
18800         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18801         },
18802         {
18803         .description = "strength",
18804         .field_bit_size = 2,
18805         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18806         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18808         },
18809         {
18810         .description = "l1_cacheable",
18811         .field_bit_size = 1,
18812         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18813         },
18814         {
18815         .description = "valid",
18816         .field_bit_size = 1,
18817         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18818         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18820         },
18821         /* class_tid: 10, stingray, table: l2_cntxt_cache_0 */
18822         {
18823         .description = "l2_cntxt_id",
18824         .field_bit_size = 10,
18825         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18826         .result_operand = {
18827                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18828                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18829                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18831         },
18832         /* class_tid: 10, stingray, table: l2_cntxt_tcam_0 */
18833         {
18834         .description = "l2_cntxt_id",
18835         .field_bit_size = 10,
18836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18837         .result_operand = {
18838                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18839                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18840                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18842         },
18843         {
18844         .description = "prof_func_id",
18845         .field_bit_size = 7,
18846         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18847         .result_operand = {
18848                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18849                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18852         },
18853         {
18854         .description = "l2_byp_lkup_en",
18855         .field_bit_size = 1,
18856         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18857         },
18858         {
18859         .description = "parif",
18860         .field_bit_size = 4,
18861         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18862         .result_operand = {
18863                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18864                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18867         },
18868         {
18869         .description = "allowed_pri",
18870         .field_bit_size = 8,
18871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18872         },
18873         {
18874         .description = "default_pri",
18875         .field_bit_size = 3,
18876         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18877         },
18878         {
18879         .description = "allowed_tpid",
18880         .field_bit_size = 6,
18881         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18882         },
18883         {
18884         .description = "default_tpid",
18885         .field_bit_size = 3,
18886         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18887         },
18888         {
18889         .description = "bd_act_en",
18890         .field_bit_size = 1,
18891         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18892         },
18893         {
18894         .description = "sp_rec_ptr",
18895         .field_bit_size = 16,
18896         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18897         },
18898         {
18899         .description = "byp_sp_lkup",
18900         .field_bit_size = 1,
18901         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18902         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18904         },
18905         {
18906         .description = "pri_anti_spoof_ctl",
18907         .field_bit_size = 2,
18908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18909         },
18910         {
18911         .description = "tpid_anti_spoof_ctl",
18912         .field_bit_size = 2,
18913         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18914         },
18915         /* class_tid: 10, stingray, table: profile_tcam_cache_0 */
18916         {
18917         .description = "em_profile_id",
18918         .field_bit_size = 10,
18919         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18920         .result_operand = {
18921                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18922                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18925         },
18926         /* class_tid: 10, stingray, table: profile_tcam_0 */
18927         {
18928         .description = "wc_key_id",
18929         .field_bit_size = 4,
18930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18931         },
18932         {
18933         .description = "wc_profile_id",
18934         .field_bit_size = 8,
18935         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18936         },
18937         {
18938         .description = "wc_search_en",
18939         .field_bit_size = 1,
18940         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18941         },
18942         {
18943         .description = "em_key_mask",
18944         .field_bit_size = 10,
18945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18946         .result_operand = {
18947                 (0x00f9 >> 8) & 0xff,
18948                 0x00f9 & 0xff,
18949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18951         },
18952         {
18953         .description = "em_key_id",
18954         .field_bit_size = 5,
18955         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18956         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
18957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18958         },
18959         {
18960         .description = "em_profile_id",
18961         .field_bit_size = 8,
18962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18963         .result_operand = {
18964                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18965                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18968         },
18969         {
18970         .description = "em_search_en",
18971         .field_bit_size = 1,
18972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18973         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18975         },
18976         {
18977         .description = "pl_byp_lkup_en",
18978         .field_bit_size = 1,
18979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18980         },
18981         /* class_tid: 10, stingray, table: ext_em_0 */
18982         {
18983         .description = "act_rec_ptr",
18984         .field_bit_size = 33,
18985         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18986         .result_operand = {
18987                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18988                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18990                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18991         },
18992         {
18993         .description = "ext_flow_ctr",
18994         .field_bit_size = 1,
18995         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18996         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18997                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18998         },
18999         {
19000         .description = "act_rec_int",
19001         .field_bit_size = 1,
19002         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19003         },
19004         {
19005         .description = "act_rec_size",
19006         .field_bit_size = 5,
19007         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19008         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19010         },
19011         {
19012         .description = "key_size",
19013         .field_bit_size = 9,
19014         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19015         .result_operand = {
19016                 (0x0185 >> 8) & 0xff,
19017                 0x0185 & 0xff,
19018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19020         },
19021         {
19022         .description = "reserved",
19023         .field_bit_size = 11,
19024         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19025         },
19026         {
19027         .description = "strength",
19028         .field_bit_size = 2,
19029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19030         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19032         },
19033         {
19034         .description = "l1_cacheable",
19035         .field_bit_size = 1,
19036         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19037         },
19038         {
19039         .description = "valid",
19040         .field_bit_size = 1,
19041         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19042         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19044         },
19045         /* class_tid: 10, stingray, table: int_em_0 */
19046         {
19047         .description = "act_rec_ptr",
19048         .field_bit_size = 33,
19049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19050         .result_operand = {
19051                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19052                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19055         },
19056         {
19057         .description = "ext_flow_ctr",
19058         .field_bit_size = 1,
19059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19060         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19062         },
19063         {
19064         .description = "act_rec_int",
19065         .field_bit_size = 1,
19066         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19067         },
19068         {
19069         .description = "act_rec_size",
19070         .field_bit_size = 5,
19071         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19072         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19074         },
19075         {
19076         .description = "key_size",
19077         .field_bit_size = 9,
19078         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19079         .result_operand = {
19080                 (0x0185 >> 8) & 0xff,
19081                 0x0185 & 0xff,
19082                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19084         },
19085         {
19086         .description = "reserved",
19087         .field_bit_size = 11,
19088         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19089         },
19090         {
19091         .description = "strength",
19092         .field_bit_size = 2,
19093         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19094         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19096         },
19097         {
19098         .description = "l1_cacheable",
19099         .field_bit_size = 1,
19100         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19101         },
19102         {
19103         .description = "valid",
19104         .field_bit_size = 1,
19105         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19106         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19107                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19108         },
19109         /* class_tid: 11, stingray, table: l2_cntxt_cache_0 */
19110         {
19111         .description = "l2_cntxt_id",
19112         .field_bit_size = 10,
19113         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19114         .result_operand = {
19115                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19116                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19119         },
19120         /* class_tid: 11, stingray, table: l2_cntxt_tcam_0 */
19121         {
19122         .description = "l2_cntxt_id",
19123         .field_bit_size = 10,
19124         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19125         .result_operand = {
19126                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19127                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19129                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19130         },
19131         {
19132         .description = "prof_func_id",
19133         .field_bit_size = 7,
19134         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19135         .result_operand = {
19136                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
19137                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
19138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19140         },
19141         {
19142         .description = "l2_byp_lkup_en",
19143         .field_bit_size = 1,
19144         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19145         },
19146         {
19147         .description = "parif",
19148         .field_bit_size = 4,
19149         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19150         .result_operand = {
19151                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19152                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19154                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19155         },
19156         {
19157         .description = "allowed_pri",
19158         .field_bit_size = 8,
19159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19160         },
19161         {
19162         .description = "default_pri",
19163         .field_bit_size = 3,
19164         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19165         },
19166         {
19167         .description = "allowed_tpid",
19168         .field_bit_size = 6,
19169         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19170         },
19171         {
19172         .description = "default_tpid",
19173         .field_bit_size = 3,
19174         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19175         },
19176         {
19177         .description = "bd_act_en",
19178         .field_bit_size = 1,
19179         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19180         },
19181         {
19182         .description = "sp_rec_ptr",
19183         .field_bit_size = 16,
19184         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19185         },
19186         {
19187         .description = "byp_sp_lkup",
19188         .field_bit_size = 1,
19189         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19190         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19192         },
19193         {
19194         .description = "pri_anti_spoof_ctl",
19195         .field_bit_size = 2,
19196         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19197         },
19198         {
19199         .description = "tpid_anti_spoof_ctl",
19200         .field_bit_size = 2,
19201         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19202         },
19203         /* class_tid: 11, stingray, table: profile_tcam_cache_0 */
19204         {
19205         .description = "em_profile_id",
19206         .field_bit_size = 10,
19207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19208         .result_operand = {
19209                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19210                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19213         },
19214         /* class_tid: 11, stingray, table: profile_tcam_0 */
19215         {
19216         .description = "wc_key_id",
19217         .field_bit_size = 4,
19218         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19219         },
19220         {
19221         .description = "wc_profile_id",
19222         .field_bit_size = 8,
19223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19224         },
19225         {
19226         .description = "wc_search_en",
19227         .field_bit_size = 1,
19228         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19229         },
19230         {
19231         .description = "em_key_mask",
19232         .field_bit_size = 10,
19233         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19234         .result_operand = {
19235                 (0x00f9 >> 8) & 0xff,
19236                 0x00f9 & 0xff,
19237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19239         },
19240         {
19241         .description = "em_key_id",
19242         .field_bit_size = 5,
19243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19244         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
19245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19246         },
19247         {
19248         .description = "em_profile_id",
19249         .field_bit_size = 8,
19250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19251         .result_operand = {
19252                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19253                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19256         },
19257         {
19258         .description = "em_search_en",
19259         .field_bit_size = 1,
19260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19261         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19263         },
19264         {
19265         .description = "pl_byp_lkup_en",
19266         .field_bit_size = 1,
19267         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19268         },
19269         /* class_tid: 11, stingray, table: ext_em_0 */
19270         {
19271         .description = "act_rec_ptr",
19272         .field_bit_size = 33,
19273         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19274         .result_operand = {
19275                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19276                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19279         },
19280         {
19281         .description = "ext_flow_ctr",
19282         .field_bit_size = 1,
19283         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19284         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19286         },
19287         {
19288         .description = "act_rec_int",
19289         .field_bit_size = 1,
19290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19291         },
19292         {
19293         .description = "act_rec_size",
19294         .field_bit_size = 5,
19295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19296         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19298         },
19299         {
19300         .description = "key_size",
19301         .field_bit_size = 9,
19302         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19303         .result_operand = {
19304                 (0x0185 >> 8) & 0xff,
19305                 0x0185 & 0xff,
19306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19308         },
19309         {
19310         .description = "reserved",
19311         .field_bit_size = 11,
19312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19313         },
19314         {
19315         .description = "strength",
19316         .field_bit_size = 2,
19317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19318         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19320         },
19321         {
19322         .description = "l1_cacheable",
19323         .field_bit_size = 1,
19324         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19325         },
19326         {
19327         .description = "valid",
19328         .field_bit_size = 1,
19329         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19330         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19332         },
19333         /* class_tid: 11, stingray, table: int_em_0 */
19334         {
19335         .description = "act_rec_ptr",
19336         .field_bit_size = 33,
19337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19338         .result_operand = {
19339                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19340                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19341                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19342                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19343         },
19344         {
19345         .description = "ext_flow_ctr",
19346         .field_bit_size = 1,
19347         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19348         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19349                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19350         },
19351         {
19352         .description = "act_rec_int",
19353         .field_bit_size = 1,
19354         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19355         },
19356         {
19357         .description = "act_rec_size",
19358         .field_bit_size = 5,
19359         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19360         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19361                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19362         },
19363         {
19364         .description = "key_size",
19365         .field_bit_size = 9,
19366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19367         .result_operand = {
19368                 (0x0185 >> 8) & 0xff,
19369                 0x0185 & 0xff,
19370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19372         },
19373         {
19374         .description = "reserved",
19375         .field_bit_size = 11,
19376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19377         },
19378         {
19379         .description = "strength",
19380         .field_bit_size = 2,
19381         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19382         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19384         },
19385         {
19386         .description = "l1_cacheable",
19387         .field_bit_size = 1,
19388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19389         },
19390         {
19391         .description = "valid",
19392         .field_bit_size = 1,
19393         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19394         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19395                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19396         },
19397         /* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */
19398         {
19399         .description = "l2_cntxt_id",
19400         .field_bit_size = 10,
19401         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19402         .result_operand = {
19403                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19404                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19405                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19407         },
19408         {
19409         .description = "prof_func_id",
19410         .field_bit_size = 7,
19411         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19412         .result_operand = {
19413                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19414                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19415                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19416                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19417         },
19418         {
19419         .description = "l2_byp_lkup_en",
19420         .field_bit_size = 1,
19421         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19422         },
19423         {
19424         .description = "parif",
19425         .field_bit_size = 4,
19426         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19427         .result_operand = {
19428                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19429                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19432         },
19433         {
19434         .description = "allowed_pri",
19435         .field_bit_size = 8,
19436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19437         },
19438         {
19439         .description = "default_pri",
19440         .field_bit_size = 3,
19441         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19442         },
19443         {
19444         .description = "allowed_tpid",
19445         .field_bit_size = 6,
19446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19447         },
19448         {
19449         .description = "default_tpid",
19450         .field_bit_size = 3,
19451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19452         },
19453         {
19454         .description = "bd_act_en",
19455         .field_bit_size = 1,
19456         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19457         },
19458         {
19459         .description = "sp_rec_ptr",
19460         .field_bit_size = 16,
19461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19462         },
19463         {
19464         .description = "byp_sp_lkup",
19465         .field_bit_size = 1,
19466         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19467         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19469         },
19470         {
19471         .description = "pri_anti_spoof_ctl",
19472         .field_bit_size = 2,
19473         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19474         },
19475         {
19476         .description = "tpid_anti_spoof_ctl",
19477         .field_bit_size = 2,
19478         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19479         },
19480         /* class_tid: 12, stingray, table: profile_tcam_cache_0 */
19481         {
19482         .description = "em_profile_id",
19483         .field_bit_size = 10,
19484         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19485         .result_operand = {
19486                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19487                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19490         },
19491         /* class_tid: 12, stingray, table: profile_tcam_0 */
19492         {
19493         .description = "wc_key_id",
19494         .field_bit_size = 4,
19495         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19496         },
19497         {
19498         .description = "wc_profile_id",
19499         .field_bit_size = 8,
19500         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19501         },
19502         {
19503         .description = "wc_search_en",
19504         .field_bit_size = 1,
19505         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19506         },
19507         {
19508         .description = "em_key_mask",
19509         .field_bit_size = 10,
19510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19511         .result_operand = {
19512                 (0x00f9 >> 8) & 0xff,
19513                 0x00f9 & 0xff,
19514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19516         },
19517         {
19518         .description = "em_key_id",
19519         .field_bit_size = 5,
19520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19521         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19523         },
19524         {
19525         .description = "em_profile_id",
19526         .field_bit_size = 8,
19527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19528         .result_operand = {
19529                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19530                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19533         },
19534         {
19535         .description = "em_search_en",
19536         .field_bit_size = 1,
19537         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19538         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19540         },
19541         {
19542         .description = "pl_byp_lkup_en",
19543         .field_bit_size = 1,
19544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19545         },
19546         /* class_tid: 12, stingray, table: ext_em_0 */
19547         {
19548         .description = "act_rec_ptr",
19549         .field_bit_size = 33,
19550         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19551         .result_operand = {
19552                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19553                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19556         },
19557         {
19558         .description = "ext_flow_ctr",
19559         .field_bit_size = 1,
19560         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19561         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19563         },
19564         {
19565         .description = "act_rec_int",
19566         .field_bit_size = 1,
19567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19568         },
19569         {
19570         .description = "act_rec_size",
19571         .field_bit_size = 5,
19572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19573         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19574                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19575         },
19576         {
19577         .description = "key_size",
19578         .field_bit_size = 9,
19579         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19580         .result_operand = {
19581                 (0x00c5 >> 8) & 0xff,
19582                 0x00c5 & 0xff,
19583                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19585         },
19586         {
19587         .description = "reserved",
19588         .field_bit_size = 11,
19589         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19590         },
19591         {
19592         .description = "strength",
19593         .field_bit_size = 2,
19594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19595         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19597         },
19598         {
19599         .description = "l1_cacheable",
19600         .field_bit_size = 1,
19601         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19602         },
19603         {
19604         .description = "valid",
19605         .field_bit_size = 1,
19606         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19607         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19609         },
19610         /* class_tid: 12, stingray, table: int_em_0 */
19611         {
19612         .description = "act_rec_ptr",
19613         .field_bit_size = 33,
19614         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19615         .result_operand = {
19616                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19617                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19620         },
19621         {
19622         .description = "ext_flow_ctr",
19623         .field_bit_size = 1,
19624         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19625         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19627         },
19628         {
19629         .description = "act_rec_int",
19630         .field_bit_size = 1,
19631         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19632         },
19633         {
19634         .description = "act_rec_size",
19635         .field_bit_size = 5,
19636         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19637         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19639         },
19640         {
19641         .description = "key_size",
19642         .field_bit_size = 9,
19643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19644         .result_operand = {
19645                 (0x00c5 >> 8) & 0xff,
19646                 0x00c5 & 0xff,
19647                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19648                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19649         },
19650         {
19651         .description = "reserved",
19652         .field_bit_size = 11,
19653         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19654         },
19655         {
19656         .description = "strength",
19657         .field_bit_size = 2,
19658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19659         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19660                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19661         },
19662         {
19663         .description = "l1_cacheable",
19664         .field_bit_size = 1,
19665         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19666         },
19667         {
19668         .description = "valid",
19669         .field_bit_size = 1,
19670         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19671         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19673         },
19674         /* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */
19675         {
19676         .description = "l2_cntxt_id",
19677         .field_bit_size = 10,
19678         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19679         .result_operand = {
19680                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19681                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19684         },
19685         {
19686         .description = "prof_func_id",
19687         .field_bit_size = 7,
19688         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19689         .result_operand = {
19690                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19691                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19692                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19693                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19694         },
19695         {
19696         .description = "l2_byp_lkup_en",
19697         .field_bit_size = 1,
19698         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19699         },
19700         {
19701         .description = "parif",
19702         .field_bit_size = 4,
19703         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19704         .result_operand = {
19705                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19706                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19707                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19709         },
19710         {
19711         .description = "allowed_pri",
19712         .field_bit_size = 8,
19713         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19714         },
19715         {
19716         .description = "default_pri",
19717         .field_bit_size = 3,
19718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19719         },
19720         {
19721         .description = "allowed_tpid",
19722         .field_bit_size = 6,
19723         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19724         },
19725         {
19726         .description = "default_tpid",
19727         .field_bit_size = 3,
19728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19729         },
19730         {
19731         .description = "bd_act_en",
19732         .field_bit_size = 1,
19733         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19734         },
19735         {
19736         .description = "sp_rec_ptr",
19737         .field_bit_size = 16,
19738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19739         },
19740         {
19741         .description = "byp_sp_lkup",
19742         .field_bit_size = 1,
19743         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19744         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19745                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19746         },
19747         {
19748         .description = "pri_anti_spoof_ctl",
19749         .field_bit_size = 2,
19750         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19751         },
19752         {
19753         .description = "tpid_anti_spoof_ctl",
19754         .field_bit_size = 2,
19755         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19756         },
19757         /* class_tid: 13, stingray, table: profile_tcam_cache_0 */
19758         {
19759         .description = "em_profile_id",
19760         .field_bit_size = 10,
19761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19762         .result_operand = {
19763                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19764                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19767         },
19768         /* class_tid: 13, stingray, table: profile_tcam_0 */
19769         {
19770         .description = "wc_key_id",
19771         .field_bit_size = 4,
19772         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19773         },
19774         {
19775         .description = "wc_profile_id",
19776         .field_bit_size = 8,
19777         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19778         },
19779         {
19780         .description = "wc_search_en",
19781         .field_bit_size = 1,
19782         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19783         },
19784         {
19785         .description = "em_key_mask",
19786         .field_bit_size = 10,
19787         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19788         .result_operand = {
19789                 (0x00f9 >> 8) & 0xff,
19790                 0x00f9 & 0xff,
19791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19793         },
19794         {
19795         .description = "em_key_id",
19796         .field_bit_size = 5,
19797         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19798         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19800         },
19801         {
19802         .description = "em_profile_id",
19803         .field_bit_size = 8,
19804         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19805         .result_operand = {
19806                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19807                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19810         },
19811         {
19812         .description = "em_search_en",
19813         .field_bit_size = 1,
19814         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19815         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19817         },
19818         {
19819         .description = "pl_byp_lkup_en",
19820         .field_bit_size = 1,
19821         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19822         },
19823         /* class_tid: 13, stingray, table: ext_em_0 */
19824         {
19825         .description = "act_rec_ptr",
19826         .field_bit_size = 33,
19827         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19828         .result_operand = {
19829                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19830                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19833         },
19834         {
19835         .description = "ext_flow_ctr",
19836         .field_bit_size = 1,
19837         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19838         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19840         },
19841         {
19842         .description = "act_rec_int",
19843         .field_bit_size = 1,
19844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19845         },
19846         {
19847         .description = "act_rec_size",
19848         .field_bit_size = 5,
19849         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19850         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19852         },
19853         {
19854         .description = "key_size",
19855         .field_bit_size = 9,
19856         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19857         .result_operand = {
19858                 (0x00c5 >> 8) & 0xff,
19859                 0x00c5 & 0xff,
19860                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19862         },
19863         {
19864         .description = "reserved",
19865         .field_bit_size = 11,
19866         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19867         },
19868         {
19869         .description = "strength",
19870         .field_bit_size = 2,
19871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19872         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19874         },
19875         {
19876         .description = "l1_cacheable",
19877         .field_bit_size = 1,
19878         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19879         },
19880         {
19881         .description = "valid",
19882         .field_bit_size = 1,
19883         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19884         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19886         },
19887         /* class_tid: 13, stingray, table: int_em_0 */
19888         {
19889         .description = "act_rec_ptr",
19890         .field_bit_size = 33,
19891         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19892         .result_operand = {
19893                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19894                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19895                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19896                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19897         },
19898         {
19899         .description = "ext_flow_ctr",
19900         .field_bit_size = 1,
19901         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19902         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19904         },
19905         {
19906         .description = "act_rec_int",
19907         .field_bit_size = 1,
19908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19909         },
19910         {
19911         .description = "act_rec_size",
19912         .field_bit_size = 5,
19913         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19914         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19916         },
19917         {
19918         .description = "key_size",
19919         .field_bit_size = 9,
19920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19921         .result_operand = {
19922                 (0x00c5 >> 8) & 0xff,
19923                 0x00c5 & 0xff,
19924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19925                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19926         },
19927         {
19928         .description = "reserved",
19929         .field_bit_size = 11,
19930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19931         },
19932         {
19933         .description = "strength",
19934         .field_bit_size = 2,
19935         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19936         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19938         },
19939         {
19940         .description = "l1_cacheable",
19941         .field_bit_size = 1,
19942         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19943         },
19944         {
19945         .description = "valid",
19946         .field_bit_size = 1,
19947         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19948         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19950         },
19951         /* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */
19952         {
19953         .description = "l2_cntxt_id",
19954         .field_bit_size = 10,
19955         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19956         .result_operand = {
19957                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19958                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19961         },
19962         {
19963         .description = "prof_func_id",
19964         .field_bit_size = 7,
19965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19966         .result_operand = {
19967                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19968                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19971         },
19972         {
19973         .description = "l2_byp_lkup_en",
19974         .field_bit_size = 1,
19975         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19976         },
19977         {
19978         .description = "parif",
19979         .field_bit_size = 4,
19980         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19981         .result_operand = {
19982                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19983                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19984                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19986         },
19987         {
19988         .description = "allowed_pri",
19989         .field_bit_size = 8,
19990         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19991         },
19992         {
19993         .description = "default_pri",
19994         .field_bit_size = 3,
19995         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19996         },
19997         {
19998         .description = "allowed_tpid",
19999         .field_bit_size = 6,
20000         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20001         },
20002         {
20003         .description = "default_tpid",
20004         .field_bit_size = 3,
20005         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20006         },
20007         {
20008         .description = "bd_act_en",
20009         .field_bit_size = 1,
20010         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20011         },
20012         {
20013         .description = "sp_rec_ptr",
20014         .field_bit_size = 16,
20015         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20016         },
20017         {
20018         .description = "byp_sp_lkup",
20019         .field_bit_size = 1,
20020         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20021         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20022                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20023         },
20024         {
20025         .description = "pri_anti_spoof_ctl",
20026         .field_bit_size = 2,
20027         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20028         },
20029         {
20030         .description = "tpid_anti_spoof_ctl",
20031         .field_bit_size = 2,
20032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20033         },
20034         /* class_tid: 14, stingray, table: profile_tcam_cache_0 */
20035         {
20036         .description = "em_profile_id",
20037         .field_bit_size = 10,
20038         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20039         .result_operand = {
20040                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20041                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20044         },
20045         /* class_tid: 14, stingray, table: profile_tcam_0 */
20046         {
20047         .description = "wc_key_id",
20048         .field_bit_size = 4,
20049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20050         },
20051         {
20052         .description = "wc_profile_id",
20053         .field_bit_size = 8,
20054         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20055         },
20056         {
20057         .description = "wc_search_en",
20058         .field_bit_size = 1,
20059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20060         },
20061         {
20062         .description = "em_key_mask",
20063         .field_bit_size = 10,
20064         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20065         .result_operand = {
20066                 (0x00f9 >> 8) & 0xff,
20067                 0x00f9 & 0xff,
20068                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20070         },
20071         {
20072         .description = "em_key_id",
20073         .field_bit_size = 5,
20074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20075         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20077         },
20078         {
20079         .description = "em_profile_id",
20080         .field_bit_size = 8,
20081         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20082         .result_operand = {
20083                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20084                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20087         },
20088         {
20089         .description = "em_search_en",
20090         .field_bit_size = 1,
20091         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20092         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20094         },
20095         {
20096         .description = "pl_byp_lkup_en",
20097         .field_bit_size = 1,
20098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20099         },
20100         /* class_tid: 14, stingray, table: ext_em_0 */
20101         {
20102         .description = "act_rec_ptr",
20103         .field_bit_size = 33,
20104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20105         .result_operand = {
20106                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20107                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20110         },
20111         {
20112         .description = "ext_flow_ctr",
20113         .field_bit_size = 1,
20114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20115         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20117         },
20118         {
20119         .description = "act_rec_int",
20120         .field_bit_size = 1,
20121         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20122         },
20123         {
20124         .description = "act_rec_size",
20125         .field_bit_size = 5,
20126         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20127         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20129         },
20130         {
20131         .description = "key_size",
20132         .field_bit_size = 9,
20133         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20134         .result_operand = {
20135                 (0x0185 >> 8) & 0xff,
20136                 0x0185 & 0xff,
20137                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20139         },
20140         {
20141         .description = "reserved",
20142         .field_bit_size = 11,
20143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20144         },
20145         {
20146         .description = "strength",
20147         .field_bit_size = 2,
20148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20149         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20151         },
20152         {
20153         .description = "l1_cacheable",
20154         .field_bit_size = 1,
20155         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20156         },
20157         {
20158         .description = "valid",
20159         .field_bit_size = 1,
20160         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20161         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20163         },
20164         /* class_tid: 14, stingray, table: int_em_0 */
20165         {
20166         .description = "act_rec_ptr",
20167         .field_bit_size = 33,
20168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20169         .result_operand = {
20170                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20171                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20172                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20174         },
20175         {
20176         .description = "ext_flow_ctr",
20177         .field_bit_size = 1,
20178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20179         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20181         },
20182         {
20183         .description = "act_rec_int",
20184         .field_bit_size = 1,
20185         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20186         },
20187         {
20188         .description = "act_rec_size",
20189         .field_bit_size = 5,
20190         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20191         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20193         },
20194         {
20195         .description = "key_size",
20196         .field_bit_size = 9,
20197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20198         .result_operand = {
20199                 (0x0185 >> 8) & 0xff,
20200                 0x0185 & 0xff,
20201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20203         },
20204         {
20205         .description = "reserved",
20206         .field_bit_size = 11,
20207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20208         },
20209         {
20210         .description = "strength",
20211         .field_bit_size = 2,
20212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20213         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20215         },
20216         {
20217         .description = "l1_cacheable",
20218         .field_bit_size = 1,
20219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20220         },
20221         {
20222         .description = "valid",
20223         .field_bit_size = 1,
20224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20225         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20227         },
20228         /* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */
20229         {
20230         .description = "l2_cntxt_id",
20231         .field_bit_size = 10,
20232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20233         .result_operand = {
20234                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20235                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20238         },
20239         {
20240         .description = "prof_func_id",
20241         .field_bit_size = 7,
20242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20243         .result_operand = {
20244                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
20245                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
20246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20248         },
20249         {
20250         .description = "l2_byp_lkup_en",
20251         .field_bit_size = 1,
20252         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20253         },
20254         {
20255         .description = "parif",
20256         .field_bit_size = 4,
20257         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20258         .result_operand = {
20259                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20260                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20263         },
20264         {
20265         .description = "allowed_pri",
20266         .field_bit_size = 8,
20267         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20268         },
20269         {
20270         .description = "default_pri",
20271         .field_bit_size = 3,
20272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20273         },
20274         {
20275         .description = "allowed_tpid",
20276         .field_bit_size = 6,
20277         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20278         },
20279         {
20280         .description = "default_tpid",
20281         .field_bit_size = 3,
20282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20283         },
20284         {
20285         .description = "bd_act_en",
20286         .field_bit_size = 1,
20287         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20288         },
20289         {
20290         .description = "sp_rec_ptr",
20291         .field_bit_size = 16,
20292         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20293         },
20294         {
20295         .description = "byp_sp_lkup",
20296         .field_bit_size = 1,
20297         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20298         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20300         },
20301         {
20302         .description = "pri_anti_spoof_ctl",
20303         .field_bit_size = 2,
20304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20305         },
20306         {
20307         .description = "tpid_anti_spoof_ctl",
20308         .field_bit_size = 2,
20309         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20310         },
20311         /* class_tid: 15, stingray, table: profile_tcam_cache_0 */
20312         {
20313         .description = "em_profile_id",
20314         .field_bit_size = 10,
20315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20316         .result_operand = {
20317                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20318                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20320                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20321         },
20322         /* class_tid: 15, stingray, table: profile_tcam_0 */
20323         {
20324         .description = "wc_key_id",
20325         .field_bit_size = 4,
20326         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20327         },
20328         {
20329         .description = "wc_profile_id",
20330         .field_bit_size = 8,
20331         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20332         },
20333         {
20334         .description = "wc_search_en",
20335         .field_bit_size = 1,
20336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20337         },
20338         {
20339         .description = "em_key_mask",
20340         .field_bit_size = 10,
20341         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20342         .result_operand = {
20343                 (0x00f9 >> 8) & 0xff,
20344                 0x00f9 & 0xff,
20345                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20346                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20347         },
20348         {
20349         .description = "em_key_id",
20350         .field_bit_size = 5,
20351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20352         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20353                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20354         },
20355         {
20356         .description = "em_profile_id",
20357         .field_bit_size = 8,
20358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20359         .result_operand = {
20360                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20361                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20363                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20364         },
20365         {
20366         .description = "em_search_en",
20367         .field_bit_size = 1,
20368         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20369         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20371         },
20372         {
20373         .description = "pl_byp_lkup_en",
20374         .field_bit_size = 1,
20375         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20376         },
20377         /* class_tid: 15, stingray, table: ext_em_0 */
20378         {
20379         .description = "act_rec_ptr",
20380         .field_bit_size = 33,
20381         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20382         .result_operand = {
20383                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20384                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20385                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20386                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20387         },
20388         {
20389         .description = "ext_flow_ctr",
20390         .field_bit_size = 1,
20391         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20392         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20394         },
20395         {
20396         .description = "act_rec_int",
20397         .field_bit_size = 1,
20398         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20399         },
20400         {
20401         .description = "act_rec_size",
20402         .field_bit_size = 5,
20403         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20404         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20405                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20406         },
20407         {
20408         .description = "key_size",
20409         .field_bit_size = 9,
20410         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20411         .result_operand = {
20412                 (0x0185 >> 8) & 0xff,
20413                 0x0185 & 0xff,
20414                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20415                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20416         },
20417         {
20418         .description = "reserved",
20419         .field_bit_size = 11,
20420         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20421         },
20422         {
20423         .description = "strength",
20424         .field_bit_size = 2,
20425         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20426         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20427                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20428         },
20429         {
20430         .description = "l1_cacheable",
20431         .field_bit_size = 1,
20432         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20433         },
20434         {
20435         .description = "valid",
20436         .field_bit_size = 1,
20437         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20438         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20440         },
20441         /* class_tid: 15, stingray, table: int_em_0 */
20442         {
20443         .description = "act_rec_ptr",
20444         .field_bit_size = 33,
20445         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20446         .result_operand = {
20447                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20448                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20449                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20450                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20451         },
20452         {
20453         .description = "ext_flow_ctr",
20454         .field_bit_size = 1,
20455         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20456         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20458         },
20459         {
20460         .description = "act_rec_int",
20461         .field_bit_size = 1,
20462         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20463         },
20464         {
20465         .description = "act_rec_size",
20466         .field_bit_size = 5,
20467         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20468         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20470         },
20471         {
20472         .description = "key_size",
20473         .field_bit_size = 9,
20474         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20475         .result_operand = {
20476                 (0x0185 >> 8) & 0xff,
20477                 0x0185 & 0xff,
20478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20479                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20480         },
20481         {
20482         .description = "reserved",
20483         .field_bit_size = 11,
20484         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20485         },
20486         {
20487         .description = "strength",
20488         .field_bit_size = 2,
20489         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20490         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20491                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20492         },
20493         {
20494         .description = "l1_cacheable",
20495         .field_bit_size = 1,
20496         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20497         },
20498         {
20499         .description = "valid",
20500         .field_bit_size = 1,
20501         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20502         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20504         },
20505         /* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */
20506         {
20507         .description = "l2_cntxt_id",
20508         .field_bit_size = 10,
20509         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20510         .result_operand = {
20511                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20512                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20515         },
20516         {
20517         .description = "prof_func_id",
20518         .field_bit_size = 7,
20519         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20520         .result_operand = {
20521                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20522                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20525         },
20526         {
20527         .description = "l2_byp_lkup_en",
20528         .field_bit_size = 1,
20529         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20530         },
20531         {
20532         .description = "parif",
20533         .field_bit_size = 4,
20534         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20535         .result_operand = {
20536                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20537                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20540         },
20541         {
20542         .description = "allowed_pri",
20543         .field_bit_size = 8,
20544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20545         },
20546         {
20547         .description = "default_pri",
20548         .field_bit_size = 3,
20549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20550         },
20551         {
20552         .description = "allowed_tpid",
20553         .field_bit_size = 6,
20554         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20555         },
20556         {
20557         .description = "default_tpid",
20558         .field_bit_size = 3,
20559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20560         },
20561         {
20562         .description = "bd_act_en",
20563         .field_bit_size = 1,
20564         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20565         },
20566         {
20567         .description = "sp_rec_ptr",
20568         .field_bit_size = 16,
20569         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20570         },
20571         {
20572         .description = "byp_sp_lkup",
20573         .field_bit_size = 1,
20574         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20575         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20577         },
20578         {
20579         .description = "pri_anti_spoof_ctl",
20580         .field_bit_size = 2,
20581         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20582         },
20583         {
20584         .description = "tpid_anti_spoof_ctl",
20585         .field_bit_size = 2,
20586         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20587         },
20588         /* class_tid: 16, stingray, table: profile_tcam_cache_0 */
20589         {
20590         .description = "em_profile_id",
20591         .field_bit_size = 10,
20592         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20593         .result_operand = {
20594                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20595                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20598         },
20599         /* class_tid: 16, stingray, table: profile_tcam_0 */
20600         {
20601         .description = "wc_key_id",
20602         .field_bit_size = 4,
20603         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20604         },
20605         {
20606         .description = "wc_profile_id",
20607         .field_bit_size = 8,
20608         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20609         },
20610         {
20611         .description = "wc_search_en",
20612         .field_bit_size = 1,
20613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20614         },
20615         {
20616         .description = "em_key_mask",
20617         .field_bit_size = 10,
20618         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20619         .result_operand = {
20620                 (0x0031 >> 8) & 0xff,
20621                 0x0031 & 0xff,
20622                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20623                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20624         },
20625         {
20626         .description = "em_key_id",
20627         .field_bit_size = 5,
20628         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20629         .result_operand = {0x14, 0x00, 0x00, 0x00, 0x00, 0x00,
20630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20631         },
20632         {
20633         .description = "em_profile_id",
20634         .field_bit_size = 8,
20635         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20636         .result_operand = {
20637                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20638                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20639                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20640                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20641         },
20642         {
20643         .description = "em_search_en",
20644         .field_bit_size = 1,
20645         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20646         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20647                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20648         },
20649         {
20650         .description = "pl_byp_lkup_en",
20651         .field_bit_size = 1,
20652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20653         },
20654         /* class_tid: 16, stingray, table: ext_em_0 */
20655         {
20656         .description = "act_rec_ptr",
20657         .field_bit_size = 33,
20658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20659         .result_operand = {
20660                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20661                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20664         },
20665         {
20666         .description = "ext_flow_ctr",
20667         .field_bit_size = 1,
20668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20669         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20671         },
20672         {
20673         .description = "act_rec_int",
20674         .field_bit_size = 1,
20675         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20676         },
20677         {
20678         .description = "act_rec_size",
20679         .field_bit_size = 5,
20680         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20681         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20683         },
20684         {
20685         .description = "key_size",
20686         .field_bit_size = 9,
20687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20688         .result_operand = {
20689                 (0x00c5 >> 8) & 0xff,
20690                 0x00c5 & 0xff,
20691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20692                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20693         },
20694         {
20695         .description = "reserved",
20696         .field_bit_size = 11,
20697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20698         },
20699         {
20700         .description = "strength",
20701         .field_bit_size = 2,
20702         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20703         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20704                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20705         },
20706         {
20707         .description = "l1_cacheable",
20708         .field_bit_size = 1,
20709         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20710         },
20711         {
20712         .description = "valid",
20713         .field_bit_size = 1,
20714         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20715         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20717         },
20718         /* class_tid: 16, stingray, table: int_em_0 */
20719         {
20720         .description = "act_rec_ptr",
20721         .field_bit_size = 33,
20722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20723         .result_operand = {
20724                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20725                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20727                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20728         },
20729         {
20730         .description = "ext_flow_ctr",
20731         .field_bit_size = 1,
20732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20733         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20735         },
20736         {
20737         .description = "act_rec_int",
20738         .field_bit_size = 1,
20739         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20740         },
20741         {
20742         .description = "act_rec_size",
20743         .field_bit_size = 5,
20744         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20745         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20746                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20747         },
20748         {
20749         .description = "key_size",
20750         .field_bit_size = 9,
20751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20752         .result_operand = {
20753                 (0x00c5 >> 8) & 0xff,
20754                 0x00c5 & 0xff,
20755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20757         },
20758         {
20759         .description = "reserved",
20760         .field_bit_size = 11,
20761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20762         },
20763         {
20764         .description = "strength",
20765         .field_bit_size = 2,
20766         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20767         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20769         },
20770         {
20771         .description = "l1_cacheable",
20772         .field_bit_size = 1,
20773         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20774         },
20775         {
20776         .description = "valid",
20777         .field_bit_size = 1,
20778         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20779         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20780                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20781         },
20782         /* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */
20783         {
20784         .description = "l2_cntxt_id",
20785         .field_bit_size = 10,
20786         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20787         .result_operand = {
20788                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20789                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20792         },
20793         {
20794         .description = "prof_func_id",
20795         .field_bit_size = 7,
20796         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20797         .result_operand = {
20798                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20799                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20800                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20802         },
20803         {
20804         .description = "l2_byp_lkup_en",
20805         .field_bit_size = 1,
20806         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20807         },
20808         {
20809         .description = "parif",
20810         .field_bit_size = 4,
20811         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20812         .result_operand = {
20813                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20814                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20815                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20816                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20817         },
20818         {
20819         .description = "allowed_pri",
20820         .field_bit_size = 8,
20821         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20822         },
20823         {
20824         .description = "default_pri",
20825         .field_bit_size = 3,
20826         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20827         },
20828         {
20829         .description = "allowed_tpid",
20830         .field_bit_size = 6,
20831         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20832         },
20833         {
20834         .description = "default_tpid",
20835         .field_bit_size = 3,
20836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20837         },
20838         {
20839         .description = "bd_act_en",
20840         .field_bit_size = 1,
20841         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20842         },
20843         {
20844         .description = "sp_rec_ptr",
20845         .field_bit_size = 16,
20846         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20847         },
20848         {
20849         .description = "byp_sp_lkup",
20850         .field_bit_size = 1,
20851         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20852         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20854         },
20855         {
20856         .description = "pri_anti_spoof_ctl",
20857         .field_bit_size = 2,
20858         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20859         },
20860         {
20861         .description = "tpid_anti_spoof_ctl",
20862         .field_bit_size = 2,
20863         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20864         },
20865         /* class_tid: 17, stingray, table: profile_tcam_cache_0 */
20866         {
20867         .description = "em_profile_id",
20868         .field_bit_size = 10,
20869         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20870         .result_operand = {
20871                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20872                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20875         },
20876         /* class_tid: 17, stingray, table: profile_tcam_0 */
20877         {
20878         .description = "wc_key_id",
20879         .field_bit_size = 4,
20880         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20881         },
20882         {
20883         .description = "wc_profile_id",
20884         .field_bit_size = 8,
20885         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20886         },
20887         {
20888         .description = "wc_search_en",
20889         .field_bit_size = 1,
20890         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20891         },
20892         {
20893         .description = "em_key_mask",
20894         .field_bit_size = 10,
20895         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20896         .result_operand = {
20897                 (0x0031 >> 8) & 0xff,
20898                 0x0031 & 0xff,
20899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20901         },
20902         {
20903         .description = "em_key_id",
20904         .field_bit_size = 5,
20905         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20906         .result_operand = {0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
20907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20908         },
20909         {
20910         .description = "em_profile_id",
20911         .field_bit_size = 8,
20912         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20913         .result_operand = {
20914                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20915                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20916                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20917                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20918         },
20919         {
20920         .description = "em_search_en",
20921         .field_bit_size = 1,
20922         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20923         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20925         },
20926         {
20927         .description = "pl_byp_lkup_en",
20928         .field_bit_size = 1,
20929         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20930         },
20931         /* class_tid: 17, stingray, table: ext_em_0 */
20932         {
20933         .description = "act_rec_ptr",
20934         .field_bit_size = 33,
20935         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20936         .result_operand = {
20937                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20938                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20941         },
20942         {
20943         .description = "ext_flow_ctr",
20944         .field_bit_size = 1,
20945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20946         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20947                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20948         },
20949         {
20950         .description = "act_rec_int",
20951         .field_bit_size = 1,
20952         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20953         },
20954         {
20955         .description = "act_rec_size",
20956         .field_bit_size = 5,
20957         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20958         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20960         },
20961         {
20962         .description = "key_size",
20963         .field_bit_size = 9,
20964         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20965         .result_operand = {
20966                 (0x0185 >> 8) & 0xff,
20967                 0x0185 & 0xff,
20968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20970         },
20971         {
20972         .description = "reserved",
20973         .field_bit_size = 11,
20974         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20975         },
20976         {
20977         .description = "strength",
20978         .field_bit_size = 2,
20979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20980         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20981                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20982         },
20983         {
20984         .description = "l1_cacheable",
20985         .field_bit_size = 1,
20986         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20987         },
20988         {
20989         .description = "valid",
20990         .field_bit_size = 1,
20991         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20992         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20994         },
20995         /* class_tid: 17, stingray, table: int_em_0 */
20996         {
20997         .description = "act_rec_ptr",
20998         .field_bit_size = 33,
20999         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21000         .result_operand = {
21001                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21002                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21005         },
21006         {
21007         .description = "ext_flow_ctr",
21008         .field_bit_size = 1,
21009         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21010         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21012         },
21013         {
21014         .description = "act_rec_int",
21015         .field_bit_size = 1,
21016         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21017         },
21018         {
21019         .description = "act_rec_size",
21020         .field_bit_size = 5,
21021         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21022         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21024         },
21025         {
21026         .description = "key_size",
21027         .field_bit_size = 9,
21028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21029         .result_operand = {
21030                 (0x0185 >> 8) & 0xff,
21031                 0x0185 & 0xff,
21032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21034         },
21035         {
21036         .description = "reserved",
21037         .field_bit_size = 11,
21038         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21039         },
21040         {
21041         .description = "strength",
21042         .field_bit_size = 2,
21043         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21044         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21045                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21046         },
21047         {
21048         .description = "l1_cacheable",
21049         .field_bit_size = 1,
21050         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21051         },
21052         {
21053         .description = "valid",
21054         .field_bit_size = 1,
21055         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21056         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21058         },
21059         /* class_tid: 18, stingray, table: int_flow_counter_tbl_0 */
21060         {
21061         .description = "count",
21062         .field_bit_size = 64,
21063         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21064         },
21065         /* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */
21066         {
21067         .description = "l2_cntxt_id",
21068         .field_bit_size = 10,
21069         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21070         .result_operand = {
21071                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21072                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21075         },
21076         {
21077         .description = "prof_func_id",
21078         .field_bit_size = 7,
21079         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21080         .result_operand = {
21081                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21082                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21085         },
21086         {
21087         .description = "l2_byp_lkup_en",
21088         .field_bit_size = 1,
21089         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21090         },
21091         {
21092         .description = "parif",
21093         .field_bit_size = 4,
21094         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21095         .result_operand = {
21096                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21097                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21100         },
21101         {
21102         .description = "allowed_pri",
21103         .field_bit_size = 8,
21104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21105         },
21106         {
21107         .description = "default_pri",
21108         .field_bit_size = 3,
21109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21110         },
21111         {
21112         .description = "allowed_tpid",
21113         .field_bit_size = 6,
21114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21115         },
21116         {
21117         .description = "default_tpid",
21118         .field_bit_size = 3,
21119         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21120         },
21121         {
21122         .description = "bd_act_en",
21123         .field_bit_size = 1,
21124         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21125         },
21126         {
21127         .description = "sp_rec_ptr",
21128         .field_bit_size = 16,
21129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21130         },
21131         {
21132         .description = "byp_sp_lkup",
21133         .field_bit_size = 1,
21134         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21135         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21137         },
21138         {
21139         .description = "pri_anti_spoof_ctl",
21140         .field_bit_size = 2,
21141         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21142         },
21143         {
21144         .description = "tpid_anti_spoof_ctl",
21145         .field_bit_size = 2,
21146         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21147         },
21148         /* class_tid: 18, stingray, table: profile_tcam_cache_0 */
21149         {
21150         .description = "em_profile_id",
21151         .field_bit_size = 10,
21152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21153         .result_operand = {
21154                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21155                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21158         },
21159         {
21160         .description = "wc_profile_id",
21161         .field_bit_size = 10,
21162         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21163         .result_operand = {
21164                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21165                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21168         },
21169         /* class_tid: 18, stingray, table: profile_tcam_0 */
21170         {
21171         .description = "wc_key_id",
21172         .field_bit_size = 4,
21173         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21174         },
21175         {
21176         .description = "wc_profile_id",
21177         .field_bit_size = 8,
21178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21179         .result_operand = {
21180                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21181                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21183                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21184         },
21185         {
21186         .description = "wc_search_en",
21187         .field_bit_size = 1,
21188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21189         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21191         },
21192         {
21193         .description = "em_key_mask",
21194         .field_bit_size = 10,
21195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21196         .result_operand = {
21197                 (0x001b >> 8) & 0xff,
21198                 0x001b & 0xff,
21199                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21201         },
21202         {
21203         .description = "em_key_id",
21204         .field_bit_size = 5,
21205         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21206         .result_operand = {0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
21207                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21208         },
21209         {
21210         .description = "em_profile_id",
21211         .field_bit_size = 8,
21212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21213         .result_operand = {
21214                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21215                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21216                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21217                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21218         },
21219         {
21220         .description = "em_search_en",
21221         .field_bit_size = 1,
21222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21223         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21225         },
21226         {
21227         .description = "pl_byp_lkup_en",
21228         .field_bit_size = 1,
21229         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21230         },
21231         /* class_tid: 18, stingray, table: wm_0 */
21232         {
21233         .description = "strength",
21234         .field_bit_size = 2,
21235         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21236         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21238         },
21239         {
21240         .description = "act_rec_ptr",
21241         .field_bit_size = 16,
21242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21243         .result_operand = {
21244                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21245                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21248         },
21249         {
21250         .description = "valid",
21251         .field_bit_size = 1,
21252         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21253         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21254                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21255         },
21256         /* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */
21257         {
21258         .description = "l2_cntxt_id",
21259         .field_bit_size = 10,
21260         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21261         .result_operand = {
21262                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21263                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21264                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21266         },
21267         {
21268         .description = "prof_func_id",
21269         .field_bit_size = 7,
21270         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21271         .result_operand = {
21272                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21273                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21274                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21276         },
21277         {
21278         .description = "l2_byp_lkup_en",
21279         .field_bit_size = 1,
21280         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21281         },
21282         {
21283         .description = "parif",
21284         .field_bit_size = 4,
21285         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21286         .result_operand = {
21287                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21288                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21291         },
21292         {
21293         .description = "allowed_pri",
21294         .field_bit_size = 8,
21295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21296         },
21297         {
21298         .description = "default_pri",
21299         .field_bit_size = 3,
21300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21301         },
21302         {
21303         .description = "allowed_tpid",
21304         .field_bit_size = 6,
21305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21306         },
21307         {
21308         .description = "default_tpid",
21309         .field_bit_size = 3,
21310         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21311         },
21312         {
21313         .description = "bd_act_en",
21314         .field_bit_size = 1,
21315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21316         },
21317         {
21318         .description = "sp_rec_ptr",
21319         .field_bit_size = 16,
21320         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21321         },
21322         {
21323         .description = "byp_sp_lkup",
21324         .field_bit_size = 1,
21325         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21326         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21328         },
21329         {
21330         .description = "pri_anti_spoof_ctl",
21331         .field_bit_size = 2,
21332         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21333         },
21334         {
21335         .description = "tpid_anti_spoof_ctl",
21336         .field_bit_size = 2,
21337         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21338         },
21339         /* class_tid: 19, stingray, table: profile_tcam_cache_0 */
21340         {
21341         .description = "em_profile_id",
21342         .field_bit_size = 10,
21343         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21344         .result_operand = {
21345                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21346                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21348                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21349         },
21350         {
21351         .description = "wc_profile_id",
21352         .field_bit_size = 10,
21353         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21354         .result_operand = {
21355                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21356                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21358                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21359         },
21360         /* class_tid: 19, stingray, table: profile_tcam_0 */
21361         {
21362         .description = "wc_key_id",
21363         .field_bit_size = 4,
21364         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21365         },
21366         {
21367         .description = "wc_profile_id",
21368         .field_bit_size = 8,
21369         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21370         },
21371         {
21372         .description = "wc_search_en",
21373         .field_bit_size = 1,
21374         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21375         },
21376         {
21377         .description = "em_key_mask",
21378         .field_bit_size = 10,
21379         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21380         },
21381         {
21382         .description = "em_key_id",
21383         .field_bit_size = 5,
21384         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21385         },
21386         {
21387         .description = "em_profile_id",
21388         .field_bit_size = 8,
21389         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21390         },
21391         {
21392         .description = "em_search_en",
21393         .field_bit_size = 1,
21394         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21395         },
21396         {
21397         .description = "pl_byp_lkup_en",
21398         .field_bit_size = 1,
21399         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21400         },
21401         /* class_tid: 19, stingray, table: int_em_0 */
21402         {
21403         .description = "act_rec_ptr",
21404         .field_bit_size = 33,
21405         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21406         .result_operand = {
21407                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21408                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21409                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21411         },
21412         {
21413         .description = "ext_flow_ctr",
21414         .field_bit_size = 1,
21415         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21416         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21417                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21418         },
21419         {
21420         .description = "act_rec_int",
21421         .field_bit_size = 1,
21422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21423         },
21424         {
21425         .description = "act_rec_size",
21426         .field_bit_size = 5,
21427         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21428         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21430         },
21431         {
21432         .description = "key_size",
21433         .field_bit_size = 9,
21434         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21435         .result_operand = {
21436                 (0x006d >> 8) & 0xff,
21437                 0x006d & 0xff,
21438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21440         },
21441         {
21442         .description = "reserved",
21443         .field_bit_size = 11,
21444         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21445         },
21446         {
21447         .description = "strength",
21448         .field_bit_size = 2,
21449         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21450         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21452         },
21453         {
21454         .description = "l1_cacheable",
21455         .field_bit_size = 1,
21456         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21457         },
21458         {
21459         .description = "valid",
21460         .field_bit_size = 1,
21461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21462         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21464         },
21465         /* class_tid: 19, stingray, table: ext_em_0 */
21466         {
21467         .description = "act_rec_ptr",
21468         .field_bit_size = 33,
21469         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21470         .result_operand = {
21471                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21472                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21473                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21474                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21475         },
21476         {
21477         .description = "ext_flow_ctr",
21478         .field_bit_size = 1,
21479         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21480         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21481                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21482         },
21483         {
21484         .description = "act_rec_int",
21485         .field_bit_size = 1,
21486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21487         },
21488         {
21489         .description = "act_rec_size",
21490         .field_bit_size = 5,
21491         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21492         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21494         },
21495         {
21496         .description = "key_size",
21497         .field_bit_size = 9,
21498         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21499         .result_operand = {
21500                 (0x006d >> 8) & 0xff,
21501                 0x006d & 0xff,
21502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21504         },
21505         {
21506         .description = "reserved",
21507         .field_bit_size = 11,
21508         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21509         },
21510         {
21511         .description = "strength",
21512         .field_bit_size = 2,
21513         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21514         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21516         },
21517         {
21518         .description = "l1_cacheable",
21519         .field_bit_size = 1,
21520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21521         },
21522         {
21523         .description = "valid",
21524         .field_bit_size = 1,
21525         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21526         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21528         },
21529         /* class_tid: 20, stingray, table: l2_cntxt_cache_0 */
21530         {
21531         .description = "l2_cntxt_id",
21532         .field_bit_size = 10,
21533         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21534         .result_operand = {
21535                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21536                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21537                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21538                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21539         },
21540         /* class_tid: 20, stingray, table: l2_cntxt_tcam_0 */
21541         {
21542         .description = "l2_cntxt_id",
21543         .field_bit_size = 10,
21544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21545         .result_operand = {
21546                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21547                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21548                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21549                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21550         },
21551         {
21552         .description = "prof_func_id",
21553         .field_bit_size = 7,
21554         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21555         .result_operand = {
21556                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21557                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21559                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21560         },
21561         {
21562         .description = "l2_byp_lkup_en",
21563         .field_bit_size = 1,
21564         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21565         },
21566         {
21567         .description = "parif",
21568         .field_bit_size = 4,
21569         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21570         .result_operand = {
21571                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21572                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21573                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21574                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21575         .result_operand_true = {
21576                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21577                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21579                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21580         .result_operand_false = {
21581                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21582                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21583                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21585         },
21586         {
21587         .description = "allowed_pri",
21588         .field_bit_size = 8,
21589         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21590         },
21591         {
21592         .description = "default_pri",
21593         .field_bit_size = 3,
21594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21595         },
21596         {
21597         .description = "allowed_tpid",
21598         .field_bit_size = 6,
21599         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21600         },
21601         {
21602         .description = "default_tpid",
21603         .field_bit_size = 3,
21604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21605         },
21606         {
21607         .description = "bd_act_en",
21608         .field_bit_size = 1,
21609         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21610         },
21611         {
21612         .description = "sp_rec_ptr",
21613         .field_bit_size = 16,
21614         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21615         .result_operand = {
21616                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21617                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21619                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21620         },
21621         {
21622         .description = "byp_sp_lkup",
21623         .field_bit_size = 1,
21624         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21625         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21627         },
21628         {
21629         .description = "pri_anti_spoof_ctl",
21630         .field_bit_size = 2,
21631         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21632         },
21633         {
21634         .description = "tpid_anti_spoof_ctl",
21635         .field_bit_size = 2,
21636         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21637         },
21638         /* class_tid: 20, stingray, table: profile_tcam_cache_0 */
21639         {
21640         .description = "em_profile_id",
21641         .field_bit_size = 10,
21642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21643         .result_operand = {
21644                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21645                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21646                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21647                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21648         },
21649         /* class_tid: 20, stingray, table: profile_tcam_0 */
21650         {
21651         .description = "wc_key_id",
21652         .field_bit_size = 4,
21653         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21654         },
21655         {
21656         .description = "wc_profile_id",
21657         .field_bit_size = 8,
21658         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21659         },
21660         {
21661         .description = "wc_search_en",
21662         .field_bit_size = 1,
21663         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21664         },
21665         {
21666         .description = "em_key_mask",
21667         .field_bit_size = 10,
21668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21669         .result_operand = {
21670                 (0x00f9 >> 8) & 0xff,
21671                 0x00f9 & 0xff,
21672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21674         },
21675         {
21676         .description = "em_key_id",
21677         .field_bit_size = 5,
21678         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21679         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
21680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21681         },
21682         {
21683         .description = "em_profile_id",
21684         .field_bit_size = 8,
21685         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21686         .result_operand = {
21687                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21688                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21689                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21691         },
21692         {
21693         .description = "em_search_en",
21694         .field_bit_size = 1,
21695         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21696         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21698         },
21699         {
21700         .description = "pl_byp_lkup_en",
21701         .field_bit_size = 1,
21702         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21703         },
21704         /* class_tid: 20, stingray, table: ext_em_0 */
21705         {
21706         .description = "act_rec_ptr",
21707         .field_bit_size = 33,
21708         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21709         .result_operand = {
21710                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21711                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21713                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21714         },
21715         {
21716         .description = "ext_flow_ctr",
21717         .field_bit_size = 1,
21718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21719         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21720                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21721         },
21722         {
21723         .description = "act_rec_int",
21724         .field_bit_size = 1,
21725         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21726         },
21727         {
21728         .description = "act_rec_size",
21729         .field_bit_size = 5,
21730         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21731         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21732                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21733         },
21734         {
21735         .description = "key_size",
21736         .field_bit_size = 9,
21737         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21738         .result_operand = {
21739                 (0x00c5 >> 8) & 0xff,
21740                 0x00c5 & 0xff,
21741                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21742                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21743         },
21744         {
21745         .description = "reserved",
21746         .field_bit_size = 11,
21747         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21748         },
21749         {
21750         .description = "strength",
21751         .field_bit_size = 2,
21752         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21753         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21755         },
21756         {
21757         .description = "l1_cacheable",
21758         .field_bit_size = 1,
21759         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21760         },
21761         {
21762         .description = "valid",
21763         .field_bit_size = 1,
21764         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21765         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21767         },
21768         /* class_tid: 20, stingray, table: int_em_0 */
21769         {
21770         .description = "act_rec_ptr",
21771         .field_bit_size = 33,
21772         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21773         .result_operand = {
21774                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21775                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21777                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21778         },
21779         {
21780         .description = "ext_flow_ctr",
21781         .field_bit_size = 1,
21782         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21783         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21785         },
21786         {
21787         .description = "act_rec_int",
21788         .field_bit_size = 1,
21789         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21790         },
21791         {
21792         .description = "act_rec_size",
21793         .field_bit_size = 5,
21794         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21795         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21796                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21797         },
21798         {
21799         .description = "key_size",
21800         .field_bit_size = 9,
21801         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21802         .result_operand = {
21803                 (0x00c5 >> 8) & 0xff,
21804                 0x00c5 & 0xff,
21805                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21806                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21807         },
21808         {
21809         .description = "reserved",
21810         .field_bit_size = 11,
21811         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21812         },
21813         {
21814         .description = "strength",
21815         .field_bit_size = 2,
21816         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21817         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21819         },
21820         {
21821         .description = "l1_cacheable",
21822         .field_bit_size = 1,
21823         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21824         },
21825         {
21826         .description = "valid",
21827         .field_bit_size = 1,
21828         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21829         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21831         },
21832         /* class_tid: 21, stingray, table: l2_cntxt_cache_0 */
21833         {
21834         .description = "l2_cntxt_id",
21835         .field_bit_size = 10,
21836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21837         .result_operand = {
21838                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21839                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21840                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21842         },
21843         /* class_tid: 21, stingray, table: l2_cntxt_tcam_0 */
21844         {
21845         .description = "l2_cntxt_id",
21846         .field_bit_size = 10,
21847         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21848         .result_operand = {
21849                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21850                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21853         },
21854         {
21855         .description = "prof_func_id",
21856         .field_bit_size = 7,
21857         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21858         .result_operand = {
21859                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21860                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21863         },
21864         {
21865         .description = "l2_byp_lkup_en",
21866         .field_bit_size = 1,
21867         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21868         },
21869         {
21870         .description = "parif",
21871         .field_bit_size = 4,
21872         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21873         .result_operand = {
21874                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21875                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21876                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21878         .result_operand_true = {
21879                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21880                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21883         .result_operand_false = {
21884                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21885                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21887                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21888         },
21889         {
21890         .description = "allowed_pri",
21891         .field_bit_size = 8,
21892         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21893         },
21894         {
21895         .description = "default_pri",
21896         .field_bit_size = 3,
21897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21898         },
21899         {
21900         .description = "allowed_tpid",
21901         .field_bit_size = 6,
21902         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21903         },
21904         {
21905         .description = "default_tpid",
21906         .field_bit_size = 3,
21907         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21908         },
21909         {
21910         .description = "bd_act_en",
21911         .field_bit_size = 1,
21912         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21913         },
21914         {
21915         .description = "sp_rec_ptr",
21916         .field_bit_size = 16,
21917         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21918         .result_operand = {
21919                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21920                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21923         },
21924         {
21925         .description = "byp_sp_lkup",
21926         .field_bit_size = 1,
21927         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21928         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21930         },
21931         {
21932         .description = "pri_anti_spoof_ctl",
21933         .field_bit_size = 2,
21934         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21935         },
21936         {
21937         .description = "tpid_anti_spoof_ctl",
21938         .field_bit_size = 2,
21939         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21940         },
21941         /* class_tid: 21, stingray, table: profile_tcam_cache_0 */
21942         {
21943         .description = "em_profile_id",
21944         .field_bit_size = 10,
21945         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21946         .result_operand = {
21947                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21948                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21951         },
21952         /* class_tid: 21, stingray, table: profile_tcam_0 */
21953         {
21954         .description = "wc_key_id",
21955         .field_bit_size = 4,
21956         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21957         },
21958         {
21959         .description = "wc_profile_id",
21960         .field_bit_size = 8,
21961         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21962         },
21963         {
21964         .description = "wc_search_en",
21965         .field_bit_size = 1,
21966         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21967         },
21968         {
21969         .description = "em_key_mask",
21970         .field_bit_size = 10,
21971         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21972         .result_operand = {
21973                 (0x00f9 >> 8) & 0xff,
21974                 0x00f9 & 0xff,
21975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21977         },
21978         {
21979         .description = "em_key_id",
21980         .field_bit_size = 5,
21981         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21982         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
21983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21984         },
21985         {
21986         .description = "em_profile_id",
21987         .field_bit_size = 8,
21988         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21989         .result_operand = {
21990                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21991                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21992                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21994         },
21995         {
21996         .description = "em_search_en",
21997         .field_bit_size = 1,
21998         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21999         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22000                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22001         },
22002         {
22003         .description = "pl_byp_lkup_en",
22004         .field_bit_size = 1,
22005         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22006         },
22007         /* class_tid: 21, stingray, table: ext_em_0 */
22008         {
22009         .description = "act_rec_ptr",
22010         .field_bit_size = 33,
22011         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22012         .result_operand = {
22013                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22014                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22016                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22017         },
22018         {
22019         .description = "ext_flow_ctr",
22020         .field_bit_size = 1,
22021         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22022         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22023                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22024         },
22025         {
22026         .description = "act_rec_int",
22027         .field_bit_size = 1,
22028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22029         },
22030         {
22031         .description = "act_rec_size",
22032         .field_bit_size = 5,
22033         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22034         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22036         },
22037         {
22038         .description = "key_size",
22039         .field_bit_size = 9,
22040         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22041         .result_operand = {
22042                 (0x00c5 >> 8) & 0xff,
22043                 0x00c5 & 0xff,
22044                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22045                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22046         },
22047         {
22048         .description = "reserved",
22049         .field_bit_size = 11,
22050         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22051         },
22052         {
22053         .description = "strength",
22054         .field_bit_size = 2,
22055         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22056         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22058         },
22059         {
22060         .description = "l1_cacheable",
22061         .field_bit_size = 1,
22062         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22063         },
22064         {
22065         .description = "valid",
22066         .field_bit_size = 1,
22067         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22068         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22070         },
22071         /* class_tid: 21, stingray, table: int_em_0 */
22072         {
22073         .description = "act_rec_ptr",
22074         .field_bit_size = 33,
22075         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22076         .result_operand = {
22077                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22078                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22081         },
22082         {
22083         .description = "ext_flow_ctr",
22084         .field_bit_size = 1,
22085         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22086         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22088         },
22089         {
22090         .description = "act_rec_int",
22091         .field_bit_size = 1,
22092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22093         },
22094         {
22095         .description = "act_rec_size",
22096         .field_bit_size = 5,
22097         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22098         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22100         },
22101         {
22102         .description = "key_size",
22103         .field_bit_size = 9,
22104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22105         .result_operand = {
22106                 (0x00c5 >> 8) & 0xff,
22107                 0x00c5 & 0xff,
22108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22110         },
22111         {
22112         .description = "reserved",
22113         .field_bit_size = 11,
22114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22115         },
22116         {
22117         .description = "strength",
22118         .field_bit_size = 2,
22119         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22120         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22121                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22122         },
22123         {
22124         .description = "l1_cacheable",
22125         .field_bit_size = 1,
22126         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22127         },
22128         {
22129         .description = "valid",
22130         .field_bit_size = 1,
22131         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22132         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22133                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22134         },
22135         /* class_tid: 22, stingray, table: l2_cntxt_cache_0 */
22136         {
22137         .description = "l2_cntxt_id",
22138         .field_bit_size = 10,
22139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22140         .result_operand = {
22141                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22142                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22143                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22145         },
22146         /* class_tid: 22, stingray, table: l2_cntxt_0 */
22147         {
22148         .description = "l2_cntxt_id",
22149         .field_bit_size = 10,
22150         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22151         .result_operand = {
22152                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22153                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22154                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22155                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22156         },
22157         {
22158         .description = "prof_func_id",
22159         .field_bit_size = 7,
22160         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22161         .result_operand = {
22162                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22163                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22166         },
22167         {
22168         .description = "l2_byp_lkup_en",
22169         .field_bit_size = 1,
22170         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22171         },
22172         {
22173         .description = "parif",
22174         .field_bit_size = 4,
22175         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22176         .result_operand = {
22177                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22178                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22181         .result_operand_true = {
22182                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22183                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22184                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22186         .result_operand_false = {
22187                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22188                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22191         },
22192         {
22193         .description = "allowed_pri",
22194         .field_bit_size = 8,
22195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22196         },
22197         {
22198         .description = "default_pri",
22199         .field_bit_size = 3,
22200         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22201         },
22202         {
22203         .description = "allowed_tpid",
22204         .field_bit_size = 6,
22205         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22206         },
22207         {
22208         .description = "default_tpid",
22209         .field_bit_size = 3,
22210         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22211         },
22212         {
22213         .description = "bd_act_en",
22214         .field_bit_size = 1,
22215         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22216         },
22217         {
22218         .description = "sp_rec_ptr",
22219         .field_bit_size = 16,
22220         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22221         .result_operand = {
22222                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22223                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22226         },
22227         {
22228         .description = "byp_sp_lkup",
22229         .field_bit_size = 1,
22230         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22231         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22233         },
22234         {
22235         .description = "pri_anti_spoof_ctl",
22236         .field_bit_size = 2,
22237         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22238         },
22239         {
22240         .description = "tpid_anti_spoof_ctl",
22241         .field_bit_size = 2,
22242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22243         },
22244         /* class_tid: 22, stingray, table: profile_tcam_cache_0 */
22245         {
22246         .description = "em_profile_id",
22247         .field_bit_size = 10,
22248         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22249         .result_operand = {
22250                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22251                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22252                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22253                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22254         },
22255         /* class_tid: 22, stingray, table: profile_tcam_0 */
22256         {
22257         .description = "wc_key_id",
22258         .field_bit_size = 4,
22259         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22260         },
22261         {
22262         .description = "wc_profile_id",
22263         .field_bit_size = 8,
22264         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22265         },
22266         {
22267         .description = "wc_search_en",
22268         .field_bit_size = 1,
22269         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22270         },
22271         {
22272         .description = "em_key_mask",
22273         .field_bit_size = 10,
22274         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22275         .result_operand = {
22276                 (0x00f9 >> 8) & 0xff,
22277                 0x00f9 & 0xff,
22278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22280         },
22281         {
22282         .description = "em_key_id",
22283         .field_bit_size = 5,
22284         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22285         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22287         },
22288         {
22289         .description = "em_profile_id",
22290         .field_bit_size = 8,
22291         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22292         .result_operand = {
22293                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22294                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22295                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22296                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22297         },
22298         {
22299         .description = "em_search_en",
22300         .field_bit_size = 1,
22301         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22302         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22303                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22304         },
22305         {
22306         .description = "pl_byp_lkup_en",
22307         .field_bit_size = 1,
22308         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22309         },
22310         /* class_tid: 22, stingray, table: ext_em_0 */
22311         {
22312         .description = "act_rec_ptr",
22313         .field_bit_size = 33,
22314         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22315         .result_operand = {
22316                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22317                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22320         },
22321         {
22322         .description = "ext_flow_ctr",
22323         .field_bit_size = 1,
22324         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22325         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22327         },
22328         {
22329         .description = "act_rec_int",
22330         .field_bit_size = 1,
22331         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22332         },
22333         {
22334         .description = "act_rec_size",
22335         .field_bit_size = 5,
22336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22337         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22339         },
22340         {
22341         .description = "key_size",
22342         .field_bit_size = 9,
22343         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22344         .result_operand = {
22345                 (0x0185 >> 8) & 0xff,
22346                 0x0185 & 0xff,
22347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22348                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22349         },
22350         {
22351         .description = "reserved",
22352         .field_bit_size = 11,
22353         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22354         },
22355         {
22356         .description = "strength",
22357         .field_bit_size = 2,
22358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22359         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22360                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22361         },
22362         {
22363         .description = "l1_cacheable",
22364         .field_bit_size = 1,
22365         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22366         },
22367         {
22368         .description = "valid",
22369         .field_bit_size = 1,
22370         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22371         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22373         },
22374         /* class_tid: 22, stingray, table: int_em_0 */
22375         {
22376         .description = "act_rec_ptr",
22377         .field_bit_size = 33,
22378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22379         .result_operand = {
22380                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22381                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22384         },
22385         {
22386         .description = "ext_flow_ctr",
22387         .field_bit_size = 1,
22388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22389         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22391         },
22392         {
22393         .description = "act_rec_int",
22394         .field_bit_size = 1,
22395         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22396         },
22397         {
22398         .description = "act_rec_size",
22399         .field_bit_size = 5,
22400         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22401         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22402                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22403         },
22404         {
22405         .description = "key_size",
22406         .field_bit_size = 9,
22407         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22408         .result_operand = {
22409                 (0x0185 >> 8) & 0xff,
22410                 0x0185 & 0xff,
22411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22413         },
22414         {
22415         .description = "reserved",
22416         .field_bit_size = 11,
22417         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22418         },
22419         {
22420         .description = "strength",
22421         .field_bit_size = 2,
22422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22423         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22425         },
22426         {
22427         .description = "l1_cacheable",
22428         .field_bit_size = 1,
22429         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22430         },
22431         {
22432         .description = "valid",
22433         .field_bit_size = 1,
22434         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22435         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22437         },
22438         /* class_tid: 23, stingray, table: l2_cntxt_cache_0 */
22439         {
22440         .description = "l2_cntxt_id",
22441         .field_bit_size = 10,
22442         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22443         .result_operand = {
22444                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22445                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22446                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22448         },
22449         /* class_tid: 23, stingray, table: l2_cntxt_tcam_0 */
22450         {
22451         .description = "l2_cntxt_id",
22452         .field_bit_size = 10,
22453         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22454         .result_operand = {
22455                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22456                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22457                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22458                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22459         },
22460         {
22461         .description = "prof_func_id",
22462         .field_bit_size = 7,
22463         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22464         .result_operand = {
22465                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22466                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22469         },
22470         {
22471         .description = "l2_byp_lkup_en",
22472         .field_bit_size = 1,
22473         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22474         },
22475         {
22476         .description = "parif",
22477         .field_bit_size = 4,
22478         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22479         .result_operand = {
22480                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22481                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22482                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22484         .result_operand_true = {
22485                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22486                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22487                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22489         .result_operand_false = {
22490                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22491                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22494         },
22495         {
22496         .description = "allowed_pri",
22497         .field_bit_size = 8,
22498         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22499         },
22500         {
22501         .description = "default_pri",
22502         .field_bit_size = 3,
22503         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22504         },
22505         {
22506         .description = "allowed_tpid",
22507         .field_bit_size = 6,
22508         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22509         },
22510         {
22511         .description = "default_tpid",
22512         .field_bit_size = 3,
22513         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22514         },
22515         {
22516         .description = "bd_act_en",
22517         .field_bit_size = 1,
22518         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22519         },
22520         {
22521         .description = "sp_rec_ptr",
22522         .field_bit_size = 16,
22523         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22524         .result_operand = {
22525                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22526                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22528                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22529         },
22530         {
22531         .description = "byp_sp_lkup",
22532         .field_bit_size = 1,
22533         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22534         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22536         },
22537         {
22538         .description = "pri_anti_spoof_ctl",
22539         .field_bit_size = 2,
22540         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22541         },
22542         {
22543         .description = "tpid_anti_spoof_ctl",
22544         .field_bit_size = 2,
22545         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22546         },
22547         /* class_tid: 23, stingray, table: profile_tcam_cache_0 */
22548         {
22549         .description = "em_profile_id",
22550         .field_bit_size = 10,
22551         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22552         .result_operand = {
22553                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22554                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22557         },
22558         /* class_tid: 23, stingray, table: profile_tcam_0 */
22559         {
22560         .description = "wc_key_id",
22561         .field_bit_size = 4,
22562         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22563         },
22564         {
22565         .description = "wc_profile_id",
22566         .field_bit_size = 8,
22567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22568         },
22569         {
22570         .description = "wc_search_en",
22571         .field_bit_size = 1,
22572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22573         },
22574         {
22575         .description = "em_key_mask",
22576         .field_bit_size = 10,
22577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22578         .result_operand = {
22579                 (0x00f9 >> 8) & 0xff,
22580                 0x00f9 & 0xff,
22581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22583         },
22584         {
22585         .description = "em_key_id",
22586         .field_bit_size = 5,
22587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22588         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22590         },
22591         {
22592         .description = "em_profile_id",
22593         .field_bit_size = 8,
22594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22595         .result_operand = {
22596                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22597                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22600         },
22601         {
22602         .description = "em_search_en",
22603         .field_bit_size = 1,
22604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22605         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22607         },
22608         {
22609         .description = "pl_byp_lkup_en",
22610         .field_bit_size = 1,
22611         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22612         },
22613         /* class_tid: 23, stingray, table: ext_em_0 */
22614         {
22615         .description = "act_rec_ptr",
22616         .field_bit_size = 33,
22617         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22618         .result_operand = {
22619                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22620                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22621                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22622                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22623         },
22624         {
22625         .description = "ext_flow_ctr",
22626         .field_bit_size = 1,
22627         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22628         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22629                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22630         },
22631         {
22632         .description = "act_rec_int",
22633         .field_bit_size = 1,
22634         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22635         },
22636         {
22637         .description = "act_rec_size",
22638         .field_bit_size = 5,
22639         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22640         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22641                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22642         },
22643         {
22644         .description = "key_size",
22645         .field_bit_size = 9,
22646         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22647         .result_operand = {
22648                 (0x0185 >> 8) & 0xff,
22649                 0x0185 & 0xff,
22650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22651                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22652         },
22653         {
22654         .description = "reserved",
22655         .field_bit_size = 11,
22656         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22657         },
22658         {
22659         .description = "strength",
22660         .field_bit_size = 2,
22661         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22662         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22664         },
22665         {
22666         .description = "l1_cacheable",
22667         .field_bit_size = 1,
22668         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22669         },
22670         {
22671         .description = "valid",
22672         .field_bit_size = 1,
22673         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22674         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22675                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22676         },
22677         /* class_tid: 23, stingray, table: int_em_0 */
22678         {
22679         .description = "act_rec_ptr",
22680         .field_bit_size = 33,
22681         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22682         .result_operand = {
22683                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22684                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22685                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22686                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22687         },
22688         {
22689         .description = "ext_flow_ctr",
22690         .field_bit_size = 1,
22691         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22692         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22693                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22694         },
22695         {
22696         .description = "act_rec_int",
22697         .field_bit_size = 1,
22698         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22699         },
22700         {
22701         .description = "act_rec_size",
22702         .field_bit_size = 5,
22703         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22704         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22706         },
22707         {
22708         .description = "key_size",
22709         .field_bit_size = 9,
22710         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22711         .result_operand = {
22712                 (0x0185 >> 8) & 0xff,
22713                 0x0185 & 0xff,
22714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22716         },
22717         {
22718         .description = "reserved",
22719         .field_bit_size = 11,
22720         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22721         },
22722         {
22723         .description = "strength",
22724         .field_bit_size = 2,
22725         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22726         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22727                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22728         },
22729         {
22730         .description = "l1_cacheable",
22731         .field_bit_size = 1,
22732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22733         },
22734         {
22735         .description = "valid",
22736         .field_bit_size = 1,
22737         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22738         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22740         },
22741         /* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */
22742         {
22743         .description = "l2_cntxt_id",
22744         .field_bit_size = 10,
22745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22746         .result_operand = {
22747                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22748                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22750                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22751         },
22752         {
22753         .description = "prof_func_id",
22754         .field_bit_size = 7,
22755         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22756         .result_operand = {
22757                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
22758                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
22759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22760                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22761         },
22762         {
22763         .description = "l2_byp_lkup_en",
22764         .field_bit_size = 1,
22765         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22766         },
22767         {
22768         .description = "parif",
22769         .field_bit_size = 4,
22770         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22771         .result_operand = {
22772                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22773                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22774                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22776         .result_operand_true = {
22777                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22778                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22780                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22781         .result_operand_false = {
22782                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22783                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22786         },
22787         {
22788         .description = "allowed_pri",
22789         .field_bit_size = 8,
22790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22791         },
22792         {
22793         .description = "default_pri",
22794         .field_bit_size = 3,
22795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22796         },
22797         {
22798         .description = "allowed_tpid",
22799         .field_bit_size = 6,
22800         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22801         },
22802         {
22803         .description = "default_tpid",
22804         .field_bit_size = 3,
22805         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22806         },
22807         {
22808         .description = "bd_act_en",
22809         .field_bit_size = 1,
22810         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22811         },
22812         {
22813         .description = "sp_rec_ptr",
22814         .field_bit_size = 16,
22815         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22816         .result_operand = {
22817                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22818                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22821         },
22822         {
22823         .description = "byp_sp_lkup",
22824         .field_bit_size = 1,
22825         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22826         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22828         },
22829         {
22830         .description = "pri_anti_spoof_ctl",
22831         .field_bit_size = 2,
22832         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22833         },
22834         {
22835         .description = "tpid_anti_spoof_ctl",
22836         .field_bit_size = 2,
22837         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22838         },
22839         /* class_tid: 24, stingray, table: profile_tcam_cache_0 */
22840         {
22841         .description = "em_profile_id",
22842         .field_bit_size = 10,
22843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22844         .result_operand = {
22845                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22846                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22849         },
22850         /* class_tid: 24, stingray, table: profile_tcam_0 */
22851         {
22852         .description = "wc_key_id",
22853         .field_bit_size = 4,
22854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22855         },
22856         {
22857         .description = "wc_profile_id",
22858         .field_bit_size = 8,
22859         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22860         },
22861         {
22862         .description = "wc_search_en",
22863         .field_bit_size = 1,
22864         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22865         },
22866         {
22867         .description = "em_key_mask",
22868         .field_bit_size = 10,
22869         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22870         .result_operand = {
22871                 (0x0003 >> 8) & 0xff,
22872                 0x0003 & 0xff,
22873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22875         },
22876         {
22877         .description = "em_key_id",
22878         .field_bit_size = 5,
22879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22880         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
22881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22882         },
22883         {
22884         .description = "em_profile_id",
22885         .field_bit_size = 8,
22886         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22887         .result_operand = {
22888                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22889                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22892         },
22893         {
22894         .description = "em_search_en",
22895         .field_bit_size = 1,
22896         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22897         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22899         },
22900         {
22901         .description = "pl_byp_lkup_en",
22902         .field_bit_size = 1,
22903         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22904         },
22905         /* class_tid: 24, stingray, table: ext_em_0 */
22906         {
22907         .description = "act_rec_ptr",
22908         .field_bit_size = 33,
22909         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22910         .result_operand = {
22911                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22912                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22915         },
22916         {
22917         .description = "ext_flow_ctr",
22918         .field_bit_size = 1,
22919         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22920         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22922         },
22923         {
22924         .description = "act_rec_int",
22925         .field_bit_size = 1,
22926         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22927         },
22928         {
22929         .description = "act_rec_size",
22930         .field_bit_size = 5,
22931         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22932         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22933                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22934         },
22935         {
22936         .description = "key_size",
22937         .field_bit_size = 9,
22938         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22939         .result_operand = {
22940                 (0x0061 >> 8) & 0xff,
22941                 0x0061 & 0xff,
22942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22944         },
22945         {
22946         .description = "reserved",
22947         .field_bit_size = 11,
22948         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22949         },
22950         {
22951         .description = "strength",
22952         .field_bit_size = 2,
22953         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22954         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22956         },
22957         {
22958         .description = "l1_cacheable",
22959         .field_bit_size = 1,
22960         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22961         },
22962         {
22963         .description = "valid",
22964         .field_bit_size = 1,
22965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22966         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22968         },
22969         /* class_tid: 24, stingray, table: int_em_0 */
22970         {
22971         .description = "act_rec_ptr",
22972         .field_bit_size = 33,
22973         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22974         .result_operand = {
22975                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22976                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22979         },
22980         {
22981         .description = "ext_flow_ctr",
22982         .field_bit_size = 1,
22983         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22984         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22986         },
22987         {
22988         .description = "act_rec_int",
22989         .field_bit_size = 1,
22990         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22991         },
22992         {
22993         .description = "act_rec_size",
22994         .field_bit_size = 5,
22995         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22996         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22997                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22998         },
22999         {
23000         .description = "key_size",
23001         .field_bit_size = 9,
23002         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23003         .result_operand = {
23004                 (0x0061 >> 8) & 0xff,
23005                 0x0061 & 0xff,
23006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23007                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23008         },
23009         {
23010         .description = "reserved",
23011         .field_bit_size = 11,
23012         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23013         },
23014         {
23015         .description = "strength",
23016         .field_bit_size = 2,
23017         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23018         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23019                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23020         },
23021         {
23022         .description = "l1_cacheable",
23023         .field_bit_size = 1,
23024         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23025         },
23026         {
23027         .description = "valid",
23028         .field_bit_size = 1,
23029         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23030         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23031                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23032         },
23033         /* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */
23034         {
23035         .description = "l2_cntxt_id",
23036         .field_bit_size = 10,
23037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23038         .result_operand = {
23039                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
23040                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
23041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23043         },
23044         {
23045         .description = "prof_func_id",
23046         .field_bit_size = 7,
23047         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
23048         .result_operand = {
23049                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
23050                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
23051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23053         },
23054         {
23055         .description = "l2_byp_lkup_en",
23056         .field_bit_size = 1,
23057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23058         },
23059         {
23060         .description = "parif",
23061         .field_bit_size = 4,
23062         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
23063         .result_operand = {
23064                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
23065                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
23066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23068         .result_operand_true = {
23069                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
23070                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
23071                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23073         .result_operand_false = {
23074                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
23075                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
23076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23078         },
23079         {
23080         .description = "allowed_pri",
23081         .field_bit_size = 8,
23082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23083         },
23084         {
23085         .description = "default_pri",
23086         .field_bit_size = 3,
23087         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23088         },
23089         {
23090         .description = "allowed_tpid",
23091         .field_bit_size = 6,
23092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23093         },
23094         {
23095         .description = "default_tpid",
23096         .field_bit_size = 3,
23097         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23098         },
23099         {
23100         .description = "bd_act_en",
23101         .field_bit_size = 1,
23102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23103         },
23104         {
23105         .description = "sp_rec_ptr",
23106         .field_bit_size = 16,
23107         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23108         .result_operand = {
23109                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
23110                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
23111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23113         },
23114         {
23115         .description = "byp_sp_lkup",
23116         .field_bit_size = 1,
23117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23118         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23120         },
23121         {
23122         .description = "pri_anti_spoof_ctl",
23123         .field_bit_size = 2,
23124         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23125         },
23126         {
23127         .description = "tpid_anti_spoof_ctl",
23128         .field_bit_size = 2,
23129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23130         },
23131         /* class_tid: 25, stingray, table: profile_tcam_cache_0 */
23132         {
23133         .description = "em_profile_id",
23134         .field_bit_size = 10,
23135         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23136         .result_operand = {
23137                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23138                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23139                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23141         },
23142         /* class_tid: 25, stingray, table: profile_tcam_0 */
23143         {
23144         .description = "wc_key_id",
23145         .field_bit_size = 4,
23146         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23147         },
23148         {
23149         .description = "wc_profile_id",
23150         .field_bit_size = 8,
23151         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23152         },
23153         {
23154         .description = "wc_search_en",
23155         .field_bit_size = 1,
23156         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23157         },
23158         {
23159         .description = "em_key_mask",
23160         .field_bit_size = 10,
23161         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23162         .result_operand = {
23163                 (0x0003 >> 8) & 0xff,
23164                 0x0003 & 0xff,
23165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23167         },
23168         {
23169         .description = "em_key_id",
23170         .field_bit_size = 5,
23171         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23172         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
23173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23174         },
23175         {
23176         .description = "em_profile_id",
23177         .field_bit_size = 8,
23178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23179         .result_operand = {
23180                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23181                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23183                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23184         },
23185         {
23186         .description = "em_search_en",
23187         .field_bit_size = 1,
23188         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23189         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23191         },
23192         {
23193         .description = "pl_byp_lkup_en",
23194         .field_bit_size = 1,
23195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23196         },
23197         /* class_tid: 25, stingray, table: ext_em_0 */
23198         {
23199         .description = "act_rec_ptr",
23200         .field_bit_size = 33,
23201         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23202         .result_operand = {
23203                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23204                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23207         },
23208         {
23209         .description = "ext_flow_ctr",
23210         .field_bit_size = 1,
23211         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23212         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23214         },
23215         {
23216         .description = "act_rec_int",
23217         .field_bit_size = 1,
23218         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23219         },
23220         {
23221         .description = "act_rec_size",
23222         .field_bit_size = 5,
23223         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23224         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23226         },
23227         {
23228         .description = "key_size",
23229         .field_bit_size = 9,
23230         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23231         .result_operand = {
23232                 (0x0061 >> 8) & 0xff,
23233                 0x0061 & 0xff,
23234                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23235                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23236         },
23237         {
23238         .description = "reserved",
23239         .field_bit_size = 11,
23240         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23241         },
23242         {
23243         .description = "strength",
23244         .field_bit_size = 2,
23245         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23246         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23248         },
23249         {
23250         .description = "l1_cacheable",
23251         .field_bit_size = 1,
23252         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23253         },
23254         {
23255         .description = "valid",
23256         .field_bit_size = 1,
23257         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23258         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23260         },
23261         /* class_tid: 25, stingray, table: int_em_0 */
23262         {
23263         .description = "act_rec_ptr",
23264         .field_bit_size = 33,
23265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23266         .result_operand = {
23267                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23268                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23271         },
23272         {
23273         .description = "ext_flow_ctr",
23274         .field_bit_size = 1,
23275         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23276         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23278         },
23279         {
23280         .description = "act_rec_int",
23281         .field_bit_size = 1,
23282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23283         },
23284         {
23285         .description = "act_rec_size",
23286         .field_bit_size = 5,
23287         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23288         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23290         },
23291         {
23292         .description = "key_size",
23293         .field_bit_size = 9,
23294         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23295         .result_operand = {
23296                 (0x0061 >> 8) & 0xff,
23297                 0x0061 & 0xff,
23298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23300         },
23301         {
23302         .description = "reserved",
23303         .field_bit_size = 11,
23304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23305         },
23306         {
23307         .description = "strength",
23308         .field_bit_size = 2,
23309         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23310         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23311                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23312         },
23313         {
23314         .description = "l1_cacheable",
23315         .field_bit_size = 1,
23316         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23317         },
23318         {
23319         .description = "valid",
23320         .field_bit_size = 1,
23321         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23322         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23323                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23324         }
23325 };
23326
23327 struct bnxt_ulp_mapper_ident_info ulp_stingray_class_ident_list[] = {
23328         /* class_tid: 1, stingray, table: l2_cntxt_cache_0 */
23329         {
23330         .description = "l2_cntxt_id",
23331         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23332         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23333         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23334         .ident_bit_size = 10,
23335         .ident_bit_pos = 0
23336         },
23337         /* class_tid: 2, stingray, table: l2_cntxt_cache_0 */
23338         {
23339         .description = "l2_cntxt_id",
23340         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23341         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23342         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23343         .ident_bit_size = 10,
23344         .ident_bit_pos = 0
23345         },
23346         /* class_tid: 4, stingray, table: egr_l2_cntxt_cache_0 */
23347         {
23348         .description = "l2_cntxt_id",
23349         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23350         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23351         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23352         .ident_bit_size = 10,
23353         .ident_bit_pos = 0
23354         },
23355         /* class_tid: 6, stingray, table: l2_cntxt_tcam_0 */
23356         {
23357         .description = "l2_cntxt_id",
23358         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23359         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23360         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23361         .ident_bit_size = 10,
23362         .ident_bit_pos = 0
23363         },
23364         /* class_tid: 6, stingray, table: profile_tcam_cache_0 */
23365         {
23366         .description = "em_profile_id",
23367         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23368         .ident_type = TF_IDENT_TYPE_EM_PROF,
23369         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23370         .ident_bit_size = 10,
23371         .ident_bit_pos = 0
23372         },
23373         /* class_tid: 7, stingray, table: l2_cntxt_tcam_0 */
23374         {
23375         .description = "l2_cntxt_id",
23376         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23377         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23378         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23379         .ident_bit_size = 10,
23380         .ident_bit_pos = 0
23381         },
23382         /* class_tid: 7, stingray, table: profile_tcam_cache_0 */
23383         {
23384         .description = "em_profile_id",
23385         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23386         .ident_type = TF_IDENT_TYPE_EM_PROF,
23387         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23388         .ident_bit_size = 10,
23389         .ident_bit_pos = 0
23390         },
23391         /* class_tid: 8, stingray, table: l2_cntxt_cache_0 */
23392         {
23393         .description = "l2_cntxt_id",
23394         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23395         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23396         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23397         .ident_bit_size = 10,
23398         .ident_bit_pos = 0
23399         },
23400         /* class_tid: 8, stingray, table: profile_tcam_cache_0 */
23401         {
23402         .description = "em_profile_id",
23403         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23404         .ident_type = TF_IDENT_TYPE_EM_PROF,
23405         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23406         .ident_bit_size = 10,
23407         .ident_bit_pos = 0
23408         },
23409         /* class_tid: 9, stingray, table: l2_cntxt_cache_0 */
23410         {
23411         .description = "l2_cntxt_id",
23412         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23413         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23414         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23415         .ident_bit_size = 10,
23416         .ident_bit_pos = 0
23417         },
23418         /* class_tid: 9, stingray, table: profile_tcam_cache_0 */
23419         {
23420         .description = "em_profile_id",
23421         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23422         .ident_type = TF_IDENT_TYPE_EM_PROF,
23423         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23424         .ident_bit_size = 10,
23425         .ident_bit_pos = 0
23426         },
23427         /* class_tid: 10, stingray, table: l2_cntxt_cache_0 */
23428         {
23429         .description = "l2_cntxt_id",
23430         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23431         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23432         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23433         .ident_bit_size = 10,
23434         .ident_bit_pos = 0
23435         },
23436         /* class_tid: 10, stingray, table: profile_tcam_cache_0 */
23437         {
23438         .description = "em_profile_id",
23439         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23440         .ident_type = TF_IDENT_TYPE_EM_PROF,
23441         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23442         .ident_bit_size = 10,
23443         .ident_bit_pos = 0
23444         },
23445         /* class_tid: 11, stingray, table: l2_cntxt_cache_0 */
23446         {
23447         .description = "l2_cntxt_id",
23448         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23449         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23450         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23451         .ident_bit_size = 10,
23452         .ident_bit_pos = 0
23453         },
23454         /* class_tid: 11, stingray, table: profile_tcam_cache_0 */
23455         {
23456         .description = "em_profile_id",
23457         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23458         .ident_type = TF_IDENT_TYPE_EM_PROF,
23459         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23460         .ident_bit_size = 10,
23461         .ident_bit_pos = 0
23462         },
23463         /* class_tid: 12, stingray, table: l2_cntxt_tcam_0 */
23464         {
23465         .description = "l2_cntxt_id",
23466         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23467         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23468         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23469         .ident_bit_size = 10,
23470         .ident_bit_pos = 0
23471         },
23472         /* class_tid: 12, stingray, table: profile_tcam_cache_0 */
23473         {
23474         .description = "em_profile_id",
23475         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23476         .ident_type = TF_IDENT_TYPE_EM_PROF,
23477         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23478         .ident_bit_size = 10,
23479         .ident_bit_pos = 0
23480         },
23481         /* class_tid: 13, stingray, table: l2_cntxt_tcam_0 */
23482         {
23483         .description = "l2_cntxt_id",
23484         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23485         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23486         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23487         .ident_bit_size = 10,
23488         .ident_bit_pos = 0
23489         },
23490         /* class_tid: 13, stingray, table: profile_tcam_cache_0 */
23491         {
23492         .description = "em_profile_id",
23493         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23494         .ident_type = TF_IDENT_TYPE_EM_PROF,
23495         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23496         .ident_bit_size = 10,
23497         .ident_bit_pos = 0
23498         },
23499         /* class_tid: 14, stingray, table: l2_cntxt_tcam_0 */
23500         {
23501         .description = "l2_cntxt_id",
23502         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23503         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23504         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23505         .ident_bit_size = 10,
23506         .ident_bit_pos = 0
23507         },
23508         /* class_tid: 14, stingray, table: profile_tcam_cache_0 */
23509         {
23510         .description = "em_profile_id",
23511         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23512         .ident_type = TF_IDENT_TYPE_EM_PROF,
23513         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23514         .ident_bit_size = 10,
23515         .ident_bit_pos = 0
23516         },
23517         /* class_tid: 15, stingray, table: l2_cntxt_tcam_0 */
23518         {
23519         .description = "l2_cntxt_id",
23520         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23521         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23522         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23523         .ident_bit_size = 10,
23524         .ident_bit_pos = 0
23525         },
23526         /* class_tid: 15, stingray, table: profile_tcam_cache_0 */
23527         {
23528         .description = "em_profile_id",
23529         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23530         .ident_type = TF_IDENT_TYPE_EM_PROF,
23531         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23532         .ident_bit_size = 10,
23533         .ident_bit_pos = 0
23534         },
23535         /* class_tid: 16, stingray, table: l2_cntxt_tcam_0 */
23536         {
23537         .description = "l2_cntxt_id",
23538         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23539         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23540         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23541         .ident_bit_size = 10,
23542         .ident_bit_pos = 0
23543         },
23544         /* class_tid: 16, stingray, table: profile_tcam_cache_0 */
23545         {
23546         .description = "em_profile_id",
23547         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23548         .ident_type = TF_IDENT_TYPE_EM_PROF,
23549         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23550         .ident_bit_size = 10,
23551         .ident_bit_pos = 0
23552         },
23553         /* class_tid: 17, stingray, table: l2_cntxt_tcam_0 */
23554         {
23555         .description = "l2_cntxt_id",
23556         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23557         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23558         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23559         .ident_bit_size = 10,
23560         .ident_bit_pos = 0
23561         },
23562         /* class_tid: 17, stingray, table: profile_tcam_cache_0 */
23563         {
23564         .description = "em_profile_id",
23565         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23566         .ident_type = TF_IDENT_TYPE_EM_PROF,
23567         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23568         .ident_bit_size = 10,
23569         .ident_bit_pos = 0
23570         },
23571         /* class_tid: 18, stingray, table: l2_cntxt_tcam_0 */
23572         {
23573         .description = "l2_cntxt_id",
23574         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23575         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23576         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23577         .ident_bit_size = 10,
23578         .ident_bit_pos = 0
23579         },
23580         /* class_tid: 18, stingray, table: profile_tcam_cache_0 */
23581         {
23582         .description = "em_profile_id",
23583         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23584         .ident_type = TF_IDENT_TYPE_EM_PROF,
23585         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23586         .ident_bit_size = 10,
23587         .ident_bit_pos = 0
23588         },
23589         {
23590         .description = "em_profile_id",
23591         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23592         .ident_type = TF_IDENT_TYPE_EM_PROF,
23593         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23594         .ident_bit_size = 10,
23595         .ident_bit_pos = 0
23596         },
23597         /* class_tid: 19, stingray, table: l2_cntxt_tcam_0 */
23598         {
23599         .description = "l2_cntxt_id",
23600         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23601         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23602         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23603         .ident_bit_size = 10,
23604         .ident_bit_pos = 0
23605         },
23606         /* class_tid: 19, stingray, table: profile_tcam_cache_0 */
23607         {
23608         .description = "em_profile_id",
23609         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23610         .ident_type = TF_IDENT_TYPE_EM_PROF,
23611         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23612         .ident_bit_size = 10,
23613         .ident_bit_pos = 0
23614         },
23615         {
23616         .description = "em_profile_id",
23617         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23618         .ident_type = TF_IDENT_TYPE_EM_PROF,
23619         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23620         .ident_bit_size = 10,
23621         .ident_bit_pos = 0
23622         },
23623         /* class_tid: 20, stingray, table: l2_cntxt_cache_0 */
23624         {
23625         .description = "l2_cntxt_id",
23626         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23627         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23628         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23629         .ident_bit_size = 10,
23630         .ident_bit_pos = 0
23631         },
23632         /* class_tid: 20, stingray, table: profile_tcam_cache_0 */
23633         {
23634         .description = "em_profile_id",
23635         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23636         .ident_type = TF_IDENT_TYPE_EM_PROF,
23637         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23638         .ident_bit_size = 10,
23639         .ident_bit_pos = 0
23640         },
23641         /* class_tid: 21, stingray, table: l2_cntxt_cache_0 */
23642         {
23643         .description = "l2_cntxt_id",
23644         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23645         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23646         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23647         .ident_bit_size = 10,
23648         .ident_bit_pos = 0
23649         },
23650         /* class_tid: 21, stingray, table: profile_tcam_cache_0 */
23651         {
23652         .description = "em_profile_id",
23653         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23654         .ident_type = TF_IDENT_TYPE_EM_PROF,
23655         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23656         .ident_bit_size = 10,
23657         .ident_bit_pos = 0
23658         },
23659         /* class_tid: 22, stingray, table: l2_cntxt_cache_0 */
23660         {
23661         .description = "l2_cntxt_id",
23662         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23663         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23664         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23665         .ident_bit_size = 10,
23666         .ident_bit_pos = 0
23667         },
23668         /* class_tid: 22, stingray, table: profile_tcam_cache_0 */
23669         {
23670         .description = "em_profile_id",
23671         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23672         .ident_type = TF_IDENT_TYPE_EM_PROF,
23673         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23674         .ident_bit_size = 10,
23675         .ident_bit_pos = 0
23676         },
23677         /* class_tid: 23, stingray, table: l2_cntxt_cache_0 */
23678         {
23679         .description = "l2_cntxt_id",
23680         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23681         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23682         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23683         .ident_bit_size = 10,
23684         .ident_bit_pos = 0
23685         },
23686         /* class_tid: 23, stingray, table: profile_tcam_cache_0 */
23687         {
23688         .description = "em_profile_id",
23689         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23690         .ident_type = TF_IDENT_TYPE_EM_PROF,
23691         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23692         .ident_bit_size = 10,
23693         .ident_bit_pos = 0
23694         },
23695         /* class_tid: 24, stingray, table: l2_cntxt_tcam_0 */
23696         {
23697         .description = "l2_cntxt_id",
23698         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23699         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23700         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23701         .ident_bit_size = 10,
23702         .ident_bit_pos = 0
23703         },
23704         /* class_tid: 24, stingray, table: profile_tcam_cache_0 */
23705         {
23706         .description = "em_profile_id",
23707         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23708         .ident_type = TF_IDENT_TYPE_EM_PROF,
23709         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23710         .ident_bit_size = 10,
23711         .ident_bit_pos = 0
23712         },
23713         /* class_tid: 25, stingray, table: l2_cntxt_tcam_0 */
23714         {
23715         .description = "l2_cntxt_id",
23716         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23717         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23718         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23719         .ident_bit_size = 10,
23720         .ident_bit_pos = 0
23721         },
23722         /* class_tid: 25, stingray, table: profile_tcam_cache_0 */
23723         {
23724         .description = "em_profile_id",
23725         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23726         .ident_type = TF_IDENT_TYPE_EM_PROF,
23727         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23728         .ident_bit_size = 10,
23729         .ident_bit_pos = 0
23730         }
23731 };