a4a435cc6f99fd0d9aecd37157fead09354ed1e7
[dpdk.git] / drivers / net / bnxt / tf_ulp / ulp_template_db_wh_plus_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_wh_plus_class_tmpl_list[] = {
15         /* default-vfr-[port_to_vs]:1 */
16         /* class_tid: 1, wh_plus, ingress */
17         [1] = {
18         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
19         .num_tbls = 6,
20         .start_tbl_idx = 0
21         },
22         /* default-vfr-[vs_to_port]:2 */
23         /* class_tid: 2, wh_plus, egress */
24         [2] = {
25         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
26         .num_tbls = 7,
27         .start_tbl_idx = 6
28         },
29         /* default-vfr-[vfrep_to_vf]:3 */
30         /* class_tid: 3, wh_plus, egress */
31         [3] = {
32         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
33         .num_tbls = 7,
34         .start_tbl_idx = 13
35         },
36         /* default-vfr-[vf_to_vfrep]:4 */
37         /* class_tid: 4, wh_plus, egress */
38         [4] = {
39         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
40         .num_tbls = 7,
41         .start_tbl_idx = 20
42         },
43         /* default-egr-[loopback_action_rec]:5 */
44         /* class_tid: 5, wh_plus, egress */
45         [5] = {
46         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
52         [6] = {
53         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
59         [7] = {
60         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
66         [8] = {
67         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
73         [9] = {
74         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
80         [10] = {
81         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
87         [11] = {
88         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
94         [12] = {
95         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
101         [13] = {
102         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
108         [14] = {
109         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
115         [15] = {
116         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
122         [16] = {
123         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
129         [17] = {
130         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
136         [18] = {
137         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, ingress */
143         [19] = {
144         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, egress */
150         [20] = {
151         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, egress */
157         [21] = {
158         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, egress */
164         [22] = {
165         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, egress */
171         [23] = {
172         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, egress */
178         [24] = {
179         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
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, wh_plus, egress */
185         [25] = {
186         .device_name = BNXT_ULP_DEVICE_ID_WH_PLUS,
187         .num_tbls = 5,
188         .start_tbl_idx = 131
189         }
190 };
191
192 struct bnxt_ulp_mapper_tbl_info ulp_wh_plus_class_tbl_list[] = {
193         { /* class_tid: 1, wh_plus, 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, wh_plus, 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_PROFILE_TCAM,
212         .direction = TF_DIR_RX,
213         .key_start_idx = 0,
214         .blob_key_bit_size = 8,
215         .key_bit_size = 8,
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, wh_plus, 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         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
229         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
230         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
231         .pri_operand = 0,
232         .key_start_idx = 1,
233         .blob_key_bit_size = 167,
234         .key_bit_size = 167,
235         .key_num_fields = 13,
236         .result_start_idx = 27,
237         .result_bit_size = 64,
238         .result_num_fields = 13,
239         .encap_num_fields = 0,
240         .ident_start_idx = 1,
241         .ident_nums = 0,
242         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
243         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
244         },
245         { /* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */
246         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
247         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
248         .direction = TF_DIR_RX,
249         .result_start_idx = 40,
250         .result_bit_size = 32,
251         .result_num_fields = 1,
252         .encap_num_fields = 0,
253         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
254         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF,
255         },
256         { /* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */
257         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
258         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
259         .direction = TF_DIR_RX,
260         .result_start_idx = 41,
261         .result_bit_size = 32,
262         .result_num_fields = 1,
263         .encap_num_fields = 0,
264         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
265         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
266         },
267         { /* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */
268         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
269         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
270         .direction = TF_DIR_RX,
271         .result_start_idx = 42,
272         .result_bit_size = 32,
273         .result_num_fields = 1,
274         .encap_num_fields = 0,
275         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
276         .tbl_operand = BNXT_ULP_CF_IDX_PHY_PORT_PARIF
277         },
278         { /* class_tid: 2, wh_plus, table: int_full_act_record_0 */
279         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
280         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
281         .resource_sub_type =
282                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
283         .direction = TF_DIR_TX,
284         .result_start_idx = 43,
285         .result_bit_size = 128,
286         .result_num_fields = 26,
287         .encap_num_fields = 0,
288         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
289         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
290         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
291         },
292         { /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
293         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
294         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
295         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_IS_SET,
296         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
297         .direction = TF_DIR_TX,
298         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
299         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
300         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
301         .pri_operand = 0,
302         .key_start_idx = 14,
303         .blob_key_bit_size = 167,
304         .key_bit_size = 167,
305         .key_num_fields = 13,
306         .result_start_idx = 69,
307         .result_bit_size = 64,
308         .result_num_fields = 13,
309         .encap_num_fields = 0,
310         .ident_start_idx = 1,
311         .ident_nums = 0,
312         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
313         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
314         },
315         { /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
316         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
317         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
318         .resource_sub_type =
319                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
320         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET,
321         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
322         .direction = TF_DIR_TX,
323         .key_start_idx = 27,
324         .blob_key_bit_size = 8,
325         .key_bit_size = 8,
326         .key_num_fields = 1,
327         .result_start_idx = 82,
328         .result_bit_size = 10,
329         .result_num_fields = 1,
330         .encap_num_fields = 0,
331         .ident_start_idx = 1,
332         .ident_nums = 1
333         },
334         { /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
335         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
336         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
337         .cond_opcode = BNXT_ULP_COND_OPC_COMP_FIELD_NOT_SET,
338         .cond_operand = BNXT_ULP_CF_IDX_VFR_MODE,
339         .direction = TF_DIR_TX,
340         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
341         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
342         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
343         .pri_operand = 0,
344         .key_start_idx = 28,
345         .blob_key_bit_size = 167,
346         .key_bit_size = 167,
347         .key_num_fields = 13,
348         .result_start_idx = 83,
349         .result_bit_size = 64,
350         .result_num_fields = 13,
351         .encap_num_fields = 0,
352         .ident_start_idx = 2,
353         .ident_nums = 0,
354         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
355         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
356         },
357         { /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */
358         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
359         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
360         .direction = TF_DIR_TX,
361         .result_start_idx = 96,
362         .result_bit_size = 32,
363         .result_num_fields = 1,
364         .encap_num_fields = 0,
365         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
366         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
367         },
368         { /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */
369         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
370         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
371         .direction = TF_DIR_TX,
372         .result_start_idx = 97,
373         .result_bit_size = 32,
374         .result_num_fields = 1,
375         .encap_num_fields = 0,
376         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
377         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
378         },
379         { /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */
380         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
381         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
382         .direction = TF_DIR_TX,
383         .result_start_idx = 98,
384         .result_bit_size = 32,
385         .result_num_fields = 1,
386         .encap_num_fields = 0,
387         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_COMP_FIELD,
388         .tbl_operand = BNXT_ULP_CF_IDX_DRV_FUNC_PARIF
389         },
390         { /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */
391         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
392         .resource_type = TF_TBL_TYPE_ACT_ENCAP_8B,
393         .resource_sub_type =
394                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
395         .direction = TF_DIR_TX,
396         .result_start_idx = 99,
397         .result_bit_size = 0,
398         .result_num_fields = 0,
399         .encap_num_fields = 12,
400         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
401         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
402         .tbl_operand = BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0
403         },
404         { /* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */
405         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
406         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
407         .resource_sub_type =
408                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
409         .direction = TF_DIR_TX,
410         .result_start_idx = 111,
411         .result_bit_size = 128,
412         .result_num_fields = 26,
413         .encap_num_fields = 0,
414         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
415         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
416         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
417         },
418         { /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
419         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
420         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
421         .resource_sub_type =
422                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
423         .direction = TF_DIR_TX,
424         .key_start_idx = 41,
425         .blob_key_bit_size = 8,
426         .key_bit_size = 8,
427         .key_num_fields = 1,
428         .result_start_idx = 137,
429         .result_bit_size = 0,
430         .result_num_fields = 0,
431         .encap_num_fields = 0,
432         .ident_start_idx = 2,
433         .ident_nums = 0
434         },
435         { /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
436         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
437         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
438         .direction = TF_DIR_TX,
439         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
440         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
441         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
442         .pri_operand = 0,
443         .key_start_idx = 42,
444         .blob_key_bit_size = 167,
445         .key_bit_size = 167,
446         .key_num_fields = 13,
447         .result_start_idx = 137,
448         .result_bit_size = 64,
449         .result_num_fields = 13,
450         .encap_num_fields = 0,
451         .ident_start_idx = 2,
452         .ident_nums = 0,
453         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
454         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
455         },
456         { /* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */
457         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
458         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
459         .resource_sub_type =
460                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
461         .direction = TF_DIR_RX,
462         .result_start_idx = 150,
463         .result_bit_size = 128,
464         .result_num_fields = 26,
465         .encap_num_fields = 0,
466         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
467         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
468         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
469         },
470         { /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
471         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
472         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
473         .direction = TF_DIR_RX,
474         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
475         .pri_operand = 0,
476         .key_start_idx = 55,
477         .blob_key_bit_size = 167,
478         .key_bit_size = 167,
479         .key_num_fields = 13,
480         .result_start_idx = 176,
481         .result_bit_size = 64,
482         .result_num_fields = 13,
483         .encap_num_fields = 0,
484         .ident_start_idx = 2,
485         .ident_nums = 0,
486         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
487         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
488         },
489         { /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
490         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
491         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
492         .direction = TF_DIR_RX,
493         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
494         .pri_operand = 0,
495         .key_start_idx = 68,
496         .blob_key_bit_size = 167,
497         .key_bit_size = 167,
498         .key_num_fields = 13,
499         .result_start_idx = 189,
500         .result_bit_size = 64,
501         .result_num_fields = 13,
502         .encap_num_fields = 0,
503         .ident_start_idx = 2,
504         .ident_nums = 0,
505         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
506         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
507         },
508         { /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
509         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
510         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
511         .resource_sub_type =
512                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
513         .direction = TF_DIR_TX,
514         .key_start_idx = 81,
515         .blob_key_bit_size = 8,
516         .key_bit_size = 8,
517         .key_num_fields = 1,
518         .result_start_idx = 202,
519         .result_bit_size = 10,
520         .result_num_fields = 1,
521         .encap_num_fields = 0,
522         .ident_start_idx = 2,
523         .ident_nums = 1
524         },
525         { /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
526         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
527         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
528         .direction = TF_DIR_TX,
529         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
530         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
531         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
532         .pri_operand = 0,
533         .key_start_idx = 82,
534         .blob_key_bit_size = 167,
535         .key_bit_size = 167,
536         .key_num_fields = 13,
537         .result_start_idx = 203,
538         .result_bit_size = 64,
539         .result_num_fields = 13,
540         .encap_num_fields = 0,
541         .ident_start_idx = 3,
542         .ident_nums = 0,
543         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
544         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
545         },
546         { /* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */
547         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
548         .resource_type = TF_IF_TBL_TYPE_LKUP_PARIF_DFLT_ACT_REC_PTR,
549         .direction = TF_DIR_TX,
550         .result_start_idx = 216,
551         .result_bit_size = 32,
552         .result_num_fields = 1,
553         .encap_num_fields = 0,
554         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
555         .tbl_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
556         },
557         { /* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */
558         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
559         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_DFLT_ACT_REC_PTR,
560         .direction = TF_DIR_TX,
561         .result_start_idx = 217,
562         .result_bit_size = 32,
563         .result_num_fields = 1,
564         .encap_num_fields = 0,
565         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
566         .tbl_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
567         },
568         { /* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */
569         .resource_func = BNXT_ULP_RESOURCE_FUNC_IF_TABLE,
570         .resource_type = TF_IF_TBL_TYPE_PROF_PARIF_ERR_ACT_REC_PTR,
571         .direction = TF_DIR_TX,
572         .result_start_idx = 218,
573         .result_bit_size = 32,
574         .result_num_fields = 1,
575         .encap_num_fields = 0,
576         .tbl_opcode = BNXT_ULP_IF_TBL_OPC_WR_CONST,
577         .tbl_operand = BNXT_ULP_SYM_VF_FUNC_PARIF
578         },
579         { /* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */
580         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
581         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
582         .resource_sub_type =
583                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_NORMAL,
584         .direction = TF_DIR_RX,
585         .result_start_idx = 219,
586         .result_bit_size = 128,
587         .result_num_fields = 26,
588         .encap_num_fields = 0,
589         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_AND_SET_VFR_FLAG,
590         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
591         .tbl_operand = BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR
592         },
593         { /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
594         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
595         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
596         .direction = TF_DIR_RX,
597         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
598         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
599         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
600         .pri_operand = 0,
601         .key_start_idx = 95,
602         .blob_key_bit_size = 167,
603         .key_bit_size = 167,
604         .key_num_fields = 13,
605         .result_start_idx = 245,
606         .result_bit_size = 64,
607         .result_num_fields = 13,
608         .encap_num_fields = 0,
609         .ident_start_idx = 3,
610         .ident_nums = 0,
611         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
612         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
613         },
614         { /* class_tid: 5, wh_plus, table: int_full_act_record_0 */
615         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
616         .resource_type = TF_TBL_TYPE_FULL_ACT_RECORD,
617         .resource_sub_type =
618                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_VFR_CFA_ACTION,
619         .direction = TF_DIR_TX,
620         .result_start_idx = 258,
621         .result_bit_size = 128,
622         .result_num_fields = 26,
623         .encap_num_fields = 0,
624         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
625         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_WR_GLB_REGFILE,
626         .tbl_operand = BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR,
627         .fdb_opcode = BNXT_ULP_FDB_OPC_NOP
628         },
629         { /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
630         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
631         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
632         .direction = TF_DIR_RX,
633         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
634         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
635         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
636         .pri_operand = 0,
637         .key_start_idx = 108,
638         .blob_key_bit_size = 167,
639         .key_bit_size = 167,
640         .key_num_fields = 13,
641         .result_start_idx = 284,
642         .result_bit_size = 64,
643         .result_num_fields = 13,
644         .encap_num_fields = 0,
645         .ident_start_idx = 3,
646         .ident_nums = 1,
647         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
648         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
649         },
650         { /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
651         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
652         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
653         .resource_sub_type =
654                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
655         .direction = TF_DIR_RX,
656         .key_start_idx = 121,
657         .blob_key_bit_size = 16,
658         .key_bit_size = 16,
659         .key_num_fields = 3,
660         .result_start_idx = 297,
661         .result_bit_size = 10,
662         .result_num_fields = 1,
663         .encap_num_fields = 0,
664         .ident_start_idx = 4,
665         .ident_nums = 1
666         },
667         { /* class_tid: 6, wh_plus, table: profile_tcam_0 */
668         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
669         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
670         .direction = TF_DIR_RX,
671         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
672         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
673         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
674         .pri_operand = 1,
675         .key_start_idx = 124,
676         .blob_key_bit_size = 81,
677         .key_bit_size = 81,
678         .key_num_fields = 43,
679         .result_start_idx = 298,
680         .result_bit_size = 38,
681         .result_num_fields = 8,
682         .encap_num_fields = 0,
683         .ident_start_idx = 5,
684         .ident_nums = 0,
685         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
686         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
687         },
688         { /* class_tid: 6, wh_plus, table: ext_em_0 */
689         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
690         .resource_type = TF_MEM_EXTERNAL,
691         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
692         .direction = TF_DIR_RX,
693         .key_start_idx = 167,
694         .blob_key_bit_size = 448,
695         .key_bit_size = 448,
696         .key_num_fields = 11,
697         .result_start_idx = 306,
698         .result_bit_size = 64,
699         .result_num_fields = 9,
700         .encap_num_fields = 0,
701         .ident_start_idx = 5,
702         .ident_nums = 0,
703         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
704         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
705         },
706         { /* class_tid: 6, wh_plus, table: int_em_0 */
707         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
708         .resource_type = TF_MEM_INTERNAL,
709         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
710         .direction = TF_DIR_RX,
711         .key_start_idx = 178,
712         .blob_key_bit_size = 200,
713         .key_bit_size = 200,
714         .key_num_fields = 11,
715         .result_start_idx = 315,
716         .result_bit_size = 64,
717         .result_num_fields = 9,
718         .encap_num_fields = 0,
719         .ident_start_idx = 5,
720         .ident_nums = 0,
721         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
722         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
723         },
724         { /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
725         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
726         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
727         .direction = TF_DIR_RX,
728         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
729         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
730         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
731         .pri_operand = 0,
732         .key_start_idx = 189,
733         .blob_key_bit_size = 167,
734         .key_bit_size = 167,
735         .key_num_fields = 13,
736         .result_start_idx = 324,
737         .result_bit_size = 64,
738         .result_num_fields = 13,
739         .encap_num_fields = 0,
740         .ident_start_idx = 5,
741         .ident_nums = 1,
742         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
743         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
744         },
745         { /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
746         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
747         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
748         .resource_sub_type =
749                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
750         .direction = TF_DIR_RX,
751         .key_start_idx = 202,
752         .blob_key_bit_size = 16,
753         .key_bit_size = 16,
754         .key_num_fields = 3,
755         .result_start_idx = 337,
756         .result_bit_size = 10,
757         .result_num_fields = 1,
758         .encap_num_fields = 0,
759         .ident_start_idx = 6,
760         .ident_nums = 1
761         },
762         { /* class_tid: 7, wh_plus, table: profile_tcam_0 */
763         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
764         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
765         .direction = TF_DIR_RX,
766         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
767         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
768         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
769         .pri_operand = 1,
770         .key_start_idx = 205,
771         .blob_key_bit_size = 81,
772         .key_bit_size = 81,
773         .key_num_fields = 43,
774         .result_start_idx = 338,
775         .result_bit_size = 38,
776         .result_num_fields = 8,
777         .encap_num_fields = 0,
778         .ident_start_idx = 7,
779         .ident_nums = 0,
780         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
781         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
782         },
783         { /* class_tid: 7, wh_plus, table: ext_em_0 */
784         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
785         .resource_type = TF_MEM_EXTERNAL,
786         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
787         .direction = TF_DIR_RX,
788         .key_start_idx = 248,
789         .blob_key_bit_size = 448,
790         .key_bit_size = 448,
791         .key_num_fields = 11,
792         .result_start_idx = 346,
793         .result_bit_size = 64,
794         .result_num_fields = 9,
795         .encap_num_fields = 0,
796         .ident_start_idx = 7,
797         .ident_nums = 0,
798         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
799         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
800         },
801         { /* class_tid: 7, wh_plus, table: int_em_0 */
802         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
803         .resource_type = TF_MEM_INTERNAL,
804         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
805         .direction = TF_DIR_RX,
806         .key_start_idx = 259,
807         .blob_key_bit_size = 200,
808         .key_bit_size = 200,
809         .key_num_fields = 11,
810         .result_start_idx = 355,
811         .result_bit_size = 64,
812         .result_num_fields = 9,
813         .encap_num_fields = 0,
814         .ident_start_idx = 7,
815         .ident_nums = 0,
816         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
817         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
818         },
819         { /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
820         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
821         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
822         .resource_sub_type =
823                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
824         .direction = TF_DIR_RX,
825         .key_start_idx = 270,
826         .blob_key_bit_size = 8,
827         .key_bit_size = 8,
828         .key_num_fields = 1,
829         .result_start_idx = 364,
830         .result_bit_size = 10,
831         .result_num_fields = 1,
832         .encap_num_fields = 0,
833         .ident_start_idx = 7,
834         .ident_nums = 1
835         },
836         { /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
837         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
838         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
839         .direction = TF_DIR_RX,
840         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
841         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
842         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
843         .pri_operand = 0,
844         .key_start_idx = 271,
845         .blob_key_bit_size = 167,
846         .key_bit_size = 167,
847         .key_num_fields = 13,
848         .result_start_idx = 365,
849         .result_bit_size = 64,
850         .result_num_fields = 13,
851         .encap_num_fields = 0,
852         .ident_start_idx = 8,
853         .ident_nums = 0,
854         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
855         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
856         },
857         { /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
858         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
859         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
860         .resource_sub_type =
861                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
862         .direction = TF_DIR_RX,
863         .key_start_idx = 284,
864         .blob_key_bit_size = 16,
865         .key_bit_size = 16,
866         .key_num_fields = 3,
867         .result_start_idx = 378,
868         .result_bit_size = 10,
869         .result_num_fields = 1,
870         .encap_num_fields = 0,
871         .ident_start_idx = 8,
872         .ident_nums = 1
873         },
874         { /* class_tid: 8, wh_plus, table: profile_tcam_0 */
875         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
876         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
877         .direction = TF_DIR_RX,
878         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
879         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
880         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
881         .pri_operand = 0,
882         .key_start_idx = 287,
883         .blob_key_bit_size = 81,
884         .key_bit_size = 81,
885         .key_num_fields = 43,
886         .result_start_idx = 379,
887         .result_bit_size = 38,
888         .result_num_fields = 8,
889         .encap_num_fields = 0,
890         .ident_start_idx = 9,
891         .ident_nums = 0,
892         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
893         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
894         },
895         { /* class_tid: 8, wh_plus, table: ext_em_0 */
896         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
897         .resource_type = TF_MEM_EXTERNAL,
898         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
899         .direction = TF_DIR_RX,
900         .key_start_idx = 330,
901         .blob_key_bit_size = 448,
902         .key_bit_size = 448,
903         .key_num_fields = 11,
904         .result_start_idx = 387,
905         .result_bit_size = 64,
906         .result_num_fields = 9,
907         .encap_num_fields = 0,
908         .ident_start_idx = 9,
909         .ident_nums = 0,
910         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
911         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
912         },
913         { /* class_tid: 8, wh_plus, table: int_em_0 */
914         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
915         .resource_type = TF_MEM_INTERNAL,
916         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
917         .direction = TF_DIR_RX,
918         .key_start_idx = 341,
919         .blob_key_bit_size = 200,
920         .key_bit_size = 200,
921         .key_num_fields = 11,
922         .result_start_idx = 396,
923         .result_bit_size = 64,
924         .result_num_fields = 9,
925         .encap_num_fields = 0,
926         .ident_start_idx = 9,
927         .ident_nums = 0,
928         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
929         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
930         },
931         { /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
932         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
933         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
934         .resource_sub_type =
935                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
936         .direction = TF_DIR_RX,
937         .key_start_idx = 352,
938         .blob_key_bit_size = 8,
939         .key_bit_size = 8,
940         .key_num_fields = 1,
941         .result_start_idx = 405,
942         .result_bit_size = 10,
943         .result_num_fields = 1,
944         .encap_num_fields = 0,
945         .ident_start_idx = 9,
946         .ident_nums = 1
947         },
948         { /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
949         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
950         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
951         .direction = TF_DIR_RX,
952         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
953         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
954         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
955         .pri_operand = 0,
956         .key_start_idx = 353,
957         .blob_key_bit_size = 167,
958         .key_bit_size = 167,
959         .key_num_fields = 13,
960         .result_start_idx = 406,
961         .result_bit_size = 64,
962         .result_num_fields = 13,
963         .encap_num_fields = 0,
964         .ident_start_idx = 10,
965         .ident_nums = 0,
966         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
967         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
968         },
969         { /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
970         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
971         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
972         .resource_sub_type =
973                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
974         .direction = TF_DIR_RX,
975         .key_start_idx = 366,
976         .blob_key_bit_size = 16,
977         .key_bit_size = 16,
978         .key_num_fields = 3,
979         .result_start_idx = 419,
980         .result_bit_size = 10,
981         .result_num_fields = 1,
982         .encap_num_fields = 0,
983         .ident_start_idx = 10,
984         .ident_nums = 1
985         },
986         { /* class_tid: 9, wh_plus, table: profile_tcam_0 */
987         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
988         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
989         .direction = TF_DIR_RX,
990         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
991         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
992         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
993         .pri_operand = 0,
994         .key_start_idx = 369,
995         .blob_key_bit_size = 81,
996         .key_bit_size = 81,
997         .key_num_fields = 43,
998         .result_start_idx = 420,
999         .result_bit_size = 38,
1000         .result_num_fields = 8,
1001         .encap_num_fields = 0,
1002         .ident_start_idx = 11,
1003         .ident_nums = 0,
1004         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1005         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1006         },
1007         { /* class_tid: 9, wh_plus, table: ext_em_0 */
1008         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1009         .resource_type = TF_MEM_EXTERNAL,
1010         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1011         .direction = TF_DIR_RX,
1012         .key_start_idx = 412,
1013         .blob_key_bit_size = 448,
1014         .key_bit_size = 448,
1015         .key_num_fields = 11,
1016         .result_start_idx = 428,
1017         .result_bit_size = 64,
1018         .result_num_fields = 9,
1019         .encap_num_fields = 0,
1020         .ident_start_idx = 11,
1021         .ident_nums = 0,
1022         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1023         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1024         },
1025         { /* class_tid: 9, wh_plus, table: int_em_0 */
1026         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1027         .resource_type = TF_MEM_INTERNAL,
1028         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1029         .direction = TF_DIR_RX,
1030         .key_start_idx = 423,
1031         .blob_key_bit_size = 200,
1032         .key_bit_size = 200,
1033         .key_num_fields = 11,
1034         .result_start_idx = 437,
1035         .result_bit_size = 64,
1036         .result_num_fields = 9,
1037         .encap_num_fields = 0,
1038         .ident_start_idx = 11,
1039         .ident_nums = 0,
1040         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1041         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1042         },
1043         { /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
1044         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1045         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1046         .resource_sub_type =
1047                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1048         .direction = TF_DIR_RX,
1049         .key_start_idx = 434,
1050         .blob_key_bit_size = 8,
1051         .key_bit_size = 8,
1052         .key_num_fields = 1,
1053         .result_start_idx = 446,
1054         .result_bit_size = 10,
1055         .result_num_fields = 1,
1056         .encap_num_fields = 0,
1057         .ident_start_idx = 11,
1058         .ident_nums = 1
1059         },
1060         { /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
1061         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1062         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1063         .direction = TF_DIR_RX,
1064         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1065         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1066         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1067         .pri_operand = 0,
1068         .key_start_idx = 435,
1069         .blob_key_bit_size = 167,
1070         .key_bit_size = 167,
1071         .key_num_fields = 13,
1072         .result_start_idx = 447,
1073         .result_bit_size = 64,
1074         .result_num_fields = 13,
1075         .encap_num_fields = 0,
1076         .ident_start_idx = 12,
1077         .ident_nums = 0,
1078         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1079         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1080         },
1081         { /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
1082         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1083         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1084         .resource_sub_type =
1085                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1086         .direction = TF_DIR_RX,
1087         .key_start_idx = 448,
1088         .blob_key_bit_size = 16,
1089         .key_bit_size = 16,
1090         .key_num_fields = 3,
1091         .result_start_idx = 460,
1092         .result_bit_size = 10,
1093         .result_num_fields = 1,
1094         .encap_num_fields = 0,
1095         .ident_start_idx = 12,
1096         .ident_nums = 1
1097         },
1098         { /* class_tid: 10, wh_plus, table: profile_tcam_0 */
1099         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1100         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1101         .direction = TF_DIR_RX,
1102         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1103         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1104         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1105         .pri_operand = 0,
1106         .key_start_idx = 451,
1107         .blob_key_bit_size = 81,
1108         .key_bit_size = 81,
1109         .key_num_fields = 43,
1110         .result_start_idx = 461,
1111         .result_bit_size = 38,
1112         .result_num_fields = 8,
1113         .encap_num_fields = 0,
1114         .ident_start_idx = 13,
1115         .ident_nums = 0,
1116         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1117         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1118         },
1119         { /* class_tid: 10, wh_plus, table: ext_em_0 */
1120         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1121         .resource_type = TF_MEM_EXTERNAL,
1122         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1123         .direction = TF_DIR_RX,
1124         .key_start_idx = 494,
1125         .blob_key_bit_size = 448,
1126         .key_bit_size = 448,
1127         .key_num_fields = 11,
1128         .result_start_idx = 469,
1129         .result_bit_size = 64,
1130         .result_num_fields = 9,
1131         .encap_num_fields = 0,
1132         .ident_start_idx = 13,
1133         .ident_nums = 0,
1134         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1135         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1136         },
1137         { /* class_tid: 10, wh_plus, table: int_em_0 */
1138         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1139         .resource_type = TF_MEM_INTERNAL,
1140         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1141         .direction = TF_DIR_RX,
1142         .key_start_idx = 505,
1143         .blob_key_bit_size = 392,
1144         .key_bit_size = 392,
1145         .key_num_fields = 11,
1146         .result_start_idx = 478,
1147         .result_bit_size = 64,
1148         .result_num_fields = 9,
1149         .encap_num_fields = 0,
1150         .ident_start_idx = 13,
1151         .ident_nums = 0,
1152         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1153         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1154         },
1155         { /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
1156         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1157         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1158         .resource_sub_type =
1159                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1160         .direction = TF_DIR_RX,
1161         .key_start_idx = 516,
1162         .blob_key_bit_size = 8,
1163         .key_bit_size = 8,
1164         .key_num_fields = 1,
1165         .result_start_idx = 487,
1166         .result_bit_size = 10,
1167         .result_num_fields = 1,
1168         .encap_num_fields = 0,
1169         .ident_start_idx = 13,
1170         .ident_nums = 1
1171         },
1172         { /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
1173         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1174         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
1175         .direction = TF_DIR_RX,
1176         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1177         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1178         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1179         .pri_operand = 0,
1180         .key_start_idx = 517,
1181         .blob_key_bit_size = 167,
1182         .key_bit_size = 167,
1183         .key_num_fields = 13,
1184         .result_start_idx = 488,
1185         .result_bit_size = 64,
1186         .result_num_fields = 13,
1187         .encap_num_fields = 0,
1188         .ident_start_idx = 14,
1189         .ident_nums = 0,
1190         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1191         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1192         },
1193         { /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
1194         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1195         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1196         .resource_sub_type =
1197                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1198         .direction = TF_DIR_RX,
1199         .key_start_idx = 530,
1200         .blob_key_bit_size = 16,
1201         .key_bit_size = 16,
1202         .key_num_fields = 3,
1203         .result_start_idx = 501,
1204         .result_bit_size = 10,
1205         .result_num_fields = 1,
1206         .encap_num_fields = 0,
1207         .ident_start_idx = 14,
1208         .ident_nums = 1
1209         },
1210         { /* class_tid: 11, wh_plus, table: profile_tcam_0 */
1211         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1212         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1213         .direction = TF_DIR_RX,
1214         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1215         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1216         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1217         .pri_operand = 0,
1218         .key_start_idx = 533,
1219         .blob_key_bit_size = 81,
1220         .key_bit_size = 81,
1221         .key_num_fields = 43,
1222         .result_start_idx = 502,
1223         .result_bit_size = 38,
1224         .result_num_fields = 8,
1225         .encap_num_fields = 0,
1226         .ident_start_idx = 15,
1227         .ident_nums = 0,
1228         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1229         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1230         },
1231         { /* class_tid: 11, wh_plus, table: ext_em_0 */
1232         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1233         .resource_type = TF_MEM_EXTERNAL,
1234         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1235         .direction = TF_DIR_RX,
1236         .key_start_idx = 576,
1237         .blob_key_bit_size = 448,
1238         .key_bit_size = 448,
1239         .key_num_fields = 11,
1240         .result_start_idx = 510,
1241         .result_bit_size = 64,
1242         .result_num_fields = 9,
1243         .encap_num_fields = 0,
1244         .ident_start_idx = 15,
1245         .ident_nums = 0,
1246         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1247         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1248         },
1249         { /* class_tid: 11, wh_plus, table: int_em_0 */
1250         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1251         .resource_type = TF_MEM_INTERNAL,
1252         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1253         .direction = TF_DIR_RX,
1254         .key_start_idx = 587,
1255         .blob_key_bit_size = 392,
1256         .key_bit_size = 392,
1257         .key_num_fields = 11,
1258         .result_start_idx = 519,
1259         .result_bit_size = 64,
1260         .result_num_fields = 9,
1261         .encap_num_fields = 0,
1262         .ident_start_idx = 15,
1263         .ident_nums = 0,
1264         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1265         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1266         },
1267         { /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
1268         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1269         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1270         .direction = TF_DIR_RX,
1271         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1272         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1273         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1274         .pri_operand = 0,
1275         .key_start_idx = 598,
1276         .blob_key_bit_size = 167,
1277         .key_bit_size = 167,
1278         .key_num_fields = 13,
1279         .result_start_idx = 528,
1280         .result_bit_size = 64,
1281         .result_num_fields = 13,
1282         .encap_num_fields = 0,
1283         .ident_start_idx = 15,
1284         .ident_nums = 1,
1285         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1286         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1287         },
1288         { /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
1289         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1290         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1291         .resource_sub_type =
1292                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1293         .direction = TF_DIR_RX,
1294         .key_start_idx = 611,
1295         .blob_key_bit_size = 16,
1296         .key_bit_size = 16,
1297         .key_num_fields = 3,
1298         .result_start_idx = 541,
1299         .result_bit_size = 10,
1300         .result_num_fields = 1,
1301         .encap_num_fields = 0,
1302         .ident_start_idx = 16,
1303         .ident_nums = 1
1304         },
1305         { /* class_tid: 12, wh_plus, table: profile_tcam_0 */
1306         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1307         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1308         .direction = TF_DIR_RX,
1309         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1310         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1311         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1312         .pri_operand = 0,
1313         .key_start_idx = 614,
1314         .blob_key_bit_size = 81,
1315         .key_bit_size = 81,
1316         .key_num_fields = 43,
1317         .result_start_idx = 542,
1318         .result_bit_size = 38,
1319         .result_num_fields = 8,
1320         .encap_num_fields = 0,
1321         .ident_start_idx = 17,
1322         .ident_nums = 0,
1323         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1324         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1325         },
1326         { /* class_tid: 12, wh_plus, table: ext_em_0 */
1327         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1328         .resource_type = TF_MEM_EXTERNAL,
1329         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1330         .direction = TF_DIR_RX,
1331         .key_start_idx = 657,
1332         .blob_key_bit_size = 448,
1333         .key_bit_size = 448,
1334         .key_num_fields = 11,
1335         .result_start_idx = 550,
1336         .result_bit_size = 64,
1337         .result_num_fields = 9,
1338         .encap_num_fields = 0,
1339         .ident_start_idx = 17,
1340         .ident_nums = 0,
1341         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1342         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1343         },
1344         { /* class_tid: 12, wh_plus, table: int_em_0 */
1345         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1346         .resource_type = TF_MEM_INTERNAL,
1347         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1348         .direction = TF_DIR_RX,
1349         .key_start_idx = 668,
1350         .blob_key_bit_size = 200,
1351         .key_bit_size = 200,
1352         .key_num_fields = 11,
1353         .result_start_idx = 559,
1354         .result_bit_size = 64,
1355         .result_num_fields = 9,
1356         .encap_num_fields = 0,
1357         .ident_start_idx = 17,
1358         .ident_nums = 0,
1359         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1360         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1361         },
1362         { /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
1363         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1364         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1365         .direction = TF_DIR_RX,
1366         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1367         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1368         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1369         .pri_operand = 0,
1370         .key_start_idx = 679,
1371         .blob_key_bit_size = 167,
1372         .key_bit_size = 167,
1373         .key_num_fields = 13,
1374         .result_start_idx = 568,
1375         .result_bit_size = 64,
1376         .result_num_fields = 13,
1377         .encap_num_fields = 0,
1378         .ident_start_idx = 17,
1379         .ident_nums = 1,
1380         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1381         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1382         },
1383         { /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
1384         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1385         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1386         .resource_sub_type =
1387                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1388         .direction = TF_DIR_RX,
1389         .key_start_idx = 692,
1390         .blob_key_bit_size = 16,
1391         .key_bit_size = 16,
1392         .key_num_fields = 3,
1393         .result_start_idx = 581,
1394         .result_bit_size = 10,
1395         .result_num_fields = 1,
1396         .encap_num_fields = 0,
1397         .ident_start_idx = 18,
1398         .ident_nums = 1
1399         },
1400         { /* class_tid: 13, wh_plus, table: profile_tcam_0 */
1401         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1402         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1403         .direction = TF_DIR_RX,
1404         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1405         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1406         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1407         .pri_operand = 0,
1408         .key_start_idx = 695,
1409         .blob_key_bit_size = 81,
1410         .key_bit_size = 81,
1411         .key_num_fields = 43,
1412         .result_start_idx = 582,
1413         .result_bit_size = 38,
1414         .result_num_fields = 8,
1415         .encap_num_fields = 0,
1416         .ident_start_idx = 19,
1417         .ident_nums = 0,
1418         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1419         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1420         },
1421         { /* class_tid: 13, wh_plus, table: ext_em_0 */
1422         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1423         .resource_type = TF_MEM_EXTERNAL,
1424         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1425         .direction = TF_DIR_RX,
1426         .key_start_idx = 738,
1427         .blob_key_bit_size = 448,
1428         .key_bit_size = 448,
1429         .key_num_fields = 11,
1430         .result_start_idx = 590,
1431         .result_bit_size = 64,
1432         .result_num_fields = 9,
1433         .encap_num_fields = 0,
1434         .ident_start_idx = 19,
1435         .ident_nums = 0,
1436         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1437         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1438         },
1439         { /* class_tid: 13, wh_plus, table: int_em_0 */
1440         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1441         .resource_type = TF_MEM_INTERNAL,
1442         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1443         .direction = TF_DIR_RX,
1444         .key_start_idx = 749,
1445         .blob_key_bit_size = 200,
1446         .key_bit_size = 200,
1447         .key_num_fields = 11,
1448         .result_start_idx = 599,
1449         .result_bit_size = 64,
1450         .result_num_fields = 9,
1451         .encap_num_fields = 0,
1452         .ident_start_idx = 19,
1453         .ident_nums = 0,
1454         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1455         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1456         },
1457         { /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
1458         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1459         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1460         .direction = TF_DIR_RX,
1461         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1462         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1463         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1464         .pri_operand = 0,
1465         .key_start_idx = 760,
1466         .blob_key_bit_size = 167,
1467         .key_bit_size = 167,
1468         .key_num_fields = 13,
1469         .result_start_idx = 608,
1470         .result_bit_size = 64,
1471         .result_num_fields = 13,
1472         .encap_num_fields = 0,
1473         .ident_start_idx = 19,
1474         .ident_nums = 1,
1475         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1476         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1477         },
1478         { /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
1479         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1480         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1481         .resource_sub_type =
1482                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1483         .direction = TF_DIR_RX,
1484         .key_start_idx = 773,
1485         .blob_key_bit_size = 16,
1486         .key_bit_size = 16,
1487         .key_num_fields = 3,
1488         .result_start_idx = 621,
1489         .result_bit_size = 10,
1490         .result_num_fields = 1,
1491         .encap_num_fields = 0,
1492         .ident_start_idx = 20,
1493         .ident_nums = 1
1494         },
1495         { /* class_tid: 14, wh_plus, table: profile_tcam_0 */
1496         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1497         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1498         .direction = TF_DIR_RX,
1499         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1500         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1501         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1502         .pri_operand = 0,
1503         .key_start_idx = 776,
1504         .blob_key_bit_size = 81,
1505         .key_bit_size = 81,
1506         .key_num_fields = 43,
1507         .result_start_idx = 622,
1508         .result_bit_size = 38,
1509         .result_num_fields = 8,
1510         .encap_num_fields = 0,
1511         .ident_start_idx = 21,
1512         .ident_nums = 0,
1513         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1514         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1515         },
1516         { /* class_tid: 14, wh_plus, table: ext_em_0 */
1517         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1518         .resource_type = TF_MEM_EXTERNAL,
1519         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1520         .direction = TF_DIR_RX,
1521         .key_start_idx = 819,
1522         .blob_key_bit_size = 448,
1523         .key_bit_size = 448,
1524         .key_num_fields = 11,
1525         .result_start_idx = 630,
1526         .result_bit_size = 64,
1527         .result_num_fields = 9,
1528         .encap_num_fields = 0,
1529         .ident_start_idx = 21,
1530         .ident_nums = 0,
1531         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1532         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1533         },
1534         { /* class_tid: 14, wh_plus, table: int_em_0 */
1535         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1536         .resource_type = TF_MEM_INTERNAL,
1537         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1538         .direction = TF_DIR_RX,
1539         .key_start_idx = 830,
1540         .blob_key_bit_size = 392,
1541         .key_bit_size = 392,
1542         .key_num_fields = 11,
1543         .result_start_idx = 639,
1544         .result_bit_size = 64,
1545         .result_num_fields = 9,
1546         .encap_num_fields = 0,
1547         .ident_start_idx = 21,
1548         .ident_nums = 0,
1549         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1550         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1551         },
1552         { /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
1553         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1554         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1555         .direction = TF_DIR_RX,
1556         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1557         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1558         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1559         .pri_operand = 0,
1560         .key_start_idx = 841,
1561         .blob_key_bit_size = 167,
1562         .key_bit_size = 167,
1563         .key_num_fields = 13,
1564         .result_start_idx = 648,
1565         .result_bit_size = 64,
1566         .result_num_fields = 13,
1567         .encap_num_fields = 0,
1568         .ident_start_idx = 21,
1569         .ident_nums = 1,
1570         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1571         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1572         },
1573         { /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
1574         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1575         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1576         .resource_sub_type =
1577                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1578         .direction = TF_DIR_RX,
1579         .key_start_idx = 854,
1580         .blob_key_bit_size = 16,
1581         .key_bit_size = 16,
1582         .key_num_fields = 3,
1583         .result_start_idx = 661,
1584         .result_bit_size = 10,
1585         .result_num_fields = 1,
1586         .encap_num_fields = 0,
1587         .ident_start_idx = 22,
1588         .ident_nums = 1
1589         },
1590         { /* class_tid: 15, wh_plus, table: profile_tcam_0 */
1591         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1592         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1593         .direction = TF_DIR_RX,
1594         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1595         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1596         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1597         .pri_operand = 0,
1598         .key_start_idx = 857,
1599         .blob_key_bit_size = 81,
1600         .key_bit_size = 81,
1601         .key_num_fields = 43,
1602         .result_start_idx = 662,
1603         .result_bit_size = 38,
1604         .result_num_fields = 8,
1605         .encap_num_fields = 0,
1606         .ident_start_idx = 23,
1607         .ident_nums = 0,
1608         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1609         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1610         },
1611         { /* class_tid: 15, wh_plus, table: ext_em_0 */
1612         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1613         .resource_type = TF_MEM_EXTERNAL,
1614         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1615         .direction = TF_DIR_RX,
1616         .key_start_idx = 900,
1617         .blob_key_bit_size = 448,
1618         .key_bit_size = 448,
1619         .key_num_fields = 11,
1620         .result_start_idx = 670,
1621         .result_bit_size = 64,
1622         .result_num_fields = 9,
1623         .encap_num_fields = 0,
1624         .ident_start_idx = 23,
1625         .ident_nums = 0,
1626         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1627         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1628         },
1629         { /* class_tid: 15, wh_plus, table: int_em_0 */
1630         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1631         .resource_type = TF_MEM_INTERNAL,
1632         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1633         .direction = TF_DIR_RX,
1634         .key_start_idx = 911,
1635         .blob_key_bit_size = 392,
1636         .key_bit_size = 392,
1637         .key_num_fields = 11,
1638         .result_start_idx = 679,
1639         .result_bit_size = 64,
1640         .result_num_fields = 9,
1641         .encap_num_fields = 0,
1642         .ident_start_idx = 23,
1643         .ident_nums = 0,
1644         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1645         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1646         },
1647         { /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
1648         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1649         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1650         .direction = TF_DIR_RX,
1651         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1652         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1653         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1654         .pri_operand = 0,
1655         .key_start_idx = 922,
1656         .blob_key_bit_size = 167,
1657         .key_bit_size = 167,
1658         .key_num_fields = 13,
1659         .result_start_idx = 688,
1660         .result_bit_size = 64,
1661         .result_num_fields = 13,
1662         .encap_num_fields = 0,
1663         .ident_start_idx = 23,
1664         .ident_nums = 1,
1665         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1666         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1667         },
1668         { /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
1669         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1670         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1671         .resource_sub_type =
1672                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1673         .direction = TF_DIR_RX,
1674         .key_start_idx = 935,
1675         .blob_key_bit_size = 16,
1676         .key_bit_size = 16,
1677         .key_num_fields = 3,
1678         .result_start_idx = 701,
1679         .result_bit_size = 10,
1680         .result_num_fields = 1,
1681         .encap_num_fields = 0,
1682         .ident_start_idx = 24,
1683         .ident_nums = 1
1684         },
1685         { /* class_tid: 16, wh_plus, table: profile_tcam_0 */
1686         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1687         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1688         .direction = TF_DIR_RX,
1689         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1690         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1691         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1692         .pri_operand = 0,
1693         .key_start_idx = 938,
1694         .blob_key_bit_size = 81,
1695         .key_bit_size = 81,
1696         .key_num_fields = 43,
1697         .result_start_idx = 702,
1698         .result_bit_size = 38,
1699         .result_num_fields = 8,
1700         .encap_num_fields = 0,
1701         .ident_start_idx = 25,
1702         .ident_nums = 0,
1703         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1704         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1705         },
1706         { /* class_tid: 16, wh_plus, table: ext_em_0 */
1707         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1708         .resource_type = TF_MEM_EXTERNAL,
1709         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1710         .direction = TF_DIR_RX,
1711         .key_start_idx = 981,
1712         .blob_key_bit_size = 448,
1713         .key_bit_size = 448,
1714         .key_num_fields = 11,
1715         .result_start_idx = 710,
1716         .result_bit_size = 64,
1717         .result_num_fields = 9,
1718         .encap_num_fields = 0,
1719         .ident_start_idx = 25,
1720         .ident_nums = 0,
1721         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1722         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1723         },
1724         { /* class_tid: 16, wh_plus, table: int_em_0 */
1725         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1726         .resource_type = TF_MEM_INTERNAL,
1727         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1728         .direction = TF_DIR_RX,
1729         .key_start_idx = 992,
1730         .blob_key_bit_size = 200,
1731         .key_bit_size = 200,
1732         .key_num_fields = 11,
1733         .result_start_idx = 719,
1734         .result_bit_size = 64,
1735         .result_num_fields = 9,
1736         .encap_num_fields = 0,
1737         .ident_start_idx = 25,
1738         .ident_nums = 0,
1739         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1740         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1741         },
1742         { /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
1743         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1744         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1745         .direction = TF_DIR_RX,
1746         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1747         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1748         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1749         .pri_operand = 0,
1750         .key_start_idx = 1003,
1751         .blob_key_bit_size = 167,
1752         .key_bit_size = 167,
1753         .key_num_fields = 13,
1754         .result_start_idx = 728,
1755         .result_bit_size = 64,
1756         .result_num_fields = 13,
1757         .encap_num_fields = 0,
1758         .ident_start_idx = 25,
1759         .ident_nums = 1,
1760         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1761         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1762         },
1763         { /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
1764         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1765         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1766         .resource_sub_type =
1767                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1768         .direction = TF_DIR_RX,
1769         .key_start_idx = 1016,
1770         .blob_key_bit_size = 16,
1771         .key_bit_size = 16,
1772         .key_num_fields = 3,
1773         .result_start_idx = 741,
1774         .result_bit_size = 10,
1775         .result_num_fields = 1,
1776         .encap_num_fields = 0,
1777         .ident_start_idx = 26,
1778         .ident_nums = 1
1779         },
1780         { /* class_tid: 17, wh_plus, table: profile_tcam_0 */
1781         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1782         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1783         .direction = TF_DIR_RX,
1784         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1785         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1786         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1787         .pri_operand = 0,
1788         .key_start_idx = 1019,
1789         .blob_key_bit_size = 81,
1790         .key_bit_size = 81,
1791         .key_num_fields = 43,
1792         .result_start_idx = 742,
1793         .result_bit_size = 38,
1794         .result_num_fields = 8,
1795         .encap_num_fields = 0,
1796         .ident_start_idx = 27,
1797         .ident_nums = 0,
1798         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1799         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1800         },
1801         { /* class_tid: 17, wh_plus, table: ext_em_0 */
1802         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
1803         .resource_type = TF_MEM_EXTERNAL,
1804         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
1805         .direction = TF_DIR_RX,
1806         .key_start_idx = 1062,
1807         .blob_key_bit_size = 448,
1808         .key_bit_size = 448,
1809         .key_num_fields = 11,
1810         .result_start_idx = 750,
1811         .result_bit_size = 64,
1812         .result_num_fields = 9,
1813         .encap_num_fields = 0,
1814         .ident_start_idx = 27,
1815         .ident_nums = 0,
1816         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1817         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1818         },
1819         { /* class_tid: 17, wh_plus, table: int_em_0 */
1820         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1821         .resource_type = TF_MEM_INTERNAL,
1822         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1823         .direction = TF_DIR_RX,
1824         .key_start_idx = 1073,
1825         .blob_key_bit_size = 392,
1826         .key_bit_size = 392,
1827         .key_num_fields = 11,
1828         .result_start_idx = 759,
1829         .result_bit_size = 64,
1830         .result_num_fields = 9,
1831         .encap_num_fields = 0,
1832         .ident_start_idx = 27,
1833         .ident_nums = 0,
1834         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1835         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1836         },
1837         { /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */
1838         .resource_func = BNXT_ULP_RESOURCE_FUNC_INDEX_TABLE,
1839         .resource_type = TF_TBL_TYPE_ACT_STATS_64,
1840         .resource_sub_type =
1841                 BNXT_ULP_RESOURCE_SUB_TYPE_INDEX_TABLE_INT_COUNT_ACC,
1842         .cond_opcode = BNXT_ULP_COND_OPC_ACTION_BIT_IS_SET,
1843         .cond_operand = BNXT_ULP_ACTION_BIT_COUNT,
1844         .direction = TF_DIR_RX,
1845         .result_start_idx = 768,
1846         .result_bit_size = 64,
1847         .result_num_fields = 1,
1848         .encap_num_fields = 0,
1849         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1850         .tbl_opcode = BNXT_ULP_INDEX_TBL_OPC_ALLOC_WR_REGFILE,
1851         .tbl_operand = BNXT_ULP_REGFILE_INDEX_FLOW_CNTR_PTR_0
1852         },
1853         { /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
1854         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1855         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1856         .direction = TF_DIR_RX,
1857         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1858         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1859         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1860         .pri_operand = 0,
1861         .key_start_idx = 1084,
1862         .blob_key_bit_size = 167,
1863         .key_bit_size = 167,
1864         .key_num_fields = 13,
1865         .result_start_idx = 769,
1866         .result_bit_size = 64,
1867         .result_num_fields = 13,
1868         .encap_num_fields = 0,
1869         .ident_start_idx = 27,
1870         .ident_nums = 1,
1871         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1872         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1873         },
1874         { /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
1875         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1876         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1877         .resource_sub_type =
1878                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1879         .direction = TF_DIR_RX,
1880         .key_start_idx = 1097,
1881         .blob_key_bit_size = 16,
1882         .key_bit_size = 16,
1883         .key_num_fields = 3,
1884         .result_start_idx = 782,
1885         .result_bit_size = 20,
1886         .result_num_fields = 2,
1887         .encap_num_fields = 0,
1888         .ident_start_idx = 28,
1889         .ident_nums = 2
1890         },
1891         { /* class_tid: 18, wh_plus, table: profile_tcam_0 */
1892         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1893         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1894         .direction = TF_DIR_RX,
1895         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1896         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1897         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1898         .pri_operand = 0,
1899         .key_start_idx = 1100,
1900         .blob_key_bit_size = 81,
1901         .key_bit_size = 81,
1902         .key_num_fields = 43,
1903         .result_start_idx = 784,
1904         .result_bit_size = 38,
1905         .result_num_fields = 8,
1906         .encap_num_fields = 0,
1907         .ident_start_idx = 30,
1908         .ident_nums = 0,
1909         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1910         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1911         },
1912         { /* class_tid: 18, wh_plus, table: wm_0 */
1913         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1914         .resource_type = TF_TCAM_TBL_TYPE_WC_TCAM,
1915         .direction = TF_DIR_RX,
1916         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1917         .pri_operand = 0,
1918         .key_start_idx = 1143,
1919         .blob_key_bit_size = 192,
1920         .key_bit_size = 160,
1921         .key_num_fields = 5,
1922         .result_start_idx = 792,
1923         .result_bit_size = 19,
1924         .result_num_fields = 3,
1925         .encap_num_fields = 0,
1926         .ident_start_idx = 30,
1927         .ident_nums = 0,
1928         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
1929         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
1930         },
1931         { /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
1932         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1933         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
1934         .direction = TF_DIR_RX,
1935         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
1936         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
1937         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1938         .pri_operand = 0,
1939         .key_start_idx = 1148,
1940         .blob_key_bit_size = 167,
1941         .key_bit_size = 167,
1942         .key_num_fields = 13,
1943         .result_start_idx = 795,
1944         .result_bit_size = 64,
1945         .result_num_fields = 13,
1946         .encap_num_fields = 0,
1947         .ident_start_idx = 30,
1948         .ident_nums = 1,
1949         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1950         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1951         },
1952         { /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
1953         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
1954         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1955         .resource_sub_type =
1956                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
1957         .direction = TF_DIR_RX,
1958         .key_start_idx = 1161,
1959         .blob_key_bit_size = 16,
1960         .key_bit_size = 16,
1961         .key_num_fields = 3,
1962         .result_start_idx = 808,
1963         .result_bit_size = 20,
1964         .result_num_fields = 2,
1965         .encap_num_fields = 0,
1966         .ident_start_idx = 31,
1967         .ident_nums = 2
1968         },
1969         { /* class_tid: 19, wh_plus, table: profile_tcam_0 */
1970         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
1971         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
1972         .direction = TF_DIR_RX,
1973         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
1974         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
1975         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
1976         .pri_operand = 0,
1977         .key_start_idx = 1164,
1978         .blob_key_bit_size = 81,
1979         .key_bit_size = 81,
1980         .key_num_fields = 43,
1981         .result_start_idx = 810,
1982         .result_bit_size = 38,
1983         .result_num_fields = 8,
1984         .encap_num_fields = 0,
1985         .ident_start_idx = 33,
1986         .ident_nums = 0,
1987         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
1988         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
1989         },
1990         { /* class_tid: 19, wh_plus, table: int_em_0 */
1991         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
1992         .resource_type = TF_MEM_INTERNAL,
1993         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
1994         .direction = TF_DIR_RX,
1995         .key_start_idx = 1207,
1996         .blob_key_bit_size = 112,
1997         .key_bit_size = 112,
1998         .key_num_fields = 8,
1999         .result_start_idx = 818,
2000         .result_bit_size = 64,
2001         .result_num_fields = 9,
2002         .encap_num_fields = 0,
2003         .ident_start_idx = 33,
2004         .ident_nums = 0,
2005         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2006         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2007         },
2008         { /* class_tid: 19, wh_plus, table: ext_em_0 */
2009         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2010         .resource_type = TF_MEM_EXTERNAL,
2011         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2012         .direction = TF_DIR_RX,
2013         .key_start_idx = 1215,
2014         .blob_key_bit_size = 448,
2015         .key_bit_size = 448,
2016         .key_num_fields = 8,
2017         .result_start_idx = 827,
2018         .result_bit_size = 64,
2019         .result_num_fields = 9,
2020         .encap_num_fields = 0,
2021         .ident_start_idx = 33,
2022         .ident_nums = 0,
2023         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2024         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2025         },
2026         { /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
2027         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2028         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2029         .resource_sub_type =
2030                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2031         .direction = TF_DIR_TX,
2032         .key_start_idx = 1223,
2033         .blob_key_bit_size = 8,
2034         .key_bit_size = 8,
2035         .key_num_fields = 1,
2036         .result_start_idx = 836,
2037         .result_bit_size = 10,
2038         .result_num_fields = 1,
2039         .encap_num_fields = 0,
2040         .ident_start_idx = 33,
2041         .ident_nums = 1
2042         },
2043         { /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
2044         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2045         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2046         .direction = TF_DIR_TX,
2047         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2048         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2049         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2050         .pri_operand = 0,
2051         .key_start_idx = 1224,
2052         .blob_key_bit_size = 167,
2053         .key_bit_size = 167,
2054         .key_num_fields = 13,
2055         .result_start_idx = 837,
2056         .result_bit_size = 64,
2057         .result_num_fields = 13,
2058         .encap_num_fields = 0,
2059         .ident_start_idx = 34,
2060         .ident_nums = 0,
2061         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2062         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2063         },
2064         { /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
2065         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2066         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2067         .resource_sub_type =
2068                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2069         .direction = TF_DIR_TX,
2070         .key_start_idx = 1237,
2071         .blob_key_bit_size = 16,
2072         .key_bit_size = 16,
2073         .key_num_fields = 3,
2074         .result_start_idx = 850,
2075         .result_bit_size = 10,
2076         .result_num_fields = 1,
2077         .encap_num_fields = 0,
2078         .ident_start_idx = 34,
2079         .ident_nums = 1
2080         },
2081         { /* class_tid: 20, wh_plus, table: profile_tcam_0 */
2082         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2083         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2084         .direction = TF_DIR_TX,
2085         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2086         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2087         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2088         .pri_operand = 0,
2089         .key_start_idx = 1240,
2090         .blob_key_bit_size = 81,
2091         .key_bit_size = 81,
2092         .key_num_fields = 43,
2093         .result_start_idx = 851,
2094         .result_bit_size = 38,
2095         .result_num_fields = 8,
2096         .encap_num_fields = 0,
2097         .ident_start_idx = 35,
2098         .ident_nums = 0,
2099         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2100         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2101         },
2102         { /* class_tid: 20, wh_plus, table: ext_em_0 */
2103         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2104         .resource_type = TF_MEM_EXTERNAL,
2105         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2106         .direction = TF_DIR_TX,
2107         .key_start_idx = 1283,
2108         .blob_key_bit_size = 448,
2109         .key_bit_size = 448,
2110         .key_num_fields = 11,
2111         .result_start_idx = 859,
2112         .result_bit_size = 64,
2113         .result_num_fields = 9,
2114         .encap_num_fields = 0,
2115         .ident_start_idx = 35,
2116         .ident_nums = 0,
2117         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2118         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2119         },
2120         { /* class_tid: 20, wh_plus, table: int_em_0 */
2121         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2122         .resource_type = TF_MEM_INTERNAL,
2123         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2124         .direction = TF_DIR_TX,
2125         .key_start_idx = 1294,
2126         .blob_key_bit_size = 200,
2127         .key_bit_size = 200,
2128         .key_num_fields = 11,
2129         .result_start_idx = 868,
2130         .result_bit_size = 64,
2131         .result_num_fields = 9,
2132         .encap_num_fields = 0,
2133         .ident_start_idx = 35,
2134         .ident_nums = 0,
2135         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2136         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2137         },
2138         { /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
2139         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2140         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2141         .resource_sub_type =
2142                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2143         .direction = TF_DIR_TX,
2144         .key_start_idx = 1305,
2145         .blob_key_bit_size = 8,
2146         .key_bit_size = 8,
2147         .key_num_fields = 1,
2148         .result_start_idx = 877,
2149         .result_bit_size = 10,
2150         .result_num_fields = 1,
2151         .encap_num_fields = 0,
2152         .ident_start_idx = 35,
2153         .ident_nums = 1
2154         },
2155         { /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
2156         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2157         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2158         .direction = TF_DIR_TX,
2159         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2160         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2161         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2162         .pri_operand = 0,
2163         .key_start_idx = 1306,
2164         .blob_key_bit_size = 167,
2165         .key_bit_size = 167,
2166         .key_num_fields = 13,
2167         .result_start_idx = 878,
2168         .result_bit_size = 64,
2169         .result_num_fields = 13,
2170         .encap_num_fields = 0,
2171         .ident_start_idx = 36,
2172         .ident_nums = 0,
2173         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2174         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2175         },
2176         { /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
2177         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2178         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2179         .resource_sub_type =
2180                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2181         .direction = TF_DIR_TX,
2182         .key_start_idx = 1319,
2183         .blob_key_bit_size = 16,
2184         .key_bit_size = 16,
2185         .key_num_fields = 3,
2186         .result_start_idx = 891,
2187         .result_bit_size = 10,
2188         .result_num_fields = 1,
2189         .encap_num_fields = 0,
2190         .ident_start_idx = 36,
2191         .ident_nums = 1
2192         },
2193         { /* class_tid: 21, wh_plus, table: profile_tcam_0 */
2194         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2195         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2196         .direction = TF_DIR_TX,
2197         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2198         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2199         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2200         .pri_operand = 0,
2201         .key_start_idx = 1322,
2202         .blob_key_bit_size = 81,
2203         .key_bit_size = 81,
2204         .key_num_fields = 43,
2205         .result_start_idx = 892,
2206         .result_bit_size = 38,
2207         .result_num_fields = 8,
2208         .encap_num_fields = 0,
2209         .ident_start_idx = 37,
2210         .ident_nums = 0,
2211         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2212         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2213         },
2214         { /* class_tid: 21, wh_plus, table: ext_em_0 */
2215         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2216         .resource_type = TF_MEM_EXTERNAL,
2217         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2218         .direction = TF_DIR_TX,
2219         .key_start_idx = 1365,
2220         .blob_key_bit_size = 448,
2221         .key_bit_size = 448,
2222         .key_num_fields = 11,
2223         .result_start_idx = 900,
2224         .result_bit_size = 64,
2225         .result_num_fields = 9,
2226         .encap_num_fields = 0,
2227         .ident_start_idx = 37,
2228         .ident_nums = 0,
2229         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2230         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2231         },
2232         { /* class_tid: 21, wh_plus, table: int_em_0 */
2233         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2234         .resource_type = TF_MEM_INTERNAL,
2235         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2236         .direction = TF_DIR_TX,
2237         .key_start_idx = 1376,
2238         .blob_key_bit_size = 200,
2239         .key_bit_size = 200,
2240         .key_num_fields = 11,
2241         .result_start_idx = 909,
2242         .result_bit_size = 64,
2243         .result_num_fields = 9,
2244         .encap_num_fields = 0,
2245         .ident_start_idx = 37,
2246         .ident_nums = 0,
2247         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2248         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2249         },
2250         { /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
2251         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2252         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2253         .resource_sub_type =
2254                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2255         .direction = TF_DIR_TX,
2256         .key_start_idx = 1387,
2257         .blob_key_bit_size = 8,
2258         .key_bit_size = 8,
2259         .key_num_fields = 1,
2260         .result_start_idx = 918,
2261         .result_bit_size = 10,
2262         .result_num_fields = 1,
2263         .encap_num_fields = 0,
2264         .ident_start_idx = 37,
2265         .ident_nums = 1
2266         },
2267         { /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
2268         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2269         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2270         .direction = TF_DIR_TX,
2271         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2272         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2273         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2274         .pri_operand = 0,
2275         .key_start_idx = 1388,
2276         .blob_key_bit_size = 167,
2277         .key_bit_size = 167,
2278         .key_num_fields = 13,
2279         .result_start_idx = 919,
2280         .result_bit_size = 64,
2281         .result_num_fields = 13,
2282         .encap_num_fields = 0,
2283         .ident_start_idx = 38,
2284         .ident_nums = 0,
2285         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2286         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2287         },
2288         { /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
2289         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2290         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2291         .resource_sub_type =
2292                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2293         .direction = TF_DIR_TX,
2294         .key_start_idx = 1401,
2295         .blob_key_bit_size = 16,
2296         .key_bit_size = 16,
2297         .key_num_fields = 3,
2298         .result_start_idx = 932,
2299         .result_bit_size = 10,
2300         .result_num_fields = 1,
2301         .encap_num_fields = 0,
2302         .ident_start_idx = 38,
2303         .ident_nums = 1
2304         },
2305         { /* class_tid: 22, wh_plus, table: profile_tcam_0 */
2306         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2307         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2308         .direction = TF_DIR_TX,
2309         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2310         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2311         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2312         .pri_operand = 0,
2313         .key_start_idx = 1404,
2314         .blob_key_bit_size = 81,
2315         .key_bit_size = 81,
2316         .key_num_fields = 43,
2317         .result_start_idx = 933,
2318         .result_bit_size = 38,
2319         .result_num_fields = 8,
2320         .encap_num_fields = 0,
2321         .ident_start_idx = 39,
2322         .ident_nums = 0,
2323         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2324         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2325         },
2326         { /* class_tid: 22, wh_plus, table: ext_em_0 */
2327         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2328         .resource_type = TF_MEM_EXTERNAL,
2329         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2330         .direction = TF_DIR_TX,
2331         .key_start_idx = 1447,
2332         .blob_key_bit_size = 448,
2333         .key_bit_size = 448,
2334         .key_num_fields = 11,
2335         .result_start_idx = 941,
2336         .result_bit_size = 64,
2337         .result_num_fields = 9,
2338         .encap_num_fields = 0,
2339         .ident_start_idx = 39,
2340         .ident_nums = 0,
2341         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2342         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2343         },
2344         { /* class_tid: 22, wh_plus, table: int_em_0 */
2345         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2346         .resource_type = TF_MEM_INTERNAL,
2347         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2348         .direction = TF_DIR_TX,
2349         .key_start_idx = 1458,
2350         .blob_key_bit_size = 392,
2351         .key_bit_size = 392,
2352         .key_num_fields = 11,
2353         .result_start_idx = 950,
2354         .result_bit_size = 64,
2355         .result_num_fields = 9,
2356         .encap_num_fields = 0,
2357         .ident_start_idx = 39,
2358         .ident_nums = 0,
2359         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2360         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2361         },
2362         { /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
2363         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2364         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2365         .resource_sub_type =
2366                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2367         .direction = TF_DIR_TX,
2368         .key_start_idx = 1469,
2369         .blob_key_bit_size = 8,
2370         .key_bit_size = 8,
2371         .key_num_fields = 1,
2372         .result_start_idx = 959,
2373         .result_bit_size = 10,
2374         .result_num_fields = 1,
2375         .encap_num_fields = 0,
2376         .ident_start_idx = 39,
2377         .ident_nums = 1
2378         },
2379         { /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
2380         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2381         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_LOW,
2382         .direction = TF_DIR_TX,
2383         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2384         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2385         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2386         .pri_operand = 0,
2387         .key_start_idx = 1470,
2388         .blob_key_bit_size = 167,
2389         .key_bit_size = 167,
2390         .key_num_fields = 13,
2391         .result_start_idx = 960,
2392         .result_bit_size = 64,
2393         .result_num_fields = 13,
2394         .encap_num_fields = 0,
2395         .ident_start_idx = 40,
2396         .ident_nums = 0,
2397         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2398         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2399         },
2400         { /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
2401         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2402         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2403         .resource_sub_type =
2404                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2405         .direction = TF_DIR_TX,
2406         .key_start_idx = 1483,
2407         .blob_key_bit_size = 16,
2408         .key_bit_size = 16,
2409         .key_num_fields = 3,
2410         .result_start_idx = 973,
2411         .result_bit_size = 10,
2412         .result_num_fields = 1,
2413         .encap_num_fields = 0,
2414         .ident_start_idx = 40,
2415         .ident_nums = 1
2416         },
2417         { /* class_tid: 23, wh_plus, table: profile_tcam_0 */
2418         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2419         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2420         .direction = TF_DIR_TX,
2421         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2422         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2423         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2424         .pri_operand = 0,
2425         .key_start_idx = 1486,
2426         .blob_key_bit_size = 81,
2427         .key_bit_size = 81,
2428         .key_num_fields = 43,
2429         .result_start_idx = 974,
2430         .result_bit_size = 38,
2431         .result_num_fields = 8,
2432         .encap_num_fields = 0,
2433         .ident_start_idx = 41,
2434         .ident_nums = 0,
2435         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2436         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2437         },
2438         { /* class_tid: 23, wh_plus, table: ext_em_0 */
2439         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2440         .resource_type = TF_MEM_EXTERNAL,
2441         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2442         .direction = TF_DIR_TX,
2443         .key_start_idx = 1529,
2444         .blob_key_bit_size = 448,
2445         .key_bit_size = 448,
2446         .key_num_fields = 11,
2447         .result_start_idx = 982,
2448         .result_bit_size = 64,
2449         .result_num_fields = 9,
2450         .encap_num_fields = 0,
2451         .ident_start_idx = 41,
2452         .ident_nums = 0,
2453         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2454         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2455         },
2456         { /* class_tid: 23, wh_plus, table: int_em_0 */
2457         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2458         .resource_type = TF_MEM_INTERNAL,
2459         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2460         .direction = TF_DIR_TX,
2461         .key_start_idx = 1540,
2462         .blob_key_bit_size = 392,
2463         .key_bit_size = 392,
2464         .key_num_fields = 11,
2465         .result_start_idx = 991,
2466         .result_bit_size = 64,
2467         .result_num_fields = 9,
2468         .encap_num_fields = 0,
2469         .ident_start_idx = 41,
2470         .ident_nums = 0,
2471         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_PUSH_IF_MARK_ACTION,
2472         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2473         },
2474         { /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
2475         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2476         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2477         .direction = TF_DIR_TX,
2478         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
2479         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2480         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2481         .pri_operand = 0,
2482         .key_start_idx = 1551,
2483         .blob_key_bit_size = 167,
2484         .key_bit_size = 167,
2485         .key_num_fields = 13,
2486         .result_start_idx = 1000,
2487         .result_bit_size = 64,
2488         .result_num_fields = 13,
2489         .encap_num_fields = 0,
2490         .ident_start_idx = 41,
2491         .ident_nums = 1,
2492         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2493         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2494         },
2495         { /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
2496         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2497         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2498         .resource_sub_type =
2499                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2500         .direction = TF_DIR_TX,
2501         .key_start_idx = 1564,
2502         .blob_key_bit_size = 16,
2503         .key_bit_size = 16,
2504         .key_num_fields = 3,
2505         .result_start_idx = 1013,
2506         .result_bit_size = 10,
2507         .result_num_fields = 1,
2508         .encap_num_fields = 0,
2509         .ident_start_idx = 42,
2510         .ident_nums = 1
2511         },
2512         { /* class_tid: 24, wh_plus, table: profile_tcam_0 */
2513         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2514         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2515         .direction = TF_DIR_TX,
2516         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2517         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2518         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2519         .pri_operand = 0,
2520         .key_start_idx = 1567,
2521         .blob_key_bit_size = 81,
2522         .key_bit_size = 81,
2523         .key_num_fields = 43,
2524         .result_start_idx = 1014,
2525         .result_bit_size = 38,
2526         .result_num_fields = 8,
2527         .encap_num_fields = 0,
2528         .ident_start_idx = 43,
2529         .ident_nums = 0,
2530         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2531         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2532         },
2533         { /* class_tid: 24, wh_plus, table: ext_em_0 */
2534         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2535         .resource_type = TF_MEM_EXTERNAL,
2536         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2537         .direction = TF_DIR_TX,
2538         .key_start_idx = 1610,
2539         .blob_key_bit_size = 448,
2540         .key_bit_size = 448,
2541         .key_num_fields = 7,
2542         .result_start_idx = 1022,
2543         .result_bit_size = 64,
2544         .result_num_fields = 9,
2545         .encap_num_fields = 0,
2546         .ident_start_idx = 43,
2547         .ident_nums = 0,
2548         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2549         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2550         },
2551         { /* class_tid: 24, wh_plus, table: int_em_0 */
2552         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2553         .resource_type = TF_MEM_INTERNAL,
2554         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2555         .direction = TF_DIR_TX,
2556         .key_start_idx = 1617,
2557         .blob_key_bit_size = 104,
2558         .key_bit_size = 104,
2559         .key_num_fields = 7,
2560         .result_start_idx = 1031,
2561         .result_bit_size = 64,
2562         .result_num_fields = 9,
2563         .encap_num_fields = 0,
2564         .ident_start_idx = 43,
2565         .ident_nums = 0,
2566         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2567         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2568         },
2569         { /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
2570         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2571         .resource_type = TF_TCAM_TBL_TYPE_L2_CTXT_TCAM_HIGH,
2572         .direction = TF_DIR_TX,
2573         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_SRCH_ALLOC_WR_REGFILE,
2574         .tbl_operand = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_TCAM_INDEX_0,
2575         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2576         .pri_operand = 0,
2577         .key_start_idx = 1624,
2578         .blob_key_bit_size = 167,
2579         .key_bit_size = 167,
2580         .key_num_fields = 13,
2581         .result_start_idx = 1040,
2582         .result_bit_size = 64,
2583         .result_num_fields = 13,
2584         .encap_num_fields = 0,
2585         .ident_start_idx = 43,
2586         .ident_nums = 1,
2587         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2588         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2589         },
2590         { /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
2591         .resource_func = BNXT_ULP_RESOURCE_FUNC_INVALID,
2592         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2593         .resource_sub_type =
2594                 BNXT_ULP_RESOURCE_SUB_TYPE_GENERIC_TABLE_PROFILE_TCAM,
2595         .direction = TF_DIR_TX,
2596         .key_start_idx = 1637,
2597         .blob_key_bit_size = 16,
2598         .key_bit_size = 16,
2599         .key_num_fields = 3,
2600         .result_start_idx = 1053,
2601         .result_bit_size = 10,
2602         .result_num_fields = 1,
2603         .encap_num_fields = 0,
2604         .ident_start_idx = 44,
2605         .ident_nums = 1
2606         },
2607         { /* class_tid: 25, wh_plus, table: profile_tcam_0 */
2608         .resource_func = BNXT_ULP_RESOURCE_FUNC_TCAM_TABLE,
2609         .resource_type = TF_TCAM_TBL_TYPE_PROF_TCAM,
2610         .direction = TF_DIR_TX,
2611         .tbl_opcode = BNXT_ULP_TCAM_TBL_OPC_ALLOC_WR_REGFILE,
2612         .tbl_operand = BNXT_ULP_REGFILE_INDEX_PROFILE_TCAM_INDEX_0,
2613         .pri_opcode = BNXT_ULP_PRI_OPC_CONST,
2614         .pri_operand = 0,
2615         .key_start_idx = 1640,
2616         .blob_key_bit_size = 81,
2617         .key_bit_size = 81,
2618         .key_num_fields = 43,
2619         .result_start_idx = 1054,
2620         .result_bit_size = 38,
2621         .result_num_fields = 8,
2622         .encap_num_fields = 0,
2623         .ident_start_idx = 45,
2624         .ident_nums = 0,
2625         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2626         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_NO
2627         },
2628         { /* class_tid: 25, wh_plus, table: ext_em_0 */
2629         .resource_func = BNXT_ULP_RESOURCE_FUNC_EXT_EM_TABLE,
2630         .resource_type = TF_MEM_EXTERNAL,
2631         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_EXT,
2632         .direction = TF_DIR_TX,
2633         .key_start_idx = 1683,
2634         .blob_key_bit_size = 448,
2635         .key_bit_size = 448,
2636         .key_num_fields = 7,
2637         .result_start_idx = 1062,
2638         .result_bit_size = 64,
2639         .result_num_fields = 9,
2640         .encap_num_fields = 0,
2641         .ident_start_idx = 45,
2642         .ident_nums = 0,
2643         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2644         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2645         },
2646         { /* class_tid: 25, wh_plus, table: int_em_0 */
2647         .resource_func = BNXT_ULP_RESOURCE_FUNC_INT_EM_TABLE,
2648         .resource_type = TF_MEM_INTERNAL,
2649         .mem_type_opcode = BNXT_ULP_MEM_TYPE_OPC_EXECUTE_IF_INT,
2650         .direction = TF_DIR_TX,
2651         .key_start_idx = 1690,
2652         .blob_key_bit_size = 104,
2653         .key_bit_size = 104,
2654         .key_num_fields = 7,
2655         .result_start_idx = 1071,
2656         .result_bit_size = 64,
2657         .result_num_fields = 9,
2658         .encap_num_fields = 0,
2659         .ident_start_idx = 45,
2660         .ident_nums = 0,
2661         .mark_db_opcode = BNXT_ULP_MARK_DB_OPC_NOP,
2662         .critical_resource = BNXT_ULP_CRITICAL_RESOURCE_YES
2663         }
2664 };
2665
2666 struct bnxt_ulp_mapper_key_field_info ulp_wh_plus_class_key_field_list[] = {
2667         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
2668         {
2669         .description = "svif",
2670         .field_bit_size = 8,
2671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2672         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2673         .spec_operand = {
2674                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2675                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2676                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2677                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2678         },
2679         /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
2680         {
2681         .description = "l2_ivlan_vid",
2682         .field_bit_size = 12,
2683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2685         },
2686         {
2687         .description = "l2_ovlan_vid",
2688         .field_bit_size = 12,
2689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2691         },
2692         {
2693         .description = "mac0_l2_dst",
2694         .field_bit_size = 48,
2695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2697         },
2698         {
2699         .description = "svif",
2700         .field_bit_size = 8,
2701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2702         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2703                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2705         .spec_operand = {
2706                 (BNXT_ULP_CF_IDX_PHY_PORT_SVIF >> 8) & 0xff,
2707                 BNXT_ULP_CF_IDX_PHY_PORT_SVIF & 0xff,
2708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2710         },
2711         {
2712         .description = "sparif",
2713         .field_bit_size = 4,
2714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2716         },
2717         {
2718         .description = "tl2_ivlan_vid",
2719         .field_bit_size = 12,
2720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2722         },
2723         {
2724         .description = "tl2_ovlan_vid",
2725         .field_bit_size = 12,
2726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2728         },
2729         {
2730         .description = "mac1_tl2_dst",
2731         .field_bit_size = 48,
2732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2734         },
2735         {
2736         .description = "l2_num_vtags",
2737         .field_bit_size = 2,
2738         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2739         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2740         },
2741         {
2742         .description = "tl2_num_vtags",
2743         .field_bit_size = 2,
2744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2746         },
2747         {
2748         .description = "tun_hdr_type",
2749         .field_bit_size = 4,
2750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2752         },
2753         {
2754         .description = "key_type",
2755         .field_bit_size = 2,
2756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2757         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2758         },
2759         {
2760         .description = "valid",
2761         .field_bit_size = 1,
2762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2763         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2764                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2765         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2766         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2768         },
2769         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
2770         {
2771         .description = "l2_ivlan_vid",
2772         .field_bit_size = 12,
2773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2775         },
2776         {
2777         .description = "l2_ovlan_vid",
2778         .field_bit_size = 12,
2779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2781         },
2782         {
2783         .description = "mac0_l2_addr",
2784         .field_bit_size = 48,
2785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2787         },
2788         {
2789         .description = "svif",
2790         .field_bit_size = 8,
2791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2792         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2793                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2795         .spec_operand = {
2796                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2797                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2800         },
2801         {
2802         .description = "sparif",
2803         .field_bit_size = 4,
2804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2806         },
2807         {
2808         .description = "tl2_ivlan_vid",
2809         .field_bit_size = 12,
2810         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2811         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2812         },
2813         {
2814         .description = "tl2_ovlan_vid",
2815         .field_bit_size = 12,
2816         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2818         },
2819         {
2820         .description = "mac1_tl2_addr",
2821         .field_bit_size = 48,
2822         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2824         },
2825         {
2826         .description = "l2_num_vtags",
2827         .field_bit_size = 2,
2828         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2830         },
2831         {
2832         .description = "tl2_num_vtags",
2833         .field_bit_size = 2,
2834         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2835         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2836         },
2837         {
2838         .description = "tun_hdr_type",
2839         .field_bit_size = 4,
2840         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2842         },
2843         {
2844         .description = "key_type",
2845         .field_bit_size = 2,
2846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2848         },
2849         {
2850         .description = "valid",
2851         .field_bit_size = 1,
2852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2853         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2854                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2855         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2856         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2858         },
2859         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
2860         {
2861         .description = "svif",
2862         .field_bit_size = 8,
2863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2864         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2865         .spec_operand = {
2866                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2867                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2870         },
2871         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
2872         {
2873         .description = "l2_ivlan_vid",
2874         .field_bit_size = 12,
2875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2877         },
2878         {
2879         .description = "l2_ovlan_vid",
2880         .field_bit_size = 12,
2881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2882         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2883         },
2884         {
2885         .description = "mac0_l2_addr",
2886         .field_bit_size = 48,
2887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2888         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2889         },
2890         {
2891         .description = "svif",
2892         .field_bit_size = 8,
2893         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2894         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2895                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2897         .spec_operand = {
2898                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2899                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2902         },
2903         {
2904         .description = "sparif",
2905         .field_bit_size = 4,
2906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2907         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2908         },
2909         {
2910         .description = "tl2_ivlan_vid",
2911         .field_bit_size = 12,
2912         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2913         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2914         },
2915         {
2916         .description = "tl2_ovlan_vid",
2917         .field_bit_size = 12,
2918         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2919         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2920         },
2921         {
2922         .description = "mac1_tl2_addr",
2923         .field_bit_size = 48,
2924         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2926         },
2927         {
2928         .description = "l2_num_vtags",
2929         .field_bit_size = 2,
2930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2932         },
2933         {
2934         .description = "tl2_num_vtags",
2935         .field_bit_size = 2,
2936         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2937         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2938         },
2939         {
2940         .description = "tun_hdr_type",
2941         .field_bit_size = 4,
2942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2944         },
2945         {
2946         .description = "key_type",
2947         .field_bit_size = 2,
2948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2950         },
2951         {
2952         .description = "valid",
2953         .field_bit_size = 1,
2954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2955         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2956                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2957         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2958         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2960         },
2961         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
2962         {
2963         .description = "svif",
2964         .field_bit_size = 8,
2965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2966         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2967         .spec_operand = {
2968                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
2969                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
2970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2971                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
2972         },
2973         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
2974         {
2975         .description = "l2_ivlan_vid",
2976         .field_bit_size = 12,
2977         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2979         },
2980         {
2981         .description = "l2_ovlan_vid",
2982         .field_bit_size = 12,
2983         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2984         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2985         },
2986         {
2987         .description = "mac0_l2_dst",
2988         .field_bit_size = 48,
2989         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
2990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
2991         },
2992         {
2993         .description = "svif",
2994         .field_bit_size = 8,
2995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
2996         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
2997                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
2998         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
2999         .spec_operand = {
3000                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3001                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3002                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3004         },
3005         {
3006         .description = "sparif",
3007         .field_bit_size = 4,
3008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3010         },
3011         {
3012         .description = "tl2_ivlan_vid",
3013         .field_bit_size = 12,
3014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3016         },
3017         {
3018         .description = "tl2_ovlan_vid",
3019         .field_bit_size = 12,
3020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3022         },
3023         {
3024         .description = "mac1_tl2_dst",
3025         .field_bit_size = 48,
3026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3028         },
3029         {
3030         .description = "l2_num_vtags",
3031         .field_bit_size = 2,
3032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3034         },
3035         {
3036         .description = "tl2_num_vtags",
3037         .field_bit_size = 2,
3038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3040         },
3041         {
3042         .description = "tun_hdr_type",
3043         .field_bit_size = 4,
3044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3046         },
3047         {
3048         .description = "key_type",
3049         .field_bit_size = 2,
3050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3052         },
3053         {
3054         .description = "valid",
3055         .field_bit_size = 1,
3056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3057         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3058                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3060         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3062         },
3063         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
3064         {
3065         .description = "l2_ivlan_vid",
3066         .field_bit_size = 12,
3067         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3069         },
3070         {
3071         .description = "l2_ovlan_vid",
3072         .field_bit_size = 12,
3073         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3074         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3075                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3076         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3077         .spec_operand = {
3078                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3079                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3081                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3082         },
3083         {
3084         .description = "mac0_l2_dst",
3085         .field_bit_size = 48,
3086         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3087         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3088         },
3089         {
3090         .description = "svif",
3091         .field_bit_size = 8,
3092         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3093         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3094                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3096         .spec_operand = {
3097                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3098                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3100                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3101         },
3102         {
3103         .description = "sparif",
3104         .field_bit_size = 4,
3105         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3106         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3107         },
3108         {
3109         .description = "tl2_ivlan_vid",
3110         .field_bit_size = 12,
3111         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3113         },
3114         {
3115         .description = "tl2_ovlan_vid",
3116         .field_bit_size = 12,
3117         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3118         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3119         },
3120         {
3121         .description = "mac1_tl2_dst",
3122         .field_bit_size = 48,
3123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3124         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3125         },
3126         {
3127         .description = "l2_num_vtags",
3128         .field_bit_size = 2,
3129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3130         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3131                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3133         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
3134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3135         },
3136         {
3137         .description = "tl2_num_vtags",
3138         .field_bit_size = 2,
3139         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3140         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3141         },
3142         {
3143         .description = "tun_hdr_type",
3144         .field_bit_size = 4,
3145         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3146         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3147                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3149         .spec_operand = {
3150                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3153         },
3154         {
3155         .description = "key_type",
3156         .field_bit_size = 2,
3157         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3158         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3159         },
3160         {
3161         .description = "valid",
3162         .field_bit_size = 1,
3163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3164         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3165                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3166         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3167         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3168                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3169         },
3170         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
3171         {
3172         .description = "l2_ivlan_vid",
3173         .field_bit_size = 12,
3174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3175         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3176                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3178         .spec_operand = {
3179                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
3180                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
3181                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3183         },
3184         {
3185         .description = "l2_ovlan_vid",
3186         .field_bit_size = 12,
3187         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3189         },
3190         {
3191         .description = "mac0_l2_dst",
3192         .field_bit_size = 48,
3193         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3194         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3195         },
3196         {
3197         .description = "svif",
3198         .field_bit_size = 8,
3199         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3200         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3201                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3202         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3203         .spec_operand = {
3204                 (BNXT_ULP_CF_IDX_DRV_FUNC_SVIF >> 8) & 0xff,
3205                 BNXT_ULP_CF_IDX_DRV_FUNC_SVIF & 0xff,
3206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3207                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3208         },
3209         {
3210         .description = "sparif",
3211         .field_bit_size = 4,
3212         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3213         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3214         },
3215         {
3216         .description = "tl2_ivlan_vid",
3217         .field_bit_size = 12,
3218         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3219         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3220         },
3221         {
3222         .description = "tl2_ovlan_vid",
3223         .field_bit_size = 12,
3224         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3226         },
3227         {
3228         .description = "mac1_tl2_dst",
3229         .field_bit_size = 48,
3230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3232         },
3233         {
3234         .description = "l2_num_vtags",
3235         .field_bit_size = 2,
3236         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3237         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3238                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3239         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3240         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3241                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3242         },
3243         {
3244         .description = "tl2_num_vtags",
3245         .field_bit_size = 2,
3246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3248         },
3249         {
3250         .description = "tun_hdr_type",
3251         .field_bit_size = 4,
3252         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3253         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3254                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3256         .spec_operand = {
3257                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
3258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3260         },
3261         {
3262         .description = "key_type",
3263         .field_bit_size = 2,
3264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3266         },
3267         {
3268         .description = "valid",
3269         .field_bit_size = 1,
3270         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3271         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3272                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3274         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3276         },
3277         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
3278         {
3279         .description = "svif",
3280         .field_bit_size = 8,
3281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3283         .spec_operand = {
3284                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3285                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3288         },
3289         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
3290         {
3291         .description = "l2_ivlan_vid",
3292         .field_bit_size = 12,
3293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3295         },
3296         {
3297         .description = "l2_ovlan_vid",
3298         .field_bit_size = 12,
3299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3300         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3301         },
3302         {
3303         .description = "mac0_l2_dst",
3304         .field_bit_size = 48,
3305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3306         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3307         },
3308         {
3309         .description = "svif",
3310         .field_bit_size = 8,
3311         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3312         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3313                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3315         .spec_operand = {
3316                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3317                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3320         },
3321         {
3322         .description = "sparif",
3323         .field_bit_size = 4,
3324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3326         },
3327         {
3328         .description = "tl2_ivlan_vid",
3329         .field_bit_size = 12,
3330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3332         },
3333         {
3334         .description = "tl2_ovlan_vid",
3335         .field_bit_size = 12,
3336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3338         },
3339         {
3340         .description = "mac1_tl2_dst",
3341         .field_bit_size = 48,
3342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3344         },
3345         {
3346         .description = "l2_num_vtags",
3347         .field_bit_size = 2,
3348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3350         },
3351         {
3352         .description = "tl2_num_vtags",
3353         .field_bit_size = 2,
3354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3356         },
3357         {
3358         .description = "tun_hdr_type",
3359         .field_bit_size = 4,
3360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3362         },
3363         {
3364         .description = "key_type",
3365         .field_bit_size = 2,
3366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3368         },
3369         {
3370         .description = "valid",
3371         .field_bit_size = 1,
3372         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3373         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3374                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3376         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3377                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3378         },
3379         /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
3380         {
3381         .description = "l2_ivlan_vid",
3382         .field_bit_size = 12,
3383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3384         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3385         },
3386         {
3387         .description = "l2_ovlan_vid",
3388         .field_bit_size = 12,
3389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3391         },
3392         {
3393         .description = "mac0_l2_dst",
3394         .field_bit_size = 48,
3395         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3396         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3397         },
3398         {
3399         .description = "svif",
3400         .field_bit_size = 8,
3401         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3402         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3403                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3405         .spec_operand = {
3406                 (BNXT_ULP_CF_IDX_VF_FUNC_SVIF >> 8) & 0xff,
3407                 BNXT_ULP_CF_IDX_VF_FUNC_SVIF & 0xff,
3408                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3409                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3410         },
3411         {
3412         .description = "sparif",
3413         .field_bit_size = 4,
3414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3415         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3416         },
3417         {
3418         .description = "tl2_ivlan_vid",
3419         .field_bit_size = 12,
3420         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3421         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3422         },
3423         {
3424         .description = "tl2_ovlan_vid",
3425         .field_bit_size = 12,
3426         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3428         },
3429         {
3430         .description = "mac1_tl2_dst",
3431         .field_bit_size = 48,
3432         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3433         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3434         },
3435         {
3436         .description = "l2_num_vtags",
3437         .field_bit_size = 2,
3438         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3439         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3440         },
3441         {
3442         .description = "tl2_num_vtags",
3443         .field_bit_size = 2,
3444         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3446         },
3447         {
3448         .description = "tun_hdr_type",
3449         .field_bit_size = 4,
3450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3452         },
3453         {
3454         .description = "key_type",
3455         .field_bit_size = 2,
3456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3458         },
3459         {
3460         .description = "valid",
3461         .field_bit_size = 1,
3462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3463         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3464                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3465         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3466         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3468         },
3469         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
3470         {
3471         .description = "l2_ivlan_vid",
3472         .field_bit_size = 12,
3473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3474         .mask_operand = {
3475                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3476                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3479         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3480         .spec_operand = {
3481                 (BNXT_ULP_HF6_IDX_OO_VLAN_VID >> 8) & 0xff,
3482                 BNXT_ULP_HF6_IDX_OO_VLAN_VID & 0xff,
3483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3485         },
3486         {
3487         .description = "l2_ovlan_vid",
3488         .field_bit_size = 12,
3489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3491         },
3492         {
3493         .description = "mac0_l2_addr",
3494         .field_bit_size = 48,
3495         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3496         .mask_operand = {
3497                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3498                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3499                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3502         .spec_operand = {
3503                 (BNXT_ULP_HF6_IDX_O_ETH_DMAC >> 8) & 0xff,
3504                 BNXT_ULP_HF6_IDX_O_ETH_DMAC & 0xff,
3505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3507         },
3508         {
3509         .description = "svif",
3510         .field_bit_size = 8,
3511         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3512         .mask_operand = {
3513                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3514                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3516                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
3517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3518         .spec_operand = {
3519                 (BNXT_ULP_HF6_IDX_SVIF_INDEX >> 8) & 0xff,
3520                 BNXT_ULP_HF6_IDX_SVIF_INDEX & 0xff,
3521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3523         },
3524         {
3525         .description = "sparif",
3526         .field_bit_size = 4,
3527         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3529         },
3530         {
3531         .description = "tl2_ivlan_vid",
3532         .field_bit_size = 12,
3533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3534         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3535         },
3536         {
3537         .description = "tl2_ovlan_vid",
3538         .field_bit_size = 12,
3539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3541         },
3542         {
3543         .description = "mac1_tl2_addr",
3544         .field_bit_size = 48,
3545         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3546         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3547         },
3548         {
3549         .description = "l2_num_vtags",
3550         .field_bit_size = 2,
3551         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3552         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3553                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
3555         .spec_operand = {
3556                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
3557                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
3558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3559                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3560         },
3561         {
3562         .description = "tl2_num_vtags",
3563         .field_bit_size = 2,
3564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3565         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3566         },
3567         {
3568         .description = "tun_hdr_type",
3569         .field_bit_size = 4,
3570         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3571         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3572         },
3573         {
3574         .description = "key_type",
3575         .field_bit_size = 2,
3576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3577         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3578                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3580         },
3581         {
3582         .description = "valid",
3583         .field_bit_size = 1,
3584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3585         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3586                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3587         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3588         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3589                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3590         },
3591         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
3592         {
3593         .description = "recycle",
3594         .field_bit_size = 1,
3595         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3596         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3597         },
3598         {
3599         .description = "prof_func_id",
3600         .field_bit_size = 7,
3601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3603         .spec_operand = {
3604                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3605                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3608         },
3609         {
3610         .description = "class_tid",
3611         .field_bit_size = 8,
3612         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
3614         .spec_operand = {
3615                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
3616                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
3617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3619         },
3620         /* class_tid: 6, wh_plus, table: profile_tcam_0 */
3621         {
3622         .description = "l4_hdr_is_udp_tcp",
3623         .field_bit_size = 1,
3624         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3625         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3626         },
3627         {
3628         .description = "l4_hdr_type",
3629         .field_bit_size = 4,
3630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3632         },
3633         {
3634         .description = "l4_hdr_error",
3635         .field_bit_size = 1,
3636         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3637         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3638         },
3639         {
3640         .description = "l4_hdr_valid",
3641         .field_bit_size = 1,
3642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3644         },
3645         {
3646         .description = "l3_ipv6_cmp_dst",
3647         .field_bit_size = 1,
3648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3650         },
3651         {
3652         .description = "l3_ipv6_cmp_src",
3653         .field_bit_size = 1,
3654         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3656         },
3657         {
3658         .description = "l3_hdr_isIP",
3659         .field_bit_size = 1,
3660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3662         },
3663         {
3664         .description = "l3_hdr_type",
3665         .field_bit_size = 4,
3666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3667         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3668                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3670         },
3671         {
3672         .description = "l3_hdr_error",
3673         .field_bit_size = 1,
3674         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3675         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3676                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3678         },
3679         {
3680         .description = "l3_hdr_valid",
3681         .field_bit_size = 1,
3682         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3683         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3684                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3686         .spec_operand = {
3687                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
3688                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3689                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3690         },
3691         {
3692         .description = "l2_two_vtags",
3693         .field_bit_size = 1,
3694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3696         },
3697         {
3698         .description = "l2_vtag_present",
3699         .field_bit_size = 1,
3700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3702         },
3703         {
3704         .description = "l2_uc_mc_bc",
3705         .field_bit_size = 2,
3706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3707         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3708                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3710         },
3711         {
3712         .description = "l2_hdr_type",
3713         .field_bit_size = 2,
3714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3715         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3716                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3718         },
3719         {
3720         .description = "l2_hdr_error",
3721         .field_bit_size = 1,
3722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3723         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3724                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3725         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3726         },
3727         {
3728         .description = "l2_hdr_valid",
3729         .field_bit_size = 1,
3730         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3731         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3732                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3734         .spec_operand = {
3735                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
3736                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3737                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3738         },
3739         {
3740         .description = "tun_hdr_flags",
3741         .field_bit_size = 3,
3742         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3744         },
3745         {
3746         .description = "tun_hdr_type",
3747         .field_bit_size = 4,
3748         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3749         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3750         },
3751         {
3752         .description = "tun_hdr_error",
3753         .field_bit_size = 1,
3754         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3755         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3756         },
3757         {
3758         .description = "tun_hdr_valid",
3759         .field_bit_size = 1,
3760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3761         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3762                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3764         },
3765         {
3766         .description = "tl4_hdr_is_udp_tcp",
3767         .field_bit_size = 1,
3768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3769         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3770         },
3771         {
3772         .description = "tl4_hdr_type",
3773         .field_bit_size = 4,
3774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3776         },
3777         {
3778         .description = "tl4_hdr_error",
3779         .field_bit_size = 1,
3780         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3781         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3782         },
3783         {
3784         .description = "tl4_hdr_valid",
3785         .field_bit_size = 1,
3786         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3787         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3788                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3790         },
3791         {
3792         .description = "tl3_ipv6_cmp_dst",
3793         .field_bit_size = 1,
3794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3795         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3796         },
3797         {
3798         .description = "tl3_ipv6_cmp_src",
3799         .field_bit_size = 1,
3800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3802         },
3803         {
3804         .description = "tl3_hdr_isIP",
3805         .field_bit_size = 1,
3806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3808         },
3809         {
3810         .description = "tl3_hdr_type",
3811         .field_bit_size = 4,
3812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3814         },
3815         {
3816         .description = "tl3_hdr_error",
3817         .field_bit_size = 1,
3818         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3820         },
3821         {
3822         .description = "tl3_hdr_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_ZERO
3828         },
3829         {
3830         .description = "tl2_two_vtags",
3831         .field_bit_size = 1,
3832         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3834         },
3835         {
3836         .description = "tl2_vtag_present",
3837         .field_bit_size = 1,
3838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3840         },
3841         {
3842         .description = "tl2_uc_mc_bc",
3843         .field_bit_size = 2,
3844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3846         },
3847         {
3848         .description = "tl2_hdr_type",
3849         .field_bit_size = 2,
3850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3851         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3852         },
3853         {
3854         .description = "tl2_hdr_valid",
3855         .field_bit_size = 1,
3856         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3857         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3858                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3860         },
3861         {
3862         .description = "hrec_next",
3863         .field_bit_size = 1,
3864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3866         },
3867         {
3868         .description = "reserved",
3869         .field_bit_size = 9,
3870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3872         },
3873         {
3874         .description = "prof_func_id",
3875         .field_bit_size = 7,
3876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
3880         .spec_operand = {
3881                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
3882                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
3883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3885         },
3886         {
3887         .description = "agg_error",
3888         .field_bit_size = 1,
3889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3891         },
3892         {
3893         .description = "recycle_cnt",
3894         .field_bit_size = 2,
3895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3896         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3897                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3899         },
3900         {
3901         .description = "pkt_type_0",
3902         .field_bit_size = 2,
3903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3904         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3905         },
3906         {
3907         .description = "pkt_type_1",
3908         .field_bit_size = 2,
3909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3910         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3911                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3912         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3913         },
3914         {
3915         .description = "valid",
3916         .field_bit_size = 1,
3917         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3918         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
3919                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
3920         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
3921         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
3922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3923         },
3924         /* class_tid: 6, wh_plus, table: ext_em_0 */
3925         {
3926         .description = "spare",
3927         .field_bit_size = 251,
3928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3930         },
3931         {
3932         .description = "local_cos",
3933         .field_bit_size = 3,
3934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3936         },
3937         {
3938         .description = "l4_dst_port",
3939         .field_bit_size = 16,
3940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3942         },
3943         {
3944         .description = "l4_src_port",
3945         .field_bit_size = 16,
3946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3947         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3948         },
3949         {
3950         .description = "ip_proto",
3951         .field_bit_size = 8,
3952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3954         },
3955         {
3956         .description = "ipv4_dst_addr",
3957         .field_bit_size = 32,
3958         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3960         },
3961         {
3962         .description = "ipv4_src_addr",
3963         .field_bit_size = 32,
3964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3966         },
3967         {
3968         .description = "l2_src_mac",
3969         .field_bit_size = 48,
3970         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3971         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
3972         .spec_operand = {
3973                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
3974                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
3975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3977         },
3978         {
3979         .description = "tun_id",
3980         .field_bit_size = 24,
3981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
3983         },
3984         {
3985         .description = "l2_cntxt_id",
3986         .field_bit_size = 10,
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_L2_CNTXT_ID_0 >> 8) & 0xff,
3991                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
3992                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
3993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
3994         },
3995         {
3996         .description = "em_profile_id",
3997         .field_bit_size = 8,
3998         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
3999         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4000         .spec_operand = {
4001                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4002                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4003                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4005         },
4006         /* class_tid: 6, wh_plus, table: int_em_0 */
4007         {
4008         .description = "spare",
4009         .field_bit_size = 3,
4010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4012         },
4013         {
4014         .description = "local_cos",
4015         .field_bit_size = 3,
4016         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4017         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4018         },
4019         {
4020         .description = "l4_dst_port",
4021         .field_bit_size = 16,
4022         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4023         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4024         },
4025         {
4026         .description = "l4_src_port",
4027         .field_bit_size = 16,
4028         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4029         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4030         },
4031         {
4032         .description = "ip_proto",
4033         .field_bit_size = 8,
4034         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4035         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4036         },
4037         {
4038         .description = "ipv4_dst_addr",
4039         .field_bit_size = 32,
4040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4042         },
4043         {
4044         .description = "ipv4_src_addr",
4045         .field_bit_size = 32,
4046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4048         },
4049         {
4050         .description = "l2_src_mac",
4051         .field_bit_size = 48,
4052         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4053         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4054         .spec_operand = {
4055                 (BNXT_ULP_HF6_IDX_O_ETH_SMAC >> 8) & 0xff,
4056                 BNXT_ULP_HF6_IDX_O_ETH_SMAC & 0xff,
4057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4059         },
4060         {
4061         .description = "tun_id",
4062         .field_bit_size = 24,
4063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4064         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4065         },
4066         {
4067         .description = "l2_cntxt_id",
4068         .field_bit_size = 10,
4069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4070         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4071         .spec_operand = {
4072                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4073                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4076         },
4077         {
4078         .description = "em_profile_id",
4079         .field_bit_size = 8,
4080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4082         .spec_operand = {
4083                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4084                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4087         },
4088         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
4089         {
4090         .description = "l2_ivlan_vid",
4091         .field_bit_size = 12,
4092         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4093         .mask_operand = {
4094                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4095                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4098         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4099         .spec_operand = {
4100                 (BNXT_ULP_HF7_IDX_OO_VLAN_VID >> 8) & 0xff,
4101                 BNXT_ULP_HF7_IDX_OO_VLAN_VID & 0xff,
4102                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4103                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4104         },
4105         {
4106         .description = "l2_ovlan_vid",
4107         .field_bit_size = 12,
4108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4110         },
4111         {
4112         .description = "mac0_l2_addr",
4113         .field_bit_size = 48,
4114         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4115         .mask_operand = {
4116                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4117                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4119                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4120         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4121         .spec_operand = {
4122                 (BNXT_ULP_HF7_IDX_O_ETH_DMAC >> 8) & 0xff,
4123                 BNXT_ULP_HF7_IDX_O_ETH_DMAC & 0xff,
4124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4126         },
4127         {
4128         .description = "svif",
4129         .field_bit_size = 8,
4130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4131         .mask_operand = {
4132                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4133                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4136         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4137         .spec_operand = {
4138                 (BNXT_ULP_HF7_IDX_SVIF_INDEX >> 8) & 0xff,
4139                 BNXT_ULP_HF7_IDX_SVIF_INDEX & 0xff,
4140                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4141                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4142         },
4143         {
4144         .description = "sparif",
4145         .field_bit_size = 4,
4146         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4147         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4148         },
4149         {
4150         .description = "tl2_ivlan_vid",
4151         .field_bit_size = 12,
4152         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4153         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4154         },
4155         {
4156         .description = "tl2_ovlan_vid",
4157         .field_bit_size = 12,
4158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4160         },
4161         {
4162         .description = "mac1_tl2_addr",
4163         .field_bit_size = 48,
4164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4166         },
4167         {
4168         .description = "l2_num_vtags",
4169         .field_bit_size = 2,
4170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4171         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4172                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4173         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
4174         .spec_operand = {
4175                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
4176                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
4177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4179         },
4180         {
4181         .description = "tl2_num_vtags",
4182         .field_bit_size = 2,
4183         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4184         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4185         },
4186         {
4187         .description = "tun_hdr_type",
4188         .field_bit_size = 4,
4189         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4190         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4191         },
4192         {
4193         .description = "key_type",
4194         .field_bit_size = 2,
4195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4196         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4197                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4198         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4199         },
4200         {
4201         .description = "valid",
4202         .field_bit_size = 1,
4203         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4204         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4205                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4206         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4207         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4208                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4209         },
4210         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
4211         {
4212         .description = "recycle",
4213         .field_bit_size = 1,
4214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4216         },
4217         {
4218         .description = "prof_func_id",
4219         .field_bit_size = 7,
4220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4222         .spec_operand = {
4223                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4224                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4227         },
4228         {
4229         .description = "class_tid",
4230         .field_bit_size = 8,
4231         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4233         .spec_operand = {
4234                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4235                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4238         },
4239         /* class_tid: 7, wh_plus, table: profile_tcam_0 */
4240         {
4241         .description = "l4_hdr_is_udp_tcp",
4242         .field_bit_size = 1,
4243         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4245         },
4246         {
4247         .description = "l4_hdr_type",
4248         .field_bit_size = 4,
4249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4251         },
4252         {
4253         .description = "l4_hdr_error",
4254         .field_bit_size = 1,
4255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4257         },
4258         {
4259         .description = "l4_hdr_valid",
4260         .field_bit_size = 1,
4261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4263         },
4264         {
4265         .description = "l3_ipv6_cmp_dst",
4266         .field_bit_size = 1,
4267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4269         },
4270         {
4271         .description = "l3_ipv6_cmp_src",
4272         .field_bit_size = 1,
4273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4274         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4275         },
4276         {
4277         .description = "l3_hdr_isIP",
4278         .field_bit_size = 1,
4279         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4280         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4281         },
4282         {
4283         .description = "l3_hdr_type",
4284         .field_bit_size = 4,
4285         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4286         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4287                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4289         .spec_operand = {
4290                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
4291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4293         },
4294         {
4295         .description = "l3_hdr_error",
4296         .field_bit_size = 1,
4297         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4298         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4299                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4300         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4301         },
4302         {
4303         .description = "l3_hdr_valid",
4304         .field_bit_size = 1,
4305         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4306         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4307                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4309         .spec_operand = {
4310                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4311                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4312                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4313         },
4314         {
4315         .description = "l2_two_vtags",
4316         .field_bit_size = 1,
4317         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4318         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4319         },
4320         {
4321         .description = "l2_vtag_present",
4322         .field_bit_size = 1,
4323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4325         },
4326         {
4327         .description = "l2_uc_mc_bc",
4328         .field_bit_size = 2,
4329         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4330         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4331                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4333         },
4334         {
4335         .description = "l2_hdr_type",
4336         .field_bit_size = 2,
4337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4338         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4339                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4341         },
4342         {
4343         .description = "l2_hdr_error",
4344         .field_bit_size = 1,
4345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4346         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4347                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4348         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4349         },
4350         {
4351         .description = "l2_hdr_valid",
4352         .field_bit_size = 1,
4353         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4354         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4355                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4356         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4357         .spec_operand = {
4358                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4359                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4360                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4361         },
4362         {
4363         .description = "tun_hdr_flags",
4364         .field_bit_size = 3,
4365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4367         },
4368         {
4369         .description = "tun_hdr_type",
4370         .field_bit_size = 4,
4371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4373         },
4374         {
4375         .description = "tun_hdr_error",
4376         .field_bit_size = 1,
4377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4379         },
4380         {
4381         .description = "tun_hdr_valid",
4382         .field_bit_size = 1,
4383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4384         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4385                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4387         },
4388         {
4389         .description = "tl4_hdr_is_udp_tcp",
4390         .field_bit_size = 1,
4391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4392         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4393         },
4394         {
4395         .description = "tl4_hdr_type",
4396         .field_bit_size = 4,
4397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4399         },
4400         {
4401         .description = "tl4_hdr_error",
4402         .field_bit_size = 1,
4403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4405         },
4406         {
4407         .description = "tl4_hdr_valid",
4408         .field_bit_size = 1,
4409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4410         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4411                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4413         },
4414         {
4415         .description = "tl3_ipv6_cmp_dst",
4416         .field_bit_size = 1,
4417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4419         },
4420         {
4421         .description = "tl3_ipv6_cmp_src",
4422         .field_bit_size = 1,
4423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4424         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4425         },
4426         {
4427         .description = "tl3_hdr_isIP",
4428         .field_bit_size = 1,
4429         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4430         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4431         },
4432         {
4433         .description = "tl3_hdr_type",
4434         .field_bit_size = 4,
4435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4437         },
4438         {
4439         .description = "tl3_hdr_error",
4440         .field_bit_size = 1,
4441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4443         },
4444         {
4445         .description = "tl3_hdr_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_ZERO
4451         },
4452         {
4453         .description = "tl2_two_vtags",
4454         .field_bit_size = 1,
4455         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4456         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4457         },
4458         {
4459         .description = "tl2_vtag_present",
4460         .field_bit_size = 1,
4461         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4462         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4463         },
4464         {
4465         .description = "tl2_uc_mc_bc",
4466         .field_bit_size = 2,
4467         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4468         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4469         },
4470         {
4471         .description = "tl2_hdr_type",
4472         .field_bit_size = 2,
4473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4475         },
4476         {
4477         .description = "tl2_hdr_valid",
4478         .field_bit_size = 1,
4479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4480         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4481                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4483         },
4484         {
4485         .description = "hrec_next",
4486         .field_bit_size = 1,
4487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4489         },
4490         {
4491         .description = "reserved",
4492         .field_bit_size = 9,
4493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4495         },
4496         {
4497         .description = "prof_func_id",
4498         .field_bit_size = 7,
4499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4500         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4501                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4503         .spec_operand = {
4504                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
4505                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
4506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4507                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4508         },
4509         {
4510         .description = "agg_error",
4511         .field_bit_size = 1,
4512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4514         },
4515         {
4516         .description = "recycle_cnt",
4517         .field_bit_size = 2,
4518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4519         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4520                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4521         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4522         },
4523         {
4524         .description = "pkt_type_0",
4525         .field_bit_size = 2,
4526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4528         },
4529         {
4530         .description = "pkt_type_1",
4531         .field_bit_size = 2,
4532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4533         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4534                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4535         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4536         },
4537         {
4538         .description = "valid",
4539         .field_bit_size = 1,
4540         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4541         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4542                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4543         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4544         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4546         },
4547         /* class_tid: 7, wh_plus, table: ext_em_0 */
4548         {
4549         .description = "spare",
4550         .field_bit_size = 251,
4551         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4552         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4553         },
4554         {
4555         .description = "local_cos",
4556         .field_bit_size = 3,
4557         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4559         },
4560         {
4561         .description = "l4_dst_port",
4562         .field_bit_size = 16,
4563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4564         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4565         },
4566         {
4567         .description = "l4_src_port",
4568         .field_bit_size = 16,
4569         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4570         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4571         },
4572         {
4573         .description = "ip_proto",
4574         .field_bit_size = 8,
4575         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4576         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4577         },
4578         {
4579         .description = "ipv4_dst_addr",
4580         .field_bit_size = 32,
4581         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4583         },
4584         {
4585         .description = "ipv4_src_addr",
4586         .field_bit_size = 32,
4587         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4588         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4589         },
4590         {
4591         .description = "l2_src_mac",
4592         .field_bit_size = 48,
4593         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4595         .spec_operand = {
4596                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4597                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4598                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4600         },
4601         {
4602         .description = "tun_id",
4603         .field_bit_size = 24,
4604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4606         },
4607         {
4608         .description = "l2_cntxt_id",
4609         .field_bit_size = 10,
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_L2_CNTXT_ID_0 >> 8) & 0xff,
4614                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4617         },
4618         {
4619         .description = "em_profile_id",
4620         .field_bit_size = 8,
4621         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4623         .spec_operand = {
4624                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4625                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4628         },
4629         /* class_tid: 7, wh_plus, table: int_em_0 */
4630         {
4631         .description = "spare",
4632         .field_bit_size = 3,
4633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4635         },
4636         {
4637         .description = "local_cos",
4638         .field_bit_size = 3,
4639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4641         },
4642         {
4643         .description = "l4_dst_port",
4644         .field_bit_size = 16,
4645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4647         },
4648         {
4649         .description = "l4_src_port",
4650         .field_bit_size = 16,
4651         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4653         },
4654         {
4655         .description = "ip_proto",
4656         .field_bit_size = 8,
4657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4659         },
4660         {
4661         .description = "ipv4_dst_addr",
4662         .field_bit_size = 32,
4663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4665         },
4666         {
4667         .description = "ipv4_src_addr",
4668         .field_bit_size = 32,
4669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4671         },
4672         {
4673         .description = "l2_src_mac",
4674         .field_bit_size = 48,
4675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4676         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4677         .spec_operand = {
4678                 (BNXT_ULP_HF7_IDX_O_ETH_SMAC >> 8) & 0xff,
4679                 BNXT_ULP_HF7_IDX_O_ETH_SMAC & 0xff,
4680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4681                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4682         },
4683         {
4684         .description = "tun_id",
4685         .field_bit_size = 24,
4686         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4687         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4688         },
4689         {
4690         .description = "l2_cntxt_id",
4691         .field_bit_size = 10,
4692         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4694         .spec_operand = {
4695                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
4696                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
4697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4698                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4699         },
4700         {
4701         .description = "em_profile_id",
4702         .field_bit_size = 8,
4703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4705         .spec_operand = {
4706                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
4707                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
4708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4710         },
4711         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
4712         {
4713         .description = "svif",
4714         .field_bit_size = 8,
4715         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4716         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4717         .spec_operand = {
4718                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4719                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4720                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4721                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4722         },
4723         /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
4724         {
4725         .description = "l2_ivlan_vid",
4726         .field_bit_size = 12,
4727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4729         },
4730         {
4731         .description = "l2_ovlan_vid",
4732         .field_bit_size = 12,
4733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4735         },
4736         {
4737         .description = "mac0_l2_dst",
4738         .field_bit_size = 48,
4739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4741         },
4742         {
4743         .description = "svif",
4744         .field_bit_size = 8,
4745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4746         .mask_operand = {
4747                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4748                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4750                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
4751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
4752         .spec_operand = {
4753                 (BNXT_ULP_HF8_IDX_SVIF_INDEX >> 8) & 0xff,
4754                 BNXT_ULP_HF8_IDX_SVIF_INDEX & 0xff,
4755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4757         },
4758         {
4759         .description = "sparif",
4760         .field_bit_size = 4,
4761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4763         },
4764         {
4765         .description = "tl2_ivlan_vid",
4766         .field_bit_size = 12,
4767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4768         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4769         },
4770         {
4771         .description = "tl2_ovlan_vid",
4772         .field_bit_size = 12,
4773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4775         },
4776         {
4777         .description = "mac1_tl2_dst",
4778         .field_bit_size = 48,
4779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4781         },
4782         {
4783         .description = "l2_num_vtags",
4784         .field_bit_size = 2,
4785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4787         },
4788         {
4789         .description = "tl2_num_vtags",
4790         .field_bit_size = 2,
4791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4792         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4793         },
4794         {
4795         .description = "tun_hdr_type",
4796         .field_bit_size = 4,
4797         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4799         },
4800         {
4801         .description = "key_type",
4802         .field_bit_size = 2,
4803         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4804         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4805         },
4806         {
4807         .description = "valid",
4808         .field_bit_size = 1,
4809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4810         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4811                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4812         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4813         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
4814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4815         },
4816         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
4817         {
4818         .description = "recycle",
4819         .field_bit_size = 1,
4820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4822         },
4823         {
4824         .description = "prof_func_id",
4825         .field_bit_size = 7,
4826         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4827         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
4828         .spec_operand = {
4829                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
4830                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
4831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4833         },
4834         {
4835         .description = "class_tid",
4836         .field_bit_size = 8,
4837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
4839         .spec_operand = {
4840                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
4841                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
4842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4844         },
4845         /* class_tid: 8, wh_plus, table: profile_tcam_0 */
4846         {
4847         .description = "l4_hdr_is_udp_tcp",
4848         .field_bit_size = 1,
4849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4851         },
4852         {
4853         .description = "l4_hdr_type",
4854         .field_bit_size = 4,
4855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4856         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4857                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4859         .spec_operand = {
4860                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
4861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4863         },
4864         {
4865         .description = "l4_hdr_error",
4866         .field_bit_size = 1,
4867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4868         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4869                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4871         },
4872         {
4873         .description = "l4_hdr_valid",
4874         .field_bit_size = 1,
4875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4876         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4877                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4879         .spec_operand = {
4880                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
4881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4883         },
4884         {
4885         .description = "l3_ipv6_cmp_dst",
4886         .field_bit_size = 1,
4887         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4888         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4889         },
4890         {
4891         .description = "l3_ipv6_cmp_src",
4892         .field_bit_size = 1,
4893         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4894         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4895         },
4896         {
4897         .description = "l3_hdr_isIP",
4898         .field_bit_size = 1,
4899         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4900         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4901         },
4902         {
4903         .description = "l3_hdr_type",
4904         .field_bit_size = 4,
4905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4906         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4907                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4909         },
4910         {
4911         .description = "l3_hdr_error",
4912         .field_bit_size = 1,
4913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4914         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4915                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4917         },
4918         {
4919         .description = "l3_hdr_valid",
4920         .field_bit_size = 1,
4921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4922         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4923                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4924         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4925         .spec_operand = {
4926                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
4927                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4928                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4929         },
4930         {
4931         .description = "l2_two_vtags",
4932         .field_bit_size = 1,
4933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4935         },
4936         {
4937         .description = "l2_vtag_present",
4938         .field_bit_size = 1,
4939         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4941         },
4942         {
4943         .description = "l2_uc_mc_bc",
4944         .field_bit_size = 2,
4945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4946         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4947                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4948         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4949         },
4950         {
4951         .description = "l2_hdr_type",
4952         .field_bit_size = 2,
4953         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4954         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4955                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4957         },
4958         {
4959         .description = "l2_hdr_error",
4960         .field_bit_size = 1,
4961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4962         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4963                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4964         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4965         },
4966         {
4967         .description = "l2_hdr_valid",
4968         .field_bit_size = 1,
4969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4970         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
4971                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
4972         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
4973         .spec_operand = {
4974                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
4975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
4976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
4977         },
4978         {
4979         .description = "tun_hdr_flags",
4980         .field_bit_size = 3,
4981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4983         },
4984         {
4985         .description = "tun_hdr_type",
4986         .field_bit_size = 4,
4987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4989         },
4990         {
4991         .description = "tun_hdr_error",
4992         .field_bit_size = 1,
4993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
4994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
4995         },
4996         {
4997         .description = "tun_hdr_valid",
4998         .field_bit_size = 1,
4999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5000         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5001                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5003         },
5004         {
5005         .description = "tl4_hdr_is_udp_tcp",
5006         .field_bit_size = 1,
5007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5009         },
5010         {
5011         .description = "tl4_hdr_type",
5012         .field_bit_size = 4,
5013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5015         },
5016         {
5017         .description = "tl4_hdr_error",
5018         .field_bit_size = 1,
5019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5021         },
5022         {
5023         .description = "tl4_hdr_valid",
5024         .field_bit_size = 1,
5025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5026         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5027                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5028         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5029         },
5030         {
5031         .description = "tl3_ipv6_cmp_dst",
5032         .field_bit_size = 1,
5033         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5034         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5035         },
5036         {
5037         .description = "tl3_ipv6_cmp_src",
5038         .field_bit_size = 1,
5039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5041         },
5042         {
5043         .description = "tl3_hdr_isIP",
5044         .field_bit_size = 1,
5045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5047         },
5048         {
5049         .description = "tl3_hdr_type",
5050         .field_bit_size = 4,
5051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5053         },
5054         {
5055         .description = "tl3_hdr_error",
5056         .field_bit_size = 1,
5057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5059         },
5060         {
5061         .description = "tl3_hdr_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_ZERO
5067         },
5068         {
5069         .description = "tl2_two_vtags",
5070         .field_bit_size = 1,
5071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5072         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5073         },
5074         {
5075         .description = "tl2_vtag_present",
5076         .field_bit_size = 1,
5077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5079         },
5080         {
5081         .description = "tl2_uc_mc_bc",
5082         .field_bit_size = 2,
5083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5085         },
5086         {
5087         .description = "tl2_hdr_type",
5088         .field_bit_size = 2,
5089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5090         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5091         },
5092         {
5093         .description = "tl2_hdr_valid",
5094         .field_bit_size = 1,
5095         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5096         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5097                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5098         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5099         },
5100         {
5101         .description = "hrec_next",
5102         .field_bit_size = 1,
5103         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5104         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5105         },
5106         {
5107         .description = "reserved",
5108         .field_bit_size = 9,
5109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5110         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5111         },
5112         {
5113         .description = "prof_func_id",
5114         .field_bit_size = 7,
5115         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5116         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5117                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5118         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5119         .spec_operand = {
5120                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5121                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5122                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5124         },
5125         {
5126         .description = "agg_error",
5127         .field_bit_size = 1,
5128         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5129         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5130         },
5131         {
5132         .description = "recycle_cnt",
5133         .field_bit_size = 2,
5134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5135         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5136                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5138         },
5139         {
5140         .description = "pkt_type_0",
5141         .field_bit_size = 2,
5142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5144         },
5145         {
5146         .description = "pkt_type_1",
5147         .field_bit_size = 2,
5148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5149         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5150                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5152         },
5153         {
5154         .description = "valid",
5155         .field_bit_size = 1,
5156         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5157         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5158                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5159         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5160         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5161                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5162         },
5163         /* class_tid: 8, wh_plus, table: ext_em_0 */
5164         {
5165         .description = "spare",
5166         .field_bit_size = 251,
5167         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5168         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5169         },
5170         {
5171         .description = "local_cos",
5172         .field_bit_size = 3,
5173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5174         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5175         },
5176         {
5177         .description = "l4_dst_port",
5178         .field_bit_size = 16,
5179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5180         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5181         .spec_operand = {
5182                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5183                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5184                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5186         },
5187         {
5188         .description = "l4_src_port",
5189         .field_bit_size = 16,
5190         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5191         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5192         .spec_operand = {
5193                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5194                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5197         },
5198         {
5199         .description = "ip_proto",
5200         .field_bit_size = 8,
5201         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5202         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5203         .spec_operand = {
5204                 BNXT_ULP_SYM_IP_PROTO_UDP,
5205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5206                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5207         },
5208         {
5209         .description = "ipv4_dst_addr",
5210         .field_bit_size = 32,
5211         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5212         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5213         .spec_operand = {
5214                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5215                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5216                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5217                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5218         },
5219         {
5220         .description = "ipv4_src_addr",
5221         .field_bit_size = 32,
5222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5223         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5224         .spec_operand = {
5225                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5226                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5229         },
5230         {
5231         .description = "l2_src_mac",
5232         .field_bit_size = 48,
5233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5235         },
5236         {
5237         .description = "tun_id",
5238         .field_bit_size = 24,
5239         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5241         },
5242         {
5243         .description = "l2_cntxt_id",
5244         .field_bit_size = 10,
5245         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5246         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5247         .spec_operand = {
5248                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5249                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5250                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5251                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5252         },
5253         {
5254         .description = "em_profile_id",
5255         .field_bit_size = 8,
5256         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5257         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5258         .spec_operand = {
5259                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5260                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5263         },
5264         /* class_tid: 8, wh_plus, table: int_em_0 */
5265         {
5266         .description = "spare",
5267         .field_bit_size = 3,
5268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5269         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5270         },
5271         {
5272         .description = "local_cos",
5273         .field_bit_size = 3,
5274         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5276         },
5277         {
5278         .description = "l4_dst_port",
5279         .field_bit_size = 16,
5280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5282         .spec_operand = {
5283                 (BNXT_ULP_HF8_IDX_O_UDP_DST_PORT >> 8) & 0xff,
5284                 BNXT_ULP_HF8_IDX_O_UDP_DST_PORT & 0xff,
5285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5287         },
5288         {
5289         .description = "l4_src_port",
5290         .field_bit_size = 16,
5291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5293         .spec_operand = {
5294                 (BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
5295                 BNXT_ULP_HF8_IDX_O_UDP_SRC_PORT & 0xff,
5296                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5298         },
5299         {
5300         .description = "ip_proto",
5301         .field_bit_size = 8,
5302         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5303         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5304         .spec_operand = {
5305                 BNXT_ULP_SYM_IP_PROTO_UDP,
5306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5308         },
5309         {
5310         .description = "ipv4_dst_addr",
5311         .field_bit_size = 32,
5312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5314         .spec_operand = {
5315                 (BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5316                 BNXT_ULP_HF8_IDX_O_IPV4_DST_ADDR & 0xff,
5317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5319         },
5320         {
5321         .description = "ipv4_src_addr",
5322         .field_bit_size = 32,
5323         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5324         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5325         .spec_operand = {
5326                 (BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5327                 BNXT_ULP_HF8_IDX_O_IPV4_SRC_ADDR & 0xff,
5328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5330         },
5331         {
5332         .description = "l2_src_mac",
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 = "tun_id",
5339         .field_bit_size = 24,
5340         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5342         },
5343         {
5344         .description = "l2_cntxt_id",
5345         .field_bit_size = 10,
5346         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5348         .spec_operand = {
5349                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5350                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5351                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5352                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5353         },
5354         {
5355         .description = "em_profile_id",
5356         .field_bit_size = 8,
5357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5359         .spec_operand = {
5360                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5361                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5363                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5364         },
5365         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
5366         {
5367         .description = "svif",
5368         .field_bit_size = 8,
5369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5370         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5371         .spec_operand = {
5372                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5373                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5375                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5376         },
5377         /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
5378         {
5379         .description = "l2_ivlan_vid",
5380         .field_bit_size = 12,
5381         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5382         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5383         },
5384         {
5385         .description = "l2_ovlan_vid",
5386         .field_bit_size = 12,
5387         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5389         },
5390         {
5391         .description = "mac0_l2_dst",
5392         .field_bit_size = 48,
5393         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5394         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5395         },
5396         {
5397         .description = "svif",
5398         .field_bit_size = 8,
5399         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5400         .mask_operand = {
5401                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5402                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5403                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5404                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
5405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5406         .spec_operand = {
5407                 (BNXT_ULP_HF9_IDX_SVIF_INDEX >> 8) & 0xff,
5408                 BNXT_ULP_HF9_IDX_SVIF_INDEX & 0xff,
5409                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5411         },
5412         {
5413         .description = "sparif",
5414         .field_bit_size = 4,
5415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5416         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5417         },
5418         {
5419         .description = "tl2_ivlan_vid",
5420         .field_bit_size = 12,
5421         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5422         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5423         },
5424         {
5425         .description = "tl2_ovlan_vid",
5426         .field_bit_size = 12,
5427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5429         },
5430         {
5431         .description = "mac1_tl2_dst",
5432         .field_bit_size = 48,
5433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5435         },
5436         {
5437         .description = "l2_num_vtags",
5438         .field_bit_size = 2,
5439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5441         },
5442         {
5443         .description = "tl2_num_vtags",
5444         .field_bit_size = 2,
5445         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5446         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5447         },
5448         {
5449         .description = "tun_hdr_type",
5450         .field_bit_size = 4,
5451         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5452         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5453         },
5454         {
5455         .description = "key_type",
5456         .field_bit_size = 2,
5457         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5458         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5459         },
5460         {
5461         .description = "valid",
5462         .field_bit_size = 1,
5463         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5464         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5465                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5466         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5467         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5468                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5469         },
5470         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
5471         {
5472         .description = "recycle",
5473         .field_bit_size = 1,
5474         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5475         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5476         },
5477         {
5478         .description = "prof_func_id",
5479         .field_bit_size = 7,
5480         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5481         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5482         .spec_operand = {
5483                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5484                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5487         },
5488         {
5489         .description = "class_tid",
5490         .field_bit_size = 8,
5491         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5492         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5493         .spec_operand = {
5494                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
5495                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
5496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5497                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5498         },
5499         /* class_tid: 9, wh_plus, table: profile_tcam_0 */
5500         {
5501         .description = "l4_hdr_is_udp_tcp",
5502         .field_bit_size = 1,
5503         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5505         },
5506         {
5507         .description = "l4_hdr_type",
5508         .field_bit_size = 4,
5509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5510         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5511                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5513         },
5514         {
5515         .description = "l4_hdr_error",
5516         .field_bit_size = 1,
5517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5518         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5519                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5521         },
5522         {
5523         .description = "l4_hdr_valid",
5524         .field_bit_size = 1,
5525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5526         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5527                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5529         .spec_operand = {
5530                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
5531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5533         },
5534         {
5535         .description = "l3_ipv6_cmp_dst",
5536         .field_bit_size = 1,
5537         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5538         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5539         },
5540         {
5541         .description = "l3_ipv6_cmp_src",
5542         .field_bit_size = 1,
5543         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5545         },
5546         {
5547         .description = "l3_hdr_isIP",
5548         .field_bit_size = 1,
5549         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5551         },
5552         {
5553         .description = "l3_hdr_type",
5554         .field_bit_size = 4,
5555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5556         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5557                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5558         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5559         },
5560         {
5561         .description = "l3_hdr_error",
5562         .field_bit_size = 1,
5563         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5564         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5565                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5566         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5567         },
5568         {
5569         .description = "l3_hdr_valid",
5570         .field_bit_size = 1,
5571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5572         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5573                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5575         .spec_operand = {
5576                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
5577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5579         },
5580         {
5581         .description = "l2_two_vtags",
5582         .field_bit_size = 1,
5583         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5584         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5585         },
5586         {
5587         .description = "l2_vtag_present",
5588         .field_bit_size = 1,
5589         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5590         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5591         },
5592         {
5593         .description = "l2_uc_mc_bc",
5594         .field_bit_size = 2,
5595         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5596         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5597                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5598         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5599         },
5600         {
5601         .description = "l2_hdr_type",
5602         .field_bit_size = 2,
5603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5604         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5605                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5606         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5607         },
5608         {
5609         .description = "l2_hdr_error",
5610         .field_bit_size = 1,
5611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5612         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5613                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5614         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5615         },
5616         {
5617         .description = "l2_hdr_valid",
5618         .field_bit_size = 1,
5619         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5620         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5621                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5622         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5623         .spec_operand = {
5624                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
5625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5627         },
5628         {
5629         .description = "tun_hdr_flags",
5630         .field_bit_size = 3,
5631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5633         },
5634         {
5635         .description = "tun_hdr_type",
5636         .field_bit_size = 4,
5637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5639         },
5640         {
5641         .description = "tun_hdr_error",
5642         .field_bit_size = 1,
5643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5644         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5645         },
5646         {
5647         .description = "tun_hdr_valid",
5648         .field_bit_size = 1,
5649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5650         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5651                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5653         },
5654         {
5655         .description = "tl4_hdr_is_udp_tcp",
5656         .field_bit_size = 1,
5657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5659         },
5660         {
5661         .description = "tl4_hdr_type",
5662         .field_bit_size = 4,
5663         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5664         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5665         },
5666         {
5667         .description = "tl4_hdr_error",
5668         .field_bit_size = 1,
5669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5670         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5671         },
5672         {
5673         .description = "tl4_hdr_valid",
5674         .field_bit_size = 1,
5675         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5676         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5677                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5679         },
5680         {
5681         .description = "tl3_ipv6_cmp_dst",
5682         .field_bit_size = 1,
5683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5685         },
5686         {
5687         .description = "tl3_ipv6_cmp_src",
5688         .field_bit_size = 1,
5689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5691         },
5692         {
5693         .description = "tl3_hdr_isIP",
5694         .field_bit_size = 1,
5695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5697         },
5698         {
5699         .description = "tl3_hdr_type",
5700         .field_bit_size = 4,
5701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5703         },
5704         {
5705         .description = "tl3_hdr_error",
5706         .field_bit_size = 1,
5707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5708         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5709         },
5710         {
5711         .description = "tl3_hdr_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_ZERO
5717         },
5718         {
5719         .description = "tl2_two_vtags",
5720         .field_bit_size = 1,
5721         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5722         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5723         },
5724         {
5725         .description = "tl2_vtag_present",
5726         .field_bit_size = 1,
5727         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5728         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5729         },
5730         {
5731         .description = "tl2_uc_mc_bc",
5732         .field_bit_size = 2,
5733         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5734         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5735         },
5736         {
5737         .description = "tl2_hdr_type",
5738         .field_bit_size = 2,
5739         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5741         },
5742         {
5743         .description = "tl2_hdr_valid",
5744         .field_bit_size = 1,
5745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5746         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5747                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5749         },
5750         {
5751         .description = "hrec_next",
5752         .field_bit_size = 1,
5753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5755         },
5756         {
5757         .description = "reserved",
5758         .field_bit_size = 9,
5759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5761         },
5762         {
5763         .description = "prof_func_id",
5764         .field_bit_size = 7,
5765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5766         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5767                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5768         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
5769         .spec_operand = {
5770                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
5771                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
5772                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5774         },
5775         {
5776         .description = "agg_error",
5777         .field_bit_size = 1,
5778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5779         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5780         },
5781         {
5782         .description = "recycle_cnt",
5783         .field_bit_size = 2,
5784         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5785         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5786                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5787         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5788         },
5789         {
5790         .description = "pkt_type_0",
5791         .field_bit_size = 2,
5792         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5793         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5794         },
5795         {
5796         .description = "pkt_type_1",
5797         .field_bit_size = 2,
5798         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5799         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5800                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5802         },
5803         {
5804         .description = "valid",
5805         .field_bit_size = 1,
5806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5807         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
5808                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
5809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5810         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
5811                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5812         },
5813         /* class_tid: 9, wh_plus, table: ext_em_0 */
5814         {
5815         .description = "spare",
5816         .field_bit_size = 251,
5817         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5818         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5819         },
5820         {
5821         .description = "local_cos",
5822         .field_bit_size = 3,
5823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5825         },
5826         {
5827         .description = "l4_dst_port",
5828         .field_bit_size = 16,
5829         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5830         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5831         .spec_operand = {
5832                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5833                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5835                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5836         },
5837         {
5838         .description = "l4_src_port",
5839         .field_bit_size = 16,
5840         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5842         .spec_operand = {
5843                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5844                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5845                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5846                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5847         },
5848         {
5849         .description = "ip_proto",
5850         .field_bit_size = 8,
5851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5853         .spec_operand = {
5854                 BNXT_ULP_SYM_IP_PROTO_TCP,
5855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5856                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5857         },
5858         {
5859         .description = "ipv4_dst_addr",
5860         .field_bit_size = 32,
5861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5863         .spec_operand = {
5864                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5865                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5867                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5868         },
5869         {
5870         .description = "ipv4_src_addr",
5871         .field_bit_size = 32,
5872         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5873         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5874         .spec_operand = {
5875                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5876                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5879         },
5880         {
5881         .description = "l2_src_mac",
5882         .field_bit_size = 48,
5883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5885         },
5886         {
5887         .description = "tun_id",
5888         .field_bit_size = 24,
5889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5891         },
5892         {
5893         .description = "l2_cntxt_id",
5894         .field_bit_size = 10,
5895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5897         .spec_operand = {
5898                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
5899                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
5900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5902         },
5903         {
5904         .description = "em_profile_id",
5905         .field_bit_size = 8,
5906         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5907         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5908         .spec_operand = {
5909                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
5910                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
5911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5913         },
5914         /* class_tid: 9, wh_plus, table: int_em_0 */
5915         {
5916         .description = "spare",
5917         .field_bit_size = 3,
5918         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5919         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5920         },
5921         {
5922         .description = "local_cos",
5923         .field_bit_size = 3,
5924         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5926         },
5927         {
5928         .description = "l4_dst_port",
5929         .field_bit_size = 16,
5930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5932         .spec_operand = {
5933                 (BNXT_ULP_HF9_IDX_O_TCP_DST_PORT >> 8) & 0xff,
5934                 BNXT_ULP_HF9_IDX_O_TCP_DST_PORT & 0xff,
5935                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5937         },
5938         {
5939         .description = "l4_src_port",
5940         .field_bit_size = 16,
5941         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5942         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5943         .spec_operand = {
5944                 (BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
5945                 BNXT_ULP_HF9_IDX_O_TCP_SRC_PORT & 0xff,
5946                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5947                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5948         },
5949         {
5950         .description = "ip_proto",
5951         .field_bit_size = 8,
5952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
5954         .spec_operand = {
5955                 BNXT_ULP_SYM_IP_PROTO_TCP,
5956                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5957                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5958         },
5959         {
5960         .description = "ipv4_dst_addr",
5961         .field_bit_size = 32,
5962         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5963         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5964         .spec_operand = {
5965                 (BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
5966                 BNXT_ULP_HF9_IDX_O_IPV4_DST_ADDR & 0xff,
5967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5968                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5969         },
5970         {
5971         .description = "ipv4_src_addr",
5972         .field_bit_size = 32,
5973         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5974         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
5975         .spec_operand = {
5976                 (BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
5977                 BNXT_ULP_HF9_IDX_O_IPV4_SRC_ADDR & 0xff,
5978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
5979                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
5980         },
5981         {
5982         .description = "l2_src_mac",
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 = "tun_id",
5989         .field_bit_size = 24,
5990         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
5992         },
5993         {
5994         .description = "l2_cntxt_id",
5995         .field_bit_size = 10,
5996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
5997         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
5998         .spec_operand = {
5999                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6000                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6001                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6002                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6003         },
6004         {
6005         .description = "em_profile_id",
6006         .field_bit_size = 8,
6007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6009         .spec_operand = {
6010                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6011                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6014         },
6015         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
6016         {
6017         .description = "svif",
6018         .field_bit_size = 8,
6019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6021         .spec_operand = {
6022                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
6023                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
6024                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6026         },
6027         /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
6028         {
6029         .description = "l2_ivlan_vid",
6030         .field_bit_size = 12,
6031         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6032         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6033         },
6034         {
6035         .description = "l2_ovlan_vid",
6036         .field_bit_size = 12,
6037         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6038         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6039         },
6040         {
6041         .description = "mac0_l2_dst",
6042         .field_bit_size = 48,
6043         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6044         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6045         },
6046         {
6047         .description = "svif",
6048         .field_bit_size = 8,
6049         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6050         .mask_operand = {
6051                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
6052                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
6053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
6055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6056         .spec_operand = {
6057                 (BNXT_ULP_HF10_IDX_SVIF_INDEX >> 8) & 0xff,
6058                 BNXT_ULP_HF10_IDX_SVIF_INDEX & 0xff,
6059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6061         },
6062         {
6063         .description = "sparif",
6064         .field_bit_size = 4,
6065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6067         },
6068         {
6069         .description = "tl2_ivlan_vid",
6070         .field_bit_size = 12,
6071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6072         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6073         },
6074         {
6075         .description = "tl2_ovlan_vid",
6076         .field_bit_size = 12,
6077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6078         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6079         },
6080         {
6081         .description = "mac1_tl2_dst",
6082         .field_bit_size = 48,
6083         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6085         },
6086         {
6087         .description = "l2_num_vtags",
6088         .field_bit_size = 2,
6089         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6090         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6091         },
6092         {
6093         .description = "tl2_num_vtags",
6094         .field_bit_size = 2,
6095         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6096         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6097         },
6098         {
6099         .description = "tun_hdr_type",
6100         .field_bit_size = 4,
6101         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6102         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6103         },
6104         {
6105         .description = "key_type",
6106         .field_bit_size = 2,
6107         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6108         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6109         },
6110         {
6111         .description = "valid",
6112         .field_bit_size = 1,
6113         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6114         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6115                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6116         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6117         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6119         },
6120         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
6121         {
6122         .description = "recycle",
6123         .field_bit_size = 1,
6124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6126         },
6127         {
6128         .description = "prof_func_id",
6129         .field_bit_size = 7,
6130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6132         .spec_operand = {
6133                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6134                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6137         },
6138         {
6139         .description = "class_tid",
6140         .field_bit_size = 8,
6141         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6142         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6143         .spec_operand = {
6144                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6145                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6148         },
6149         /* class_tid: 10, wh_plus, table: profile_tcam_0 */
6150         {
6151         .description = "l4_hdr_is_udp_tcp",
6152         .field_bit_size = 1,
6153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6155         },
6156         {
6157         .description = "l4_hdr_type",
6158         .field_bit_size = 4,
6159         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6160         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6161                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6163         .spec_operand = {
6164                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
6165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6167         },
6168         {
6169         .description = "l4_hdr_error",
6170         .field_bit_size = 1,
6171         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6172         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6173                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6174         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6175         },
6176         {
6177         .description = "l4_hdr_valid",
6178         .field_bit_size = 1,
6179         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6180         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6181                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6183         .spec_operand = {
6184                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6185                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6187         },
6188         {
6189         .description = "l3_ipv6_cmp_dst",
6190         .field_bit_size = 1,
6191         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6192         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6193         },
6194         {
6195         .description = "l3_ipv6_cmp_src",
6196         .field_bit_size = 1,
6197         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6198         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6199         },
6200         {
6201         .description = "l3_hdr_isIP",
6202         .field_bit_size = 1,
6203         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6204         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6205         },
6206         {
6207         .description = "l3_hdr_type",
6208         .field_bit_size = 4,
6209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6210         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6211                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6212         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6213         .spec_operand = {
6214                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6215                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6216                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6217         },
6218         {
6219         .description = "l3_hdr_error",
6220         .field_bit_size = 1,
6221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6222         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6223                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6224         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6225         },
6226         {
6227         .description = "l3_hdr_valid",
6228         .field_bit_size = 1,
6229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6230         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6231                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6233         .spec_operand = {
6234                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6235                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6237         },
6238         {
6239         .description = "l2_two_vtags",
6240         .field_bit_size = 1,
6241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6243         },
6244         {
6245         .description = "l2_vtag_present",
6246         .field_bit_size = 1,
6247         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6249         },
6250         {
6251         .description = "l2_uc_mc_bc",
6252         .field_bit_size = 2,
6253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6254         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6255                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6257         },
6258         {
6259         .description = "l2_hdr_type",
6260         .field_bit_size = 2,
6261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6262         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6263                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6265         },
6266         {
6267         .description = "l2_hdr_error",
6268         .field_bit_size = 1,
6269         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6270         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6271                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6272         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6273         },
6274         {
6275         .description = "l2_hdr_valid",
6276         .field_bit_size = 1,
6277         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6278         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6279                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6280         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6281         .spec_operand = {
6282                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6284                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6285         },
6286         {
6287         .description = "tun_hdr_flags",
6288         .field_bit_size = 3,
6289         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6290         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6291         },
6292         {
6293         .description = "tun_hdr_type",
6294         .field_bit_size = 4,
6295         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6296         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6297         },
6298         {
6299         .description = "tun_hdr_error",
6300         .field_bit_size = 1,
6301         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6303         },
6304         {
6305         .description = "tun_hdr_valid",
6306         .field_bit_size = 1,
6307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6308         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6309                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6311         },
6312         {
6313         .description = "tl4_hdr_is_udp_tcp",
6314         .field_bit_size = 1,
6315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6317         },
6318         {
6319         .description = "tl4_hdr_type",
6320         .field_bit_size = 4,
6321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6323         },
6324         {
6325         .description = "tl4_hdr_error",
6326         .field_bit_size = 1,
6327         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6328         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6329         },
6330         {
6331         .description = "tl4_hdr_valid",
6332         .field_bit_size = 1,
6333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6334         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6335                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6336         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6337         },
6338         {
6339         .description = "tl3_ipv6_cmp_dst",
6340         .field_bit_size = 1,
6341         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6342         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6343         },
6344         {
6345         .description = "tl3_ipv6_cmp_src",
6346         .field_bit_size = 1,
6347         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6348         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6349         },
6350         {
6351         .description = "tl3_hdr_isIP",
6352         .field_bit_size = 1,
6353         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6354         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6355         },
6356         {
6357         .description = "tl3_hdr_type",
6358         .field_bit_size = 4,
6359         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6361         },
6362         {
6363         .description = "tl3_hdr_error",
6364         .field_bit_size = 1,
6365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6367         },
6368         {
6369         .description = "tl3_hdr_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_ZERO
6375         },
6376         {
6377         .description = "tl2_two_vtags",
6378         .field_bit_size = 1,
6379         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6380         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6381         },
6382         {
6383         .description = "tl2_vtag_present",
6384         .field_bit_size = 1,
6385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6387         },
6388         {
6389         .description = "tl2_uc_mc_bc",
6390         .field_bit_size = 2,
6391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6392         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6393         },
6394         {
6395         .description = "tl2_hdr_type",
6396         .field_bit_size = 2,
6397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6399         },
6400         {
6401         .description = "tl2_hdr_valid",
6402         .field_bit_size = 1,
6403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6404         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6405                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6406         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6407         },
6408         {
6409         .description = "hrec_next",
6410         .field_bit_size = 1,
6411         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6413         },
6414         {
6415         .description = "reserved",
6416         .field_bit_size = 9,
6417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6419         },
6420         {
6421         .description = "prof_func_id",
6422         .field_bit_size = 7,
6423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6424         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6425                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6426         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6427         .spec_operand = {
6428                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6429                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6432         },
6433         {
6434         .description = "agg_error",
6435         .field_bit_size = 1,
6436         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6438         },
6439         {
6440         .description = "recycle_cnt",
6441         .field_bit_size = 2,
6442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6443         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6444                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6446         },
6447         {
6448         .description = "pkt_type_0",
6449         .field_bit_size = 2,
6450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6452         },
6453         {
6454         .description = "pkt_type_1",
6455         .field_bit_size = 2,
6456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6457         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6458                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6459         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6460         },
6461         {
6462         .description = "valid",
6463         .field_bit_size = 1,
6464         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6465         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6466                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6468         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6469                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6470         },
6471         /* class_tid: 10, wh_plus, table: ext_em_0 */
6472         {
6473         .description = "spare",
6474         .field_bit_size = 59,
6475         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6476         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6477         },
6478         {
6479         .description = "local_cos",
6480         .field_bit_size = 3,
6481         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6483         },
6484         {
6485         .description = "l4_dst_port",
6486         .field_bit_size = 16,
6487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6489         .spec_operand = {
6490                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6491                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6492                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6493                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6494         },
6495         {
6496         .description = "l4_src_port",
6497         .field_bit_size = 16,
6498         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6499         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6500         .spec_operand = {
6501                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6502                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6505         },
6506         {
6507         .description = "ip_proto",
6508         .field_bit_size = 8,
6509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6510         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6511         .spec_operand = {
6512                 BNXT_ULP_SYM_IP_PROTO_UDP,
6513                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6515         },
6516         {
6517         .description = "ipv6_dst_addr",
6518         .field_bit_size = 128,
6519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6521         .spec_operand = {
6522                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6523                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6525                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6526         },
6527         {
6528         .description = "ipv6_src_addr",
6529         .field_bit_size = 128,
6530         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6531         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6532         .spec_operand = {
6533                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6534                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6537         },
6538         {
6539         .description = "l2_src_mac",
6540         .field_bit_size = 48,
6541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6543         },
6544         {
6545         .description = "tun_id",
6546         .field_bit_size = 24,
6547         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6548         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6549         },
6550         {
6551         .description = "l2_cntxt_id",
6552         .field_bit_size = 10,
6553         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6555         .spec_operand = {
6556                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6557                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6559                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6560         },
6561         {
6562         .description = "em_profile_id",
6563         .field_bit_size = 8,
6564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6565         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6566         .spec_operand = {
6567                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6568                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6569                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6571         },
6572         /* class_tid: 10, wh_plus, table: int_em_0 */
6573         {
6574         .description = "spare",
6575         .field_bit_size = 3,
6576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6577         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6578         },
6579         {
6580         .description = "local_cos",
6581         .field_bit_size = 3,
6582         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6584         },
6585         {
6586         .description = "l4_dst_port",
6587         .field_bit_size = 16,
6588         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6589         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6590         .spec_operand = {
6591                 (BNXT_ULP_HF10_IDX_O_UDP_DST_PORT >> 8) & 0xff,
6592                 BNXT_ULP_HF10_IDX_O_UDP_DST_PORT & 0xff,
6593                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6594                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6595         },
6596         {
6597         .description = "l4_src_port",
6598         .field_bit_size = 16,
6599         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6600         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6601         .spec_operand = {
6602                 (BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
6603                 BNXT_ULP_HF10_IDX_O_UDP_SRC_PORT & 0xff,
6604                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6605                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6606         },
6607         {
6608         .description = "ip_proto",
6609         .field_bit_size = 8,
6610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6612         .spec_operand = {
6613                 BNXT_ULP_SYM_IP_PROTO_UDP,
6614                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6616         },
6617         {
6618         .description = "ipv6_dst_addr",
6619         .field_bit_size = 128,
6620         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6621         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6622         .spec_operand = {
6623                 (BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
6624                 BNXT_ULP_HF10_IDX_O_IPV6_DST_ADDR & 0xff,
6625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6626                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6627         },
6628         {
6629         .description = "ipv6_src_addr",
6630         .field_bit_size = 128,
6631         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6633         .spec_operand = {
6634                 (BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
6635                 BNXT_ULP_HF10_IDX_O_IPV6_SRC_ADDR & 0xff,
6636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6638         },
6639         {
6640         .description = "l2_src_mac",
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 = "tun_id",
6647         .field_bit_size = 24,
6648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6650         },
6651         {
6652         .description = "l2_cntxt_id",
6653         .field_bit_size = 10,
6654         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6656         .spec_operand = {
6657                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
6658                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
6659                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6660                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6661         },
6662         {
6663         .description = "em_profile_id",
6664         .field_bit_size = 8,
6665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6667         .spec_operand = {
6668                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
6669                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
6670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6672         },
6673         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
6674         {
6675         .description = "svif",
6676         .field_bit_size = 8,
6677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6679         .spec_operand = {
6680                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6681                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6684         },
6685         /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
6686         {
6687         .description = "l2_ivlan_vid",
6688         .field_bit_size = 12,
6689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6690         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6691         },
6692         {
6693         .description = "l2_ovlan_vid",
6694         .field_bit_size = 12,
6695         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6696         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6697         },
6698         {
6699         .description = "mac0_l2_dst",
6700         .field_bit_size = 48,
6701         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6702         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6703         },
6704         {
6705         .description = "svif",
6706         .field_bit_size = 8,
6707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6708         .mask_operand = {
6709                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6710                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
6713         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
6714         .spec_operand = {
6715                 (BNXT_ULP_HF11_IDX_SVIF_INDEX >> 8) & 0xff,
6716                 BNXT_ULP_HF11_IDX_SVIF_INDEX & 0xff,
6717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6718                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6719         },
6720         {
6721         .description = "sparif",
6722         .field_bit_size = 4,
6723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6725         },
6726         {
6727         .description = "tl2_ivlan_vid",
6728         .field_bit_size = 12,
6729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6731         },
6732         {
6733         .description = "tl2_ovlan_vid",
6734         .field_bit_size = 12,
6735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6737         },
6738         {
6739         .description = "mac1_tl2_dst",
6740         .field_bit_size = 48,
6741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6743         },
6744         {
6745         .description = "l2_num_vtags",
6746         .field_bit_size = 2,
6747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6748         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6749         },
6750         {
6751         .description = "tl2_num_vtags",
6752         .field_bit_size = 2,
6753         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6755         },
6756         {
6757         .description = "tun_hdr_type",
6758         .field_bit_size = 4,
6759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6760         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6761         },
6762         {
6763         .description = "key_type",
6764         .field_bit_size = 2,
6765         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6766         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6767         },
6768         {
6769         .description = "valid",
6770         .field_bit_size = 1,
6771         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6772         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6773                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6774         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6775         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
6776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6777         },
6778         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
6779         {
6780         .description = "recycle",
6781         .field_bit_size = 1,
6782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6784         },
6785         {
6786         .description = "prof_func_id",
6787         .field_bit_size = 7,
6788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
6790         .spec_operand = {
6791                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
6792                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
6793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6794                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6795         },
6796         {
6797         .description = "class_tid",
6798         .field_bit_size = 8,
6799         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6800         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
6801         .spec_operand = {
6802                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
6803                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
6804                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6805                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6806         },
6807         /* class_tid: 11, wh_plus, table: profile_tcam_0 */
6808         {
6809         .description = "l4_hdr_is_udp_tcp",
6810         .field_bit_size = 1,
6811         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6812         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6813         },
6814         {
6815         .description = "l4_hdr_type",
6816         .field_bit_size = 4,
6817         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6818         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6819                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6821         },
6822         {
6823         .description = "l4_hdr_error",
6824         .field_bit_size = 1,
6825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6826         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6827                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6828         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6829         },
6830         {
6831         .description = "l4_hdr_valid",
6832         .field_bit_size = 1,
6833         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6834         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6835                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6836         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6837         .spec_operand = {
6838                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
6839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6840                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6841         },
6842         {
6843         .description = "l3_ipv6_cmp_dst",
6844         .field_bit_size = 1,
6845         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6846         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6847         },
6848         {
6849         .description = "l3_ipv6_cmp_src",
6850         .field_bit_size = 1,
6851         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6852         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6853         },
6854         {
6855         .description = "l3_hdr_isIP",
6856         .field_bit_size = 1,
6857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6859         },
6860         {
6861         .description = "l3_hdr_type",
6862         .field_bit_size = 4,
6863         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6864         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6865                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6866         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6867         .spec_operand = {
6868                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
6869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6871         },
6872         {
6873         .description = "l3_hdr_error",
6874         .field_bit_size = 1,
6875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6876         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6877                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6879         },
6880         {
6881         .description = "l3_hdr_valid",
6882         .field_bit_size = 1,
6883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6884         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6885                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6887         .spec_operand = {
6888                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
6889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6891         },
6892         {
6893         .description = "l2_two_vtags",
6894         .field_bit_size = 1,
6895         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6896         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6897         },
6898         {
6899         .description = "l2_vtag_present",
6900         .field_bit_size = 1,
6901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6903         },
6904         {
6905         .description = "l2_uc_mc_bc",
6906         .field_bit_size = 2,
6907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6908         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6909                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6911         },
6912         {
6913         .description = "l2_hdr_type",
6914         .field_bit_size = 2,
6915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6916         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6917                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6918         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6919         },
6920         {
6921         .description = "l2_hdr_error",
6922         .field_bit_size = 1,
6923         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6924         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6925                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6926         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6927         },
6928         {
6929         .description = "l2_hdr_valid",
6930         .field_bit_size = 1,
6931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6932         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6933                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6935         .spec_operand = {
6936                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
6937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6938                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
6939         },
6940         {
6941         .description = "tun_hdr_flags",
6942         .field_bit_size = 3,
6943         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6945         },
6946         {
6947         .description = "tun_hdr_type",
6948         .field_bit_size = 4,
6949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6951         },
6952         {
6953         .description = "tun_hdr_error",
6954         .field_bit_size = 1,
6955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6957         },
6958         {
6959         .description = "tun_hdr_valid",
6960         .field_bit_size = 1,
6961         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6962         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6963                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6964         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6965         },
6966         {
6967         .description = "tl4_hdr_is_udp_tcp",
6968         .field_bit_size = 1,
6969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6971         },
6972         {
6973         .description = "tl4_hdr_type",
6974         .field_bit_size = 4,
6975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6977         },
6978         {
6979         .description = "tl4_hdr_error",
6980         .field_bit_size = 1,
6981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6983         },
6984         {
6985         .description = "tl4_hdr_valid",
6986         .field_bit_size = 1,
6987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
6988         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6989                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
6990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6991         },
6992         {
6993         .description = "tl3_ipv6_cmp_dst",
6994         .field_bit_size = 1,
6995         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
6996         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
6997         },
6998         {
6999         .description = "tl3_ipv6_cmp_src",
7000         .field_bit_size = 1,
7001         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7003         },
7004         {
7005         .description = "tl3_hdr_isIP",
7006         .field_bit_size = 1,
7007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7009         },
7010         {
7011         .description = "tl3_hdr_type",
7012         .field_bit_size = 4,
7013         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7014         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7015         },
7016         {
7017         .description = "tl3_hdr_error",
7018         .field_bit_size = 1,
7019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7021         },
7022         {
7023         .description = "tl3_hdr_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_ZERO
7029         },
7030         {
7031         .description = "tl2_two_vtags",
7032         .field_bit_size = 1,
7033         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7034         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7035         },
7036         {
7037         .description = "tl2_vtag_present",
7038         .field_bit_size = 1,
7039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7040         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7041         },
7042         {
7043         .description = "tl2_uc_mc_bc",
7044         .field_bit_size = 2,
7045         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7047         },
7048         {
7049         .description = "tl2_hdr_type",
7050         .field_bit_size = 2,
7051         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7052         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7053         },
7054         {
7055         .description = "tl2_hdr_valid",
7056         .field_bit_size = 1,
7057         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7058         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7059                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7061         },
7062         {
7063         .description = "hrec_next",
7064         .field_bit_size = 1,
7065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7067         },
7068         {
7069         .description = "reserved",
7070         .field_bit_size = 9,
7071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7072         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7073         },
7074         {
7075         .description = "prof_func_id",
7076         .field_bit_size = 7,
7077         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7078         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7079                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7080         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7081         .spec_operand = {
7082                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
7083                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
7084                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7086         },
7087         {
7088         .description = "agg_error",
7089         .field_bit_size = 1,
7090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7092         },
7093         {
7094         .description = "recycle_cnt",
7095         .field_bit_size = 2,
7096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7097         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7098                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7100         },
7101         {
7102         .description = "pkt_type_0",
7103         .field_bit_size = 2,
7104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7106         },
7107         {
7108         .description = "pkt_type_1",
7109         .field_bit_size = 2,
7110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7111         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7112                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7114         },
7115         {
7116         .description = "valid",
7117         .field_bit_size = 1,
7118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7119         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7120                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7121         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7122         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7123                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7124         },
7125         /* class_tid: 11, wh_plus, table: ext_em_0 */
7126         {
7127         .description = "spare",
7128         .field_bit_size = 59,
7129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7130         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7131         },
7132         {
7133         .description = "local_cos",
7134         .field_bit_size = 3,
7135         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7136         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7137         },
7138         {
7139         .description = "l4_dst_port",
7140         .field_bit_size = 16,
7141         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7142         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7143         .spec_operand = {
7144                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7145                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7148         },
7149         {
7150         .description = "l4_src_port",
7151         .field_bit_size = 16,
7152         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7153         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7154         .spec_operand = {
7155                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7156                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7158                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7159         },
7160         {
7161         .description = "ip_proto",
7162         .field_bit_size = 8,
7163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7164         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7165         .spec_operand = {
7166                 BNXT_ULP_SYM_IP_PROTO_TCP,
7167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7168                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7169         },
7170         {
7171         .description = "ipv6_dst_addr",
7172         .field_bit_size = 128,
7173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7174         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7175         .spec_operand = {
7176                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7177                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7180         },
7181         {
7182         .description = "ipv6_src_addr",
7183         .field_bit_size = 128,
7184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7186         .spec_operand = {
7187                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7188                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7191         },
7192         {
7193         .description = "l2_src_mac",
7194         .field_bit_size = 48,
7195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7196         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7197         },
7198         {
7199         .description = "tun_id",
7200         .field_bit_size = 24,
7201         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7202         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7203         },
7204         {
7205         .description = "l2_cntxt_id",
7206         .field_bit_size = 10,
7207         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7208         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7209         .spec_operand = {
7210                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7211                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7213                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7214         },
7215         {
7216         .description = "em_profile_id",
7217         .field_bit_size = 8,
7218         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7219         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7220         .spec_operand = {
7221                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7222                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7223                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7225         },
7226         /* class_tid: 11, wh_plus, table: int_em_0 */
7227         {
7228         .description = "spare",
7229         .field_bit_size = 3,
7230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7231         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7232         },
7233         {
7234         .description = "local_cos",
7235         .field_bit_size = 3,
7236         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7237         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7238         },
7239         {
7240         .description = "l4_dst_port",
7241         .field_bit_size = 16,
7242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7244         .spec_operand = {
7245                 (BNXT_ULP_HF11_IDX_O_TCP_DST_PORT >> 8) & 0xff,
7246                 BNXT_ULP_HF11_IDX_O_TCP_DST_PORT & 0xff,
7247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7249         },
7250         {
7251         .description = "l4_src_port",
7252         .field_bit_size = 16,
7253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7254         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7255         .spec_operand = {
7256                 (BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
7257                 BNXT_ULP_HF11_IDX_O_TCP_SRC_PORT & 0xff,
7258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7260         },
7261         {
7262         .description = "ip_proto",
7263         .field_bit_size = 8,
7264         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7265         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7266         .spec_operand = {
7267                 BNXT_ULP_SYM_IP_PROTO_TCP,
7268                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7269                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7270         },
7271         {
7272         .description = "ipv6_dst_addr",
7273         .field_bit_size = 128,
7274         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7276         .spec_operand = {
7277                 (BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
7278                 BNXT_ULP_HF11_IDX_O_IPV6_DST_ADDR & 0xff,
7279                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7280                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7281         },
7282         {
7283         .description = "ipv6_src_addr",
7284         .field_bit_size = 128,
7285         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7286         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7287         .spec_operand = {
7288                 (BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
7289                 BNXT_ULP_HF11_IDX_O_IPV6_SRC_ADDR & 0xff,
7290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7291                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7292         },
7293         {
7294         .description = "l2_src_mac",
7295         .field_bit_size = 48,
7296         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7297         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7298         },
7299         {
7300         .description = "tun_id",
7301         .field_bit_size = 24,
7302         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7303         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7304         },
7305         {
7306         .description = "l2_cntxt_id",
7307         .field_bit_size = 10,
7308         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7309         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7310         .spec_operand = {
7311                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7312                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7313                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7314                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7315         },
7316         {
7317         .description = "em_profile_id",
7318         .field_bit_size = 8,
7319         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7321         .spec_operand = {
7322                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7323                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7326         },
7327         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
7328         {
7329         .description = "l2_ivlan_vid",
7330         .field_bit_size = 12,
7331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7332         .mask_operand = {
7333                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7334                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7335                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7336                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7338         .spec_operand = {
7339                 (BNXT_ULP_HF12_IDX_OO_VLAN_VID >> 8) & 0xff,
7340                 BNXT_ULP_HF12_IDX_OO_VLAN_VID & 0xff,
7341                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7342                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7343         },
7344         {
7345         .description = "l2_ovlan_vid",
7346         .field_bit_size = 12,
7347         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7348         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7349         },
7350         {
7351         .description = "mac0_l2_addr",
7352         .field_bit_size = 48,
7353         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7354         .mask_operand = {
7355                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7356                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7358                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7359         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7360         .spec_operand = {
7361                 (BNXT_ULP_HF12_IDX_O_ETH_DMAC >> 8) & 0xff,
7362                 BNXT_ULP_HF12_IDX_O_ETH_DMAC & 0xff,
7363                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7364                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7365         },
7366         {
7367         .description = "svif",
7368         .field_bit_size = 8,
7369         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7370         .mask_operand = {
7371                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7372                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7373                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7374                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
7375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7376         .spec_operand = {
7377                 (BNXT_ULP_HF12_IDX_SVIF_INDEX >> 8) & 0xff,
7378                 BNXT_ULP_HF12_IDX_SVIF_INDEX & 0xff,
7379                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7380                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7381         },
7382         {
7383         .description = "sparif",
7384         .field_bit_size = 4,
7385         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7387         },
7388         {
7389         .description = "tl2_ivlan_vid",
7390         .field_bit_size = 12,
7391         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7392         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7393         },
7394         {
7395         .description = "tl2_ovlan_vid",
7396         .field_bit_size = 12,
7397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7399         },
7400         {
7401         .description = "mac1_tl2_addr",
7402         .field_bit_size = 48,
7403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7405         },
7406         {
7407         .description = "l2_num_vtags",
7408         .field_bit_size = 2,
7409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7410         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7411                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7412         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
7413         .spec_operand = {
7414                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
7415                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
7416                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7417                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7418         },
7419         {
7420         .description = "tl2_num_vtags",
7421         .field_bit_size = 2,
7422         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7423         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7424         },
7425         {
7426         .description = "tun_hdr_type",
7427         .field_bit_size = 4,
7428         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7430         },
7431         {
7432         .description = "key_type",
7433         .field_bit_size = 2,
7434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7435         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7436                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7438         },
7439         {
7440         .description = "valid",
7441         .field_bit_size = 1,
7442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7443         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7444                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7445         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7446         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7447                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7448         },
7449         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
7450         {
7451         .description = "recycle",
7452         .field_bit_size = 1,
7453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7454         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7455         },
7456         {
7457         .description = "prof_func_id",
7458         .field_bit_size = 7,
7459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7461         .spec_operand = {
7462                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7463                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7466         },
7467         {
7468         .description = "class_tid",
7469         .field_bit_size = 8,
7470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7472         .spec_operand = {
7473                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
7474                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
7475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7477         },
7478         /* class_tid: 12, wh_plus, table: profile_tcam_0 */
7479         {
7480         .description = "l4_hdr_is_udp_tcp",
7481         .field_bit_size = 1,
7482         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7483         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7484         },
7485         {
7486         .description = "l4_hdr_type",
7487         .field_bit_size = 4,
7488         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7489         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7490                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7491         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7492         .spec_operand = {
7493                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
7494                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7496         },
7497         {
7498         .description = "l4_hdr_error",
7499         .field_bit_size = 1,
7500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7501         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7502                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7503         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7504         },
7505         {
7506         .description = "l4_hdr_valid",
7507         .field_bit_size = 1,
7508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7509         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7510                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7511         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7512         .spec_operand = {
7513                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
7514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7516         },
7517         {
7518         .description = "l3_ipv6_cmp_dst",
7519         .field_bit_size = 1,
7520         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7521         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7522         },
7523         {
7524         .description = "l3_ipv6_cmp_src",
7525         .field_bit_size = 1,
7526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7528         },
7529         {
7530         .description = "l3_hdr_isIP",
7531         .field_bit_size = 1,
7532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7534         },
7535         {
7536         .description = "l3_hdr_type",
7537         .field_bit_size = 4,
7538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7539         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7540                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7542         },
7543         {
7544         .description = "l3_hdr_error",
7545         .field_bit_size = 1,
7546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7547         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7548                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7549         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7550         },
7551         {
7552         .description = "l3_hdr_valid",
7553         .field_bit_size = 1,
7554         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7555         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7556                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7557         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7558         .spec_operand = {
7559                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
7560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7562         },
7563         {
7564         .description = "l2_two_vtags",
7565         .field_bit_size = 1,
7566         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7568         },
7569         {
7570         .description = "l2_vtag_present",
7571         .field_bit_size = 1,
7572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7573         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7574         },
7575         {
7576         .description = "l2_uc_mc_bc",
7577         .field_bit_size = 2,
7578         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7579         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7580                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7581         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7582         },
7583         {
7584         .description = "l2_hdr_type",
7585         .field_bit_size = 2,
7586         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7587         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7588                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7589         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7590         },
7591         {
7592         .description = "l2_hdr_error",
7593         .field_bit_size = 1,
7594         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7595         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7596                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7597         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7598         },
7599         {
7600         .description = "l2_hdr_valid",
7601         .field_bit_size = 1,
7602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7603         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7604                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7606         .spec_operand = {
7607                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
7608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7609                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7610         },
7611         {
7612         .description = "tun_hdr_flags",
7613         .field_bit_size = 3,
7614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7615         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7616         },
7617         {
7618         .description = "tun_hdr_type",
7619         .field_bit_size = 4,
7620         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7621         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7622         },
7623         {
7624         .description = "tun_hdr_error",
7625         .field_bit_size = 1,
7626         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7627         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7628         },
7629         {
7630         .description = "tun_hdr_valid",
7631         .field_bit_size = 1,
7632         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7633         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7634                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7636         },
7637         {
7638         .description = "tl4_hdr_is_udp_tcp",
7639         .field_bit_size = 1,
7640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7642         },
7643         {
7644         .description = "tl4_hdr_type",
7645         .field_bit_size = 4,
7646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7648         },
7649         {
7650         .description = "tl4_hdr_error",
7651         .field_bit_size = 1,
7652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7653         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7654         },
7655         {
7656         .description = "tl4_hdr_valid",
7657         .field_bit_size = 1,
7658         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7659         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7660                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7662         },
7663         {
7664         .description = "tl3_ipv6_cmp_dst",
7665         .field_bit_size = 1,
7666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7667         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7668         },
7669         {
7670         .description = "tl3_ipv6_cmp_src",
7671         .field_bit_size = 1,
7672         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7673         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7674         },
7675         {
7676         .description = "tl3_hdr_isIP",
7677         .field_bit_size = 1,
7678         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7679         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7680         },
7681         {
7682         .description = "tl3_hdr_type",
7683         .field_bit_size = 4,
7684         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7686         },
7687         {
7688         .description = "tl3_hdr_error",
7689         .field_bit_size = 1,
7690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7692         },
7693         {
7694         .description = "tl3_hdr_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_ZERO
7700         },
7701         {
7702         .description = "tl2_two_vtags",
7703         .field_bit_size = 1,
7704         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7705         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7706         },
7707         {
7708         .description = "tl2_vtag_present",
7709         .field_bit_size = 1,
7710         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7712         },
7713         {
7714         .description = "tl2_uc_mc_bc",
7715         .field_bit_size = 2,
7716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7718         },
7719         {
7720         .description = "tl2_hdr_type",
7721         .field_bit_size = 2,
7722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7724         },
7725         {
7726         .description = "tl2_hdr_valid",
7727         .field_bit_size = 1,
7728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7729         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7730                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7731         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7732         },
7733         {
7734         .description = "hrec_next",
7735         .field_bit_size = 1,
7736         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7737         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7738         },
7739         {
7740         .description = "reserved",
7741         .field_bit_size = 9,
7742         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7743         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7744         },
7745         {
7746         .description = "prof_func_id",
7747         .field_bit_size = 7,
7748         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7749         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7750                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
7752         .spec_operand = {
7753                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
7754                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
7755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7757         },
7758         {
7759         .description = "agg_error",
7760         .field_bit_size = 1,
7761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7763         },
7764         {
7765         .description = "recycle_cnt",
7766         .field_bit_size = 2,
7767         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7768         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7769                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7770         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7771         },
7772         {
7773         .description = "pkt_type_0",
7774         .field_bit_size = 2,
7775         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7776         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7777         },
7778         {
7779         .description = "pkt_type_1",
7780         .field_bit_size = 2,
7781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7782         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7783                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7784         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7785         },
7786         {
7787         .description = "valid",
7788         .field_bit_size = 1,
7789         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7790         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7791                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
7792         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7793         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
7794                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7795         },
7796         /* class_tid: 12, wh_plus, table: ext_em_0 */
7797         {
7798         .description = "spare",
7799         .field_bit_size = 251,
7800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7801         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7802         },
7803         {
7804         .description = "local_cos",
7805         .field_bit_size = 3,
7806         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7808         },
7809         {
7810         .description = "l4_dst_port",
7811         .field_bit_size = 16,
7812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7813         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7814         .spec_operand = {
7815                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7816                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7819         },
7820         {
7821         .description = "l4_src_port",
7822         .field_bit_size = 16,
7823         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7824         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7825         .spec_operand = {
7826                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7827                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7828                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7829                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7830         },
7831         {
7832         .description = "ip_proto",
7833         .field_bit_size = 8,
7834         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7835         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7836         .spec_operand = {
7837                 BNXT_ULP_SYM_IP_PROTO_UDP,
7838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7840         },
7841         {
7842         .description = "ipv4_dst_addr",
7843         .field_bit_size = 32,
7844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7846         .spec_operand = {
7847                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7848                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7850                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7851         },
7852         {
7853         .description = "ipv4_src_addr",
7854         .field_bit_size = 32,
7855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7857         .spec_operand = {
7858                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7859                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7860                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7862         },
7863         {
7864         .description = "l2_src_mac",
7865         .field_bit_size = 48,
7866         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7867         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7868         },
7869         {
7870         .description = "tun_id",
7871         .field_bit_size = 24,
7872         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7873         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7874         },
7875         {
7876         .description = "l2_cntxt_id",
7877         .field_bit_size = 10,
7878         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7880         .spec_operand = {
7881                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7882                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7885         },
7886         {
7887         .description = "em_profile_id",
7888         .field_bit_size = 8,
7889         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7890         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7891         .spec_operand = {
7892                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7893                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7895                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7896         },
7897         /* class_tid: 12, wh_plus, table: int_em_0 */
7898         {
7899         .description = "spare",
7900         .field_bit_size = 3,
7901         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7902         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7903         },
7904         {
7905         .description = "local_cos",
7906         .field_bit_size = 3,
7907         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7908         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7909         },
7910         {
7911         .description = "l4_dst_port",
7912         .field_bit_size = 16,
7913         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7915         .spec_operand = {
7916                 (BNXT_ULP_HF12_IDX_O_UDP_DST_PORT >> 8) & 0xff,
7917                 BNXT_ULP_HF12_IDX_O_UDP_DST_PORT & 0xff,
7918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7920         },
7921         {
7922         .description = "l4_src_port",
7923         .field_bit_size = 16,
7924         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7926         .spec_operand = {
7927                 (BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
7928                 BNXT_ULP_HF12_IDX_O_UDP_SRC_PORT & 0xff,
7929                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7930                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7931         },
7932         {
7933         .description = "ip_proto",
7934         .field_bit_size = 8,
7935         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7936         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
7937         .spec_operand = {
7938                 BNXT_ULP_SYM_IP_PROTO_UDP,
7939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7941         },
7942         {
7943         .description = "ipv4_dst_addr",
7944         .field_bit_size = 32,
7945         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7946         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7947         .spec_operand = {
7948                 (BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
7949                 BNXT_ULP_HF12_IDX_O_IPV4_DST_ADDR & 0xff,
7950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7951                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7952         },
7953         {
7954         .description = "ipv4_src_addr",
7955         .field_bit_size = 32,
7956         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7957         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
7958         .spec_operand = {
7959                 (BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
7960                 BNXT_ULP_HF12_IDX_O_IPV4_SRC_ADDR & 0xff,
7961                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7962                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7963         },
7964         {
7965         .description = "l2_src_mac",
7966         .field_bit_size = 48,
7967         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7968         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7969         },
7970         {
7971         .description = "tun_id",
7972         .field_bit_size = 24,
7973         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7974         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
7975         },
7976         {
7977         .description = "l2_cntxt_id",
7978         .field_bit_size = 10,
7979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7981         .spec_operand = {
7982                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
7983                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
7984                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7985                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7986         },
7987         {
7988         .description = "em_profile_id",
7989         .field_bit_size = 8,
7990         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
7991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
7992         .spec_operand = {
7993                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
7994                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
7995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
7997         },
7998         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
7999         {
8000         .description = "l2_ivlan_vid",
8001         .field_bit_size = 12,
8002         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8003         .mask_operand = {
8004                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
8005                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
8006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8007                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8008         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8009         .spec_operand = {
8010                 (BNXT_ULP_HF13_IDX_OO_VLAN_VID >> 8) & 0xff,
8011                 BNXT_ULP_HF13_IDX_OO_VLAN_VID & 0xff,
8012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8014         },
8015         {
8016         .description = "l2_ovlan_vid",
8017         .field_bit_size = 12,
8018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8020         },
8021         {
8022         .description = "mac0_l2_addr",
8023         .field_bit_size = 48,
8024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8025         .mask_operand = {
8026                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
8027                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
8028                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8029                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8031         .spec_operand = {
8032                 (BNXT_ULP_HF13_IDX_O_ETH_DMAC >> 8) & 0xff,
8033                 BNXT_ULP_HF13_IDX_O_ETH_DMAC & 0xff,
8034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8036         },
8037         {
8038         .description = "svif",
8039         .field_bit_size = 8,
8040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8041         .mask_operand = {
8042                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
8043                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
8044                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8045                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8047         .spec_operand = {
8048                 (BNXT_ULP_HF13_IDX_SVIF_INDEX >> 8) & 0xff,
8049                 BNXT_ULP_HF13_IDX_SVIF_INDEX & 0xff,
8050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8052         },
8053         {
8054         .description = "sparif",
8055         .field_bit_size = 4,
8056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8058         },
8059         {
8060         .description = "tl2_ivlan_vid",
8061         .field_bit_size = 12,
8062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8064         },
8065         {
8066         .description = "tl2_ovlan_vid",
8067         .field_bit_size = 12,
8068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8070         },
8071         {
8072         .description = "mac1_tl2_addr",
8073         .field_bit_size = 48,
8074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8075         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8076         },
8077         {
8078         .description = "l2_num_vtags",
8079         .field_bit_size = 2,
8080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8081         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8082                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
8084         .spec_operand = {
8085                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8086                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8087                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8088                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8089         },
8090         {
8091         .description = "tl2_num_vtags",
8092         .field_bit_size = 2,
8093         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8095         },
8096         {
8097         .description = "tun_hdr_type",
8098         .field_bit_size = 4,
8099         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8100         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8101         },
8102         {
8103         .description = "key_type",
8104         .field_bit_size = 2,
8105         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8106         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8107                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8108         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8109         },
8110         {
8111         .description = "valid",
8112         .field_bit_size = 1,
8113         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8114         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8115                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8116         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8117         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8118                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8119         },
8120         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
8121         {
8122         .description = "recycle",
8123         .field_bit_size = 1,
8124         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8126         },
8127         {
8128         .description = "prof_func_id",
8129         .field_bit_size = 7,
8130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8132         .spec_operand = {
8133                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8134                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8137         },
8138         {
8139         .description = "class_tid",
8140         .field_bit_size = 8,
8141         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8142         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8143         .spec_operand = {
8144                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8145                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8148         },
8149         /* class_tid: 13, wh_plus, table: profile_tcam_0 */
8150         {
8151         .description = "l4_hdr_is_udp_tcp",
8152         .field_bit_size = 1,
8153         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8154         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8155         },
8156         {
8157         .description = "l4_hdr_type",
8158         .field_bit_size = 4,
8159         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8160         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8161                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8163         },
8164         {
8165         .description = "l4_hdr_error",
8166         .field_bit_size = 1,
8167         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8168         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8169                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8171         },
8172         {
8173         .description = "l4_hdr_valid",
8174         .field_bit_size = 1,
8175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8176         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8177                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8178         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8179         .spec_operand = {
8180                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8181                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8183         },
8184         {
8185         .description = "l3_ipv6_cmp_dst",
8186         .field_bit_size = 1,
8187         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8189         },
8190         {
8191         .description = "l3_ipv6_cmp_src",
8192         .field_bit_size = 1,
8193         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8194         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8195         },
8196         {
8197         .description = "l3_hdr_isIP",
8198         .field_bit_size = 1,
8199         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8200         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8201         },
8202         {
8203         .description = "l3_hdr_type",
8204         .field_bit_size = 4,
8205         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8206         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8207                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8208         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8209         },
8210         {
8211         .description = "l3_hdr_error",
8212         .field_bit_size = 1,
8213         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8214         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8215                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8217         },
8218         {
8219         .description = "l3_hdr_valid",
8220         .field_bit_size = 1,
8221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8222         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8223                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8224         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8225         .spec_operand = {
8226                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8227                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8229         },
8230         {
8231         .description = "l2_two_vtags",
8232         .field_bit_size = 1,
8233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8235         },
8236         {
8237         .description = "l2_vtag_present",
8238         .field_bit_size = 1,
8239         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8241         },
8242         {
8243         .description = "l2_uc_mc_bc",
8244         .field_bit_size = 2,
8245         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8246         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8247                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8249         },
8250         {
8251         .description = "l2_hdr_type",
8252         .field_bit_size = 2,
8253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8254         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8255                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8257         },
8258         {
8259         .description = "l2_hdr_error",
8260         .field_bit_size = 1,
8261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8262         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8263                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8264         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8265         },
8266         {
8267         .description = "l2_hdr_valid",
8268         .field_bit_size = 1,
8269         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8270         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8271                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8272         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8273         .spec_operand = {
8274                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8276                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8277         },
8278         {
8279         .description = "tun_hdr_flags",
8280         .field_bit_size = 3,
8281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8283         },
8284         {
8285         .description = "tun_hdr_type",
8286         .field_bit_size = 4,
8287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8289         },
8290         {
8291         .description = "tun_hdr_error",
8292         .field_bit_size = 1,
8293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8295         },
8296         {
8297         .description = "tun_hdr_valid",
8298         .field_bit_size = 1,
8299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8300         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8301                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8303         },
8304         {
8305         .description = "tl4_hdr_is_udp_tcp",
8306         .field_bit_size = 1,
8307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8309         },
8310         {
8311         .description = "tl4_hdr_type",
8312         .field_bit_size = 4,
8313         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8315         },
8316         {
8317         .description = "tl4_hdr_error",
8318         .field_bit_size = 1,
8319         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8321         },
8322         {
8323         .description = "tl4_hdr_valid",
8324         .field_bit_size = 1,
8325         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8326         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8327                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8328         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8329         },
8330         {
8331         .description = "tl3_ipv6_cmp_dst",
8332         .field_bit_size = 1,
8333         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8334         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8335         },
8336         {
8337         .description = "tl3_ipv6_cmp_src",
8338         .field_bit_size = 1,
8339         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8341         },
8342         {
8343         .description = "tl3_hdr_isIP",
8344         .field_bit_size = 1,
8345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8346         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8347         },
8348         {
8349         .description = "tl3_hdr_type",
8350         .field_bit_size = 4,
8351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8353         },
8354         {
8355         .description = "tl3_hdr_error",
8356         .field_bit_size = 1,
8357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8359         },
8360         {
8361         .description = "tl3_hdr_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_ZERO
8367         },
8368         {
8369         .description = "tl2_two_vtags",
8370         .field_bit_size = 1,
8371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8373         },
8374         {
8375         .description = "tl2_vtag_present",
8376         .field_bit_size = 1,
8377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8379         },
8380         {
8381         .description = "tl2_uc_mc_bc",
8382         .field_bit_size = 2,
8383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8384         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8385         },
8386         {
8387         .description = "tl2_hdr_type",
8388         .field_bit_size = 2,
8389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8390         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8391         },
8392         {
8393         .description = "tl2_hdr_valid",
8394         .field_bit_size = 1,
8395         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8396         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8397                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8398         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8399         },
8400         {
8401         .description = "hrec_next",
8402         .field_bit_size = 1,
8403         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8404         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8405         },
8406         {
8407         .description = "reserved",
8408         .field_bit_size = 9,
8409         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8410         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8411         },
8412         {
8413         .description = "prof_func_id",
8414         .field_bit_size = 7,
8415         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8416         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8417                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8419         .spec_operand = {
8420                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8421                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8424         },
8425         {
8426         .description = "agg_error",
8427         .field_bit_size = 1,
8428         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8429         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8430         },
8431         {
8432         .description = "recycle_cnt",
8433         .field_bit_size = 2,
8434         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8435         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8436                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8438         },
8439         {
8440         .description = "pkt_type_0",
8441         .field_bit_size = 2,
8442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8444         },
8445         {
8446         .description = "pkt_type_1",
8447         .field_bit_size = 2,
8448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8449         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8450                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8452         },
8453         {
8454         .description = "valid",
8455         .field_bit_size = 1,
8456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8457         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8458                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8459         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8460         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8461                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8462         },
8463         /* class_tid: 13, wh_plus, table: ext_em_0 */
8464         {
8465         .description = "spare",
8466         .field_bit_size = 251,
8467         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8468         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8469         },
8470         {
8471         .description = "local_cos",
8472         .field_bit_size = 3,
8473         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8474         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8475         },
8476         {
8477         .description = "l4_dst_port",
8478         .field_bit_size = 16,
8479         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8480         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8481         .spec_operand = {
8482                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8483                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8485                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8486         },
8487         {
8488         .description = "l4_src_port",
8489         .field_bit_size = 16,
8490         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8491         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8492         .spec_operand = {
8493                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8494                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8496                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8497         },
8498         {
8499         .description = "ip_proto",
8500         .field_bit_size = 8,
8501         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8503         .spec_operand = {
8504                 BNXT_ULP_SYM_IP_PROTO_TCP,
8505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8507         },
8508         {
8509         .description = "ipv4_dst_addr",
8510         .field_bit_size = 32,
8511         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8513         .spec_operand = {
8514                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8515                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8516                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8517                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8518         },
8519         {
8520         .description = "ipv4_src_addr",
8521         .field_bit_size = 32,
8522         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8523         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8524         .spec_operand = {
8525                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8526                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8528                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8529         },
8530         {
8531         .description = "l2_src_mac",
8532         .field_bit_size = 48,
8533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8534         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8535         },
8536         {
8537         .description = "tun_id",
8538         .field_bit_size = 24,
8539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8541         },
8542         {
8543         .description = "l2_cntxt_id",
8544         .field_bit_size = 10,
8545         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8546         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8547         .spec_operand = {
8548                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8549                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8552         },
8553         {
8554         .description = "em_profile_id",
8555         .field_bit_size = 8,
8556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8557         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8558         .spec_operand = {
8559                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8560                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8563         },
8564         /* class_tid: 13, wh_plus, table: int_em_0 */
8565         {
8566         .description = "spare",
8567         .field_bit_size = 3,
8568         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8569         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8570         },
8571         {
8572         .description = "local_cos",
8573         .field_bit_size = 3,
8574         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8576         },
8577         {
8578         .description = "l4_dst_port",
8579         .field_bit_size = 16,
8580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8581         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8582         .spec_operand = {
8583                 (BNXT_ULP_HF13_IDX_O_TCP_DST_PORT >> 8) & 0xff,
8584                 BNXT_ULP_HF13_IDX_O_TCP_DST_PORT & 0xff,
8585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8587         },
8588         {
8589         .description = "l4_src_port",
8590         .field_bit_size = 16,
8591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8593         .spec_operand = {
8594                 (BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
8595                 BNXT_ULP_HF13_IDX_O_TCP_SRC_PORT & 0xff,
8596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8598         },
8599         {
8600         .description = "ip_proto",
8601         .field_bit_size = 8,
8602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8604         .spec_operand = {
8605                 BNXT_ULP_SYM_IP_PROTO_TCP,
8606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8608         },
8609         {
8610         .description = "ipv4_dst_addr",
8611         .field_bit_size = 32,
8612         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8614         .spec_operand = {
8615                 (BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
8616                 BNXT_ULP_HF13_IDX_O_IPV4_DST_ADDR & 0xff,
8617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8619         },
8620         {
8621         .description = "ipv4_src_addr",
8622         .field_bit_size = 32,
8623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8625         .spec_operand = {
8626                 (BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
8627                 BNXT_ULP_HF13_IDX_O_IPV4_SRC_ADDR & 0xff,
8628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8629                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8630         },
8631         {
8632         .description = "l2_src_mac",
8633         .field_bit_size = 48,
8634         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8636         },
8637         {
8638         .description = "tun_id",
8639         .field_bit_size = 24,
8640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8642         },
8643         {
8644         .description = "l2_cntxt_id",
8645         .field_bit_size = 10,
8646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8648         .spec_operand = {
8649                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
8650                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
8651                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8652                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8653         },
8654         {
8655         .description = "em_profile_id",
8656         .field_bit_size = 8,
8657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8658         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8659         .spec_operand = {
8660                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
8661                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
8662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8663                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8664         },
8665         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
8666         {
8667         .description = "l2_ivlan_vid",
8668         .field_bit_size = 12,
8669         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8670         .mask_operand = {
8671                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8672                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8675         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8676         .spec_operand = {
8677                 (BNXT_ULP_HF14_IDX_OO_VLAN_VID >> 8) & 0xff,
8678                 BNXT_ULP_HF14_IDX_OO_VLAN_VID & 0xff,
8679                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8680                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8681         },
8682         {
8683         .description = "l2_ovlan_vid",
8684         .field_bit_size = 12,
8685         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8687         },
8688         {
8689         .description = "mac0_l2_addr",
8690         .field_bit_size = 48,
8691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8692         .mask_operand = {
8693                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8694                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8695                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8696                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8698         .spec_operand = {
8699                 (BNXT_ULP_HF14_IDX_O_ETH_DMAC >> 8) & 0xff,
8700                 BNXT_ULP_HF14_IDX_O_ETH_DMAC & 0xff,
8701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8703         },
8704         {
8705         .description = "svif",
8706         .field_bit_size = 8,
8707         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8708         .mask_operand = {
8709                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8710                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
8713         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
8714         .spec_operand = {
8715                 (BNXT_ULP_HF14_IDX_SVIF_INDEX >> 8) & 0xff,
8716                 BNXT_ULP_HF14_IDX_SVIF_INDEX & 0xff,
8717                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8718                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8719         },
8720         {
8721         .description = "sparif",
8722         .field_bit_size = 4,
8723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8725         },
8726         {
8727         .description = "tl2_ivlan_vid",
8728         .field_bit_size = 12,
8729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8731         },
8732         {
8733         .description = "tl2_ovlan_vid",
8734         .field_bit_size = 12,
8735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8737         },
8738         {
8739         .description = "mac1_tl2_addr",
8740         .field_bit_size = 48,
8741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8742         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8743         },
8744         {
8745         .description = "l2_num_vtags",
8746         .field_bit_size = 2,
8747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8748         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8749                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
8751         .spec_operand = {
8752                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
8753                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
8754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8756         },
8757         {
8758         .description = "tl2_num_vtags",
8759         .field_bit_size = 2,
8760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8761         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8762         },
8763         {
8764         .description = "tun_hdr_type",
8765         .field_bit_size = 4,
8766         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8767         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8768         },
8769         {
8770         .description = "key_type",
8771         .field_bit_size = 2,
8772         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8773         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8774                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8776         },
8777         {
8778         .description = "valid",
8779         .field_bit_size = 1,
8780         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8781         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8782                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8784         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
8785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8786         },
8787         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
8788         {
8789         .description = "recycle",
8790         .field_bit_size = 1,
8791         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8792         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8793         },
8794         {
8795         .description = "prof_func_id",
8796         .field_bit_size = 7,
8797         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8798         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
8799         .spec_operand = {
8800                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
8801                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
8802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8804         },
8805         {
8806         .description = "class_tid",
8807         .field_bit_size = 8,
8808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
8810         .spec_operand = {
8811                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
8812                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
8813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8815         },
8816         /* class_tid: 14, wh_plus, table: profile_tcam_0 */
8817         {
8818         .description = "l4_hdr_is_udp_tcp",
8819         .field_bit_size = 1,
8820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8822         },
8823         {
8824         .description = "l4_hdr_type",
8825         .field_bit_size = 4,
8826         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8827         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8828                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8830         .spec_operand = {
8831                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
8832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8833                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8834         },
8835         {
8836         .description = "l4_hdr_error",
8837         .field_bit_size = 1,
8838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8839         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8840                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8841         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8842         },
8843         {
8844         .description = "l4_hdr_valid",
8845         .field_bit_size = 1,
8846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8847         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8848                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8850         .spec_operand = {
8851                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
8852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8854         },
8855         {
8856         .description = "l3_ipv6_cmp_dst",
8857         .field_bit_size = 1,
8858         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8860         },
8861         {
8862         .description = "l3_ipv6_cmp_src",
8863         .field_bit_size = 1,
8864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8866         },
8867         {
8868         .description = "l3_hdr_isIP",
8869         .field_bit_size = 1,
8870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8872         },
8873         {
8874         .description = "l3_hdr_type",
8875         .field_bit_size = 4,
8876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8880         .spec_operand = {
8881                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
8882                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8884         },
8885         {
8886         .description = "l3_hdr_error",
8887         .field_bit_size = 1,
8888         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8889         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8890                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8891         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8892         },
8893         {
8894         .description = "l3_hdr_valid",
8895         .field_bit_size = 1,
8896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8897         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8898                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8900         .spec_operand = {
8901                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
8902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8904         },
8905         {
8906         .description = "l2_two_vtags",
8907         .field_bit_size = 1,
8908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8910         },
8911         {
8912         .description = "l2_vtag_present",
8913         .field_bit_size = 1,
8914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8916         },
8917         {
8918         .description = "l2_uc_mc_bc",
8919         .field_bit_size = 2,
8920         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8921         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8922                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8924         },
8925         {
8926         .description = "l2_hdr_type",
8927         .field_bit_size = 2,
8928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8929         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8930                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8931         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8932         },
8933         {
8934         .description = "l2_hdr_error",
8935         .field_bit_size = 1,
8936         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8937         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8938                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8939         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8940         },
8941         {
8942         .description = "l2_hdr_valid",
8943         .field_bit_size = 1,
8944         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8945         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8946                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8947         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8948         .spec_operand = {
8949                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
8950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8951                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
8952         },
8953         {
8954         .description = "tun_hdr_flags",
8955         .field_bit_size = 3,
8956         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8957         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8958         },
8959         {
8960         .description = "tun_hdr_type",
8961         .field_bit_size = 4,
8962         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8963         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8964         },
8965         {
8966         .description = "tun_hdr_error",
8967         .field_bit_size = 1,
8968         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8970         },
8971         {
8972         .description = "tun_hdr_valid",
8973         .field_bit_size = 1,
8974         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
8975         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
8976                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
8977         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8978         },
8979         {
8980         .description = "tl4_hdr_is_udp_tcp",
8981         .field_bit_size = 1,
8982         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8983         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8984         },
8985         {
8986         .description = "tl4_hdr_type",
8987         .field_bit_size = 4,
8988         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8990         },
8991         {
8992         .description = "tl4_hdr_error",
8993         .field_bit_size = 1,
8994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
8995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
8996         },
8997         {
8998         .description = "tl4_hdr_valid",
8999         .field_bit_size = 1,
9000         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9001         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9002                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9003         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9004         },
9005         {
9006         .description = "tl3_ipv6_cmp_dst",
9007         .field_bit_size = 1,
9008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9010         },
9011         {
9012         .description = "tl3_ipv6_cmp_src",
9013         .field_bit_size = 1,
9014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9016         },
9017         {
9018         .description = "tl3_hdr_isIP",
9019         .field_bit_size = 1,
9020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9022         },
9023         {
9024         .description = "tl3_hdr_type",
9025         .field_bit_size = 4,
9026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9028         },
9029         {
9030         .description = "tl3_hdr_error",
9031         .field_bit_size = 1,
9032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9034         },
9035         {
9036         .description = "tl3_hdr_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_ZERO
9042         },
9043         {
9044         .description = "tl2_two_vtags",
9045         .field_bit_size = 1,
9046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9048         },
9049         {
9050         .description = "tl2_vtag_present",
9051         .field_bit_size = 1,
9052         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9053         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9054         },
9055         {
9056         .description = "tl2_uc_mc_bc",
9057         .field_bit_size = 2,
9058         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9059         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9060         },
9061         {
9062         .description = "tl2_hdr_type",
9063         .field_bit_size = 2,
9064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9066         },
9067         {
9068         .description = "tl2_hdr_valid",
9069         .field_bit_size = 1,
9070         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9071         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9072                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9073         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9074         },
9075         {
9076         .description = "hrec_next",
9077         .field_bit_size = 1,
9078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9080         },
9081         {
9082         .description = "reserved",
9083         .field_bit_size = 9,
9084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9086         },
9087         {
9088         .description = "prof_func_id",
9089         .field_bit_size = 7,
9090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9091         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9092                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9093         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9094         .spec_operand = {
9095                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9096                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9098                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9099         },
9100         {
9101         .description = "agg_error",
9102         .field_bit_size = 1,
9103         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9104         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9105         },
9106         {
9107         .description = "recycle_cnt",
9108         .field_bit_size = 2,
9109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9110         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9111                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9113         },
9114         {
9115         .description = "pkt_type_0",
9116         .field_bit_size = 2,
9117         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9118         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9119         },
9120         {
9121         .description = "pkt_type_1",
9122         .field_bit_size = 2,
9123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9124         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9125                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9126         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9127         },
9128         {
9129         .description = "valid",
9130         .field_bit_size = 1,
9131         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9132         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9133                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9134         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9135         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9137         },
9138         /* class_tid: 14, wh_plus, table: ext_em_0 */
9139         {
9140         .description = "spare",
9141         .field_bit_size = 59,
9142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9143         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9144         },
9145         {
9146         .description = "local_cos",
9147         .field_bit_size = 3,
9148         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9149         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9150         },
9151         {
9152         .description = "l4_dst_port",
9153         .field_bit_size = 16,
9154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9156         .spec_operand = {
9157                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9158                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9160                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9161         },
9162         {
9163         .description = "l4_src_port",
9164         .field_bit_size = 16,
9165         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9166         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9167         .spec_operand = {
9168                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9169                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9170                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9171                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9172         },
9173         {
9174         .description = "ip_proto",
9175         .field_bit_size = 8,
9176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9178         .spec_operand = {
9179                 BNXT_ULP_SYM_IP_PROTO_UDP,
9180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9181                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9182         },
9183         {
9184         .description = "ipv6_dst_addr",
9185         .field_bit_size = 128,
9186         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9188         .spec_operand = {
9189                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9190                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9193         },
9194         {
9195         .description = "ipv6_src_addr",
9196         .field_bit_size = 128,
9197         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9198         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9199         .spec_operand = {
9200                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9201                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9204         },
9205         {
9206         .description = "l2_src_mac",
9207         .field_bit_size = 48,
9208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9210         },
9211         {
9212         .description = "tun_id",
9213         .field_bit_size = 24,
9214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9215         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9216         },
9217         {
9218         .description = "l2_cntxt_id",
9219         .field_bit_size = 10,
9220         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9221         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9222         .spec_operand = {
9223                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9224                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9225                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9227         },
9228         {
9229         .description = "em_profile_id",
9230         .field_bit_size = 8,
9231         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9233         .spec_operand = {
9234                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9235                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9238         },
9239         /* class_tid: 14, wh_plus, table: int_em_0 */
9240         {
9241         .description = "spare",
9242         .field_bit_size = 3,
9243         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9245         },
9246         {
9247         .description = "local_cos",
9248         .field_bit_size = 3,
9249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9251         },
9252         {
9253         .description = "l4_dst_port",
9254         .field_bit_size = 16,
9255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9257         .spec_operand = {
9258                 (BNXT_ULP_HF14_IDX_O_UDP_DST_PORT >> 8) & 0xff,
9259                 BNXT_ULP_HF14_IDX_O_UDP_DST_PORT & 0xff,
9260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9261                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9262         },
9263         {
9264         .description = "l4_src_port",
9265         .field_bit_size = 16,
9266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9268         .spec_operand = {
9269                 (BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
9270                 BNXT_ULP_HF14_IDX_O_UDP_SRC_PORT & 0xff,
9271                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9273         },
9274         {
9275         .description = "ip_proto",
9276         .field_bit_size = 8,
9277         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9278         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9279         .spec_operand = {
9280                 BNXT_ULP_SYM_IP_PROTO_UDP,
9281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9283         },
9284         {
9285         .description = "ipv6_dst_addr",
9286         .field_bit_size = 128,
9287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9289         .spec_operand = {
9290                 (BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9291                 BNXT_ULP_HF14_IDX_O_IPV6_DST_ADDR & 0xff,
9292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9293                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9294         },
9295         {
9296         .description = "ipv6_src_addr",
9297         .field_bit_size = 128,
9298         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9299         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9300         .spec_operand = {
9301                 (BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9302                 BNXT_ULP_HF14_IDX_O_IPV6_SRC_ADDR & 0xff,
9303                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9304                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9305         },
9306         {
9307         .description = "l2_src_mac",
9308         .field_bit_size = 48,
9309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9311         },
9312         {
9313         .description = "tun_id",
9314         .field_bit_size = 24,
9315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9317         },
9318         {
9319         .description = "l2_cntxt_id",
9320         .field_bit_size = 10,
9321         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9323         .spec_operand = {
9324                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9325                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9328         },
9329         {
9330         .description = "em_profile_id",
9331         .field_bit_size = 8,
9332         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9333         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9334         .spec_operand = {
9335                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9336                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9337                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9339         },
9340         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
9341         {
9342         .description = "l2_ivlan_vid",
9343         .field_bit_size = 12,
9344         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9345         .mask_operand = {
9346                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9347                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9348                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9349                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9350         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9351         .spec_operand = {
9352                 (BNXT_ULP_HF15_IDX_OO_VLAN_VID >> 8) & 0xff,
9353                 BNXT_ULP_HF15_IDX_OO_VLAN_VID & 0xff,
9354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9356         },
9357         {
9358         .description = "l2_ovlan_vid",
9359         .field_bit_size = 12,
9360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9362         },
9363         {
9364         .description = "mac0_l2_addr",
9365         .field_bit_size = 48,
9366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9367         .mask_operand = {
9368                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9369                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9373         .spec_operand = {
9374                 (BNXT_ULP_HF15_IDX_O_ETH_DMAC >> 8) & 0xff,
9375                 BNXT_ULP_HF15_IDX_O_ETH_DMAC & 0xff,
9376                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9377                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9378         },
9379         {
9380         .description = "svif",
9381         .field_bit_size = 8,
9382         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9383         .mask_operand = {
9384                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9385                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9386                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9387                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
9388         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9389         .spec_operand = {
9390                 (BNXT_ULP_HF15_IDX_SVIF_INDEX >> 8) & 0xff,
9391                 BNXT_ULP_HF15_IDX_SVIF_INDEX & 0xff,
9392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9394         },
9395         {
9396         .description = "sparif",
9397         .field_bit_size = 4,
9398         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9399         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9400         },
9401         {
9402         .description = "tl2_ivlan_vid",
9403         .field_bit_size = 12,
9404         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9406         },
9407         {
9408         .description = "tl2_ovlan_vid",
9409         .field_bit_size = 12,
9410         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9412         },
9413         {
9414         .description = "mac1_tl2_addr",
9415         .field_bit_size = 48,
9416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9418         },
9419         {
9420         .description = "l2_num_vtags",
9421         .field_bit_size = 2,
9422         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9423         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9424                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9425         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
9426         .spec_operand = {
9427                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
9428                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
9429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9430                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9431         },
9432         {
9433         .description = "tl2_num_vtags",
9434         .field_bit_size = 2,
9435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9437         },
9438         {
9439         .description = "tun_hdr_type",
9440         .field_bit_size = 4,
9441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9443         },
9444         {
9445         .description = "key_type",
9446         .field_bit_size = 2,
9447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9448         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9449                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9450         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9451         },
9452         {
9453         .description = "valid",
9454         .field_bit_size = 1,
9455         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9456         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9457                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9458         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9459         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9461         },
9462         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
9463         {
9464         .description = "recycle",
9465         .field_bit_size = 1,
9466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9468         },
9469         {
9470         .description = "prof_func_id",
9471         .field_bit_size = 7,
9472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9474         .spec_operand = {
9475                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9476                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9479         },
9480         {
9481         .description = "class_tid",
9482         .field_bit_size = 8,
9483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9484         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9485         .spec_operand = {
9486                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
9487                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
9488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9489                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9490         },
9491         /* class_tid: 15, wh_plus, table: profile_tcam_0 */
9492         {
9493         .description = "l4_hdr_is_udp_tcp",
9494         .field_bit_size = 1,
9495         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9497         },
9498         {
9499         .description = "l4_hdr_type",
9500         .field_bit_size = 4,
9501         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9502         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9503                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9504         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9505         },
9506         {
9507         .description = "l4_hdr_error",
9508         .field_bit_size = 1,
9509         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9510         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9511                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9513         },
9514         {
9515         .description = "l4_hdr_valid",
9516         .field_bit_size = 1,
9517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9518         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9519                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9521         .spec_operand = {
9522                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
9523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9525         },
9526         {
9527         .description = "l3_ipv6_cmp_dst",
9528         .field_bit_size = 1,
9529         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9530         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9531         },
9532         {
9533         .description = "l3_ipv6_cmp_src",
9534         .field_bit_size = 1,
9535         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9537         },
9538         {
9539         .description = "l3_hdr_isIP",
9540         .field_bit_size = 1,
9541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9542         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9543         },
9544         {
9545         .description = "l3_hdr_type",
9546         .field_bit_size = 4,
9547         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9548         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9549                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9550         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9551         .spec_operand = {
9552                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
9553                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9554                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9555         },
9556         {
9557         .description = "l3_hdr_error",
9558         .field_bit_size = 1,
9559         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9560         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9561                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9563         },
9564         {
9565         .description = "l3_hdr_valid",
9566         .field_bit_size = 1,
9567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9568         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9569                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9570         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9571         .spec_operand = {
9572                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
9573                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9574                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9575         },
9576         {
9577         .description = "l2_two_vtags",
9578         .field_bit_size = 1,
9579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9581         },
9582         {
9583         .description = "l2_vtag_present",
9584         .field_bit_size = 1,
9585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9587         },
9588         {
9589         .description = "l2_uc_mc_bc",
9590         .field_bit_size = 2,
9591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9592         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9593                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9594         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9595         },
9596         {
9597         .description = "l2_hdr_type",
9598         .field_bit_size = 2,
9599         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9600         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9601                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9603         },
9604         {
9605         .description = "l2_hdr_error",
9606         .field_bit_size = 1,
9607         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9608         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9609                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9610         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9611         },
9612         {
9613         .description = "l2_hdr_valid",
9614         .field_bit_size = 1,
9615         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9616         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9617                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9619         .spec_operand = {
9620                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
9621                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9622                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9623         },
9624         {
9625         .description = "tun_hdr_flags",
9626         .field_bit_size = 3,
9627         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9629         },
9630         {
9631         .description = "tun_hdr_type",
9632         .field_bit_size = 4,
9633         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9634         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9635         },
9636         {
9637         .description = "tun_hdr_error",
9638         .field_bit_size = 1,
9639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9641         },
9642         {
9643         .description = "tun_hdr_valid",
9644         .field_bit_size = 1,
9645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9646         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9647                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9648         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9649         },
9650         {
9651         .description = "tl4_hdr_is_udp_tcp",
9652         .field_bit_size = 1,
9653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9655         },
9656         {
9657         .description = "tl4_hdr_type",
9658         .field_bit_size = 4,
9659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9661         },
9662         {
9663         .description = "tl4_hdr_error",
9664         .field_bit_size = 1,
9665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9666         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9667         },
9668         {
9669         .description = "tl4_hdr_valid",
9670         .field_bit_size = 1,
9671         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9672         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9673                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9674         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9675         },
9676         {
9677         .description = "tl3_ipv6_cmp_dst",
9678         .field_bit_size = 1,
9679         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9680         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9681         },
9682         {
9683         .description = "tl3_ipv6_cmp_src",
9684         .field_bit_size = 1,
9685         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9686         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9687         },
9688         {
9689         .description = "tl3_hdr_isIP",
9690         .field_bit_size = 1,
9691         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9692         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9693         },
9694         {
9695         .description = "tl3_hdr_type",
9696         .field_bit_size = 4,
9697         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9698         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9699         },
9700         {
9701         .description = "tl3_hdr_error",
9702         .field_bit_size = 1,
9703         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9705         },
9706         {
9707         .description = "tl3_hdr_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_ZERO
9713         },
9714         {
9715         .description = "tl2_two_vtags",
9716         .field_bit_size = 1,
9717         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9718         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9719         },
9720         {
9721         .description = "tl2_vtag_present",
9722         .field_bit_size = 1,
9723         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9724         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9725         },
9726         {
9727         .description = "tl2_uc_mc_bc",
9728         .field_bit_size = 2,
9729         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9730         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9731         },
9732         {
9733         .description = "tl2_hdr_type",
9734         .field_bit_size = 2,
9735         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9736         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9737         },
9738         {
9739         .description = "tl2_hdr_valid",
9740         .field_bit_size = 1,
9741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9742         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9743                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9745         },
9746         {
9747         .description = "hrec_next",
9748         .field_bit_size = 1,
9749         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9751         },
9752         {
9753         .description = "reserved",
9754         .field_bit_size = 9,
9755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9757         },
9758         {
9759         .description = "prof_func_id",
9760         .field_bit_size = 7,
9761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9762         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9763                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9764         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
9765         .spec_operand = {
9766                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
9767                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
9768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9769                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9770         },
9771         {
9772         .description = "agg_error",
9773         .field_bit_size = 1,
9774         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9776         },
9777         {
9778         .description = "recycle_cnt",
9779         .field_bit_size = 2,
9780         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9781         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9782                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9784         },
9785         {
9786         .description = "pkt_type_0",
9787         .field_bit_size = 2,
9788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9790         },
9791         {
9792         .description = "pkt_type_1",
9793         .field_bit_size = 2,
9794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9795         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9796                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9798         },
9799         {
9800         .description = "valid",
9801         .field_bit_size = 1,
9802         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9803         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9804                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
9805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9806         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
9807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9808         },
9809         /* class_tid: 15, wh_plus, table: ext_em_0 */
9810         {
9811         .description = "spare",
9812         .field_bit_size = 59,
9813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9815         },
9816         {
9817         .description = "local_cos",
9818         .field_bit_size = 3,
9819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9821         },
9822         {
9823         .description = "l4_dst_port",
9824         .field_bit_size = 16,
9825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9827         .spec_operand = {
9828                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9829                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9832         },
9833         {
9834         .description = "l4_src_port",
9835         .field_bit_size = 16,
9836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9838         .spec_operand = {
9839                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9840                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9843         },
9844         {
9845         .description = "ip_proto",
9846         .field_bit_size = 8,
9847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9849         .spec_operand = {
9850                 BNXT_ULP_SYM_IP_PROTO_TCP,
9851                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9853         },
9854         {
9855         .description = "ipv6_dst_addr",
9856         .field_bit_size = 128,
9857         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9858         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9859         .spec_operand = {
9860                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9861                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9862                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9863                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9864         },
9865         {
9866         .description = "ipv6_src_addr",
9867         .field_bit_size = 128,
9868         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9869         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9870         .spec_operand = {
9871                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9872                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9874                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9875         },
9876         {
9877         .description = "l2_src_mac",
9878         .field_bit_size = 48,
9879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9881         },
9882         {
9883         .description = "tun_id",
9884         .field_bit_size = 24,
9885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9887         },
9888         {
9889         .description = "l2_cntxt_id",
9890         .field_bit_size = 10,
9891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9893         .spec_operand = {
9894                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9895                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9896                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9897                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9898         },
9899         {
9900         .description = "em_profile_id",
9901         .field_bit_size = 8,
9902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9904         .spec_operand = {
9905                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
9906                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
9907                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9909         },
9910         /* class_tid: 15, wh_plus, table: int_em_0 */
9911         {
9912         .description = "spare",
9913         .field_bit_size = 3,
9914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9915         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9916         },
9917         {
9918         .description = "local_cos",
9919         .field_bit_size = 3,
9920         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9921         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9922         },
9923         {
9924         .description = "l4_dst_port",
9925         .field_bit_size = 16,
9926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9928         .spec_operand = {
9929                 (BNXT_ULP_HF15_IDX_O_TCP_DST_PORT >> 8) & 0xff,
9930                 BNXT_ULP_HF15_IDX_O_TCP_DST_PORT & 0xff,
9931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9933         },
9934         {
9935         .description = "l4_src_port",
9936         .field_bit_size = 16,
9937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9939         .spec_operand = {
9940                 (BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
9941                 BNXT_ULP_HF15_IDX_O_TCP_SRC_PORT & 0xff,
9942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9944         },
9945         {
9946         .description = "ip_proto",
9947         .field_bit_size = 8,
9948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
9950         .spec_operand = {
9951                 BNXT_ULP_SYM_IP_PROTO_TCP,
9952                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9953                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9954         },
9955         {
9956         .description = "ipv6_dst_addr",
9957         .field_bit_size = 128,
9958         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9960         .spec_operand = {
9961                 (BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
9962                 BNXT_ULP_HF15_IDX_O_IPV6_DST_ADDR & 0xff,
9963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9964                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9965         },
9966         {
9967         .description = "ipv6_src_addr",
9968         .field_bit_size = 128,
9969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
9971         .spec_operand = {
9972                 (BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
9973                 BNXT_ULP_HF15_IDX_O_IPV6_SRC_ADDR & 0xff,
9974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9976         },
9977         {
9978         .description = "l2_src_mac",
9979         .field_bit_size = 48,
9980         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9981         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9982         },
9983         {
9984         .description = "tun_id",
9985         .field_bit_size = 24,
9986         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9987         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
9988         },
9989         {
9990         .description = "l2_cntxt_id",
9991         .field_bit_size = 10,
9992         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
9993         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
9994         .spec_operand = {
9995                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
9996                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
9997                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9998                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
9999         },
10000         {
10001         .description = "em_profile_id",
10002         .field_bit_size = 8,
10003         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10004         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10005         .spec_operand = {
10006                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10007                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10008                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10010         },
10011         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
10012         {
10013         .description = "l2_ivlan_vid",
10014         .field_bit_size = 12,
10015         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10017         },
10018         {
10019         .description = "l2_ovlan_vid",
10020         .field_bit_size = 12,
10021         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10022         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10023         },
10024         {
10025         .description = "mac0_l2_dst",
10026         .field_bit_size = 48,
10027         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10028         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10029                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10030         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10031         .spec_operand = {
10032                 (BNXT_ULP_HF16_IDX_O_ETH_DMAC >> 8) & 0xff,
10033                 BNXT_ULP_HF16_IDX_O_ETH_DMAC & 0xff,
10034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10036         },
10037         {
10038         .description = "svif",
10039         .field_bit_size = 8,
10040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10041         .mask_operand = {
10042                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
10043                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
10044                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10045                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10046         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10047         .spec_operand = {
10048                 (BNXT_ULP_HF16_IDX_SVIF_INDEX >> 8) & 0xff,
10049                 BNXT_ULP_HF16_IDX_SVIF_INDEX & 0xff,
10050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10051                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10052         },
10053         {
10054         .description = "sparif",
10055         .field_bit_size = 4,
10056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10058         },
10059         {
10060         .description = "tl2_ivlan_vid",
10061         .field_bit_size = 12,
10062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10063         .mask_operand = {
10064                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
10065                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
10066                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10068         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10069         .spec_operand = {
10070                 (BNXT_ULP_HF16_IDX_OO_VLAN_VID >> 8) & 0xff,
10071                 BNXT_ULP_HF16_IDX_OO_VLAN_VID & 0xff,
10072                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10073                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10074         },
10075         {
10076         .description = "tl2_ovlan_vid",
10077         .field_bit_size = 12,
10078         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10079         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10080         },
10081         {
10082         .description = "mac1_tl2_dst",
10083         .field_bit_size = 48,
10084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10086         },
10087         {
10088         .description = "l2_num_vtags",
10089         .field_bit_size = 2,
10090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10092         },
10093         {
10094         .description = "tl2_num_vtags",
10095         .field_bit_size = 2,
10096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10097         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10098                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10100         .spec_operand = {
10101                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10102                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10103                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10104                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10105         },
10106         {
10107         .description = "tun_hdr_type",
10108         .field_bit_size = 4,
10109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10110         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10111                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10113         },
10114         {
10115         .description = "key_type",
10116         .field_bit_size = 2,
10117         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10118         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10119         },
10120         {
10121         .description = "valid",
10122         .field_bit_size = 1,
10123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10124         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10125                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10126         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10127         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10129         },
10130         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
10131         {
10132         .description = "recycle",
10133         .field_bit_size = 1,
10134         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10135         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10136         },
10137         {
10138         .description = "prof_func_id",
10139         .field_bit_size = 7,
10140         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10141         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10142         .spec_operand = {
10143                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10144                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10147         },
10148         {
10149         .description = "class_tid",
10150         .field_bit_size = 8,
10151         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10152         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10153         .spec_operand = {
10154                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10155                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10157                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10158         },
10159         /* class_tid: 16, wh_plus, table: profile_tcam_0 */
10160         {
10161         .description = "l4_hdr_is_udp_tcp",
10162         .field_bit_size = 1,
10163         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10164         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10165         },
10166         {
10167         .description = "l4_hdr_type",
10168         .field_bit_size = 4,
10169         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10170         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10171         },
10172         {
10173         .description = "l4_hdr_error",
10174         .field_bit_size = 1,
10175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10177         },
10178         {
10179         .description = "l4_hdr_valid",
10180         .field_bit_size = 1,
10181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10182         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10183         },
10184         {
10185         .description = "l3_ipv6_cmp_dst",
10186         .field_bit_size = 1,
10187         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10188         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10189         },
10190         {
10191         .description = "l3_ipv6_cmp_src",
10192         .field_bit_size = 1,
10193         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10194         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10195         },
10196         {
10197         .description = "l3_hdr_isIP",
10198         .field_bit_size = 1,
10199         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10200         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10201         },
10202         {
10203         .description = "l3_hdr_type",
10204         .field_bit_size = 4,
10205         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10206         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10207         },
10208         {
10209         .description = "l3_hdr_error",
10210         .field_bit_size = 1,
10211         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10212         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10213         },
10214         {
10215         .description = "l3_hdr_valid",
10216         .field_bit_size = 1,
10217         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10218         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10219         },
10220         {
10221         .description = "l2_two_vtags",
10222         .field_bit_size = 1,
10223         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10224         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10225         },
10226         {
10227         .description = "l2_vtag_present",
10228         .field_bit_size = 1,
10229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10230         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10231         },
10232         {
10233         .description = "l2_uc_mc_bc",
10234         .field_bit_size = 2,
10235         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10236         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10237         },
10238         {
10239         .description = "l2_hdr_type",
10240         .field_bit_size = 2,
10241         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10242         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10243         },
10244         {
10245         .description = "l2_hdr_error",
10246         .field_bit_size = 1,
10247         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10248         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10249         },
10250         {
10251         .description = "l2_hdr_valid",
10252         .field_bit_size = 1,
10253         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10254         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10255         },
10256         {
10257         .description = "tun_hdr_flags",
10258         .field_bit_size = 3,
10259         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10260         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10261         },
10262         {
10263         .description = "tun_hdr_type",
10264         .field_bit_size = 4,
10265         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10266         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10267                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10268         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10269         },
10270         {
10271         .description = "tun_hdr_error",
10272         .field_bit_size = 1,
10273         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10274         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10275                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10277         },
10278         {
10279         .description = "tun_hdr_valid",
10280         .field_bit_size = 1,
10281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10282         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10283                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10284         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10285         .spec_operand = {
10286                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10287                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10289         },
10290         {
10291         .description = "tl4_hdr_is_udp_tcp",
10292         .field_bit_size = 1,
10293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10295         },
10296         {
10297         .description = "tl4_hdr_type",
10298         .field_bit_size = 4,
10299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10300         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10301                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10303         .spec_operand = {
10304                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10305                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10307         },
10308         {
10309         .description = "tl4_hdr_error",
10310         .field_bit_size = 1,
10311         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10312         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10313                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10315         },
10316         {
10317         .description = "tl4_hdr_valid",
10318         .field_bit_size = 1,
10319         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10320         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10321                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10322         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10323         .spec_operand = {
10324                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10326                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10327         },
10328         {
10329         .description = "tl3_ipv6_cmp_dst",
10330         .field_bit_size = 1,
10331         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10332         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10333         },
10334         {
10335         .description = "tl3_ipv6_cmp_src",
10336         .field_bit_size = 1,
10337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10338         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10339         },
10340         {
10341         .description = "tl3_hdr_isIP",
10342         .field_bit_size = 1,
10343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10345         },
10346         {
10347         .description = "tl3_hdr_type",
10348         .field_bit_size = 4,
10349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10350         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10351                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10353         },
10354         {
10355         .description = "tl3_hdr_error",
10356         .field_bit_size = 1,
10357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10358         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10359                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10360         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10361         },
10362         {
10363         .description = "tl3_hdr_valid",
10364         .field_bit_size = 1,
10365         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10366         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10367                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10368         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10369         .spec_operand = {
10370                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
10371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10373         },
10374         {
10375         .description = "tl2_two_vtags",
10376         .field_bit_size = 1,
10377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10379         },
10380         {
10381         .description = "tl2_vtag_present",
10382         .field_bit_size = 1,
10383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10384         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10385         },
10386         {
10387         .description = "tl2_uc_mc_bc",
10388         .field_bit_size = 2,
10389         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10390         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10391                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10392         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10393         },
10394         {
10395         .description = "tl2_hdr_type",
10396         .field_bit_size = 2,
10397         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10398         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10399                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10400         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10401         },
10402         {
10403         .description = "tl2_hdr_valid",
10404         .field_bit_size = 1,
10405         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10406         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10407                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10408         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10409         .spec_operand = {
10410                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
10411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10413         },
10414         {
10415         .description = "hrec_next",
10416         .field_bit_size = 1,
10417         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10418         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10419         },
10420         {
10421         .description = "reserved",
10422         .field_bit_size = 9,
10423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10424         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10425         },
10426         {
10427         .description = "prof_func_id",
10428         .field_bit_size = 7,
10429         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10430         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10431                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10432         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10433         .spec_operand = {
10434                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10435                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10436                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10437                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10438         },
10439         {
10440         .description = "agg_error",
10441         .field_bit_size = 1,
10442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10444         },
10445         {
10446         .description = "recycle_cnt",
10447         .field_bit_size = 2,
10448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10449         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10450                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10452         },
10453         {
10454         .description = "pkt_type_0",
10455         .field_bit_size = 2,
10456         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10458         },
10459         {
10460         .description = "pkt_type_1",
10461         .field_bit_size = 2,
10462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10463         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10464                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10465         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10466         },
10467         {
10468         .description = "valid",
10469         .field_bit_size = 1,
10470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10471         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10472                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10474         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10476         },
10477         /* class_tid: 16, wh_plus, table: ext_em_0 */
10478         {
10479         .description = "spare",
10480         .field_bit_size = 251,
10481         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10483         },
10484         {
10485         .description = "local_cos",
10486         .field_bit_size = 3,
10487         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10488         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10489         },
10490         {
10491         .description = "t_l4_dst_port",
10492         .field_bit_size = 16,
10493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10495         },
10496         {
10497         .description = "t_l4_src_port",
10498         .field_bit_size = 16,
10499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10500         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10501         },
10502         {
10503         .description = "t_ip_proto",
10504         .field_bit_size = 8,
10505         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10507         .spec_operand = {
10508                 BNXT_ULP_SYM_IP_PROTO_UDP,
10509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10511         },
10512         {
10513         .description = "t_ipv4_dst_addr",
10514         .field_bit_size = 32,
10515         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10516         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10517         .spec_operand = {
10518                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10519                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10522         },
10523         {
10524         .description = "t_ipv4_src_addr",
10525         .field_bit_size = 32,
10526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10527         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10528         },
10529         {
10530         .description = "t_l2_src_mac",
10531         .field_bit_size = 48,
10532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10534         },
10535         {
10536         .description = "tun_id",
10537         .field_bit_size = 24,
10538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10539         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10540         },
10541         {
10542         .description = "l2_cntxt_id",
10543         .field_bit_size = 10,
10544         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10545         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10546         .spec_operand = {
10547                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10548                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10549                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10551         },
10552         {
10553         .description = "em_profile_id",
10554         .field_bit_size = 8,
10555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10557         .spec_operand = {
10558                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10559                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10562         },
10563         /* class_tid: 16, wh_plus, table: int_em_0 */
10564         {
10565         .description = "spare",
10566         .field_bit_size = 3,
10567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10569         },
10570         {
10571         .description = "local_cos",
10572         .field_bit_size = 3,
10573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10575         },
10576         {
10577         .description = "t_l4_dst_port",
10578         .field_bit_size = 16,
10579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10581         },
10582         {
10583         .description = "t_l4_src_port",
10584         .field_bit_size = 16,
10585         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10586         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10587         },
10588         {
10589         .description = "t_ip_proto",
10590         .field_bit_size = 8,
10591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10593         .spec_operand = {
10594                 BNXT_ULP_SYM_IP_PROTO_UDP,
10595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10597         },
10598         {
10599         .description = "t_ipv4_dst_addr",
10600         .field_bit_size = 32,
10601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10603         .spec_operand = {
10604                 (BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
10605                 BNXT_ULP_HF16_IDX_O_IPV4_DST_ADDR & 0xff,
10606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10608         },
10609         {
10610         .description = "t_ipv4_src_addr",
10611         .field_bit_size = 32,
10612         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10613         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10614         },
10615         {
10616         .description = "t_l2_src_mac",
10617         .field_bit_size = 48,
10618         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10619         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10620         },
10621         {
10622         .description = "tun_id",
10623         .field_bit_size = 24,
10624         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10625         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10626         },
10627         {
10628         .description = "l2_cntxt_id",
10629         .field_bit_size = 10,
10630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10631         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10632         .spec_operand = {
10633                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
10634                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
10635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10637         },
10638         {
10639         .description = "em_profile_id",
10640         .field_bit_size = 8,
10641         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10642         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10643         .spec_operand = {
10644                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
10645                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
10646                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10647                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10648         },
10649         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
10650         {
10651         .description = "l2_ivlan_vid",
10652         .field_bit_size = 12,
10653         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10654         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10655         },
10656         {
10657         .description = "l2_ovlan_vid",
10658         .field_bit_size = 12,
10659         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10661         },
10662         {
10663         .description = "mac0_l2_dst",
10664         .field_bit_size = 48,
10665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10666         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10667                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10668         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10669         .spec_operand = {
10670                 (BNXT_ULP_HF17_IDX_O_ETH_DMAC >> 8) & 0xff,
10671                 BNXT_ULP_HF17_IDX_O_ETH_DMAC & 0xff,
10672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10674         },
10675         {
10676         .description = "svif",
10677         .field_bit_size = 8,
10678         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10679         .mask_operand = {
10680                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10681                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10683                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10685         .spec_operand = {
10686                 (BNXT_ULP_HF17_IDX_SVIF_INDEX >> 8) & 0xff,
10687                 BNXT_ULP_HF17_IDX_SVIF_INDEX & 0xff,
10688                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10689                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10690         },
10691         {
10692         .description = "sparif",
10693         .field_bit_size = 4,
10694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10696         },
10697         {
10698         .description = "tl2_ivlan_vid",
10699         .field_bit_size = 12,
10700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10701         .mask_operand = {
10702                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10703                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10704                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10705                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
10706         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
10707         .spec_operand = {
10708                 (BNXT_ULP_HF17_IDX_OO_VLAN_VID >> 8) & 0xff,
10709                 BNXT_ULP_HF17_IDX_OO_VLAN_VID & 0xff,
10710                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10712         },
10713         {
10714         .description = "tl2_ovlan_vid",
10715         .field_bit_size = 12,
10716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10718         },
10719         {
10720         .description = "mac1_tl2_dst",
10721         .field_bit_size = 48,
10722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10724         },
10725         {
10726         .description = "l2_num_vtags",
10727         .field_bit_size = 2,
10728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10729         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10730         },
10731         {
10732         .description = "tl2_num_vtags",
10733         .field_bit_size = 2,
10734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10735         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10736                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10737         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
10738         .spec_operand = {
10739                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
10740                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
10741                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10742                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10743         },
10744         {
10745         .description = "tun_hdr_type",
10746         .field_bit_size = 4,
10747         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10748         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10749                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10750         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10751         },
10752         {
10753         .description = "key_type",
10754         .field_bit_size = 2,
10755         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10756         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10757         },
10758         {
10759         .description = "valid",
10760         .field_bit_size = 1,
10761         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10762         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10763                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10764         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10765         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
10766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10767         },
10768         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
10769         {
10770         .description = "recycle",
10771         .field_bit_size = 1,
10772         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10773         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10774         },
10775         {
10776         .description = "prof_func_id",
10777         .field_bit_size = 7,
10778         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10779         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
10780         .spec_operand = {
10781                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
10782                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
10783                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10785         },
10786         {
10787         .description = "class_tid",
10788         .field_bit_size = 8,
10789         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10790         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
10791         .spec_operand = {
10792                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
10793                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
10794                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10796         },
10797         /* class_tid: 17, wh_plus, table: profile_tcam_0 */
10798         {
10799         .description = "l4_hdr_is_udp_tcp",
10800         .field_bit_size = 1,
10801         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10802         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10803         },
10804         {
10805         .description = "l4_hdr_type",
10806         .field_bit_size = 4,
10807         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10808         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10809         },
10810         {
10811         .description = "l4_hdr_error",
10812         .field_bit_size = 1,
10813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10814         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10815         },
10816         {
10817         .description = "l4_hdr_valid",
10818         .field_bit_size = 1,
10819         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10820         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10821         },
10822         {
10823         .description = "l3_ipv6_cmp_dst",
10824         .field_bit_size = 1,
10825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10827         },
10828         {
10829         .description = "l3_ipv6_cmp_src",
10830         .field_bit_size = 1,
10831         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10832         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10833         },
10834         {
10835         .description = "l3_hdr_isIP",
10836         .field_bit_size = 1,
10837         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10838         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10839         },
10840         {
10841         .description = "l3_hdr_type",
10842         .field_bit_size = 4,
10843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10844         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10845         },
10846         {
10847         .description = "l3_hdr_error",
10848         .field_bit_size = 1,
10849         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10850         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10851         },
10852         {
10853         .description = "l3_hdr_valid",
10854         .field_bit_size = 1,
10855         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10856         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10857         },
10858         {
10859         .description = "l2_two_vtags",
10860         .field_bit_size = 1,
10861         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10863         },
10864         {
10865         .description = "l2_vtag_present",
10866         .field_bit_size = 1,
10867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10868         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10869         },
10870         {
10871         .description = "l2_uc_mc_bc",
10872         .field_bit_size = 2,
10873         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10874         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10875         },
10876         {
10877         .description = "l2_hdr_type",
10878         .field_bit_size = 2,
10879         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10880         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10881         },
10882         {
10883         .description = "l2_hdr_error",
10884         .field_bit_size = 1,
10885         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10886         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10887         },
10888         {
10889         .description = "l2_hdr_valid",
10890         .field_bit_size = 1,
10891         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10892         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10893         },
10894         {
10895         .description = "tun_hdr_flags",
10896         .field_bit_size = 3,
10897         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10898         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10899         },
10900         {
10901         .description = "tun_hdr_type",
10902         .field_bit_size = 4,
10903         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10904         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10905                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10907         },
10908         {
10909         .description = "tun_hdr_error",
10910         .field_bit_size = 1,
10911         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10912         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10913                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10914         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10915         },
10916         {
10917         .description = "tun_hdr_valid",
10918         .field_bit_size = 1,
10919         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10920         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10921                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10923         .spec_operand = {
10924                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
10925                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10926                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10927         },
10928         {
10929         .description = "tl4_hdr_is_udp_tcp",
10930         .field_bit_size = 1,
10931         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10932         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10933         },
10934         {
10935         .description = "tl4_hdr_type",
10936         .field_bit_size = 4,
10937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10938         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10939                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10940         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10941         .spec_operand = {
10942                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
10943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10945         },
10946         {
10947         .description = "tl4_hdr_error",
10948         .field_bit_size = 1,
10949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10950         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10951                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10952         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10953         },
10954         {
10955         .description = "tl4_hdr_valid",
10956         .field_bit_size = 1,
10957         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10958         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10959                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10960         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10961         .spec_operand = {
10962                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
10963                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10964                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10965         },
10966         {
10967         .description = "tl3_ipv6_cmp_dst",
10968         .field_bit_size = 1,
10969         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10970         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10971         },
10972         {
10973         .description = "tl3_ipv6_cmp_src",
10974         .field_bit_size = 1,
10975         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10976         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10977         },
10978         {
10979         .description = "tl3_hdr_isIP",
10980         .field_bit_size = 1,
10981         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
10982         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
10983         },
10984         {
10985         .description = "tl3_hdr_type",
10986         .field_bit_size = 4,
10987         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10988         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10989                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
10990         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
10991         .spec_operand = {
10992                 BNXT_ULP_SYM_TL3_HDR_TYPE_IPV6,
10993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10994                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
10995         },
10996         {
10997         .description = "tl3_hdr_error",
10998         .field_bit_size = 1,
10999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11000         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11001                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11003         },
11004         {
11005         .description = "tl3_hdr_valid",
11006         .field_bit_size = 1,
11007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11008         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11009                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11011         .spec_operand = {
11012                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
11013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11015         },
11016         {
11017         .description = "tl2_two_vtags",
11018         .field_bit_size = 1,
11019         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11020         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11021         },
11022         {
11023         .description = "tl2_vtag_present",
11024         .field_bit_size = 1,
11025         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11026         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11027         },
11028         {
11029         .description = "tl2_uc_mc_bc",
11030         .field_bit_size = 2,
11031         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11032         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11033                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11034         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11035         },
11036         {
11037         .description = "tl2_hdr_type",
11038         .field_bit_size = 2,
11039         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11040         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11041                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11042         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11043         },
11044         {
11045         .description = "tl2_hdr_valid",
11046         .field_bit_size = 1,
11047         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11048         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11049                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11050         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11051         .spec_operand = {
11052                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
11053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11054                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11055         },
11056         {
11057         .description = "hrec_next",
11058         .field_bit_size = 1,
11059         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11060         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11061         },
11062         {
11063         .description = "reserved",
11064         .field_bit_size = 9,
11065         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11066         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11067         },
11068         {
11069         .description = "prof_func_id",
11070         .field_bit_size = 7,
11071         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11072         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11073                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11074         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11075         .spec_operand = {
11076                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11077                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11080         },
11081         {
11082         .description = "agg_error",
11083         .field_bit_size = 1,
11084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11086         },
11087         {
11088         .description = "recycle_cnt",
11089         .field_bit_size = 2,
11090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11091         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11092                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11093         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11094         },
11095         {
11096         .description = "pkt_type_0",
11097         .field_bit_size = 2,
11098         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11100         },
11101         {
11102         .description = "pkt_type_1",
11103         .field_bit_size = 2,
11104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11105         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11106                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11107         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11108         },
11109         {
11110         .description = "valid",
11111         .field_bit_size = 1,
11112         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11113         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11114                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11115         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11116         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11118         },
11119         /* class_tid: 17, wh_plus, table: ext_em_0 */
11120         {
11121         .description = "spare",
11122         .field_bit_size = 59,
11123         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11124         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11125         },
11126         {
11127         .description = "local_cos",
11128         .field_bit_size = 3,
11129         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11130         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11131         },
11132         {
11133         .description = "l4_dst_port",
11134         .field_bit_size = 16,
11135         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11136         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11137         },
11138         {
11139         .description = "l4_src_port",
11140         .field_bit_size = 16,
11141         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11142         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11143         },
11144         {
11145         .description = "ip_proto",
11146         .field_bit_size = 8,
11147         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11148         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11149         .spec_operand = {
11150                 BNXT_ULP_SYM_IP_PROTO_UDP,
11151                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11153         },
11154         {
11155         .description = "ipv6_dst_addr",
11156         .field_bit_size = 128,
11157         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11158         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11159         .spec_operand = {
11160                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11161                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11163                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11164         },
11165         {
11166         .description = "ipv6_src_addr",
11167         .field_bit_size = 128,
11168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11169         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11170         },
11171         {
11172         .description = "l2_src_mac",
11173         .field_bit_size = 48,
11174         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11175         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11176         },
11177         {
11178         .description = "tun_id",
11179         .field_bit_size = 24,
11180         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11181         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11182         },
11183         {
11184         .description = "l2_cntxt_id",
11185         .field_bit_size = 10,
11186         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11188         .spec_operand = {
11189                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11190                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11193         },
11194         {
11195         .description = "em_profile_id",
11196         .field_bit_size = 8,
11197         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11198         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11199         .spec_operand = {
11200                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11201                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11204         },
11205         /* class_tid: 17, wh_plus, table: int_em_0 */
11206         {
11207         .description = "spare",
11208         .field_bit_size = 3,
11209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11211         },
11212         {
11213         .description = "local_cos",
11214         .field_bit_size = 3,
11215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11217         },
11218         {
11219         .description = "l4_dst_port",
11220         .field_bit_size = 16,
11221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11222         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11223         },
11224         {
11225         .description = "l4_src_port",
11226         .field_bit_size = 16,
11227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11228         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11229         },
11230         {
11231         .description = "ip_proto",
11232         .field_bit_size = 8,
11233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11235         .spec_operand = {
11236                 BNXT_ULP_SYM_IP_PROTO_UDP,
11237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11239         },
11240         {
11241         .description = "ipv6_dst_addr",
11242         .field_bit_size = 128,
11243         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11244         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11245         .spec_operand = {
11246                 (BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
11247                 BNXT_ULP_HF17_IDX_O_IPV6_DST_ADDR & 0xff,
11248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11250         },
11251         {
11252         .description = "ipv6_src_addr",
11253         .field_bit_size = 128,
11254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11256         },
11257         {
11258         .description = "l2_src_mac",
11259         .field_bit_size = 48,
11260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11261         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11262         },
11263         {
11264         .description = "tun_id",
11265         .field_bit_size = 24,
11266         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11267         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11268         },
11269         {
11270         .description = "l2_cntxt_id",
11271         .field_bit_size = 10,
11272         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11273         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11274         .spec_operand = {
11275                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11276                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11279         },
11280         {
11281         .description = "em_profile_id",
11282         .field_bit_size = 8,
11283         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11284         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11285         .spec_operand = {
11286                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
11287                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
11288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11290         },
11291         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
11292         {
11293         .description = "l2_ivlan_vid",
11294         .field_bit_size = 12,
11295         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11296         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11297         },
11298         {
11299         .description = "l2_ovlan_vid",
11300         .field_bit_size = 12,
11301         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11303         },
11304         {
11305         .description = "mac0_l2_dst",
11306         .field_bit_size = 48,
11307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11308         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11309                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11311         .spec_operand = {
11312                 (BNXT_ULP_HF18_IDX_O_ETH_DMAC >> 8) & 0xff,
11313                 BNXT_ULP_HF18_IDX_O_ETH_DMAC & 0xff,
11314                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11316         },
11317         {
11318         .description = "svif",
11319         .field_bit_size = 8,
11320         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11321         .mask_operand = {
11322                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11323                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11327         .spec_operand = {
11328                 (BNXT_ULP_HF18_IDX_SVIF_INDEX >> 8) & 0xff,
11329                 BNXT_ULP_HF18_IDX_SVIF_INDEX & 0xff,
11330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11332         },
11333         {
11334         .description = "sparif",
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 = "tl2_ivlan_vid",
11341         .field_bit_size = 12,
11342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11344         },
11345         {
11346         .description = "tl2_ovlan_vid",
11347         .field_bit_size = 12,
11348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11350         },
11351         {
11352         .description = "mac1_tl2_dst",
11353         .field_bit_size = 48,
11354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11356         },
11357         {
11358         .description = "l2_num_vtags",
11359         .field_bit_size = 2,
11360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11362         },
11363         {
11364         .description = "tl2_num_vtags",
11365         .field_bit_size = 2,
11366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11367         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11368                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11370         },
11371         {
11372         .description = "tun_hdr_type",
11373         .field_bit_size = 4,
11374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11375         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11376                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11377         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11378         },
11379         {
11380         .description = "key_type",
11381         .field_bit_size = 2,
11382         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11383         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11384         },
11385         {
11386         .description = "valid",
11387         .field_bit_size = 1,
11388         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11389         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11390                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11392         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11394         },
11395         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
11396         {
11397         .description = "recycle",
11398         .field_bit_size = 1,
11399         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11400         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11401         },
11402         {
11403         .description = "prof_func_id",
11404         .field_bit_size = 7,
11405         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11406         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11407         .spec_operand = {
11408                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11409                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11412         },
11413         {
11414         .description = "class_tid",
11415         .field_bit_size = 8,
11416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11418         },
11419         /* class_tid: 18, wh_plus, table: profile_tcam_0 */
11420         {
11421         .description = "l4_hdr_is_udp_tcp",
11422         .field_bit_size = 1,
11423         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11424         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11425         },
11426         {
11427         .description = "l4_hdr_type",
11428         .field_bit_size = 4,
11429         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11430         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11431         },
11432         {
11433         .description = "l4_hdr_error",
11434         .field_bit_size = 1,
11435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11437         },
11438         {
11439         .description = "l4_hdr_valid",
11440         .field_bit_size = 1,
11441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11443         },
11444         {
11445         .description = "l3_ipv6_cmp_dst",
11446         .field_bit_size = 1,
11447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11449         },
11450         {
11451         .description = "l3_ipv6_cmp_src",
11452         .field_bit_size = 1,
11453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11454         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11455         },
11456         {
11457         .description = "l3_hdr_isIP",
11458         .field_bit_size = 1,
11459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11461         },
11462         {
11463         .description = "l3_hdr_type",
11464         .field_bit_size = 4,
11465         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11466         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11467         },
11468         {
11469         .description = "l3_hdr_error",
11470         .field_bit_size = 1,
11471         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11472         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11473         },
11474         {
11475         .description = "l3_hdr_valid",
11476         .field_bit_size = 1,
11477         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11478         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11479         },
11480         {
11481         .description = "l2_two_vtags",
11482         .field_bit_size = 1,
11483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11484         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11485         },
11486         {
11487         .description = "l2_vtag_present",
11488         .field_bit_size = 1,
11489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11491         },
11492         {
11493         .description = "l2_uc_mc_bc",
11494         .field_bit_size = 2,
11495         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11496         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11497         },
11498         {
11499         .description = "l2_hdr_type",
11500         .field_bit_size = 2,
11501         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11502         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11503         },
11504         {
11505         .description = "l2_hdr_error",
11506         .field_bit_size = 1,
11507         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11508         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11509         },
11510         {
11511         .description = "l2_hdr_valid",
11512         .field_bit_size = 1,
11513         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11514         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11515         },
11516         {
11517         .description = "tun_hdr_flags",
11518         .field_bit_size = 3,
11519         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11520         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11521         },
11522         {
11523         .description = "tun_hdr_type",
11524         .field_bit_size = 4,
11525         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11526         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11527                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11528         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11529         },
11530         {
11531         .description = "tun_hdr_error",
11532         .field_bit_size = 1,
11533         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11534         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11535                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11536         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11537         },
11538         {
11539         .description = "tun_hdr_valid",
11540         .field_bit_size = 1,
11541         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11542         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11543                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11544         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11545         .spec_operand = {
11546                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
11547                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11548                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11549         },
11550         {
11551         .description = "tl4_hdr_is_udp_tcp",
11552         .field_bit_size = 1,
11553         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11554         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11555         },
11556         {
11557         .description = "tl4_hdr_type",
11558         .field_bit_size = 4,
11559         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11560         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11561                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11562         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11563         .spec_operand = {
11564                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
11565                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11567         },
11568         {
11569         .description = "tl4_hdr_error",
11570         .field_bit_size = 1,
11571         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11572         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11573                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11575         },
11576         {
11577         .description = "tl4_hdr_valid",
11578         .field_bit_size = 1,
11579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11580         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11581                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11582         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11583         .spec_operand = {
11584                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
11585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11587         },
11588         {
11589         .description = "tl3_ipv6_cmp_dst",
11590         .field_bit_size = 1,
11591         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11592         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11593         },
11594         {
11595         .description = "tl3_ipv6_cmp_src",
11596         .field_bit_size = 1,
11597         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11598         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11599         },
11600         {
11601         .description = "tl3_hdr_isIP",
11602         .field_bit_size = 1,
11603         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11604         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11605         },
11606         {
11607         .description = "tl3_hdr_type",
11608         .field_bit_size = 4,
11609         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11610         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11611                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11613         },
11614         {
11615         .description = "tl3_hdr_error",
11616         .field_bit_size = 1,
11617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11618         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11619                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11620         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11621         },
11622         {
11623         .description = "tl3_hdr_valid",
11624         .field_bit_size = 1,
11625         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11626         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11627                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11628         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11629         .spec_operand = {
11630                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
11631                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11633         },
11634         {
11635         .description = "tl2_two_vtags",
11636         .field_bit_size = 1,
11637         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11638         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11639         },
11640         {
11641         .description = "tl2_vtag_present",
11642         .field_bit_size = 1,
11643         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11644         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11645         },
11646         {
11647         .description = "tl2_uc_mc_bc",
11648         .field_bit_size = 2,
11649         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11650         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11651                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11652         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11653         },
11654         {
11655         .description = "tl2_hdr_type",
11656         .field_bit_size = 2,
11657         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11658         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11659                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11660         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11661         },
11662         {
11663         .description = "tl2_hdr_valid",
11664         .field_bit_size = 1,
11665         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11666         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11667                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11668         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11669         .spec_operand = {
11670                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
11671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11673         },
11674         {
11675         .description = "hrec_next",
11676         .field_bit_size = 1,
11677         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11678         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11679         },
11680         {
11681         .description = "reserved",
11682         .field_bit_size = 9,
11683         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11684         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11685         },
11686         {
11687         .description = "prof_func_id",
11688         .field_bit_size = 7,
11689         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11690         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11691                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11692         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11693         .spec_operand = {
11694                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11695                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11696                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11697                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11698         },
11699         {
11700         .description = "agg_error",
11701         .field_bit_size = 1,
11702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11703         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11704         },
11705         {
11706         .description = "recycle_cnt",
11707         .field_bit_size = 2,
11708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11709         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11710                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11712         },
11713         {
11714         .description = "pkt_type_0",
11715         .field_bit_size = 2,
11716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11718         },
11719         {
11720         .description = "pkt_type_1",
11721         .field_bit_size = 2,
11722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11723         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11724                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11725         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11726         },
11727         {
11728         .description = "valid",
11729         .field_bit_size = 1,
11730         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11731         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11732                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11734         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11735                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11736         },
11737         /* class_tid: 18, wh_plus, table: wm_0 */
11738         {
11739         .description = "wc_profile_id",
11740         .field_bit_size = 8,
11741         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11742         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11743                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11744         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11745         .spec_operand = {
11746                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
11747                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
11748                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11749                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11750         },
11751         {
11752         .description = "spare",
11753         .field_bit_size = 10,
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_cntxt_id",
11759         .field_bit_size = 10,
11760         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11761         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11762                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
11764         .spec_operand = {
11765                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
11766                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
11767                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11769         },
11770         {
11771         .description = "tun_type",
11772         .field_bit_size = 4,
11773         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11774         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11775                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11776         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11777         },
11778         {
11779         .description = "others",
11780         .field_bit_size = 128,
11781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11783         },
11784         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
11785         {
11786         .description = "l2_ivlan_vid",
11787         .field_bit_size = 12,
11788         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11789         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11790         },
11791         {
11792         .description = "l2_ovlan_vid",
11793         .field_bit_size = 12,
11794         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11795         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11796         },
11797         {
11798         .description = "mac0_l2_dst",
11799         .field_bit_size = 48,
11800         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11801         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11802                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11803         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11804         .spec_operand = {
11805                 (BNXT_ULP_HF19_IDX_O_ETH_DMAC >> 8) & 0xff,
11806                 BNXT_ULP_HF19_IDX_O_ETH_DMAC & 0xff,
11807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11809         },
11810         {
11811         .description = "svif",
11812         .field_bit_size = 8,
11813         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11814         .mask_operand = {
11815                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11816                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
11819         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
11820         .spec_operand = {
11821                 (BNXT_ULP_HF19_IDX_SVIF_INDEX >> 8) & 0xff,
11822                 BNXT_ULP_HF19_IDX_SVIF_INDEX & 0xff,
11823                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11825         },
11826         {
11827         .description = "sparif",
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 = "tl2_ivlan_vid",
11834         .field_bit_size = 12,
11835         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11836         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11837         },
11838         {
11839         .description = "tl2_ovlan_vid",
11840         .field_bit_size = 12,
11841         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11842         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11843         },
11844         {
11845         .description = "mac1_tl2_dst",
11846         .field_bit_size = 48,
11847         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11848         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11849         },
11850         {
11851         .description = "l2_num_vtags",
11852         .field_bit_size = 2,
11853         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11854         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11855         },
11856         {
11857         .description = "tl2_num_vtags",
11858         .field_bit_size = 2,
11859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11860         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11861                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11862         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11863         },
11864         {
11865         .description = "tun_hdr_type",
11866         .field_bit_size = 4,
11867         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11868         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11869                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11870         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11871         },
11872         {
11873         .description = "key_type",
11874         .field_bit_size = 2,
11875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11877         },
11878         {
11879         .description = "valid",
11880         .field_bit_size = 1,
11881         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11882         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11883                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
11884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
11885         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
11886                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11887         },
11888         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
11889         {
11890         .description = "recycle",
11891         .field_bit_size = 1,
11892         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11893         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11894         },
11895         {
11896         .description = "prof_func_id",
11897         .field_bit_size = 7,
11898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
11900         .spec_operand = {
11901                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
11902                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
11903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
11905         },
11906         {
11907         .description = "class_tid",
11908         .field_bit_size = 8,
11909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11911         },
11912         /* class_tid: 19, wh_plus, table: profile_tcam_0 */
11913         {
11914         .description = "l4_hdr_is_udp_tcp",
11915         .field_bit_size = 1,
11916         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11918         },
11919         {
11920         .description = "l4_hdr_type",
11921         .field_bit_size = 4,
11922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11924         },
11925         {
11926         .description = "l4_hdr_error",
11927         .field_bit_size = 1,
11928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11930         },
11931         {
11932         .description = "l4_hdr_valid",
11933         .field_bit_size = 1,
11934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11936         },
11937         {
11938         .description = "l3_ipv6_cmp_dst",
11939         .field_bit_size = 1,
11940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11942         },
11943         {
11944         .description = "l3_ipv6_cmp_src",
11945         .field_bit_size = 1,
11946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11947         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11948         },
11949         {
11950         .description = "l3_hdr_isIP",
11951         .field_bit_size = 1,
11952         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11953         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11954         },
11955         {
11956         .description = "l3_hdr_type",
11957         .field_bit_size = 4,
11958         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11959         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11960         },
11961         {
11962         .description = "l3_hdr_error",
11963         .field_bit_size = 1,
11964         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11965         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11966         },
11967         {
11968         .description = "l3_hdr_valid",
11969         .field_bit_size = 1,
11970         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11971         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11972         },
11973         {
11974         .description = "l2_two_vtags",
11975         .field_bit_size = 1,
11976         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11977         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11978         },
11979         {
11980         .description = "l2_vtag_present",
11981         .field_bit_size = 1,
11982         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11983         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11984         },
11985         {
11986         .description = "l2_uc_mc_bc",
11987         .field_bit_size = 2,
11988         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11990         },
11991         {
11992         .description = "l2_hdr_type",
11993         .field_bit_size = 2,
11994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
11995         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
11996         },
11997         {
11998         .description = "l2_hdr_error",
11999         .field_bit_size = 1,
12000         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12001         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12002         },
12003         {
12004         .description = "l2_hdr_valid",
12005         .field_bit_size = 1,
12006         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12007         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12008         },
12009         {
12010         .description = "tun_hdr_flags",
12011         .field_bit_size = 3,
12012         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12013         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12014         },
12015         {
12016         .description = "tun_hdr_type",
12017         .field_bit_size = 4,
12018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12019         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12020                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12022         },
12023         {
12024         .description = "tun_hdr_error",
12025         .field_bit_size = 1,
12026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12027         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12028                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12029         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12030         },
12031         {
12032         .description = "tun_hdr_valid",
12033         .field_bit_size = 1,
12034         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12035         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12036                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12037         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12038         .spec_operand = {
12039                 BNXT_ULP_SYM_TUN_HDR_VALID_YES,
12040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12041                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12042         },
12043         {
12044         .description = "tl4_hdr_is_udp_tcp",
12045         .field_bit_size = 1,
12046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12048         },
12049         {
12050         .description = "tl4_hdr_type",
12051         .field_bit_size = 4,
12052         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12053         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12054                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12055         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12056         .spec_operand = {
12057                 BNXT_ULP_SYM_TL4_HDR_TYPE_UDP,
12058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12060         },
12061         {
12062         .description = "tl4_hdr_error",
12063         .field_bit_size = 1,
12064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12065         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12066                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12067         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12068         },
12069         {
12070         .description = "tl4_hdr_valid",
12071         .field_bit_size = 1,
12072         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12073         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12074                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12075         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12076         .spec_operand = {
12077                 BNXT_ULP_SYM_TL4_HDR_VALID_YES,
12078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12080         },
12081         {
12082         .description = "tl3_ipv6_cmp_dst",
12083         .field_bit_size = 1,
12084         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12085         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12086         },
12087         {
12088         .description = "tl3_ipv6_cmp_src",
12089         .field_bit_size = 1,
12090         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12091         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12092         },
12093         {
12094         .description = "tl3_hdr_isIP",
12095         .field_bit_size = 1,
12096         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12097         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12098         },
12099         {
12100         .description = "tl3_hdr_type",
12101         .field_bit_size = 4,
12102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12103         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12104                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12105         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12106         },
12107         {
12108         .description = "tl3_hdr_error",
12109         .field_bit_size = 1,
12110         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12111         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12112                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12113         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12114         },
12115         {
12116         .description = "tl3_hdr_valid",
12117         .field_bit_size = 1,
12118         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12119         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12120                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12121         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12122         .spec_operand = {
12123                 BNXT_ULP_SYM_TL3_HDR_VALID_YES,
12124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12126         },
12127         {
12128         .description = "tl2_two_vtags",
12129         .field_bit_size = 1,
12130         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12131         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12132         },
12133         {
12134         .description = "tl2_vtag_present",
12135         .field_bit_size = 1,
12136         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12137         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12138         },
12139         {
12140         .description = "tl2_uc_mc_bc",
12141         .field_bit_size = 2,
12142         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12143         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12144                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12145         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12146         },
12147         {
12148         .description = "tl2_hdr_type",
12149         .field_bit_size = 2,
12150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12151         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12152                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12153         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12154         },
12155         {
12156         .description = "tl2_hdr_valid",
12157         .field_bit_size = 1,
12158         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12159         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12160                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12161         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12162         .spec_operand = {
12163                 BNXT_ULP_SYM_TL2_HDR_VALID_YES,
12164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12166         },
12167         {
12168         .description = "hrec_next",
12169         .field_bit_size = 1,
12170         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12172         },
12173         {
12174         .description = "reserved",
12175         .field_bit_size = 9,
12176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12177         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12178         },
12179         {
12180         .description = "prof_func_id",
12181         .field_bit_size = 7,
12182         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12183         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12184                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12185         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12186         .spec_operand = {
12187                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
12188                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
12189                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12191         },
12192         {
12193         .description = "agg_error",
12194         .field_bit_size = 1,
12195         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12196         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12197         },
12198         {
12199         .description = "recycle_cnt",
12200         .field_bit_size = 2,
12201         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12202         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12203                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12204         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12205         },
12206         {
12207         .description = "pkt_type_0",
12208         .field_bit_size = 2,
12209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12211         },
12212         {
12213         .description = "pkt_type_1",
12214         .field_bit_size = 2,
12215         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12216         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12217                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12218         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12219         },
12220         {
12221         .description = "valid",
12222         .field_bit_size = 1,
12223         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12224         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12225                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12226         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12227         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12228                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12229         },
12230         /* class_tid: 19, wh_plus, table: int_em_0 */
12231         {
12232         .description = "spare",
12233         .field_bit_size = 3,
12234         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12235         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12236         },
12237         {
12238         .description = "l2_inner_vid",
12239         .field_bit_size = 12,
12240         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12241         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12242         },
12243         {
12244         .description = "l2_dst_mac",
12245         .field_bit_size = 48,
12246         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12247         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12248         .spec_operand = {
12249                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12250                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12251                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12252                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12253         },
12254         {
12255         .description = "tun_id",
12256         .field_bit_size = 24,
12257         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12258         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12259         .spec_operand = {
12260                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12261                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12262                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12263                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12264         },
12265         {
12266         .description = "tun_flags",
12267         .field_bit_size = 3,
12268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12269         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12270         },
12271         {
12272         .description = "tun_type",
12273         .field_bit_size = 4,
12274         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12275         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12276         },
12277         {
12278         .description = "l2_cntxt_id",
12279         .field_bit_size = 10,
12280         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12281         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12282         .spec_operand = {
12283                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12284                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12286                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12287         },
12288         {
12289         .description = "em_profile_id",
12290         .field_bit_size = 8,
12291         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12292         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12293         .spec_operand = {
12294                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12295                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12296                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12297                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12298         },
12299         /* class_tid: 19, wh_plus, table: ext_em_0 */
12300         {
12301         .description = "spare",
12302         .field_bit_size = 339,
12303         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12304         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12305         },
12306         {
12307         .description = "l2_inner_vid",
12308         .field_bit_size = 12,
12309         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12310         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12311         },
12312         {
12313         .description = "l2_dst_mac",
12314         .field_bit_size = 48,
12315         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12316         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12317         .spec_operand = {
12318                 (BNXT_ULP_HF19_IDX_I_ETH_DMAC >> 8) & 0xff,
12319                 BNXT_ULP_HF19_IDX_I_ETH_DMAC & 0xff,
12320                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12321                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12322         },
12323         {
12324         .description = "tun_id",
12325         .field_bit_size = 24,
12326         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12327         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12328         .spec_operand = {
12329                 (BNXT_ULP_HF19_IDX_T_VXLAN_VNI >> 8) & 0xff,
12330                 BNXT_ULP_HF19_IDX_T_VXLAN_VNI & 0xff,
12331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12332                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12333         },
12334         {
12335         .description = "tun_flags",
12336         .field_bit_size = 3,
12337         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12338         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12339         },
12340         {
12341         .description = "tun_type",
12342         .field_bit_size = 4,
12343         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12344         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12345         },
12346         {
12347         .description = "l2_cntxt_id",
12348         .field_bit_size = 10,
12349         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12350         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12351         .spec_operand = {
12352                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12353                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12356         },
12357         {
12358         .description = "em_profile_id",
12359         .field_bit_size = 8,
12360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12362         .spec_operand = {
12363                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12364                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12365                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12366                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12367         },
12368         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
12369         {
12370         .description = "svif",
12371         .field_bit_size = 8,
12372         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12374         .spec_operand = {
12375                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12376                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12377                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12378                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12379         },
12380         /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
12381         {
12382         .description = "l2_ivlan_vid",
12383         .field_bit_size = 12,
12384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12385         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12386         },
12387         {
12388         .description = "l2_ovlan_vid",
12389         .field_bit_size = 12,
12390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12392         },
12393         {
12394         .description = "mac0_l2_dst",
12395         .field_bit_size = 48,
12396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12398         },
12399         {
12400         .description = "svif",
12401         .field_bit_size = 8,
12402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12403         .mask_operand = {
12404                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12405                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12406                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12407                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
12408         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12409         .spec_operand = {
12410                 (BNXT_ULP_HF20_IDX_SVIF_INDEX >> 8) & 0xff,
12411                 BNXT_ULP_HF20_IDX_SVIF_INDEX & 0xff,
12412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12414         },
12415         {
12416         .description = "sparif",
12417         .field_bit_size = 4,
12418         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12420         },
12421         {
12422         .description = "tl2_ivlan_vid",
12423         .field_bit_size = 12,
12424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12425         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12426         },
12427         {
12428         .description = "tl2_ovlan_vid",
12429         .field_bit_size = 12,
12430         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12431         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12432         },
12433         {
12434         .description = "mac1_tl2_dst",
12435         .field_bit_size = 48,
12436         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12437         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12438         },
12439         {
12440         .description = "l2_num_vtags",
12441         .field_bit_size = 2,
12442         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12443         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12444         },
12445         {
12446         .description = "tl2_num_vtags",
12447         .field_bit_size = 2,
12448         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12449         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12450         },
12451         {
12452         .description = "tun_hdr_type",
12453         .field_bit_size = 4,
12454         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12455         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12456                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12457         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12458         .spec_operand = {
12459                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
12460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12461                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12462         },
12463         {
12464         .description = "key_type",
12465         .field_bit_size = 2,
12466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12468         },
12469         {
12470         .description = "valid",
12471         .field_bit_size = 1,
12472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12473         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12474                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12475         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12476         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12477                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12478         },
12479         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
12480         {
12481         .description = "recycle",
12482         .field_bit_size = 1,
12483         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12484         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12485         },
12486         {
12487         .description = "prof_func_id",
12488         .field_bit_size = 7,
12489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12491         .spec_operand = {
12492                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12493                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12494                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12496         },
12497         {
12498         .description = "class_tid",
12499         .field_bit_size = 8,
12500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12502         .spec_operand = {
12503                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
12504                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
12505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12507         },
12508         /* class_tid: 20, wh_plus, table: profile_tcam_0 */
12509         {
12510         .description = "l4_hdr_is_udp_tcp",
12511         .field_bit_size = 1,
12512         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12513         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12514         },
12515         {
12516         .description = "l4_hdr_type",
12517         .field_bit_size = 4,
12518         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12519         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12520                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12521         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12522         .spec_operand = {
12523                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
12524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12525                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12526         },
12527         {
12528         .description = "l4_hdr_error",
12529         .field_bit_size = 1,
12530         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12531         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12532                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12534         },
12535         {
12536         .description = "l4_hdr_valid",
12537         .field_bit_size = 1,
12538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12539         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12540                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12541         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12542         .spec_operand = {
12543                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
12544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12546         },
12547         {
12548         .description = "l3_ipv6_cmp_dst",
12549         .field_bit_size = 1,
12550         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12551         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12552         },
12553         {
12554         .description = "l3_ipv6_cmp_src",
12555         .field_bit_size = 1,
12556         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12557         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12558         },
12559         {
12560         .description = "l3_hdr_isIP",
12561         .field_bit_size = 1,
12562         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12563         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12564         },
12565         {
12566         .description = "l3_hdr_type",
12567         .field_bit_size = 4,
12568         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12569         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12570                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12571         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12572         },
12573         {
12574         .description = "l3_hdr_error",
12575         .field_bit_size = 1,
12576         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12577         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12578                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12580         },
12581         {
12582         .description = "l3_hdr_valid",
12583         .field_bit_size = 1,
12584         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12585         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12586                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12587         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12588         .spec_operand = {
12589                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
12590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12591                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12592         },
12593         {
12594         .description = "l2_two_vtags",
12595         .field_bit_size = 1,
12596         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12597         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12598         },
12599         {
12600         .description = "l2_vtag_present",
12601         .field_bit_size = 1,
12602         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12603         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12604         },
12605         {
12606         .description = "l2_uc_mc_bc",
12607         .field_bit_size = 2,
12608         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12609         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12610         },
12611         {
12612         .description = "l2_hdr_type",
12613         .field_bit_size = 2,
12614         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12615         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12616                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12617         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12618         },
12619         {
12620         .description = "l2_hdr_error",
12621         .field_bit_size = 1,
12622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12623         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12624                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12625         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12626         },
12627         {
12628         .description = "l2_hdr_valid",
12629         .field_bit_size = 1,
12630         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12631         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12632                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12633         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12634         .spec_operand = {
12635                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
12636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12638         },
12639         {
12640         .description = "tun_hdr_flags",
12641         .field_bit_size = 3,
12642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12644         },
12645         {
12646         .description = "tun_hdr_type",
12647         .field_bit_size = 4,
12648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12649         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12650         },
12651         {
12652         .description = "tun_hdr_error",
12653         .field_bit_size = 1,
12654         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12655         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12656         },
12657         {
12658         .description = "tun_hdr_valid",
12659         .field_bit_size = 1,
12660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12661         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12662         },
12663         {
12664         .description = "tl4_hdr_is_udp_tcp",
12665         .field_bit_size = 1,
12666         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12667         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12668         },
12669         {
12670         .description = "tl4_hdr_type",
12671         .field_bit_size = 4,
12672         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12673         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12674         },
12675         {
12676         .description = "tl4_hdr_error",
12677         .field_bit_size = 1,
12678         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12679         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12680         },
12681         {
12682         .description = "tl4_hdr_valid",
12683         .field_bit_size = 1,
12684         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12685         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12686         },
12687         {
12688         .description = "tl3_ipv6_cmp_dst",
12689         .field_bit_size = 1,
12690         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12691         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12692         },
12693         {
12694         .description = "tl3_ipv6_cmp_src",
12695         .field_bit_size = 1,
12696         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12697         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12698         },
12699         {
12700         .description = "tl3_hdr_isIP",
12701         .field_bit_size = 1,
12702         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12703         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12704         },
12705         {
12706         .description = "tl3_hdr_type",
12707         .field_bit_size = 4,
12708         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12709         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12710         },
12711         {
12712         .description = "tl3_hdr_error",
12713         .field_bit_size = 1,
12714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12716         },
12717         {
12718         .description = "tl3_hdr_valid",
12719         .field_bit_size = 1,
12720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12722         },
12723         {
12724         .description = "tl2_two_vtags",
12725         .field_bit_size = 1,
12726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12728         },
12729         {
12730         .description = "tl2_vtag_present",
12731         .field_bit_size = 1,
12732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12734         },
12735         {
12736         .description = "tl2_uc_mc_bc",
12737         .field_bit_size = 2,
12738         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12739         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12740         },
12741         {
12742         .description = "tl2_hdr_type",
12743         .field_bit_size = 2,
12744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12746         },
12747         {
12748         .description = "tl2_hdr_valid",
12749         .field_bit_size = 1,
12750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12751         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12752         },
12753         {
12754         .description = "hrec_next",
12755         .field_bit_size = 1,
12756         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12757         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12758         },
12759         {
12760         .description = "reserved",
12761         .field_bit_size = 9,
12762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12764         },
12765         {
12766         .description = "prof_func_id",
12767         .field_bit_size = 7,
12768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12769         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12770                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12771         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
12772         .spec_operand = {
12773                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
12774                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
12775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12777         },
12778         {
12779         .description = "agg_error",
12780         .field_bit_size = 1,
12781         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12782         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12783         },
12784         {
12785         .description = "recycle_cnt",
12786         .field_bit_size = 2,
12787         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12788         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12789                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12790         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12791         },
12792         {
12793         .description = "pkt_type_0",
12794         .field_bit_size = 2,
12795         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12796         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12797         },
12798         {
12799         .description = "pkt_type_1",
12800         .field_bit_size = 2,
12801         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12802         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12803                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12804         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12805         },
12806         {
12807         .description = "valid",
12808         .field_bit_size = 1,
12809         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12810         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
12811                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
12812         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12813         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
12814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12815         },
12816         /* class_tid: 20, wh_plus, table: ext_em_0 */
12817         {
12818         .description = "spare",
12819         .field_bit_size = 251,
12820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12821         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12822         },
12823         {
12824         .description = "local_cos",
12825         .field_bit_size = 3,
12826         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12827         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12828         },
12829         {
12830         .description = "l4_dst_port",
12831         .field_bit_size = 16,
12832         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12834         .spec_operand = {
12835                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12836                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12837                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12839         },
12840         {
12841         .description = "l4_src_port",
12842         .field_bit_size = 16,
12843         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12844         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12845         .spec_operand = {
12846                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12847                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12850         },
12851         {
12852         .description = "ip_proto",
12853         .field_bit_size = 8,
12854         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12855         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12856         .spec_operand = {
12857                 BNXT_ULP_SYM_IP_PROTO_UDP,
12858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12860         },
12861         {
12862         .description = "ipv4_dst_addr",
12863         .field_bit_size = 32,
12864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12866         .spec_operand = {
12867                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12868                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12871         },
12872         {
12873         .description = "ipv4_src_addr",
12874         .field_bit_size = 32,
12875         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12876         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12877         .spec_operand = {
12878                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12879                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12880                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12881                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12882         },
12883         {
12884         .description = "l2_src_mac",
12885         .field_bit_size = 48,
12886         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12887         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12888         },
12889         {
12890         .description = "tun_id",
12891         .field_bit_size = 24,
12892         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12893         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12894         },
12895         {
12896         .description = "l2_cntxt_id",
12897         .field_bit_size = 10,
12898         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12899         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12900         .spec_operand = {
12901                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
12902                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
12903                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12904                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12905         },
12906         {
12907         .description = "em_profile_id",
12908         .field_bit_size = 8,
12909         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12910         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
12911         .spec_operand = {
12912                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
12913                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
12914                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12915                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12916         },
12917         /* class_tid: 20, wh_plus, table: int_em_0 */
12918         {
12919         .description = "spare",
12920         .field_bit_size = 3,
12921         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12922         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12923         },
12924         {
12925         .description = "local_cos",
12926         .field_bit_size = 3,
12927         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12928         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12929         },
12930         {
12931         .description = "l4_dst_port",
12932         .field_bit_size = 16,
12933         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12934         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12935         .spec_operand = {
12936                 (BNXT_ULP_HF20_IDX_O_UDP_DST_PORT >> 8) & 0xff,
12937                 BNXT_ULP_HF20_IDX_O_UDP_DST_PORT & 0xff,
12938                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12939                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12940         },
12941         {
12942         .description = "l4_src_port",
12943         .field_bit_size = 16,
12944         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12945         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12946         .spec_operand = {
12947                 (BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
12948                 BNXT_ULP_HF20_IDX_O_UDP_SRC_PORT & 0xff,
12949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12950                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12951         },
12952         {
12953         .description = "ip_proto",
12954         .field_bit_size = 8,
12955         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12956         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
12957         .spec_operand = {
12958                 BNXT_ULP_SYM_IP_PROTO_UDP,
12959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12960                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12961         },
12962         {
12963         .description = "ipv4_dst_addr",
12964         .field_bit_size = 32,
12965         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12966         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12967         .spec_operand = {
12968                 (BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
12969                 BNXT_ULP_HF20_IDX_O_IPV4_DST_ADDR & 0xff,
12970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12971                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12972         },
12973         {
12974         .description = "ipv4_src_addr",
12975         .field_bit_size = 32,
12976         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12977         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
12978         .spec_operand = {
12979                 (BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
12980                 BNXT_ULP_HF20_IDX_O_IPV4_SRC_ADDR & 0xff,
12981                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
12983         },
12984         {
12985         .description = "l2_src_mac",
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 = "tun_id",
12992         .field_bit_size = 24,
12993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
12994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
12995         },
12996         {
12997         .description = "l2_cntxt_id",
12998         .field_bit_size = 10,
12999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13001         .spec_operand = {
13002                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13003                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13006         },
13007         {
13008         .description = "em_profile_id",
13009         .field_bit_size = 8,
13010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13011         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13012         .spec_operand = {
13013                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13014                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13016                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13017         },
13018         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
13019         {
13020         .description = "svif",
13021         .field_bit_size = 8,
13022         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13023         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13024         .spec_operand = {
13025                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
13026                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
13027                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13028                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13029         },
13030         /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
13031         {
13032         .description = "l2_ivlan_vid",
13033         .field_bit_size = 12,
13034         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13035         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13036         },
13037         {
13038         .description = "l2_ovlan_vid",
13039         .field_bit_size = 12,
13040         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13041         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13042         },
13043         {
13044         .description = "mac0_l2_dst",
13045         .field_bit_size = 48,
13046         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13047         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13048         },
13049         {
13050         .description = "svif",
13051         .field_bit_size = 8,
13052         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13053         .mask_operand = {
13054                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
13055                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
13056                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
13058         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13059         .spec_operand = {
13060                 (BNXT_ULP_HF21_IDX_SVIF_INDEX >> 8) & 0xff,
13061                 BNXT_ULP_HF21_IDX_SVIF_INDEX & 0xff,
13062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13064         },
13065         {
13066         .description = "sparif",
13067         .field_bit_size = 4,
13068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13069         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13070         },
13071         {
13072         .description = "tl2_ivlan_vid",
13073         .field_bit_size = 12,
13074         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13075         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13076         },
13077         {
13078         .description = "tl2_ovlan_vid",
13079         .field_bit_size = 12,
13080         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13081         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13082         },
13083         {
13084         .description = "mac1_tl2_dst",
13085         .field_bit_size = 48,
13086         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13087         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13088         },
13089         {
13090         .description = "l2_num_vtags",
13091         .field_bit_size = 2,
13092         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13093         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13094         },
13095         {
13096         .description = "tl2_num_vtags",
13097         .field_bit_size = 2,
13098         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13099         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13100         },
13101         {
13102         .description = "tun_hdr_type",
13103         .field_bit_size = 4,
13104         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13105         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13106                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13107         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13108         .spec_operand = {
13109                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13110                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13112         },
13113         {
13114         .description = "key_type",
13115         .field_bit_size = 2,
13116         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13117         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13118         },
13119         {
13120         .description = "valid",
13121         .field_bit_size = 1,
13122         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13123         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13124                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13125         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13126         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13128         },
13129         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
13130         {
13131         .description = "recycle",
13132         .field_bit_size = 1,
13133         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13134         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13135         },
13136         {
13137         .description = "prof_func_id",
13138         .field_bit_size = 7,
13139         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13140         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13141         .spec_operand = {
13142                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13143                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13146         },
13147         {
13148         .description = "class_tid",
13149         .field_bit_size = 8,
13150         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13151         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13152         .spec_operand = {
13153                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13154                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13155                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13156                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13157         },
13158         /* class_tid: 21, wh_plus, table: profile_tcam_0 */
13159         {
13160         .description = "l4_hdr_is_udp_tcp",
13161         .field_bit_size = 1,
13162         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13163         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13164         },
13165         {
13166         .description = "l4_hdr_type",
13167         .field_bit_size = 4,
13168         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13169         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13170                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13171         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13172         },
13173         {
13174         .description = "l4_hdr_error",
13175         .field_bit_size = 1,
13176         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13177         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13178                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13179         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13180         },
13181         {
13182         .description = "l4_hdr_valid",
13183         .field_bit_size = 1,
13184         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13185         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13186                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13188         .spec_operand = {
13189                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13190                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13192         },
13193         {
13194         .description = "l3_ipv6_cmp_dst",
13195         .field_bit_size = 1,
13196         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13197         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13198         },
13199         {
13200         .description = "l3_ipv6_cmp_src",
13201         .field_bit_size = 1,
13202         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13203         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13204         },
13205         {
13206         .description = "l3_hdr_isIP",
13207         .field_bit_size = 1,
13208         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13209         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13210         },
13211         {
13212         .description = "l3_hdr_type",
13213         .field_bit_size = 4,
13214         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13215         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13216                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13217         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13218         },
13219         {
13220         .description = "l3_hdr_error",
13221         .field_bit_size = 1,
13222         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13223         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13224                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13225         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13226         },
13227         {
13228         .description = "l3_hdr_valid",
13229         .field_bit_size = 1,
13230         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13231         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13232                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13233         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13234         .spec_operand = {
13235                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13238         },
13239         {
13240         .description = "l2_two_vtags",
13241         .field_bit_size = 1,
13242         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13243         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13244         },
13245         {
13246         .description = "l2_vtag_present",
13247         .field_bit_size = 1,
13248         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13249         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13250         },
13251         {
13252         .description = "l2_uc_mc_bc",
13253         .field_bit_size = 2,
13254         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13255         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13256         },
13257         {
13258         .description = "l2_hdr_type",
13259         .field_bit_size = 2,
13260         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13261         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13262                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13263         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13264         },
13265         {
13266         .description = "l2_hdr_error",
13267         .field_bit_size = 1,
13268         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13269         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13270                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13271         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13272         },
13273         {
13274         .description = "l2_hdr_valid",
13275         .field_bit_size = 1,
13276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13277         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13278                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13279         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13280         .spec_operand = {
13281                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
13282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13284         },
13285         {
13286         .description = "tun_hdr_flags",
13287         .field_bit_size = 3,
13288         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13289         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13290         },
13291         {
13292         .description = "tun_hdr_type",
13293         .field_bit_size = 4,
13294         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13295         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13296         },
13297         {
13298         .description = "tun_hdr_error",
13299         .field_bit_size = 1,
13300         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13301         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13302         },
13303         {
13304         .description = "tun_hdr_valid",
13305         .field_bit_size = 1,
13306         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13307         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13308         },
13309         {
13310         .description = "tl4_hdr_is_udp_tcp",
13311         .field_bit_size = 1,
13312         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13313         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13314         },
13315         {
13316         .description = "tl4_hdr_type",
13317         .field_bit_size = 4,
13318         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13319         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13320         },
13321         {
13322         .description = "tl4_hdr_error",
13323         .field_bit_size = 1,
13324         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13325         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13326         },
13327         {
13328         .description = "tl4_hdr_valid",
13329         .field_bit_size = 1,
13330         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13331         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13332         },
13333         {
13334         .description = "tl3_ipv6_cmp_dst",
13335         .field_bit_size = 1,
13336         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13337         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13338         },
13339         {
13340         .description = "tl3_ipv6_cmp_src",
13341         .field_bit_size = 1,
13342         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13343         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13344         },
13345         {
13346         .description = "tl3_hdr_isIP",
13347         .field_bit_size = 1,
13348         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13349         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13350         },
13351         {
13352         .description = "tl3_hdr_type",
13353         .field_bit_size = 4,
13354         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13355         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13356         },
13357         {
13358         .description = "tl3_hdr_error",
13359         .field_bit_size = 1,
13360         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13361         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13362         },
13363         {
13364         .description = "tl3_hdr_valid",
13365         .field_bit_size = 1,
13366         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13367         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13368         },
13369         {
13370         .description = "tl2_two_vtags",
13371         .field_bit_size = 1,
13372         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13373         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13374         },
13375         {
13376         .description = "tl2_vtag_present",
13377         .field_bit_size = 1,
13378         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13379         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13380         },
13381         {
13382         .description = "tl2_uc_mc_bc",
13383         .field_bit_size = 2,
13384         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13385         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13386         },
13387         {
13388         .description = "tl2_hdr_type",
13389         .field_bit_size = 2,
13390         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13391         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13392         },
13393         {
13394         .description = "tl2_hdr_valid",
13395         .field_bit_size = 1,
13396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13398         },
13399         {
13400         .description = "hrec_next",
13401         .field_bit_size = 1,
13402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13403         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13404         },
13405         {
13406         .description = "reserved",
13407         .field_bit_size = 9,
13408         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13409         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13410         },
13411         {
13412         .description = "prof_func_id",
13413         .field_bit_size = 7,
13414         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13415         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13416                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13418         .spec_operand = {
13419                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13420                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13421                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13422                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13423         },
13424         {
13425         .description = "agg_error",
13426         .field_bit_size = 1,
13427         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13428         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13429         },
13430         {
13431         .description = "recycle_cnt",
13432         .field_bit_size = 2,
13433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13434         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13435                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13437         },
13438         {
13439         .description = "pkt_type_0",
13440         .field_bit_size = 2,
13441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13443         },
13444         {
13445         .description = "pkt_type_1",
13446         .field_bit_size = 2,
13447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13448         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13449                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13450         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13451         },
13452         {
13453         .description = "valid",
13454         .field_bit_size = 1,
13455         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13456         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13457                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13458         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13459         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13460                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13461         },
13462         /* class_tid: 21, wh_plus, table: ext_em_0 */
13463         {
13464         .description = "spare",
13465         .field_bit_size = 251,
13466         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13467         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13468         },
13469         {
13470         .description = "local_cos",
13471         .field_bit_size = 3,
13472         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13473         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13474         },
13475         {
13476         .description = "l4_dst_port",
13477         .field_bit_size = 16,
13478         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13479         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13480         .spec_operand = {
13481                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13482                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13485         },
13486         {
13487         .description = "l4_src_port",
13488         .field_bit_size = 16,
13489         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13490         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13491         .spec_operand = {
13492                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13493                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13494                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13496         },
13497         {
13498         .description = "ip_proto",
13499         .field_bit_size = 8,
13500         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13501         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13502         .spec_operand = {
13503                 BNXT_ULP_SYM_IP_PROTO_TCP,
13504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13506         },
13507         {
13508         .description = "ipv4_dst_addr",
13509         .field_bit_size = 32,
13510         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13511         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13512         .spec_operand = {
13513                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13514                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13515                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13516                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13517         },
13518         {
13519         .description = "ipv4_src_addr",
13520         .field_bit_size = 32,
13521         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13522         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13523         .spec_operand = {
13524                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13525                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13526                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13527                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13528         },
13529         {
13530         .description = "l2_src_mac",
13531         .field_bit_size = 48,
13532         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13533         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13534         },
13535         {
13536         .description = "tun_id",
13537         .field_bit_size = 24,
13538         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13539         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13540         },
13541         {
13542         .description = "l2_cntxt_id",
13543         .field_bit_size = 10,
13544         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13545         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13546         .spec_operand = {
13547                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13548                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13549                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13551         },
13552         {
13553         .description = "em_profile_id",
13554         .field_bit_size = 8,
13555         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13556         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13557         .spec_operand = {
13558                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13559                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13562         },
13563         /* class_tid: 21, wh_plus, table: int_em_0 */
13564         {
13565         .description = "spare",
13566         .field_bit_size = 3,
13567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13569         },
13570         {
13571         .description = "local_cos",
13572         .field_bit_size = 3,
13573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13574         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13575         },
13576         {
13577         .description = "l4_dst_port",
13578         .field_bit_size = 16,
13579         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13580         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13581         .spec_operand = {
13582                 (BNXT_ULP_HF21_IDX_O_TCP_DST_PORT >> 8) & 0xff,
13583                 BNXT_ULP_HF21_IDX_O_TCP_DST_PORT & 0xff,
13584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13586         },
13587         {
13588         .description = "l4_src_port",
13589         .field_bit_size = 16,
13590         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13591         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13592         .spec_operand = {
13593                 (BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
13594                 BNXT_ULP_HF21_IDX_O_TCP_SRC_PORT & 0xff,
13595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13597         },
13598         {
13599         .description = "ip_proto",
13600         .field_bit_size = 8,
13601         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13602         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13603         .spec_operand = {
13604                 BNXT_ULP_SYM_IP_PROTO_TCP,
13605                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13607         },
13608         {
13609         .description = "ipv4_dst_addr",
13610         .field_bit_size = 32,
13611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13613         .spec_operand = {
13614                 (BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR >> 8) & 0xff,
13615                 BNXT_ULP_HF21_IDX_O_IPV4_DST_ADDR & 0xff,
13616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13618         },
13619         {
13620         .description = "ipv4_src_addr",
13621         .field_bit_size = 32,
13622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13623         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13624         .spec_operand = {
13625                 (BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR >> 8) & 0xff,
13626                 BNXT_ULP_HF21_IDX_O_IPV4_SRC_ADDR & 0xff,
13627                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13629         },
13630         {
13631         .description = "l2_src_mac",
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 = "tun_id",
13638         .field_bit_size = 24,
13639         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13640         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13641         },
13642         {
13643         .description = "l2_cntxt_id",
13644         .field_bit_size = 10,
13645         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13646         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13647         .spec_operand = {
13648                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
13649                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
13650                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13651                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13652         },
13653         {
13654         .description = "em_profile_id",
13655         .field_bit_size = 8,
13656         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13657         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13658         .spec_operand = {
13659                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
13660                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
13661                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13662                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13663         },
13664         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
13665         {
13666         .description = "svif",
13667         .field_bit_size = 8,
13668         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13669         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13670         .spec_operand = {
13671                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13672                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13673                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13675         },
13676         /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
13677         {
13678         .description = "l2_ivlan_vid",
13679         .field_bit_size = 12,
13680         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13681         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13682         },
13683         {
13684         .description = "l2_ovlan_vid",
13685         .field_bit_size = 12,
13686         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13687         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13688         },
13689         {
13690         .description = "mac0_l2_dst",
13691         .field_bit_size = 48,
13692         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13693         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13694         },
13695         {
13696         .description = "svif",
13697         .field_bit_size = 8,
13698         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13699         .mask_operand = {
13700                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13701                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13702                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13703                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
13704         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
13705         .spec_operand = {
13706                 (BNXT_ULP_HF22_IDX_SVIF_INDEX >> 8) & 0xff,
13707                 BNXT_ULP_HF22_IDX_SVIF_INDEX & 0xff,
13708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13709                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13710         },
13711         {
13712         .description = "sparif",
13713         .field_bit_size = 4,
13714         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13715         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13716         },
13717         {
13718         .description = "tl2_ivlan_vid",
13719         .field_bit_size = 12,
13720         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13722         },
13723         {
13724         .description = "tl2_ovlan_vid",
13725         .field_bit_size = 12,
13726         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13727         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13728         },
13729         {
13730         .description = "mac1_tl2_dst",
13731         .field_bit_size = 48,
13732         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13733         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13734         },
13735         {
13736         .description = "l2_num_vtags",
13737         .field_bit_size = 2,
13738         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13739         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13740         },
13741         {
13742         .description = "tl2_num_vtags",
13743         .field_bit_size = 2,
13744         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13745         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13746         },
13747         {
13748         .description = "tun_hdr_type",
13749         .field_bit_size = 4,
13750         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13751         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13752                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13753         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13754         .spec_operand = {
13755                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
13756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13757                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13758         },
13759         {
13760         .description = "key_type",
13761         .field_bit_size = 2,
13762         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13763         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13764         },
13765         {
13766         .description = "valid",
13767         .field_bit_size = 1,
13768         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13769         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13770                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13771         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13772         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
13773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13774         },
13775         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
13776         {
13777         .description = "recycle",
13778         .field_bit_size = 1,
13779         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13780         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13781         },
13782         {
13783         .description = "prof_func_id",
13784         .field_bit_size = 7,
13785         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13786         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
13787         .spec_operand = {
13788                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
13789                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
13790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13792         },
13793         {
13794         .description = "class_tid",
13795         .field_bit_size = 8,
13796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13797         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
13798         .spec_operand = {
13799                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
13800                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
13801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13803         },
13804         /* class_tid: 22, wh_plus, table: profile_tcam_0 */
13805         {
13806         .description = "l4_hdr_is_udp_tcp",
13807         .field_bit_size = 1,
13808         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13809         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13810         },
13811         {
13812         .description = "l4_hdr_type",
13813         .field_bit_size = 4,
13814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13815         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13816                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13817         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13818         .spec_operand = {
13819                 BNXT_ULP_SYM_L4_HDR_TYPE_UDP,
13820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13821                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13822         },
13823         {
13824         .description = "l4_hdr_error",
13825         .field_bit_size = 1,
13826         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13827         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13828                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13829         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13830         },
13831         {
13832         .description = "l4_hdr_valid",
13833         .field_bit_size = 1,
13834         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13835         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13836                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13838         .spec_operand = {
13839                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
13840                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13841                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13842         },
13843         {
13844         .description = "l3_ipv6_cmp_dst",
13845         .field_bit_size = 1,
13846         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13847         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13848         },
13849         {
13850         .description = "l3_ipv6_cmp_src",
13851         .field_bit_size = 1,
13852         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13854         },
13855         {
13856         .description = "l3_hdr_isIP",
13857         .field_bit_size = 1,
13858         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13860         },
13861         {
13862         .description = "l3_hdr_type",
13863         .field_bit_size = 4,
13864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13865         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13866                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13867         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13868         .spec_operand = {
13869                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
13870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13871                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13872         },
13873         {
13874         .description = "l3_hdr_error",
13875         .field_bit_size = 1,
13876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13880         },
13881         {
13882         .description = "l3_hdr_valid",
13883         .field_bit_size = 1,
13884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13885         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13886                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13887         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13888         .spec_operand = {
13889                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
13890                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13891                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13892         },
13893         {
13894         .description = "l2_two_vtags",
13895         .field_bit_size = 1,
13896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13898         },
13899         {
13900         .description = "l2_vtag_present",
13901         .field_bit_size = 1,
13902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13904         },
13905         {
13906         .description = "l2_uc_mc_bc",
13907         .field_bit_size = 2,
13908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13910         },
13911         {
13912         .description = "l2_hdr_type",
13913         .field_bit_size = 2,
13914         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13915         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13916                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13917         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13918         },
13919         {
13920         .description = "l2_hdr_error",
13921         .field_bit_size = 1,
13922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13923         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13924                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13925         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13926         },
13927         {
13928         .description = "l2_hdr_valid",
13929         .field_bit_size = 1,
13930         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13931         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
13932                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
13933         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
13934         .spec_operand = {
13935                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
13936                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
13937                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
13938         },
13939         {
13940         .description = "tun_hdr_flags",
13941         .field_bit_size = 3,
13942         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13943         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13944         },
13945         {
13946         .description = "tun_hdr_type",
13947         .field_bit_size = 4,
13948         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13950         },
13951         {
13952         .description = "tun_hdr_error",
13953         .field_bit_size = 1,
13954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13956         },
13957         {
13958         .description = "tun_hdr_valid",
13959         .field_bit_size = 1,
13960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13962         },
13963         {
13964         .description = "tl4_hdr_is_udp_tcp",
13965         .field_bit_size = 1,
13966         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13967         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13968         },
13969         {
13970         .description = "tl4_hdr_type",
13971         .field_bit_size = 4,
13972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13973         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13974         },
13975         {
13976         .description = "tl4_hdr_error",
13977         .field_bit_size = 1,
13978         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13979         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13980         },
13981         {
13982         .description = "tl4_hdr_valid",
13983         .field_bit_size = 1,
13984         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13985         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13986         },
13987         {
13988         .description = "tl3_ipv6_cmp_dst",
13989         .field_bit_size = 1,
13990         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13991         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13992         },
13993         {
13994         .description = "tl3_ipv6_cmp_src",
13995         .field_bit_size = 1,
13996         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
13997         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
13998         },
13999         {
14000         .description = "tl3_hdr_isIP",
14001         .field_bit_size = 1,
14002         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14003         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14004         },
14005         {
14006         .description = "tl3_hdr_type",
14007         .field_bit_size = 4,
14008         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14009         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14010         },
14011         {
14012         .description = "tl3_hdr_error",
14013         .field_bit_size = 1,
14014         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14015         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14016         },
14017         {
14018         .description = "tl3_hdr_valid",
14019         .field_bit_size = 1,
14020         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14021         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14022         },
14023         {
14024         .description = "tl2_two_vtags",
14025         .field_bit_size = 1,
14026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14028         },
14029         {
14030         .description = "tl2_vtag_present",
14031         .field_bit_size = 1,
14032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14034         },
14035         {
14036         .description = "tl2_uc_mc_bc",
14037         .field_bit_size = 2,
14038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14040         },
14041         {
14042         .description = "tl2_hdr_type",
14043         .field_bit_size = 2,
14044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14046         },
14047         {
14048         .description = "tl2_hdr_valid",
14049         .field_bit_size = 1,
14050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14051         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14052         },
14053         {
14054         .description = "hrec_next",
14055         .field_bit_size = 1,
14056         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14057         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14058         },
14059         {
14060         .description = "reserved",
14061         .field_bit_size = 9,
14062         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14063         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14064         },
14065         {
14066         .description = "prof_func_id",
14067         .field_bit_size = 7,
14068         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14069         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14070                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14071         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14072         .spec_operand = {
14073                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14074                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14077         },
14078         {
14079         .description = "agg_error",
14080         .field_bit_size = 1,
14081         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14082         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14083         },
14084         {
14085         .description = "recycle_cnt",
14086         .field_bit_size = 2,
14087         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14088         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14089                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14090         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14091         },
14092         {
14093         .description = "pkt_type_0",
14094         .field_bit_size = 2,
14095         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14096         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14097         },
14098         {
14099         .description = "pkt_type_1",
14100         .field_bit_size = 2,
14101         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14102         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14103                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14104         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14105         },
14106         {
14107         .description = "valid",
14108         .field_bit_size = 1,
14109         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14110         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14111                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14113         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14114                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14115         },
14116         /* class_tid: 22, wh_plus, table: ext_em_0 */
14117         {
14118         .description = "spare",
14119         .field_bit_size = 59,
14120         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14121         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14122         },
14123         {
14124         .description = "local_cos",
14125         .field_bit_size = 3,
14126         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14127         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14128         },
14129         {
14130         .description = "l4_dst_port",
14131         .field_bit_size = 16,
14132         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14133         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14134         .spec_operand = {
14135                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14136                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14137                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14139         },
14140         {
14141         .description = "l4_src_port",
14142         .field_bit_size = 16,
14143         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14144         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14145         .spec_operand = {
14146                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14147                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14148                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14149                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14150         },
14151         {
14152         .description = "ip_proto",
14153         .field_bit_size = 8,
14154         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14155         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14156         .spec_operand = {
14157                 BNXT_ULP_SYM_IP_PROTO_UDP,
14158                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14160         },
14161         {
14162         .description = "ipv6_dst_addr",
14163         .field_bit_size = 128,
14164         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14165         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14166         .spec_operand = {
14167                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14168                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14170                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14171         },
14172         {
14173         .description = "ipv6_src_addr",
14174         .field_bit_size = 128,
14175         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14177         .spec_operand = {
14178                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14179                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14181                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14182         },
14183         {
14184         .description = "l2_src_mac",
14185         .field_bit_size = 48,
14186         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14187         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14188         },
14189         {
14190         .description = "tun_id",
14191         .field_bit_size = 24,
14192         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14193         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14194         },
14195         {
14196         .description = "l2_cntxt_id",
14197         .field_bit_size = 10,
14198         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14199         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14200         .spec_operand = {
14201                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14202                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14205         },
14206         {
14207         .description = "em_profile_id",
14208         .field_bit_size = 8,
14209         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14210         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14211         .spec_operand = {
14212                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14213                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14215                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14216         },
14217         /* class_tid: 22, wh_plus, table: int_em_0 */
14218         {
14219         .description = "spare",
14220         .field_bit_size = 3,
14221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14222         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14223         },
14224         {
14225         .description = "local_cos",
14226         .field_bit_size = 3,
14227         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14228         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14229         },
14230         {
14231         .description = "l4_dst_port",
14232         .field_bit_size = 16,
14233         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14234         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14235         .spec_operand = {
14236                 (BNXT_ULP_HF22_IDX_O_UDP_DST_PORT >> 8) & 0xff,
14237                 BNXT_ULP_HF22_IDX_O_UDP_DST_PORT & 0xff,
14238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14239                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14240         },
14241         {
14242         .description = "l4_src_port",
14243         .field_bit_size = 16,
14244         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14245         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14246         .spec_operand = {
14247                 (BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT >> 8) & 0xff,
14248                 BNXT_ULP_HF22_IDX_O_UDP_SRC_PORT & 0xff,
14249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14250                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14251         },
14252         {
14253         .description = "ip_proto",
14254         .field_bit_size = 8,
14255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14257         .spec_operand = {
14258                 BNXT_ULP_SYM_IP_PROTO_UDP,
14259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14261         },
14262         {
14263         .description = "ipv6_dst_addr",
14264         .field_bit_size = 128,
14265         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14266         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14267         .spec_operand = {
14268                 (BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14269                 BNXT_ULP_HF22_IDX_O_IPV6_DST_ADDR & 0xff,
14270                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14271                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14272         },
14273         {
14274         .description = "ipv6_src_addr",
14275         .field_bit_size = 128,
14276         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14277         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14278         .spec_operand = {
14279                 (BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14280                 BNXT_ULP_HF22_IDX_O_IPV6_SRC_ADDR & 0xff,
14281                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14283         },
14284         {
14285         .description = "l2_src_mac",
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 = "tun_id",
14292         .field_bit_size = 24,
14293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14294         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14295         },
14296         {
14297         .description = "l2_cntxt_id",
14298         .field_bit_size = 10,
14299         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14300         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14301         .spec_operand = {
14302                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14303                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14304                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14305                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14306         },
14307         {
14308         .description = "em_profile_id",
14309         .field_bit_size = 8,
14310         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14311         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14312         .spec_operand = {
14313                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14314                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14315                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14316                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14317         },
14318         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
14319         {
14320         .description = "svif",
14321         .field_bit_size = 8,
14322         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14323         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14324         .spec_operand = {
14325                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14326                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14329         },
14330         /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
14331         {
14332         .description = "l2_ivlan_vid",
14333         .field_bit_size = 12,
14334         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14335         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14336         },
14337         {
14338         .description = "l2_ovlan_vid",
14339         .field_bit_size = 12,
14340         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14341         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14342         },
14343         {
14344         .description = "mac0_l2_dst",
14345         .field_bit_size = 48,
14346         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14347         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14348         },
14349         {
14350         .description = "svif",
14351         .field_bit_size = 8,
14352         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14353         .mask_operand = {
14354                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14355                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14356                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14359         .spec_operand = {
14360                 (BNXT_ULP_HF23_IDX_SVIF_INDEX >> 8) & 0xff,
14361                 BNXT_ULP_HF23_IDX_SVIF_INDEX & 0xff,
14362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14363                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14364         },
14365         {
14366         .description = "sparif",
14367         .field_bit_size = 4,
14368         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14369         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14370         },
14371         {
14372         .description = "tl2_ivlan_vid",
14373         .field_bit_size = 12,
14374         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14375         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14376         },
14377         {
14378         .description = "tl2_ovlan_vid",
14379         .field_bit_size = 12,
14380         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14381         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14382         },
14383         {
14384         .description = "mac1_tl2_dst",
14385         .field_bit_size = 48,
14386         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14387         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14388         },
14389         {
14390         .description = "l2_num_vtags",
14391         .field_bit_size = 2,
14392         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14393         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14394         },
14395         {
14396         .description = "tl2_num_vtags",
14397         .field_bit_size = 2,
14398         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14399         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14400         },
14401         {
14402         .description = "tun_hdr_type",
14403         .field_bit_size = 4,
14404         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14405         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14406                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14407         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14408         .spec_operand = {
14409                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
14410                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14412         },
14413         {
14414         .description = "key_type",
14415         .field_bit_size = 2,
14416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14417         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14418         },
14419         {
14420         .description = "valid",
14421         .field_bit_size = 1,
14422         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14423         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14424                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14425         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14426         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14427                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14428         },
14429         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
14430         {
14431         .description = "recycle",
14432         .field_bit_size = 1,
14433         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14434         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14435         },
14436         {
14437         .description = "prof_func_id",
14438         .field_bit_size = 7,
14439         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14440         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14441         .spec_operand = {
14442                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14443                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14444                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14445                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14446         },
14447         {
14448         .description = "class_tid",
14449         .field_bit_size = 8,
14450         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14451         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14452         .spec_operand = {
14453                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
14454                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
14455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14457         },
14458         /* class_tid: 23, wh_plus, table: profile_tcam_0 */
14459         {
14460         .description = "l4_hdr_is_udp_tcp",
14461         .field_bit_size = 1,
14462         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14463         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14464         },
14465         {
14466         .description = "l4_hdr_type",
14467         .field_bit_size = 4,
14468         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14469         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14470                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14472         },
14473         {
14474         .description = "l4_hdr_error",
14475         .field_bit_size = 1,
14476         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14477         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14478                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14479         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14480         },
14481         {
14482         .description = "l4_hdr_valid",
14483         .field_bit_size = 1,
14484         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14485         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14486                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14487         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14488         .spec_operand = {
14489                 BNXT_ULP_SYM_L4_HDR_VALID_YES,
14490                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14491                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14492         },
14493         {
14494         .description = "l3_ipv6_cmp_dst",
14495         .field_bit_size = 1,
14496         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14497         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14498         },
14499         {
14500         .description = "l3_ipv6_cmp_src",
14501         .field_bit_size = 1,
14502         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14503         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14504         },
14505         {
14506         .description = "l3_hdr_isIP",
14507         .field_bit_size = 1,
14508         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14509         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14510         },
14511         {
14512         .description = "l3_hdr_type",
14513         .field_bit_size = 4,
14514         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14515         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14516                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14517         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14518         .spec_operand = {
14519                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
14520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14521                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14522         },
14523         {
14524         .description = "l3_hdr_error",
14525         .field_bit_size = 1,
14526         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14527         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14528                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14530         },
14531         {
14532         .description = "l3_hdr_valid",
14533         .field_bit_size = 1,
14534         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14535         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14536                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14537         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14538         .spec_operand = {
14539                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
14540                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14542         },
14543         {
14544         .description = "l2_two_vtags",
14545         .field_bit_size = 1,
14546         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14547         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14548         },
14549         {
14550         .description = "l2_vtag_present",
14551         .field_bit_size = 1,
14552         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14553         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14554         },
14555         {
14556         .description = "l2_uc_mc_bc",
14557         .field_bit_size = 2,
14558         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14559         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14560         },
14561         {
14562         .description = "l2_hdr_type",
14563         .field_bit_size = 2,
14564         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14565         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14566                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14567         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14568         },
14569         {
14570         .description = "l2_hdr_error",
14571         .field_bit_size = 1,
14572         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14573         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14574                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14575         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14576         },
14577         {
14578         .description = "l2_hdr_valid",
14579         .field_bit_size = 1,
14580         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14581         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14582                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14583         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14584         .spec_operand = {
14585                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
14586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14587                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14588         },
14589         {
14590         .description = "tun_hdr_flags",
14591         .field_bit_size = 3,
14592         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14593         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14594         },
14595         {
14596         .description = "tun_hdr_type",
14597         .field_bit_size = 4,
14598         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14599         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14600         },
14601         {
14602         .description = "tun_hdr_error",
14603         .field_bit_size = 1,
14604         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14605         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14606         },
14607         {
14608         .description = "tun_hdr_valid",
14609         .field_bit_size = 1,
14610         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14611         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14612         },
14613         {
14614         .description = "tl4_hdr_is_udp_tcp",
14615         .field_bit_size = 1,
14616         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14617         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14618         },
14619         {
14620         .description = "tl4_hdr_type",
14621         .field_bit_size = 4,
14622         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14623         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14624         },
14625         {
14626         .description = "tl4_hdr_error",
14627         .field_bit_size = 1,
14628         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14629         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14630         },
14631         {
14632         .description = "tl4_hdr_valid",
14633         .field_bit_size = 1,
14634         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14635         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14636         },
14637         {
14638         .description = "tl3_ipv6_cmp_dst",
14639         .field_bit_size = 1,
14640         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14641         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14642         },
14643         {
14644         .description = "tl3_ipv6_cmp_src",
14645         .field_bit_size = 1,
14646         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14647         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14648         },
14649         {
14650         .description = "tl3_hdr_isIP",
14651         .field_bit_size = 1,
14652         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14653         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14654         },
14655         {
14656         .description = "tl3_hdr_type",
14657         .field_bit_size = 4,
14658         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14659         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14660         },
14661         {
14662         .description = "tl3_hdr_error",
14663         .field_bit_size = 1,
14664         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14665         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14666         },
14667         {
14668         .description = "tl3_hdr_valid",
14669         .field_bit_size = 1,
14670         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14671         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14672         },
14673         {
14674         .description = "tl2_two_vtags",
14675         .field_bit_size = 1,
14676         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14677         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14678         },
14679         {
14680         .description = "tl2_vtag_present",
14681         .field_bit_size = 1,
14682         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14683         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14684         },
14685         {
14686         .description = "tl2_uc_mc_bc",
14687         .field_bit_size = 2,
14688         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14689         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14690         },
14691         {
14692         .description = "tl2_hdr_type",
14693         .field_bit_size = 2,
14694         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14695         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14696         },
14697         {
14698         .description = "tl2_hdr_valid",
14699         .field_bit_size = 1,
14700         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14701         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14702         },
14703         {
14704         .description = "hrec_next",
14705         .field_bit_size = 1,
14706         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14707         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14708         },
14709         {
14710         .description = "reserved",
14711         .field_bit_size = 9,
14712         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14713         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14714         },
14715         {
14716         .description = "prof_func_id",
14717         .field_bit_size = 7,
14718         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14719         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14720                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14721         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
14722         .spec_operand = {
14723                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
14724                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
14725                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14726                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14727         },
14728         {
14729         .description = "agg_error",
14730         .field_bit_size = 1,
14731         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14732         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14733         },
14734         {
14735         .description = "recycle_cnt",
14736         .field_bit_size = 2,
14737         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14738         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14739                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14740         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14741         },
14742         {
14743         .description = "pkt_type_0",
14744         .field_bit_size = 2,
14745         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14746         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14747         },
14748         {
14749         .description = "pkt_type_1",
14750         .field_bit_size = 2,
14751         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14752         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14753                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14754         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14755         },
14756         {
14757         .description = "valid",
14758         .field_bit_size = 1,
14759         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14760         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
14761                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
14762         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14763         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
14764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14765         },
14766         /* class_tid: 23, wh_plus, table: ext_em_0 */
14767         {
14768         .description = "spare",
14769         .field_bit_size = 59,
14770         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14771         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14772         },
14773         {
14774         .description = "local_cos",
14775         .field_bit_size = 3,
14776         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14777         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14778         },
14779         {
14780         .description = "l4_dst_port",
14781         .field_bit_size = 16,
14782         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14783         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14784         .spec_operand = {
14785                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14786                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14787                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14788                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14789         },
14790         {
14791         .description = "l4_src_port",
14792         .field_bit_size = 16,
14793         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14794         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14795         .spec_operand = {
14796                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14797                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14799                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14800         },
14801         {
14802         .description = "ip_proto",
14803         .field_bit_size = 8,
14804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14805         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14806         .spec_operand = {
14807                 BNXT_ULP_SYM_IP_PROTO_TCP,
14808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14810         },
14811         {
14812         .description = "ipv6_dst_addr",
14813         .field_bit_size = 128,
14814         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14816         .spec_operand = {
14817                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14818                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14821         },
14822         {
14823         .description = "ipv6_src_addr",
14824         .field_bit_size = 128,
14825         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14826         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14827         .spec_operand = {
14828                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14829                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14830                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14831                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14832         },
14833         {
14834         .description = "l2_src_mac",
14835         .field_bit_size = 48,
14836         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14837         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14838         },
14839         {
14840         .description = "tun_id",
14841         .field_bit_size = 24,
14842         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14843         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14844         },
14845         {
14846         .description = "l2_cntxt_id",
14847         .field_bit_size = 10,
14848         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14849         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14850         .spec_operand = {
14851                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14852                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14854                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14855         },
14856         {
14857         .description = "em_profile_id",
14858         .field_bit_size = 8,
14859         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14860         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14861         .spec_operand = {
14862                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14863                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14864                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14865                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14866         },
14867         /* class_tid: 23, wh_plus, table: int_em_0 */
14868         {
14869         .description = "spare",
14870         .field_bit_size = 3,
14871         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14872         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14873         },
14874         {
14875         .description = "local_cos",
14876         .field_bit_size = 3,
14877         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14878         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14879         },
14880         {
14881         .description = "l4_dst_port",
14882         .field_bit_size = 16,
14883         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14884         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14885         .spec_operand = {
14886                 (BNXT_ULP_HF23_IDX_O_TCP_DST_PORT >> 8) & 0xff,
14887                 BNXT_ULP_HF23_IDX_O_TCP_DST_PORT & 0xff,
14888                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14890         },
14891         {
14892         .description = "l4_src_port",
14893         .field_bit_size = 16,
14894         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14895         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14896         .spec_operand = {
14897                 (BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT >> 8) & 0xff,
14898                 BNXT_ULP_HF23_IDX_O_TCP_SRC_PORT & 0xff,
14899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14901         },
14902         {
14903         .description = "ip_proto",
14904         .field_bit_size = 8,
14905         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14906         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
14907         .spec_operand = {
14908                 BNXT_ULP_SYM_IP_PROTO_TCP,
14909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14910                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14911         },
14912         {
14913         .description = "ipv6_dst_addr",
14914         .field_bit_size = 128,
14915         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14916         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14917         .spec_operand = {
14918                 (BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR >> 8) & 0xff,
14919                 BNXT_ULP_HF23_IDX_O_IPV6_DST_ADDR & 0xff,
14920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14921                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14922         },
14923         {
14924         .description = "ipv6_src_addr",
14925         .field_bit_size = 128,
14926         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14927         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14928         .spec_operand = {
14929                 (BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR >> 8) & 0xff,
14930                 BNXT_ULP_HF23_IDX_O_IPV6_SRC_ADDR & 0xff,
14931                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14933         },
14934         {
14935         .description = "l2_src_mac",
14936         .field_bit_size = 48,
14937         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14938         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14939         },
14940         {
14941         .description = "tun_id",
14942         .field_bit_size = 24,
14943         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14944         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14945         },
14946         {
14947         .description = "l2_cntxt_id",
14948         .field_bit_size = 10,
14949         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14950         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14951         .spec_operand = {
14952                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
14953                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
14954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14956         },
14957         {
14958         .description = "em_profile_id",
14959         .field_bit_size = 8,
14960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
14962         .spec_operand = {
14963                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
14964                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
14965                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14967         },
14968         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
14969         {
14970         .description = "l2_ivlan_vid",
14971         .field_bit_size = 12,
14972         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14973         .mask_operand = {
14974                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14975                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14976                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14977                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
14978         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14979         .spec_operand = {
14980                 (BNXT_ULP_HF24_IDX_OO_VLAN_VID >> 8) & 0xff,
14981                 BNXT_ULP_HF24_IDX_OO_VLAN_VID & 0xff,
14982                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
14984         },
14985         {
14986         .description = "l2_ovlan_vid",
14987         .field_bit_size = 12,
14988         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
14989         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
14990         },
14991         {
14992         .description = "mac0_l2_addr",
14993         .field_bit_size = 48,
14994         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
14995         .mask_operand = {
14996                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
14997                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
14998                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
14999                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15000         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15001         .spec_operand = {
15002                 (BNXT_ULP_HF24_IDX_O_ETH_SMAC >> 8) & 0xff,
15003                 BNXT_ULP_HF24_IDX_O_ETH_SMAC & 0xff,
15004                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15006         },
15007         {
15008         .description = "svif",
15009         .field_bit_size = 8,
15010         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15011         .mask_operand = {
15012                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
15013                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
15014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15016         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15017         .spec_operand = {
15018                 (BNXT_ULP_HF24_IDX_SVIF_INDEX >> 8) & 0xff,
15019                 BNXT_ULP_HF24_IDX_SVIF_INDEX & 0xff,
15020                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15021                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15022         },
15023         {
15024         .description = "sparif",
15025         .field_bit_size = 4,
15026         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15027         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15028         },
15029         {
15030         .description = "tl2_ivlan_vid",
15031         .field_bit_size = 12,
15032         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15033         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15034         },
15035         {
15036         .description = "tl2_ovlan_vid",
15037         .field_bit_size = 12,
15038         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15039         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15040         },
15041         {
15042         .description = "mac1_l2_addr",
15043         .field_bit_size = 48,
15044         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15045         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15046         },
15047         {
15048         .description = "l2_num_vtags",
15049         .field_bit_size = 2,
15050         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15051         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15052                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15053         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
15054         .spec_operand = {
15055                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
15056                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
15057                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15059         },
15060         {
15061         .description = "tl2_num_vtags",
15062         .field_bit_size = 2,
15063         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15064         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15065         },
15066         {
15067         .description = "tun_hdr_type",
15068         .field_bit_size = 4,
15069         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15070         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15071                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15072         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15073         .spec_operand = {
15074                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
15075                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15077         },
15078         {
15079         .description = "key_type",
15080         .field_bit_size = 2,
15081         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15082         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15083                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15084         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15085         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15087         },
15088         {
15089         .description = "valid",
15090         .field_bit_size = 1,
15091         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15092         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15093                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15094         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15095         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15097         },
15098         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
15099         {
15100         .description = "recycle",
15101         .field_bit_size = 1,
15102         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15103         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15104         },
15105         {
15106         .description = "prof_func_id",
15107         .field_bit_size = 7,
15108         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15109         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15110         .spec_operand = {
15111                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15112                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15113                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15114                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15115         },
15116         {
15117         .description = "class_tid",
15118         .field_bit_size = 8,
15119         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15120         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15121         .spec_operand = {
15122                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15123                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15126         },
15127         /* class_tid: 24, wh_plus, table: profile_tcam_0 */
15128         {
15129         .description = "l4_hdr_is_udp_tcp",
15130         .field_bit_size = 1,
15131         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15132         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15133         },
15134         {
15135         .description = "l4_hdr_type",
15136         .field_bit_size = 4,
15137         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15138         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15139         },
15140         {
15141         .description = "l4_hdr_error",
15142         .field_bit_size = 1,
15143         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15144         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15145         },
15146         {
15147         .description = "l4_hdr_valid",
15148         .field_bit_size = 1,
15149         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15150         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15151         },
15152         {
15153         .description = "l3_ipv6_cmp_dst",
15154         .field_bit_size = 1,
15155         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15156         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15157         },
15158         {
15159         .description = "l3_ipv6_cmp_src",
15160         .field_bit_size = 1,
15161         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15162         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15163         },
15164         {
15165         .description = "l3_hdr_isIP",
15166         .field_bit_size = 1,
15167         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15168         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15169         },
15170         {
15171         .description = "l3_hdr_type",
15172         .field_bit_size = 4,
15173         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15174         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15175                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15176         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15177         },
15178         {
15179         .description = "l3_hdr_error",
15180         .field_bit_size = 1,
15181         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15182         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15183                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15184         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15185         },
15186         {
15187         .description = "l3_hdr_valid",
15188         .field_bit_size = 1,
15189         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15190         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15191                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15192         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15193         .spec_operand = {
15194                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15197         },
15198         {
15199         .description = "l2_two_vtags",
15200         .field_bit_size = 1,
15201         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15202         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15203         },
15204         {
15205         .description = "l2_vtag_present",
15206         .field_bit_size = 1,
15207         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15208         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15209         },
15210         {
15211         .description = "l2_uc_mc_bc",
15212         .field_bit_size = 2,
15213         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15214         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15215                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15216         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15217         },
15218         {
15219         .description = "l2_hdr_type",
15220         .field_bit_size = 2,
15221         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15222         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15223                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15224         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15225         },
15226         {
15227         .description = "l2_hdr_error",
15228         .field_bit_size = 1,
15229         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15230         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15231                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15232         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15233         },
15234         {
15235         .description = "l2_hdr_valid",
15236         .field_bit_size = 1,
15237         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15238         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15239                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15240         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15241         .spec_operand = {
15242                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15245         },
15246         {
15247         .description = "tun_hdr_flags",
15248         .field_bit_size = 3,
15249         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15250         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15251         },
15252         {
15253         .description = "tun_hdr_type",
15254         .field_bit_size = 4,
15255         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15256         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15257         },
15258         {
15259         .description = "tun_hdr_error",
15260         .field_bit_size = 1,
15261         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15262         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15263         },
15264         {
15265         .description = "tun_hdr_valid",
15266         .field_bit_size = 1,
15267         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15268         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15269                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15270         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15271         },
15272         {
15273         .description = "tl4_hdr_is_udp_tcp",
15274         .field_bit_size = 1,
15275         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15276         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15277         },
15278         {
15279         .description = "tl4_hdr_type",
15280         .field_bit_size = 4,
15281         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15282         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15283         },
15284         {
15285         .description = "tl4_hdr_error",
15286         .field_bit_size = 1,
15287         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15288         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15289         },
15290         {
15291         .description = "tl4_hdr_valid",
15292         .field_bit_size = 1,
15293         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15294         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15295                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15296         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15297         },
15298         {
15299         .description = "tl3_ipv6_cmp_dst",
15300         .field_bit_size = 1,
15301         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15302         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15303         },
15304         {
15305         .description = "tl3_ipv6_cmp_src",
15306         .field_bit_size = 1,
15307         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15308         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15309         },
15310         {
15311         .description = "tl3_hdr_isIP",
15312         .field_bit_size = 1,
15313         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15314         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15315         },
15316         {
15317         .description = "tl3_hdr_type",
15318         .field_bit_size = 4,
15319         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15320         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15321         },
15322         {
15323         .description = "tl3_hdr_error",
15324         .field_bit_size = 1,
15325         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15326         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15327         },
15328         {
15329         .description = "tl3_hdr_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_ZERO
15335         },
15336         {
15337         .description = "tl2_two_vtags",
15338         .field_bit_size = 1,
15339         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15340         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15341         },
15342         {
15343         .description = "tl2_vtag_present",
15344         .field_bit_size = 1,
15345         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15346         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15347         },
15348         {
15349         .description = "tl2_uc_mc_bc",
15350         .field_bit_size = 2,
15351         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15352         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15353         },
15354         {
15355         .description = "tl2_hdr_type",
15356         .field_bit_size = 2,
15357         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15358         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15359         },
15360         {
15361         .description = "tl2_hdr_valid",
15362         .field_bit_size = 1,
15363         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15364         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15365                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15366         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15367         },
15368         {
15369         .description = "hrec_next",
15370         .field_bit_size = 1,
15371         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15372         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15373         },
15374         {
15375         .description = "reserved",
15376         .field_bit_size = 9,
15377         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15378         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15379         },
15380         {
15381         .description = "prof_func_id",
15382         .field_bit_size = 7,
15383         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15384         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15385                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15386         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15387         .spec_operand = {
15388                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15389                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15392         },
15393         {
15394         .description = "agg_error",
15395         .field_bit_size = 1,
15396         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15397         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15398         },
15399         {
15400         .description = "recycle_cnt",
15401         .field_bit_size = 2,
15402         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15403         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15404                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15405         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15406         },
15407         {
15408         .description = "pkt_type_0",
15409         .field_bit_size = 2,
15410         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15411         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15412         },
15413         {
15414         .description = "pkt_type_1",
15415         .field_bit_size = 2,
15416         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15417         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15418                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15419         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15420         },
15421         {
15422         .description = "valid",
15423         .field_bit_size = 1,
15424         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15425         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15426                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15427         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15428         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15429                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15430         },
15431         /* class_tid: 24, wh_plus, table: ext_em_0 */
15432         {
15433         .description = "spare",
15434         .field_bit_size = 351,
15435         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15436         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15437         },
15438         {
15439         .description = "local_cos",
15440         .field_bit_size = 3,
15441         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15442         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15443         },
15444         {
15445         .description = "l2_eth_type",
15446         .field_bit_size = 16,
15447         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15448         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15449         },
15450         {
15451         .description = "l2_inner_vid",
15452         .field_bit_size = 12,
15453         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15454         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15455         },
15456         {
15457         .description = "l2_dmac",
15458         .field_bit_size = 48,
15459         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15460         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15461         .spec_operand = {
15462                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15463                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15466         },
15467         {
15468         .description = "l2_cntxt_id",
15469         .field_bit_size = 10,
15470         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15471         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15472         .spec_operand = {
15473                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15474                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15477         },
15478         {
15479         .description = "em_profile_id",
15480         .field_bit_size = 8,
15481         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15482         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15483         .spec_operand = {
15484                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15485                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15487                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15488         },
15489         /* class_tid: 24, wh_plus, table: int_em_0 */
15490         {
15491         .description = "spare",
15492         .field_bit_size = 7,
15493         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15494         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15495         },
15496         {
15497         .description = "local_cos",
15498         .field_bit_size = 3,
15499         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15500         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15501         },
15502         {
15503         .description = "l2_eth_type",
15504         .field_bit_size = 16,
15505         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15506         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15507         },
15508         {
15509         .description = "l2_inner_vid",
15510         .field_bit_size = 12,
15511         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15512         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15513         },
15514         {
15515         .description = "l2_dmac",
15516         .field_bit_size = 48,
15517         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15518         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15519         .spec_operand = {
15520                 (BNXT_ULP_HF24_IDX_O_ETH_DMAC >> 8) & 0xff,
15521                 BNXT_ULP_HF24_IDX_O_ETH_DMAC & 0xff,
15522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15524         },
15525         {
15526         .description = "l2_cntxt_id",
15527         .field_bit_size = 10,
15528         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15529         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15530         .spec_operand = {
15531                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
15532                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
15533                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15534                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15535         },
15536         {
15537         .description = "em_profile_id",
15538         .field_bit_size = 8,
15539         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15540         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15541         .spec_operand = {
15542                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
15543                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
15544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15545                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15546         },
15547         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
15548         {
15549         .description = "l2_ivlan_vid",
15550         .field_bit_size = 12,
15551         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15552         .mask_operand = {
15553                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15554                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15555                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15557         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15558         .spec_operand = {
15559                 (BNXT_ULP_HF25_IDX_OO_VLAN_VID >> 8) & 0xff,
15560                 BNXT_ULP_HF25_IDX_OO_VLAN_VID & 0xff,
15561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15563         },
15564         {
15565         .description = "l2_ovlan_vid",
15566         .field_bit_size = 12,
15567         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15568         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15569         },
15570         {
15571         .description = "mac0_l2_addr",
15572         .field_bit_size = 48,
15573         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15574         .mask_operand = {
15575                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15576                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15577                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15579         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15580         .spec_operand = {
15581                 (BNXT_ULP_HF25_IDX_O_ETH_SMAC >> 8) & 0xff,
15582                 BNXT_ULP_HF25_IDX_O_ETH_SMAC & 0xff,
15583                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15585         },
15586         {
15587         .description = "svif",
15588         .field_bit_size = 8,
15589         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15590         .mask_operand = {
15591                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15592                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15593                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15594                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
15595         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
15596         .spec_operand = {
15597                 (BNXT_ULP_HF25_IDX_SVIF_INDEX >> 8) & 0xff,
15598                 BNXT_ULP_HF25_IDX_SVIF_INDEX & 0xff,
15599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15600                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15601         },
15602         {
15603         .description = "sparif",
15604         .field_bit_size = 4,
15605         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15606         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15607         },
15608         {
15609         .description = "tl2_ivlan_vid",
15610         .field_bit_size = 12,
15611         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15612         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15613         },
15614         {
15615         .description = "tl2_ovlan_vid",
15616         .field_bit_size = 12,
15617         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15618         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15619         },
15620         {
15621         .description = "mac1_l2_addr",
15622         .field_bit_size = 48,
15623         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15624         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15625         },
15626         {
15627         .description = "l2_num_vtags",
15628         .field_bit_size = 2,
15629         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15630         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15631                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15632         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
15633         .spec_operand = {
15634                 (BNXT_ULP_CF_IDX_O_VTAG_NUM >> 8) & 0xff,
15635                 BNXT_ULP_CF_IDX_O_VTAG_NUM & 0xff,
15636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15637                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15638         },
15639         {
15640         .description = "tl2_num_vtags",
15641         .field_bit_size = 2,
15642         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15643         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15644         },
15645         {
15646         .description = "tun_hdr_type",
15647         .field_bit_size = 4,
15648         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15649         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15650                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15651         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15652         .spec_operand = {
15653                 BNXT_ULP_SYM_TUN_HDR_TYPE_NONE,
15654                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15656         },
15657         {
15658         .description = "key_type",
15659         .field_bit_size = 2,
15660         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15661         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15662                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15663         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15664         .spec_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
15665                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15666         },
15667         {
15668         .description = "valid",
15669         .field_bit_size = 1,
15670         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15671         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15672                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15673         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15674         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
15675                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15676         },
15677         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
15678         {
15679         .description = "recycle",
15680         .field_bit_size = 1,
15681         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15682         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15683         },
15684         {
15685         .description = "prof_func_id",
15686         .field_bit_size = 7,
15687         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15688         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15689         .spec_operand = {
15690                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15691                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15692                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15693                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15694         },
15695         {
15696         .description = "class_tid",
15697         .field_bit_size = 8,
15698         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15699         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
15700         .spec_operand = {
15701                 (BNXT_ULP_REGFILE_INDEX_CLASS_TID >> 8) & 0xff,
15702                 BNXT_ULP_REGFILE_INDEX_CLASS_TID & 0xff,
15703                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15704                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15705         },
15706         /* class_tid: 25, wh_plus, table: profile_tcam_0 */
15707         {
15708         .description = "l4_hdr_is_udp_tcp",
15709         .field_bit_size = 1,
15710         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15711         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15712         },
15713         {
15714         .description = "l4_hdr_type",
15715         .field_bit_size = 4,
15716         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15717         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15718         },
15719         {
15720         .description = "l4_hdr_error",
15721         .field_bit_size = 1,
15722         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15723         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15724         },
15725         {
15726         .description = "l4_hdr_valid",
15727         .field_bit_size = 1,
15728         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15729         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15730         },
15731         {
15732         .description = "l3_ipv6_cmp_dst",
15733         .field_bit_size = 1,
15734         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15735         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15736         },
15737         {
15738         .description = "l3_ipv6_cmp_src",
15739         .field_bit_size = 1,
15740         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15741         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15742         },
15743         {
15744         .description = "l3_hdr_isIP",
15745         .field_bit_size = 1,
15746         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15747         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15748         },
15749         {
15750         .description = "l3_hdr_type",
15751         .field_bit_size = 4,
15752         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15753         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15754                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15755         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15756         .spec_operand = {
15757                 BNXT_ULP_SYM_L3_HDR_TYPE_IPV6,
15758                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15759                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15760         },
15761         {
15762         .description = "l3_hdr_error",
15763         .field_bit_size = 1,
15764         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15765         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15766                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15767         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15768         },
15769         {
15770         .description = "l3_hdr_valid",
15771         .field_bit_size = 1,
15772         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15773         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15774                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15775         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15776         .spec_operand = {
15777                 BNXT_ULP_SYM_L3_HDR_VALID_YES,
15778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15780         },
15781         {
15782         .description = "l2_two_vtags",
15783         .field_bit_size = 1,
15784         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15785         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15786         },
15787         {
15788         .description = "l2_vtag_present",
15789         .field_bit_size = 1,
15790         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15791         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15792         },
15793         {
15794         .description = "l2_uc_mc_bc",
15795         .field_bit_size = 2,
15796         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15797         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15798                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15799         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15800         },
15801         {
15802         .description = "l2_hdr_type",
15803         .field_bit_size = 2,
15804         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15805         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15806                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15807         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15808         },
15809         {
15810         .description = "l2_hdr_error",
15811         .field_bit_size = 1,
15812         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15813         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15814                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15815         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15816         },
15817         {
15818         .description = "l2_hdr_valid",
15819         .field_bit_size = 1,
15820         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15821         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15822                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15823         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15824         .spec_operand = {
15825                 BNXT_ULP_SYM_L2_HDR_VALID_YES,
15826                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15828         },
15829         {
15830         .description = "tun_hdr_flags",
15831         .field_bit_size = 3,
15832         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15833         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15834         },
15835         {
15836         .description = "tun_hdr_type",
15837         .field_bit_size = 4,
15838         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15839         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15840         },
15841         {
15842         .description = "tun_hdr_error",
15843         .field_bit_size = 1,
15844         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15845         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15846         },
15847         {
15848         .description = "tun_hdr_valid",
15849         .field_bit_size = 1,
15850         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15851         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15852                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15853         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15854         },
15855         {
15856         .description = "tl4_hdr_is_udp_tcp",
15857         .field_bit_size = 1,
15858         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15859         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15860         },
15861         {
15862         .description = "tl4_hdr_type",
15863         .field_bit_size = 4,
15864         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15865         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15866         },
15867         {
15868         .description = "tl4_hdr_error",
15869         .field_bit_size = 1,
15870         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15871         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15872         },
15873         {
15874         .description = "tl4_hdr_valid",
15875         .field_bit_size = 1,
15876         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15877         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15878                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15879         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15880         },
15881         {
15882         .description = "tl3_ipv6_cmp_dst",
15883         .field_bit_size = 1,
15884         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15885         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15886         },
15887         {
15888         .description = "tl3_ipv6_cmp_src",
15889         .field_bit_size = 1,
15890         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15891         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15892         },
15893         {
15894         .description = "tl3_hdr_isIP",
15895         .field_bit_size = 1,
15896         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15897         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15898         },
15899         {
15900         .description = "tl3_hdr_type",
15901         .field_bit_size = 4,
15902         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15903         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15904         },
15905         {
15906         .description = "tl3_hdr_error",
15907         .field_bit_size = 1,
15908         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15909         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15910         },
15911         {
15912         .description = "tl3_hdr_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_ZERO
15918         },
15919         {
15920         .description = "tl2_two_vtags",
15921         .field_bit_size = 1,
15922         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15923         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15924         },
15925         {
15926         .description = "tl2_vtag_present",
15927         .field_bit_size = 1,
15928         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15929         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15930         },
15931         {
15932         .description = "tl2_uc_mc_bc",
15933         .field_bit_size = 2,
15934         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15935         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15936         },
15937         {
15938         .description = "tl2_hdr_type",
15939         .field_bit_size = 2,
15940         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15941         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15942         },
15943         {
15944         .description = "tl2_hdr_valid",
15945         .field_bit_size = 1,
15946         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15947         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15948                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15949         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15950         },
15951         {
15952         .description = "hrec_next",
15953         .field_bit_size = 1,
15954         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15955         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15956         },
15957         {
15958         .description = "reserved",
15959         .field_bit_size = 9,
15960         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15961         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15962         },
15963         {
15964         .description = "prof_func_id",
15965         .field_bit_size = 7,
15966         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15967         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15968                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15969         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
15970         .spec_operand = {
15971                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
15972                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
15973                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
15975         },
15976         {
15977         .description = "agg_error",
15978         .field_bit_size = 1,
15979         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15980         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15981         },
15982         {
15983         .description = "recycle_cnt",
15984         .field_bit_size = 2,
15985         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
15986         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
15987                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
15988         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15989         },
15990         {
15991         .description = "pkt_type_0",
15992         .field_bit_size = 2,
15993         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
15994         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
15995         },
15996         {
15997         .description = "pkt_type_1",
15998         .field_bit_size = 2,
15999         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16000         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
16001                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
16002         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16003         },
16004         {
16005         .description = "valid",
16006         .field_bit_size = 1,
16007         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16008         .mask_operand = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
16009                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff},
16010         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16011         .spec_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16012                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16013         },
16014         /* class_tid: 25, wh_plus, table: ext_em_0 */
16015         {
16016         .description = "spare",
16017         .field_bit_size = 351,
16018         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16019         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16020         },
16021         {
16022         .description = "local_cos",
16023         .field_bit_size = 3,
16024         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16025         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16026         },
16027         {
16028         .description = "l2_eth_type",
16029         .field_bit_size = 16,
16030         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16031         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16032         },
16033         {
16034         .description = "l2_inner_vid",
16035         .field_bit_size = 12,
16036         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16037         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16038         },
16039         {
16040         .description = "l2_dmac",
16041         .field_bit_size = 48,
16042         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16043         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
16044         .spec_operand = {
16045                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
16046                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
16047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16048                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16049         },
16050         {
16051         .description = "l2_cntxt_id",
16052         .field_bit_size = 10,
16053         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16054         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16055         .spec_operand = {
16056                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16057                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16058                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16060         },
16061         {
16062         .description = "em_profile_id",
16063         .field_bit_size = 8,
16064         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16065         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16066         .spec_operand = {
16067                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
16068                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
16069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16070                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16071         },
16072         /* class_tid: 25, wh_plus, table: int_em_0 */
16073         {
16074         .description = "spare",
16075         .field_bit_size = 7,
16076         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16077         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16078         },
16079         {
16080         .description = "local_cos",
16081         .field_bit_size = 3,
16082         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16083         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16084         },
16085         {
16086         .description = "l2_eth_type",
16087         .field_bit_size = 16,
16088         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16089         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16090         },
16091         {
16092         .description = "l2_inner_vid",
16093         .field_bit_size = 12,
16094         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16095         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16096         },
16097         {
16098         .description = "l2_dmac",
16099         .field_bit_size = 48,
16100         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16101         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_HDR_FIELD,
16102         .spec_operand = {
16103                 (BNXT_ULP_HF25_IDX_O_ETH_DMAC >> 8) & 0xff,
16104                 BNXT_ULP_HF25_IDX_O_ETH_DMAC & 0xff,
16105                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16106                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16107         },
16108         {
16109         .description = "l2_cntxt_id",
16110         .field_bit_size = 10,
16111         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16112         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16113         .spec_operand = {
16114                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16115                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16117                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16118         },
16119         {
16120         .description = "em_profile_id",
16121         .field_bit_size = 8,
16122         .mask_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO,
16123         .spec_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16124         .spec_operand = {
16125                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
16126                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
16127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16129         }
16130 };
16131
16132 struct bnxt_ulp_mapper_result_field_info ulp_wh_plus_class_result_field_list[] = {
16133         /* class_tid: 1, wh_plus, table: int_full_act_record_0 */
16134         {
16135         .description = "flow_cntr_ptr",
16136         .field_bit_size = 14,
16137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16138         },
16139         {
16140         .description = "age_enable",
16141         .field_bit_size = 1,
16142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16143         },
16144         {
16145         .description = "agg_cntr_en",
16146         .field_bit_size = 1,
16147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16148         },
16149         {
16150         .description = "rate_cntr_en",
16151         .field_bit_size = 1,
16152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16153         },
16154         {
16155         .description = "flow_cntr_en",
16156         .field_bit_size = 1,
16157         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16158         },
16159         {
16160         .description = "tcpflags_key",
16161         .field_bit_size = 8,
16162         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16163         },
16164         {
16165         .description = "tcpflags_mir",
16166         .field_bit_size = 1,
16167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16168         },
16169         {
16170         .description = "tcpflags_match",
16171         .field_bit_size = 1,
16172         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16173         },
16174         {
16175         .description = "encap_ptr",
16176         .field_bit_size = 11,
16177         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16178         },
16179         {
16180         .description = "dst_ip_ptr",
16181         .field_bit_size = 10,
16182         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16183         },
16184         {
16185         .description = "tcp_dst_port",
16186         .field_bit_size = 16,
16187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16188         },
16189         {
16190         .description = "src_ip_ptr",
16191         .field_bit_size = 10,
16192         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16193         },
16194         {
16195         .description = "tcp_src_port",
16196         .field_bit_size = 16,
16197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16198         },
16199         {
16200         .description = "meter_id",
16201         .field_bit_size = 10,
16202         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16203         },
16204         {
16205         .description = "l3_rdir",
16206         .field_bit_size = 1,
16207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16208         },
16209         {
16210         .description = "tl3_rdir",
16211         .field_bit_size = 1,
16212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16213         },
16214         {
16215         .description = "l3_ttl_dec",
16216         .field_bit_size = 1,
16217         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16218         },
16219         {
16220         .description = "tl3_ttl_dec",
16221         .field_bit_size = 1,
16222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16223         },
16224         {
16225         .description = "decap_func",
16226         .field_bit_size = 4,
16227         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16228         },
16229         {
16230         .description = "vnic_or_vport",
16231         .field_bit_size = 12,
16232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16233         .result_operand = {
16234                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
16235                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
16236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16238         },
16239         {
16240         .description = "pop_vlan",
16241         .field_bit_size = 1,
16242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16243         },
16244         {
16245         .description = "meter",
16246         .field_bit_size = 1,
16247         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16248         },
16249         {
16250         .description = "mirror",
16251         .field_bit_size = 2,
16252         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16253         },
16254         {
16255         .description = "drop",
16256         .field_bit_size = 1,
16257         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16258         },
16259         {
16260         .description = "hit",
16261         .field_bit_size = 1,
16262         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16263         },
16264         {
16265         .description = "type",
16266         .field_bit_size = 1,
16267         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16268         },
16269         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
16270         {
16271         .description = "l2_cntxt_id",
16272         .field_bit_size = 10,
16273         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16274         .result_operand = {
16275                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16276                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16279         },
16280         /* class_tid: 1, wh_plus, table: l2_cntxt_tcam_0 */
16281         {
16282         .description = "l2_cntxt_id",
16283         .field_bit_size = 10,
16284         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16285         .result_operand = {
16286                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16287                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16288                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16289                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16290         },
16291         {
16292         .description = "prof_func_id",
16293         .field_bit_size = 7,
16294         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16295         .result_operand = {
16296                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16297                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16300         },
16301         {
16302         .description = "l2_byp_lkup_en",
16303         .field_bit_size = 1,
16304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16305         },
16306         {
16307         .description = "parif",
16308         .field_bit_size = 4,
16309         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16310         .result_operand = {
16311                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
16312                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
16313                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16314                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16315         },
16316         {
16317         .description = "allowed_pri",
16318         .field_bit_size = 8,
16319         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16320         },
16321         {
16322         .description = "default_pri",
16323         .field_bit_size = 3,
16324         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16325         },
16326         {
16327         .description = "allowed_tpid",
16328         .field_bit_size = 6,
16329         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16330         },
16331         {
16332         .description = "default_tpid",
16333         .field_bit_size = 3,
16334         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16335         },
16336         {
16337         .description = "bd_act_en",
16338         .field_bit_size = 1,
16339         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16340         },
16341         {
16342         .description = "sp_rec_ptr",
16343         .field_bit_size = 16,
16344         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16345         },
16346         {
16347         .description = "byp_sp_lkup",
16348         .field_bit_size = 1,
16349         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16350         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16351                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16352         },
16353         {
16354         .description = "pri_anti_spoof_ctl",
16355         .field_bit_size = 2,
16356         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16357         },
16358         {
16359         .description = "tpid_anti_spoof_ctl",
16360         .field_bit_size = 2,
16361         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16362         },
16363         /* class_tid: 1, wh_plus, table: parif_def_lkup_arec_ptr_0 */
16364         {
16365         .description = "act_rec_ptr",
16366         .field_bit_size = 32,
16367         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16368         .result_operand = {
16369                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16370                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16373         },
16374         /* class_tid: 1, wh_plus, table: parif_def_arec_ptr_0 */
16375         {
16376         .description = "act_rec_ptr",
16377         .field_bit_size = 32,
16378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16379         .result_operand = {
16380                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16381                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16384         },
16385         /* class_tid: 1, wh_plus, table: parif_def_err_arec_ptr_0 */
16386         {
16387         .description = "act_rec_ptr",
16388         .field_bit_size = 32,
16389         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16390         .result_operand = {
16391                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16392                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16393                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16394                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16395         },
16396         /* class_tid: 2, wh_plus, table: int_full_act_record_0 */
16397         {
16398         .description = "flow_cntr_ptr",
16399         .field_bit_size = 14,
16400         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16401         },
16402         {
16403         .description = "age_enable",
16404         .field_bit_size = 1,
16405         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16406         },
16407         {
16408         .description = "agg_cntr_en",
16409         .field_bit_size = 1,
16410         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16411         },
16412         {
16413         .description = "rate_cntr_en",
16414         .field_bit_size = 1,
16415         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16416         },
16417         {
16418         .description = "flow_cntr_en",
16419         .field_bit_size = 1,
16420         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16421         },
16422         {
16423         .description = "tcpflags_key",
16424         .field_bit_size = 8,
16425         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16426         },
16427         {
16428         .description = "tcpflags_mir",
16429         .field_bit_size = 1,
16430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16431         },
16432         {
16433         .description = "tcpflags_match",
16434         .field_bit_size = 1,
16435         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16436         },
16437         {
16438         .description = "encap_ptr",
16439         .field_bit_size = 11,
16440         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16441         },
16442         {
16443         .description = "dst_ip_ptr",
16444         .field_bit_size = 10,
16445         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16446         },
16447         {
16448         .description = "tcp_dst_port",
16449         .field_bit_size = 16,
16450         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16451         },
16452         {
16453         .description = "src_ip_ptr",
16454         .field_bit_size = 10,
16455         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16456         },
16457         {
16458         .description = "tcp_src_port",
16459         .field_bit_size = 16,
16460         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16461         },
16462         {
16463         .description = "meter_id",
16464         .field_bit_size = 10,
16465         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16466         },
16467         {
16468         .description = "l3_rdir",
16469         .field_bit_size = 1,
16470         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16471         },
16472         {
16473         .description = "tl3_rdir",
16474         .field_bit_size = 1,
16475         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16476         },
16477         {
16478         .description = "l3_ttl_dec",
16479         .field_bit_size = 1,
16480         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16481         },
16482         {
16483         .description = "tl3_ttl_dec",
16484         .field_bit_size = 1,
16485         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16486         },
16487         {
16488         .description = "decap_func",
16489         .field_bit_size = 4,
16490         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16491         },
16492         {
16493         .description = "vnic_or_vport",
16494         .field_bit_size = 12,
16495         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16496         .result_operand = {
16497                 (BNXT_ULP_CF_IDX_PHY_PORT_VPORT >> 8) & 0xff,
16498                 BNXT_ULP_CF_IDX_PHY_PORT_VPORT & 0xff,
16499                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16500                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16501         },
16502         {
16503         .description = "pop_vlan",
16504         .field_bit_size = 1,
16505         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16506         },
16507         {
16508         .description = "meter",
16509         .field_bit_size = 1,
16510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16511         },
16512         {
16513         .description = "mirror",
16514         .field_bit_size = 2,
16515         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16516         },
16517         {
16518         .description = "drop",
16519         .field_bit_size = 1,
16520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16521         },
16522         {
16523         .description = "hit",
16524         .field_bit_size = 1,
16525         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16526         },
16527         {
16528         .description = "type",
16529         .field_bit_size = 1,
16530         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16531         },
16532         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_vfr_0 */
16533         {
16534         .description = "act_record_ptr",
16535         .field_bit_size = 16,
16536         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16537         },
16538         {
16539         .description = "reserved",
16540         .field_bit_size = 1,
16541         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16542         },
16543         {
16544         .description = "l2_byp_lkup_en",
16545         .field_bit_size = 1,
16546         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16547         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16548                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16549         },
16550         {
16551         .description = "parif",
16552         .field_bit_size = 4,
16553         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16554         .result_operand = {
16555                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16556                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16557                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16558                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16559         },
16560         {
16561         .description = "allowed_pri",
16562         .field_bit_size = 8,
16563         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16564         },
16565         {
16566         .description = "default_pri",
16567         .field_bit_size = 3,
16568         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16569         },
16570         {
16571         .description = "allowed_tpid",
16572         .field_bit_size = 6,
16573         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16574         },
16575         {
16576         .description = "default_tpid",
16577         .field_bit_size = 3,
16578         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16579         },
16580         {
16581         .description = "bd_act_en",
16582         .field_bit_size = 1,
16583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16584         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16586         },
16587         {
16588         .description = "sp_rec_ptr",
16589         .field_bit_size = 16,
16590         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16591         },
16592         {
16593         .description = "byp_sp_lkup",
16594         .field_bit_size = 1,
16595         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16596         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16597                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16598         },
16599         {
16600         .description = "pri_anti_spoof_ctl",
16601         .field_bit_size = 2,
16602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16603         },
16604         {
16605         .description = "tpid_anti_spoof_ctl",
16606         .field_bit_size = 2,
16607         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16608         },
16609         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
16610         {
16611         .description = "l2_cntxt_id",
16612         .field_bit_size = 10,
16613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16614         .result_operand = {
16615                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16616                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16618                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16619         },
16620         /* class_tid: 2, wh_plus, table: l2_cntxt_tcam_0 */
16621         {
16622         .description = "l2_cntxt_id",
16623         .field_bit_size = 10,
16624         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16625         .result_operand = {
16626                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
16627                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
16628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16629                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16630         },
16631         {
16632         .description = "prof_func_id",
16633         .field_bit_size = 7,
16634         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
16635         .result_operand = {
16636                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
16637                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
16638                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16639                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16640         },
16641         {
16642         .description = "l2_byp_lkup_en",
16643         .field_bit_size = 1,
16644         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16645         },
16646         {
16647         .description = "parif",
16648         .field_bit_size = 4,
16649         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16650         .result_operand = {
16651                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
16652                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
16653                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16654                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16655         },
16656         {
16657         .description = "allowed_pri",
16658         .field_bit_size = 8,
16659         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16660         },
16661         {
16662         .description = "default_pri",
16663         .field_bit_size = 3,
16664         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16665         },
16666         {
16667         .description = "allowed_tpid",
16668         .field_bit_size = 6,
16669         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16670         },
16671         {
16672         .description = "default_tpid",
16673         .field_bit_size = 3,
16674         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16675         },
16676         {
16677         .description = "bd_act_en",
16678         .field_bit_size = 1,
16679         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16680         },
16681         {
16682         .description = "sp_rec_ptr",
16683         .field_bit_size = 16,
16684         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16685         },
16686         {
16687         .description = "byp_sp_lkup",
16688         .field_bit_size = 1,
16689         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16690         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16692         },
16693         {
16694         .description = "pri_anti_spoof_ctl",
16695         .field_bit_size = 2,
16696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16697         },
16698         {
16699         .description = "tpid_anti_spoof_ctl",
16700         .field_bit_size = 2,
16701         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16702         },
16703         /* class_tid: 2, wh_plus, table: parif_def_lkup_arec_ptr_0 */
16704         {
16705         .description = "act_rec_ptr",
16706         .field_bit_size = 32,
16707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16708         .result_operand = {
16709                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16710                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16713         },
16714         /* class_tid: 2, wh_plus, table: parif_def_arec_ptr_0 */
16715         {
16716         .description = "act_rec_ptr",
16717         .field_bit_size = 32,
16718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16719         .result_operand = {
16720                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16721                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16722                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16723                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16724         },
16725         /* class_tid: 2, wh_plus, table: parif_def_err_arec_ptr_0 */
16726         {
16727         .description = "act_rec_ptr",
16728         .field_bit_size = 32,
16729         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16730         .result_operand = {
16731                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
16732                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
16733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16735         },
16736         /* class_tid: 3, wh_plus, table: egr_int_vtag_encap_record_0 */
16737         {
16738         .description = "ecv_tun_type",
16739         .field_bit_size = 3,
16740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16741         },
16742         {
16743         .description = "ecv_l4_type",
16744         .field_bit_size = 3,
16745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16746         },
16747         {
16748         .description = "ecv_l3_type",
16749         .field_bit_size = 3,
16750         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16751         },
16752         {
16753         .description = "ecv_l2_en",
16754         .field_bit_size = 1,
16755         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16756         },
16757         {
16758         .description = "ecv_vtag_type",
16759         .field_bit_size = 4,
16760         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16761         .result_operand = {
16762                 BNXT_ULP_SYM_ECV_VTAG_TYPE_ADD_1_ENCAP_PRI,
16763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16764                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16765         },
16766         {
16767         .description = "ecv_custom_en",
16768         .field_bit_size = 1,
16769         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16770         },
16771         {
16772         .description = "ecv_valid",
16773         .field_bit_size = 1,
16774         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16775         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16777         },
16778         {
16779         .description = "vtag_tpid",
16780         .field_bit_size = 16,
16781         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16782         .result_operand = {0x81, 0x00}
16783         },
16784         {
16785         .description = "vtag_vid",
16786         .field_bit_size = 12,
16787         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
16788         .result_operand = {
16789                 (BNXT_ULP_CF_IDX_DEV_PORT_ID >> 8) & 0xff,
16790                 BNXT_ULP_CF_IDX_DEV_PORT_ID & 0xff,
16791                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16793         },
16794         {
16795         .description = "vtag_de",
16796         .field_bit_size = 1,
16797         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16798         },
16799         {
16800         .description = "vtag_pcp",
16801         .field_bit_size = 3,
16802         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16803         },
16804         {
16805         .description = "spare",
16806         .field_bit_size = 16,
16807         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16808         },
16809         /* class_tid: 3, wh_plus, table: egr_int_full_act_record_0 */
16810         {
16811         .description = "flow_cntr_ptr",
16812         .field_bit_size = 14,
16813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16814         },
16815         {
16816         .description = "age_enable",
16817         .field_bit_size = 1,
16818         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16819         },
16820         {
16821         .description = "agg_cntr_en",
16822         .field_bit_size = 1,
16823         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16824         },
16825         {
16826         .description = "rate_cntr_en",
16827         .field_bit_size = 1,
16828         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16829         },
16830         {
16831         .description = "flow_cntr_en",
16832         .field_bit_size = 1,
16833         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16834         },
16835         {
16836         .description = "tcpflags_key",
16837         .field_bit_size = 8,
16838         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16839         },
16840         {
16841         .description = "tcpflags_mir",
16842         .field_bit_size = 1,
16843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16844         },
16845         {
16846         .description = "tcpflags_match",
16847         .field_bit_size = 1,
16848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16849         },
16850         {
16851         .description = "encap_ptr",
16852         .field_bit_size = 11,
16853         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
16854         .result_operand = {
16855                 (BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 >> 8) & 0xff,
16856                 BNXT_ULP_REGFILE_INDEX_ENCAP_PTR_0 & 0xff,
16857                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16859         },
16860         {
16861         .description = "dst_ip_ptr",
16862         .field_bit_size = 10,
16863         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16864         },
16865         {
16866         .description = "tcp_dst_port",
16867         .field_bit_size = 16,
16868         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16869         },
16870         {
16871         .description = "src_ip_ptr",
16872         .field_bit_size = 10,
16873         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16874         },
16875         {
16876         .description = "tcp_src_port",
16877         .field_bit_size = 16,
16878         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16879         },
16880         {
16881         .description = "meter_id",
16882         .field_bit_size = 10,
16883         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16884         },
16885         {
16886         .description = "l3_rdir",
16887         .field_bit_size = 1,
16888         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16889         },
16890         {
16891         .description = "tl3_rdir",
16892         .field_bit_size = 1,
16893         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16894         },
16895         {
16896         .description = "l3_ttl_dec",
16897         .field_bit_size = 1,
16898         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16899         },
16900         {
16901         .description = "tl3_ttl_dec",
16902         .field_bit_size = 1,
16903         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16904         },
16905         {
16906         .description = "decap_func",
16907         .field_bit_size = 4,
16908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16909         },
16910         {
16911         .description = "vnic_or_vport",
16912         .field_bit_size = 12,
16913         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16914         .result_operand = {
16915                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
16916                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
16917                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16919         },
16920         {
16921         .description = "pop_vlan",
16922         .field_bit_size = 1,
16923         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16924         },
16925         {
16926         .description = "meter",
16927         .field_bit_size = 1,
16928         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16929         },
16930         {
16931         .description = "mirror",
16932         .field_bit_size = 2,
16933         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16934         },
16935         {
16936         .description = "drop",
16937         .field_bit_size = 1,
16938         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16939         },
16940         {
16941         .description = "hit",
16942         .field_bit_size = 1,
16943         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16944         },
16945         {
16946         .description = "type",
16947         .field_bit_size = 1,
16948         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16949         },
16950         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_cache_0 */
16951         /* class_tid: 3, wh_plus, table: egr_l2_cntxt_tcam_0 */
16952         {
16953         .description = "act_record_ptr",
16954         .field_bit_size = 16,
16955         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16956         },
16957         {
16958         .description = "reserved",
16959         .field_bit_size = 1,
16960         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16961         },
16962         {
16963         .description = "l2_byp_lkup_en",
16964         .field_bit_size = 1,
16965         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16966         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
16968         },
16969         {
16970         .description = "parif",
16971         .field_bit_size = 4,
16972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16973         },
16974         {
16975         .description = "allowed_pri",
16976         .field_bit_size = 8,
16977         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16978         },
16979         {
16980         .description = "default_pri",
16981         .field_bit_size = 3,
16982         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16983         },
16984         {
16985         .description = "allowed_tpid",
16986         .field_bit_size = 6,
16987         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16988         },
16989         {
16990         .description = "default_tpid",
16991         .field_bit_size = 3,
16992         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
16993         },
16994         {
16995         .description = "bd_act_en",
16996         .field_bit_size = 1,
16997         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
16998         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
16999                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17000         },
17001         {
17002         .description = "sp_rec_ptr",
17003         .field_bit_size = 16,
17004         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17005         },
17006         {
17007         .description = "byp_sp_lkup",
17008         .field_bit_size = 1,
17009         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17010         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17011                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17012         },
17013         {
17014         .description = "pri_anti_spoof_ctl",
17015         .field_bit_size = 2,
17016         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17017         },
17018         {
17019         .description = "tpid_anti_spoof_ctl",
17020         .field_bit_size = 2,
17021         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17022         },
17023         /* class_tid: 3, wh_plus, table: ing_int_full_act_record_0 */
17024         {
17025         .description = "flow_cntr_ptr",
17026         .field_bit_size = 14,
17027         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17028         },
17029         {
17030         .description = "age_enable",
17031         .field_bit_size = 1,
17032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17033         },
17034         {
17035         .description = "agg_cntr_en",
17036         .field_bit_size = 1,
17037         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17038         },
17039         {
17040         .description = "rate_cntr_en",
17041         .field_bit_size = 1,
17042         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17043         },
17044         {
17045         .description = "flow_cntr_en",
17046         .field_bit_size = 1,
17047         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17048         },
17049         {
17050         .description = "tcpflags_key",
17051         .field_bit_size = 8,
17052         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17053         },
17054         {
17055         .description = "tcpflags_mir",
17056         .field_bit_size = 1,
17057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17058         },
17059         {
17060         .description = "tcpflags_match",
17061         .field_bit_size = 1,
17062         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17063         },
17064         {
17065         .description = "encap_ptr",
17066         .field_bit_size = 11,
17067         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17068         },
17069         {
17070         .description = "dst_ip_ptr",
17071         .field_bit_size = 10,
17072         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17073         },
17074         {
17075         .description = "tcp_dst_port",
17076         .field_bit_size = 16,
17077         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17078         },
17079         {
17080         .description = "src_ip_ptr",
17081         .field_bit_size = 10,
17082         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17083         },
17084         {
17085         .description = "tcp_src_port",
17086         .field_bit_size = 16,
17087         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17088         },
17089         {
17090         .description = "meter_id",
17091         .field_bit_size = 10,
17092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17093         },
17094         {
17095         .description = "l3_rdir",
17096         .field_bit_size = 1,
17097         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17098         },
17099         {
17100         .description = "tl3_rdir",
17101         .field_bit_size = 1,
17102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17103         },
17104         {
17105         .description = "l3_ttl_dec",
17106         .field_bit_size = 1,
17107         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17108         },
17109         {
17110         .description = "tl3_ttl_dec",
17111         .field_bit_size = 1,
17112         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17113         },
17114         {
17115         .description = "decap_func",
17116         .field_bit_size = 4,
17117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17118         },
17119         {
17120         .description = "vnic_or_vport",
17121         .field_bit_size = 12,
17122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17123         .result_operand = {
17124                 (BNXT_ULP_CF_IDX_VF_FUNC_VNIC >> 8) & 0xff,
17125                 BNXT_ULP_CF_IDX_VF_FUNC_VNIC & 0xff,
17126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17127                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17128         },
17129         {
17130         .description = "pop_vlan",
17131         .field_bit_size = 1,
17132         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17133         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17135         },
17136         {
17137         .description = "meter",
17138         .field_bit_size = 1,
17139         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17140         },
17141         {
17142         .description = "mirror",
17143         .field_bit_size = 2,
17144         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17145         },
17146         {
17147         .description = "drop",
17148         .field_bit_size = 1,
17149         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17150         },
17151         {
17152         .description = "hit",
17153         .field_bit_size = 1,
17154         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17155         },
17156         {
17157         .description = "type",
17158         .field_bit_size = 1,
17159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17160         },
17161         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_dtagged_0 */
17162         {
17163         .description = "act_record_ptr",
17164         .field_bit_size = 16,
17165         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17166         .result_operand = {
17167                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17168                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17170                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17171         },
17172         {
17173         .description = "reserved",
17174         .field_bit_size = 1,
17175         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17176         },
17177         {
17178         .description = "l2_byp_lkup_en",
17179         .field_bit_size = 1,
17180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17181         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17182                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17183         },
17184         {
17185         .description = "parif",
17186         .field_bit_size = 4,
17187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17188         },
17189         {
17190         .description = "allowed_pri",
17191         .field_bit_size = 8,
17192         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17193         },
17194         {
17195         .description = "default_pri",
17196         .field_bit_size = 3,
17197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17198         },
17199         {
17200         .description = "allowed_tpid",
17201         .field_bit_size = 6,
17202         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17203         },
17204         {
17205         .description = "default_tpid",
17206         .field_bit_size = 3,
17207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17208         },
17209         {
17210         .description = "bd_act_en",
17211         .field_bit_size = 1,
17212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17213         },
17214         {
17215         .description = "sp_rec_ptr",
17216         .field_bit_size = 16,
17217         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17218         },
17219         {
17220         .description = "byp_sp_lkup",
17221         .field_bit_size = 1,
17222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17223         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17224                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17225         },
17226         {
17227         .description = "pri_anti_spoof_ctl",
17228         .field_bit_size = 2,
17229         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17230         },
17231         {
17232         .description = "tpid_anti_spoof_ctl",
17233         .field_bit_size = 2,
17234         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17235         },
17236         /* class_tid: 3, wh_plus, table: ing_l2_cntxt_stagged_0 */
17237         {
17238         .description = "act_record_ptr",
17239         .field_bit_size = 16,
17240         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17241         .result_operand = {
17242                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17243                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17244                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17245                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17246         },
17247         {
17248         .description = "reserved",
17249         .field_bit_size = 1,
17250         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17251         },
17252         {
17253         .description = "l2_byp_lkup_en",
17254         .field_bit_size = 1,
17255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17256         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17257                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17258         },
17259         {
17260         .description = "parif",
17261         .field_bit_size = 4,
17262         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
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, wh_plus, table: egr_l2_cntxt_cache_0 */
17312         {
17313         .description = "l2_cntxt_id",
17314         .field_bit_size = 10,
17315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17316         .result_operand = {
17317                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17318                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17320                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17321         },
17322         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_tcam_0 */
17323         {
17324         .description = "l2_cntxt_id",
17325         .field_bit_size = 10,
17326         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17327         .result_operand = {
17328                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17329                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17332         },
17333         {
17334         .description = "prof_func_id",
17335         .field_bit_size = 7,
17336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17337         .result_operand = {
17338                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
17339                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
17340                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17341                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17342         },
17343         {
17344         .description = "l2_byp_lkup_en",
17345         .field_bit_size = 1,
17346         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17347         },
17348         {
17349         .description = "parif",
17350         .field_bit_size = 4,
17351         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17352         .result_operand = {
17353                 BNXT_ULP_SYM_VF_FUNC_PARIF,
17354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17356         },
17357         {
17358         .description = "allowed_pri",
17359         .field_bit_size = 8,
17360         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17361         },
17362         {
17363         .description = "default_pri",
17364         .field_bit_size = 3,
17365         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17366         },
17367         {
17368         .description = "allowed_tpid",
17369         .field_bit_size = 6,
17370         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17371         },
17372         {
17373         .description = "default_tpid",
17374         .field_bit_size = 3,
17375         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17376         },
17377         {
17378         .description = "bd_act_en",
17379         .field_bit_size = 1,
17380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17381         },
17382         {
17383         .description = "sp_rec_ptr",
17384         .field_bit_size = 16,
17385         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17386         },
17387         {
17388         .description = "byp_sp_lkup",
17389         .field_bit_size = 1,
17390         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17391         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17393         },
17394         {
17395         .description = "pri_anti_spoof_ctl",
17396         .field_bit_size = 2,
17397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17398         },
17399         {
17400         .description = "tpid_anti_spoof_ctl",
17401         .field_bit_size = 2,
17402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17403         },
17404         /* class_tid: 4, wh_plus, table: egr_parif_def_lkup_arec_ptr_0 */
17405         {
17406         .description = "act_rec_ptr",
17407         .field_bit_size = 32,
17408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17409         .result_operand = {
17410                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17411                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17414         },
17415         /* class_tid: 4, wh_plus, table: egr_parif_def_arec_ptr_0 */
17416         {
17417         .description = "act_rec_ptr",
17418         .field_bit_size = 32,
17419         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17420         .result_operand = {
17421                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17422                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17423                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17425         },
17426         /* class_tid: 4, wh_plus, table: egr_parif_def_err_arec_ptr_0 */
17427         {
17428         .description = "act_rec_ptr",
17429         .field_bit_size = 32,
17430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17431         .result_operand = {
17432                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR >> 8) & 0xff,
17433                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_LB_AREC_PTR & 0xff,
17434                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17436         },
17437         /* class_tid: 4, wh_plus, table: ing_int_full_act_record_0 */
17438         {
17439         .description = "flow_cntr_ptr",
17440         .field_bit_size = 14,
17441         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17442         },
17443         {
17444         .description = "age_enable",
17445         .field_bit_size = 1,
17446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17447         },
17448         {
17449         .description = "agg_cntr_en",
17450         .field_bit_size = 1,
17451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17452         },
17453         {
17454         .description = "rate_cntr_en",
17455         .field_bit_size = 1,
17456         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17457         },
17458         {
17459         .description = "flow_cntr_en",
17460         .field_bit_size = 1,
17461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17462         },
17463         {
17464         .description = "tcpflags_key",
17465         .field_bit_size = 8,
17466         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17467         },
17468         {
17469         .description = "tcpflags_mir",
17470         .field_bit_size = 1,
17471         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17472         },
17473         {
17474         .description = "tcpflags_match",
17475         .field_bit_size = 1,
17476         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17477         },
17478         {
17479         .description = "encap_ptr",
17480         .field_bit_size = 11,
17481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17482         },
17483         {
17484         .description = "dst_ip_ptr",
17485         .field_bit_size = 10,
17486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17487         },
17488         {
17489         .description = "tcp_dst_port",
17490         .field_bit_size = 16,
17491         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17492         },
17493         {
17494         .description = "src_ip_ptr",
17495         .field_bit_size = 10,
17496         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17497         },
17498         {
17499         .description = "tcp_src_port",
17500         .field_bit_size = 16,
17501         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17502         },
17503         {
17504         .description = "meter_id",
17505         .field_bit_size = 10,
17506         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17507         },
17508         {
17509         .description = "l3_rdir",
17510         .field_bit_size = 1,
17511         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17512         },
17513         {
17514         .description = "tl3_rdir",
17515         .field_bit_size = 1,
17516         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17517         },
17518         {
17519         .description = "l3_ttl_dec",
17520         .field_bit_size = 1,
17521         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17522         },
17523         {
17524         .description = "tl3_ttl_dec",
17525         .field_bit_size = 1,
17526         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17527         },
17528         {
17529         .description = "decap_func",
17530         .field_bit_size = 4,
17531         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17532         },
17533         {
17534         .description = "vnic_or_vport",
17535         .field_bit_size = 12,
17536         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17537         .result_operand = {
17538                 (BNXT_ULP_CF_IDX_DRV_FUNC_VNIC >> 8) & 0xff,
17539                 BNXT_ULP_CF_IDX_DRV_FUNC_VNIC & 0xff,
17540                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17541                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17542         },
17543         {
17544         .description = "pop_vlan",
17545         .field_bit_size = 1,
17546         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17547         },
17548         {
17549         .description = "meter",
17550         .field_bit_size = 1,
17551         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17552         },
17553         {
17554         .description = "mirror",
17555         .field_bit_size = 2,
17556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17557         },
17558         {
17559         .description = "drop",
17560         .field_bit_size = 1,
17561         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17562         },
17563         {
17564         .description = "hit",
17565         .field_bit_size = 1,
17566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17567         },
17568         {
17569         .description = "type",
17570         .field_bit_size = 1,
17571         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17572         },
17573         /* class_tid: 4, wh_plus, table: ing_l2_cntxt_tcam_0 */
17574         {
17575         .description = "act_record_ptr",
17576         .field_bit_size = 16,
17577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17578         .result_operand = {
17579                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17580                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17583         },
17584         {
17585         .description = "reserved",
17586         .field_bit_size = 1,
17587         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17588         },
17589         {
17590         .description = "l2_byp_lkup_en",
17591         .field_bit_size = 1,
17592         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17593         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17594                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17595         },
17596         {
17597         .description = "parif",
17598         .field_bit_size = 4,
17599         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17600         },
17601         {
17602         .description = "allowed_pri",
17603         .field_bit_size = 8,
17604         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17605         },
17606         {
17607         .description = "default_pri",
17608         .field_bit_size = 3,
17609         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17610         },
17611         {
17612         .description = "allowed_tpid",
17613         .field_bit_size = 6,
17614         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17615         },
17616         {
17617         .description = "default_tpid",
17618         .field_bit_size = 3,
17619         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17620         },
17621         {
17622         .description = "bd_act_en",
17623         .field_bit_size = 1,
17624         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17625         },
17626         {
17627         .description = "sp_rec_ptr",
17628         .field_bit_size = 16,
17629         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17630         },
17631         {
17632         .description = "byp_sp_lkup",
17633         .field_bit_size = 1,
17634         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17635         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17636                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17637         },
17638         {
17639         .description = "pri_anti_spoof_ctl",
17640         .field_bit_size = 2,
17641         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17642         },
17643         {
17644         .description = "tpid_anti_spoof_ctl",
17645         .field_bit_size = 2,
17646         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17647         },
17648         /* class_tid: 5, wh_plus, table: int_full_act_record_0 */
17649         {
17650         .description = "flow_cntr_ptr",
17651         .field_bit_size = 14,
17652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17653         },
17654         {
17655         .description = "age_enable",
17656         .field_bit_size = 1,
17657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17658         },
17659         {
17660         .description = "agg_cntr_en",
17661         .field_bit_size = 1,
17662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17663         },
17664         {
17665         .description = "rate_cntr_en",
17666         .field_bit_size = 1,
17667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17668         },
17669         {
17670         .description = "flow_cntr_en",
17671         .field_bit_size = 1,
17672         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17673         },
17674         {
17675         .description = "tcpflags_key",
17676         .field_bit_size = 8,
17677         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17678         },
17679         {
17680         .description = "tcpflags_mir",
17681         .field_bit_size = 1,
17682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17683         },
17684         {
17685         .description = "tcpflags_match",
17686         .field_bit_size = 1,
17687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17688         },
17689         {
17690         .description = "encap_ptr",
17691         .field_bit_size = 11,
17692         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17693         },
17694         {
17695         .description = "dst_ip_ptr",
17696         .field_bit_size = 10,
17697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17698         },
17699         {
17700         .description = "tcp_dst_port",
17701         .field_bit_size = 16,
17702         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17703         },
17704         {
17705         .description = "src_ip_ptr",
17706         .field_bit_size = 10,
17707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17708         },
17709         {
17710         .description = "tcp_src_port",
17711         .field_bit_size = 16,
17712         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17713         },
17714         {
17715         .description = "meter_id",
17716         .field_bit_size = 10,
17717         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17718         },
17719         {
17720         .description = "l3_rdir",
17721         .field_bit_size = 1,
17722         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17723         },
17724         {
17725         .description = "tl3_rdir",
17726         .field_bit_size = 1,
17727         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17728         },
17729         {
17730         .description = "l3_ttl_dec",
17731         .field_bit_size = 1,
17732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17733         },
17734         {
17735         .description = "tl3_ttl_dec",
17736         .field_bit_size = 1,
17737         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17738         },
17739         {
17740         .description = "decap_func",
17741         .field_bit_size = 4,
17742         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17743         },
17744         {
17745         .description = "vnic_or_vport",
17746         .field_bit_size = 12,
17747         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17748         .result_operand = {
17749                 (BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT >> 8) & 0xff,
17750                 BNXT_ULP_SYM_WH_PLUS_LOOPBACK_PORT & 0xff,
17751                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17752                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17753         },
17754         {
17755         .description = "pop_vlan",
17756         .field_bit_size = 1,
17757         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17758         },
17759         {
17760         .description = "meter",
17761         .field_bit_size = 1,
17762         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17763         },
17764         {
17765         .description = "mirror",
17766         .field_bit_size = 2,
17767         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17768         },
17769         {
17770         .description = "drop",
17771         .field_bit_size = 1,
17772         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17773         },
17774         {
17775         .description = "hit",
17776         .field_bit_size = 1,
17777         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17778         },
17779         {
17780         .description = "type",
17781         .field_bit_size = 1,
17782         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17783         },
17784         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
17785         {
17786         .description = "l2_cntxt_id",
17787         .field_bit_size = 10,
17788         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17789         .result_operand = {
17790                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
17791                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
17792                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17793                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17794         },
17795         {
17796         .description = "prof_func_id",
17797         .field_bit_size = 7,
17798         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
17799         .result_operand = {
17800                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
17801                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
17802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17803                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17804         },
17805         {
17806         .description = "l2_byp_lkup_en",
17807         .field_bit_size = 1,
17808         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17809         },
17810         {
17811         .description = "parif",
17812         .field_bit_size = 4,
17813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
17814         .result_operand = {
17815                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
17816                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
17817                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17818                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17819         },
17820         {
17821         .description = "allowed_pri",
17822         .field_bit_size = 8,
17823         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17824         },
17825         {
17826         .description = "default_pri",
17827         .field_bit_size = 3,
17828         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17829         },
17830         {
17831         .description = "allowed_tpid",
17832         .field_bit_size = 6,
17833         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17834         },
17835         {
17836         .description = "default_tpid",
17837         .field_bit_size = 3,
17838         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17839         },
17840         {
17841         .description = "bd_act_en",
17842         .field_bit_size = 1,
17843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17844         },
17845         {
17846         .description = "sp_rec_ptr",
17847         .field_bit_size = 16,
17848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17849         },
17850         {
17851         .description = "byp_sp_lkup",
17852         .field_bit_size = 1,
17853         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17854         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17855                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17856         },
17857         {
17858         .description = "pri_anti_spoof_ctl",
17859         .field_bit_size = 2,
17860         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17861         },
17862         {
17863         .description = "tpid_anti_spoof_ctl",
17864         .field_bit_size = 2,
17865         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17866         },
17867         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
17868         {
17869         .description = "em_profile_id",
17870         .field_bit_size = 10,
17871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17872         .result_operand = {
17873                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17874                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17875                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17876                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17877         },
17878         /* class_tid: 6, wh_plus, table: profile_tcam_0 */
17879         {
17880         .description = "wc_key_id",
17881         .field_bit_size = 4,
17882         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17883         },
17884         {
17885         .description = "wc_profile_id",
17886         .field_bit_size = 8,
17887         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17888         },
17889         {
17890         .description = "wc_search_en",
17891         .field_bit_size = 1,
17892         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17893         },
17894         {
17895         .description = "em_key_mask",
17896         .field_bit_size = 10,
17897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17898         .result_operand = {
17899                 (0x0005 >> 8) & 0xff,
17900                 0x0005 & 0xff,
17901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17903         },
17904         {
17905         .description = "em_key_id",
17906         .field_bit_size = 5,
17907         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17908         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
17909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17910         },
17911         {
17912         .description = "em_profile_id",
17913         .field_bit_size = 8,
17914         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17915         .result_operand = {
17916                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
17917                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
17918                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17919                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17920         },
17921         {
17922         .description = "em_search_en",
17923         .field_bit_size = 1,
17924         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17925         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17926                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17927         },
17928         {
17929         .description = "pl_byp_lkup_en",
17930         .field_bit_size = 1,
17931         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17932         },
17933         /* class_tid: 6, wh_plus, table: ext_em_0 */
17934         {
17935         .description = "act_rec_ptr",
17936         .field_bit_size = 33,
17937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
17938         .result_operand = {
17939                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
17940                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
17941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17942                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17943         },
17944         {
17945         .description = "ext_flow_ctr",
17946         .field_bit_size = 1,
17947         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17948         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17949                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17950         },
17951         {
17952         .description = "act_rec_int",
17953         .field_bit_size = 1,
17954         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17955         },
17956         {
17957         .description = "act_rec_size",
17958         .field_bit_size = 5,
17959         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17960         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
17961                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17962         },
17963         {
17964         .description = "key_size",
17965         .field_bit_size = 9,
17966         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17967         .result_operand = {
17968                 (0x00c5 >> 8) & 0xff,
17969                 0x00c5 & 0xff,
17970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
17971                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17972         },
17973         {
17974         .description = "reserved",
17975         .field_bit_size = 11,
17976         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17977         },
17978         {
17979         .description = "strength",
17980         .field_bit_size = 2,
17981         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17982         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
17983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17984         },
17985         {
17986         .description = "l1_cacheable",
17987         .field_bit_size = 1,
17988         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
17989         },
17990         {
17991         .description = "valid",
17992         .field_bit_size = 1,
17993         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
17994         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
17995                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
17996         },
17997         /* class_tid: 6, wh_plus, table: int_em_0 */
17998         {
17999         .description = "act_rec_ptr",
18000         .field_bit_size = 33,
18001         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18002         .result_operand = {
18003                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18004                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18005                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18007         },
18008         {
18009         .description = "ext_flow_ctr",
18010         .field_bit_size = 1,
18011         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18012         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18013                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18014         },
18015         {
18016         .description = "act_rec_int",
18017         .field_bit_size = 1,
18018         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18019         },
18020         {
18021         .description = "act_rec_size",
18022         .field_bit_size = 5,
18023         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18024         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18025                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18026         },
18027         {
18028         .description = "key_size",
18029         .field_bit_size = 9,
18030         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18031         .result_operand = {
18032                 (0x00c5 >> 8) & 0xff,
18033                 0x00c5 & 0xff,
18034                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18036         },
18037         {
18038         .description = "reserved",
18039         .field_bit_size = 11,
18040         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18041         },
18042         {
18043         .description = "strength",
18044         .field_bit_size = 2,
18045         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18046         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18047                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18048         },
18049         {
18050         .description = "l1_cacheable",
18051         .field_bit_size = 1,
18052         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18053         },
18054         {
18055         .description = "valid",
18056         .field_bit_size = 1,
18057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18058         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18060         },
18061         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
18062         {
18063         .description = "l2_cntxt_id",
18064         .field_bit_size = 10,
18065         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18066         .result_operand = {
18067                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18068                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18070                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18071         },
18072         {
18073         .description = "prof_func_id",
18074         .field_bit_size = 7,
18075         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18076         .result_operand = {
18077                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
18078                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
18079                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18080                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18081         },
18082         {
18083         .description = "l2_byp_lkup_en",
18084         .field_bit_size = 1,
18085         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18086         },
18087         {
18088         .description = "parif",
18089         .field_bit_size = 4,
18090         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18091         .result_operand = {
18092                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18093                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18094                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18095                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18096         },
18097         {
18098         .description = "allowed_pri",
18099         .field_bit_size = 8,
18100         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18101         },
18102         {
18103         .description = "default_pri",
18104         .field_bit_size = 3,
18105         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18106         },
18107         {
18108         .description = "allowed_tpid",
18109         .field_bit_size = 6,
18110         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18111         },
18112         {
18113         .description = "default_tpid",
18114         .field_bit_size = 3,
18115         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18116         },
18117         {
18118         .description = "bd_act_en",
18119         .field_bit_size = 1,
18120         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18121         },
18122         {
18123         .description = "sp_rec_ptr",
18124         .field_bit_size = 16,
18125         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18126         },
18127         {
18128         .description = "byp_sp_lkup",
18129         .field_bit_size = 1,
18130         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18131         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18132                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18133         },
18134         {
18135         .description = "pri_anti_spoof_ctl",
18136         .field_bit_size = 2,
18137         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18138         },
18139         {
18140         .description = "tpid_anti_spoof_ctl",
18141         .field_bit_size = 2,
18142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18143         },
18144         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
18145         {
18146         .description = "em_profile_id",
18147         .field_bit_size = 10,
18148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18149         .result_operand = {
18150                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18151                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18152                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18153                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18154         },
18155         /* class_tid: 7, wh_plus, table: profile_tcam_0 */
18156         {
18157         .description = "wc_key_id",
18158         .field_bit_size = 4,
18159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18160         },
18161         {
18162         .description = "wc_profile_id",
18163         .field_bit_size = 8,
18164         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18165         },
18166         {
18167         .description = "wc_search_en",
18168         .field_bit_size = 1,
18169         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18170         },
18171         {
18172         .description = "em_key_mask",
18173         .field_bit_size = 10,
18174         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18175         .result_operand = {
18176                 (0x0005 >> 8) & 0xff,
18177                 0x0005 & 0xff,
18178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18180         },
18181         {
18182         .description = "em_key_id",
18183         .field_bit_size = 5,
18184         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18185         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18187         },
18188         {
18189         .description = "em_profile_id",
18190         .field_bit_size = 8,
18191         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18192         .result_operand = {
18193                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18194                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18195                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18196                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18197         },
18198         {
18199         .description = "em_search_en",
18200         .field_bit_size = 1,
18201         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18202         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18203                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18204         },
18205         {
18206         .description = "pl_byp_lkup_en",
18207         .field_bit_size = 1,
18208         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18209         },
18210         /* class_tid: 7, wh_plus, table: ext_em_0 */
18211         {
18212         .description = "act_rec_ptr",
18213         .field_bit_size = 33,
18214         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18215         .result_operand = {
18216                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18217                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18218                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18219                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18220         },
18221         {
18222         .description = "ext_flow_ctr",
18223         .field_bit_size = 1,
18224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18225         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18227         },
18228         {
18229         .description = "act_rec_int",
18230         .field_bit_size = 1,
18231         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18232         },
18233         {
18234         .description = "act_rec_size",
18235         .field_bit_size = 5,
18236         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18237         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18238                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18239         },
18240         {
18241         .description = "key_size",
18242         .field_bit_size = 9,
18243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18244         .result_operand = {
18245                 (0x00c5 >> 8) & 0xff,
18246                 0x00c5 & 0xff,
18247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18249         },
18250         {
18251         .description = "reserved",
18252         .field_bit_size = 11,
18253         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18254         },
18255         {
18256         .description = "strength",
18257         .field_bit_size = 2,
18258         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18259         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18261         },
18262         {
18263         .description = "l1_cacheable",
18264         .field_bit_size = 1,
18265         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18266         },
18267         {
18268         .description = "valid",
18269         .field_bit_size = 1,
18270         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18271         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18273         },
18274         /* class_tid: 7, wh_plus, table: int_em_0 */
18275         {
18276         .description = "act_rec_ptr",
18277         .field_bit_size = 33,
18278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18279         .result_operand = {
18280                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18281                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18284         },
18285         {
18286         .description = "ext_flow_ctr",
18287         .field_bit_size = 1,
18288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18289         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18290                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18291         },
18292         {
18293         .description = "act_rec_int",
18294         .field_bit_size = 1,
18295         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18296         },
18297         {
18298         .description = "act_rec_size",
18299         .field_bit_size = 5,
18300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18301         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18302                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18303         },
18304         {
18305         .description = "key_size",
18306         .field_bit_size = 9,
18307         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18308         .result_operand = {
18309                 (0x00c5 >> 8) & 0xff,
18310                 0x00c5 & 0xff,
18311                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18312                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18313         },
18314         {
18315         .description = "reserved",
18316         .field_bit_size = 11,
18317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18318         },
18319         {
18320         .description = "strength",
18321         .field_bit_size = 2,
18322         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18323         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18324                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18325         },
18326         {
18327         .description = "l1_cacheable",
18328         .field_bit_size = 1,
18329         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18330         },
18331         {
18332         .description = "valid",
18333         .field_bit_size = 1,
18334         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18335         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18336                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18337         },
18338         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
18339         {
18340         .description = "l2_cntxt_id",
18341         .field_bit_size = 10,
18342         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18343         .result_operand = {
18344                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18345                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18346                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18348         },
18349         /* class_tid: 8, wh_plus, table: l2_cntxt_tcam_0 */
18350         {
18351         .description = "l2_cntxt_id",
18352         .field_bit_size = 10,
18353         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18354         .result_operand = {
18355                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18356                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18358                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18359         },
18360         {
18361         .description = "prof_func_id",
18362         .field_bit_size = 7,
18363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18364         .result_operand = {
18365                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18366                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18367                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18368                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18369         },
18370         {
18371         .description = "l2_byp_lkup_en",
18372         .field_bit_size = 1,
18373         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18374         },
18375         {
18376         .description = "parif",
18377         .field_bit_size = 4,
18378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18379         .result_operand = {
18380                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18381                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18384         },
18385         {
18386         .description = "allowed_pri",
18387         .field_bit_size = 8,
18388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18389         },
18390         {
18391         .description = "default_pri",
18392         .field_bit_size = 3,
18393         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18394         },
18395         {
18396         .description = "allowed_tpid",
18397         .field_bit_size = 6,
18398         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18399         },
18400         {
18401         .description = "default_tpid",
18402         .field_bit_size = 3,
18403         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18404         },
18405         {
18406         .description = "bd_act_en",
18407         .field_bit_size = 1,
18408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18409         },
18410         {
18411         .description = "sp_rec_ptr",
18412         .field_bit_size = 16,
18413         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18414         },
18415         {
18416         .description = "byp_sp_lkup",
18417         .field_bit_size = 1,
18418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18419         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18421         },
18422         {
18423         .description = "pri_anti_spoof_ctl",
18424         .field_bit_size = 2,
18425         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18426         },
18427         {
18428         .description = "tpid_anti_spoof_ctl",
18429         .field_bit_size = 2,
18430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18431         },
18432         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
18433         {
18434         .description = "em_profile_id",
18435         .field_bit_size = 10,
18436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18437         .result_operand = {
18438                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18439                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18441                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18442         },
18443         /* class_tid: 8, wh_plus, table: profile_tcam_0 */
18444         {
18445         .description = "wc_key_id",
18446         .field_bit_size = 4,
18447         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18448         },
18449         {
18450         .description = "wc_profile_id",
18451         .field_bit_size = 8,
18452         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18453         },
18454         {
18455         .description = "wc_search_en",
18456         .field_bit_size = 1,
18457         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18458         },
18459         {
18460         .description = "em_key_mask",
18461         .field_bit_size = 10,
18462         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18463         .result_operand = {
18464                 (0x00f9 >> 8) & 0xff,
18465                 0x00f9 & 0xff,
18466                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18467                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18468         },
18469         {
18470         .description = "em_key_id",
18471         .field_bit_size = 5,
18472         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18473         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18474                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18475         },
18476         {
18477         .description = "em_profile_id",
18478         .field_bit_size = 8,
18479         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18480         .result_operand = {
18481                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18482                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18484                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18485         },
18486         {
18487         .description = "em_search_en",
18488         .field_bit_size = 1,
18489         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18490         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18491                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18492         },
18493         {
18494         .description = "pl_byp_lkup_en",
18495         .field_bit_size = 1,
18496         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18497         },
18498         /* class_tid: 8, wh_plus, table: ext_em_0 */
18499         {
18500         .description = "act_rec_ptr",
18501         .field_bit_size = 33,
18502         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18503         .result_operand = {
18504                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18505                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18506                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18507                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18508         },
18509         {
18510         .description = "ext_flow_ctr",
18511         .field_bit_size = 1,
18512         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18513         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18514                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18515         },
18516         {
18517         .description = "act_rec_int",
18518         .field_bit_size = 1,
18519         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18520         },
18521         {
18522         .description = "act_rec_size",
18523         .field_bit_size = 5,
18524         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18525         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18526                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18527         },
18528         {
18529         .description = "key_size",
18530         .field_bit_size = 9,
18531         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18532         .result_operand = {
18533                 (0x00c5 >> 8) & 0xff,
18534                 0x00c5 & 0xff,
18535                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18536                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18537         },
18538         {
18539         .description = "reserved",
18540         .field_bit_size = 11,
18541         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18542         },
18543         {
18544         .description = "strength",
18545         .field_bit_size = 2,
18546         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18547         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18548                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18549         },
18550         {
18551         .description = "l1_cacheable",
18552         .field_bit_size = 1,
18553         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18554         },
18555         {
18556         .description = "valid",
18557         .field_bit_size = 1,
18558         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18559         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18561         },
18562         /* class_tid: 8, wh_plus, table: int_em_0 */
18563         {
18564         .description = "act_rec_ptr",
18565         .field_bit_size = 33,
18566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18567         .result_operand = {
18568                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18569                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18570                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18571                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18572         },
18573         {
18574         .description = "ext_flow_ctr",
18575         .field_bit_size = 1,
18576         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18577         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18578                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18579         },
18580         {
18581         .description = "act_rec_int",
18582         .field_bit_size = 1,
18583         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18584         },
18585         {
18586         .description = "act_rec_size",
18587         .field_bit_size = 5,
18588         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18589         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18590                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18591         },
18592         {
18593         .description = "key_size",
18594         .field_bit_size = 9,
18595         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18596         .result_operand = {
18597                 (0x00c5 >> 8) & 0xff,
18598                 0x00c5 & 0xff,
18599                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18600                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18601         },
18602         {
18603         .description = "reserved",
18604         .field_bit_size = 11,
18605         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18606         },
18607         {
18608         .description = "strength",
18609         .field_bit_size = 2,
18610         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18611         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18612                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18613         },
18614         {
18615         .description = "l1_cacheable",
18616         .field_bit_size = 1,
18617         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18618         },
18619         {
18620         .description = "valid",
18621         .field_bit_size = 1,
18622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18623         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18625         },
18626         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
18627         {
18628         .description = "l2_cntxt_id",
18629         .field_bit_size = 10,
18630         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18631         .result_operand = {
18632                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18633                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18634                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18635                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18636         },
18637         /* class_tid: 9, wh_plus, table: l2_cntxt_tcam_0 */
18638         {
18639         .description = "l2_cntxt_id",
18640         .field_bit_size = 10,
18641         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18642         .result_operand = {
18643                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18644                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18645                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18646                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18647         },
18648         {
18649         .description = "prof_func_id",
18650         .field_bit_size = 7,
18651         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18652         .result_operand = {
18653                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18654                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18656                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18657         },
18658         {
18659         .description = "l2_byp_lkup_en",
18660         .field_bit_size = 1,
18661         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18662         },
18663         {
18664         .description = "parif",
18665         .field_bit_size = 4,
18666         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18667         .result_operand = {
18668                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18669                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18670                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18672         },
18673         {
18674         .description = "allowed_pri",
18675         .field_bit_size = 8,
18676         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18677         },
18678         {
18679         .description = "default_pri",
18680         .field_bit_size = 3,
18681         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18682         },
18683         {
18684         .description = "allowed_tpid",
18685         .field_bit_size = 6,
18686         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18687         },
18688         {
18689         .description = "default_tpid",
18690         .field_bit_size = 3,
18691         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18692         },
18693         {
18694         .description = "bd_act_en",
18695         .field_bit_size = 1,
18696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18697         },
18698         {
18699         .description = "sp_rec_ptr",
18700         .field_bit_size = 16,
18701         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18702         },
18703         {
18704         .description = "byp_sp_lkup",
18705         .field_bit_size = 1,
18706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18707         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18708                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18709         },
18710         {
18711         .description = "pri_anti_spoof_ctl",
18712         .field_bit_size = 2,
18713         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18714         },
18715         {
18716         .description = "tpid_anti_spoof_ctl",
18717         .field_bit_size = 2,
18718         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18719         },
18720         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
18721         {
18722         .description = "em_profile_id",
18723         .field_bit_size = 10,
18724         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18725         .result_operand = {
18726                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18727                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18728                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18729                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18730         },
18731         /* class_tid: 9, wh_plus, table: profile_tcam_0 */
18732         {
18733         .description = "wc_key_id",
18734         .field_bit_size = 4,
18735         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18736         },
18737         {
18738         .description = "wc_profile_id",
18739         .field_bit_size = 8,
18740         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18741         },
18742         {
18743         .description = "wc_search_en",
18744         .field_bit_size = 1,
18745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18746         },
18747         {
18748         .description = "em_key_mask",
18749         .field_bit_size = 10,
18750         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18751         .result_operand = {
18752                 (0x00f9 >> 8) & 0xff,
18753                 0x00f9 & 0xff,
18754                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18756         },
18757         {
18758         .description = "em_key_id",
18759         .field_bit_size = 5,
18760         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18761         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
18762                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18763         },
18764         {
18765         .description = "em_profile_id",
18766         .field_bit_size = 8,
18767         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18768         .result_operand = {
18769                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
18770                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
18771                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18772                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18773         },
18774         {
18775         .description = "em_search_en",
18776         .field_bit_size = 1,
18777         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18778         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18780         },
18781         {
18782         .description = "pl_byp_lkup_en",
18783         .field_bit_size = 1,
18784         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18785         },
18786         /* class_tid: 9, wh_plus, table: ext_em_0 */
18787         {
18788         .description = "act_rec_ptr",
18789         .field_bit_size = 33,
18790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18791         .result_operand = {
18792                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18793                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18794                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18795                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18796         },
18797         {
18798         .description = "ext_flow_ctr",
18799         .field_bit_size = 1,
18800         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18801         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18802                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18803         },
18804         {
18805         .description = "act_rec_int",
18806         .field_bit_size = 1,
18807         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18808         },
18809         {
18810         .description = "act_rec_size",
18811         .field_bit_size = 5,
18812         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18813         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18814                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18815         },
18816         {
18817         .description = "key_size",
18818         .field_bit_size = 9,
18819         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18820         .result_operand = {
18821                 (0x00c5 >> 8) & 0xff,
18822                 0x00c5 & 0xff,
18823                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18824                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18825         },
18826         {
18827         .description = "reserved",
18828         .field_bit_size = 11,
18829         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18830         },
18831         {
18832         .description = "strength",
18833         .field_bit_size = 2,
18834         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18835         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18836                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18837         },
18838         {
18839         .description = "l1_cacheable",
18840         .field_bit_size = 1,
18841         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18842         },
18843         {
18844         .description = "valid",
18845         .field_bit_size = 1,
18846         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18847         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18849         },
18850         /* class_tid: 9, wh_plus, table: int_em_0 */
18851         {
18852         .description = "act_rec_ptr",
18853         .field_bit_size = 33,
18854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18855         .result_operand = {
18856                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
18857                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
18858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18860         },
18861         {
18862         .description = "ext_flow_ctr",
18863         .field_bit_size = 1,
18864         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18865         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18866                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18867         },
18868         {
18869         .description = "act_rec_int",
18870         .field_bit_size = 1,
18871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18872         },
18873         {
18874         .description = "act_rec_size",
18875         .field_bit_size = 5,
18876         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18877         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
18878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18879         },
18880         {
18881         .description = "key_size",
18882         .field_bit_size = 9,
18883         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18884         .result_operand = {
18885                 (0x00c5 >> 8) & 0xff,
18886                 0x00c5 & 0xff,
18887                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18888                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18889         },
18890         {
18891         .description = "reserved",
18892         .field_bit_size = 11,
18893         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18894         },
18895         {
18896         .description = "strength",
18897         .field_bit_size = 2,
18898         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18899         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
18900                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18901         },
18902         {
18903         .description = "l1_cacheable",
18904         .field_bit_size = 1,
18905         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18906         },
18907         {
18908         .description = "valid",
18909         .field_bit_size = 1,
18910         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18911         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18913         },
18914         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
18915         {
18916         .description = "l2_cntxt_id",
18917         .field_bit_size = 10,
18918         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18919         .result_operand = {
18920                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18921                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18922                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18924         },
18925         /* class_tid: 10, wh_plus, table: l2_cntxt_tcam_0 */
18926         {
18927         .description = "l2_cntxt_id",
18928         .field_bit_size = 10,
18929         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
18930         .result_operand = {
18931                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
18932                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
18933                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18934                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18935         },
18936         {
18937         .description = "prof_func_id",
18938         .field_bit_size = 7,
18939         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
18940         .result_operand = {
18941                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
18942                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
18943                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18945         },
18946         {
18947         .description = "l2_byp_lkup_en",
18948         .field_bit_size = 1,
18949         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18950         },
18951         {
18952         .description = "parif",
18953         .field_bit_size = 4,
18954         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
18955         .result_operand = {
18956                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
18957                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
18958                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
18959                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18960         },
18961         {
18962         .description = "allowed_pri",
18963         .field_bit_size = 8,
18964         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18965         },
18966         {
18967         .description = "default_pri",
18968         .field_bit_size = 3,
18969         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18970         },
18971         {
18972         .description = "allowed_tpid",
18973         .field_bit_size = 6,
18974         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18975         },
18976         {
18977         .description = "default_tpid",
18978         .field_bit_size = 3,
18979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18980         },
18981         {
18982         .description = "bd_act_en",
18983         .field_bit_size = 1,
18984         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18985         },
18986         {
18987         .description = "sp_rec_ptr",
18988         .field_bit_size = 16,
18989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
18990         },
18991         {
18992         .description = "byp_sp_lkup",
18993         .field_bit_size = 1,
18994         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
18995         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
18996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
18997         },
18998         {
18999         .description = "pri_anti_spoof_ctl",
19000         .field_bit_size = 2,
19001         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19002         },
19003         {
19004         .description = "tpid_anti_spoof_ctl",
19005         .field_bit_size = 2,
19006         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19007         },
19008         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
19009         {
19010         .description = "em_profile_id",
19011         .field_bit_size = 10,
19012         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19013         .result_operand = {
19014                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19015                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19016                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19017                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19018         },
19019         /* class_tid: 10, wh_plus, table: profile_tcam_0 */
19020         {
19021         .description = "wc_key_id",
19022         .field_bit_size = 4,
19023         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19024         },
19025         {
19026         .description = "wc_profile_id",
19027         .field_bit_size = 8,
19028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19029         },
19030         {
19031         .description = "wc_search_en",
19032         .field_bit_size = 1,
19033         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19034         },
19035         {
19036         .description = "em_key_mask",
19037         .field_bit_size = 10,
19038         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19039         .result_operand = {
19040                 (0x00f9 >> 8) & 0xff,
19041                 0x00f9 & 0xff,
19042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19044         },
19045         {
19046         .description = "em_key_id",
19047         .field_bit_size = 5,
19048         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19049         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
19050                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19051         },
19052         {
19053         .description = "em_profile_id",
19054         .field_bit_size = 8,
19055         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19056         .result_operand = {
19057                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19058                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19059                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19061         },
19062         {
19063         .description = "em_search_en",
19064         .field_bit_size = 1,
19065         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19066         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19067                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19068         },
19069         {
19070         .description = "pl_byp_lkup_en",
19071         .field_bit_size = 1,
19072         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19073         },
19074         /* class_tid: 10, wh_plus, table: ext_em_0 */
19075         {
19076         .description = "act_rec_ptr",
19077         .field_bit_size = 33,
19078         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19079         .result_operand = {
19080                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19081                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19082                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19083                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19084         },
19085         {
19086         .description = "ext_flow_ctr",
19087         .field_bit_size = 1,
19088         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19089         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19090                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19091         },
19092         {
19093         .description = "act_rec_int",
19094         .field_bit_size = 1,
19095         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19096         },
19097         {
19098         .description = "act_rec_size",
19099         .field_bit_size = 5,
19100         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19101         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19102                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19103         },
19104         {
19105         .description = "key_size",
19106         .field_bit_size = 9,
19107         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19108         .result_operand = {
19109                 (0x0185 >> 8) & 0xff,
19110                 0x0185 & 0xff,
19111                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19113         },
19114         {
19115         .description = "reserved",
19116         .field_bit_size = 11,
19117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19118         },
19119         {
19120         .description = "strength",
19121         .field_bit_size = 2,
19122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19123         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19125         },
19126         {
19127         .description = "l1_cacheable",
19128         .field_bit_size = 1,
19129         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19130         },
19131         {
19132         .description = "valid",
19133         .field_bit_size = 1,
19134         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19135         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19137         },
19138         /* class_tid: 10, wh_plus, table: int_em_0 */
19139         {
19140         .description = "act_rec_ptr",
19141         .field_bit_size = 33,
19142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19143         .result_operand = {
19144                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19145                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19146                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19147                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19148         },
19149         {
19150         .description = "ext_flow_ctr",
19151         .field_bit_size = 1,
19152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19153         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19154                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19155         },
19156         {
19157         .description = "act_rec_int",
19158         .field_bit_size = 1,
19159         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19160         },
19161         {
19162         .description = "act_rec_size",
19163         .field_bit_size = 5,
19164         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19165         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19167         },
19168         {
19169         .description = "key_size",
19170         .field_bit_size = 9,
19171         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19172         .result_operand = {
19173                 (0x0185 >> 8) & 0xff,
19174                 0x0185 & 0xff,
19175                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19177         },
19178         {
19179         .description = "reserved",
19180         .field_bit_size = 11,
19181         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19182         },
19183         {
19184         .description = "strength",
19185         .field_bit_size = 2,
19186         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19187         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19188                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19189         },
19190         {
19191         .description = "l1_cacheable",
19192         .field_bit_size = 1,
19193         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19194         },
19195         {
19196         .description = "valid",
19197         .field_bit_size = 1,
19198         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19199         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19200                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19201         },
19202         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
19203         {
19204         .description = "l2_cntxt_id",
19205         .field_bit_size = 10,
19206         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19207         .result_operand = {
19208                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19209                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19210                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19211                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19212         },
19213         /* class_tid: 11, wh_plus, table: l2_cntxt_tcam_0 */
19214         {
19215         .description = "l2_cntxt_id",
19216         .field_bit_size = 10,
19217         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19218         .result_operand = {
19219                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19220                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19222                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19223         },
19224         {
19225         .description = "prof_func_id",
19226         .field_bit_size = 7,
19227         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19228         .result_operand = {
19229                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
19230                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
19231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19233         },
19234         {
19235         .description = "l2_byp_lkup_en",
19236         .field_bit_size = 1,
19237         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19238         },
19239         {
19240         .description = "parif",
19241         .field_bit_size = 4,
19242         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19243         .result_operand = {
19244                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19245                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19246                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19248         },
19249         {
19250         .description = "allowed_pri",
19251         .field_bit_size = 8,
19252         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19253         },
19254         {
19255         .description = "default_pri",
19256         .field_bit_size = 3,
19257         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19258         },
19259         {
19260         .description = "allowed_tpid",
19261         .field_bit_size = 6,
19262         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19263         },
19264         {
19265         .description = "default_tpid",
19266         .field_bit_size = 3,
19267         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19268         },
19269         {
19270         .description = "bd_act_en",
19271         .field_bit_size = 1,
19272         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19273         },
19274         {
19275         .description = "sp_rec_ptr",
19276         .field_bit_size = 16,
19277         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19278         },
19279         {
19280         .description = "byp_sp_lkup",
19281         .field_bit_size = 1,
19282         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19283         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19284                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19285         },
19286         {
19287         .description = "pri_anti_spoof_ctl",
19288         .field_bit_size = 2,
19289         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19290         },
19291         {
19292         .description = "tpid_anti_spoof_ctl",
19293         .field_bit_size = 2,
19294         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19295         },
19296         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
19297         {
19298         .description = "em_profile_id",
19299         .field_bit_size = 10,
19300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19301         .result_operand = {
19302                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19303                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19304                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19305                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19306         },
19307         /* class_tid: 11, wh_plus, table: profile_tcam_0 */
19308         {
19309         .description = "wc_key_id",
19310         .field_bit_size = 4,
19311         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19312         },
19313         {
19314         .description = "wc_profile_id",
19315         .field_bit_size = 8,
19316         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19317         },
19318         {
19319         .description = "wc_search_en",
19320         .field_bit_size = 1,
19321         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19322         },
19323         {
19324         .description = "em_key_mask",
19325         .field_bit_size = 10,
19326         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19327         .result_operand = {
19328                 (0x00f9 >> 8) & 0xff,
19329                 0x00f9 & 0xff,
19330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19331                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19332         },
19333         {
19334         .description = "em_key_id",
19335         .field_bit_size = 5,
19336         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19337         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
19338                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19339         },
19340         {
19341         .description = "em_profile_id",
19342         .field_bit_size = 8,
19343         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19344         .result_operand = {
19345                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19346                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19348                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19349         },
19350         {
19351         .description = "em_search_en",
19352         .field_bit_size = 1,
19353         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19354         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19356         },
19357         {
19358         .description = "pl_byp_lkup_en",
19359         .field_bit_size = 1,
19360         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19361         },
19362         /* class_tid: 11, wh_plus, table: ext_em_0 */
19363         {
19364         .description = "act_rec_ptr",
19365         .field_bit_size = 33,
19366         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19367         .result_operand = {
19368                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19369                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19372         },
19373         {
19374         .description = "ext_flow_ctr",
19375         .field_bit_size = 1,
19376         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19377         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19378                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19379         },
19380         {
19381         .description = "act_rec_int",
19382         .field_bit_size = 1,
19383         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19384         },
19385         {
19386         .description = "act_rec_size",
19387         .field_bit_size = 5,
19388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19389         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19390                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19391         },
19392         {
19393         .description = "key_size",
19394         .field_bit_size = 9,
19395         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19396         .result_operand = {
19397                 (0x0185 >> 8) & 0xff,
19398                 0x0185 & 0xff,
19399                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19400                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19401         },
19402         {
19403         .description = "reserved",
19404         .field_bit_size = 11,
19405         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19406         },
19407         {
19408         .description = "strength",
19409         .field_bit_size = 2,
19410         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19411         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19413         },
19414         {
19415         .description = "l1_cacheable",
19416         .field_bit_size = 1,
19417         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19418         },
19419         {
19420         .description = "valid",
19421         .field_bit_size = 1,
19422         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19423         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19424                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19425         },
19426         /* class_tid: 11, wh_plus, table: int_em_0 */
19427         {
19428         .description = "act_rec_ptr",
19429         .field_bit_size = 33,
19430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19431         .result_operand = {
19432                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19433                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19434                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19435                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19436         },
19437         {
19438         .description = "ext_flow_ctr",
19439         .field_bit_size = 1,
19440         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19441         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19442                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19443         },
19444         {
19445         .description = "act_rec_int",
19446         .field_bit_size = 1,
19447         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19448         },
19449         {
19450         .description = "act_rec_size",
19451         .field_bit_size = 5,
19452         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19453         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19454                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19455         },
19456         {
19457         .description = "key_size",
19458         .field_bit_size = 9,
19459         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19460         .result_operand = {
19461                 (0x0185 >> 8) & 0xff,
19462                 0x0185 & 0xff,
19463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19464                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19465         },
19466         {
19467         .description = "reserved",
19468         .field_bit_size = 11,
19469         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19470         },
19471         {
19472         .description = "strength",
19473         .field_bit_size = 2,
19474         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19475         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19477         },
19478         {
19479         .description = "l1_cacheable",
19480         .field_bit_size = 1,
19481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19482         },
19483         {
19484         .description = "valid",
19485         .field_bit_size = 1,
19486         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19487         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19488                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19489         },
19490         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
19491         {
19492         .description = "l2_cntxt_id",
19493         .field_bit_size = 10,
19494         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19495         .result_operand = {
19496                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19497                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19498                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19499                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19500         },
19501         {
19502         .description = "prof_func_id",
19503         .field_bit_size = 7,
19504         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19505         .result_operand = {
19506                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19507                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19508                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19509                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19510         },
19511         {
19512         .description = "l2_byp_lkup_en",
19513         .field_bit_size = 1,
19514         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19515         },
19516         {
19517         .description = "parif",
19518         .field_bit_size = 4,
19519         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19520         .result_operand = {
19521                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19522                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19523                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19524                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19525         },
19526         {
19527         .description = "allowed_pri",
19528         .field_bit_size = 8,
19529         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19530         },
19531         {
19532         .description = "default_pri",
19533         .field_bit_size = 3,
19534         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19535         },
19536         {
19537         .description = "allowed_tpid",
19538         .field_bit_size = 6,
19539         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19540         },
19541         {
19542         .description = "default_tpid",
19543         .field_bit_size = 3,
19544         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19545         },
19546         {
19547         .description = "bd_act_en",
19548         .field_bit_size = 1,
19549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19550         },
19551         {
19552         .description = "sp_rec_ptr",
19553         .field_bit_size = 16,
19554         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19555         },
19556         {
19557         .description = "byp_sp_lkup",
19558         .field_bit_size = 1,
19559         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19560         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19562         },
19563         {
19564         .description = "pri_anti_spoof_ctl",
19565         .field_bit_size = 2,
19566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19567         },
19568         {
19569         .description = "tpid_anti_spoof_ctl",
19570         .field_bit_size = 2,
19571         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19572         },
19573         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
19574         {
19575         .description = "em_profile_id",
19576         .field_bit_size = 10,
19577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19578         .result_operand = {
19579                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19580                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19582                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19583         },
19584         /* class_tid: 12, wh_plus, table: profile_tcam_0 */
19585         {
19586         .description = "wc_key_id",
19587         .field_bit_size = 4,
19588         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19589         },
19590         {
19591         .description = "wc_profile_id",
19592         .field_bit_size = 8,
19593         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19594         },
19595         {
19596         .description = "wc_search_en",
19597         .field_bit_size = 1,
19598         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19599         },
19600         {
19601         .description = "em_key_mask",
19602         .field_bit_size = 10,
19603         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19604         .result_operand = {
19605                 (0x00f9 >> 8) & 0xff,
19606                 0x00f9 & 0xff,
19607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19609         },
19610         {
19611         .description = "em_key_id",
19612         .field_bit_size = 5,
19613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19614         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19615                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19616         },
19617         {
19618         .description = "em_profile_id",
19619         .field_bit_size = 8,
19620         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19621         .result_operand = {
19622                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19623                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19624                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19625                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19626         },
19627         {
19628         .description = "em_search_en",
19629         .field_bit_size = 1,
19630         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19631         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19633         },
19634         {
19635         .description = "pl_byp_lkup_en",
19636         .field_bit_size = 1,
19637         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19638         },
19639         /* class_tid: 12, wh_plus, table: ext_em_0 */
19640         {
19641         .description = "act_rec_ptr",
19642         .field_bit_size = 33,
19643         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19644         .result_operand = {
19645                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19646                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19647                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19648                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19649         },
19650         {
19651         .description = "ext_flow_ctr",
19652         .field_bit_size = 1,
19653         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19654         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19655                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19656         },
19657         {
19658         .description = "act_rec_int",
19659         .field_bit_size = 1,
19660         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19661         },
19662         {
19663         .description = "act_rec_size",
19664         .field_bit_size = 5,
19665         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19666         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19667                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19668         },
19669         {
19670         .description = "key_size",
19671         .field_bit_size = 9,
19672         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19673         .result_operand = {
19674                 (0x00c5 >> 8) & 0xff,
19675                 0x00c5 & 0xff,
19676                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19677                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19678         },
19679         {
19680         .description = "reserved",
19681         .field_bit_size = 11,
19682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19683         },
19684         {
19685         .description = "strength",
19686         .field_bit_size = 2,
19687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19688         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19689                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19690         },
19691         {
19692         .description = "l1_cacheable",
19693         .field_bit_size = 1,
19694         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19695         },
19696         {
19697         .description = "valid",
19698         .field_bit_size = 1,
19699         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19700         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19701                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19702         },
19703         /* class_tid: 12, wh_plus, table: int_em_0 */
19704         {
19705         .description = "act_rec_ptr",
19706         .field_bit_size = 33,
19707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19708         .result_operand = {
19709                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19710                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19713         },
19714         {
19715         .description = "ext_flow_ctr",
19716         .field_bit_size = 1,
19717         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19718         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19719                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19720         },
19721         {
19722         .description = "act_rec_int",
19723         .field_bit_size = 1,
19724         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19725         },
19726         {
19727         .description = "act_rec_size",
19728         .field_bit_size = 5,
19729         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19730         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19731                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19732         },
19733         {
19734         .description = "key_size",
19735         .field_bit_size = 9,
19736         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19737         .result_operand = {
19738                 (0x00c5 >> 8) & 0xff,
19739                 0x00c5 & 0xff,
19740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19741                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19742         },
19743         {
19744         .description = "reserved",
19745         .field_bit_size = 11,
19746         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19747         },
19748         {
19749         .description = "strength",
19750         .field_bit_size = 2,
19751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19752         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19753                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19754         },
19755         {
19756         .description = "l1_cacheable",
19757         .field_bit_size = 1,
19758         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19759         },
19760         {
19761         .description = "valid",
19762         .field_bit_size = 1,
19763         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19764         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19766         },
19767         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
19768         {
19769         .description = "l2_cntxt_id",
19770         .field_bit_size = 10,
19771         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19772         .result_operand = {
19773                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
19774                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
19775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19776                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19777         },
19778         {
19779         .description = "prof_func_id",
19780         .field_bit_size = 7,
19781         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
19782         .result_operand = {
19783                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
19784                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
19785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19786                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19787         },
19788         {
19789         .description = "l2_byp_lkup_en",
19790         .field_bit_size = 1,
19791         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19792         },
19793         {
19794         .description = "parif",
19795         .field_bit_size = 4,
19796         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
19797         .result_operand = {
19798                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
19799                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
19800                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19801                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19802         },
19803         {
19804         .description = "allowed_pri",
19805         .field_bit_size = 8,
19806         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19807         },
19808         {
19809         .description = "default_pri",
19810         .field_bit_size = 3,
19811         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19812         },
19813         {
19814         .description = "allowed_tpid",
19815         .field_bit_size = 6,
19816         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19817         },
19818         {
19819         .description = "default_tpid",
19820         .field_bit_size = 3,
19821         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19822         },
19823         {
19824         .description = "bd_act_en",
19825         .field_bit_size = 1,
19826         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19827         },
19828         {
19829         .description = "sp_rec_ptr",
19830         .field_bit_size = 16,
19831         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19832         },
19833         {
19834         .description = "byp_sp_lkup",
19835         .field_bit_size = 1,
19836         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19837         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19838                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19839         },
19840         {
19841         .description = "pri_anti_spoof_ctl",
19842         .field_bit_size = 2,
19843         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19844         },
19845         {
19846         .description = "tpid_anti_spoof_ctl",
19847         .field_bit_size = 2,
19848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19849         },
19850         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
19851         {
19852         .description = "em_profile_id",
19853         .field_bit_size = 10,
19854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19855         .result_operand = {
19856                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19857                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19858                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19860         },
19861         /* class_tid: 13, wh_plus, table: profile_tcam_0 */
19862         {
19863         .description = "wc_key_id",
19864         .field_bit_size = 4,
19865         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19866         },
19867         {
19868         .description = "wc_profile_id",
19869         .field_bit_size = 8,
19870         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19871         },
19872         {
19873         .description = "wc_search_en",
19874         .field_bit_size = 1,
19875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19876         },
19877         {
19878         .description = "em_key_mask",
19879         .field_bit_size = 10,
19880         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19881         .result_operand = {
19882                 (0x00f9 >> 8) & 0xff,
19883                 0x00f9 & 0xff,
19884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19885                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19886         },
19887         {
19888         .description = "em_key_id",
19889         .field_bit_size = 5,
19890         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19891         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
19892                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19893         },
19894         {
19895         .description = "em_profile_id",
19896         .field_bit_size = 8,
19897         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19898         .result_operand = {
19899                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
19900                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
19901                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19902                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19903         },
19904         {
19905         .description = "em_search_en",
19906         .field_bit_size = 1,
19907         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19908         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19910         },
19911         {
19912         .description = "pl_byp_lkup_en",
19913         .field_bit_size = 1,
19914         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19915         },
19916         /* class_tid: 13, wh_plus, table: ext_em_0 */
19917         {
19918         .description = "act_rec_ptr",
19919         .field_bit_size = 33,
19920         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19921         .result_operand = {
19922                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19923                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19924                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19925                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19926         },
19927         {
19928         .description = "ext_flow_ctr",
19929         .field_bit_size = 1,
19930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19931         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19932                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19933         },
19934         {
19935         .description = "act_rec_int",
19936         .field_bit_size = 1,
19937         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19938         },
19939         {
19940         .description = "act_rec_size",
19941         .field_bit_size = 5,
19942         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19943         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
19944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19945         },
19946         {
19947         .description = "key_size",
19948         .field_bit_size = 9,
19949         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19950         .result_operand = {
19951                 (0x00c5 >> 8) & 0xff,
19952                 0x00c5 & 0xff,
19953                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19955         },
19956         {
19957         .description = "reserved",
19958         .field_bit_size = 11,
19959         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19960         },
19961         {
19962         .description = "strength",
19963         .field_bit_size = 2,
19964         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19965         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
19966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19967         },
19968         {
19969         .description = "l1_cacheable",
19970         .field_bit_size = 1,
19971         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
19972         },
19973         {
19974         .description = "valid",
19975         .field_bit_size = 1,
19976         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19977         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19978                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19979         },
19980         /* class_tid: 13, wh_plus, table: int_em_0 */
19981         {
19982         .description = "act_rec_ptr",
19983         .field_bit_size = 33,
19984         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
19985         .result_operand = {
19986                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
19987                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
19988                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19989                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19990         },
19991         {
19992         .description = "ext_flow_ctr",
19993         .field_bit_size = 1,
19994         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
19995         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
19996                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
19997         },
19998         {
19999         .description = "act_rec_int",
20000         .field_bit_size = 1,
20001         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20002         },
20003         {
20004         .description = "act_rec_size",
20005         .field_bit_size = 5,
20006         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20007         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20008                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20009         },
20010         {
20011         .description = "key_size",
20012         .field_bit_size = 9,
20013         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20014         .result_operand = {
20015                 (0x00c5 >> 8) & 0xff,
20016                 0x00c5 & 0xff,
20017                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20018                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20019         },
20020         {
20021         .description = "reserved",
20022         .field_bit_size = 11,
20023         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20024         },
20025         {
20026         .description = "strength",
20027         .field_bit_size = 2,
20028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20029         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20030                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20031         },
20032         {
20033         .description = "l1_cacheable",
20034         .field_bit_size = 1,
20035         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20036         },
20037         {
20038         .description = "valid",
20039         .field_bit_size = 1,
20040         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20041         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20043         },
20044         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
20045         {
20046         .description = "l2_cntxt_id",
20047         .field_bit_size = 10,
20048         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20049         .result_operand = {
20050                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20051                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20053                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20054         },
20055         {
20056         .description = "prof_func_id",
20057         .field_bit_size = 7,
20058         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20059         .result_operand = {
20060                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
20061                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
20062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20063                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20064         },
20065         {
20066         .description = "l2_byp_lkup_en",
20067         .field_bit_size = 1,
20068         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20069         },
20070         {
20071         .description = "parif",
20072         .field_bit_size = 4,
20073         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20074         .result_operand = {
20075                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20076                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20077                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20079         },
20080         {
20081         .description = "allowed_pri",
20082         .field_bit_size = 8,
20083         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20084         },
20085         {
20086         .description = "default_pri",
20087         .field_bit_size = 3,
20088         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20089         },
20090         {
20091         .description = "allowed_tpid",
20092         .field_bit_size = 6,
20093         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20094         },
20095         {
20096         .description = "default_tpid",
20097         .field_bit_size = 3,
20098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20099         },
20100         {
20101         .description = "bd_act_en",
20102         .field_bit_size = 1,
20103         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20104         },
20105         {
20106         .description = "sp_rec_ptr",
20107         .field_bit_size = 16,
20108         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20109         },
20110         {
20111         .description = "byp_sp_lkup",
20112         .field_bit_size = 1,
20113         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20114         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20115                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20116         },
20117         {
20118         .description = "pri_anti_spoof_ctl",
20119         .field_bit_size = 2,
20120         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20121         },
20122         {
20123         .description = "tpid_anti_spoof_ctl",
20124         .field_bit_size = 2,
20125         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20126         },
20127         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
20128         {
20129         .description = "em_profile_id",
20130         .field_bit_size = 10,
20131         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20132         .result_operand = {
20133                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20134                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20136                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20137         },
20138         /* class_tid: 14, wh_plus, table: profile_tcam_0 */
20139         {
20140         .description = "wc_key_id",
20141         .field_bit_size = 4,
20142         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20143         },
20144         {
20145         .description = "wc_profile_id",
20146         .field_bit_size = 8,
20147         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20148         },
20149         {
20150         .description = "wc_search_en",
20151         .field_bit_size = 1,
20152         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20153         },
20154         {
20155         .description = "em_key_mask",
20156         .field_bit_size = 10,
20157         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20158         .result_operand = {
20159                 (0x00f9 >> 8) & 0xff,
20160                 0x00f9 & 0xff,
20161                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20163         },
20164         {
20165         .description = "em_key_id",
20166         .field_bit_size = 5,
20167         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20168         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20170         },
20171         {
20172         .description = "em_profile_id",
20173         .field_bit_size = 8,
20174         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20175         .result_operand = {
20176                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20177                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20178                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20179                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20180         },
20181         {
20182         .description = "em_search_en",
20183         .field_bit_size = 1,
20184         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20185         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20186                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20187         },
20188         {
20189         .description = "pl_byp_lkup_en",
20190         .field_bit_size = 1,
20191         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20192         },
20193         /* class_tid: 14, wh_plus, table: ext_em_0 */
20194         {
20195         .description = "act_rec_ptr",
20196         .field_bit_size = 33,
20197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20198         .result_operand = {
20199                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20200                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20203         },
20204         {
20205         .description = "ext_flow_ctr",
20206         .field_bit_size = 1,
20207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20208         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20209                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20210         },
20211         {
20212         .description = "act_rec_int",
20213         .field_bit_size = 1,
20214         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20215         },
20216         {
20217         .description = "act_rec_size",
20218         .field_bit_size = 5,
20219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20220         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20221                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20222         },
20223         {
20224         .description = "key_size",
20225         .field_bit_size = 9,
20226         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20227         .result_operand = {
20228                 (0x0185 >> 8) & 0xff,
20229                 0x0185 & 0xff,
20230                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20231                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20232         },
20233         {
20234         .description = "reserved",
20235         .field_bit_size = 11,
20236         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20237         },
20238         {
20239         .description = "strength",
20240         .field_bit_size = 2,
20241         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20242         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20243                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20244         },
20245         {
20246         .description = "l1_cacheable",
20247         .field_bit_size = 1,
20248         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20249         },
20250         {
20251         .description = "valid",
20252         .field_bit_size = 1,
20253         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20254         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20255                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20256         },
20257         /* class_tid: 14, wh_plus, table: int_em_0 */
20258         {
20259         .description = "act_rec_ptr",
20260         .field_bit_size = 33,
20261         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20262         .result_operand = {
20263                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20264                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20265                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20267         },
20268         {
20269         .description = "ext_flow_ctr",
20270         .field_bit_size = 1,
20271         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20272         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20274         },
20275         {
20276         .description = "act_rec_int",
20277         .field_bit_size = 1,
20278         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20279         },
20280         {
20281         .description = "act_rec_size",
20282         .field_bit_size = 5,
20283         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20284         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20285                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20286         },
20287         {
20288         .description = "key_size",
20289         .field_bit_size = 9,
20290         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20291         .result_operand = {
20292                 (0x0185 >> 8) & 0xff,
20293                 0x0185 & 0xff,
20294                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20295                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20296         },
20297         {
20298         .description = "reserved",
20299         .field_bit_size = 11,
20300         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20301         },
20302         {
20303         .description = "strength",
20304         .field_bit_size = 2,
20305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20306         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20307                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20308         },
20309         {
20310         .description = "l1_cacheable",
20311         .field_bit_size = 1,
20312         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20313         },
20314         {
20315         .description = "valid",
20316         .field_bit_size = 1,
20317         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20318         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20319                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20320         },
20321         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
20322         {
20323         .description = "l2_cntxt_id",
20324         .field_bit_size = 10,
20325         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20326         .result_operand = {
20327                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20328                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20329                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20331         },
20332         {
20333         .description = "prof_func_id",
20334         .field_bit_size = 7,
20335         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20336         .result_operand = {
20337                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
20338                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
20339                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20340                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20341         },
20342         {
20343         .description = "l2_byp_lkup_en",
20344         .field_bit_size = 1,
20345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20346         },
20347         {
20348         .description = "parif",
20349         .field_bit_size = 4,
20350         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20351         .result_operand = {
20352                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20353                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20354                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20355                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20356         },
20357         {
20358         .description = "allowed_pri",
20359         .field_bit_size = 8,
20360         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20361         },
20362         {
20363         .description = "default_pri",
20364         .field_bit_size = 3,
20365         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20366         },
20367         {
20368         .description = "allowed_tpid",
20369         .field_bit_size = 6,
20370         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20371         },
20372         {
20373         .description = "default_tpid",
20374         .field_bit_size = 3,
20375         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20376         },
20377         {
20378         .description = "bd_act_en",
20379         .field_bit_size = 1,
20380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20381         },
20382         {
20383         .description = "sp_rec_ptr",
20384         .field_bit_size = 16,
20385         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20386         },
20387         {
20388         .description = "byp_sp_lkup",
20389         .field_bit_size = 1,
20390         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20391         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20393         },
20394         {
20395         .description = "pri_anti_spoof_ctl",
20396         .field_bit_size = 2,
20397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20398         },
20399         {
20400         .description = "tpid_anti_spoof_ctl",
20401         .field_bit_size = 2,
20402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20403         },
20404         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
20405         {
20406         .description = "em_profile_id",
20407         .field_bit_size = 10,
20408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20409         .result_operand = {
20410                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20411                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20413                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20414         },
20415         /* class_tid: 15, wh_plus, table: profile_tcam_0 */
20416         {
20417         .description = "wc_key_id",
20418         .field_bit_size = 4,
20419         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20420         },
20421         {
20422         .description = "wc_profile_id",
20423         .field_bit_size = 8,
20424         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20425         },
20426         {
20427         .description = "wc_search_en",
20428         .field_bit_size = 1,
20429         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20430         },
20431         {
20432         .description = "em_key_mask",
20433         .field_bit_size = 10,
20434         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20435         .result_operand = {
20436                 (0x00f9 >> 8) & 0xff,
20437                 0x00f9 & 0xff,
20438                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20439                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20440         },
20441         {
20442         .description = "em_key_id",
20443         .field_bit_size = 5,
20444         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20445         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
20446                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20447         },
20448         {
20449         .description = "em_profile_id",
20450         .field_bit_size = 8,
20451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20452         .result_operand = {
20453                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20454                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20455                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20456                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20457         },
20458         {
20459         .description = "em_search_en",
20460         .field_bit_size = 1,
20461         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20462         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20463                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20464         },
20465         {
20466         .description = "pl_byp_lkup_en",
20467         .field_bit_size = 1,
20468         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20469         },
20470         /* class_tid: 15, wh_plus, table: ext_em_0 */
20471         {
20472         .description = "act_rec_ptr",
20473         .field_bit_size = 33,
20474         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20475         .result_operand = {
20476                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20477                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20478                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20479                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20480         },
20481         {
20482         .description = "ext_flow_ctr",
20483         .field_bit_size = 1,
20484         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20485         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20486                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20487         },
20488         {
20489         .description = "act_rec_int",
20490         .field_bit_size = 1,
20491         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20492         },
20493         {
20494         .description = "act_rec_size",
20495         .field_bit_size = 5,
20496         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20497         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20498                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20499         },
20500         {
20501         .description = "key_size",
20502         .field_bit_size = 9,
20503         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20504         .result_operand = {
20505                 (0x0185 >> 8) & 0xff,
20506                 0x0185 & 0xff,
20507                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20508                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20509         },
20510         {
20511         .description = "reserved",
20512         .field_bit_size = 11,
20513         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20514         },
20515         {
20516         .description = "strength",
20517         .field_bit_size = 2,
20518         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20519         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20520                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20521         },
20522         {
20523         .description = "l1_cacheable",
20524         .field_bit_size = 1,
20525         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20526         },
20527         {
20528         .description = "valid",
20529         .field_bit_size = 1,
20530         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20531         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20533         },
20534         /* class_tid: 15, wh_plus, table: int_em_0 */
20535         {
20536         .description = "act_rec_ptr",
20537         .field_bit_size = 33,
20538         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20539         .result_operand = {
20540                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20541                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20542                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20543                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20544         },
20545         {
20546         .description = "ext_flow_ctr",
20547         .field_bit_size = 1,
20548         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20549         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20551         },
20552         {
20553         .description = "act_rec_int",
20554         .field_bit_size = 1,
20555         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20556         },
20557         {
20558         .description = "act_rec_size",
20559         .field_bit_size = 5,
20560         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20561         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20562                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20563         },
20564         {
20565         .description = "key_size",
20566         .field_bit_size = 9,
20567         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20568         .result_operand = {
20569                 (0x0185 >> 8) & 0xff,
20570                 0x0185 & 0xff,
20571                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20572                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20573         },
20574         {
20575         .description = "reserved",
20576         .field_bit_size = 11,
20577         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20578         },
20579         {
20580         .description = "strength",
20581         .field_bit_size = 2,
20582         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20583         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20584                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20585         },
20586         {
20587         .description = "l1_cacheable",
20588         .field_bit_size = 1,
20589         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20590         },
20591         {
20592         .description = "valid",
20593         .field_bit_size = 1,
20594         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20595         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20597         },
20598         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
20599         {
20600         .description = "l2_cntxt_id",
20601         .field_bit_size = 10,
20602         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20603         .result_operand = {
20604                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20605                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20606                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20607                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20608         },
20609         {
20610         .description = "prof_func_id",
20611         .field_bit_size = 7,
20612         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20613         .result_operand = {
20614                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20615                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20616                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20617                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20618         },
20619         {
20620         .description = "l2_byp_lkup_en",
20621         .field_bit_size = 1,
20622         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20623         },
20624         {
20625         .description = "parif",
20626         .field_bit_size = 4,
20627         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20628         .result_operand = {
20629                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20630                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20631                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20632                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20633         },
20634         {
20635         .description = "allowed_pri",
20636         .field_bit_size = 8,
20637         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20638         },
20639         {
20640         .description = "default_pri",
20641         .field_bit_size = 3,
20642         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20643         },
20644         {
20645         .description = "allowed_tpid",
20646         .field_bit_size = 6,
20647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20648         },
20649         {
20650         .description = "default_tpid",
20651         .field_bit_size = 3,
20652         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20653         },
20654         {
20655         .description = "bd_act_en",
20656         .field_bit_size = 1,
20657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20658         },
20659         {
20660         .description = "sp_rec_ptr",
20661         .field_bit_size = 16,
20662         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20663         },
20664         {
20665         .description = "byp_sp_lkup",
20666         .field_bit_size = 1,
20667         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20668         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20669                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20670         },
20671         {
20672         .description = "pri_anti_spoof_ctl",
20673         .field_bit_size = 2,
20674         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20675         },
20676         {
20677         .description = "tpid_anti_spoof_ctl",
20678         .field_bit_size = 2,
20679         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20680         },
20681         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
20682         {
20683         .description = "em_profile_id",
20684         .field_bit_size = 10,
20685         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20686         .result_operand = {
20687                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20688                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20689                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20690                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20691         },
20692         /* class_tid: 16, wh_plus, table: profile_tcam_0 */
20693         {
20694         .description = "wc_key_id",
20695         .field_bit_size = 4,
20696         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20697         },
20698         {
20699         .description = "wc_profile_id",
20700         .field_bit_size = 8,
20701         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20702         },
20703         {
20704         .description = "wc_search_en",
20705         .field_bit_size = 1,
20706         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20707         },
20708         {
20709         .description = "em_key_mask",
20710         .field_bit_size = 10,
20711         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20712         .result_operand = {
20713                 (0x0031 >> 8) & 0xff,
20714                 0x0031 & 0xff,
20715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20716                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20717         },
20718         {
20719         .description = "em_key_id",
20720         .field_bit_size = 5,
20721         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20722         .result_operand = {0x14, 0x00, 0x00, 0x00, 0x00, 0x00,
20723                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20724         },
20725         {
20726         .description = "em_profile_id",
20727         .field_bit_size = 8,
20728         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20729         .result_operand = {
20730                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20731                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20732                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20733                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20734         },
20735         {
20736         .description = "em_search_en",
20737         .field_bit_size = 1,
20738         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20739         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20741         },
20742         {
20743         .description = "pl_byp_lkup_en",
20744         .field_bit_size = 1,
20745         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20746         },
20747         /* class_tid: 16, wh_plus, table: ext_em_0 */
20748         {
20749         .description = "act_rec_ptr",
20750         .field_bit_size = 33,
20751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20752         .result_operand = {
20753                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20754                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20755                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20757         },
20758         {
20759         .description = "ext_flow_ctr",
20760         .field_bit_size = 1,
20761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20762         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20763                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20764         },
20765         {
20766         .description = "act_rec_int",
20767         .field_bit_size = 1,
20768         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20769         },
20770         {
20771         .description = "act_rec_size",
20772         .field_bit_size = 5,
20773         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20774         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20775                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20776         },
20777         {
20778         .description = "key_size",
20779         .field_bit_size = 9,
20780         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20781         .result_operand = {
20782                 (0x00c5 >> 8) & 0xff,
20783                 0x00c5 & 0xff,
20784                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20785                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20786         },
20787         {
20788         .description = "reserved",
20789         .field_bit_size = 11,
20790         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20791         },
20792         {
20793         .description = "strength",
20794         .field_bit_size = 2,
20795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20796         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20797                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20798         },
20799         {
20800         .description = "l1_cacheable",
20801         .field_bit_size = 1,
20802         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20803         },
20804         {
20805         .description = "valid",
20806         .field_bit_size = 1,
20807         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20808         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20809                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20810         },
20811         /* class_tid: 16, wh_plus, table: int_em_0 */
20812         {
20813         .description = "act_rec_ptr",
20814         .field_bit_size = 33,
20815         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20816         .result_operand = {
20817                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
20818                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
20819                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20821         },
20822         {
20823         .description = "ext_flow_ctr",
20824         .field_bit_size = 1,
20825         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20826         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20827                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20828         },
20829         {
20830         .description = "act_rec_int",
20831         .field_bit_size = 1,
20832         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20833         },
20834         {
20835         .description = "act_rec_size",
20836         .field_bit_size = 5,
20837         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20838         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
20839                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20840         },
20841         {
20842         .description = "key_size",
20843         .field_bit_size = 9,
20844         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20845         .result_operand = {
20846                 (0x00c5 >> 8) & 0xff,
20847                 0x00c5 & 0xff,
20848                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20849                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20850         },
20851         {
20852         .description = "reserved",
20853         .field_bit_size = 11,
20854         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20855         },
20856         {
20857         .description = "strength",
20858         .field_bit_size = 2,
20859         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20860         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
20861                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20862         },
20863         {
20864         .description = "l1_cacheable",
20865         .field_bit_size = 1,
20866         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20867         },
20868         {
20869         .description = "valid",
20870         .field_bit_size = 1,
20871         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20872         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20874         },
20875         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
20876         {
20877         .description = "l2_cntxt_id",
20878         .field_bit_size = 10,
20879         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20880         .result_operand = {
20881                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
20882                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
20883                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20884                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20885         },
20886         {
20887         .description = "prof_func_id",
20888         .field_bit_size = 7,
20889         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
20890         .result_operand = {
20891                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
20892                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
20893                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20894                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20895         },
20896         {
20897         .description = "l2_byp_lkup_en",
20898         .field_bit_size = 1,
20899         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20900         },
20901         {
20902         .description = "parif",
20903         .field_bit_size = 4,
20904         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
20905         .result_operand = {
20906                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
20907                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
20908                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20909                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20910         },
20911         {
20912         .description = "allowed_pri",
20913         .field_bit_size = 8,
20914         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20915         },
20916         {
20917         .description = "default_pri",
20918         .field_bit_size = 3,
20919         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20920         },
20921         {
20922         .description = "allowed_tpid",
20923         .field_bit_size = 6,
20924         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20925         },
20926         {
20927         .description = "default_tpid",
20928         .field_bit_size = 3,
20929         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20930         },
20931         {
20932         .description = "bd_act_en",
20933         .field_bit_size = 1,
20934         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20935         },
20936         {
20937         .description = "sp_rec_ptr",
20938         .field_bit_size = 16,
20939         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20940         },
20941         {
20942         .description = "byp_sp_lkup",
20943         .field_bit_size = 1,
20944         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20945         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
20946                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20947         },
20948         {
20949         .description = "pri_anti_spoof_ctl",
20950         .field_bit_size = 2,
20951         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20952         },
20953         {
20954         .description = "tpid_anti_spoof_ctl",
20955         .field_bit_size = 2,
20956         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20957         },
20958         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
20959         {
20960         .description = "em_profile_id",
20961         .field_bit_size = 10,
20962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
20963         .result_operand = {
20964                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
20965                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
20966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20968         },
20969         /* class_tid: 17, wh_plus, table: profile_tcam_0 */
20970         {
20971         .description = "wc_key_id",
20972         .field_bit_size = 4,
20973         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20974         },
20975         {
20976         .description = "wc_profile_id",
20977         .field_bit_size = 8,
20978         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20979         },
20980         {
20981         .description = "wc_search_en",
20982         .field_bit_size = 1,
20983         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
20984         },
20985         {
20986         .description = "em_key_mask",
20987         .field_bit_size = 10,
20988         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20989         .result_operand = {
20990                 (0x0031 >> 8) & 0xff,
20991                 0x0031 & 0xff,
20992                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20993                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
20994         },
20995         {
20996         .description = "em_key_id",
20997         .field_bit_size = 5,
20998         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
20999         .result_operand = {0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
21000                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21001         },
21002         {
21003         .description = "em_profile_id",
21004         .field_bit_size = 8,
21005         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21006         .result_operand = {
21007                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21008                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21009                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21010                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21011         },
21012         {
21013         .description = "em_search_en",
21014         .field_bit_size = 1,
21015         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21016         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21017                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21018         },
21019         {
21020         .description = "pl_byp_lkup_en",
21021         .field_bit_size = 1,
21022         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21023         },
21024         /* class_tid: 17, wh_plus, table: ext_em_0 */
21025         {
21026         .description = "act_rec_ptr",
21027         .field_bit_size = 33,
21028         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21029         .result_operand = {
21030                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21031                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21032                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21033                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21034         },
21035         {
21036         .description = "ext_flow_ctr",
21037         .field_bit_size = 1,
21038         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21039         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21040                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21041         },
21042         {
21043         .description = "act_rec_int",
21044         .field_bit_size = 1,
21045         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21046         },
21047         {
21048         .description = "act_rec_size",
21049         .field_bit_size = 5,
21050         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21051         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21052                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21053         },
21054         {
21055         .description = "key_size",
21056         .field_bit_size = 9,
21057         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21058         .result_operand = {
21059                 (0x0185 >> 8) & 0xff,
21060                 0x0185 & 0xff,
21061                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21062                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21063         },
21064         {
21065         .description = "reserved",
21066         .field_bit_size = 11,
21067         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21068         },
21069         {
21070         .description = "strength",
21071         .field_bit_size = 2,
21072         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21073         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21074                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21075         },
21076         {
21077         .description = "l1_cacheable",
21078         .field_bit_size = 1,
21079         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21080         },
21081         {
21082         .description = "valid",
21083         .field_bit_size = 1,
21084         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21085         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21087         },
21088         /* class_tid: 17, wh_plus, table: int_em_0 */
21089         {
21090         .description = "act_rec_ptr",
21091         .field_bit_size = 33,
21092         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21093         .result_operand = {
21094                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21095                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21096                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21097                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21098         },
21099         {
21100         .description = "ext_flow_ctr",
21101         .field_bit_size = 1,
21102         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21103         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21104                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21105         },
21106         {
21107         .description = "act_rec_int",
21108         .field_bit_size = 1,
21109         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21110         },
21111         {
21112         .description = "act_rec_size",
21113         .field_bit_size = 5,
21114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21115         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21117         },
21118         {
21119         .description = "key_size",
21120         .field_bit_size = 9,
21121         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21122         .result_operand = {
21123                 (0x0185 >> 8) & 0xff,
21124                 0x0185 & 0xff,
21125                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21126                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21127         },
21128         {
21129         .description = "reserved",
21130         .field_bit_size = 11,
21131         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21132         },
21133         {
21134         .description = "strength",
21135         .field_bit_size = 2,
21136         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21137         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21139         },
21140         {
21141         .description = "l1_cacheable",
21142         .field_bit_size = 1,
21143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21144         },
21145         {
21146         .description = "valid",
21147         .field_bit_size = 1,
21148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21149         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21151         },
21152         /* class_tid: 18, wh_plus, table: int_flow_counter_tbl_0 */
21153         {
21154         .description = "count",
21155         .field_bit_size = 64,
21156         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21157         },
21158         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
21159         {
21160         .description = "l2_cntxt_id",
21161         .field_bit_size = 10,
21162         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21163         .result_operand = {
21164                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21165                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21166                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21167                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21168         },
21169         {
21170         .description = "prof_func_id",
21171         .field_bit_size = 7,
21172         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21173         .result_operand = {
21174                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21175                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21176                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21177                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21178         },
21179         {
21180         .description = "l2_byp_lkup_en",
21181         .field_bit_size = 1,
21182         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21183         },
21184         {
21185         .description = "parif",
21186         .field_bit_size = 4,
21187         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21188         .result_operand = {
21189                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21190                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21191                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21193         },
21194         {
21195         .description = "allowed_pri",
21196         .field_bit_size = 8,
21197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21198         },
21199         {
21200         .description = "default_pri",
21201         .field_bit_size = 3,
21202         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21203         },
21204         {
21205         .description = "allowed_tpid",
21206         .field_bit_size = 6,
21207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21208         },
21209         {
21210         .description = "default_tpid",
21211         .field_bit_size = 3,
21212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21213         },
21214         {
21215         .description = "bd_act_en",
21216         .field_bit_size = 1,
21217         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21218         },
21219         {
21220         .description = "sp_rec_ptr",
21221         .field_bit_size = 16,
21222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21223         },
21224         {
21225         .description = "byp_sp_lkup",
21226         .field_bit_size = 1,
21227         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21228         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21229                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21230         },
21231         {
21232         .description = "pri_anti_spoof_ctl",
21233         .field_bit_size = 2,
21234         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21235         },
21236         {
21237         .description = "tpid_anti_spoof_ctl",
21238         .field_bit_size = 2,
21239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21240         },
21241         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
21242         {
21243         .description = "em_profile_id",
21244         .field_bit_size = 10,
21245         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21246         .result_operand = {
21247                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21248                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21249                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21250                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21251         },
21252         {
21253         .description = "wc_profile_id",
21254         .field_bit_size = 10,
21255         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21256         .result_operand = {
21257                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21258                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21260                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21261         },
21262         /* class_tid: 18, wh_plus, table: profile_tcam_0 */
21263         {
21264         .description = "wc_key_id",
21265         .field_bit_size = 4,
21266         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21267         },
21268         {
21269         .description = "wc_profile_id",
21270         .field_bit_size = 8,
21271         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21272         .result_operand = {
21273                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21274                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21276                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21277         },
21278         {
21279         .description = "wc_search_en",
21280         .field_bit_size = 1,
21281         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21282         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21284         },
21285         {
21286         .description = "em_key_mask",
21287         .field_bit_size = 10,
21288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21289         .result_operand = {
21290                 (0x001b >> 8) & 0xff,
21291                 0x001b & 0xff,
21292                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21293                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21294         },
21295         {
21296         .description = "em_key_id",
21297         .field_bit_size = 5,
21298         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21299         .result_operand = {0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
21300                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21301         },
21302         {
21303         .description = "em_profile_id",
21304         .field_bit_size = 8,
21305         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21306         .result_operand = {
21307                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21308                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21309                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21310                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21311         },
21312         {
21313         .description = "em_search_en",
21314         .field_bit_size = 1,
21315         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21316         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21318         },
21319         {
21320         .description = "pl_byp_lkup_en",
21321         .field_bit_size = 1,
21322         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21323         },
21324         /* class_tid: 18, wh_plus, table: wm_0 */
21325         {
21326         .description = "strength",
21327         .field_bit_size = 2,
21328         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21329         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21330                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21331         },
21332         {
21333         .description = "act_rec_ptr",
21334         .field_bit_size = 16,
21335         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21336         .result_operand = {
21337                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21338                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21339                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21340                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21341         },
21342         {
21343         .description = "valid",
21344         .field_bit_size = 1,
21345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21346         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21347                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21348         },
21349         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
21350         {
21351         .description = "l2_cntxt_id",
21352         .field_bit_size = 10,
21353         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21354         .result_operand = {
21355                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21356                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21357                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21358                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21359         },
21360         {
21361         .description = "prof_func_id",
21362         .field_bit_size = 7,
21363         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21364         .result_operand = {
21365                 (BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID >> 8) & 0xff,
21366                 BNXT_ULP_GLB_REGFILE_INDEX_VXLAN_PROF_FUNC_ID & 0xff,
21367                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21368                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21369         },
21370         {
21371         .description = "l2_byp_lkup_en",
21372         .field_bit_size = 1,
21373         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21374         },
21375         {
21376         .description = "parif",
21377         .field_bit_size = 4,
21378         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_COMP_FIELD,
21379         .result_operand = {
21380                 (BNXT_ULP_CF_IDX_PHY_PORT_PARIF >> 8) & 0xff,
21381                 BNXT_ULP_CF_IDX_PHY_PORT_PARIF & 0xff,
21382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21383                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21384         },
21385         {
21386         .description = "allowed_pri",
21387         .field_bit_size = 8,
21388         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21389         },
21390         {
21391         .description = "default_pri",
21392         .field_bit_size = 3,
21393         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21394         },
21395         {
21396         .description = "allowed_tpid",
21397         .field_bit_size = 6,
21398         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21399         },
21400         {
21401         .description = "default_tpid",
21402         .field_bit_size = 3,
21403         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21404         },
21405         {
21406         .description = "bd_act_en",
21407         .field_bit_size = 1,
21408         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21409         },
21410         {
21411         .description = "sp_rec_ptr",
21412         .field_bit_size = 16,
21413         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21414         },
21415         {
21416         .description = "byp_sp_lkup",
21417         .field_bit_size = 1,
21418         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21419         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21420                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21421         },
21422         {
21423         .description = "pri_anti_spoof_ctl",
21424         .field_bit_size = 2,
21425         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21426         },
21427         {
21428         .description = "tpid_anti_spoof_ctl",
21429         .field_bit_size = 2,
21430         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21431         },
21432         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
21433         {
21434         .description = "em_profile_id",
21435         .field_bit_size = 10,
21436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21437         .result_operand = {
21438                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21439                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21441                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21442         },
21443         {
21444         .description = "wc_profile_id",
21445         .field_bit_size = 10,
21446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21447         .result_operand = {
21448                 (BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 >> 8) & 0xff,
21449                 BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0 & 0xff,
21450                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21451                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21452         },
21453         /* class_tid: 19, wh_plus, table: profile_tcam_0 */
21454         {
21455         .description = "wc_key_id",
21456         .field_bit_size = 4,
21457         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21458         },
21459         {
21460         .description = "wc_profile_id",
21461         .field_bit_size = 8,
21462         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21463         },
21464         {
21465         .description = "wc_search_en",
21466         .field_bit_size = 1,
21467         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21468         },
21469         {
21470         .description = "em_key_mask",
21471         .field_bit_size = 10,
21472         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21473         },
21474         {
21475         .description = "em_key_id",
21476         .field_bit_size = 5,
21477         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21478         },
21479         {
21480         .description = "em_profile_id",
21481         .field_bit_size = 8,
21482         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21483         },
21484         {
21485         .description = "em_search_en",
21486         .field_bit_size = 1,
21487         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21488         },
21489         {
21490         .description = "pl_byp_lkup_en",
21491         .field_bit_size = 1,
21492         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21493         },
21494         /* class_tid: 19, wh_plus, table: int_em_0 */
21495         {
21496         .description = "act_rec_ptr",
21497         .field_bit_size = 33,
21498         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21499         .result_operand = {
21500                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21501                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21502                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21503                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21504         },
21505         {
21506         .description = "ext_flow_ctr",
21507         .field_bit_size = 1,
21508         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21509         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21510                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21511         },
21512         {
21513         .description = "act_rec_int",
21514         .field_bit_size = 1,
21515         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21516         },
21517         {
21518         .description = "act_rec_size",
21519         .field_bit_size = 5,
21520         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21521         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21522                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21523         },
21524         {
21525         .description = "key_size",
21526         .field_bit_size = 9,
21527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21528         .result_operand = {
21529                 (0x006d >> 8) & 0xff,
21530                 0x006d & 0xff,
21531                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21532                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21533         },
21534         {
21535         .description = "reserved",
21536         .field_bit_size = 11,
21537         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21538         },
21539         {
21540         .description = "strength",
21541         .field_bit_size = 2,
21542         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21543         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21544                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21545         },
21546         {
21547         .description = "l1_cacheable",
21548         .field_bit_size = 1,
21549         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21550         },
21551         {
21552         .description = "valid",
21553         .field_bit_size = 1,
21554         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21555         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21556                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21557         },
21558         /* class_tid: 19, wh_plus, table: ext_em_0 */
21559         {
21560         .description = "act_rec_ptr",
21561         .field_bit_size = 33,
21562         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21563         .result_operand = {
21564                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21565                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21566                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21567                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21568         },
21569         {
21570         .description = "ext_flow_ctr",
21571         .field_bit_size = 1,
21572         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21573         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21574                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21575         },
21576         {
21577         .description = "act_rec_int",
21578         .field_bit_size = 1,
21579         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21580         },
21581         {
21582         .description = "act_rec_size",
21583         .field_bit_size = 5,
21584         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21585         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21587         },
21588         {
21589         .description = "key_size",
21590         .field_bit_size = 9,
21591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21592         .result_operand = {
21593                 (0x006d >> 8) & 0xff,
21594                 0x006d & 0xff,
21595                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21596                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21597         },
21598         {
21599         .description = "reserved",
21600         .field_bit_size = 11,
21601         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21602         },
21603         {
21604         .description = "strength",
21605         .field_bit_size = 2,
21606         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21607         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21608                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21609         },
21610         {
21611         .description = "l1_cacheable",
21612         .field_bit_size = 1,
21613         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21614         },
21615         {
21616         .description = "valid",
21617         .field_bit_size = 1,
21618         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21619         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21620                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21621         },
21622         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
21623         {
21624         .description = "l2_cntxt_id",
21625         .field_bit_size = 10,
21626         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21627         .result_operand = {
21628                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21629                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21630                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21631                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21632         },
21633         /* class_tid: 20, wh_plus, table: l2_cntxt_tcam_0 */
21634         {
21635         .description = "l2_cntxt_id",
21636         .field_bit_size = 10,
21637         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21638         .result_operand = {
21639                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21640                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21641                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21642                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21643         },
21644         {
21645         .description = "prof_func_id",
21646         .field_bit_size = 7,
21647         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21648         .result_operand = {
21649                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21650                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21651                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21652                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21653         },
21654         {
21655         .description = "l2_byp_lkup_en",
21656         .field_bit_size = 1,
21657         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21658         },
21659         {
21660         .description = "parif",
21661         .field_bit_size = 4,
21662         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21663         .result_operand = {
21664                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21665                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21666                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21667                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21668         .result_operand_true = {
21669                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21670                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21671                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21672                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21673         .result_operand_false = {
21674                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21675                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21676                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21677                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21678         },
21679         {
21680         .description = "allowed_pri",
21681         .field_bit_size = 8,
21682         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21683         },
21684         {
21685         .description = "default_pri",
21686         .field_bit_size = 3,
21687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21688         },
21689         {
21690         .description = "allowed_tpid",
21691         .field_bit_size = 6,
21692         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21693         },
21694         {
21695         .description = "default_tpid",
21696         .field_bit_size = 3,
21697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21698         },
21699         {
21700         .description = "bd_act_en",
21701         .field_bit_size = 1,
21702         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21703         },
21704         {
21705         .description = "sp_rec_ptr",
21706         .field_bit_size = 16,
21707         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21708         .result_operand = {
21709                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
21710                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
21711                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21712                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21713         },
21714         {
21715         .description = "byp_sp_lkup",
21716         .field_bit_size = 1,
21717         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21718         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21719                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21720         },
21721         {
21722         .description = "pri_anti_spoof_ctl",
21723         .field_bit_size = 2,
21724         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21725         },
21726         {
21727         .description = "tpid_anti_spoof_ctl",
21728         .field_bit_size = 2,
21729         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21730         },
21731         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
21732         {
21733         .description = "em_profile_id",
21734         .field_bit_size = 10,
21735         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21736         .result_operand = {
21737                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21738                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21739                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21740                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21741         },
21742         /* class_tid: 20, wh_plus, table: profile_tcam_0 */
21743         {
21744         .description = "wc_key_id",
21745         .field_bit_size = 4,
21746         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21747         },
21748         {
21749         .description = "wc_profile_id",
21750         .field_bit_size = 8,
21751         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21752         },
21753         {
21754         .description = "wc_search_en",
21755         .field_bit_size = 1,
21756         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21757         },
21758         {
21759         .description = "em_key_mask",
21760         .field_bit_size = 10,
21761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21762         .result_operand = {
21763                 (0x00f9 >> 8) & 0xff,
21764                 0x00f9 & 0xff,
21765                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21766                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21767         },
21768         {
21769         .description = "em_key_id",
21770         .field_bit_size = 5,
21771         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21772         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
21773                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21774         },
21775         {
21776         .description = "em_profile_id",
21777         .field_bit_size = 8,
21778         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21779         .result_operand = {
21780                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
21781                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
21782                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21783                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21784         },
21785         {
21786         .description = "em_search_en",
21787         .field_bit_size = 1,
21788         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21789         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21790                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21791         },
21792         {
21793         .description = "pl_byp_lkup_en",
21794         .field_bit_size = 1,
21795         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21796         },
21797         /* class_tid: 20, wh_plus, table: ext_em_0 */
21798         {
21799         .description = "act_rec_ptr",
21800         .field_bit_size = 33,
21801         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21802         .result_operand = {
21803                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21804                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21805                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21806                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21807         },
21808         {
21809         .description = "ext_flow_ctr",
21810         .field_bit_size = 1,
21811         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21812         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21813                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21814         },
21815         {
21816         .description = "act_rec_int",
21817         .field_bit_size = 1,
21818         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21819         },
21820         {
21821         .description = "act_rec_size",
21822         .field_bit_size = 5,
21823         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21824         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21825                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21826         },
21827         {
21828         .description = "key_size",
21829         .field_bit_size = 9,
21830         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21831         .result_operand = {
21832                 (0x00c5 >> 8) & 0xff,
21833                 0x00c5 & 0xff,
21834                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21835                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21836         },
21837         {
21838         .description = "reserved",
21839         .field_bit_size = 11,
21840         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21841         },
21842         {
21843         .description = "strength",
21844         .field_bit_size = 2,
21845         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21846         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21847                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21848         },
21849         {
21850         .description = "l1_cacheable",
21851         .field_bit_size = 1,
21852         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21853         },
21854         {
21855         .description = "valid",
21856         .field_bit_size = 1,
21857         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21858         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21859                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21860         },
21861         /* class_tid: 20, wh_plus, table: int_em_0 */
21862         {
21863         .description = "act_rec_ptr",
21864         .field_bit_size = 33,
21865         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21866         .result_operand = {
21867                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
21868                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
21869                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21870                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21871         },
21872         {
21873         .description = "ext_flow_ctr",
21874         .field_bit_size = 1,
21875         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21876         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21878         },
21879         {
21880         .description = "act_rec_int",
21881         .field_bit_size = 1,
21882         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21883         },
21884         {
21885         .description = "act_rec_size",
21886         .field_bit_size = 5,
21887         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21888         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
21889                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21890         },
21891         {
21892         .description = "key_size",
21893         .field_bit_size = 9,
21894         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21895         .result_operand = {
21896                 (0x00c5 >> 8) & 0xff,
21897                 0x00c5 & 0xff,
21898                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21899                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21900         },
21901         {
21902         .description = "reserved",
21903         .field_bit_size = 11,
21904         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21905         },
21906         {
21907         .description = "strength",
21908         .field_bit_size = 2,
21909         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21910         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
21911                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21912         },
21913         {
21914         .description = "l1_cacheable",
21915         .field_bit_size = 1,
21916         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21917         },
21918         {
21919         .description = "valid",
21920         .field_bit_size = 1,
21921         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
21922         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
21923                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21924         },
21925         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
21926         {
21927         .description = "l2_cntxt_id",
21928         .field_bit_size = 10,
21929         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21930         .result_operand = {
21931                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21932                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21933                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21934                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21935         },
21936         /* class_tid: 21, wh_plus, table: l2_cntxt_tcam_0 */
21937         {
21938         .description = "l2_cntxt_id",
21939         .field_bit_size = 10,
21940         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
21941         .result_operand = {
21942                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
21943                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
21944                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21945                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21946         },
21947         {
21948         .description = "prof_func_id",
21949         .field_bit_size = 7,
21950         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
21951         .result_operand = {
21952                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
21953                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
21954                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21955                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21956         },
21957         {
21958         .description = "l2_byp_lkup_en",
21959         .field_bit_size = 1,
21960         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21961         },
21962         {
21963         .description = "parif",
21964         .field_bit_size = 4,
21965         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
21966         .result_operand = {
21967                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
21968                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
21969                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21970                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21971         .result_operand_true = {
21972                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
21973                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
21974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21975                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
21976         .result_operand_false = {
21977                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
21978                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
21979                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21980                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
21981         },
21982         {
21983         .description = "allowed_pri",
21984         .field_bit_size = 8,
21985         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21986         },
21987         {
21988         .description = "default_pri",
21989         .field_bit_size = 3,
21990         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21991         },
21992         {
21993         .description = "allowed_tpid",
21994         .field_bit_size = 6,
21995         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
21996         },
21997         {
21998         .description = "default_tpid",
21999         .field_bit_size = 3,
22000         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22001         },
22002         {
22003         .description = "bd_act_en",
22004         .field_bit_size = 1,
22005         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22006         },
22007         {
22008         .description = "sp_rec_ptr",
22009         .field_bit_size = 16,
22010         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22011         .result_operand = {
22012                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22013                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22015                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22016         },
22017         {
22018         .description = "byp_sp_lkup",
22019         .field_bit_size = 1,
22020         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22021         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22022                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22023         },
22024         {
22025         .description = "pri_anti_spoof_ctl",
22026         .field_bit_size = 2,
22027         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22028         },
22029         {
22030         .description = "tpid_anti_spoof_ctl",
22031         .field_bit_size = 2,
22032         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22033         },
22034         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
22035         {
22036         .description = "em_profile_id",
22037         .field_bit_size = 10,
22038         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22039         .result_operand = {
22040                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22041                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22042                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22043                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22044         },
22045         /* class_tid: 21, wh_plus, table: profile_tcam_0 */
22046         {
22047         .description = "wc_key_id",
22048         .field_bit_size = 4,
22049         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22050         },
22051         {
22052         .description = "wc_profile_id",
22053         .field_bit_size = 8,
22054         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22055         },
22056         {
22057         .description = "wc_search_en",
22058         .field_bit_size = 1,
22059         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22060         },
22061         {
22062         .description = "em_key_mask",
22063         .field_bit_size = 10,
22064         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22065         .result_operand = {
22066                 (0x00f9 >> 8) & 0xff,
22067                 0x00f9 & 0xff,
22068                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22069                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22070         },
22071         {
22072         .description = "em_key_id",
22073         .field_bit_size = 5,
22074         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22075         .result_operand = {0x15, 0x00, 0x00, 0x00, 0x00, 0x00,
22076                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22077         },
22078         {
22079         .description = "em_profile_id",
22080         .field_bit_size = 8,
22081         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22082         .result_operand = {
22083                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22084                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22085                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22086                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22087         },
22088         {
22089         .description = "em_search_en",
22090         .field_bit_size = 1,
22091         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22092         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22093                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22094         },
22095         {
22096         .description = "pl_byp_lkup_en",
22097         .field_bit_size = 1,
22098         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22099         },
22100         /* class_tid: 21, wh_plus, table: ext_em_0 */
22101         {
22102         .description = "act_rec_ptr",
22103         .field_bit_size = 33,
22104         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22105         .result_operand = {
22106                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22107                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22108                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22109                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22110         },
22111         {
22112         .description = "ext_flow_ctr",
22113         .field_bit_size = 1,
22114         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22115         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22116                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22117         },
22118         {
22119         .description = "act_rec_int",
22120         .field_bit_size = 1,
22121         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22122         },
22123         {
22124         .description = "act_rec_size",
22125         .field_bit_size = 5,
22126         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22127         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22128                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22129         },
22130         {
22131         .description = "key_size",
22132         .field_bit_size = 9,
22133         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22134         .result_operand = {
22135                 (0x00c5 >> 8) & 0xff,
22136                 0x00c5 & 0xff,
22137                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22138                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22139         },
22140         {
22141         .description = "reserved",
22142         .field_bit_size = 11,
22143         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22144         },
22145         {
22146         .description = "strength",
22147         .field_bit_size = 2,
22148         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22149         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22150                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22151         },
22152         {
22153         .description = "l1_cacheable",
22154         .field_bit_size = 1,
22155         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22156         },
22157         {
22158         .description = "valid",
22159         .field_bit_size = 1,
22160         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22161         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22162                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22163         },
22164         /* class_tid: 21, wh_plus, table: int_em_0 */
22165         {
22166         .description = "act_rec_ptr",
22167         .field_bit_size = 33,
22168         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22169         .result_operand = {
22170                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22171                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22172                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22173                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22174         },
22175         {
22176         .description = "ext_flow_ctr",
22177         .field_bit_size = 1,
22178         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22179         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22180                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22181         },
22182         {
22183         .description = "act_rec_int",
22184         .field_bit_size = 1,
22185         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22186         },
22187         {
22188         .description = "act_rec_size",
22189         .field_bit_size = 5,
22190         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22191         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22192                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22193         },
22194         {
22195         .description = "key_size",
22196         .field_bit_size = 9,
22197         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22198         .result_operand = {
22199                 (0x00c5 >> 8) & 0xff,
22200                 0x00c5 & 0xff,
22201                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22202                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22203         },
22204         {
22205         .description = "reserved",
22206         .field_bit_size = 11,
22207         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22208         },
22209         {
22210         .description = "strength",
22211         .field_bit_size = 2,
22212         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22213         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22214                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22215         },
22216         {
22217         .description = "l1_cacheable",
22218         .field_bit_size = 1,
22219         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22220         },
22221         {
22222         .description = "valid",
22223         .field_bit_size = 1,
22224         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22225         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22226                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22227         },
22228         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
22229         {
22230         .description = "l2_cntxt_id",
22231         .field_bit_size = 10,
22232         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22233         .result_operand = {
22234                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22235                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22236                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22237                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22238         },
22239         /* class_tid: 22, wh_plus, table: l2_cntxt_0 */
22240         {
22241         .description = "l2_cntxt_id",
22242         .field_bit_size = 10,
22243         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22244         .result_operand = {
22245                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22246                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22247                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22248                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22249         },
22250         {
22251         .description = "prof_func_id",
22252         .field_bit_size = 7,
22253         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22254         .result_operand = {
22255                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22256                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22257                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22259         },
22260         {
22261         .description = "l2_byp_lkup_en",
22262         .field_bit_size = 1,
22263         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22264         },
22265         {
22266         .description = "parif",
22267         .field_bit_size = 4,
22268         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22269         .result_operand = {
22270                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22271                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22272                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22273                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22274         .result_operand_true = {
22275                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22276                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22277                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22278                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22279         .result_operand_false = {
22280                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22281                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22282                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22284         },
22285         {
22286         .description = "allowed_pri",
22287         .field_bit_size = 8,
22288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22289         },
22290         {
22291         .description = "default_pri",
22292         .field_bit_size = 3,
22293         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22294         },
22295         {
22296         .description = "allowed_tpid",
22297         .field_bit_size = 6,
22298         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22299         },
22300         {
22301         .description = "default_tpid",
22302         .field_bit_size = 3,
22303         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22304         },
22305         {
22306         .description = "bd_act_en",
22307         .field_bit_size = 1,
22308         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22309         },
22310         {
22311         .description = "sp_rec_ptr",
22312         .field_bit_size = 16,
22313         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22314         .result_operand = {
22315                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22316                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22317                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22319         },
22320         {
22321         .description = "byp_sp_lkup",
22322         .field_bit_size = 1,
22323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22324         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22325                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22326         },
22327         {
22328         .description = "pri_anti_spoof_ctl",
22329         .field_bit_size = 2,
22330         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22331         },
22332         {
22333         .description = "tpid_anti_spoof_ctl",
22334         .field_bit_size = 2,
22335         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22336         },
22337         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
22338         {
22339         .description = "em_profile_id",
22340         .field_bit_size = 10,
22341         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22342         .result_operand = {
22343                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22344                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22345                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22346                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22347         },
22348         /* class_tid: 22, wh_plus, table: profile_tcam_0 */
22349         {
22350         .description = "wc_key_id",
22351         .field_bit_size = 4,
22352         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22353         },
22354         {
22355         .description = "wc_profile_id",
22356         .field_bit_size = 8,
22357         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22358         },
22359         {
22360         .description = "wc_search_en",
22361         .field_bit_size = 1,
22362         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22363         },
22364         {
22365         .description = "em_key_mask",
22366         .field_bit_size = 10,
22367         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22368         .result_operand = {
22369                 (0x00f9 >> 8) & 0xff,
22370                 0x00f9 & 0xff,
22371                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22372                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22373         },
22374         {
22375         .description = "em_key_id",
22376         .field_bit_size = 5,
22377         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22378         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22379                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22380         },
22381         {
22382         .description = "em_profile_id",
22383         .field_bit_size = 8,
22384         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22385         .result_operand = {
22386                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22387                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22388                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22389                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22390         },
22391         {
22392         .description = "em_search_en",
22393         .field_bit_size = 1,
22394         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22395         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22396                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22397         },
22398         {
22399         .description = "pl_byp_lkup_en",
22400         .field_bit_size = 1,
22401         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22402         },
22403         /* class_tid: 22, wh_plus, table: ext_em_0 */
22404         {
22405         .description = "act_rec_ptr",
22406         .field_bit_size = 33,
22407         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22408         .result_operand = {
22409                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22410                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22411                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22412                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22413         },
22414         {
22415         .description = "ext_flow_ctr",
22416         .field_bit_size = 1,
22417         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22418         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22419                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22420         },
22421         {
22422         .description = "act_rec_int",
22423         .field_bit_size = 1,
22424         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22425         },
22426         {
22427         .description = "act_rec_size",
22428         .field_bit_size = 5,
22429         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22430         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22431                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22432         },
22433         {
22434         .description = "key_size",
22435         .field_bit_size = 9,
22436         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22437         .result_operand = {
22438                 (0x0185 >> 8) & 0xff,
22439                 0x0185 & 0xff,
22440                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22441                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22442         },
22443         {
22444         .description = "reserved",
22445         .field_bit_size = 11,
22446         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22447         },
22448         {
22449         .description = "strength",
22450         .field_bit_size = 2,
22451         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22452         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22453                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22454         },
22455         {
22456         .description = "l1_cacheable",
22457         .field_bit_size = 1,
22458         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22459         },
22460         {
22461         .description = "valid",
22462         .field_bit_size = 1,
22463         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22464         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22465                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22466         },
22467         /* class_tid: 22, wh_plus, table: int_em_0 */
22468         {
22469         .description = "act_rec_ptr",
22470         .field_bit_size = 33,
22471         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22472         .result_operand = {
22473                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22474                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22475                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22476                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22477         },
22478         {
22479         .description = "ext_flow_ctr",
22480         .field_bit_size = 1,
22481         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22482         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22483                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22484         },
22485         {
22486         .description = "act_rec_int",
22487         .field_bit_size = 1,
22488         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22489         },
22490         {
22491         .description = "act_rec_size",
22492         .field_bit_size = 5,
22493         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22494         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22495                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22496         },
22497         {
22498         .description = "key_size",
22499         .field_bit_size = 9,
22500         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22501         .result_operand = {
22502                 (0x0185 >> 8) & 0xff,
22503                 0x0185 & 0xff,
22504                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22505                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22506         },
22507         {
22508         .description = "reserved",
22509         .field_bit_size = 11,
22510         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22511         },
22512         {
22513         .description = "strength",
22514         .field_bit_size = 2,
22515         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22516         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22517                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22518         },
22519         {
22520         .description = "l1_cacheable",
22521         .field_bit_size = 1,
22522         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22523         },
22524         {
22525         .description = "valid",
22526         .field_bit_size = 1,
22527         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22528         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22529                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22530         },
22531         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
22532         {
22533         .description = "l2_cntxt_id",
22534         .field_bit_size = 10,
22535         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22536         .result_operand = {
22537                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22538                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22539                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22540                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22541         },
22542         /* class_tid: 23, wh_plus, table: l2_cntxt_tcam_0 */
22543         {
22544         .description = "l2_cntxt_id",
22545         .field_bit_size = 10,
22546         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22547         .result_operand = {
22548                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22549                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22550                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22551                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22552         },
22553         {
22554         .description = "prof_func_id",
22555         .field_bit_size = 7,
22556         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22557         .result_operand = {
22558                 (BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID >> 8) & 0xff,
22559                 BNXT_ULP_GLB_REGFILE_INDEX_GLB_PROF_FUNC_ID & 0xff,
22560                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22561                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22562         },
22563         {
22564         .description = "l2_byp_lkup_en",
22565         .field_bit_size = 1,
22566         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22567         },
22568         {
22569         .description = "parif",
22570         .field_bit_size = 4,
22571         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22572         .result_operand = {
22573                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22574                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22575                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22576                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22577         .result_operand_true = {
22578                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22579                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22580                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22581                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22582         .result_operand_false = {
22583                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22584                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22585                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22586                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22587         },
22588         {
22589         .description = "allowed_pri",
22590         .field_bit_size = 8,
22591         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22592         },
22593         {
22594         .description = "default_pri",
22595         .field_bit_size = 3,
22596         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22597         },
22598         {
22599         .description = "allowed_tpid",
22600         .field_bit_size = 6,
22601         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22602         },
22603         {
22604         .description = "default_tpid",
22605         .field_bit_size = 3,
22606         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22607         },
22608         {
22609         .description = "bd_act_en",
22610         .field_bit_size = 1,
22611         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22612         },
22613         {
22614         .description = "sp_rec_ptr",
22615         .field_bit_size = 16,
22616         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22617         .result_operand = {
22618                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22619                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22620                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22621                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22622         },
22623         {
22624         .description = "byp_sp_lkup",
22625         .field_bit_size = 1,
22626         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22627         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22628                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22629         },
22630         {
22631         .description = "pri_anti_spoof_ctl",
22632         .field_bit_size = 2,
22633         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22634         },
22635         {
22636         .description = "tpid_anti_spoof_ctl",
22637         .field_bit_size = 2,
22638         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22639         },
22640         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
22641         {
22642         .description = "em_profile_id",
22643         .field_bit_size = 10,
22644         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22645         .result_operand = {
22646                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22647                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22648                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22649                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22650         },
22651         /* class_tid: 23, wh_plus, table: profile_tcam_0 */
22652         {
22653         .description = "wc_key_id",
22654         .field_bit_size = 4,
22655         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22656         },
22657         {
22658         .description = "wc_profile_id",
22659         .field_bit_size = 8,
22660         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22661         },
22662         {
22663         .description = "wc_search_en",
22664         .field_bit_size = 1,
22665         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22666         },
22667         {
22668         .description = "em_key_mask",
22669         .field_bit_size = 10,
22670         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22671         .result_operand = {
22672                 (0x00f9 >> 8) & 0xff,
22673                 0x00f9 & 0xff,
22674                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22675                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22676         },
22677         {
22678         .description = "em_key_id",
22679         .field_bit_size = 5,
22680         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22681         .result_operand = {0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
22682                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22683         },
22684         {
22685         .description = "em_profile_id",
22686         .field_bit_size = 8,
22687         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22688         .result_operand = {
22689                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22690                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22691                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22692                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22693         },
22694         {
22695         .description = "em_search_en",
22696         .field_bit_size = 1,
22697         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22698         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22699                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22700         },
22701         {
22702         .description = "pl_byp_lkup_en",
22703         .field_bit_size = 1,
22704         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22705         },
22706         /* class_tid: 23, wh_plus, table: ext_em_0 */
22707         {
22708         .description = "act_rec_ptr",
22709         .field_bit_size = 33,
22710         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22711         .result_operand = {
22712                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22713                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22714                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22715                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22716         },
22717         {
22718         .description = "ext_flow_ctr",
22719         .field_bit_size = 1,
22720         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22721         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22722                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22723         },
22724         {
22725         .description = "act_rec_int",
22726         .field_bit_size = 1,
22727         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22728         },
22729         {
22730         .description = "act_rec_size",
22731         .field_bit_size = 5,
22732         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22733         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22734                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22735         },
22736         {
22737         .description = "key_size",
22738         .field_bit_size = 9,
22739         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22740         .result_operand = {
22741                 (0x0185 >> 8) & 0xff,
22742                 0x0185 & 0xff,
22743                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22744                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22745         },
22746         {
22747         .description = "reserved",
22748         .field_bit_size = 11,
22749         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22750         },
22751         {
22752         .description = "strength",
22753         .field_bit_size = 2,
22754         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22755         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22756                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22757         },
22758         {
22759         .description = "l1_cacheable",
22760         .field_bit_size = 1,
22761         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22762         },
22763         {
22764         .description = "valid",
22765         .field_bit_size = 1,
22766         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22767         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22768                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22769         },
22770         /* class_tid: 23, wh_plus, table: int_em_0 */
22771         {
22772         .description = "act_rec_ptr",
22773         .field_bit_size = 33,
22774         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22775         .result_operand = {
22776                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
22777                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
22778                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22779                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22780         },
22781         {
22782         .description = "ext_flow_ctr",
22783         .field_bit_size = 1,
22784         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22785         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22786                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22787         },
22788         {
22789         .description = "act_rec_int",
22790         .field_bit_size = 1,
22791         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22792         },
22793         {
22794         .description = "act_rec_size",
22795         .field_bit_size = 5,
22796         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22797         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
22798                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22799         },
22800         {
22801         .description = "key_size",
22802         .field_bit_size = 9,
22803         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22804         .result_operand = {
22805                 (0x0185 >> 8) & 0xff,
22806                 0x0185 & 0xff,
22807                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22808                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22809         },
22810         {
22811         .description = "reserved",
22812         .field_bit_size = 11,
22813         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22814         },
22815         {
22816         .description = "strength",
22817         .field_bit_size = 2,
22818         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22819         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
22820                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22821         },
22822         {
22823         .description = "l1_cacheable",
22824         .field_bit_size = 1,
22825         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22826         },
22827         {
22828         .description = "valid",
22829         .field_bit_size = 1,
22830         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22831         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22832                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22833         },
22834         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
22835         {
22836         .description = "l2_cntxt_id",
22837         .field_bit_size = 10,
22838         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22839         .result_operand = {
22840                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
22841                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
22842                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22843                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22844         },
22845         {
22846         .description = "prof_func_id",
22847         .field_bit_size = 7,
22848         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
22849         .result_operand = {
22850                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
22851                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
22852                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22853                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22854         },
22855         {
22856         .description = "l2_byp_lkup_en",
22857         .field_bit_size = 1,
22858         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22859         },
22860         {
22861         .description = "parif",
22862         .field_bit_size = 4,
22863         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
22864         .result_operand = {
22865                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
22866                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
22867                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22868                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22869         .result_operand_true = {
22870                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
22871                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
22872                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22873                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
22874         .result_operand_false = {
22875                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
22876                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
22877                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22878                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22879         },
22880         {
22881         .description = "allowed_pri",
22882         .field_bit_size = 8,
22883         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22884         },
22885         {
22886         .description = "default_pri",
22887         .field_bit_size = 3,
22888         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22889         },
22890         {
22891         .description = "allowed_tpid",
22892         .field_bit_size = 6,
22893         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22894         },
22895         {
22896         .description = "default_tpid",
22897         .field_bit_size = 3,
22898         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22899         },
22900         {
22901         .description = "bd_act_en",
22902         .field_bit_size = 1,
22903         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22904         },
22905         {
22906         .description = "sp_rec_ptr",
22907         .field_bit_size = 16,
22908         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22909         .result_operand = {
22910                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
22911                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
22912                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22913                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22914         },
22915         {
22916         .description = "byp_sp_lkup",
22917         .field_bit_size = 1,
22918         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22919         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22920                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22921         },
22922         {
22923         .description = "pri_anti_spoof_ctl",
22924         .field_bit_size = 2,
22925         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22926         },
22927         {
22928         .description = "tpid_anti_spoof_ctl",
22929         .field_bit_size = 2,
22930         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22931         },
22932         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
22933         {
22934         .description = "em_profile_id",
22935         .field_bit_size = 10,
22936         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22937         .result_operand = {
22938                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22939                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22940                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22941                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22942         },
22943         /* class_tid: 24, wh_plus, table: profile_tcam_0 */
22944         {
22945         .description = "wc_key_id",
22946         .field_bit_size = 4,
22947         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22948         },
22949         {
22950         .description = "wc_profile_id",
22951         .field_bit_size = 8,
22952         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22953         },
22954         {
22955         .description = "wc_search_en",
22956         .field_bit_size = 1,
22957         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22958         },
22959         {
22960         .description = "em_key_mask",
22961         .field_bit_size = 10,
22962         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22963         .result_operand = {
22964                 (0x0003 >> 8) & 0xff,
22965                 0x0003 & 0xff,
22966                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22967                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22968         },
22969         {
22970         .description = "em_key_id",
22971         .field_bit_size = 5,
22972         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22973         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
22974                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22975         },
22976         {
22977         .description = "em_profile_id",
22978         .field_bit_size = 8,
22979         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
22980         .result_operand = {
22981                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
22982                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
22983                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
22984                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22985         },
22986         {
22987         .description = "em_search_en",
22988         .field_bit_size = 1,
22989         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
22990         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
22991                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
22992         },
22993         {
22994         .description = "pl_byp_lkup_en",
22995         .field_bit_size = 1,
22996         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
22997         },
22998         /* class_tid: 24, wh_plus, table: ext_em_0 */
22999         {
23000         .description = "act_rec_ptr",
23001         .field_bit_size = 33,
23002         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23003         .result_operand = {
23004                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23005                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23006                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23007                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23008         },
23009         {
23010         .description = "ext_flow_ctr",
23011         .field_bit_size = 1,
23012         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23013         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23014                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23015         },
23016         {
23017         .description = "act_rec_int",
23018         .field_bit_size = 1,
23019         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23020         },
23021         {
23022         .description = "act_rec_size",
23023         .field_bit_size = 5,
23024         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23025         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23026                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23027         },
23028         {
23029         .description = "key_size",
23030         .field_bit_size = 9,
23031         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23032         .result_operand = {
23033                 (0x0061 >> 8) & 0xff,
23034                 0x0061 & 0xff,
23035                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23036                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23037         },
23038         {
23039         .description = "reserved",
23040         .field_bit_size = 11,
23041         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23042         },
23043         {
23044         .description = "strength",
23045         .field_bit_size = 2,
23046         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23047         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23048                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23049         },
23050         {
23051         .description = "l1_cacheable",
23052         .field_bit_size = 1,
23053         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23054         },
23055         {
23056         .description = "valid",
23057         .field_bit_size = 1,
23058         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23059         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23060                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23061         },
23062         /* class_tid: 24, wh_plus, table: int_em_0 */
23063         {
23064         .description = "act_rec_ptr",
23065         .field_bit_size = 33,
23066         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23067         .result_operand = {
23068                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23069                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23070                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23071                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23072         },
23073         {
23074         .description = "ext_flow_ctr",
23075         .field_bit_size = 1,
23076         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23077         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23078                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23079         },
23080         {
23081         .description = "act_rec_int",
23082         .field_bit_size = 1,
23083         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23084         },
23085         {
23086         .description = "act_rec_size",
23087         .field_bit_size = 5,
23088         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23089         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23090                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23091         },
23092         {
23093         .description = "key_size",
23094         .field_bit_size = 9,
23095         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23096         .result_operand = {
23097                 (0x0061 >> 8) & 0xff,
23098                 0x0061 & 0xff,
23099                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23100                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23101         },
23102         {
23103         .description = "reserved",
23104         .field_bit_size = 11,
23105         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23106         },
23107         {
23108         .description = "strength",
23109         .field_bit_size = 2,
23110         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23111         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23112                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23113         },
23114         {
23115         .description = "l1_cacheable",
23116         .field_bit_size = 1,
23117         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23118         },
23119         {
23120         .description = "valid",
23121         .field_bit_size = 1,
23122         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23123         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23124                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23125         },
23126         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
23127         {
23128         .description = "l2_cntxt_id",
23129         .field_bit_size = 10,
23130         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23131         .result_operand = {
23132                 (BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 >> 8) & 0xff,
23133                 BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0 & 0xff,
23134                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23135                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23136         },
23137         {
23138         .description = "prof_func_id",
23139         .field_bit_size = 7,
23140         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_GLB_REGFILE,
23141         .result_operand = {
23142                 (BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID >> 8) & 0xff,
23143                 BNXT_ULP_GLB_REGFILE_INDEX_L2_PROF_FUNC_ID & 0xff,
23144                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23145                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23146         },
23147         {
23148         .description = "l2_byp_lkup_en",
23149         .field_bit_size = 1,
23150         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23151         },
23152         {
23153         .description = "parif",
23154         .field_bit_size = 4,
23155         .result_opcode = BNXT_ULP_MAPPER_OPC_IF_COMP_FIELD_THEN_CF_ELSE_CF,
23156         .result_operand = {
23157                 (BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP >> 8) & 0xff,
23158                 BNXT_ULP_CF_IDX_MATCH_PORT_IS_VFREP & 0xff,
23159                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23160                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23161         .result_operand_true = {
23162                 (BNXT_ULP_CF_IDX_LOOPBACK_PARIF >> 8) & 0xff,
23163                 BNXT_ULP_CF_IDX_LOOPBACK_PARIF & 0xff,
23164                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23165                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
23166         .result_operand_false = {
23167                 (BNXT_ULP_CF_IDX_DRV_FUNC_PARIF >> 8) & 0xff,
23168                 BNXT_ULP_CF_IDX_DRV_FUNC_PARIF & 0xff,
23169                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23170                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23171         },
23172         {
23173         .description = "allowed_pri",
23174         .field_bit_size = 8,
23175         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23176         },
23177         {
23178         .description = "default_pri",
23179         .field_bit_size = 3,
23180         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23181         },
23182         {
23183         .description = "allowed_tpid",
23184         .field_bit_size = 6,
23185         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23186         },
23187         {
23188         .description = "default_tpid",
23189         .field_bit_size = 3,
23190         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23191         },
23192         {
23193         .description = "bd_act_en",
23194         .field_bit_size = 1,
23195         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23196         },
23197         {
23198         .description = "sp_rec_ptr",
23199         .field_bit_size = 16,
23200         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23201         .result_operand = {
23202                 (BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR >> 8) & 0xff,
23203                 BNXT_ULP_REGFILE_INDEX_MAIN_SP_PTR & 0xff,
23204                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23205                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23206         },
23207         {
23208         .description = "byp_sp_lkup",
23209         .field_bit_size = 1,
23210         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23211         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23212                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23213         },
23214         {
23215         .description = "pri_anti_spoof_ctl",
23216         .field_bit_size = 2,
23217         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23218         },
23219         {
23220         .description = "tpid_anti_spoof_ctl",
23221         .field_bit_size = 2,
23222         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23223         },
23224         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
23225         {
23226         .description = "em_profile_id",
23227         .field_bit_size = 10,
23228         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23229         .result_operand = {
23230                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23231                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23232                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23233                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23234         },
23235         /* class_tid: 25, wh_plus, table: profile_tcam_0 */
23236         {
23237         .description = "wc_key_id",
23238         .field_bit_size = 4,
23239         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23240         },
23241         {
23242         .description = "wc_profile_id",
23243         .field_bit_size = 8,
23244         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23245         },
23246         {
23247         .description = "wc_search_en",
23248         .field_bit_size = 1,
23249         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23250         },
23251         {
23252         .description = "em_key_mask",
23253         .field_bit_size = 10,
23254         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23255         .result_operand = {
23256                 (0x0003 >> 8) & 0xff,
23257                 0x0003 & 0xff,
23258                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23259                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23260         },
23261         {
23262         .description = "em_key_id",
23263         .field_bit_size = 5,
23264         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23265         .result_operand = {0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
23266                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23267         },
23268         {
23269         .description = "em_profile_id",
23270         .field_bit_size = 8,
23271         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23272         .result_operand = {
23273                 (BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 >> 8) & 0xff,
23274                 BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0 & 0xff,
23275                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23276                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23277         },
23278         {
23279         .description = "em_search_en",
23280         .field_bit_size = 1,
23281         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23282         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23283                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23284         },
23285         {
23286         .description = "pl_byp_lkup_en",
23287         .field_bit_size = 1,
23288         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23289         },
23290         /* class_tid: 25, wh_plus, table: ext_em_0 */
23291         {
23292         .description = "act_rec_ptr",
23293         .field_bit_size = 33,
23294         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23295         .result_operand = {
23296                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23297                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23298                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23299                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23300         },
23301         {
23302         .description = "ext_flow_ctr",
23303         .field_bit_size = 1,
23304         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23305         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23306                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23307         },
23308         {
23309         .description = "act_rec_int",
23310         .field_bit_size = 1,
23311         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23312         },
23313         {
23314         .description = "act_rec_size",
23315         .field_bit_size = 5,
23316         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23317         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23318                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23319         },
23320         {
23321         .description = "key_size",
23322         .field_bit_size = 9,
23323         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23324         .result_operand = {
23325                 (0x0061 >> 8) & 0xff,
23326                 0x0061 & 0xff,
23327                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23328                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23329         },
23330         {
23331         .description = "reserved",
23332         .field_bit_size = 11,
23333         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23334         },
23335         {
23336         .description = "strength",
23337         .field_bit_size = 2,
23338         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23339         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23340                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23341         },
23342         {
23343         .description = "l1_cacheable",
23344         .field_bit_size = 1,
23345         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23346         },
23347         {
23348         .description = "valid",
23349         .field_bit_size = 1,
23350         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23351         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23352                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23353         },
23354         /* class_tid: 25, wh_plus, table: int_em_0 */
23355         {
23356         .description = "act_rec_ptr",
23357         .field_bit_size = 33,
23358         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_REGFILE,
23359         .result_operand = {
23360                 (BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR >> 8) & 0xff,
23361                 BNXT_ULP_REGFILE_INDEX_MAIN_ACTION_PTR & 0xff,
23362                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23363                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23364         },
23365         {
23366         .description = "ext_flow_ctr",
23367         .field_bit_size = 1,
23368         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23369         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23370                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23371         },
23372         {
23373         .description = "act_rec_int",
23374         .field_bit_size = 1,
23375         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23376         },
23377         {
23378         .description = "act_rec_size",
23379         .field_bit_size = 5,
23380         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23381         .result_operand = {0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
23382                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23383         },
23384         {
23385         .description = "key_size",
23386         .field_bit_size = 9,
23387         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23388         .result_operand = {
23389                 (0x0061 >> 8) & 0xff,
23390                 0x0061 & 0xff,
23391                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
23392                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23393         },
23394         {
23395         .description = "reserved",
23396         .field_bit_size = 11,
23397         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23398         },
23399         {
23400         .description = "strength",
23401         .field_bit_size = 2,
23402         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23403         .result_operand = {0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
23404                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23405         },
23406         {
23407         .description = "l1_cacheable",
23408         .field_bit_size = 1,
23409         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_ZERO
23410         },
23411         {
23412         .description = "valid",
23413         .field_bit_size = 1,
23414         .result_opcode = BNXT_ULP_MAPPER_OPC_SET_TO_CONSTANT,
23415         .result_operand = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
23416                 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
23417         }
23418 };
23419
23420 struct bnxt_ulp_mapper_ident_info ulp_wh_plus_class_ident_list[] = {
23421         /* class_tid: 1, wh_plus, table: l2_cntxt_cache_0 */
23422         {
23423         .description = "l2_cntxt_id",
23424         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23425         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23426         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23427         .ident_bit_size = 10,
23428         .ident_bit_pos = 0
23429         },
23430         /* class_tid: 2, wh_plus, table: l2_cntxt_cache_0 */
23431         {
23432         .description = "l2_cntxt_id",
23433         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23434         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23435         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23436         .ident_bit_size = 10,
23437         .ident_bit_pos = 0
23438         },
23439         /* class_tid: 4, wh_plus, table: egr_l2_cntxt_cache_0 */
23440         {
23441         .description = "l2_cntxt_id",
23442         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23443         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23444         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23445         .ident_bit_size = 10,
23446         .ident_bit_pos = 0
23447         },
23448         /* class_tid: 6, wh_plus, table: l2_cntxt_tcam_0 */
23449         {
23450         .description = "l2_cntxt_id",
23451         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23452         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23453         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23454         .ident_bit_size = 10,
23455         .ident_bit_pos = 0
23456         },
23457         /* class_tid: 6, wh_plus, table: profile_tcam_cache_0 */
23458         {
23459         .description = "em_profile_id",
23460         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23461         .ident_type = TF_IDENT_TYPE_EM_PROF,
23462         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23463         .ident_bit_size = 10,
23464         .ident_bit_pos = 0
23465         },
23466         /* class_tid: 7, wh_plus, table: l2_cntxt_tcam_0 */
23467         {
23468         .description = "l2_cntxt_id",
23469         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23470         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23471         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23472         .ident_bit_size = 10,
23473         .ident_bit_pos = 0
23474         },
23475         /* class_tid: 7, wh_plus, table: profile_tcam_cache_0 */
23476         {
23477         .description = "em_profile_id",
23478         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23479         .ident_type = TF_IDENT_TYPE_EM_PROF,
23480         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23481         .ident_bit_size = 10,
23482         .ident_bit_pos = 0
23483         },
23484         /* class_tid: 8, wh_plus, table: l2_cntxt_cache_0 */
23485         {
23486         .description = "l2_cntxt_id",
23487         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23488         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23489         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23490         .ident_bit_size = 10,
23491         .ident_bit_pos = 0
23492         },
23493         /* class_tid: 8, wh_plus, table: profile_tcam_cache_0 */
23494         {
23495         .description = "em_profile_id",
23496         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23497         .ident_type = TF_IDENT_TYPE_EM_PROF,
23498         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23499         .ident_bit_size = 10,
23500         .ident_bit_pos = 0
23501         },
23502         /* class_tid: 9, wh_plus, table: l2_cntxt_cache_0 */
23503         {
23504         .description = "l2_cntxt_id",
23505         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23506         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23507         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23508         .ident_bit_size = 10,
23509         .ident_bit_pos = 0
23510         },
23511         /* class_tid: 9, wh_plus, table: profile_tcam_cache_0 */
23512         {
23513         .description = "em_profile_id",
23514         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23515         .ident_type = TF_IDENT_TYPE_EM_PROF,
23516         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23517         .ident_bit_size = 10,
23518         .ident_bit_pos = 0
23519         },
23520         /* class_tid: 10, wh_plus, table: l2_cntxt_cache_0 */
23521         {
23522         .description = "l2_cntxt_id",
23523         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23524         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23525         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23526         .ident_bit_size = 10,
23527         .ident_bit_pos = 0
23528         },
23529         /* class_tid: 10, wh_plus, table: profile_tcam_cache_0 */
23530         {
23531         .description = "em_profile_id",
23532         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23533         .ident_type = TF_IDENT_TYPE_EM_PROF,
23534         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23535         .ident_bit_size = 10,
23536         .ident_bit_pos = 0
23537         },
23538         /* class_tid: 11, wh_plus, table: l2_cntxt_cache_0 */
23539         {
23540         .description = "l2_cntxt_id",
23541         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23542         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23543         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23544         .ident_bit_size = 10,
23545         .ident_bit_pos = 0
23546         },
23547         /* class_tid: 11, wh_plus, table: profile_tcam_cache_0 */
23548         {
23549         .description = "em_profile_id",
23550         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23551         .ident_type = TF_IDENT_TYPE_EM_PROF,
23552         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23553         .ident_bit_size = 10,
23554         .ident_bit_pos = 0
23555         },
23556         /* class_tid: 12, wh_plus, table: l2_cntxt_tcam_0 */
23557         {
23558         .description = "l2_cntxt_id",
23559         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23560         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23561         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23562         .ident_bit_size = 10,
23563         .ident_bit_pos = 0
23564         },
23565         /* class_tid: 12, wh_plus, table: profile_tcam_cache_0 */
23566         {
23567         .description = "em_profile_id",
23568         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23569         .ident_type = TF_IDENT_TYPE_EM_PROF,
23570         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23571         .ident_bit_size = 10,
23572         .ident_bit_pos = 0
23573         },
23574         /* class_tid: 13, wh_plus, table: l2_cntxt_tcam_0 */
23575         {
23576         .description = "l2_cntxt_id",
23577         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23578         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23579         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23580         .ident_bit_size = 10,
23581         .ident_bit_pos = 0
23582         },
23583         /* class_tid: 13, wh_plus, table: profile_tcam_cache_0 */
23584         {
23585         .description = "em_profile_id",
23586         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23587         .ident_type = TF_IDENT_TYPE_EM_PROF,
23588         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23589         .ident_bit_size = 10,
23590         .ident_bit_pos = 0
23591         },
23592         /* class_tid: 14, wh_plus, table: l2_cntxt_tcam_0 */
23593         {
23594         .description = "l2_cntxt_id",
23595         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23596         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23597         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23598         .ident_bit_size = 10,
23599         .ident_bit_pos = 0
23600         },
23601         /* class_tid: 14, wh_plus, table: profile_tcam_cache_0 */
23602         {
23603         .description = "em_profile_id",
23604         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23605         .ident_type = TF_IDENT_TYPE_EM_PROF,
23606         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23607         .ident_bit_size = 10,
23608         .ident_bit_pos = 0
23609         },
23610         /* class_tid: 15, wh_plus, table: l2_cntxt_tcam_0 */
23611         {
23612         .description = "l2_cntxt_id",
23613         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23614         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23615         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23616         .ident_bit_size = 10,
23617         .ident_bit_pos = 0
23618         },
23619         /* class_tid: 15, wh_plus, table: profile_tcam_cache_0 */
23620         {
23621         .description = "em_profile_id",
23622         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23623         .ident_type = TF_IDENT_TYPE_EM_PROF,
23624         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23625         .ident_bit_size = 10,
23626         .ident_bit_pos = 0
23627         },
23628         /* class_tid: 16, wh_plus, table: l2_cntxt_tcam_0 */
23629         {
23630         .description = "l2_cntxt_id",
23631         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23632         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23633         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23634         .ident_bit_size = 10,
23635         .ident_bit_pos = 0
23636         },
23637         /* class_tid: 16, wh_plus, table: profile_tcam_cache_0 */
23638         {
23639         .description = "em_profile_id",
23640         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23641         .ident_type = TF_IDENT_TYPE_EM_PROF,
23642         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23643         .ident_bit_size = 10,
23644         .ident_bit_pos = 0
23645         },
23646         /* class_tid: 17, wh_plus, table: l2_cntxt_tcam_0 */
23647         {
23648         .description = "l2_cntxt_id",
23649         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23650         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23651         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23652         .ident_bit_size = 10,
23653         .ident_bit_pos = 0
23654         },
23655         /* class_tid: 17, wh_plus, table: profile_tcam_cache_0 */
23656         {
23657         .description = "em_profile_id",
23658         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23659         .ident_type = TF_IDENT_TYPE_EM_PROF,
23660         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23661         .ident_bit_size = 10,
23662         .ident_bit_pos = 0
23663         },
23664         /* class_tid: 18, wh_plus, table: l2_cntxt_tcam_0 */
23665         {
23666         .description = "l2_cntxt_id",
23667         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23668         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23669         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23670         .ident_bit_size = 10,
23671         .ident_bit_pos = 0
23672         },
23673         /* class_tid: 18, wh_plus, table: profile_tcam_cache_0 */
23674         {
23675         .description = "em_profile_id",
23676         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23677         .ident_type = TF_IDENT_TYPE_EM_PROF,
23678         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23679         .ident_bit_size = 10,
23680         .ident_bit_pos = 0
23681         },
23682         {
23683         .description = "em_profile_id",
23684         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23685         .ident_type = TF_IDENT_TYPE_EM_PROF,
23686         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23687         .ident_bit_size = 10,
23688         .ident_bit_pos = 0
23689         },
23690         /* class_tid: 19, wh_plus, table: l2_cntxt_tcam_0 */
23691         {
23692         .description = "l2_cntxt_id",
23693         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23694         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23695         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23696         .ident_bit_size = 10,
23697         .ident_bit_pos = 0
23698         },
23699         /* class_tid: 19, wh_plus, table: profile_tcam_cache_0 */
23700         {
23701         .description = "em_profile_id",
23702         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23703         .ident_type = TF_IDENT_TYPE_EM_PROF,
23704         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23705         .ident_bit_size = 10,
23706         .ident_bit_pos = 0
23707         },
23708         {
23709         .description = "em_profile_id",
23710         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23711         .ident_type = TF_IDENT_TYPE_EM_PROF,
23712         .regfile_idx = BNXT_ULP_REGFILE_INDEX_WC_PROFILE_ID_0,
23713         .ident_bit_size = 10,
23714         .ident_bit_pos = 0
23715         },
23716         /* class_tid: 20, wh_plus, table: l2_cntxt_cache_0 */
23717         {
23718         .description = "l2_cntxt_id",
23719         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23720         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23721         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23722         .ident_bit_size = 10,
23723         .ident_bit_pos = 0
23724         },
23725         /* class_tid: 20, wh_plus, table: profile_tcam_cache_0 */
23726         {
23727         .description = "em_profile_id",
23728         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23729         .ident_type = TF_IDENT_TYPE_EM_PROF,
23730         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23731         .ident_bit_size = 10,
23732         .ident_bit_pos = 0
23733         },
23734         /* class_tid: 21, wh_plus, table: l2_cntxt_cache_0 */
23735         {
23736         .description = "l2_cntxt_id",
23737         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23738         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23739         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23740         .ident_bit_size = 10,
23741         .ident_bit_pos = 0
23742         },
23743         /* class_tid: 21, wh_plus, table: profile_tcam_cache_0 */
23744         {
23745         .description = "em_profile_id",
23746         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23747         .ident_type = TF_IDENT_TYPE_EM_PROF,
23748         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23749         .ident_bit_size = 10,
23750         .ident_bit_pos = 0
23751         },
23752         /* class_tid: 22, wh_plus, table: l2_cntxt_cache_0 */
23753         {
23754         .description = "l2_cntxt_id",
23755         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23756         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23757         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23758         .ident_bit_size = 10,
23759         .ident_bit_pos = 0
23760         },
23761         /* class_tid: 22, wh_plus, table: profile_tcam_cache_0 */
23762         {
23763         .description = "em_profile_id",
23764         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23765         .ident_type = TF_IDENT_TYPE_EM_PROF,
23766         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23767         .ident_bit_size = 10,
23768         .ident_bit_pos = 0
23769         },
23770         /* class_tid: 23, wh_plus, table: l2_cntxt_cache_0 */
23771         {
23772         .description = "l2_cntxt_id",
23773         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23774         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23775         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23776         .ident_bit_size = 10,
23777         .ident_bit_pos = 0
23778         },
23779         /* class_tid: 23, wh_plus, table: profile_tcam_cache_0 */
23780         {
23781         .description = "em_profile_id",
23782         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23783         .ident_type = TF_IDENT_TYPE_EM_PROF,
23784         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23785         .ident_bit_size = 10,
23786         .ident_bit_pos = 0
23787         },
23788         /* class_tid: 24, wh_plus, table: l2_cntxt_tcam_0 */
23789         {
23790         .description = "l2_cntxt_id",
23791         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23792         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23793         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23794         .ident_bit_size = 10,
23795         .ident_bit_pos = 0
23796         },
23797         /* class_tid: 24, wh_plus, table: profile_tcam_cache_0 */
23798         {
23799         .description = "em_profile_id",
23800         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23801         .ident_type = TF_IDENT_TYPE_EM_PROF,
23802         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23803         .ident_bit_size = 10,
23804         .ident_bit_pos = 0
23805         },
23806         /* class_tid: 25, wh_plus, table: l2_cntxt_tcam_0 */
23807         {
23808         .description = "l2_cntxt_id",
23809         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23810         .ident_type = TF_IDENT_TYPE_L2_CTXT_HIGH,
23811         .regfile_idx = BNXT_ULP_REGFILE_INDEX_L2_CNTXT_ID_0,
23812         .ident_bit_size = 10,
23813         .ident_bit_pos = 0
23814         },
23815         /* class_tid: 25, wh_plus, table: profile_tcam_cache_0 */
23816         {
23817         .description = "em_profile_id",
23818         .resource_func = BNXT_ULP_RESOURCE_FUNC_IDENTIFIER,
23819         .ident_type = TF_IDENT_TYPE_EM_PROF,
23820         .regfile_idx = BNXT_ULP_REGFILE_INDEX_EM_PROFILE_ID_0,
23821         .ident_bit_size = 10,
23822         .ident_bit_pos = 0
23823         }
23824 };